5 C's of Agile Management

By focusing on the 5 C's of agile development: Courage, Context, Course, Cadence, and Cost - software will never become "easy" but it will become easier, and better managed. Learn how each of these aspects cannot be ignored to run a successful project.

Anyone who has ever been responsible for managing software development projects knows that software is not easy . Successfully coordinating and dealing with project sponsors, customers, team members, technology issues, and changing requirements challenges even the most experienced project leader. Leading projects in an environment that embraces both rapid delivery and change can prove even more daunting. Yet individuals with the desire to change the fundamental rules of the software game and accept the empirical nature of software development are faced with numerous opportunities. In order to capitalize on the evolutionary nature of agile development, today's leadership community must also focus on five key aspects associated with of agile development: Courage, Context, Course, Cadence, and Cost.


Also one of the four primary values identified in Kent Beck's Extreme Programming Explained , courage takes on a much broader and more strategic meaning outside the boundaries of programming. Software development requires many interfaces - customers, other project teams, customer support, professional services, external stakeholders, human resources, and many more - and the confidence to step up to the plate and be willing to enact positive change in the face of tradition can be a risky, but ultimately very rewarding experience.

Agile development is definitely not for the faint of heart. This does not mean that project management won't ultimately be simplified, but rather that any new way of doing business requires practice and hard work. Agile leaders cannot be afraid to fail, especially during early {sidebar id=1} iterations. With agile development, at least failures are typically limited in scope to a few weeks, at which point you can reevaluate the situation and adapt accordingly. These early iterations should be used to learn, adjust, and stabilize.

Teams, and people, generally get good at what they practice. In agile development, planning, estimating, testing, and delivery, occur every few weeks as opposed to once every year. As a result, teams quickly develop a rhythm. By focusing on removing obstacles that get in the way and allowing this rhythm to emerge, agile leaders set the stage for improvement, predictability, and success. While still in the heat of software delivery battle, a vast majority of agile teams look back after six months, see the improvement, and wonder how they ever could have successfully delivered software any other way.


With much of the fundamental project infrastructure (scope, priorities, estimates, schedules, risks, etc.) in a state of flux, it has never been more important to steer and manage actions and decisions within an overall business context. While functional value can oftentimes drive the details of a project, business values need to help drive project goals. Force hard decisions about the business and project context as early as possible. Get as simple as possible answers to key questions such as:

    • What is the vision for the project?
    • What are the primary goals and business drivers of the project?
    • What are the values that should drive key project and product decisions?
    • What are the expectations of project sponsors and stakeholders?

The answers to these questions serve as the basis for future decision-making, as well as a thread that can prevent a project from spiraling out of control. Additionally, the degree of visibility afforded these priorities can serve as a foundation for managing conflict and stakeholder negotiations. Many teams document answers to the above on a single page or project web page, and keep them visible throughout the life of the project. These answers often serve as a bar to which you will be held accountable.


Context and course are complementary ideals. Whereas context defines

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.