Project Transfer Strategies

As part of a recent project, we undertook the development of an application, which had formerly been the responsibility of an employee who had left our client’s organization. That project encountered some challenges, and upon further examination, we realized that many of the problems stemmed from the project transfer after the former employee had left. The documentation was sparse, often out of date, or in many cases, simply nonexistent, making it difficult to understand the function of the code. Even worse, code was deployed to production before being checked in to source control, which naturally caused problems with debugging behaviours in production.

While the situation was something of a worst-case scenario, it got us thinking about strategies we could employ to facilitate the process when code is handed off between two teams, whether that is from a consulting team at the end of a contract or when a team is replaced for any other reason. A common thread in all scenarios is that hand-offs work best when planned for right from the start of the project.

Failing to Plan is Planning to Fail

It’s crucial to understand and agree upon the set of artifacts for the project from the outset, especially when it has a well-defined timeline. In the case where the initial team builds a complete app, it requires a different set of artifacts than one where the source code is handed off for maintenance purposes. Not only does this provide extra certainty that all project requirements have been met, but it also guides the initial team that creates the documentation, as they know whether to write for an audience of developers or end users.

As an addendum to this, it’s essential to have an agreed repository for the non-code assets generated for the project: documentation, diagrams, specifications, etc. This process will help keep track of versions while the project is ongoing and ensures that nothing gets missed during reassignment.

Gradual Transitions Are Best

Project hand-off/transfer meeting

When a new development team is taking over from an old one, try to make the transition gradual whenever possible. Having both teams work on the project simultaneously gives the new developers a chance to acclimate to the best practices of the project and gain insight from the old team, such as reasoning for implementation decisions.

Alternatively, consider having old team members participate in the hiring process for the new team. They know better than anyone what skills are required to work on that code.

Transfer Knowledge in Infrastructure

Lastly, and perhaps most importantly, by following best practices of CI/CD and releases, knowledge about how the code works will get embedded in the tests and processes of the release pipeline. The infrastructure of the code should contain as much information about the code as possible to avoid confusion when new developers take over the project.

Conclusion

Transferring institutional knowledge from one team to another is one of the biggest challenges when handing off a project. As much as possible, try to integrate that knowledge in tests and processes or consider alternative ways to transfer it other than providing a user’s or developer’s manual. With all that said, consider these strategies to enhance the usefulness of comprehensive documentation rather than as a replacement for it.

If you enjoyed this post, be sure to check out our recent successful projects in application development.

discover more

Differences Between SharePoint and OneDrive

The Differences Between SharePoint and OneDrive: A Guide

Many people struggle with understanding the differences between SharePoint and OneDrive and when it is appropriate to use each of them. This blog will discuss SharePoint and OneDrive and will…

Modernizing Legacy Applications

Modernizing Legacy Applications: Future Proof Your Organization

We are seeing rapid and constant shifts and changes within the technology world. For the average person, these changes can be a lot to keep up with. It seems like…

Microsoft Entra Tenant

Attributes of a Well-Designed Microsoft Entra Tenant

Having a well-designed Microsoft Entra Tenant is essential. It ensures your organization is set up for robust security, compliance, and operational efficiency. Implementing strong authentication methods and conditional access policies…

Let’s Build Something Amazing Together

From concept to handoff, we’d love to learn more about what you are working on. Send us a message below or call us at 1-800-989-6022.