为什么软件行业对 UML 图爱恨交加
已发表: 2017-05-19UML 是一种通用的可视化语言,用于对软件系统进行建模。 软件行业对 UML 图的使用意见不一。 虽然有些人认为它是软件系统和开发的一个组成部分,但也有相当多的人认为它完全没有必要。
在这篇文章中,我们探讨了这个论点的两个方面(UML 的优点和缺点),并试图了解软件行业与 UML 设计图的爱恨交织关系。
UML 的优点
最常用和灵活
UML 是一个高度认可和理解的软件设计平台。 它是软件开发人员之间的标准符号。 您可以放心地假设大多数软件专业人士至少会熟悉(即使不是精通)UML 图,从而使其成为解释软件设计模型的首选替代方案。
使 UML 非常适合和非常需要软件开发的原因在于它的灵活性。 您可以在 UML 图中自定义建模元素和交互,以适应您正在使用的领域或技术。
软件架构必须有效沟通
软件架构是系统的蓝图。 它是系统及其流程的效率所依赖的框架。 但是,这个框架只有在正确地传达给所有使用它和工作的人时才有效。 这就是统一建模语言 (UML) 发挥作用的地方。
UML 是一种丰富而广泛的语言,不仅可用于建模面向对象的软件工程,还可用于建模应用程序结构和行为以及业务流程。 软件玩家已经同意我们不能取消架构文档。 这很重要。 它有助于评估性能、安全性、跟踪,并为正在运行的任务提供重要的指导方针。
由于其广泛的范围,UML 是一种完美的视觉语言,可以将有关架构的详细信息传达给最多的用户。
你只需要知道语言的一部分就可以使用它
尽管有 14 种不同类型的 UML 图用于建模应用程序,但开发人员只使用三到四种来记录软件系统。 类图、序列图和用例图仍然是最流行的。
这意味着您只需要了解 20% 的 UML 语言即可解释 80% 的建模需求。 您无需了解或理解整个符号,即可使用 UML 图进行有效沟通。 知道符号的一个子集就可以很好地装备你。
丰富的 UML 工具
UML 工具是 UML 得到如此广泛使用的最重要原因之一。 UML 工具的范围从免费的开源软件到价值数百万美元的软件。 这些工具涵盖了许多领域,而不仅仅是绘制图表。 他们可以从设计中生成代码、应用设计模式、挖掘需求、逆向工程代码,并执行影响和复杂性分析。
这些优势和丰富的 UML 工具本身使 UML 成为软件工程领域的首选建模和开发语言。
尽管 UML 有无数的用途和好处,但并不是所有人都喜欢 UML。 事实上,相当一部分软件开发者,对不使用UML 和堆重批评是一样的。 让我们看看反对使用 UML 的论点。
UML 的缺点:针对 UML 的推理
不需要正式的符号
反对 UML 的最有力论据是,您实际上并不需要 UML 图来传达您的设计。 您可以使用在 PowerPoint、Visio 或白板中创建的非正式的框线图产生相同的影响和效果。 由于编码本身就是一种形式语言,许多开发人员不喜欢架构级别的复杂性和形式性,这不鼓励使用 UML,并已成为其缺点之一。
复杂度递增
从开始到现在,UML 的复杂性和规模都在增长。 UML 的庞大规模让很多人一开始就紧张,他们觉得自己无法学习它,没有它会更好。
在“建筑无关设计”中不是必需的
George Fairbanks 创造了一个术语,“架构无关设计”是一种认为不需要 UML 的情况。
架构无关设计的核心是简单和基本的软件架构,不需要任何复杂的图表来表示或解释设计。 如果公司更重视形式编码,并且存在一种流行的最少设计文档文化,那么 UML 被认为是不必要的。
解读这种爱恨交织的关系:
虽然在软件行业中有很多关于 UML 冗余的讨论,但不可否认的是,迄今为止,还没有 UML 的整体或适当的替代品。 为了对 UML 的重要性和命运有一个公正的看法,我们采访了与软件行业密切联系但观点中立的硬件巨头。
“没有设计文档在短期内很好,但从长远来看,当您需要将设计传达给另一个国家的开发人员或六个月后将加入团队的人时,这可能会成为一个问题. 在这种情况下,UML 成为一个巨大的帮助,并减轻了设计的歧义和问题。” Sconect, Female Header Manufacturer 的代表认为。
“我们可能会讨论用于视觉建模的特定领域语言,但事实仍然是它们都没有被广泛接受,这只能断言 UML 仍然是视觉语言方面的最佳替代方案。” Scondar 的一位代表非常有趣地提出了这一观察结果,该公司专门制造排针连接器。
Ismolex 代表的意见恰当地总结了软件行业与 UML 设计图的爱恨交织的案例。 “可能有一千种反对使用 UML 的论据,但由于它能够捕捉有关设计架构信息的细微差别,并且随着设计文档的重要性日益增加,UML 仍然是不可替代的。”
UML 的优缺点:你站在哪一边?
否认和坚持 UML 图将在软件界继续存在。 但是,UML 将继续存在。 然而,UML 图需要不断升级,以便它们的使用不仅限于架构描述和通信,而是扩展到表示和创建可以适应动态变化的系统。
关于作者
我是 Rachel Oliver,过去几年我一直是一名自由撰稿人,目前与 Ismolex – Pin header 制造商有联系。 虽然我喜欢写阳光下的所有事物,包括能源、商业、体育、家居装修和时尚,但我对商业、技术和电子产品尤其充满热情。 您可以通过 Google+、Facebook 和 Twitter 与我联系。