## Software Design Document (SDD)
%%Aka. Software Design Specification (SDS) / Software Design Description (SDD)%%
While an SRD describes what the software should do and the necessary specifications, an SDD explains exactly how the software will accomplish these requirements. It's a detailed narrative that explains the software architecture, components, interfaces, and data necessary for implementing a system, serving as a blueprint for developers.
1. System Architecture Overview
2. Behavior Diagram ([[Unified Modeling Language (UML)]])
3. Software Architecture described in [[Gherkin Language]]:
- Back-end: Logic, data processing, APIs
- Front-end: User Interface
- Database
4. Structure Diagram ([[Unified Modeling Language (UML)]])
Ultimately, using an SDD as part of the web development process ensures that all stakeholders have a clear, shared understanding of the technical aspects of a project, enabling better planning, execution, and maintenance.