HOME

TheInfoList



OR:

High-level design (HLD) explains the architecture that would be used to develop a system. The architecture diagram provides an overview of an entire system, identifying the main components that would be developed for the product and their interfaces. The HLD uses possibly nontechnical to mildly technical terms that should be understandable to the administrators of the system. In contrast, low-level design further exposes the logical detailed design of each of these elements for use by engineers and
programmer A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
s. HLD applies to both software and hardware, often hardware is forgotten in system development and only software is discussed.


Purpose

* Preliminary design—In the preliminary stages of a system development, the need is to size the project and to identify those parts of the project that might be risky or time-consuming. * Design overview—As the project proceeds, the need is to provide an overview of how the various sub-systems and components of the system fit together. In both cases the high-level design should be a complete view of the entire system, breaking it down into smaller parts that are more easily understood. To minimize the maintenance overhead as construction proceeds and the lower-level design is done, it is best that the high-level design is elaborated only to the degree needed to satisfy these needs.


High-level design document

A high-level design document or HLDD adds the necessary details to the current project description to represent a suitable model for coding. This document includes a high-level architecture diagram depicting the structure of the system, such as the hardware, database architecture, application architecture (layers), application flow (navigation), security architecture and technology architecture.https://people.ok.ubc.ca/rlawrenc/research/Students/CJ_05_Design.pdf


Design overview

A high-level design provides an overview of a system, product, service or process. Such an overview helps supporting components be compatible to others. The highest-level design should briefly describe all platforms, systems, products, services and processes that it depends on and include any important changes that need to be made to them. In addition, there should be brief consideration of all significant commercial, legal, environmental, security, safety and technical risks, issues and assumptions. The idea is to mention every work area briefly, clearly delegating the ownership of more detailed design activity whilst also encouraging effective collaboration between the various project teams. Today, most high-level designs require contributions from a number of experts, representing many distinct professional disciplines. Finally, every type of end-user should be identified in the high-level design and each contributing design should give due consideration to customer experience.


See also

*
Software development process In software engineering, a software development process is a process of dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design, product management. It is also known as a software devel ...
* Systems development life cycle


References


External links


High Level Design Document sample format
{{Design Design Software development Software design