软件架构图表与模式介绍

软件 架构 是任何成功软件系统的基础,并且会影响整个系统生命周期中的可维护性、可 扩展性 、稳定性和安全性等方方面面。实施新软件系统的第一步是 架构图 .

随着软件系统和 Web 应用程序变得越来越复杂,精心设计的系统架构图对于与其他开发人员和利益相关者进行交流变得至关重要。软件架构图是一种重要的文档实践,可帮助您规划和实施网络变更、可视化战略计划并领先于组织的需求。

今天,我们将重点介绍如何绘制图表、流行软件架构模式的一些示例,以及找到参考架构的地方,以用作各种用例的起点。我们还将讨论一个好的架构图应该完成什么,以及为什么你应该花时间来创建一个。

我们将介绍 :

  • 什么是软件架构
  • 图表基础:流程图、C4 和 UML 2.5
  • 6 种软件架构模式
  • 3 个用于构建应用程序的公共云平台
  • 总结和后续步骤

什么是软件架构?

软件架构描述了系统在其环境、关系、设计原则等上下文中的基本概念和属性。软件架构包括软件系统的组织、结构元素、行为元素以及将这些元素组合成更大的子系统。软件系统通常可以包含多种架构。

“没有整体架构或设计的编程就像只用手电筒探索洞穴:你不知道你去过哪里,你不知道你要去哪里,你也不知道到底在哪里你是。” 丹尼·索普

拥有出色的架构为您将来如何处理性能、容错性、可扩展性和可靠性奠定了基础。为您的软件选择正确的架构将在您扩大规模时在压力条件下保持稳定的性能。

即使您预计用户数量不会增加,考虑您的项目的大局以及如何将这一愿景传达给其他人也可以帮助您和您的团队根据这些决策对您整体的影响做出战略决策建筑学。

完善的软件架构可以帮助您的工程师快速定位和修复错误。

我们需要记录软件架构吗?

您是否应该记录您的软件架构取决于您正在处理的项目类型。关于记录软件架构是否真的值得花时间,或者它是否会减慢一切,存在一些争议。现实在中间的某个地方。

一些开发人员并不需要为每个项目设计一个映射良好的软件架构。如果您是单独工作或使用像 敏捷 这样专注于持续改进的固有适应性开发方法,则可能很难记录每一次更改。

“不正确的文档通常比没有文档更糟糕。” 伯特兰·迈耶

在其他时候,对复杂系统中软件架构的重要部分的记录不足可能会导致重大问题或导致技术债务。作为一般规则,一旦您的项目扩展至多人,您就应该开始记录产品的软件架构。

你需要记录什么?

您必须确保核心组件和高级架构可供每位员工使用。在许多情况下,软件架构及其文档将比产品的最初创建者更持久。从事产品工作的人可能会改变,使用的编程语言可能会改变,但软件架构几乎总是会保持不变。

这就是为什么记录您的软件架构如此重要的原因。它允许从事该项目的人员查看您的产品如何更改和发展的记录。

虽然您可能不想记录每个代码更改或架构更改,但您肯定希望记录重大更改,同样重要的是,记录进行这些更改的原因。

好的架构图能完成什么?

好的软件架构图是真实和清晰的来源。您希望您的图表能够快速向技术和非技术受众传达软件系统的基本组成和行为。

如果做得好,高级架构图和详尽的文档可以成为传达系统或应用程序内部状态的有效工具。

在开始编码之前绘制图表和在编写代码之后绘制图表也会带来不同的好处。

  • 正向设计 需要在您或您的团队开始编码 之前 创建图表。这有助于帮助您的开发人员更好地可视化他们正在尝试创建的系统。
  • 后向设计 涉及在编写代码  绘制图表。这可以帮助开发人员了解项目是如何开发的,并记录该工作流程以供以后改进。

您还希望您的图表

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值