Guest post by Denis Geoghegan
As a program manager the second most common question I?m asked is ?what is the difference between a project manager and a program manager??. The first most popular question I?m asked is ?what is a program manager anyway??.
Deliverables Versus Benefits
The classic explanation of the difference between project managers and program managers is that project managers are concerned with deliverables, whereas program managers are concerned with benefits. This definition is correct, but I find it easier to describe the difference by way of an example.
The example we?re going to consider is that of making a satellite navigation device and bringing it to market. In order to do this there are many things we would need to do, including:
- Designing the form factor of the device
- Writing the software for the device
- Sourcing the materials or components that will be used to make the device
- Tooling up a factory to manufacture the device
- Marketing the device
- Selling the device into distribution channels
- Designing and making the cardboard box the device will be sold in
To manage all of the different specialists needed to bring this product successfully to market would be impossible, there are just too many people involved, even if you outsourced much of the work to third parties. This is where the program manager comes in.
Leading a Program
If we were to run the effort to successfully launch our satellite navigation device as a program, we might create seven projects, one for each of the bullet points listed above. So we would have a software project, we would have a project to source the components to construct the device, and we would have five further projects.
Assuming we did this each project would have it?s own project manager, and the program manager would lead all seven projects and therefore the overall program. The program managers? aim being to coordinate between all projects to ensure that what is delivered provides more benefit to the business than if we just set all these different projects off and running in isolation.
One of the most important things a program manager will do in this coordination role is to manage the dependencies between projects. In our example they would need to ensure that the components have been sourced before the hardware design can be finalized. They would also ensure that software requirement changes would not detract from the proposition the marketing project will be promoting to customers. They are responsible for managing all dependencies between teams.
Despite the program manager coordinating the dependencies they are not responsible for planning the projects, this is the individual project managers role. They may however issue top-down guidance on plans which the project managers will try to meet. Ultimately, it should be a combination of top-down and bottom-up planning which results in the overall program plan.
Another important responsibility for program managers is that of benefits management. Program managers aren?t so much concerned with the deliverables that the individual projects produce, but more with the overall benefit derived for the organization. In our example we can think of benefit as being profit, but in fact benefit can be measured in all kinds of ways. Because program managers are concerned mostly with benefits, this will sometimes lead them to recommend broad decisions, such as killing off entire feature sets to get the product to market quickly, or sequencing the building of a product in a way which may not seem intuitive to an engineer.