Product or product component solutions are selected from alternative solutions.


Alternative solutions and their relative merits are considered in advance of selecting a solution. Key requirements, design issues, and constraints are established for use in alternative solution analysis. Architectural choices and patterns that support achievement of quality attribute requirements are considered. Also, the use of commercial off-the-shelf (COTS) product components are considered relative to cost, schedule, performance, and risk. COTS alternatives can be used with or without modification. Sometimes such items can require modifications to aspects such as interfaces or a customization of some of the features to correct a mismatch with functional or quality attribute requirements, or with architectural designs.

One indicator of a good design process is that the design was chosen after comparing and evaluating it against alternative solutions. Decisions about architecture, custom development versus off the shelf, and product component modularization are typical of the design choices that are addressed. Some of these decisions can require the use of a formal evaluation process.

Refer to the Decision Analysis and Resolution (DAR) (CMMI-DEV) process area for more information about analyzing possible decisions using a formal evaluation process that evaluates identified alternatives against established criteria.

Sometimes the search for solutions examines alternative instances of the same requirements with no allocations needed for lower level product components. Such is the case at the bottom of the product architecture. There are also cases where one or more of the solutions are fixed (e.g., a specific solution is directed or available product components, such as COTS, are investigated for use).

In the general case, solutions are defined as a set. That is, when defining the next layer of product components, the solution for each of the product components in the set is established. The alternative solutions are not only different ways of addressing the same requirements, but they also reflect a different allocation of requirements among the product components comprising the solution set. The objective is to optimize the set as a whole and not the individual pieces. There will be significant interaction with processes associated with the Requirements Development process area to support the provisional allocations to product components until a solution set is selected and final allocations are established.

Product related lifecycle processes are among the product component solutions that are selected from alternative solutions. Examples of these product related lifecycle processes are the manufacturing, delivery, and support processes.


TS.SP 1.1 Develop Alternative Solutions and Selection Criteria
Develop alternative solutions and selection criteria.
TS.SP 1.2 Select Product Component Solutions
Select the product component solutions based on selection criteria.