What's the best way of documenting agile code for developer succession planning
We've adopted the SCRUM approach to agile development but one aspect we've not really addressed yet is how best to document the eventual code that is developed so that it can be picked up and supported and/or developed further by different resources.
As many will know, there's often a frequent turnover of resources in the software development world and as we grow as a business, we're having to use more and more temporary contractors.
How can we best document what we've developed so that someone new can pick it up and work with it quickly, as part of a Scrum team? All ideas and thoughts welcome.
It sounds as though the problem to solve isn't one of documentation, but team instability. Without stability, the team will find it hard to inspect and adapt, and to demonstrate and improve their professional competencies as a team at all. A high turnover may indeed be expected when people are viewed as resources and not as those professionals. Maybe that is one of the first things that needs to be changed.
I fully agree to Mitchell, having stable teams should be the goal.
Anyway your question for me isn't specific related to agile or scrum as the challenge you describe would (almost) the same I guess even if your team(s) wouldn't do scrum. Nevertheless I have a suggestion for you: Do a retrospective and focus on exaclty this pain point. I guess your team will have good ideas or at least guide you in the right direction.
Some ways to document your code
1. You can adopt a practice (or even add it as part of your DoD) that all codes are properly commented. Implement code review on every pull request and let at least one of the development team review it.
2. Each pull request should include a link or an ID to the story that is being developed. Multiple push should add which task made and/or which bug fixed.