Agile Requirements by Collaboration: Making Smart Choices About What and When to Build
On an Agile team, you need to make tough choices about requirementscollaborativelyand include the perspectives of all the product's business and technical stakeholders: the business sponsor, customers, users, testers, developers, architects, analysts, user experience designers, marketers, post-implementation supporters, trainers, and so on. What's more, you want to collaborate throughout the entire project in an efficient and consistent manner.
Collaboration yields a healthy project community sharing focus, values, and trust. Collaborative workshops provide an effective venue for Agile teams to work together transparently to make the complex decisions about what to build, and when. By collaborative workshops (or simply workshops), I mean structured meetings in which a carefully selected group of stakeholdersincluding content experts, product owners and customers, and the delivery teamwork together to define, create, refine, and reach closure on deliverables.
Agile Planning Workshops
On an Agile project, requirements unfold within the context of the rhythm of Agile planning: product, release, and iteration (or sprint). You hold different kinds of workshops (or planning meetings) at different points in your project:
- Product roadmapping workshop
- Release planning workshop
- Iteration planning workshop
On Agile projects, planning and requirements elaboration converge. Planning workshops incorporate requirements exploration as well as allocation. Exploration involves eliciting, elaborating, and analyzing requirements (requirements modeling) for that planning horizon. This design allows you to allocate portions of the requirements to the next appropriate planning horizon.
You calibrate your requirements focus based on the applicable workshop:
- During product roadmapping workshops, you explore and allocate the big-view of requirements to map out a strategy for the entire product.
- In release planning workshops, you focus on a smaller time horizon to get a pre-view of requirements for the next release.
- In iteration planning workshops, you explore and plan for a small, concise set of requirements for the immediate sprintthe now-view.
These planning workshops involve the project and product communitythe technical team and the business customers (product owners). Typically, participation in the product and release workshops involves people at higher levels in the organization.