Imagine you are transitioning to agile. You are a program manager with a couple of agile projects and a couple of traditional projects. Sally is an agile program manager working by feature sets. Henry’s team is still working on a feature set, but Henry doesn’t know anything about agile, so the team is working on a feature set as if it's a waterfall team.
If you are the software program manager, how do you manage the program? If you work in iterations, what happens at the end of every two weeks? Henry has nothing useful to say and is bored. He can’t tell you anything about risks. He wants specs. Sally’s program wants to know when Henry’s team is going to be ready to integrate, and of course there is risk with the other feature teams. You know that if this continues, you will be in trouble. What do you do?
When you have programs with traditional projects, you have to help the traditional project managers break the projects into chunks with interim deliveries. Yes, that turns those projects into staged delivery lifecycle projects. Yes, that’s cheating because they are no longer strict waterfall projects. That’s OK. No one gets credit for strict adherence to lifecycle. People get credit for successful projects and programs.
The issue with program managers and transitioning to agile is that you might have to coach the project managers into working in new and different ways. As the program manager, you have to understand all about project management. I suppose you could get a coach in to help the project managers. I have been more effective explaining directly to the project managers the results I wanted and when they needed to deliver them.
This is not about forcing the Henry in your program to transition to agile. This is moving Henry gently from strict waterfall to waterfall with deliverable-based planning and interim deliveries, which smells a lot like staged delivery.
Do you have any more suggestions for managing a program that's transitioning to agile?