Design document
Encyclopedia
A software design document (SDD) is a written description of a software product, that a software designer writes in order to give a software development
Software development
Software development is the development of a software product...

 team an overall guidance of the architecture of the software project. An SDD usually accompanies an architecture diagram with pointers to detailed feature specifications of smaller pieces of the design. Practically, a design document is required to coordinate a large team under a single vision. A design document needs to be a stable reference, outlining all parts of the software and how they will work. The document is commanded to give a fairly complete description, while maintaining a high-level view of the software.

There are two kinds of design documents called HLDD (high-level design document) and LLDD (low-level design document).

Parts

The SDD contains the following documents:
  1. The data design
    Data-driven design
    In computer programming, data-driven programming is a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken. Adapting abstract data type design methods to object-oriented programming...

    describes structures that reside within the software. Attributes and relationships between data objects dictate the choice of data structures.
  2. The architecture design
    Software architecture
    The software architecture of a system is the set of structures needed to reason about the system, which comprise software elements, relations among them, and properties of both...

    uses information flowing characteristics, and maps them into the program structure. The transformation mapping method is applied to exhibit distinct boundaries between incoming and outgoing data. The data flow diagrams allocate control input, processing and output along three separate modules.
  3. The interface design
    Interface design
    Interface design deals with the process of developing a method for two modules in a system to connect and communicate. These modules can apply to hardware, software or the interface between a user and a machine...

    describes internal and external program interfaces, as well as the design of human interface. Internal and external interface designs are based on the information obtained from the analysis model.
  4. The procedural design
    Procedure (term)
    A procedure is a sequence of actions or operations which have to be executed in the same manner in order to always obtain the same result under the same circumstances ....

    describes structured programming concepts using graphical, tabular and textual notations. These design mediums enable the designer to represent procedural detail, that facilitates translation to code. This blueprint for implementation forms the basis for all subsequent software engineering work.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK