Free Shipping Anywhere in the World

Shop over 1 Million Toys in our Huge New Range

Agile Software Requirements


Product Description
Product Details

Table of Contents

Foreword xxiii Preface xxvii Acknowledgments xxxiii About the Author xxxv

Part I: Overview: The Big Picture 1

Chapter 1: A Brief History of Software Requirements Methods 3 Software Requirements in Context: Decades of Predictive, Waterfall-Like Processes 5 Iterative and Incremental Processes 9 Adaptive (Agile) Processes 12 Requirements Management in Agile Is Fundamentally Different 16 Enterprise-Scale Adaptive Processes 19 Introduction to Lean Software 20 Summary 28

Chapter 2: The Big Picture of Agile Requirements 31 The Big Picture Explained 32 Big Picture: Team Level 34 Big Picture: Program Level 38 Big-Picture Elements: Portfolio Level 43 Summary 45

Chapter 3: Agile Requirements for the Team 47 Introduction to the Team Level 47 Agile Team Roles and Responsibilities 50 User Stories and the Team Backlog 55 Acceptance Tests 58 Unit Tests 60 Summary 61

Chapter 4: Agile Requirements for the Program 63 Introduction to the Program Level 63 Organizing Agile Teams at Scale 64 Vision 74 Features 75 Nonfunctional Requirements 77 The Agile Release Train 80 Roadmap 81 Summary 82

Chapter 5: Agile Requirements for the Portfolio 83 Introduction to the Portfolio Level 83 Investment Themes 84 Portfolio Management Team 85 Epics and the Portfolio Backlog 85 Epics, Features, and Stories 87 Architectural Runway and Architectural Epics 88 Summary 91 Summary of the Full, Enterprise Requirements Information Model 91

Interlude: Case Study: Tendril Platform 93 Background for the Case Study 93 System Context Diagram 95

Part II: Agile Requirements for the Team 97

Chapter 6: User Stories 99 Introduction 99 User Story Form 102 INVEST in Good User Stories 105 Splitting User Stories 111 Spikes 114 Technical Spikes and Functional Spikes 114 Story Modeling with Index Cards 116 Summary 117

Chapter 7: Stakeholders, User Personas, and User Experiences 119 Stakeholders 119 Identifying Stakeholders 122 User Personas 126 Agile and User Experience Development 129 Summary 133

Chapter 8: Agile Estimating and Velocity 135 Introduction 135 Why Estimate? The Business Value of Estimating 137 Estimating Scope with Story Points 138 Understanding Story Points: An Exercise 138 An Alternate Technique: Tabletop Relative Estimation 145 From Scope Estimates to Team Velocity 146 Caveats on the Relative Estimating Model 147 From Velocity to Schedule and Cost 148 Estimating with Ideal Developer Days 149 A Hybrid Model 151 Summary 152

Chapter 9: Iterating, Backlog, Throughput, and Kanban 155 Iterating: The Heartbeat of Agility 155 Backlog, Lean, and Throughput 169 Software Kanban Systems 179 Summary 180

Chapter 10: Acceptance Testing 183 Why Write About Testing in an Agile Requirements Book? 183 Agile Testing Overview 184 What Is Acceptance Testing? 187 Characteristics of Good Story Acceptance Tests 188 Acceptance Test-Driven Development 190 Acceptance Test Template 192 Automated Acceptance Testing 193 Unit and Component Testing 196 Summary 199

Chapter 11: Role of the Product Owner 201 Is This a New Role? 201 Perspectives on Dual Roles of Product Owner and Product Manager 202 Responsibilities of the Product Owner in the Enterprise 207 Five Essential Attributes of a Good Product Owner 218 Collaboration with Product Managers 220 Product Owner Bottlenecks: Part-Time Product Owners, Product Owner Proxies, Product Owner Teams 221 Seeding the Product Owner Role in the Enterprise 222 Summary 224

Chapter 12: Requirements Discovery Toolkit 227 The Requirements Workshop 228 Brainstorming 232 Interviews and Questionnaires 237 User Experience Mock-Ups 241 Forming a Product Council 243 Competitive Analysis 244 Customer Change Request Systems 245 Use-Case Modeling 247 Summary 247

Part III: Agile Requirements for the Program 249

Chapter 13: Vision, Features, and Roadmap 251 Vision 251 Expressing the Vision 252 Features 255 Estimating Features 257 Testing Features 260 Prioritizing Features 261 The Roadmap 271 Summary 273

Chapter 14: Role of the Product Manager 275 Product Manager, Business Analyst? 276 Responsibilities of the Product Manager in a Product Company 276 Business Responsibilities of the Role in the IT/IS Shop 278 Responsibility Summary 279 Phases of Product Management Disillusionment in the Pre-Agile Enterprise 280 Evolving Product Management in the Agile Enterprise 283 Responsibilities of the Agile Product Manager 287 Summary 297

Chapter 15: The Agile Release Train 299 Introduction to the Agile Release Train 300 Driving Strategic Alignment 304 Institutionalizing Product Development Flow 305 Designing the Agile Release Train 308 Planning the Release 308 Tracking and Managing the Release 309 Release Retrospective 310 Measuring Release Predictability 310 Releasing 313 Summary 317

Chapter 16: Release Planning 319 Preparing for Release Planning 319 Release Planning Narrative, Day 1 322 Release Planning Narrative, Day 2 328 Stretch Goals 336 Summary 338

Chapter 17: Nonfunctional Requirements 339 Modeling Nonfunctional Requirements 340 Exploring Nonfunctional Requirements 342 Persisting Nonfunctional Requirements 347 Testing Nonfunctional Requirements 348 Template for an NFR Specification 352 Summary 354

Chapter 18: Requirements Analysis Toolkit 355 Activity Diagrams 357 Sample Reports 358 Pseudocode 358 Decision Tables and Decision Trees 359 Finite State Machines 361 Message Sequence Diagrams 364 Entity-Relationship Diagrams 365 Use-Case Modeling 366 Summary 366

Chapter 19: Use Cases 367 The Problems with User Stories and Backlog Items 368 Five Good Reason to Still Use Use Cases 368 Use Case Basics 369 A Use Case Example 375 Applying Use Cases 377 Use Cases in the Agile Requirements Information Model 378 Summary 379

Part IV: Agile Requirements for the Portfolio 381

Chapter 20: Agile Architecture 383 Introduction to the Portfolio Level of the Big Picture 383 Systems Architecture in Enterprise-Class Systems 384 Eight Principles of Agile Architecture 390 Implementing Architectural Epics 399 Splitting Architecture Epics 403 Summary 405

Chapter 21: Rearchitecting with Flow 407 Architectural Epic Kanban System 408 Overview of the Architectural Epic Kanban System 409 1. The Funnel: Problem/Solution Needs Identification 412 2. Backlog 415 3. Analysis 418 4. Implementation 423 Summary 427

Chapter 22: Moving to Agile Portfolio Management 429 Portfolio Management 429 When Agile Teams Meet the PMO: Two Ships Pass in the Night 431 Legacy Mind-Sets Inhibit Enterprise Agility 432 Legacy Mind-Sets in Portfolio Management 433 Eight Recommendations for Moving to Agile Portfolio Management 436 Summary: On to Agile Portfolio Planning 447

Chapter 23: Investment Themes, Epics, and Portfolio Planning 449 Investment Themes 450 Epics 452 Identifying and Prioritizing Business Epics: A Kanban System for Portfolio Planning 456 Summary 467

Chapter 24: Conclusion 469 Further Information 470

Appendix A: Context-Free Interview 471

Appendix B: Vision Document Template 475Appendix C: Release Planning Readiness Checklist 485Appendix D: Agile Requirements Enterprise Backlog Meta-model 489

Bibliography 491 Index 495

About the Author

Dean Leffingwell, a thirty-year software industry veteran, has spent his career helping software teams achieve their goals. A renowned methodologist, author, coach, entrepreneur, and executive, he founded Requisite, Inc., makers of RequisitePro, and served as its CEO. As vice president at Rational Software (now part of IBM), he led the commercialization of the Rational Unified Process. As an independent consultant and as an advisor to Rally Software, he has helped entrepreneurial teams and large, distributed, multinational corporations implement Agile methods at scale. He is the author of Scaling Software Agility: Best Practices for Large Enterprises (Addison-Wesley, 2007) and is the lead author of Managing Software Requirements, Second Edition (Addison-Wesley, 2003), which has been translated into five languages.


Praise for Agile Software Requirements "In my opinion, there is no book out there that more artfully addresses the specific needs of agile teams, programs, and portfolios all in one. I believe this book is an organizational necessity for any enterprise."-Sarah Edrie, Director of Quality Engineering, Harvard Business School "Agile Software Requirements and Mr. Leffingwell's teachings have been very influential and inspiring to our organization. They have allowed us to make critical cultural changes to the way we approach software development by following the framework he's outlined here. It has been an extraordinary experience."-Chris Chapman, Software Development Manager, Discount Tire "This book supplies empirical wisdom connected with strong and very well-structured theory of succeeding with software projects of different scales. People new to agile, practitioners, or accomplished agilists-we all were waiting for such a book."-Oleksandr (Alex) Yakyma, Agile Consultant, "This book presents practical and proven agile approaches for managing software requirements for a team, collaborating teams of teams, and all across the enterprise. However, this is not only a great book on agile requirements engineering; rather, Leffingwell describes the bigger picture of how the enterprise can achieve the benefits of business agility by implementing lean product development flow. His `Big Picture' of agile requirements is an excellent reference for any organization pursuing an intrinsically lean software development operational mode. Best of all, we've applied many of these principles and practices at Nokia (and even helped create some of them), and therefore we know they work.-Juha-Markus Aalto, Agile Change Program Manager, Nokia Corporation "This pragmatic, easy-to-understand, yet thought-provoking book provides a hands-on guide to addressing a key problem that enterprises face: How to make requirements practices work effectively in large-scale agile environments. Dean Leffingwell's focus on lean principles is refreshing and much needed!"-Per Kroll, author, and Chief Architect for Measured Improvements, IBM "Agile programming is a fluid development environment. This book serves as a good starting point for learning."-Brad Jackson, SAS Institute Inc. "Dean Leffingwell captures the essence of agile in its entirety, all the way from the discrete user story in the `trenches' to complex software portfolios at the enterprise level. The narrative balances software engineering theory with pragmatic implementation aspects in an easy-to-understand manner. It is a book that demands to be read in a single sitting."-Israel Gat,, @Agile_exec on Twitter "An incredibly complete, clear, concise, and pragmatic reference for agile software development. Much more than mere guidelines for creating requirements, building teams, and managing projects, this reference work belongs on the bookshelf of anyone and everyone involved with not only agile processes but software development in general."-R.L. Bogetti, Lead System Designer, Baxter Healthcare "This book covers software requirements from the team level to program and portfolio levels, including the architecture management and a consistent framework for the whole enterprise. We have practiced the multi-team release planning and the enterprise-level architecture work with kanban and achieved instant success in our organization. Combining the principles of the product development flow with the current large-scale agile and lean software development is a really novel concept. Well worth reading and trying out the ideas here." -Santeri Kangas, Chief Software Architect, and Gabor Gunyho, Lean Change Agent, F-Secure Corp. "Dean Leffingwell and his Agile Release Train (ART) concept guides us from teamlevel agile to enterprise-level agile. The ART concept is a very powerful tool in planning and managing large software programs and helps to identify and solve potential organizational roadblocks-early."-Markku Lukkarinen, Head of Programs, Nokia Siemens Networks

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
Item ships from and is sold by Fishpond World Ltd.
Back to top