It is hard to be Agile in non-tech companies. Some departments say they are Agile, they may even get some business managers to sign on, but things remain the same: same waterfall development processes, same whats-the-latest-status oversight, same how-long-will-this-take deadline planning.
-Michael Scott, Oscar Martinez The Office
Just like Oscar tells Michael, you can’t just say you are Agile and expect anything to happen. Adopting Agile methodology is a process, and the steps taken to move to it tend to involve individuals rather than whole groups. Here are some of the steps along the way.
- Get involved early
- Present iterations as review points
- More flexible scrums
- Follow up
- Repeat with each project owner
Get involved early
It’s too late to get a manager to adopt an Agile method if they are already coming to you with complete specs for a project. At that point they have made all the decisions in their own mind, they have everything just the way they think they want it, and the only question they have is the one you dread the most “How long will this take?”
Avoiding this takes a project manager who is proactive in meeting with business managers and finding out what they are thinking about and planning. Once the ideas are out there, a agile project manager can start talking about wireframes and prototypes that engineers and developers can actually use as building blocks for future development.
Present iterations as review points
Managers may not understand iterations at first, but they do understand project reviews. Often, that is something they are looking for: a way to get status updates on what is going on. Iterations fit into this role nicely. An iteration is supposed to be a releasable state for each project, but by changing that one word, releasable, to reviewable, suddenly it becomes easy to break a huge vision into its first iteration.
It’s not all smooth sailing after that, though. The temptation for a business manager will be to continue on from there, and plan out the rest of the vision just like the first iteration. It may take some convincing to let you “get it to this point and see where to go from there.”
More flexible scrums
Scrums have to happen every day at the same place at the same time. Except when they don’t. The project owner can’t be there every day? Type the quick updates on a project in an email as the developer is giving them and send them off – or – have your project management software do it for you. Is there a day they can make it but at a different time? Change the time. It’s better to have them there.
Once the iteration is done the challenge is to get someone using (reviewing) it and get the next iteration planned and scheduled. Don’t let a project stay “incomplete” but get your usage feedback and get it moving to the next iteration as quickly as possible.
Repeat with each project owner
Every person is different, and it will be a different process with each possible project owner at your company. Some will get it easily, some will take time before they see Agile as a good way to get things done, and done successfully, faster than they could do it before.
It’s a process to be agile; it takes guidance and training and work. But in the end it’s worth it.