【软件工程与UML】第2章 用例图、用例文档、活动图 -- 系统的功能需求建模
01.用例图
用例图的4组成
①参与者(Actor)、用例(Use Case)、关系、系统
(一)参与者
- 参与者是系统外部的一个实体,它以某种方式参与用例的执行过程
- 参与者可以是人,也可以是事物,也可以是时间、气压、温度等环境因素或者其他系统等
- 它在系统之外,与系统直接交互,可以用一个群体概念给参与者命名,反应该参与者的身份和行为(例如用户、管理员等)
(二)用例
- 用例代表系统某项完整的功能,是动作步骤的集合
- 系统的功能是通过参与者使用用例来实现的
(三)关系
- 用例与参与者之间的
关联关系
- 参与者之间的
泛化关系
- 用例之间的
包含关系
、扩展关系
、泛化关系
表达关系的符号
-
关联关系(实线,带箭头)
-
泛化关系(实线,空心箭头,指向功能少的一方)
-
包含关系(虚线,实心箭头,《include》,箭头指向被包含的一方)(一定会发生)
该用例 执行时 一定会发生 所指向用例
-
扩展关系(虚线,实心箭头,《extend》,箭头指向扩展的一方)(可能会发生)
该用例 可能会在 指向用例执行时 发生
泛化关系
用例与用例之间
的泛化关系,通常表示同一业务目的(父用例)的不同技术实现(各个子用例)[子用例指向父用例]
用户与用户之间
的泛化关系,(指着谁就拥有谁的用例)
(四)系统
系统是指一个软件系统,一项业务,一个商务活动或一台机器等
系统功能通过用例来表现(所有用例共同构成了整个系统)
其他
参与者+用例 构成主谓宾结构
参与者一定是用例的主语
02.用例文档
重点内容
用例描述:简单描述用例的主要作用
前置条件:参与者启动这个用例之前必须完成的所有用例
后置条件:执行这个用例对系统所做的改变
部署约束:即描述访问这个用例的所有约束
事件流:描述参与者在完成用例的过程中发生的一系列交互行为,事件流有以下三种
(1)基本事件流:
(2)可选事件流:描述由参与者引起的变更
(3)异常事件:描述由系统引起的变更
简化的用例文档
- 用例编号
- 用例名
- 用例描述
- 参与者
- 前置条件
- 后置条件
- 事件路径
- 扩展点
- 补充说明
注意事项
前置条件:必须是系统在用例开始之前能检测到的。
后置条件:用例执行后对系统产生的所有改变
事件路径:书写尽量使用主动语句,以参与者或者系统为主语,不要涉及软件实现的细节(例如选择菜单、单击按钮或者修改数据库等)
事件路径的扩展点:一般是由参与者或系统引起的变更而形成的事件流
03.活动图
活动图用于描述系统、子系统、用例和程序模块中的工作流,帮助理解系统高层活动的执行过程
主要组件
建模活动图步骤
-
定义活动图范围,确定开始和结束状态
-
添加活动,建模主路径
-
寻找分支和并行情况,建模扩展路径
-
根据需要划分“游泳道”
游泳道:将活动图的活动状态分组,每一组表示负责那些活动的业务组织