A program manager has responsibility for controlling and coordinating a set of projects with mutual dependencies that are occurring in parallel. This can be aligned with McGrath's definition of marketing strategy for platforms. A platform strategy leads to development of a product platform and a set of product developments that depend on the platform. The dependent products are usually developed in parallel. A platform strategy requires program management.
A release manager has responsibility for controlling and coordinating a series of sequential projects that build on one another. This is aligned with McGrath's definition of product line strategy. A product line is a series of releases of a product designed to target different market segments, gradually broadening the market for a product over time. A product line requires release management. In the following discussion, program manager also means release manager.
The primary role of the program manager is to control the release of the inventory into the system of software production. The program manager is at the end of the rope in the Drum-Buffer-Rope system. He must monitor the Throughput on the constraint and the queues that buffer system steps and feed the inventory into the system at a rate that can be consumed by the system whilst maintaining the protective buffers.
The program manager must also coordinate the delivery of working code—the output from the system—with all other activities required to realize the Throughput, for example, manuals, training, marketing material, PR, deployment, and logistics.
The program manager takes overall responsibility for Throughput (T) and Inventory-in-process (V). The effectiveness of the program manager should be measured by the metrics T and V.
|