In many development projects a manager often use agile methods, but some still use methods from the linear project management. But in agile a project manager should not be a commanding project manager, but what role should an agile project manager have? How should the project manager lead the project when agile demands self-organized teams and good respond to changes? Some managers may forget that more control doesn’t necessarily mean more order. An agile project manager should guide the team to their goal and protect the team members. This paper explains the agile project manager’s role and how a manger should act in an agile project.
Scrum is an agile development method based on self-organizing teams. Agile methods are created to respond on changes and deliver what the customer actually need and not what the customer thought he wanted. Agile is divided into iterations, called sprints in Scrum, compared with traditional projects which follow a linear progress.
With use of sprints, a customer can get demos in the end of the sprint and give feedback on the product. With product feedback the project team can alter the scope to meet the customers’ requirements or fix misunderstandings of user stories. With Scrum a customer, often called Product owner, is closely involved in the project, but what about the project manager? In traditional projects a project manager will have control over the team and who is doing the tasks, but how much control does a project manager have in agile project? Does the project manager delegate task and control the team in agile project? In this paper we will look closer into the roles of a project manager in the agile methodologies as Scrum.
- Literature Review
The traditional project management is running a project as a linear and sequential process, often called waterfall methodology. This way of managing a project can be effective, if the project is working with stable, known and consistent requirements. In the real-world development the environment is more changing to technology, market and conditions. The requirements must have the possibility to change with the customer and market, at the same speed. Even small changes can give unexpected result, which may result in more complex systems. This makes traditional management a mismatch with dynamic systems. (Augustine et al 2005)
In a traditional point of view, a project manager often use light touch management. Here is everything viewed through the prism of control, which includes control of changes, risk and people. Some project methodologies, tools and practices are created to control an out of control situation. But these tools are doomed to fail when they don’t accept changes easily and schedules needs to be updated regular to match the rapidly changing environments. When a project manager takes more and more control, they might forget their purpose to create order. The project manager may believe that more control means more order, but this is often not true. Some project managers maybe realize that more control doesn’t necessarily means more control. When the project managers accept that they can’t know everything in advance and ease the control, they may gain more order? (Augustine et al 2005)
Agile development is based on iterative and incremental development. This means that requirements and solutions evolve thorough collaboration between self-organizing and cross- functional teams. In agile we have adaptive planning, development and deliver, and agile encourage rapid response to changes. Example of agile methodologies is Scrum.
“Agile software development: the cooperative game”. Cockburn, A.
Scrum is an agile method which involves different variables in technology and environment which are likely to alter through the process. Scrum focuses on having a team organized to work in a constantly changing environment. The focus on changes gives the team a higher possibility to deliver what the customer actually wants. The Scrum lifecycle consists of three phases, the pre-game, development and the post-game/release.
The pre-game consists of two parts which acts as sub-phases; planning and staging. In the planning phase the definition of the system is made based on a product backlog. The product backlog contains all currently known requirements. These requirements are prioritized and estimated. In the staging sub-phase, the design and requirements are refined and elaborated based on the product backlog.
The development phase is the iterative cycles, called sprints in Scrum. In these sprints, new functionality is added and the system is enhanced. Each sprint includes requirements, analysis, design, evolution and demo. A sprint can last from one week to 30 days. Every day in the sprint, the team will hold a daily scrum meeting to update each other one what they are working at and what to do next. (Coram and Bohner 2005)
Figure 1 – A Scrum sprint
In the post-game/release phase the effort is concluded and the release is delivered to the customer. Also documentation and training may be done in this phase. (Coram and Bohner 2005)
The paper “The impact of agile methods on software projects” (Coram and Bohner 2005) examines agile methods impact on project management. This paper explains the principles of different agile methodology and explains the impact of agile on the different roles, the process and the project. For this paper the impact on roles is the interesting part.
This paper is written by Michael Coram and Shawn Bohner from Virginia Polytechnical Institute and State University. This paper has been sited 59 times and has been published in IEE Computer Society. This paper is written in 2005, but is considered useful since the methodology’s has not changed radically the last years and they are using very trustworthy references.
“Agile project management: steering from the edges” (Augustine et al 2005) is a paper written by Augustin, Payne, Sencindiver and Woodcook which are consultant in agile development management. Their paper goes into how the development teams and the management should be organized in an agile project. They also include a case-study from their own experience. This paper explains the organic teams, the simple rules, light touch management and adaptive management in agile projects. Their paper has been sited 120 times and has been published in Communication of the ACM. This paper can be considered to contain good quality and have solid references.
“Agile Software Development: The People Factor” (Cockburn and Highsmith 2001) is a paper written by Cockburn and Highsmith, which are well known writers in the world of agile. Their paper explains how a team should be organized and how a project manager should act in an agile project. This paper explains how agile is designed to capitalize on each team member as individual and a team’s strengths. They also focuses on explain how teams should be self-organized and doesn’t need a controlling project manager. This paper has been sited 417 times and been published in Computer. This contains good quality content and is very trustworthy considering who wrote this paper.
All agile methods are based on high collaboration and teamwork. This applies not only inside the team, but also outside the team. Agile relies on good communication rather than a lot of documentation. Information flow more fluid throughout the team and other participants with good communication. An agile project is doomed to fail without good communication, so this means that the first and main responsibility of a project manager is to ensure good collaborations in the environment. The project manager needs to be more like a mentor rather than a dictator. (Coram and Bohner 2005)
Agile project managers should not only emphasis good communication, but also the human factors as talent, skills and amicability. This is the qualities which should be the main concern of an agile team. Developing the skills of each team member is important, in this way each team member can deliver more value over time.
Agile project managers understand that demanding certainty in an uncertainty environment won’t work well. Because of this agile companies practice leadership collaboration rather than project managers having strict control. A project manager should be a macromanager rather than micromanager. A project manager understands then who makes a decision is not important as collaboration and sharing of information so informed decisions can be made. A project manager should understand that agility depends on trusting the team members as individuals to use their skills in an effective way. (Cockburn and Highsmith 2001)
Agile software projects have two main project leader roles, the project manager and the team leads. Agile teams often involve staff with different experience and responsibility, and they should be self-organizing. This does not mean leaderless teams, but a mentor leadership approach is more effective. Team leads must be willing to let team members to take initiative and the leadership is done with collaboration rather than a commanding leadership. The team lead must try to encourage the team to make decisions and sharing responsibility.
The project managers’ job is to keep a track on progress and making business decisions. A project manager can adjust more than the team leads since schedules and plans are not that important in agile projects. It is more important for the project manager to respond to changes rather than following a strict plan. In Scrum, a project manager is more involved through the daily scrum. The focus of the project manager is placed on involving customer collaboration, rather than focusing on contracts and deliverables. (Coram and Bohner 2005, Cockburn and Highsmith 2001)
A large projects running over a long time may be challenging and the number of requirements from a customer can be many. This may result in difficulties for the team to estimate tasks and a single customer representative may not be sufficient enough. In these situations a project manager needs to assist in prioritizing tasks and making decisions to deliver the most important requirements first. (Coram and Bohner 2005)
Agile project managers use adaptive leadership method. This means that the project manager is balancing the team on an edge of chaos, which is taken from the complexity theory. This means system with too much control is to strict, while system without enough control ends in chaos. A project manager then runs his project whit small self-organized teams and acts like a mentor or guide. The project manager is also establishing some simple rules and making sure that information is openly exchanged within the team.
The adaptive leadership lets the project manager understands the internal forces in a project. The project manager understands then the effects of interaction between the different parts of a project and leads them into a path of learning and adaption. (Augustine et al 2005)
Here some of the adaptive APM framework practices taken from Augustine et al 2005:
- “The ability to manage and adapt to change.”
- “A view of organizations as fluid, adaptive systems composed of intelligent people.”
- “Recognition of the limits of external control in establishing order.”
- “An overall humanistic problem-solving approach that:”
- “Considers all members to be skilled and valuable stakeholders in team management.”
- “Relies on the collective ability of autonomous teams as the basic problem-solving mechanism.”
- “Minimizes up-front planning, stressing instead adaptability to changing conditions.”
(Augustine et al 2005)
These points will help an agile project manager to be adaptive, guiding the team and establish some simple rules, which encourage the teams rapidly collaboration, adaption and feedback to the management and within the teams.
Most of the rules mentioned earlier in this paper apply also for Scum. In Scrum the project manager or the Scrum master will only act as a mentor or guide for the team. The project manager should let the team be self-organizing. A project manager should only take control if in a case of natural tendency for the team to look to a leader for directions or solutions. The project manager should involve in the daily Scrum to keep track on the project or help out with guidance if needed.
A project manager should make sure to involve the customer/product owner in the progress of the project. In this way a customer can prioritize tasks and place new requirements or alter existing requirements. In some cases the project manager may need to help the customer or the team to prioritize the tasks since one representative for the customer may not always be sufficient enough. (Larman 2004)
In 2011 a Norwegian company started a big internal development project involving more than 20 developers, the largest internal development project ever in their history. To secure progress more than 80% of developers was hired in as consultants from Norway, Germany and China, 3 countries in 2 continents. The project began with very skilled team members and a clear written mandate, but the priority of the existing requirement was changed and also the requirements itself was changed in the middle of the project. Scrum was chosen as a method, but it was only practiced inside R&D, the management and control board was still following the water fall methods. Complete plans, risk evaluation and budgets were required. The old triangle of Time, Scope and cost was the traditional style of project management; it was a big gap between R&D and management.
After 1 year of progress and 12 million NOK spent the management stopped the project and made changes to the project organization.
To resuscitate the project, a Project manager was assigned to the project and the two main roles was to lead the team and to report to management.
- Lead the team:
The main role to lead the team was to be available for the team worldwide, it means as simple to be available in Norway, China and Germany, both physically and by usage of communication tools like Skype. It was a lot about understanding the local culture in China and Germany and be a mentor for the team. The first thing you need to be a mentor is trust and respect, the only way to get this is to earn this. These are only done by working close with the developers and being integrated with the team and protect them from politics and interruptive tasks. To guide them on the correct path and be available every time they needed a decision to be taken.
- Report and show progress:
The Company was used to that R&D projects was delayed, but in this project it was not accepted. This part of the Project management was to keep a scope realistic, this was done of measuring the number of story points the team manage to solve within one sprint and adjust the scope daily to secure the time boxed releases. It means that dates are always kept, and releases were always done on the planned date, but it might be that scope is reduced. This because stakeholders always remembers a date but seldom the complete scope.
After 6 months the project is reported to be back on schedule and have good control, even if less functionality than originally planned is developed. It is all about expectations and leading the team to do their best. This was achieved by organizing a good collaboration environment and freely communication in the team. The project manager was also the “watch dog” for the Product owner and secured the access to the resources.
The Project manager has more than 20 years’ experience of running development projects, and has been running agile projects since 2005. He knows Craig Larman well after several courses and personal meetings and in fact the he is the person that brought Mr. Craig Larman to Norway for the very first time. Respect, knowledge and be a mentor is a keyword in the selection of the Project manager, an open minded project manager that care about his team and ensure that they do their very best to fulfill as much tasks as possible every day in 3 countries in two continents. In fact he uses the time zone as a benefit by extending the hours of development; he calls it “follow the sun” concept.
*Company name and name of project manager is not mentioned to keep this information anonymous. This information can be given if needed.
Project managers in a traditional managed project will often us a light touch management to keep control over the people and making the decisions at his/her own. This will only work for a project where the requirements are stable and cannot change during the progress. But an agile project should respond to changes and the scope may be altered through the project. A project manager in an agile project needs then to be more open for changes.
To accomplish this, a project manager act more like a mentor or guide for the team, rather than keeping strict control over the team and being a dictator like in traditional projects. The teams should be self-organized and make decisions on their own and use their project manager to steer them in the right direction if needed. Keeping a strict control often gives less order than letting them make decision by their own. In Scrum a project manager is mainly following the progress and act like a firewall to protect the team from others to give the team tasks. The project manager shall focus on collaboration with team and customer, rather than control and contracts. The project manager shall involve the customer in the project and show demos for him after each sprint rather than the end of the project. In this way a project manager will help the customer to get what he wants rather than something he thought he wanted, because the focus was not a contract and not only planning in the begging of the project.
Compared with traditional project management a project manager will not keep an eye on the team members at all time and give them tasks. The project manager will try to embrace self-organized team which picks their own tasks. The project manager will also track progress and often report this to the management in the company their working in.
An agile project manager’s main role is to be a mentor or guide for the team and that means the first and some of the main responsibility of a project manager is to ensure good collaborations in the environment and communication flows fluid through the team. The project manager should be attend on daily scrum to be available for guidance if needed, but should let the team be self-organized and make their own decisions.
The project manager should be able to help the customer to prioritize the tasks in some situations, but the customer will mainly give the tasks and prioritize them. The project manager should also be a firewall for the team to ensure that none other than the customer gives them a task. The key points of APM framework for adaptive leadership will help an agile project manager to be adaptive, guiding the team and establish some simple rules, which encourage the teams rapidly collaboration, adaption and feedback to the management and within the teams.
Other tasks project managers have are to keep track on the project and help the customer to get integrated with the team. The project managers should make sure the key points of agile are kept in the team and be open for changes.
The main role to remember is that the project manager needs to be more like a mentor or guide rather than a dictator.
- Coram, M. and Bohner, S. 2005. “The Impact of Agile Methods on Software Project Management”, IEE Computer Society. Accessed 13.10.2012, available from http://svn.jansson.be/school/D4/EDA375-MOS/papers/01409937.pdf
- Augustine, S., Payne, B., Sencindiver, F. and Woodcock, S. 2005. “Agile project management: steering from the edges”, Communication of the ACM. Accessed 13.10.2012, available from http://www.cs.nott.ac.uk/~jds/teaching/archive/AgileProjectManagement.pdf
- Cockburn, A. and Highsmith, J., Nov. 2001. “Agile Software Development: The People Factor”, Computer Volume 34, Issue 11, pp 131-133. Accessed 13.10.2012, available from http://www.uml.org.cn/softwareprocess/pdf/IEEEArticle2Final2.pdf
- Larman, C. 2004. “Agile & iterative development – A manager’s guide”, Chap. 7, pp 109-136.