📝§ Software Design
Software Design is a larger activity that includes both high-level § Software Architecture and low-level component design.
Conway’s law—architecture reflects communication structure of organization
Software development principles
DRY: Don’t repeat yourself
Separate storage and query layers (data store design)
Resources
Backlinks
- 📝 Domain-driven design
- 📝 Uniform access principle
- 📝 Design issue vs tool issue
- 📝 § Complexity
- 📝 Intuitive solutions have to be rationalized
- 📝 Involve the team into design
- 📝 By documenting a design, the designer exposes himself to the criticism
- 📝 How to apply architectural knowledge to programming language design?
- 📝 Architecture is a special case of Software Design
- 📝 Deep/shallow modules
- 📝 § Software Architecture
- 📝 Design Stamina Hypothesis
- 📝 API/SLOC
- 📝 Functional requirements do not drive architecture
- 📝 § Software Development
- 📝 Design Patterns
- 📝 § Programming