Starting a Software Project Right
It just requires a one-page document.
Create a one-page document including:
- Why does this project exist?
- What are the project’s objectives?
- What are the criteria for measuring the project’s success?
- What initial needs have been identified?
- What constraints have been identified?
There’s no need for more:
- No need for a 200-page specification document.
- No need for 2,000 tickets in a backlog.
- Ensure everyone on the development team has read this document and shares the same understanding.
- Propose to iteratively evolve with the client and regularly present updates.
- Agree on a mode of communication with a frequency that suits this client.
- Finally, find an agreement on what the first step should be.
We can start! Focusing on the first step only, then delivering incrementally, always incorporating feedback, and avoiding isolation for extended periods (2 weeks is already too long).
Does that sound crazy to you? If yes, does this sound crazier than paying very expensive consultants to write a document nobody will truly read, and that will be deprecated in 2 weeks, after figuring out that the need you thought the client will have is slightly different? Crazier than having a team spread up on at least as many task as members in the team, having no focus thus not able to deliver?
Write that one-page document, staple it to the wall, and start building!