Software engineering leaders face a unique and difficult challenge: they are accountable for both the technical intricacies of development and the strategic imperatives of the business. Compounding this challenge is the inherent invisibility of software development, which often leaves business executives perplexed and disconnected from the realities of the development process. This disconnect frequently leads to tension and mistrust between engineering and the business, hindering collaboration and stifling progress. However, the adoption of flow metrics offers a beacon of hope, enabling engineering leaders to offer delivery system insights to business stakeholders, making work visible, and fostering greater alignment and trust across the organization.
Development work is invisible, existing primarily in the realm of bits and bytes. This invisibility makes it challenging for business executives, who typically lack a deep understanding of development, to comprehend the complexities and nuances of the development process. As a result, business stakeholders may struggle to appreciate the demands placed upon engineering teams relative to the capacity of the teams, leading to misaligned expectations, unrealistic deadlines, and ultimately, strained relationships between engineering and the business.
Because of excessive demands being placed on finite resources in development, developers usually drift into believing that stakeholders are unrealistic with their expectations and unreasonable with their demands. For this reason, tension and trust issues exist on both sides of the fence. However, rarely are people intentionally unreasonable. It is a problem of understanding and visibility. For example, one customer had 30 developers and 176 work items in progress at the same time. Simple flow metrics highlighting work in progress compared to capacity (every developer had 6 work items in flow on average) was enough for the stakeholders to realise that they had to reduce and prioritise. The stakeholders were inherently reasonable. Once demands and capacity were visible, they understood the problem and started to look at themselves for solutions.
Compared to more traditional project management practices that tend to focus on dates and resources, flow metrics focuses on the work in the delivery system. By measuring key indicators such as work in progress, cycle time, throughput and flow efficiency, flow metrics make work visible, providing business stakeholders with insights into the flow of work through the development pipeline. What was once opaque and mysterious becomes transparent and comprehensible, enabling business stakeholders to see and understand the impact of their decisions on the engineering team.
Flow metrics serve as a powerful educational tool for engineering leaders, empowering them to demystify the development process and communicate its complexities in a language that business stakeholders can understand. By visualizing the flow of work, leaders can demonstrate the finite capacity of engineering teams, highlight the trade-offs inherent in decision-making, and illustrate the consequences of overloading teams with unrealistic demands.
In conclusion, flow metrics are not just tools for optimizing development processes; they are catalysts for cultural change and alignment across the organization. By making work visible, flow metrics empower engineering leaders to educate business stakeholders, foster greater trust and collaboration, and ultimately, drive success in their software development endeavors.