Engineering And Production Stages

The economic foundations presented in previous chapters provide a simple framework for deriving a life-cycle description. To achieve economies of scale and higher returns on investment, we must move toward a software manufacturing process driven by technological improvements in process automation and component-based development. At first order are the following two stages of the life cycle:

1. The engineering stage, driven by less predictable but smaller teams doing design and synthesis activities

2. The production stage, driven by more predictable but larger teams doing construction, test, and deployment activities

Table 5-1 summarizes the differences in emphasis between these two stages.

Table 5-1. The two stages of the life cycle: engineering and production

life-cycle aspect

engineering stage emphasis

production stage emphasis

Risk reduction

Schedule, technical feasibility

Cost

Products

Architecture baseline

Product release baselines

Activities

Analysis, design, planning

Implementation, testing

Assessment

Demonstration, inspection, analysis

Testing

Economics

Resolving diseconomies of scale

Exploiting economies of scale

Management

Planning

Operations

The transition between engineering and production is a crucial event for the various stakeholders. The production plan has been agreed upon, and there is a good enough understanding of the problem and the solution that all stakeholders can make a firm commitment to go ahead with production. Depending on the specifics of a project—and particularly the key discriminants described later in this chapter—the time and resources dedicated to these two stages can be highly variable.

Attributing only two stages to a life cycle is a little too coarse, too simplistic, for most applications. Consequently, the engineering stage is decomposed into two distinct phases, inception and elaboration, and the production stage into construction and transition. These four phases of the life-cycle process are loosely mapped to the conceptual framework of the spiral model [Boehm, 1988], as shown in Figure 5-1, and are named to depict the state of the project. In the figure, the size of the spiral corresponds to the inertia of the project with respect to the breadth and depth of the artifacts that have been developed. This inertia manifests itself in maintaining artifact consistency, regression testing, documentation, quality analyses, and configuration control. Increased inertia may have little, or at least very straightforward, impact on changing any given discrete component or activity. However, the reaction time for accommodating major architectural changes, major requirements changes, major planning shifts, or major organizational perturbations clearly increases in subsequent phases.

In most conventional life cycles, the phases are named after the primary activity within each phase: requirements analysis, design, coding, unit test, integration test, and system test. Conventional software development efforts emphasized a mostly sequential process, in which one activity was required to be complete before the next was begun.

Engineering Stage

Production Stage

Inception

Elaboration

Construction

Transition

With an iterative process, each phase includes all the activities, in varying proportions. The activity levels during the four phases are discussed in Chapter 8. The primary objectives, essential activities, and general evaluation criteria for each phase are discussed here.

Project Management Made Easy

Project Management Made Easy

What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.

Get My Free Ebook


Post a comment