[UML]UML系列——用例图Use Case
用例图的概念
用例图是描述用例、参与者以及它们之间关系的图。
用例图的作用
- 用例图是从用户的角度来描述对信息系统的需求,分析产品的功能和行为。
- 用例图定义和描述了系统的外部可见行为,是分析、设计直至组装测试的重要依据。
- 让用户参与前期的系统分析与设计。
参与者的概念(actor,执行者,活动者)
参与者是指在系统之外,但与系统直接交互的对象。先举个例子,对参与者有个具体的概念,如图:

参与者用人形符号表示,在人形符号下面标出参与者的角色名(不是人名)例如:

参与者的类型
- 人员
- 信息系统
- 设备
实例:在线选课管理系统

识别参与者的方法
人:
- 系统的主要客户是谁?
- 谁借助于系统完成日常工作?
- 谁来维护管理系统,保证系统正常运行?
设备:系统控制的硬件有哪些?
信息系统:系统需要与哪些其他系统进行交互?
注意:与系统进行交互、从系统中获取信息或向系统输入信息的人或事物。
实例:饮料自动售货机的参与者有哪些?

分析结果:

用例的概念
用例是用户期望系统具备的功能,每一个用例说明一个系统提供给它的使用者的一种服务或功能。
用例的目标是要定义系统的一个行为,但并不显示系统的内部结构。
用例的符号

用例名一般为动宾短语。上图分别为Rational Rose和Visio两种不同的画法。
识别用例的方法
识别用例的策略:对于已经识别的参与者,通过考虑每个参与者是如何使用系统的,以及系统对事件的相应来识别用例。

可以从以下几个角度来寻找和确定用例:
- 参与者需要从系统中获取哪种功能?
- 参与者是否需要读取、产生、删除、修改或存储系统中的某种信息?
- 系统的状态改变时,是否通知参与者?
- 是否存在影响系统的外部事件?
- 系统需要什么样的输入与输出?
实例:识别用例
Email客户端(如Outlook express):A在北京发邮件给上海的B,系统提醒B您有“新邮件”,B收邮件。
参与者A执行的用例有哪些?
参与者B执行的用例有哪些?

描述用例
用例图没有描述系统行为的细节,所以需要以书面文档的形式对用例进行描述。至少包括:
1、名称
与用例图中的名称保持一致
2、标识符
用例的代码或编号
3、基本操作流程
描述各项工作都正常进行时用例的工作方式。
4、可选操作流程
很少使用、异常情况、发出错误的情况。
如:
|
用例名称 |
归还图书 |
|
标识符 |
UC0002 |
|
基本操作流程 |
1.图书管理员输入图书信息 2.检索借阅该图书的借阅者的信息 3.删除与该图书相关的借阅记录 |
|
可选操作流程 |
1a.图书管理员发现图书被损坏,进行损坏处罚 1b.输入的图书不存在时,进行确认 2a.借阅者有超期的借阅信息时,进行超期处理 |
总结
该文主要介绍了参与者与用例图的概念及在Rose中的画法,下篇将着重介绍用例图中的各种关系。
若想详细了解,推荐阅读《UML基础与Rose建模教程》 这本书,这是大学四年留下几本书中的其中一本(其他的书......你懂得!),参考着课件复习一下。
特别感谢当时教我们UML的刘老师,UML是我c#的入门课,LZ大学没.net这门课,纯粹靠UML入门的。
真心感谢大学所有老师,您们教的东西几乎都用到了,泪喷了......
[UML]UML系列——用例图Use Case的更多相关文章
- UML指南系列——用例图
可以用用例来描述正在开发的系统想要实现的行为,而不必说明这些行为如何实现. 结构良好的用例只表示系统或者子系统的基本行为,而且既不过于笼统也不过于详细.
- [UML]UML系列——用例图中的各种关系(include、extend)
用例图中的各种关系 一.参与者与用例间的关联关系 参与者与用例之间的通信,也成为关联或通信关系. 二.用例与用例之间的关系 包含关系(include) 扩展关系(extend) 包含关系 (1) 概 ...
- [UML]UML系列——时序图(顺序图)sequence diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- [UML]UML系列——类图Class
相关文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) 一.类图的概念及组成 1.类图的概念 类图是描述类.接 ...
- [UML]UML系列——类图class的关联关系(聚合、组合)
关联的概念 关联用来表示两个或多个类的对象之间的结构关系,它在代码中表现为一个类以属性的形式包含对另一个类的一个或多个对象的应用. 程序演示:关联关系(code/assocation) 假设:一个公司 ...
- [UML]UML系列——类图class的依赖关系
相关文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列—— ...
- [UML]UML系列——类图class的泛化关系
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图C ...
- [UML]UML系列——类图class的实现关系Realization
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class ...
- [UML]UML系列——包图Package
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class ...
随机推荐
- 使用expect scp避免直接输密码
需求:现在有一百多台的机器,都是使用用户名密码登录做一些运维操作,不想因为密码变更造成管理上的一些麻烦,所以改为通过密钥文件的方式进行登录,需要提前做一些准备工作,把准备好的.SSH文件复制到各机器的 ...
- Bootstrap CSS 表单
表单布局 Bootstrap 提供了下列类型的表单布局: 垂直表单(默认) 内联表单 水平表单 垂直或基本表单 基本的表单结构是 Bootstrap 自带的,个别的表单控件自动接收一些全局样式.下面列 ...
- BZOJ 2120 数颜色&2453 维护队列 [带修改的莫队算法]【学习笔记】
2120: 数颜色 Time Limit: 6 Sec Memory Limit: 259 MBSubmit: 3665 Solved: 1422[Submit][Status][Discuss] ...
- NYOJ 451
光棍节的快乐 描述 光棍们,今天是光棍节.聪明的NS想到了一个活动来丰富这个光棍节. 规则如下: 每个光棍在一个纸条上写一个自己心仪女生的名字,然后把这些纸条装进一个盒子里,这些光 棍依次抽取一张纸条 ...
- AC日记——校门外的树 洛谷 P1047
题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0,1,2,……,L,都种 ...
- python-异常处理
一.异常 异常是什么? 就是影响程序正常执行的事件,异常在程序执行的过程中发生,脚本发生异常时,我们需要捕获它,否则程序就会终止. 异常处理: 1.捕获异常:try:...except ..... w ...
- alexkn android第一行代码-8.sqlite使用
Android自带sqlite数据库,因此常见操作应该都掌握.包括数据库的创建/升级以及增删改查. 1.创建数据库 public class MyDatabaseHelper extends SQLi ...
- linux解压包
1.命令格式:tar[必要参数][选择参数][文件] 2.命令功能:用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的 3.命令参数:必要参数有如下:-A 新增压缩文件到已存在的压缩 ...
- image的加载事件(onload)和加载状态(complete)
之前做过这样一个需求,要让商家页的商家图片按照图片外面box的大小等比例缩放.之前的想法是在页面中先输出图片的src,然后在页面底部初始化js,然后在js中写相应的可以使图片按照box的大小等比例缩放 ...
- TCP/IP、Http、Socket、XMPP-从入门到深入
TCP/IP.Http.Socket.XMPP-从入门到深入 终极iOS程序猿 2016-12-29 18:27 为了便于大家理解和记忆,我们先对这几个概念进行的介绍,然后分析他们的不同,再进行详细的 ...