Agile Requirements Engineering: When User Stories Are Not Enough
Agile projects commonly capture customer needs via user stories-placeholders for future conversations about those needs. However, when dealing with complex software products-ones with significant existing functionality or when regulations or customers mandate a requirements-driven development process-user stories are not enough. Under such circumstances, traditional requirements engineering practices can be applied at a high level while the team addresses implementation details using a product backlog of user stories. Colin Doyle shows how to ensure success in complex software product development by using high level requirements engineering practices to drive the development and maintenance of the agile product backlog. Colin explores how to use traditional requirements practices to manage dependencies, visualize the big picture of the overall product, and analyze the impact of changes while, at the same time, employing user stories for pull-based incremental development. You'll learn to apply agile principles to avoid the classic pitfalls of traditional requirements engineering-producing overly detailed, monolithic specifications that fail to address developers' needs.