Skip to content

Other Process Models

  • Component based development (CBD): the process to apply when reuse is a development objective.
  • Formal methods: emphasizes the mathematical specification of requirements
  • Aspect-oriented Software Design (AOSD): provides a process and methodological approach for defining, specifying, designing, and constructing aspects

The Spiral Model

Risk-driven and iterative. Each loop covers four activities, and the spiral grows outward as more is committed.

graph LR
    O[1. Determine objectives and constraints] --> R[2. Identify and resolve risks]
    R --> D[3. Develop and verify this loop's deliverable]
    D --> P[4. Plan the next loop]
    P --> O

The distinctive step is 2. Each loop attacks the highest remaining risk first, so an unbuildable idea fails early and cheaply rather than at acceptance testing.

Prototyping

graph LR
    RQ[Rough requirements] --> PR[Build a prototype]
    PR --> EV[User evaluates it]
    EV -->|refine| PR
    EV -->|understood| BUILD[Build the real system]

The risk is obvious and common: a prototype gets shipped as a product, and its throwaway internals become the production codebase.