Solution space of the modeling phase
Logical implementation of the construction phase
It keeps evolving - self loop
Structure
Following standpoints are involved:
Inputs
- SRS
- Domain Knowledge
- Analysis Models
- Design Concepts & Principles
- Styles & Patterns
- Prior experience and creativity
Outputs
- Software Architecture
- Interface Design
- Component Level Design (Low Level)
- Deployment Design, Class Design and so on …
Design Concepts
- Abstraction
- Selective Examination
- Refinement
- Information Hiding (not really encapsulation)
- Refactoring
- improve operation without altering functionality
- Modularity
- Functional Independence
- Cohesion
- Single Mindedness
- Coupling
- Connectedness
- Cohesion