高层设计 (HLD) 与低层设计 (LLD) 的区别


系统设计包括高层设计和低层设计。这有助于创建一个平稳运行且无错误的项目。高层设计和低层设计是系统设计的两个主要特征。让我们了解高层设计和低层设计之间的区别。

高层设计

高层设计包括对系统架构的描述。系统设计包括以下内容:

  • 数据库设计
  • 系统架构
  • 系统描述,包括平台、关系和服务

高层设计会创建一个包含所有根据需求所需的设计方面的图表。该图表包含以下特征:

  • 该图表包含软件接口、用户接口和硬件的详细信息
  • 高层设计也称为宏观设计
  • 解决方案架构师负责创建高层设计图

高层设计中使用的模型

高层设计中使用的模型包括:

  • 流程图
  • 决策表
  • 决策树
  • 流程图
  • 数据字典

高层设计的简洁分解

高层设计可以分为以下几个部分:

  • 需求分析 - 利益相关者和最终用户参与了解功能性和非功能性设计。
  • 系统架构 - 定义系统组件及其之间的交互。它还包括处理数据流以实现功能。
  • 组件设计 - 详细说明每个模块的结构,包括数据处理机制和行为的阶段。
  • 数据设计 - 它包括数据结构、数据库和数据流,以便正确分配内存和高效存储。
  • 接口设计 - 它包括系统安全,包括加密、授权和身份验证。
  • 性能设计 - 它包括可扩展性、响应时间和资源优化策略。
  • 错误处理 - 这是一个制定计划来报告各种错误及其报告的方面。
  • 技术选择 - 这是选择所需语言和技术的阶段。
  • 文档 - 编写详细的文档,其中包含高层设计的各个方面。

低层设计

低层设计是软件开发的一部分。此设计包括系统、组件及其详细信息以及它们之间的通信。低层设计的特征如下:

  • 此处描述每个系统组件的逻辑,可以将其划分为模块。
  • 它也称为微观设计
  • 设计师和开发人员创建低层设计
  • 借助低层设计,可以将高层设计转换为蓝图

低层设计的简洁分解

低层设计可以分为以下几个部分:

  • 高层设计细化 - 将高层设计分解成更小的方面,以便于实现。
  • 模块设计 - 将高层设计中的模块划分为函数、方法、类和数据结构。
  • 算法细节 - 这是确定每个模块的逻辑和算法的阶段。
  • 数据结构设计 - 创建可以轻松在任何模块中存储和修改的详细数据结构。
  • 数据库设计 - 此处包含数据库的要求,包括表、查询和其他数据库方面。
  • 代码逻辑 - 创建编码指南,包括变量、常量、函数等。
  • 接口实现 - 从高层设计中获取接口规范并将其包含在代码中。
  • 资源分配 - 这是考虑内存分配和处理的阶段。
  • 安全实现 - 确定安全机制,例如加密、身份验证、授权等。
  • 测试 - 制定项目的单元测试策略。
  • 文档 - 必须编写详细的代码文档。

高层设计与低层设计的区别

高层设计和低层设计之间存在许多差异,可以在下表中找到:

高层设计 低层设计
高层设计是整个系统的设计。 低层设计处理组件级设计。
它被称为宏观设计。 它被称为微观设计。
它包含对整个应用程序架构的描述。 它包含每个组件和模块的详细信息。
高层设计中描述了每个模块的简要功能。 低层设计包含模块功能逻辑的详细信息。
解决方案架构师负责创建高层系统设计。 设计师和开发人员负责创建低层系统设计。
审查团队、设计团队和客户是高层设计的一部分。 设计团队、运营团队和实施者是低层设计的一部分。
软件需求规范是高层设计的输入标准。 低层设计中对输入标准进行了审查。
业务需求可以转换为高层解决方案。 高层解决方案可以转换为详细的解决方案。
输出标准包括数据库设计、审查记录和功能设计。 输出标准包括程序规范和单元测试计划。
高层设计侧重于系统组件和交互。 低层设计处理不同模块的实现。
高层设计处理主要的系统模块及其之间的交互。 低层设计包括将模块分解为数据结构和函数的过程。
高层设计处理整体流程和用户交互。 低层设计处理用户界面。
未来的系统更改可在高层设计中进行调整。 计划扩展模块,而无需进行任何重大更改。

结论

高层设计和低层设计是系统设计的一部分。高层设计包括系统架构,包括数据库设计、平台描述、关系、服务等。低层设计包括软件开发中包含的方面。它们都是系统设计的重要组成部分,并且存在许多差异。

高层设计与低层设计常见问题解答

1. 哪种设计包含整个系统的所有方面?

高层设计包含整个系统的所有方面。

2. 高层设计和低层设计的其他名称是什么?

高层设计称为宏观设计,低层设计称为微观设计。

3. 谁负责创建高层设计和低层设计?

解决方案架构师创建高层设计,而设计师和开发人员创建低层设计。

4. 在哪种设计中包含数据库设计?

高层设计中包含数据库设计。

5. 哪种设计处理模块的实现?

低层设计处理模块的实现。

更新于:2024年7月15日

浏览量 179 次

启动您的职业生涯

通过完成课程获得认证

开始
广告