| Basic Definitions | |
|---|---|
| Software Engineering | The disciplined application of engineering, scientific, and mathematical principles, methods, and tools to the economical production of quality software. |
| Software Engineering Process | The total set of software engineering activities needed to transform the user's requirements into software. |
| Software Process Architecture | A framework within which project-specific software processes are defined. |
| Software Process Model | One specific embodiment of a software process. |
| Software Process | The set of activities, methods, and practicies that are used in the production and evolution of software. |
| Model Type | Characteristics |
|---|---|
| Universal | Describes the basic process steps and provides gneral guidance on their role and order (e.g., Waterfall and Spiral Model). Permit global understanding and provide a framework for establishing policies. |
| Atomic | Precise data definitions, algorithmic specifications, information flows and user procedures. Atomic process definitions are often embodied in process standards and conventions. Provide atomic detail for training and task mechanization. |
| Worldly | Guides the sequence of tasks, defines task prerequisites
and results, specify who does what when, models anticipated results, measure and key checkpoints. Guide daily work. |
The three levels must be present in the process framework giving policies, procedures and standards (corresponding to the three levels). The architectural framework provides a definition for the basic elements, how they relate and how they are decomposed into greater detail.
The basic element of the process model is the Unit Cell. A unit cell is defined to accomplish a specific task and is uniquely identified. Each cell has required entry conditions with inputs, task standards, procedures, methods, responsibilities, and measures. Exit conditions define the results produced, their level of validation, and any post-task conditions. Feedback is allowed to and from other unit cells.
Table 1: Basic Unit Cell Specification | |
|---|---|
| |
| Specification | |
| Entry | Conditions to be met before task initiation |
| Exit | Results produced |
| Feedback | IN: Feedback from other cells OUT: Feedback to other cells |
| Task | What is to be done (who, what, when)? Standards, procedures, and responsibilities. |
| Measurements | Task, output, and feedback measures |
The Table 2 provides an example that should highlight the modeling activity. In particular, Table 2 offers a model for what we normally refer to as the development cycle for small projects.