Agile and Lean Program Management cover page

Agile and Lean Program Management

Agile and Lean Program Management

Scaling Collaboration Across the Organization

Scaling agile or lean projects to a program is difficult. Dictating to a program doesn’t work. What does? Autonomy, collaboration and exploration. Learn how to become an agile and lean program manager or become a valued member of a program team and collaborate across the organization.
Agile and Lean Program Management Edit


About the Book

Are you a program manager trying to coordinate many projects across your organization? Are you part of a software team, waiting for the software, hardware, or marketing to be ready? Or, are you are part of the core team, in HR, Marketing, DevOps, or some other group in the organization wondering, “When will this product be done?”

Learn to select the most pragmatic agile and lean approaches for your program. Increase your product’s business value, reduce your risks, and release faster. Establish a rhythm for your program, reduce work in progress, and see where you are missing key players. Provide autonomy for feature teams, a collaborative and exploratory environment across the organization to realize business value. Everyone on your program will be able to answer the question, “When will this program be done?”

Read more

Table of Contents

  • Beta Notes
  • Acknowledgments
  • Preface
  • Introduction
  • 1. Defining Agile and Lean Program Management
    • 1.1 A Program is a Strategic Collection of Several Projects
    • 1.2 Program Management Facilitates the Program to Release
    • 1.3 Program Management Coordinates the Business Value
    • 1.4 Agile Program Management Scales Collaboration
    • 1.5 Agile and Lean Provide You Change at the Program Level
    • 1.6 What Program Managers Do
    • 1.7 Take a Product Perspective
    • 1.8 Principles of Agile and Lean Program Management
  • 2. Organize Your Program Teams
    • 2.1 Review The 12 Principles of Agile Software Development
    • 2.2 Review the Seven Lean Principles
    • 2.3 Consider Your Program Context
    • 2.4 Know Which Program Teams You Need
    • 2.5 The Core Team Provides Business Leadership and Value
    • 2.6 Create Your Core Team
    • 2.7 Beware of Forgetting Core Team Members
    • 2.8 The Product Owner Role is Key to the Program’s Success
    • 2.9 Organize the Software Program Team
    • 2.10 Do You Need a Core Team?
    • 2.11 Don’t Manage More Than One Program Team Yourself
    • 2.12 Principles of Organizing Your Program Teams
  • 3. Charter Your Program
    • 3.1 A Program Charter Sets the Strategy
    • 3.2 Develop the Program Charter with the Core Team
    • 3.3 Lead the Program Chartering Effort
    • 3.4 Create Your Own Program Charter Template
    • 3.5 Iterate on the program charter and plans
    • 3.6 Principles of Charter Your Program
  • 4. Create and Update the Agile Roadmap
    • 4.1 Define the Initial Agile Roadmap
    • 4.2 What You Put in the Big Picture Roadmap
    • 4.3 Differentiate Between Internal and External Releases
    • 4.4 What Do You Want to Release This Month?
    • 4.5 Plan for External Releases
    • 4.6 This is Deliverable and Rolling Wave Planning
    • 4.7 Small is Beautiful for Programs
    • 4.8 Update the Roadmaps
    • 4.9 Principles of Create and Update the Agile roadmap
  • 5. Estimating Schedule or Cost
    • 5.1 Ask These Questions Before Estimating
    • 5.2 Targets Beat Estimates
    • 5.3 Generate an Estimate With a Percentage Confidence
    • 5.4 Do You Really Need an Estimate?
    • 5.5 Beware of These Program Estimation Traps
    • 5.6 Estimation Do’s and Don’ts for Program Managers
    • 5.7 Principles of Estimating Schedule or Cost
  • 6. Create an Environment of Delivery
    • 6.1 Visualize Program Team Work
    • 6.2 Keep the Program Team Work Small
    • 6.3 How Features Flow Through Teams
    • 6.4 How Often Can You Release Your Product?
    • 6.5 Release internally, Even with Hardware
    • 6.6 Are You Integrating Chunks or Products From Others?
    • 6.7 Create a Culture of Delivery Throughout the program
    • 6.8 Principles of Create an Environment of Delivery
  • 7. Encourage Autonomy, Collaboration, and Exploration
    • 7.1 Software is Learning, Not Construction
    • 7.2 Scaling Agile Means Scaling Collaborative Practices
    • 7.3 Feature Teams Need to be Autonomous
    • 7.4 Create Small-World Networks to Optimize Learning
    • 7.5 Communities of Practice Create Connection and Collaboration
    • 7.6 Avoid Hierarchical Titles
    • 7.7 Continuous Integration and Testing Supports Collaboration
    • 7.8 Invite People to Experiment
    • 7.9 Principles of Encourage Autonomy, Collaboration, and Exploration
  • 8. Create Useful Meetings for Your Program
    • 8.1 Explaining Status: Do Not Use Standups at the Program Level
    • 8.2 Create a Rhythm for Your Program Team
    • 8.3 Organize Your Program Team Meetings
    • 8.4 Program Team Meetings Solve Problems
    • 8.5 Principles for Create Useful Meetings for Your Program
  • 9. Useful Measurements in an Agile and Lean Program
    • 9.1 What Measurements Will Mean Something to Your Program?
    • 9.2 Never Use Team-Based Measurements for a Program
    • 9.3 Measure by Features, Not by Teams
    • 9.4 Measure Features Complete
    • 9.5 Measure the Product Backlog Burnup
    • 9.6 Measure the Time to Your Releasable Deliverable
    • 9.7 Measure Release Frequency
    • 9.8 Other Potential Measurements
    • 9.9 How to Answer the “When Will You Be Done/How Much Will Your Program Cost” Question
    • 9.10 Principles
  • 10. Integrating Agile and Not-Agile Teams in Your Program
    • 10.1 You have waterfall teams in your program
    • 10.2 You Have Teams That Produce Incrementally, but Not Agile-Y
    • 10.3 You Have Teams That Prototype
    • 10.4 You Have Silo Teams but Your Managers Want You to Use Agile
    • 10.5 Principles Integrating Agile and Not-Agile Teams in Your Program
  • 11. Troubleshooting Program Team Issues
    • 11.1 Ask for the Problems or Impediments First
    • 11.2 Help People Bring You Bad News
    • 11.3 You Are Missing People You Need on the Core Team
    • 11.4 People on the Core Team Don’t Deliver What They Promise
    • 11.5 Your Product Owners Have Feature-itis
    • 11.6 People on Teams Are Multitasking
    • 11.7 We Can’t Afford the Travel
    • 11.8 How to Start a Program With More People Than You Need
    • 11.9 Principles of Troubleshooting Program Team Issues
  • 12. Troubleshooting Agile Team Issues
    • 12.1 The Teams Are Not Feature Teams
    • 12.2 Teams Think They Are Agile, but They Are Not
    • 12.3 Your Features Span Several Iterations
    • 12.4 You Don’t Have Frequent-Enough Deliverables
    • 12.5 Teams Don’t Finish when They Say They Are Done
    • 12.6 Principles of Troubleshooting Agile Team Issues
  • 13. Integrating Hardware Into Your Program
  • 14. What to Do If Agile and Lean are Not Right for You
    • 14.1 Try an Incremental Life Cycle
    • 14.2 Organize by Feature Team
    • 14.3 Learn to Release Interim Deliverables
    • 14.4 Learn How to Reduce Batch Size With a Large Program
    • 14.5 Try Release Trains
    • 14.6 Principles for What to Do If Agile and Lean are Not Right for You
  • Annotated Bibliography
  • Glossary
  • More from Johanna

Read More

About the Author

About the Publisher

This book is published on Leanpub by Practical Ink

Johanna Rothman's books on leanpub. Practical, frank, and often humorous tips you can put to work right now.

The Leanpub Unconditional, No Risk, 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks. We process the refunds manually, so they may take a few days to show up.
See full terms