There are several roles that are pertinent to program management. Remember that these are roles, not positions. Small organizations may have a single person taking on every one of these roles whereas a large organization could have dozens of fine-grained positions. Remember, context counts. We define the following key roles that are specific to Disciplined Agile® (DA™) program management:
- Program Manager/Coordinator. Leads the overall program, coordinating activities within the program to keep it on track. Works closely with the Chief Product Owner (CPO) and Chief Architecture Owner (CAO) to guide the overall work of the sub-teams. Facilitates discussions between the CPO and CAO when there are differences.
- Chief Architecture Owner (CAO). Leads the architecture team within a program and is effectively their Team Lead. Guides the Architecture Owners through negotiating technical dependencies within a program, mentoring people where needed. Works closely with the enterprise architecture team and often is an enterprise architect. May take on the role of Architecture Owner on one or more sub-teams.
- Chief Product Owner (CPO). Leads the Product Owner team within a program and is effectively their Team Lead. Works closely with the Program Manager to allocate work between sub-teams and may be the Program Manager for the offering(s) the program produces. Guides the Product Owners through negotiating functional dependencies, mentoring people where needed. May take on the role of Product Owner on one or more sub-teams.