| 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, spcirfy 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.
[Process Modeling Menu]
[AINSI]
[Elicit]
Humphrey, W. (1989) Managing the Software Process. Reading, MA: Addison-Wesley. p. 247-286.
Remarks on AINSI - An Inductive Software Process Improvement Method: Concrete Steps and Guidelines. (postscript)
The conceptual framework of Armitage and Kellner consists of three entity classes (agent, activity, artifact), and two aspects (relationships between and among entities, and behavior of enitities their relationships).
[Process Modeling Menu]The Elicit approach to process model elicitation is characterised by three dimensions: View (see Eliciting Formal Models of Software Engineering Processes, Method (see Elicit: A Method for Eliciting Process Models), and Tool.
The View dimension represents the different views from which one can visualise a process. In our projects, we generally use five perspectives:
Another dimension to view is property. The property dimension attempts to capture attributes that describe the process. Elicit support three types of properties: descriptive, static, and dynamic.
[Process Modeling Menu]
To CIS Department at UMass Dartmouth
To UMass Dartmouth
Comments should be sent to
Richard Upchurch (rupchurch@umassd.edu)
This document
Created: March 8, 1996
by RLU
Modified: August 6, 1996