【UML】聊聊系统建模

本文介绍了系统建模的概念,强调了建模在软件工程中的重要性,特别是UML在沟通和理解复杂系统中的作用。文章详细讲解了UML的结构型和行为型图形,如类图、关联关系、用例图、活动图等,并提供了实例。此外,文章还探讨了建模过程中的注意事项,提倡敏捷建模思想,强调模型应服务于实际软件交付,并给出了领域建模和数据建模在实际项目中的应用案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

​建模定义

简单说来,建模是对现实的简化抽象,不过如此。它并不意味着要用特定的符号、工具和流程。我们只是想研究复杂的东西,让其中的一些部分易于理解。正如他们所说,有时候你是见木不见林。不必要的细节反而会让情况更加难以理解。最好还是隐藏那些不必要的细节,只专注于具体情况的重要方面。所以不管你用什么建模工具,什么Notation表示法,只要有助于的问题域的理解都是好的模型。

为什么要建(画)模(图)

1) 一图胜千言,方便理解和沟通。
2) 模型在软件工程各个阶段都发挥着重要作用,从需求分析时的用例图和概念领域模型(Conceptualdomain model),到开发阶段的类图,活动图,架构图,到上线的部署图,建模无处不在。
3)人类一开始是没有文字的,所以人类处理图像的进程比语言快60000倍,我们回忆起图片类的信息要比文字类信息容易6倍。

建(画)模(图)时需要注意些什么

1)软件建模,尽量使用通用的notation,如果你在流程图中用菱形表示处理而不是分支,就会让人困惑。
2)用不同的形状和颜色来区分不同的功能,领域,层次等,想想思维导图的工作原理。
3)注意图形在画面中的布局和颜色搭配,图表的颜值很重要。
4)使用UML但不要迷信,我们的重点是交付软件,而不是模型,所以不建不必要的模型,不维护不重要的模型,轻装上阵,保持敏捷。
5)仅仅使用UML是不够的,例如在设计UI时,使用UI流程图(User Interface Flow Diagram)是比较合适的。
6)对于非UML图,要特别注意图形中的箭头,要保持箭头在整个图表中语义的一致性,一般来说,箭头可以用来表示数据流向、服务调用、提供支撑等。
7)敏捷建模和敏捷开发的思想一致,建模过程不应该是自顶向下的瀑布式的, 而是要坚持拥抱变化,坚持团队协助(collaborative),保持快速反馈,不断的演化、迭代的过程。

UML建模

如上文所述,UML不是软件建模的必须,但是通用的UML图形表示法,能够减少沟通成本。1997年,OMG组织(Object Management Group对象管理组织)发布了统一建模语言(Unified Modeling Language,UML)。UML的目标之一就是为开发团队提供标准通用的设计语言来开发和构建计算机应用。UML提出了一套IT专业人员期待多年的统一的标准建模符号。通过使用UML,这些人员能够阅读和交流系统架构和设计规划–就像建筑工人多年来所使用的建筑设计图一样。

UML分为结构型和行为型建模图形,其分类如下图所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值