Ownership Transfer of an Agile Program
In this article, we discuss the various techniques we adopted to enable the effective transfer of knowledge and ownership of the platform of a train ticket retailer in the UK, which was built and enhanced by Thoughtworks over five years.
The client is UK's leading independent retailer of online train tickets. Having over 12 million registered users doing millions of transactions a day, their website is critical to business. Their aim is to help customers save on train tickets by providing various tools to get the cheapest fares across 14 train operating companies across the UK.
In keeping with some directional changes at the company, their board decided to bring down their capital expenditure. The new work required greater co-location & insourcing of IT work. This meant reducing the overall team size to 2/5th of the original size as well as transferring context, knowledge, and infrastructure from a team of 95 members in Bangalore India, back to the team in London.
This was quite an ambitious endeavour, as the application is the very lifeblood of the organisation. Failure was not an option. Transference would involve not just the code base, but also a great deal of experience garnered over five years. After having partnered with this organisation for more than five years, we wanted to put a unique plan in place that would make the transition of ownership a seamless one, and one that would not affect the business in the slightest.
Aspects of ownership transfer
We approached the knowledge transfer in a different way. True ownership requires experience of successes and failures; of understanding procedures intimately and knowing when to take deviations. We realised that this transfer needed to occur over time and across multiple business-as-usual activities. We decided to embed the elements of the Ownership Transfer into regular projects and activities currently running within the program.
There were three broad components in the program that had to be transferred over. These were:
- Working Code
- Engineering: Includes build and deployment systems, hardware, and infrastructure
- Process: Includes aspects around project delivery, quality assurance and release management
The core tenet for the exercise was “learn by doing”. Every project that we undertook over the ensuing months ensured that the three elements above were integrated into the delivery process.
Practices followed during the ownership transfer period
Thoughtworks applied several Lean techniques in implementing the Ownership Transfer.
- Scope: As in all agile projects, we identified the MVP, which comprised about 70% of the units that needed transfer. Separate stories with story points were created for the transfer. This also helped in budgeting for the transfer program.
- Pairing: Every story on enhancing the application was consciously planned and delivered by a Thoughtworker pairing with a client team member. The client team became familiar with not just the new functionality, but also the ecosystem around the enhancement.
- Continuous Delivery: Typical knowledge transfer programs would require business projects to be put on hold until the transfer is complete. But in this case, the teams were pairing on commercial projects. This ensured that new business initiatives continued to be delivered even as ownership was transferred.
- Time Frame: The timeline for the transfer was set over 10 months. This timeline ensured internalising of the transferred elements.
Here is a walk-through of our methods presented at Agile India 2013:
Here are the slides presented at the conference
Throughout the exercise, we continued to make regular releases into production. This ensured that all commitments made by the client to its customers and users were not compromised at any point. At the end of the exercise, the client’s IT team reduced from about 150 to 60 members. The knowledge/ownership transfer exercise helped the smaller team to continue to service the business organisation with the same efficiency.
In conclusion, I would like to paraphrase Jim Highsmith about how companies, while implementing their digital business strategies, are adjusting their approach to outsourcing, in part, by re-insourcing systems critical to their new technology-driven strategies. And interestingly, my book Software Ownership Transfer, drawing deeply from my experiences on the field, provides practical information on transferring application systems knowledge and ownership from one organization to another.
Disclaimer: The statements and opinions expressed in this article are those of the author(s) and do not necessarily reflect the positions of Thoughtworks.