CPT203 (3/N)

Week6: System Modeling

系统模型涵盖以下这些内容:

上下文模型
交互模型
结构模型
行为模型
模型驱动工程

在这里,我们先回顾一下软件过程,它是由这四个部分组成:需求工程-系统建模-系统架构-系统设计

Requirements Engineering
System Modelling
System Architecture
System Design

这里主要对系统建模进行讲解:
情境:
在一般情况下,系统建模可以通过 抽象的方法将复杂系统转化为适当程度的细节层次 来简化复杂系统。在这里,“抽象”作为动词,代表着一种提取主要内容的行为。

原因:wer
软件开发失败的原因主要有以下3个:
1-对需求的理解过低。
2-通常在开发后期才发现问题。
3-过于复杂而导致的性能问题。

概念:
系统建模是开发系统抽象模型的过程,每个/每种模型都表示该系统的不同视图或视角。

主要内容:

在这里先定义一下UML。UML,全名Unified Modeling Language,译为统一建模语言。

序列图(Sequence Diagram):
概念:
序列图是UML的一部分,主要用于对系统中参与者和对象之间的交互进行建模,这里是英译原话,翻译下就是:序列图被用于表达系统中的参与者和对象间的交互作用。序列图显示了在特定用例或用例实例期间发生的交互顺序。所涉及的对象和参与者被列在图表的顶部,用一条虚线从它们垂直地画出来。对象之间的交互用带注释的箭头表示。
下面是一个简单的例子:

(网图,侵删) 

还有一个复杂点的例子:

 图片来源于:2020软件工程作业——团队03 - 呷饭里边请 - 博客园

类图(Class Diagram):
概念:
类图在开发面向对象的系统模型时使用,以显示系统中的类以及这些类之间的关联。对象类可以被认为是一种系统对象的一般定义。关联是类之间的链接,表明这些类之间存在某种关系。在软件工程过程的早期阶段开发模型时,对象也表示现实世界中的某些东西,例如病人、处方、医生等。
类图在网上有讲述的资源太多了,我就直接给例子了:
单个类图:

一般分为3个部分,顶部是类名,中间是对象,底部是方法,有过一点面向对象编程基础的同学都知道。

添加了细节的泛化层次结构的类图:

活动图(Activity Diagram):
概念:
活动图,它显示一个过程或数据处理中涉及的活动,通过提供特定场景中交互流的图形表示来补充用例。
举例:

说明:
由实心圆形代表开始,带圈的实心圆(靶心)代表结束。由圆角矩形代表活动,箭头代表一个活动到下一个活动的转换。在使用方括号标出条件的情况下,以下两种情况都是有效的:

当两条或多条并行路径同时运行时,可以使用粗体实线将过渡箭头分割成多个并发执行的路径,同时,粗体线条也用于合并并发路径:

在某些情况下,你的进程需要接收/发送信号,使用凸出的多边形代表发送,凹陷的多边形代表接收:

泳道:
使用泳道可以显示流程中每个活动的负责人,而将图表分成平行的部分,称为泳道。每个泳道在顶部显示一个对象的名字,从一条泳道到另一条泳道可以进行转换。举例:

 

这里再放一个更简单版本的活动图讲解:活动图讲解

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

enosouces

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值