- Each release should be take no longer than 3 months and deliver usable value
- The complete vision may take a number of releases to realise
- The system/product definition (backlog) should be owned by customer/marketing
- Customer/marketing should decide how much 'traction' is needed between releases
The point here is that software vision is a skill, and the people responsible need training. So my bright idea is training for customers/marketing people on how to create a product backlog.
Agile development starts with the backlog. But what happens before that? Here is my suggestion:
- A new product idea (instigated by anyone)
- If idea meets some minimal criteria, it enters the project funnel
- Organisation use some criteria to decide which projects to fund and in what order
- Funded projects acquire a 'customer team'
- Customer team go through some training on creating 'product backlog'
- Customer team create first pass backlog
- Development team work with customer team to refine and realise backlog
Hopefully I can come up with some good guidelines.
Anyway watch this space.