Low-level design
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
Low-level design (LLD) is a component level design process that follows a step-by-step process of refinement that may be used for the design of data. Overall the data organization may be defined during requirement analysis and then refined during data design work. Afterward, each component is specified in detail.[1]
The LLD phase is the stage where the actual software components are designed.
During the detailed phase the logical and functional design is done and the design of application structure is developed during the high-level design phase.
[2]== Design phase ==
A design is the order of a system that connects individual components. Often, it can interact with other systems. Design is important to achieve high reliability, low cost, and good maintainability.[3] We can distinguish two types of program design phases:
- Architectural or high-level design
- Detailed or low-level design
Structured flow charts and HIPO diagrams typify the class of software design tools and these provide a high-level overview of a program. The advantages of such a design tools are that, it yields a design specification that is understandable to nonprogrammers and it provides a good pictorial display of the module dependencies. A disadvantage is that it may be difficult for software developers to go from graphic-oriented representation of software design to the actual implementation of the software system. Therefore, it is necessary to yield little insight into the algorithmic structure describing procedural steps to facilitate the early stages of software development (generally using PDLs).[4]
Purpose
The goal of LLD or a low-level design document (LLDD) is to give the internal logical design of the actual program code. High-level design is created on the low-level design. LLD describes the class diagrams with all the methods and relations between classes and program specs. It describes each and every module in an elaborate manner so that the programmer can directly code the program from the document.
A good low-level design document will make the program easy to develop when proper analysis is utilized to create a low-level design document. The code can then be developed directly from low-level design document with minimal effort of debugging and testing. It also adds other advantages such as lower cost and easier maintainability of project.
Sample
You can find an example of HLD here: Sample HLD, after iterations that was initially developed as LLD:Sample LLD.
References
- ^ Software Engineering: A Practitioner’s Approach Roger S. Pressman
- ^ http://users.ece.utexas.edu/~valvano/Volume1/E-Book/C7_DesignDevelopment.htm
- ^ The Essence of Program Design: By Bell Stephen P., Douglas Bell, Ian Morrey, John Pugh
- ^ Survey of Program Design Languages (PDLs): Brian A. Nejmeh, Herbert E. Dunsmore
This article has not been added to any content categories. Please help out by adding categories to it so that it can be listed with similar articles. (June 2015) |