Program
- Program
(a.k.a., Programme, Portfolio)
- a mid-sized endeavor
consisting of two or more related
projects
that are managed as a unit in order to obtain benefits not available
from managing them individually
As illustrated in the preceding figure, Program is part of the following inheritance hierarchy:
- Type: Abstract
- Superclass: Endeavor
- Subclasses:
- Product Line Project
A program of projects, each one producing an individual application in a product line of applications.
- Related Project
Concurrent development of two or more related
applications (e.g., the development of a Web-based and
wireless order taking system).
- Sequential Project
Sequential projects to create and maintain a single application:
- An initial
initiation phase project to determine the size,
complexity, cost, schedule, and viability of an application.
- A following
construction and
delivery phase
project to produce and deliver the completed application.
- Variant Project
Concurrent development of a:
- Quick and dirty version of an application to achieve initial market visibility and market share.
- Well-engineered replacement version of the same
application to meet business and quality requirements.
The typical responsibilities of a Program are to:
- Elimininate unnecessary redundancies (e.g., duplicate
effort and costs) between related projects.
- Ensure standardization (e.g., development process,
technology, platforms, and legacy integration) across related projects.
- Improve reuse (e.g., of work products, developer training) across related projects.
- Improve effort, schedule, and cost estimation across related projects.
- Minimize development and maintainance costs across
multiple related applications produced by multiple related projects.
- The identification of programs of related projects typically occurs during the
business strategy phase.
- A program is also spelled “programme” to
differentiate it from a computer program.