Difference Between HLD and LLD
In this section, we are going to discuss the difference between HLD and LLD; and see the brief introduction between them.
What is HLD?
The HLD stands for High-Level Design, where the designer will only focus on the various models, like:
- Decision Tables
- Decision Trees
- Flow Diagrams
- Flow Charts
- Data Dictionary
The solution architect develops the High-level design, which is used to specifies the complete description or architecture of the application.
The HLD involves system architecture, database design, a brief description of systems, services, platforms, and relationships among modules.
The HLD is also known as macro-level or system design. It changes the business or client requirement into a High-Level Solution.
The High-level design is created before the Low-Level Design.
What is LLD?
The LLD stands for Low-Level Design, in which the designer will focus on the components like a User interface (UI).
The Low-level design is created by the developer manager and designers.
It is also known as micro-level or detailed design. The LLD can change the High-Level Solution into a detailed solution.
The Low-level design specifics the detailed description of all modules, which implies that the LLD involves all the system component’s actual logic. It goes deep into each module’s specification.
The Low-level design is created after the High-Level Design.
HLD vs LLD
In the below table, we have discussed some significant comparisons between high-level design and low-level design.
S.NO. | Comparison Basis | HLD | LLD |
---|---|---|---|
1. | Stands for | It stands for High-Level Design. | It stands for Low-Level Design. |
2. | Definition | It is the general system design, which means it signifies the overall system design. | It is like describing high-level design, which means it signifies the procedure of the component-level design. |
3. | Purpose | The HLD states the concise functionality of each component. | LLD states the particular efficient logic of the component. |
4. | Also, known as | HLD is also called a System or macro-level design. | LLD is also called details or micro-level design. |
5. | Developed by | Solution Architect prepares the High-Level Design. | Designer and developer prepare the Low-Level Design. |
6. | Sequential order in the design phase | It is developed first in sequential order, which implies that the HLD is created before the LLD. | It is developed after High-level design. |
7. | Target Audience | It is used by management, program, and solution teams. | It is used by designers, operation teams, and implementers. |
8. | Conversion | The HLD changes the client or business requirement into a high-level solution. | The LLD changes the high-level solution to a comprehensive solution. |
9. | Probable output | The high-level design is necessary to understand the flow across several system objects. | A low-level design is required for creating the configurations and troubleshooting inputs. |
10. | Input Criteria | The input measure in high-level design is SRS (Software Requirement Specification). | The input measure in low-level design is the reviewed HLD (High- Level Design). |
11. | Output Criteria | The output measures in the HLD are functional design, database design, and review record. | The output bases in the low-level design are the unit test plan and program specification. |
Conclusion
In this section, we have understood the major difference between high-level and low-level designs.
And we can conclude that the high-level design specifies the complete report and planning of the particular software product or application. On the other hand, the low-level design specifies the in-detail report of all the modules.
In Software Development Life Cycle’s design phase, the members of design team, client team, and review teams are included in high-level designing. On the other hand, the design team and operation teams will prepare the low-level Design.
Finally, we can say that both HLD and LLD are essential part of design phase in the SDLC process for any software product.