Improving flow in large software product development organizations: A sensemaking and complex adaptive systems perspective

View/ Open
Date
2019-08-23Author
Power, Ken
Metadata
Show full item recordUsage
This item's downloads: 682 (view details)
Abstract
Software development organizations operate in an environment of ever-increasing volatility, uncertainty, complexity, and ambiguity. The pace of change is accelerating, business and technology complexity is growing, and organizations are struggling to keep pace. The software development industry has a $3 trillion productivity problem, according to one study. Value is not flowing as it should. Flow-based software development is part of the continued evolution of contemporary software development approaches contributing to addressing this problem. It builds on agile and lean software development approaches and incorporates lessons from Deming’s management method, the Toyota Production System, Lean Product Development, Theory of Constraints, Operations Management, and other influences. Flow-based development is foundational to modern systems approaches, including DevOps, Continuous Delivery, Site Reliability Engineering, and more. Creating and sustaining flow in organizations is a challenging problem. Despite this, there is a lack of rigorous research on the topic of impediments to flow.
Stephen Hawking famously predicted that the 21st century would be the century of complexity science. Software development organizations are complex adaptive systems (CAS). Sensemaking provides a means of exploring and understanding complex systems through making sense of people’s lived experiences in organizations. This study provides a sensemaking and CAS theory-informed understanding of product development flow in large software development organizations. To achieve its objective, this research studies ten large, globally distributed, software development organizations. Using the SenseMaker® software suite this study collects and analyzes micronarratives from people in these organizations, thereby providing insights into the patterns of organization culture that influence flow and impediments. The research methods for this qualitative study include a combination of focus group research, narrative research, and case study research. The unit of analysis is the software development organization.
The main contribution of this study is the development of an impediment management framework, related to which this study presents four sets of findings. First, this study provides an analysis of the system patterns that contribute to impediments to flow in organizations. In particular, this study analyzes system patterns identified from value streams, flow metrics, and organization culture. Second, this study explores factors related to how organizations identify impediments to flow. This study identifies eight common types of impediments that affect flow. The study further identifies nine common contributing factors to impediments and six common effects of impediments. Third, this study analyzes how people in organizations make sense of impediments. This research explores the use of the Cynefin sensemaking framework to make sense of the context of impediments in order to inform how to resolve them. Fourth, this study explores four approaches used by organizations to resolve impediments. In particular, this study explores the use of continuous improvement, A3 problem solving, experiment design, and system improvement goals in the context of resolving impediments and improving flow in organizations. This study employs the CDE (containers, differences, exchanges) framework to understand better the interventions that organizations make in order to resolve impediments and improve flow. The analysis shows how these interventions relate to the sensemaking domains of the Cynefin framework.
Ultimately, this study shows impediments continually emerge to affect flow in organizations. Some impediments are problems to be solved; others are indicators of patterns that need to shift in the organization. The quality of flow and the nature of the organization’s response to impediments reflects the organization’s culture. Improving flow requires attending to the patterns, identifying impediments, making sense of the impediments in the context of the system patterns, and taking context-appropriate action in the form of interventions to resolve impediments. This study adds to the body of knowledge of contemporary software development approaches, flow-based development, management, leadership, and sensemaking in organizations. The framework can guide practical approaches to improving flow in organizations and serves as a foundation for future research.
Collections
Except where otherwise noted, this item's license is described as Attribution-NonCommercial-NoDerivs 3.0 Ireland
Related items
Showing items related by title, author, creator and subject.
-
A Coevolving Systems Approach to the Organization of Agile Software Development
Vidgen, Richard; Wang, Xiaofeng (2009)Despite the popularity of agile methods in software development and increasing adoption by organizations there is debate about what agility is and how it is achieved. The debate suffers from a lack of understanding of ... -
Group Decision Quality in Agile Software Development: The Impact of Contribution Behaviours
Coyle, Sharon (2013-07-16)The purpose of this research is to develop an understanding of the impact of contribution behaviours on group decision quality in the context of Agile Software Development (ASD) teams. ASD is the most commonly deployed ... -
Organizing for Agility: a Complex Adaptive Systems perspective on Agile Software Development Process
Vidgen, Richard; Wang, Xiaofeng (2006)Agile software development has caught the attention of both practitioners and academics in recent years. In spite of many anecdotes and papers describing lessons learnt the theoretical foundation of agile software development ...