Ok, now we have a project goal and a list of wished initial requirements and the team has been informed about them. The next thing to do is to divide the project into a series of sub-projects each one of them should produce a measurable outcome.
Why to split the project into smaller pieces?
This is an agile practice taking its roots from earlier ideas, like the Boehm’s Spiral methodology or Gilb’s Evolutionary one and is done to minimize risks of producing nothing at all or what it was not asked for / expected.
You can see more about these benefits in my older post about iterative development.
We have created a vision but who ensures us that it will not change during the project lifetime and will stay with us? We have an initial idea / concept – maybe even validated by an initial feasibility study – but who will ensures us that it will remain valid until the end? What if we have two or three good ideas and want to see which one will survive the live tests, not only on paper?
What if the project will be cancelled halfway through? Did we do half-good work for nothing? Are there no intermediate re-usable outcomes?
We continuously need to revisit the vision and ensure that we are on the right track.