Jump to content

Low-level design

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Hemanjosko (talk | contribs) at 07:39, 11 July 2015 (add a category). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Low Level Design (LLD) is a component level design process that follows a step by step process of refinement which may be used for the design of data. Overall the data organization may be defined during requirement analysis, then refined during data design work. Then each component is specified in detail.[1]

The low-level design (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 .

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.[2] We can distinguish two type of program design phases.

1) Architectural or high-Level design

2) 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 tool is that it yields a design specification which is understandable to non programmers and it provides a good pictorial display of the module dependencies. The disadvantages are; 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)[3]

Purpose

The goal of Low Level Design (LLD) or 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 programs 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 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

  1. ^ Software Engineering: A Practitioner’s Approach Roger S. Pressman
  2. ^ The Essence of Program Design: By Bell Stephen P., Douglas Bell, Ian Morrey, John Pugh
  3. ^ Survey of Program Design Languages (PDLs): Brian A. Nejmeh, Herbert E. Dunsmore