Software design is a multi-disciplinary activity that develops tools through effective communication of ideas and the use of engineering practices. This text provides an overview and perspective of software design within the context of software development and also of more general thinking about design issues. It examines the nature of design activities, as well as their applications within software development, providing the reader with:
- a non-proprietary view of design issues
- an overview of design representation forms
- a concise review of design practices based on the more widely used design methods
- a strong architectural framework
A particular feature is the strong evidence-based approach used in the analysis and assessment of these issues.