Engineering (CMMI-DEV)
Summary
The Engineering (CMMI-DEV) process areas cover the development and maintenance activities that are shared across engineering disciplines. The Engineering process areas were written using general engineering terminology so that any technical discipline involved in the product development process (e.g., software engineering, mechanical engineering) can use them for process improvement.
Description
The Engineering (CMMI-DEV) process areas also integrate the processes associated with different engineering disciplines into a single product development process, supporting a product oriented process improvement strategy. Such a strategy targets essential business objectives rather than specific technical disciplines. This approach to processes effectively avoids the tendency toward an organizational “stovepipe” mentality. The Engineering process areas apply to the development of any product or service in the development domain (e.g., software products, hardware products, services, processes). The five Engineering process areas in CMMI-DEV are as follows:
- Product Integration (PI) (CMMI-DEV)
- Requirements Development (RD) (CMMI-DEV)
- Technical Solution (TS) (CMMI-DEV)
- Validation (VAL) (CMMI-DEV)
- Verification (VER) (CMMI-DEV)
Figure 4.5 provides a bird’s-eye view of the interactions among the six Engineering process areas.
Figure 4.5: Engineering Process Areas
The Requirements Development process area identifies customer needs and translates these needs into product requirements. The set of product requirements is analyzed to produce a high-level conceptual solution. This set of requirements is then allocated to establish an initial set of product component requirements.
Other requirements that help define the product are derived and allocated to product components. This set of product and product component requirements clearly describes the product’s performance, quality attributes, design features, verification requirements, etc., in terms the developer understands and uses.
The Requirements Development process area supplies requirements to the Technical Solution process area, where the requirements are converted into the product architecture, product component designs, and product components (e.g., by coding, fabrication). Requirements are also supplied to the Product Integration process area, where product components are combined and interfaces are verified to ensure that they meet the interface requirements supplied by Requirements Development.
The Technical Solution process area develops technical data packages for product components to be used by the Product Integration or Supplier Agreement Management process area. Alternative solutions are examined to select the optimum design based on established criteria. These criteria can be significantly different across products, depending on product type, operational environment, performance requirements, support requirements, and cost or delivery schedules. The task of selecting the final solution makes use of the specific practices in the Decision Analysis and Resolution process area.
The Technical Solution process area relies on the specific practices in the Verification process area to perform design verification and peer reviews during design and prior to final build.
The Verification process area ensures that selected work products meet the specified requirements. The Verification process area selects work products and verification methods that will be used to verify work products against specified requirements. Verification is generally an incremental process, starting with product component verification and usually concluding with verification of fully assembled products.
Verification also addresses peer reviews. Peer reviews are a proven method for removing defects early and provide valuable insight into the work products and product components being developed and maintained.
The Validation process area incrementally validates products against the customer’s needs. Validation can be performed in the operational environment or in a simulated operational environment. Coordination with the customer on validation requirements is an important element of this process area.
The scope of the Validation process area includes validation of products, product components, selected intermediate work products, and processes. These validated elements can often require reverification and revalidation. Issues discovered during validation are usually resolved in the Requirements Development or Technical Solution process area.
The Product Integration process area contains the specific practices associated with generating an integration strategy, integrating product components, and delivering the product to the customer.
Product Integration uses the specific practices of both Verification and Validation in implementing the product integration process. Verification practices verify the interfaces and interface requirements of product components prior to product integration. Interface verification is an essential event in the integration process. During product integration in the operational environment, the specific practices of the Validation process area are used.
Recursion and Iteration of Engineering Processes
Most process standards agree that there are two ways that processes can be applied. These two ways are called recursion and iteration.
Recursion occurs when a process is applied to successive levels of system elements within a system structure. The outcomes of one application are used as inputs to the next level in the system structure. For example, the verification process is designed to apply to the entire assembled product, the major product components, and even components of components. How far into the product you apply the verification process depends entirely on the size and complexity of the end product.
Iteration occurs when processes are repeated at the same system level. New information is created by the implementation of one process that feeds that information back into a related process. This new information typically raises questions that must be resolved before completing the processes.
For example, iteration will most likely occur between requirements development and technical solution. Reapplication of the processes can resolve the questions that are raised. Iteration can ensure quality prior to applying the next process.
Engineering processes (e.g., requirements development, verification) are implemented repeatedly on a product to ensure that these engineering processes have been adequately addressed before delivery to the customer. Further, engineering processes are applied to components of the product.
For example, some questions that are raised by processes associated with the Verification and Validation process areas can be resolved by processes associated with the Requirements Development or Product Integration process area. Recursion and iteration of these processes enable the project to ensure quality in all components of the product before it is delivered to the customer.
The project management process areas can likewise be recursive because sometimes projects are nested within projects.
Contains
- Requirements Development (RD) (CMMI-DEV)
- The purpose of Requirements Development (RD) (CMMI-DEV) is to elicit, analyze, and establish customer, product, and prod…
- Technical Solution (TS) (CMMI-DEV)
- The purpose of Technical Solution (TS) (CMMI-DEV) is to select, design, and implement solutions to requirements. Solutio…
- Product Integration (PI) (CMMI-DEV)
- The purpose of Product Integration (PI) (CMMI-DEV) is to assemble the product from the product components, ensure that t…
- Verification (VER) (CMMI-DEV)
- The purpose of Verification (VER) (CMMI-DEV) is to ensure that selected work products meet their specified requirements.
- Validation (VAL) (CMMI-DEV)
- The purpose of Validation (VAL) (CMMI-DEV) is to demonstrate that a product or product component fulfills its intended u…