Lean-Agile Software Development: Achieving Enterprise Agility

Lean-Agile Software Development: Achieving Enterprise Agility

Lean-Agile Software Development: Achieving Enterprise Agility

Lean-Agile Software Development: Achieving Enterprise Agility

eBook

$25.49  $33.99 Save 25% Current price is $25.49, Original price is $33.99. You Save 25%.

Available on Compatible NOOK Devices and the free NOOK Apps.
WANT A NOOK?  Explore Now

Related collections and offers


Overview

Agile techniques have demonstrated immense potential for developing more effective, higher-quality software. However,scaling these techniques to the enterprise presents many challenges. The solution is to integrate the principles and practices of Lean Software Development with Agile’s ideology and methods. By doing so, software organizations leverage Lean’s powerful capabilities for “optimizing the whole” and managing complex enterprise projects.

 

A combined “Lean-Agile” approach can dramatically improve both developer productivity and the software’s business value.In this book, three expert Lean software consultants draw from their unparalleled experience to gather all the insights, knowledge, and new skills you need to succeed with Lean-Agile development.

 

Lean-Agile Software Development shows how to extend Scrum processes with an Enterprise view based on Lean principles. The authors present crucial technical insight into emergent design, and demonstrate how to apply it to make iterative development more effective. They also identify several common development “anti-patterns” that can work against your goals, and they offer actionable, proven alternatives.

 

Lean-Agile Software Development shows how to

  • Transition to Lean Software Development quickly and successfully
  • Manage the initiation of product enhancements
  • Help project managers work together to manage product portfolios more effectively
  • Manage dependencies across the software development organization and with its partners and colleagues
  • Integrate development and QA roles to improve quality and eliminate waste
  • Determine best practices for different software development teams

The book’s companion Web site, www.netobjectives.com/lasd, provides updates, links to related materials, and support for discussions of the book’s content.


Product Details

ISBN-13: 9780321647993
Publisher: Pearson Education
Publication date: 10/22/2009
Series: Net Objectives Lean-Agile Series
Sold by: Barnes & Noble
Format: eBook
Pages: 304
Sales rank: 743,745
File size: 5 MB

About the Author

Alan Shalloway is the founder and CEO of Net Objectives. With almost 40 years of experience, Alan is an industry thought leader. He helps companies transition to Lean and Agile methods enterprise-wide as well teaches courses in Lean, Kanban, Scrum, Design Patterns, and Object-Orientation. Alan has developed training and coaching methods for Lean-Agile that have helped his clients achieve long-term, sustainable productivity gains. He is a popular speaker at prestigious conferences worldwide. He is the primary author of Design Patterns Explained: A New Perspective on Object-Oriented Design, Lean-Agile Pocket Guide for Scrum Teams, Lean-Agile Software Development: Achieving Enterprise Agility and is currently writing Essential Skills for the Agile Developer. He has a Master of Science in Computer Science from MIT as well as a Master of Science in Mathematics from Emory University.

Guy Beaver is Vice-President, Enterprise Engagements and a senior consultant for Net Objectives. He is a technology executive with a track record of success in Lean-Agile implementations in large, mid-sized, and start-up organizations. He is a recognized expert in Lean, Agile, and Scrum technical development with a proven ability to lead, manage, and motivate organizations to realize significant productivity and quality improvements. He has over 25 years of experience in Software Engineering and IT across several industries including financial services, defense, and healthcare. Guy has a Master of Science in Physics from Wake Forest University.

James R. Trott is a senior consultant for Net Objectives. He has used object-oriented and pattern-based analysis techniques throughout his 20-year career in knowledge management and knowledge engineering. He is the co-author of Design Patterns Explained: A New Perspective on Object-Oriented Design, Lean-Agile Software Development: Achieving Enterprise Agility, and the Lean-Agile Pocket Guide for Scrum Teams. He is a trainer and coach in the area of reflective practices, knowledge management, and process improvement and is a knowledge management consultant for international relief and development agencies. He has a Master of Science in Applied Mathematics and a Master of Business Administration from the University of Oklahoma and a Master of Arts in Intercultural Studies from Hope International University. An Associate Technical Fellow of a large aerospace company, he has also worked in the energy industry, banking and finance, software development, and artificial intelligence.

Table of Contents

Series Foreword xvii

Preface xxi

Acknowledgments xxv

About the Authors xxvii

Introduction xxix

How This Book Will Help You xxx

The Roots of Agility xxx

The Software Development Pendulumxxx

Principles and Paradigms xxxiii

A Pragmatic Approach xxxiv

Critique the Process, Work Together xxxiv

Lean Provides the Way Forward xxxv

Evaluating Paradigms xxxvi

We Do Not Know It All xxxviii

Lean Provides More than Beliefs xxxix

Going beyond Lean xl

Summary xl

Try This xli

 

PART I Extending Our View beyond Projects 1

 

What Is Software Development? 1

The Software Development Team and Flow 2

 

Chapter 1 An Agile Developer’s Guide to Lean Software Development 5

 

Lean 5

Lean Applies to Many Levels of the Organization 6

A Quick Review of Some Lean Principles 7

Look to Your Systems for the Source of Your Errors 8

Respect People 9

Minimizing Complexity and Rework 10

Eliminating Waste and Deferring Commitment 10

Using Iterative Development to Minimize Complexity and Rework 12

Create Knowledge 12

Deliver Early and Often 13

Build Quality In 14

Optimize the Whole 14

Fast-Flexible-Flow 14

Focus on Time 15

Reflections on Just-In-Time (JIT) 16

Value Stream Mapping 18

Using Value Stream Mapping to Get to True Root Cause 18

The Results 21

Lean Goes beyond Agile 22

Summary 22

Try This 23

Recommended Reading 23

 

Chapter 2 The Business Case for Agility 25

 

The Benefits of Agile 26

Add Value to the Business Quickly 26

Help Clarify Customers’ Needs 31

Promote Knowledge-Based Product Development and Better Project Management 34

Focus on Product-Centered Development 38

Improve Team Efficiency 38

Summary 39

Try This 39

Recommended Reading 40

 

Chapter 3 The Big Picture 41

 

Getting to Enterprise Agility 42

 How to Create Real Value for an Organization 44

Identify Value 44

Manage the Organization’s Resources 45

Manage Projects 48

Proper Software Engineering 49

Summary 50

Try This 50

Recommended Reading 51

 

Chapter 4 Lean Portfolio Management 53

 

The Challenge of Selecting Projects 54

Introducing Terms 54

Project Portfolios 56

Project Portfolios Are Idea Inventories 56

Should We Avoid Delays by Batching Project Analysis? 57

Should We Avoid Delays by Increasing Releases? 58

Lean Portfolio Management 58

Why It Works 59

It Is OK to Plan Releases 60

With Existing Systems, Plan to Use Incremental Delivery 60

The Benefits of Lean Portfolio Management 61

Speed and Quality 61

Line of Sight to Business Needs 62

Minimizing Work-in-Process 62

Minimizing Interruptions 63

The Approach 63

Shorter Planning Cycles 67

Estimating and Tracking Progress 68

Summary 70

Try This 70

Recommended Reading 71

 

PART II Lean Project Management 73

 

Lean Provides Guidance 73

 

Chapter 5 Going beyond Scrum 77

 

Learning a New Way 78

Defining a Method While Not Being Restricted by It 79

Defining a Process 79

Principles and Practices Open the Door for Professionalism 81

Knowing Where You Are 82

Scrum Is a Framework 83

Misunderstandings, Inaccurate Beliefs, and Limitations of Scrum 84

Misunderstandings Commonly Held by New Scrum Practitioners 85

Scrum Beliefs We Think Are Incorrect 85

Limitations of Scrum That Must Be Transcended 89

Unfortunate Consequences of These Beliefs 91

Lean Thinking Provides the Necessary Foundation 92

Introducing Scrum#–Scrum Embedded in Lean Thinking 92

Introducing Kanban Software Engineering 96

Managing the Work in the Kanban Team 98

Advantages of Kanban 100

Selecting an Approach 103

Summary 106

Try This 106

Recommended Reading 107

 

Chapter 6 Iteration 0: Preparing for the First Iteration 109

 

Getting Ready for Iteration 1 110

Set Up the Product 111

Set Up the Team 111

Set Up the Environment 112

Set Up the Architecture 113

Iteration 0 Checklist 113

Summary 115

Try This 115

 

Chapter 7 Lean-Agile Release Planning 117

 

Issues that Affect Planning 118

Evaluating Processes 118

Transparent and Continuous Planning 120

Releases and Elevations 124

Example: Release Planning Session 124

1. Identify Features 126

2. Prioritize Features, Left to Right 126

3. Split Features Using the MMF Perspective 126

4. Estimate the Value of Features 126

5. Estimate the Cost of Features 128

6. Elaborate Features 128

7. Create the Release Plan 129

8. Plan the Elevations 132

A Few Notes 135

On Estimation and Risk 135

Pareto versus Parkinson 135

Summary 136

Try This 136

Recommended Reading 136

 

Chapter 8 Visual Controls and Information Radiators for Enterprise Teams 137

 

Visual Controls and Information Radiators 138

Lean-Agile Visual Controls 139

Product Vision: Providing the Big Picture 140

Product Backlog with Release Plan 141

Iteration Backlog 142

The Visual Control for Multiple Teams 146

Establishing Clear Line of Sight 148

Managing Dependencies with Visual Controls 150

Burn-Down and Burn-Up Charts 152

The Impediment List 153

How to Tell If You Have a Good Visual Control 153

Summary 154

Try This 154

Recommended Reading 155

 

Chapter 9 The Role of Quality Assurance in Lean-Agile Software Development 157

 

Introduction 158

QA at the End of the Cycle Is Inherently Wasteful 160

Improve Results by Moving QA Up Front 161

When the Product Champion Will Not Answer Your Questions 163

Executable Specifications and Magic Documentation 165

Acceptance Test-Driven Development 166

Summary 167

Try This 167

Recommended Reading 168

 

Chapter 10 Becoming an Agile Enterprise 169

 

Where Do You Want to Go? 170

What Gets in the Way? 170

Guidelines for the Transition 172

Where Do You Start? 173

The Product Company 174

The IT Company 178

The IT Product Company 178

The Importance of Continuous Process Improvement 179

Summary 179

Try This 180

 

Chapter 11 Management’s Role in Lean-Agile Development 181

 

Lean-Agile Management 182

Creating the Environment 183

Lean-Agile’s Balanced Approach to Management 184

Create Knowledge within the Team 185

Get to the Root Cause 186

Agile Software Development Is Not Anarchy 187

Lack of Management May Equal Lack of Success 189

Improving Management with Lean Thinking 190

Summary 191

Try This 191

Recommended Reading 192

 

Chapter 12 The Product Coordination Team 193

 

Getting Teams to Work Together 194

Scrum-of-Scrums 194

The Challenge of Coordinating Teams 195

The Product Coordination Team 198

Product Coordination Team Membership 199

Product Coordination Team Guidelines 200

Mentoring 202

Summary 202

Try This 202

 

Chapter 13 Software Architecture and Design’s Role in Lean-Agile Software Development 203

 

Avoiding Over- and Under-Design 204

Designing for Change 206

The Role of Design in Software 207

The Role of Management in Software Design 208

Summary 208

Try This 208

Recommended Reading 209

 

PART III Looking Back, Looking Forward 211

 

Chapter 14 Seeing Lean 213

 

Toyota: The First Great Example of Lean 214

Three Bodies of Lean 216

Lean Science 217

Lean Management 218

Lean Knowledge Stewardship 218

Insights from Lean-Agile Coaches 219

Focusing on One Project at a Time 219

Initiating Fewer Projects Instead of Imploring Teams to Work Better 219

Shortening Batch Times 220

Getting to the Root Cause 220

Knowing Where You Are: Minimum Releasable Features 221

Priorities and Work-in-Process 221

Productivity and Quality 222

Cross-functional Teams 222

The Mantra of Lean: Fast-Flexible-Flow 223

An Example of Fast-Flexible-Flow 224

Next Steps 227

User Groups of Interest 228

Books to Read 228

Other Resources 230

Summary 230

Try This 230

 

Appendix A: Team Estimation Game 233

Appendix B: A Model of Lean-Agile Software Development 237

Bibliography 245

Index 249

From the B&N Reads Blog

Customer Reviews