When we started to look into software transfers, relocation of ongoing software development or maintenance from one location to another, often offshore, it was a general impression of the middle management that the upper management would be happy if the transfer would happen over night and have no impact on performance, deadlines, or customers. In other words, people who have previously developed the product would stop working in the project one day, and the new people will take over the following day.
Several years of research into software transfers resulted in a number of important revelations:
- A transfer takes one year, if you have a complex software product. This includes time for employing the new people, transferring knowledge, and supporting the new developers in their initial efforts. Yes, a transfer can be done in a shorter time, if the product is small, simple, stable, well-documented, etc. and the new developers have experienced from related products (domain knowledge).
- A transfer will always have an impact on productivity. Companies shall account for the loss of productivity of the mentors, and the low productivity of the new developers as they learn the software product.
- A transfer may also have a secondary impact on quality. Complex legacy systems require an awareness of ripple effects of changes, which the new developers might not have. This means that the costs associated with achieving the demanded quality level may increase (additional testing, rework, support of original developers in reaction to urgent issues). In the worst case, the customers may be impacted.
- In fact, a transfer may also influence release plans and company commitments to customers. We learned that the first product release completed by the new developers may have so little functionality and be of such low quality that these are often not even released to the customers.
It usually takes at least 5 years to regain performance after a transfer. This also means that transferring products with shorter lifecycle will not provide enough time to reach the return on investments into the transfer.