软件工程第四章(第二部分)

第四章 面向对象方法——UML

**大家想一起学习交流的可以加群,WX:MrCroods。**

UML是一种可视化语言(也是一种一般性语言),用于规约系统的制品、构造系统的制品、建立系统制品的文档,可作为软件需求规约、设计和实现的工具。

二、UML的模型表达格式

UML的图形化工具分为两类:
结构图:用于表达系统或系统成分的静态结构模型。
行为图:用于表达系统或系统成分的动态结构模型。

(1)、类图

类图是可视化地表达系统静态结构模型的工具,通常包含类、接口、关联、泛化和依赖等关系。
类图是构件图和部署图的基础

1)、创建一个系统类图,要涉及以下4个方面:
①模型化待建系统中的概念,形成类图中的基本元素。
②模型化待建系统中各种关系,形成系统的初始类图。
③模型化系统中的协作,给出系统的最终类图。
④模型化逻辑数据库模式。

(2)、用况图(填空题)

用况图是一种表达系统功能模型的图形化工具,通常包含主题、用况、参与者、关联、泛化、依赖
use case图支持系统功能的建模,交互图支持系统交互的建模,状态图支持系统生存周期的建模。

1)、主题
2)、用况

用况通过一组动作序列来规约系统功能,并且该功能是通过与操作者之间交互给予体现的。
用况可用于整个系统,也可以用于子系统、单个类和接口。

3)、参与者

表达了一组高内聚的角色,一个参与者表达了系统交互的人、硬件或其他系统的角色。
参与者之间可用有泛化关系。

4)、关联、泛化和依赖

关联是一种参与关系,即参与者参与一个用况。
关联是操作者和用况之间的唯一关系。
包含(《include》)和扩展(《extend》)时依赖的变体
业务模型和系统模型之间具有“整体/部分”关系。

扫描二维码关注公众号,回复: 9638556 查看本文章
(3)、状态图(与生存周期挂钩)

状态图是显示一个状态机的图,其强调了一个状态到另一个状态的控制流。
一个状态机是一种行为,规约了一个对象在其生存周期响应事件并作响应的状态。
状态图包含状态:初始状态、最终状态、正常状态等,可用包含状态机中任意的、所有的特征。

1)、状态

一个状态是类目的一个实例在其生存中的一种条件或情况,期间该实例满足这一条件,执行某一活动或等待某一消息。

①初态表达状态机默认的开始位置,实心圆表示。
②终态表达状态机的执行已完成,内含实心圆表示。

初态和终态都是伪状态,即只有名字的状态。
进入/退出效应不能有参数或监护条件。

③状态内部转移

状态内部转移是指没有导致该状态改变的内部转移。

2)、活动和动作

活动是指状态机中一种可中断计算,中断处理后任然可继续
动作是指不可中断的原子计算,它可导致状态的改变或一个值的返回。

3)、被延迟事件

被延迟事件是指那些在一个状态中不予处理的事件列表。

4)、事件

一个事件是对确定的时空内一个有意义发生的规约。
事件分为:内部事件和外部事件
内部事件:指系统内对象之间传送的事件。
外部事件:指系统和它的参与者之间所传送的事件。
类的任何实例都能接受/发送一个信号。
信号事件是一种异步事件,信号通常由状态机处理。

①调用

表示对象接受到一个操作的请求。
类的任何实例都能接受/发送一调用事件。

②时间事件:表示推移一段时间的事件

③变化事件:表示状态的一个变化。

5)、状态转移5个部分
①源状态:发生状态转移的那个状态。
②转移触发器:满足其监护条件。
③监护条件:布尔表达式。
④效应:一种可执行的行为。
⑤目标状态:转移完成后所处的状态。

6)、为反应型对象(事件驱动的对象)建立一个状态机模型,步骤如下:
①选择状态机的语境类、用况,或子系统等。
②选择其实例的初始状态和最终状态,给出前置或后置条件。
③标识某一可用的时间段,判断其实例状态。
④判断该实例在整生存周期内所有状态的有意义偏序。
⑤判断可触发状态转换的事件。
⑥为这些转台转换添加动作。
⑦使用子状态、分支、合并和历史状态。
⑧检查在某一组合事件下所有状态的可达性。
⑨检查是否存在死状态。
⑩跟踪整个状态机,检查是否符合所期望的事件次序和响应。

(4)、顺序图

顺序图是一种交互图,即由一组对象以及按时序组织的对象之间的关系组成,包含对象之间所发送的消息。

1)、消息:表达交互内容。
2)、对象生命线:表示一个对象在一特定时间段中的存在。
3)、聚焦控制:表达一个对象执行一个动作的时间段。
4)、控制操作子
①选择操作子(Opr)(填空题)
组成部分:监护条件、控制体
②条件执行操作子(alt)
控制体通过水平线将其分为一部分,每一部分表示一个条件分支,每一个分支有一个监护条件。
③并发执行操作子(par)
④迭代执行操作子(loop)

发布了31 篇原创文章 · 获赞 4 · 访问量 1519

猜你喜欢

转载自blog.csdn.net/qq_38471554/article/details/100849495