images

Making Sense of Agile Project Management: Balancing Control and Agility

Charles G. Cobb

images

Preface

Who Should Read This Book?

The goal of this book is to help companies see both agile and non-agile methodologies in a whole new light and understand how they can use these approaches effectively in an overall strategy to gain the right balance of both control and agility. The book is intended for a fairly broad audience—some of the examples in the book are from a software development perspective; however, most of the book is applicable to improving any product development process for software, hardware, and services.

Audience Primary Benefits
All Readers
  • Unravel and demystify a lot of confusing and competing approaches for agile and traditional product development
  • Avoid the “program du jour” mentality that all traditional development methodologies and practices are obsolete and that newer agile methodologies and practices replace them all
  • Better understand how these approaches are complementary to each other rather than competitive and how they might be used more effectively in an overall strategy
Business Leaders, CIOs and IT Managers, Product Development Managers
  • Learn how to develop a balance of agility and control to maximize business results without unnecessarily sacrificing other management goals such as risk management and control of project costs and schedules
  • Develop an understanding of the alternative approaches, benefits, and tradeoffs associated with implementing a more agile product development approach
  • Develop a strategy, an action plan, and an approach for improving your company's product development processes that is well aligned with your business objectives
PMO Leaders, Project Managers and Business Analysts
  • Develop a deeper understanding of the principles behind agile and non-agile methodologies in order to design and tailor a project methodology that is well aligned with the business environment it supports and the risks and complexities of individual projects
  • Understand the impact of agile methodologies on the future of project management and business systems analysis and develop a very proactive approach to meet these new challenges

Brief Overview of the Book

Many businesses have cumbersome and bureaucratic product development processes that can seriously hamper their competitive ability. Typically, these processes have been developed to satisfy a need to provide control and predictability for costs and schedules; however, an overemphasis on control can lead to rigid and inflexible processes that may not be well designed to adapt to business needs. In many businesses today, flexibility and responsiveness to change are as important as control of costs and schedules:

If we accept a broader definition of how to determine the success or failure of projects, it forces us to take a close look at the level of emphasis that has traditionally been put on establishing a level of control designed to meet cost and schedule goals. Achieving a more balanced approach might mean rethinking the way projects are managed, but if it is done correctly, it is not necessary to completely sacrifice control over costs and schedules in order to achieve agility. It does require some skill to achieve the right balance of control and agility, and the right approach may be somewhat different from one business to the next.

Implementing a balanced approach successfully in a business environment poses some significant new challenges for project managers:

That requires a broad-based understanding of different methodologies and practices as well as a deeper understanding of the principles behind them to tailor and customize an approach to fit with the business environment and the risks and complexities of individual projects.

In the past, some project managers may have acted as “cooks”—they knew how to prepare a limited number of recipes (methodologies) and sometimes did so “by the book”. In the future, being a good “cook” may not be good enough, and more project managers may need to become “chefs”—they will need to know how to prepare a much broader range of dishes and go beyond preparing standard recipes by the book to create highly customized and innovative “recipes” tailored to fit a particular business and project environment. The agile movement forces project managers to consider a much broader range of “recipes” and “ingredients” to “cook” with and requires a much more customized and tailored approach.

This book has two major objectives:

  1. 1. For all readers (and, in particular, business leaders); this book is intended to provide an understanding of how to fit agile methodologies into an overall business strategy that provides the right balance of control and agility for their business. Doing that effectively requires analysis and planning. In many cases, agile methodologies have been implemented from a development perspective—they need to be understood from a much broader business strategy, project management, and project governance perspective in addition to a development perspective.
  2. 2. For project managers, this book is intended to provide a much deeper understanding of agile principles, methodologies, and practices to enable project managers to develop a more agile project management approach and understand how to blend and tailor both agile and traditional principles, methodologies, and practices to create an appropriate balance of control and agility to fit a business environment, as well as the risks and complexities of any individual project. Key topics include:
    • How the project management role is changed in agile projects and what new skills and career directions may be needed to grow into agile project management roles.
    • How to develop a project management approach that can be adapted to agile as well as non-agile project environments.
    • How to integrate existing project management knowledge such as the A Guide to the Project Management Body of Knowledge (PMBOK® Guide)—Fourth Edition with new and rapidly evolving agile principles, practices, and methodologies
    • How to design and tailor the right combination of principles, practices, and methodologies (agile as well as non-agile) to provide a balance of control and agility to fit the needs of a business and the risks and complexity of projects rather than attempting to use a standard “off-the-shelf” methodology (either agile or non-agile) for projects.

This book has intentionally been designed to avoid an in-depth discussion of the mechanics of implementing any particular methodology (either agile or non-agile) for two primary reasons:

Why I Wrote This Book

I recently attended a local agile group meeting to hear the presentation “Essential Deprogramming for Traditional Project Managers.” The person who gave the presentation had over 15 years of project management experience, and the tone of her presentation was that she has now “seen the light,” forsaken all the things she used to do as a project manager, and transformed herself into an agile coach.

She made a number of very negative comments about project management that were based on a lot of popular stereotypes, myths, misconceptions, and clichés about what project management is, and she made a particular statement that “‘Agile Project Management’ is an oxymoron.” I don't agree with that point of view at all, but it indicates how large a “chasm” there is between the traditional project management perspectives and newer, more agile approaches to project management. One of the major obstacles to crossing this “chasm” is that there are people on both sides of the “chasm” who are somewhat opinionated and narrow-minded:

I've been doing project management in product development and other project environments for a long time. That has given me a very broad view of what works and what doesn't work in different situations, and I've learned that there is no single methodology (agile or non-agile) that works for all projects. One of the risks in project management is that if you are schooled in one particular methodology (either agile or non-agile), it's easy to get lost in the mechanics associated with implementing that methodology and not step back and consider that an entirely different methodology or approach might make much more sense for a given project.

A major goal of this book is to help build a bridge across this “chasm” between traditional and agile project management approaches and help people see these methodologies in a very different light. This “chasm” really isn't as large as people think it is, and the “chasm” is as much perceived as it is real. This is an extremely strategic and important topic for the project management profession. For many project managers who have been schooled in traditional project management approaches, agile methodologies will require developing a new perspective:

These factors will require project managers to develop a broad-based understanding of agile and non-agile methodologies at a deeper level to apply them successfully in the right combinations for a given project. CIOs, CTOs, development managers, and business leaders also need to understand the potential role that agile methodologies can play in improving the effectiveness of their organization in meeting increasing demands for timely and flexible software solutions that satisfy very demanding business requirements.

I've had some unique experiences in my career that ultimately led me to write this book:

  1. 1. In the mid-1990s I was the director of corporate quality for a company that developed hardware and software products for telecommunications applications. It was quite a challenge:
    • The quality of the products was weak, and the company had ongoing customer service issues to try to keep up with problems generated by software quality issues.
    • The software development organization had a number of very bright developers who didn't want anything to do with any defined methodology or process.
    • The company had grown by acquisition and had acquired other companies in four different worldwide locations (Manchester, UK; Canton, Massachusetts; Dallas, Texas; and Wichita, Kansas) and each of those organizations had its own way of doing things.
    • My primary job at the time was to get the entire company to agree on a single development methodology, and get everyone to adopt and consistently implement that methodology and then pass an external audit on the process implementation. I had moved into the quality management arena from a project management background, so my natural orientation was toward the control and predictability provided by the Waterfall model; however, I was working with a number of software developers and managers who knew a lot more about software development than I did at the time, and I learned a lot from that.
    • To make a long story short, I came to realize that forcing people to adopt one methodology like the Waterfall wasn't going to work—it was overkill, it had way too much overhead for many of the company's projects, and the software developers would never follow it if we implemented it as a standard methodology for the whole company. On the other hand, there were some projects for which it did make sense. The end result was that we wound up with several different life-cycle models and the project manager could pick one of those models that he/she felt was most appropriate for the project, and he/she could also tailor it as needed to fit that particular project.
    • Another lesson I learned is that no methodology (agile or non-agile) should ever be taken as absolute dogma. Project managers must have some ability to apply it intelligently and make changes as needed to fit the scope, risks, and complexity of the project.
    • That implies that those project managers have a sufficient level of training and understand the concept and principles behind the methodology to make those decisions intelligently.
    • The impact of those decisions is understood, reviewed, and approved if necessary by the project's stakeholders.
  2. 2. Since that time, I've worked with many companies in many different application environments, using numerous project management methodologies (both agile and not-so-agile) to help them improve their product development processes. I also have a very strong background doing hands-on development work, so I understand first-hand what it takes to develop good software.
  3. 3. In 2003, I published a book called From Quality to Business Excellence—A Systems Approach to Management. A key objective of that book was to try to demystify and unravel a lot of confusing and competing approaches to process improvement and quality management that were in use at that time (Six Sigma, TQM, BPR, etc.). At that time, Six Sigma was very hot, as agile is today, and people were just jumping into it, treating it as a “panacea” for solving almost any kind of problem, and doing it superficially without fully understanding what it took to do it successfully. I hope that this book will play a similar role in understanding the potential business impact of agile product development methodologies.

How to Use This Book

The following is a summary of how the book is organized to meet these objectives.

Part I

Part I of the book is designed to satisfy the first objective of the book:

Understanding how to fit agile methodologies into an overall business strategy that provides the right balance of control and agility for a business.

This part of the book is appropriate for all readers. It consists of the following chapters:

Chapter # Chapter Title Description/Comments
1 Introduction This chapter sets the stage for the rest of the book. It introduces the main points and provides an executive summary of the book.
2 Agile Values, Principles, and Practices This chapter is intended to provide an overview of the principles behind agile and clear up some of the confusion that exists about agile and traditional methodologies by separating some of the perceptions from the reality. Users who are familiar with agile may want to skim through some of this material; however, this is an important chapter for all readers to clear up any misconceptions that exist before proceeding on into the rest of the book.
 The chapter also provides an understanding of the principles behind Lean Software Development, which is the foundation of most agile methodologies and can be used to streamline traditional plan-driven methodologies.
3 Becoming More Agile This chapter is designed to provide a management-level perspective for anyone faced with making business decisions related to developing a more agile development strategy for their business.
 It provides an understanding of the benefits of agile approaches as well as the obstacles that must be overcome and the commitments needed to implement an agile strategy. It also discusses alternatives that can help provide a balance of control and agility for those businesses that are unable to completely implement a pure agile strategy.
4 Case Studies This chapter discusses some case studies of companies that have crafted successful methodologies that blend a combination of methodologies, practices, and principles to fit the needs of their business.
5 Part I Summary and Action Plan This chapter provides a summary of some of the key points to consider when developing a strategy and plan for your business and discusses some recommended next steps for companies to put the information learned in this book into operational use to improve your business.

Part II

Part II of the book is designed to satisfy the second objective of the book:

Understanding how to develop a more agile project management approach, including how to customize and select and tailor methodologies, practices, and principles to provide a balance of control and agility.

This part of the book is primarily designed for project managers to enable them to more effectively help their companies implement an agile strategy. It is also appropriate for business leaders who want to get a deeper understanding of agile methodologies and how to apply them in an overall business strategy in more detail. Part II consists of the following chapters:

Chapter # Chapter Title Description/Comments
6 Agile Project Management This chapter discusses:
 How the project management role is changed in agile projects and what new skills and career directions may be needed to grow into agile project management roles.
 How to develop a project management approach that can be adapted to agile as well as non-agile project environments, including how to integrate existing project management knowledge such as the A Guide to Project Management Body of Knowledge (PMBOK® Guide) with new and rapidly evolving agile principles, practices, and methodologies
7 Fundamental Principles Behind SDLC Models This chapter is designed to provide a deeper level of understanding of the fundamental factors that should be considered in the selection and tailoring of life-cycle models to provide the right balance of control and agility to align with the company's business strategy and the scope and complexity of typical projects.
 It is designed to enable the user to go beyond the constraint of simply implementing standard off-the-shelf life-cycle models (either agile or non-agile) and more effectively use life-cycle models as a tool for meeting business requirements.
8 Software Development Life Cycles This chapter provides a high-level overview of some major types of software development life cycles to help understand how these different software development life cycles might be used in an overall development strategy.
9 Part II Summary and Action Plan This chapter summarizes the contents of Part II of the book and what it means to project managers.

Part III

Appendix # Appendix Title Description/Comments
Appendix A (Optional) Overview of Agile Development Practices These two appendices are intended as background reading for anyone who is not familiar with agile development practices and project delivery frameworks. It is a high-level overview only and does not go into great deal of detail on any of these development practices or project delivery frameworks.
Appendix B (Optional) Overview of Agile Project Delivery Frameworks

Acknowledgments

Writing this book has been a lot like writing software in many respects—the methodology I used for the writing of this book has had a number of attributes of an agile project in itself:

If I had used a traditional approach to try to write this book, and if I hadn't received a lot of help from a very good team of people who made numerous contributions and suggestions throughout the development process, this book probably would have never even gotten off the ground. There are two people, in particular, who made very significant contributions to this book:

I would also like to thank the following individuals who took the time to review an early draft of this book and provided helpful comments and suggestions:

Dr. David F. Rico Adjunct Instructor at George Washington University
Gina Abudi Partner and VP, Peak Performance Group, Inc.
David Peterson, PMP® Technical Project Manager/Lead Business Analyst
John Balog, PMP® Sr. Project Manager, Software, Hardware
Cornelis (Kees) Vonk, PMP® Consultant/Instructor Project Management
Glenn Deles, PMP® IT Project Manager
Michael Hoffman, PMP® Senior Development Analyst at Time Warner Cable

PART I
Overview

The primary objective of Part I of the book is to help companies understand how to fit agile methodologies into an overall business strategy that provides the right balance of control and agility for their business. Doing that effectively requires analysis and planning. In many cases, agile methodologies have been implemented from a development perspective; they need to be understood from a much broader business strategy, project management, and project governance perspective in addition to a development perspective.

In order to accomplish that, it is essential to overcome some popular misconceptions associated with “agile” such as:

The truth is that:

There are many companies that are locked into very cumbersome and bureaucratic traditional methodologies that don't see how to improve that situation, because it can be so difficult to move to a pure agile approach and there is also a fear of losing control in the process. Part I of the book is designed to help companies understand some of principles behind agile approaches in order to see how to develop an appropriate strategy for how to integrate more agile practices into the way they do business.