We were working on a large scaled program of work that involved over 40 delivery teams needing to coordinate and work together to deliver the end-to-end solution. Many teams were component teams aligned to architecture and platform and this meant they experienced delays and impediments to releasing more frequently due to inter-train dependencies. They were moving to more agile ways of working and wanted to move from a “big bang” once a year release to more frequent releases and ultimately a continuous integration approach (DevOps) where a lot of the manual integration would be automated and done by the agile teams themselves.
We had started working with this program in the initial stages of their agile transformation about 12 months previously. The leadership knew this would be an iterative, incremental journey and would take potentially a number of years to develop the type of culture and change they had envisaged.
Whilst cross-functional teams are the cornerstone of Agile, at scale, it sometimes takes a very long time for organisational agility to evolve. Consistent challenges that prevented agile teams from delivering features end-to-end within a Program Increment included:
We needed to address the bottleneck issues and map the dependencies to develop a holistic view of the program from a release planning perspective. ZXM supported the Integration team through the process of designing and implementing an Integration workshop, including defining the outcomes required and developing the agenda for the half day workshop.
- Organisational Structure: Teams were mostly back-end and relied on another team for other components of software, front end enhancements, database layer, integration and API
- Immature Agility: teams were using Scrum, but many of the other teams they were working with were using more traditional approaches, like Waterfall or a Hybrid form of Agile
- Reliance on Specialists: Not all specialities represented in the agile team and therefore had to use subject matter experts outside the team for certain elements and approvals
- Complicated Architecture: Working with many different systems, tools and technology that it was difficult to be truly cross-functional and loosely coupled
Agile Practices we employed to Mitigate Integration Issues
Agile Principles we applied as we scaled
Transparency
We started with helping the Dependency manager (Integration and Release Manager) to visualise the dependency roadmap to increase the transparency of dependencies, potential conflicts, sequencing issues, risks and impediments, to enable their program leadership team to remove impediments that are outside the train’s control, but within the wider context of optimising for organisation-wide goals. This was the first time that the program had visualised all the delivery areas and impacted functions needed to deliver the feature from an end-to-end perspective. This transparency helped leadership understand the “hidden” risks in the delivery planning as engagement around integration was happening too late in the process and well after commitments to commitments and stakeholders had been made regarding delivery dates. This put strain on teams to meet very tight time frames. Each train and delivery area whilst dependent on each other, did no formal planning of releases as a whole and instead worked in their own component delivery silos. At scale, this transparency and collaborative approach was needed to meet organisations objectives and the program used integration and release planning prior to their “big room” program Increment ( PI) planning days to proactively start to understand and map the dependencies within and external to the program trains and teams.Systems Thinking to take a Holistic View
ZXM guided the Integration team on a learning journey, coaching release and integration leadership to think in terms of the outcomes required for a holistic integrated release picture for the program train and the other delivery areas/trains that were required to deliver the full capability end-to-end. We had done a value stream mapping workshop with the business sowners, product management, solution design and delivery leadership and this showed that the end-to end lead time from ideation to delivery was approximately 150 days. This meant that Features on average were taking between 4-6 months before they could be released. The two main bottlenecks identified were solution design (taking a long time to design features at a high level and a tendency to do detailed design before agile teams commenced work) and integration of the work of the component teams downstream. Whilst we worked with the product management team on the solution design bottlenecks, in parallel we focuse don how to shift testing and integration left to increase time to market by reducing cycle time within a stage and overall lead time.
We needed to address the bottleneck issues and map the dependencies to develop a holistic view of the program from a release planning perspective. ZXM supported the Integration team through the process of designing and implementing an Integration workshop, including defining the outcomes required and developing the agenda for the half day workshop.