科百科
当前位置: 首页 范文大全

uml建模对于软件系统开发的作用(从UML统一建模语言)

时间:2023-06-29 作者: 小编 阅读量: 1 栏目名: 范文大全

UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。返回结果由虚线反向指向表示。UML详述用例图用例图是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。活动图活动图是工作流的图形化表示。时序图时序图,亦称为循序图、序列图,是一种UML行为图。另一种可能的表示是状态转移表。

UML(统一建模语言)是非专利的第三代建模和规约语言,是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。

UML可用于计算机软件系统的分析和设计,在分析方面,主要提供了用例图;在设计方面,则提供了丰富的建模语言,如:活动图、时序图、状态图、类图。笔者认为,一般的信息管理系统(B/S)和应用软件(C/S)开发,只需要掌握这五种建模语言即可。当然,技不压身,如测试和运维阶段,还需要包图、组件图或部署图,掌握了只是锦上添花。

软件系统分析和设计是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。软件系统分析和设计会包括软件组件、组件之间的关系,组件特性以及组件间关系的特性。软件架构可以和建筑物的架构相比拟。软件系统分析和设计是构建计算机软件,开发系统以及计划进行的基础,可以列出开发团队需要完成的任务。

软件系统立项首先要进行可行性研究,只有通过了市场分析、技术分析、财务分析等,此篇文章才有意义。软件系统分析一般由产品经理和客户、用户进行沟通,只谈需求,不涉及技术上的问题。在产品的整个功能详情确定之后,UML用例图便派上用场,团队设计出用例图纸后,交由用户、客户确认后才生效。这个过程要进行反复的交涉、修改、再确认,只有最终敲定后,用例图才能传递给设计过程使用。

软件系统设计一般由项目经理牵头开展,通过用例图,项目经理和产品经理进行下一步规划。这时整个设计团队都需要讨论将用例图细化、精化、转化为活动图。活动图类似于面向过程的流程图,但其泳道却体现了面向对象设计的思想。

软件系统分析、设计与UML密切相关,且各建模语言有先后次序,先出炉用例图和活动图,然后依次为时序图(、状态图)和类图。时序图主要包括对象、消息和生命线,上面一排的矩形便是对象,消息一般为对象调用的方法,生命线代表对象存在的时间。因此,在对象存在时间里,每一次方法调用,都向另一个对象发送消息。返回结果由虚线反向指向表示。

状态图依据项目确定是否需要建模,每个场景只有一个开始状态,可有多个结束状态。事件触发状态的转移,在OA(办公自动化系统)的工作流模型中可使用状态图来清晰地表达设计思想。

类图是在后期确立的,有了上面几个图,可确立对象和对象的属性。有了时序图和状态图的调用和转移关系,可确立对象的方法和对象之间的关系

UML 详述

用例图

用例图是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。通过用例图,人们可以获知系统不同种类的用户和用例。

参与者:角色,系统的用户;

系统边界:确定系统的范围,边界是一个方框,用例在边界内,参与者在边界外;

用例:系统提供的服务;

关联:参与者与用例间的关系。

用例描述

用例图没有描述系统行为的细节,所以需要以书面文档的形式对用例进行描述。至少包括:

名称:与用例图中的名称保持一致;

标识符:用例的代码或编号;

基本操作流程:描述各项工作都正常进行时用例的工作方式;

可选操作流程:很少使用、异常情况、发出错误的情况。

另外还能包括:用例概述、范围、参与者、前置条件、后置条件、子事件流、规则与约束等。

用例图中的各种关系

参与者与用例间的关联关系:参与者与用例之间的通信,也成为关联或通信关系。

用例与用例之间的关系:包含关系、扩展关系、泛化关系。

包含关系

包含关系描述的是一个用例需要某种功能,而该功能被另外一个用例定义,那么在用例的执行过程中,就可以调用已经定义好的用例。表示符号:<<include>>

扩展关系

用一个用例(可选)扩展另一个用例(基本例)的功能,将一些常规的动作放在一个基本用例中,将可选的或只在特定条件下才执行的动作放在它的扩展用例中。表示符号:<<extend>>。

泛化关系

子用例继承了父用例所有的结构、行为和关系,是父用例的一种特殊形式。

活动图

活动图是工作流的图形化表示。活动图主要由活动和动作构成,也可以支持分支选择、迭代、并行。在 UML 中,活动图主要用于为计算性和组织性过程(即工作流)建模,相关活动之间的数据流也在其覆盖范围之内。活动图主要是用来说明控制流,不过也可以显示数据在各数据储存之间的流动。

  • 圆角矩形:表示“动作”;
  • 菱形:表示“决策”;
  • 粗实线:表示并行(并发性)活动的开始(分离)和结束(汇合);
  • 黑圆:工作流的开始(初始节点);
  • 黑圈套住的黑圆:工作流的结束(结束节点)。

时序图

时序图,亦称为循序图、序列图,是一种UML行为图。描述对象在时间序列中的交叉作用。时序图会描绘在此情境下有关的对象,以及此对象和其他对象交换消息的顺序。时序图一般和待开发系统逻辑视图上,用例的实现有关。时序图有时也称为事件图或事件情境。

四大主要元素:

  • 对象(Object)
  • 生命线(Lifeline)
  • 消息(Message)
  • 控制焦点(Activation)

状态图

状态图有限状态自动机的图形表示。另一种可能的表示是状态转移表

  • 状态Q
  • 输入符号Σ
  • 输出符号Z
  • 边δ
  • 开始状态q0
  • 接受状态F

类图

类图是软件工程的统一建模语言一种静态结构图,该图描述了系统的类集合,类的属性和类之间的关系。

  • 最上面是类名称
  • 中间部分包含类的属性
  • 底部部分包含类的方法

Public

-Private

#Protection (对子类可见)

~Package (对包内其它成员可见)

类之间关系:

泛化、实现、依赖、关联、聚合、组合

很多软件开发团队都使用UML来进行产品、项目的分析和设计。当然,不同环境、不同条件使用的方法和模式不同。毋庸置疑的是,UML已成为软件行业的一个标准,很大程度上提升了软件团队的开发速度,规范了开发流程,也防范了软件危机。不论是开发什么软件系统,不论是使用哪种开发模型,UML都指引着团队循序渐进地向前推动,最终高效、高质量、安全可控地完成系统。

参考文献:

1. https://zh.wikipedia.org/zh/统一建模语言

2. https://zh.m.wikipedia.org/zh/软件架构

3. https://zh.m.wikipedia.org/zh-hans/用例图

4. https://www.jianshu.com/p/3cde67aed8e9

5. https://zh.m.wikipedia.org/zh-hans/活动图

6. https://zh.m.wikipedia.org/zh-hans/状态图

7. https://wiki.kfd.me/zh-cn/類別圖

8. https://blog.csdn.net/sinat_39809957/article/details/124856191

文章来源 | 微信公众号“计算机软件技术研究中心” 朱阿雄

    推荐阅读
  • 怎么关闭qq音乐自动续费(关闭qq音乐自动续费的方法)

    接下来我们就一起去了解一下吧!怎么关闭qq音乐自动续费打开手机里的qq音乐软件。接下来继续点击会员中心按钮。最后一步点击更多命令,再点击个人中心,假如已经开通了,那下方会显示续费,点击管理我的自动续费命令,关闭即可。

  • 柏拉图式的爱情经典(真正的柏拉图式的爱恋)

    《致命切割》是近来,我看的最为令我触动的一部电影。在《致命切割》里边,我是那样惊异,对于那惊异我也只能用它的对白来表达。警车载着荷枪实弹的警察赶来了。“我希望是你,而不是那些腐败的警察,阿泰,你要帮我,让你来结束这一切,杀了我吧,阿泰,让一切罪恶都随我的死一起湮灭吧!好吗?阿泰。”阿泰颤抖着,呜咽抽泣,他说“我做不到,我做不到···”枪声响起,一阵更为悲痛的哭喊爆发出来。

  • 福建省最美的风景区(福建最美的一个湖)

    乘船游玩大金湖是最佳的选择,环湖游内容相对丰富,也可以选择漂流竹筏或者爬山,乘船的话会在三个景点停靠,分别是甘露岩寺、斜线天、野趣源,最佳游玩时节是夏季,万物生长最是茂盛,经过造物主亿万年的精雕细刻,终于在大金湖塑造出人间佳境,夏季坐着竹筏观赏更是一种享受与美感。

  • 鸭蛋怎么做下饭菜(具体做的步骤有什么)

    以下内容希望对你有帮助!鸭蛋怎么做下饭菜把鸭蛋煮开,冷水冲洗一下,去壳,割开,取下鸡蛋黄,碾成粉末状,添加化动物油、水豆粉揉匀,制24个球体。把鸡蛋黄球逐一放进虾糁内,滚上一层虾糁,用力蘸几滴水将其揉成球型。锅内加水烧开,放进虾球煮5分鐘至熟,捞起来放于盘里,豌豆苗氽熟,围于虾球四周。炒菜锅内添加白汤烧开,放进食盐、白胡椒粉,勾夹层玻璃芡,添加鸡精,化动物油推匀,出锅淋在盘里虾球豆苗上既成。

  • 明锐倒车影像摄像头怎么拆(自己动手更换倒车影像摄像头)

    一般情况下,只要屏幕能正常显示,倒车影像不能用,即可判断是摄像头出了问题,线路一般情况不会出现太大问题,除非有车辆撞击伤及线路。网购了一个摄像头,还有内六角梅花扳手,17款明锐的摄像头多是装在车后边倒车尾灯的位置。为了能顺利拆卸摄像头,需要把后备箱盖子里面装饰板拆下来。最重要的就是摄像头的拆卸,摄像头是和倒车灯装在一起的。

  • 油性皮肤怎样祛痘(这些攻略真的是祛痘的及时雨)

    油性皮肤对于平时的个人休息时间是息息相关,所以为了达到去痘的效果,平时一定要早睡美容觉,作息按时。吃辣会长痘痘,是常识,平时在饮食上要做到清淡为主,不要吃辣或是油腻的食品,吃多了不单对自己的皮肤不好,还会连累自己的身体,建议要是嘴痒的话,吃水果为主好。清洁,卸妆是起到一个清洁皮肤的作为,是每天必不可少的,所以平时一定要卸妆,并且不化妆时多点洗脸。内分泌与运动,平时要保持心情的愉快,有空时多点运动。

  • 科目三考试顺序及步骤(科目三考试各项目操作流程详解)

    二、模拟夜间灯光考试的灯光使用场景及流程1、当听到“夜间在没有路灯照明条件不良条件下行驶”时开启前照灯开关,并保持灯光处于近光状态。

  • 鸭蛋买回家怎么保存(鸭蛋的营养价值是什么)

    鸭蛋放入冰箱要大头朝上,小头朝下,这样使蛋黄上浮后帖在气室下面,可防止微生物侵入蛋黄,保证鸭蛋的质量。鸭蛋味甘甜、性凉,蛋白质含量高,多种对人体有益的微量元素和十多种维生素及人体必需的17种水解氨基酸,有养阴、清肺的功效,鸭蛋最适宜阴虚火旺者作食疗补品用。此外,青壳蛋营养价值相对较高,除硒和赖氨酸外,锌、其余16种氨基酸以及总氨基酸含量都高于白壳蛋。

  • dmt素颜护肤品怎么样(菱歌深度解读口罩脸急救)

    随着武汉封城,疫情进入白热化。为避免加重肌肤刺激或对肌肤造成二次伤害,温和清洁不刺激的洗面奶成为首选。经测试已证明产品安全、温和、无刺激。牛油果树果脂、玫瑰果油、乳木果油等成分具有深层保湿的作用,防止口罩部位皮肤在水分蒸发后出现干燥脱屑。林清轩的山茶花润肤油不仅是疫情期间实现涅槃重生的重要单品,也占据了全新零售场景“修复口罩脸”的C位。

  • 电脑怎么自动调整时间(电脑怎么设置自动调整时间)

    电脑自动调整时间的方法是:1、打开控制面板、点击时钟语言和区域按钮。电脑,又称为计算机,是一种利用电子学原理根据一系列指令来对数据进行处理的机器。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。第一台通用计算机ENIAC诞生于1946年2月15日。电脑由硬件系统和软件系统所组成,没有安装任何软件的计算机称为裸机。