17
Distributed Project Management in Agile

THERE’S A COMMON MISCONCEPTION THAT PROJECT MANAGEMENT IS NOT CONSISTENT WITH AGILE. A contributing factor to that misconception is that there is normally no one called a “Project Manager” at the team level in an Agile project and the conventional view of project management requires a designated Project Manager. There is actually a lot of project management going on in an Agile project, even though you may not find anyone with the title of “Project Manager.”

  • It’s a different kind of project management with an emphasis on maximizing business value rather than the classical plan‐driven project management emphasis of providing predictability on costs and schedules for delivering well‐defined requirements.
  • The functions that might normally be performed by a single person called a “Project Manager” have been distributed among the different members of the Agile team.

WHAT IS DISTRIBUTED PROJECT MANAGEMENT ?

In an Agile environment, there may be no single person called a “Project Manager” and there is a good reason for that:

  • In a classical plan‐driven project, there is an emphasis on planning and control. There is also typically somewhat of a contractual relationship with the client to deliver a solution within an approved cost and schedule. In that kind of environment, it is advantageous to have a single point of responsibility for overall planning, control, and communications associated with the project.
  • An Agile project has much more of an emphasis on creativity and innovation to maximize the value of the solution. In that kind of environment, empowerment of the project team is essential and allowing enough flexibility and adaptivity to optimize the value of the solution is a very important goal. Too much emphasis on planning and control can stifle the creativity and innovation that are needed.

Those are some key reasons why a different approach to project management is needed in an Agile environment.

Primary Project Management Emphasis

Table 17.1 compares the emphasis shown between classical plan‐driven project management and Agile project management.

TABLE 17.1 Comparison of primary project emphasis

Classical plan‐driven project managementAgile project management
Planning and control to achieve cost and schedule goalsMaximize the overall value of the project
Why is it different?
  • The primary problem with the classical plan‐driven approach is that it doesn’t work well in an uncertain environment where it is difficult, if not impossible, to predict the requirements in detail prior to the start of the project.
  • Too much emphasis on planning and control can stifle the creativity and innovation that are needed to maximize the value of the solution.

Client Relationship

Table 17.2 compares the client relationship between a classical plan‐driven project management and an Agile project management.

TABLE 17.2 Comparison of client relationship

Classical plan‐driven project managementAgile project management
Contractual relationshipCollaborative, partnership relationship
Why is it different?
  • The contractual relationship in a plan‐driven environment is important to control and manage any changes in scope where predictability over costs and schedules is important.
  • A more collaborative relationship is essential in an Agile environment to work jointly to maximize the value of the project in an uncertain and dynamic environment.

I also want to emphasize that this is not a binary choice between a contractual relationship and a collaborative relationship, and it is very possible for a hybrid approach to have some contractual commitments but also be collaborative at the same time.

Communications

Table 17.3 compares the type of communications between a classical plan‐driven project management and an Agile project management.

TABLE 17.3 Comparison of communications

Classical plan‐driven project managementAgile project management
All communications are controlled through the Project ManagerOpen and transparent communications directly between the project team and the customer
Why is it different?

In an Agile environment:

  • There is less of a need to control changes to requirements and project scope, and flexibility and adaptivity are needed to meet uncertain customer needs.
  • Developers are expected to talk directly to users to better understand requirements as the project is in progress.
  • The project team is expected to share project status information openly with the client so that the client is actively involved in the management of the project.

Overall Responsibility

Table 17.4 compares overall responsibility between a classical plan‐driven project management and an Agile project management.

TABLE 17.4 Comparison of overall responsibility

Classical plan‐driven project managementAgile project management
Project Manager is responsible for the projectThe entire team is responsible for the success of the project; however, the Product Owner has ultimate responsibility for the overall success of the project
Responsibilities for tasks are assigned and clearly definedThe project team is intended to be self‐organizing and responsible for planning and managing their own tasks
Why is it different?

In an Agile environment:

  • Flexibility and adaptivity require more decentralized and distributed management where everyone on the team takes some level of responsibility for their own work and for the work of the team as a whole.
  • An empowered team where everyone on the team feels some responsibility for the success of the project builds morale and is typically more effective and produces better results.

DISTRIBUTED PROJECT MANAGEMENT ROLES

In an Agile environment at the team level, instead of having a single person who is responsible for project management called a Project Manager, the functions that might be performed by a Project Manager have been distributed among other members of the team: the Developer, the Business Analyst, the Project Owner, and the Scrum Master.

Developer Project Management Responsibilities

Primary Responsibilities

The following are some of the tasks that a Developer would normally be expected to perform in an Agile environment that might normally be performed by a Project Manager in a classical plan‐driven project management environment.

  1. Developers are expected to take responsibility for planning and managing individual developer tasks which would include:
    • estimate the amount of work to be done
    • plan and manage the completion of the work
    • take responsibility for the quality of the software developed
    • take overall responsibility for “shepherding” the story through the process all the way to (and including) UAT. The Developer responsible for the story should lead the presentation of the completed story to the Product Owner in UAT (or Sprint Review).
    • track and report progress at Daily Scrums and other forums.
  2. Beyond these individual responsibilities, all Developers are expected to share responsibility for the overall team results which would include:
    • working effectively as a team member to build a high performance, cohesive team
    • integrating related efforts within the team to build an overall solution.

Other Responsibilities

In an Agile environment, a Developer needs to also assume some other responsibilities that might normally be performed by either a Project Manager or a Business Analyst.

  1. Requirements Definition
    • Working directly with the Product Owner to clarify and further define the details of how stories should be implemented.
    • Understanding the business purpose of the story and defining and analyzing possible alternative ways of satisfying it.
    • Providing support to the Product Owner and business users in helping to write and refine user stories and to groom the product backlog.
  2. Process Knowledge and Process Improvement
    • Understanding and effectively participating in all Agile/Scrum processes including Sprint Planning, Daily Standups, Sprint Reviews, and Sprint Retrospectives.
    • Taking a leadership role in presenting completed work to the Product Owner and users for approval at the end of each sprint.
    • Contributing to ongoing team process improvement through Sprint Retrospectives.

In the real world, it is very difficult for some Developers to fully assume all these responsibilities and some compromises may be needed from this ideal model. In these cases, there may be good reason for the Project Manager or a Business Analyst to provide help to the Developer. However, as much as possible, that assistance should be provided in a way that is consistent with Agile. Here are a couple of guidelines for that:

  • If a Project Manager is involved at the team level, he/she should be in more of an advisory and support role rather than a management control mode.
  • If a Business Analyst is involved at the team level, he/she should not be just an intermediary between the development team and the business users.

Product Owner Project Management Responsibilities

In an Agile environment, the Product Owner takes on many of the roles that might normally be performed by a Project Manager in a classical plan‐driven environment. The following is a comparison of the responsibilities of a Product Owner and a Project Manager:

The role of the Product Owner in an Agile project comes closest to the role of a Project Manager, but it really is a hybrid of some project management functions and some product management functions. Table 17.5 shows how these two roles are different from an overall responsibility perspective.

Overall Responsibility

Table 17.5 compares the Product Owner’s responsibility role between a classical plan‐driven project management and an Agile project management..

TABLE 17.5 Comparison of Product Owner’s responsibility role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Planning and control to achieve cost and schedule goalsPlanning and management to achieve business success

Setting Goals and Requirements

Table 17.6 shows how these two roles are different from the perspective of setting goals and requirements.

TABLE 17.6 Comparison of Product Owner’s requirements and role in setting goals

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Execute the project with defined goals and requirements determined by the business sponsor and business usersSome decision‐making authority for defining and prioritizing goals and requirements

Financial Management

Table 17.7 shows how these two roles are different from the perspective of financial management to include budgeting, business planning, and cost management.

TABLE 17.7 Comparison of Product Owner’s financial management role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Management of costs within the scope of the projectManagement of overall business profitability

Planning Schedules and Product Roadmap

Table 17.8 shows how these two roles are different from the perspective of planning schedules and completing a product/project roadmap.

TABLE 17.8 Comparison of Product Owner’s planning role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Acts as an intermediary between the project team and the business sponsors to establish a scheduleTake a much more active role in setting the schedule by making decisions and prioritizing what needs to be done

Risk Management

Table 17.9 shows how these two roles are different from the perspective of project risk management.

TABLE 17.9 Comparison of Product Owner’s risk management role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Responsible for monitoring and controlling project risks and some decision‐making responsibility for resolving risks within the project budget and planSimilar responsibility but includes more decision‐making responsibility for resolving risks

Reviewing and Approving Results

Table 17.10 shows how these two roles are different from the perspective of reviewing and approving results including acceptance testing.

TABLE 17.10 Comparison of Product Owner’s approval role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Responsible for testing the product against defined requirements and facilitating final acceptance testingDecision‐maker on reviewing and approving results and final acceptance testing not limited to meeting defined requirements

Track and Manage Progress Against Goals

Table 17.11 shows how these two roles are different from the perspective of tracking and managing progress against goals.

TABLE 17.11 Comparison of Product Owner’s progress management role

Typical Project Manager responsibilityTypical Product Manager (or Product Owner) responsibility
Track and manage progress against goals and report progressSame, plus some decision‐making authority to revise goals and/or reprioritize deliverables as necessary to meet goals

Scrum Master Project Management Responsibilities

The Scrum Master in an Agile environment also takes on some functions that might be performed by a Project Manager in a classical plan‐driven environment. In essence, the Product Owner focuses on the “what” (defining what needs to be done) and the Scrum Master focuses on the “how” (working with the team on how the work gets done).1

Leading and Facilitating the Team

Table 17.12 shows how these two roles are different from the perspective of leading and facilitating the team.

TABLE 17.12 Comparison of Scrum Master’s leading and facilitating role

Typical Project Manager responsibilityTypical Scrum Master responsibility
Assignment, management, and tracking of all tasks and activities assigned to the team“Servant‐leader” role––facilitating the team and coaching the team in the Scrum process
Responsibility for management of all tasks and activities performed by the teamThe team is expected to be self‐organizing, and the Scrum Master plays more of a facilitation role
Responsible for facilitating team meetingsSimilar responsibility

Removal of Obstacles

Table 17.13 shows how these two roles are different from the perspective of removal of obstacles.

TABLE 17.13 Comparison of Scrum Master’s obstacle removal role

Typical Project Manager responsibilityTypical Scrum Master responsibility
Responsible for removing obstacles that might be impeding team progressSimilar responsibility

SUMMARY OF KEY POINTS

What Is Distributed Project Management?

  1. Even though you may not find anyone called a “Project Manager” at the team level in an Agile project, there is a lot of “project management” going on. Many people may not recognize this as “project management” because:
    • It’s a different kind of project management, with an emphasis on maximizing business value rather than a more limited emphasis on planning and control to meet cost and schedule goals.
    • The project management functions have been distributed among the members of the team instead of being done by a single person called a “Project Manager.”
    • A broader view of what “project management” is must be adopted in order to recognize this as “project management.”

The Developer’s Project Management Roles

  1. The role of a Developer in an Agile environment goes well beyond simply writing code:
    • A Developer in an Agile environment is expected to perform some functions that might normally be performed by either a Project Manager or a Business Analyst in a classical plan‐driven environment.
  2. Some of the additional responsibilities normally given to a Developer in an Agile environment include:
    • estimating the amount of work to be done
    • planning and managing the completion of the work
    • taking responsibility for the quality of the software developed
    • taking overall responsibility for “shepherding” the story through the process all the way to (and including) User Acceptance Testing (UAT). The Developer responsible for the story should lead the presentation of the completed story to the Product Owner in UAT (or Sprint Review).
    • tracking and reporting progress at Daily Scrums and other forums.
  3. Other responsibilities include:
    • working effectively as a team member to build a high performance, cohesive team
    • integrating related efforts within the team to build an overall solution.

The Product Owner’s Project Management Role

  1. The role of a Product Owner in an Agile environment is most like the role of a Project Manager, but it includes some additional functions that might be considered more similar to “Product Management.”
  2. Overall responsibility: In the area of overall product/project responsibility, the Product Owner’s responsibilities go beyond the role of a Project Manager. The Product Owner is responsible for the overall business success of the product or project and not for simply meeting cost and schedule goals.
  3. Goals and requirements: In the area of setting goals and requirements, the Product Owner’s responsibilities also go beyond the role of a Project Manager. The Product Owner has some responsibility for defining and prioritizing goals and requirements that a Project Manager does not normally have.
  4. Financial management: In the area of financial management, a Product Owner typically has overall responsibility for business value and profitability where a Project Manager is typically only responsible for managing project costs to meet an approved budget.
  5. Planning schedules and Product Roadmap: In the area of planning schedules, a Product Owner takes an active role in setting the schedule by making decisions and prioritizing what needs to be done, where the authority of a Project Manager for making that kind of decision is typically much more limited.
  6. Risk management: Both a Product Owner and a Project Manager are responsible for risk management; however, a Product Owner typically has more decision‐making authority for resolving risks.
  7. Tracking and managing progress against goals: Both roles are responsible for tracking and managing progress against goals; however, a Product Owner has more authority for revising goals and/or reprioritizing deliverables to meet the goals.
  8. Review and approval of results: The Product Owner has more decision‐making authority on approval of results where the Project Manager is typically limited to testing the results against defined requirements and facilitating final acceptance testing.

The Scrum Master’s Project Management Role

  1. The Scrum Master in an Agile project also has a few functions that would be considered similar to a project management role; however, it would not be accurate to think of the general Scrum Master’s role as a typical Project Manager’s role.
  2. The functions of the Scrum Master’s role that have some similarity to a project management role include:
    • leading and facilitating the team and team meetings
    • removal of obstacles.

DISCUSSION TOPICS

What Is Distributed Project Management?

  1. What are the major factors that call for a different approach to project management in an Agile project? What’s different about a distributed approach to project management and why is it necessary?

The Developer’s Project Management Role

  1. How is the role of a Developer different in an Agile environment?
  2. What additional responsibilities are Developers expected to take on that might normally be done by a Project Manager?
  3. What are some of the pros and cons for giving this additional responsibility to Developers?

The Product Owner’s Project Management Role

  1. Whose role has the greatest level of responsibility: a Product Owner or a Project Manager? Why? How do the roles compare?
  2. Is the Product Owner’s role more like a Product Manager’s role or a Project Manager’s role? Why?
  3. How does the Product Owner’s financial responsibility differ from that of a typical Project Manager?
  4. How does the Product Owner’s responsibility for review and approval of results compare to a typical Project Manager?

The Scrum Master’s Project Management Role

  1. Is the Scrum Master’s role the most similar Agile role to that of a Project Manager? Why or why not?
  2. What functions of a Scrum Master’s role are most similar to a project management role?

NOTE

  1. 1.  Winston Gonzalez, email comments to the author on book review.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.134.103.74