How to Fix Software Product Delivery
A structured approach to diagnosing and fixing delivery bottlenecks in scaled organizations, based on the Delft University research framework.
How to Fix Software Product Delivery
The Way I Approach Software Delivery When There Are Signs of Issues
I’ve yet to see a company that is entirely happy with its pace of software delivery. In scaled organizations, delivery bottlenecks often emerge, slowing down releases, frustrating teams, and impacting business outcomes. Many companies attempt quick fixes — throwing more resources at the problem, increasing deadlines, or tweaking processes — but often, these do not address the root cause.
Analyze First: Identifying Root Causes
Before jumping to solutions, it’s critical to analyze the root causes. My approach involves a multi-dimensional analysis based on structured data collection, conversations, and self-assessments.
The Dimensions of Root Cause Analysis
Based on the Delft University study conducted for ING, the most effective root cause analysis covers five key dimensions:
- Organizational Factors — Alignment, executive support, and company-wide priorities.
- Process Factors — Agile maturity, workflow efficiency, and backlog management.
- Project Factors — Dependencies, complexity, and security requirements.
- People Factors — Team stability, experience, and communication effectiveness.
- Technical Factors — Code quality, test automation, and deployment pipeline robustness.
How to Gather Insights
- Surveys — Collecting structured responses from engineers, product managers, and other stakeholders.
- One-on-One Conversations — Speaking directly with team members to understand practical challenges.
- Self-Assessments — Encouraging teams to score themselves across key delivery criteria.
- Data Analysis — Reviewing historical delivery performance, cycle times, and dependency graphs.
Scoring and Benchmarking
Each criterion is evaluated using a scoring system, providing an objective way to compare different teams, projects, and areas of improvement. This helps identify systemic issues rather than treating every delivery problem as an isolated case.
Full Criteria Catalog
| Dimension | Criteria |
|---|---|
| Organization | Organizational alignment across departments |
| Dealing with geographic distribution | |
| Organizational politics | |
| Executive support | |
| Stability of the organization | |
| Process | Refinement of requirements |
| Agile Maturity | |
| Regular Software delivery | |
| Management of work in progress | |
| User / customer involvement | |
| Project | Project newness |
| Project Size | |
| Task dependencies | |
| Project security or regulatory constraints | |
| People | Communication |
| Team familiarity | |
| Team commitment | |
| Team stability | |
| Skills and knowledge | |
| Technical | Infrastructure reliability |
| Code documentation | |
| Technical dependencies | |
| Bug or incident handling | |
| Code quality | |
| Testing |
Reference
This article is based on the research conducted by Delft University for ING:
Kula, E., Greuter, E., van Deursen, A., & Gousios, G. (2022). Factors Affecting On-Time Delivery in Large-Scale Agile Software Development. IEEE Transactions on Software Engineering, 48(9), 3573-3586.