Cantitate/Preț
Produs

Agile Software Requirements

Autor Dean Leffingwell
en Limba Engleză Hardback – 31 dec 2010
"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
Requirements gathering is a proven best practice for serious application development. However, requirements and Agile methods have rarely coexisted peacefully. For many enterprises considering Agile approaches, the absence of effective Agile requirements processes has been a showstopper. 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 gathering. You'll find proven solutions you can apply right now-whether you're a software executive, project/program manager, architect, team leader, developer, or tester.
Citește tot Restrânge

Preț: 31037 lei

Preț vechi: 38796 lei
-20% Nou

Puncte Express: 466

Preț estimativ în valută:
5940 6232$ 4928£

Carte disponibilă

Livrare economică 08-22 ianuarie 25
Livrare express 24-28 decembrie pentru 5467 lei

Preluare comenzi: 021 569.72.76

Specificații

ISBN-13: 9780321635846
ISBN-10: 0321635841
Pagini: 518
Dimensiuni: 194 x 239 x 34 mm
Greutate: 1.08 kg
Ediția:1
Editura: Addison-Wesley Professional
Locul publicării:Boston, United States

Cuprins

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


Recenzii

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,

Notă biografică

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.