UML--核心元素之用例
Use case
一个系统就是由各种各样的愿望组成的。
一个用例就是与参与者actor交互的,并且给参与者提供可观测的有意义的结果的一系列活动的集合。
例如你想做一顿饭吃,你需要完成煮饭和炒菜两件事情,这两件事情就是两个用例。
一个完整的用例是有参与者、前置条件、场景、后置条件构成的。
米---前置条件
电饭煲---场景一
蒸笼---场景二
米饭---后置条件
这就是一个用例的构成。
用例本质体现了参与者的愿望,不能完整达到参与者愿望的不能称为用例。如果目的是取到钱,那么取钱是一个有效的用例,填写取款单却不是。
用例必须有参与者发起。
用例必然是动宾短语形式出现的。比如喝水是一个有效的用例。而“喝”却不是。
用例是一个需求单元。
用例的粒度。
比如ATM取钱的场景,取钱、读卡、验证账号、打印回执单都是可能的用例,显然,取钱包含了后续动作。取钱的粒度要大些。
让业务代表从他自己的本职工作出发来谈谈他的期望,
可以问:
1.您对系统有什么期望?
我们期望,系统可以对老师信息进行管理,包括基本信息,工资信息等等。
我们期望,系统可以对学生信息进行管理,包括基本信息,健康信息,听力信息等等。
我们期望,系统可以对教务信息进行管理,包括教学计划、学生学籍、课表编排、学生成绩、教学考评、毕业处理、教材管理等方面。
2.您打算在这个系统里做些什么事情?
管理老师信息。
管理学生信息。
管理教务信息。
管理学校信息等。
3.您做这件事的目的是什么?
更好的管理学校的信息。
4.您做完这件事希望有一个什么样的结果?
希望可以实现这些信息管理,给学校、老师和同学们带来方便。
简单地用纸和笔记录下业务代表的访谈结果,从结果中找出用例。
经常地,头一两次的访谈可能没有那么顺利。基于客户不熟悉这种访谈形式以及需求采集人员不熟悉客户业务的原因,开始时采集到的信息可能不足以得出用例。
这样,可以考虑重新进行访谈。
功能和用例的区别:
举个例子。从功能的角度出发,对电视的描述是能开关,能显示。可以调频道。可以调声音。
从用例的角度出发,对电视的描述是有个人要看电视节目。要完成这个用例,第一步需要先打开开关,调到自己喜欢的频道,如果声音不合适,可以调节一下。
读者可以细细品味一下这其中的区别。
业务用例
myself:一切围绕公司项目来学习,来进行认识,相应的技能的学习等等。做好自己的工作,才有资格加薪。
业务用例是用于描述客户现有业务的,它的参与者是业务主角。如果说用例是用来获取功能性需求的,那么可以说业务用例就是用来获取功能性业务的。业务用例不将计算机包括进来。
业务范围不等于系统范围,不是所有的业务都能够用计算机来实现的。不在计算机中实现的业务就可以不进入系统范围。
虚线的内容就是业务用例的实现。
UML--核心元素之用例的更多相关文章
- <四>面向对象分析之UML核心元素之用例
一:基本概念 --->用例定义了一组用例实例,其中每个实例都是系统所执行一系列操作,这些操作生成特定主角可以观测的值. --->所谓用例,就是一件事情,要完成这 ...
- 【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
1.0.0 Summary Tittle:[UML]NO.54.EBook.6.UML.2.002-[Thinking In UML 大象 第二版]- UML 核心元素 Style:DesignPat ...
- <十>面向对象分析之UML核心元素之关系
关系 --->在UML中关系是非常重要的语义,它抽象出对象之间的联系,让对象构成特定的结构. 一,关联关系(association)
- UML核心元素--用例
定义:用例定义了一组用例实例,其中每个实例都是系统所执行的一些列操作,这些操作生成特定主角可以观测的值.一个完整的用例定义由参与者.前置条件.场景.后置条件构成. 1.理解用例:用例就是参与者希望通过 ...
- <三>面向对象分析之UML核心元素之参与者
一:版型 --->在UML里有一个概念叫版型.有些书里也称类型,构造型. --->这个概念是对一个UML元素基础定义的扩展.在同一个元素基础定义的基础上赋予特别 ...
- UML核心元素--参与者
定义:参与者是在系统之外与系统交互的某人或某事物.参与者在建模过程中处于核心地位. 1.系统之外:系统之外的定义说明在参与者和系统之间存在明确的边界,参与者只能存在于边界之外,边界之内的所有人和事务都 ...
- <九>面向对象分析之UML核心元素之设计类,类,属性,方法,可见性
设计类
- <八>面向对象分析之UML核心元素之分析类
一:基本概念 ---->在那大数项目中,分析类是被忽视的一种非常有用的元素. ---->分析类用于获取系统中主要的“职责簇”,他们代表系统的原型类,是系统必须处 ...
- <七>面向对象分析之UML核心元素之包
一:基本概念
- <五>面向对象分析之UML核心元素之边界
一:基本概念
随机推荐
- 在Visual Studio 2013中编译libssh2项目
一. 下载需要的外部包,并解压,下面给出的链接如果无法访问,就google搜索下载一下: •下载openssl •下载zlib 二.修改libssh2项目配置: 1.C/C++->Gene ...
- Codeforce 220 div2
D 插入: 在当前指针位置sz处插入一个1,col[sz]记录插入的内容,sz++; 删除i: 找到第i个1的位置,赋为0; 于是转化为一个维护区间和的问题; trick: 如果是依次删除a[0],a ...
- 程序员必备基础知识:通信协议——Http、TCP、UDP
CP HTTP UDP: 都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则“说话”,对方才能理解或为之服务. TCP HTTP UDP三者的关系: TCP/IP是个协议组,可分为四个层次: ...
- JavaScript闭包函数的写法
<script type="text/javascript"> //通过js内置的函数构造器创建函数 var func=new Function('a','b','re ...
- 《学习opencv》笔记——矩阵和图像操作——cvCalcCovarMatrix,cvCmp and cvCmpS
矩阵和图像的操作 (1)cvCalcCovarMatrix函数 其结构 void cvCalcCovarMatrix(计算给定点的均值和协方差矩阵 const CvArr** vects,//给定向量 ...
- LoadRunner测试下载功能点脚本(方法二)
在上一篇<LoadRunner下载功能点脚本(方法一)>中,实现的脚本仅是录制下载功能点的脚本,现在性能需求的场景更改如下: 性能需求:对系统某页面中,点击下载并将下载文件保存到本地电脑的 ...
- Java清洁:终结处理和垃圾回收
一般情况:Java有垃圾回收机制负责回收无用对象占据的内存资源. 特殊情况:假定你的对象(并非使用new)获得一块特殊的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以它不知道如何释放 ...
- oracle以web方式登录EM、ISQLPlus
1. 检查主机名/IP.端口安装时的主机名/IP.端口记录在$ORACLE_HOME/install/portlist.ini 文件中.缺省是:一般用户 htt ...
- eclipse 404以及tomcat failed to start错误
eclipse中的servlet项目有时会不编译,不编译可能就会出现404错误,因为在build path的输出目录并没有class文件,然而如果在输出目录引入之前编译的class文件,就可能出现cl ...
- ASP.NET中在线用户统计
统计在线用户的作用不言而喻,就是为了网站管理者可以知道当前用户的多少,然后根据用户数量来观察服务器或者程序的性能,从而可以直观的了解到网站的吸引力或者网站程序的效率.现在,我们就介绍一个简单明了的方法 ...