You’ve likely read the twelve agile principles at agilemanifesto.org. There is a lot of food for thought in those words. One of the the principles is particularly difficult for traditional managers to follow:
“Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.”
It’s the “…trust them to get the job done” part that can be scary. Traditional command and control managers have a hard time letting go. I’m not just talking about micro-managers — no one likes them. Your typical corporate manager wants to know what will be done, who will do it, how it will get done, when it will be completed.
Agile teams don’t generally have all those answers up front. They know who and how. They have estimates for what and when.
Estimates? Managers can’t manage estimates. There needs to be commitment and accountability!
That explains why so many waterfall projects fail to meet expectations, doesn’t it? If software engineers knew all of the answers up front, they could make more money in Las Vegas!
Making agile teams successful requires trust — trust and verify. It’s not just about retraining the project team in agile practices, it’s also about adapting management behavior to empower the team.
Managers must set reasonable short term goals and checkpoints (you could call them iterations or sprints!). Then give the team breathing room to determine how to meet the goals.
Hold the team accountable for meeting short-term goals. Recognize that long-term goals must be expressed in ranges as the underlying assumptions often change.
If you are a manager, don’t adopt agile for your team and expect that you can continue to manage as usual. It won’t work.