InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

How Can Management Contribute to an Agile Project?

Posted by Mark Levison on Aug 14, 2009

Sections
Process & Practices
Topics
Agile

Manager with TieMark 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

  • This article is part of a featured topic series on Agile
Management help is critical by Vijay Narayanan Posted
Role of Managers by Bob MacNeal Posted
  1. Back to top

    Management help is critical

    by Vijay Narayanan

    I think management definitely can help with the question "Do you provide significant organizational roadblock removal for agile teams? Do they perceive you as a coach and leader more than as a manager?"

    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.
    www.artofsoftwarereuse.com/

  2. Back to top

    Role of Managers

    by Bob MacNeal

    I like Esther Derby's point of view...
    "Primary work of managers: establish conditions for teams to work in. develop people. work on the work system."

Educational Content

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.