How Can Management Contribute to an Agile Project?
Mark Balabanian, new appointed COO of Accunote, asks the question how can a manager help a Scrum team. From his previous encounters with Scrum teams he thought that Scrum was just a tool to shield developers from management, forcing management to interact with developers on their terms. Now he’s read “Agile Software Development with Scrum” by Ken Schwaber and Mike Beedle to improve his understanding of Scrum. However, the book doesn’t cover in great detail the role of management and so Mark wondered what he should be doing.
Cory Foy suggests that there are two key things that management can provide: Vision and Organizational Support (i.e. impediment removal). For the first he suggests taking a leaf from Toyota with the Chief Engineer (described in detail in: The Toyota Product Development System). In Cory’s mind, the Chief Engineer should have “vision and strategy, with enough knowledge to be able to translate that into day-to-day concepts”. Someone capable of driving a common goal and vision across all products and projects. One model he has seen to do this, the Process/Purpose Model:
The concept being that each feature is ranked on market differentiation and mission-criticality. The key being that very few things should end up in the upper-right quadrant - basically the things you'd put on a billboard. And from an executive standpoint, someone needs to ensure that the organization is working on the right things and delivering the right value at the right time.
Peter Stevens summarizes Cory’s vision with three main points for management and then adds one of his own:
- Provide Vision, Focus, & Flow for the entire company or division
- Create Productive Environment and Remove Impediments
- Create a Culture of Excellence – extended to include: Honesty, Openness, Courage, Trust and Fiscal Responsibility.
- Self Awareness (I guess this is related to honesty).
Some top managers are respected elders with deep experience and understanding in their fields. I think this is what Toyota had in mind with their vision of a Chief Engineer. Others are PHB's straight out of Dilbert who move around/up quickly and can easily cause more disturbance than useful intervention.
John Galvin makes several suggestions:
- Agile isn’t just a development issue, that it applies to the entire organization. If the development team becomes Agile, but Product Management doesn’t then they will hinder the development team.
- Agile requires a large cultural change across the organization both in terms of openness and honesty. Don’t underestimate the amount of work involved.
- Every department will be affected HR will need new ways to handle performance reviews, career paths etc.
Finally, in their article, “The Manager's Role in Agile”, Lyssa Adkins and Michael have a health check for Agile Managers:
- Are you catalyzing organization change to support agile values, starting with marshalling a culture of value delivery?
- Do you provide significant organizational roadblock removal for agile teams? Do they perceive you as a coach and leader more than as a manager?
- Are you able to effectively distribute resources across teams to maximize team value delivery, rather than striving for resource utilization per se?
- Is your performance management system helping guide teams to their highest performance, while fairly evaluating both individual and team contributions?
- Do you use metrics to help teams improve their performance and to help senior leaders make decisions that improve value delivery?
- Does your organization make frequent project portfolio decisions based on value rather than conformance to schedule and budget?
- Are you helping your internal partners create lean processes to synchronize with agile teams, rather than tolerating their velocity drag?
- How are suppliers encouraged to work in an agile way? Does your outsourcing help or hinder your agile teams?
What would you suggest to Mark?
Previously on InfoQ: What is the Role of a Manager in an Agile Organization, Mary Poppendieck on The Role of Leadership in Software Development, Managers in Scrum and Collaborative Leadership and Collaborative Management
Management help is critical
In large organizations where there is a need to coordinate across multiple teams and work with dependent workstreams this is extremely crucial. Managers can also help align the team's deliverables with IT processes that are established within a company(e.g. release management, incident management). The manager's role is critical whether procuring infrastructure or resolving interpersonal conflicts across organization boundaries.