Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise

PM World Book Review 

pmwj17-dec2013-ure-IMAGE1 BOOKBook Title:     Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise
Author:  Dean Leffingwell
Publisher:  Addison-Wesley
List Price:       US$54.95
Format:  soft cover, 518 pages
Publication Date:   2011
ISBN: 978-0-321-63584-6
Reviewer:      James Ure, PhD, PMP
Review Date:              October 2013

One of the core concepts of agile methodology is that user needs are not captured using the traditional methods of software requirements elicitation. With agile, user needs are defined in a progressive manner and understanding them is tightly integrated into the iterative fabric of an agile team. Agile software projects today are commonly focused on user stories that start at a high level and are refined and clarified when the development work on specific stories will be done. There are many good sources for understanding this including the seminal book by Mike Cohn: “User Stories Applied: For Agile Software Development.”

So why do we need another book on the topic? And then, why one so big?

Dean Leffingwell is an established authority on software requirements management and a recognized leader in software development. This book is an impressive addition to the field and at 500 pages, it covers a lot of ground. In his preface, Leffingwell states that agile practices have had to expand as they scale beyond a single team to cover broader needs at the program and enterprise level. He argues that despite how “powerful and innovative” the concept of user stories is, it is not adequate for all aspects of enterprise scale development. It does not sufficiently cover large-scale acceptance testing, system-level requirements, or capturing software investment needs. Hence – a reason for this book and its three tiers: 1) requirements for agile teams, 2) requirements at the broader program level, and 3) enterprise requirements at the portfolio level.

Luckily, Leffingwell is a talented and seasoned author. This book is long, but it is very engaging and full of practical guidance about what works. You don’t have to read it cover to cover, and many chapters and larger sections stand on their own. In this way, it is an excellent reference book that can be used as needed, at least once you grasp the fundamental approach. Leffingwell’s three tiered organization is based on the concept that once you move past a single team, understanding user and organizational needs takes on different dimensions. He has fashioned an expanded methodology that scales out and fills in the gaps that can result from relying solely on the user story process.

Leffingwell does an excellent job of elucidating standard agile requirements practices in a clear and compelling manner, including user story basics, story modeling with index cards, personas and user experiences, user experience mock-ups, and story splitting. Also covered are topics not specific to agile, such as requirements workshops, interviews and questionnaires, compiling needs data, and brainstorming. Leffingwell also covers topics more commonly associated with traditional analysis methodologies, including use cases, activity diagrams, decision tables and trees, message sequence diagrams, and entity-relationship diagrams. These analysis techniques are intended to supplement agile practices, particularly in a larger systems context. “If the description of the story is too complex for natural language and if the business cannot afford to have the specification misunderstood, the team should augment the story with a more precise specification method.” (pg. 356)


To read entire Book Review (click here)

Editor’s note:  This book review was prepared for the PMI Portland, Oregon, US chapter.  It is reproduced here with approval of the book reviewer (author of book review). 

About the Reviewer

flag-usapmwj17-dec2013-ure-IMAGE2 REVIEWERJames Ure, PhD, PMP

Oregon, USA

James Ure is a project leader with his own consulting practice. His background includes 12 years of experience in IT leadership roles for government, not-for-profit, and various private sector organizations. His research and professional interests include agile maturity models and integrating agile practices into organizations. He holds a BA degree from Haverford College and has an MA and PhD from the University of Pennsylvania. James may be contacted at: [email protected].