Cart
Free Shipping in Australia
Proud to be B-Corp

Agile Software Requirements Dean Leffingwell

Agile Software Requirements By Dean Leffingwell

Agile Software Requirements by Dean Leffingwell


Agile Software Requirements Summary

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

We need better approaches to understanding and managing software requirements, and Dean provides them in this book. He draws ideas from three very useful intellectual pools: classical management practices, Agile methods, and lean product development. By combining the strengths of these three approaches, he has produced something that works better than any one in isolation. -From the Foreword by Don Reinertsen, President of Reinertsen & Associates; author of Managing the Design Factory; and leading expert on rapid product development Effective requirements discovery and analysis is a critical best practice for serious application development. Until now, however, requirements and Agile methods have rarely coexisted peacefully. For many enterprises considering Agile approaches, the absence of effective and scalable Agile requirements processes has been a showstopper for Agile adoption. In Agile Software Requirements, Dean Leffingwell shows exactly how to create effective requirements in Agile environments. Part I presents the big picture of Agile requirements in the enterprise, and describes an overall process model for Agile requirements at the project team, program, and portfolio levels Part II describes a simple and lightweight, yet comprehensive model that Agile project teams can use to manage requirements Part III shows how to develop Agile requirements for complex systems that require the cooperation of multiple teams Part IV guides enterprises in developing Agile requirements for ever-larger systems of systems, application suites, and product portfolios This book will help you leverage the benefits of Agile without sacrificing the value of effective requirements discovery and analysis. You'll find proven solutions you can apply right now-whether you're a software developer or tester, executive, project/program manager, architect, or team leader.

Agile Software Requirements Reviews

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, www.enter-Agile.com 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, http://theAgileexecutive.com, @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

About Dean Leffingwell

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.

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 475 Appendix C: Release Planning Readiness Checklist 485 Appendix D: Agile Requirements Enterprise Backlog Meta-model 489 Bibliography 491 Index 495

Additional information

GOR013197740
9780321635846
0321635841
Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise by Dean Leffingwell
Used - Like New
Hardback
Pearson Education (US)
20110127
560
N/A
Book picture is for illustrative purposes only, actual binding, cover or edition may vary.
The book has been read, but looks new. The book cover has no visible wear, and the dust jacket is included if applicable. No missing or damaged pages, no tears, possible very minimal creasing, no underlining or highlighting of text, and no writing in the margins

Customer Reviews - Agile Software Requirements