Scrum Foundations Video Series
All the foundational knowledge of Scrum including: the framework, values, different roles, meetings, backlogs, and improving efficiency & quality.
Scrum Foundations Video Series
How are agile projects managed?
Sometimes when I'm teaching a Certified ScrumMaster® class, I wink and let the attendees in on the "deep, dark secret" of agile: It's all about micromanagement. Almost every principle and practice of agile is there to support micromanagement.
- The daily scrum is about micro-managing the team's daily work plans and making sure that everyone is doing what they say they'll do.
- Continuous integration is put in place so that the minute some developer screws up and breaks a build, it becomes known.
- Pair programming is about making sure that programmers don't lose focus, don't goldplate, don't work on only the fun stuff, and that they clean things up.
Ah, but who is it that is doing this micromanagement? It's the team. So yes, in a tongue-in-cheek way, agile is about micromanagment, but it's about the team micromanaging themselves and for their own benefit.
Within agile development, the Scrum framework has the most to say about exactly what is agile project management. So let’s use Scrum as our model for answering the question: how are agile projects managed. On a Scrum project, three roles/responsibilities make up a Scrum team: product owner, Scrum Master, and developers.
The product owner is responsible for the business aspects of the project, including ensuring the right product is being built and in the right order. A good product owner can balance competing priorities, is available to the team, and is empowered to make decisions about the product.
The Scrum Master serves as the team's coach, helping team members work together in the most effective manner possible. A good Scrum Master views the role as one of providing a service to the team, removing impediments to progress, facilitating meetings and discussions, and performing typical project management duties such as tracking progress and issues.
The developers on the team assume agile project management roles when determining how to best achieve the product goals (as established by the product owner). Team members will collaboratively decide which person should work on which tasks, which technical practices are necessary to achieve stated quality goals, and so on.
So, what is “agile” about this process? Agile project management divides responsibility among more than one team member. In the case of Scrum, it’s a project's product owner, ScrumMaster and the rest of the team.
Where does the Scrum Master fit in?
In agile project management, the world may come to view the Scrum Master as a 21st century version of the project manager. But unlike a traditional project manager, the Scrum Master is not viewed as the person to credit (or blame) for the success (or failure) of the project.
The Scrum Master’s authority extends only to the process. The Scrum Master is an expert on the process, and on using it to get a team to perform to its highest level. But, a Scrum Master does not have many of the traditional responsibilities – scope, cost, personnel, risk management – that a project manager does.
Who handles conventional project manager duties in agile development?
Traditional project managers usually take on a great deal of responsibility. They are responsible for managing scope, cost, quality, personnel, communication, risk, procurement and more.
Agile project management often puts the traditional project manager in a difficult position. He or she is told, for example, to make scope/schedule tradeoff decisions knowing that a product manager or customer might second-guess those decisions if the project goes poorly.
Agile acknowledges this difficult position, and distributes the traditional project manager's responsibilities. What is agile about this new paradigm is that many of these duties, such as task assignment and day-to-day project decisions revert back to the team where they rightfully belong.
Responsibility for scope and schedule tradeoff goes to the product owner. Quality management becomes a responsibility shared among the team, a product owner and Scrum Master. Other traditional tasks are distributed as well among a team’s agile project management roles.
Do agile projects scale?
Agile processes like Scrum are definitely scalable. While the typical agile project has between five and 20 people across one to three teams, agile implementation has been successful on projects with 200 to 500 – even 1,000 people.
As you might expect, projects of that size must introduce more points of coordination and agile project management than small-scale implementation.
To coordinate the work of many teams, larger projects sometimes include a role called “project manager.” While involving someone on the project with this title or background can be very helpful, we need to be careful of the baggage associated with the project manager title.
Even on a very large agile project, the team will still do much of the project management. For example, teams decide how to allocate tasks, not a project manager; so the project manager role becomes more of a project coordinator.
Duties would include allocating and tracking the budget; communicating with outside stakeholders, contractors and others; maintaining the risk census with guidance from the teams, Scrum Masters and product owners; and so on. This is a true agile project management role.