Architectural Design Process
- Phase 0: Specify Properties
- Construct a context diagram
- Indicate external actors but only one activity, the system itself
- Indicate external stimuli (events) that can effect the system
- Indicate how the system communicates its results back to the external actors (percepts)
- Specify, in English, the behaviors you want the system to have
- Phase 1: Componentize
- Decompose the system into components
- Allocate responsibilities to them
- Handling of eventsx
- Delivery of percepts
- Provision of the property guarantees
- Phase 2: Determine Architectural Style
- Determine how the components will interact
- For layered architecture
- Assign the components to layers
- Determine the dependencies between the layers
- Update the guarantees
- Select an invariant maintenance strategy
- Assign responsibilty for invariant maintenance