Use case

一个系统就是由各种各样的愿望组成的。

一个用例就是与参与者actor交互的,并且给参与者提供可观测的有意义的结果的一系列活动的集合。

例如你想做一顿饭吃,你需要完成煮饭和炒菜两件事情,这两件事情就是两个用例。

一个完整的用例是有参与者、前置条件、场景、后置条件构成的。

米---前置条件

电饭煲---场景一

蒸笼---场景二

米饭---后置条件

这就是一个用例的构成。

用例本质体现了参与者的愿望,不能完整达到参与者愿望的不能称为用例。如果目的是取到钱,那么取钱是一个有效的用例,填写取款单却不是。

用例必须有参与者发起。

用例必然是动宾短语形式出现的。比如喝水是一个有效的用例。而“喝”却不是。

用例是一个需求单元。

用例的粒度。

比如ATM取钱的场景,取钱、读卡、验证账号、打印回执单都是可能的用例,显然,取钱包含了后续动作。取钱的粒度要大些。

让业务代表从他自己的本职工作出发来谈谈他的期望,

可以问:

1.您对系统有什么期望?

我们期望,系统可以对老师信息进行管理,包括基本信息,工资信息等等。

我们期望,系统可以对学生信息进行管理,包括基本信息,健康信息,听力信息等等。

我们期望,系统可以对教务信息进行管理,包括教学计划、学生学籍、课表编排、学生成绩、教学考评、毕业处理、教材管理等方面。

2.您打算在这个系统里做些什么事情?

管理老师信息。

管理学生信息。

管理教务信息。

管理学校信息等。

3.您做这件事的目的是什么?

更好的管理学校的信息。

4.您做完这件事希望有一个什么样的结果?

希望可以实现这些信息管理,给学校、老师和同学们带来方便。

简单地用纸和笔记录下业务代表的访谈结果,从结果中找出用例。

经常地,头一两次的访谈可能没有那么顺利。基于客户不熟悉这种访谈形式以及需求采集人员不熟悉客户业务的原因,开始时采集到的信息可能不足以得出用例。

这样,可以考虑重新进行访谈。

功能和用例的区别:

举个例子。从功能的角度出发,对电视的描述是能开关,能显示。可以调频道。可以调声音。

从用例的角度出发,对电视的描述是有个人要看电视节目。要完成这个用例,第一步需要先打开开关,调到自己喜欢的频道,如果声音不合适,可以调节一下。

读者可以细细品味一下这其中的区别。

业务用例

myself:一切围绕公司项目来学习,来进行认识,相应的技能的学习等等。做好自己的工作,才有资格加薪。

业务用例是用于描述客户现有业务的,它的参与者是业务主角。如果说用例是用来获取功能性需求的,那么可以说业务用例就是用来获取功能性业务的。业务用例不将计算机包括进来。

业务范围不等于系统范围,不是所有的业务都能够用计算机来实现的。不在计算机中实现的业务就可以不进入系统范围。

虚线的内容就是业务用例的实现。

UML--核心元素之用例的更多相关文章

  1. <四>面向对象分析之UML核心元素之用例

    一:基本概念        --->用例定义了一组用例实例,其中每个实例都是系统所执行一系列操作,这些操作生成特定主角可以观测的值.        --->所谓用例,就是一件事情,要完成这 ...

  2. 【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 ...

  3. <十>面向对象分析之UML核心元素之关系

    关系        --->在UML中关系是非常重要的语义,它抽象出对象之间的联系,让对象构成特定的结构.        一,关联关系(association)

  4. UML核心元素--用例

    定义:用例定义了一组用例实例,其中每个实例都是系统所执行的一些列操作,这些操作生成特定主角可以观测的值.一个完整的用例定义由参与者.前置条件.场景.后置条件构成. 1.理解用例:用例就是参与者希望通过 ...

  5. <三>面向对象分析之UML核心元素之参与者

    一:版型        --->在UML里有一个概念叫版型.有些书里也称类型,构造型.        --->这个概念是对一个UML元素基础定义的扩展.在同一个元素基础定义的基础上赋予特别 ...

  6. UML核心元素--参与者

    定义:参与者是在系统之外与系统交互的某人或某事物.参与者在建模过程中处于核心地位. 1.系统之外:系统之外的定义说明在参与者和系统之间存在明确的边界,参与者只能存在于边界之外,边界之内的所有人和事务都 ...

  7. <九>面向对象分析之UML核心元素之设计类,类,属性,方法,可见性

    设计类

  8. <八>面向对象分析之UML核心元素之分析类

    一:基本概念        ---->在那大数项目中,分析类是被忽视的一种非常有用的元素.        ---->分析类用于获取系统中主要的“职责簇”,他们代表系统的原型类,是系统必须处 ...

  9. <七>面向对象分析之UML核心元素之包

    一:基本概念 

  10. <五>面向对象分析之UML核心元素之边界

    一:基本概念

随机推荐

  1. logstash 利用drop 丢弃过滤日志

    input { stdin { } } filter { grok { match => ["message","\s*%{TIMESTAMP_ISO8601}\s ...

  2. NOI2013 UOJ122 向量内积

    神题...... 还是大神讲得比较清晰~orz http://dffxtz.logdown.com/posts/197950-noi2013-vector-inner-product 启发题:poj3 ...

  3. Codeforce 217 div2

    C 假设每种颜色的个数都相同,可以用轮换的方式,让答案达到最大n,当不同的时候,可以每次从每种颜色中取出相同个数的手套来操作; 一直迭代下去直到只剩下1种颜色; 再将这一种颜色与之前交换过的交换就行了 ...

  4. [HEOI 2013 day2] 钙铁锌硒维生素 (线性代数,二分图匹配)

    题目大意 给定两个n阶方阵,方阵B的行i能匹配方阵A的行j当且仅当在第一个方阵中用行向量i替换行向量j后,第一个方阵满秩,显然这是个二分图匹配问题,问是否存在完美匹配,如果存在,还要输出字典序最小的方 ...

  5. javascript笔记6之函数

    /* function box() { //函数的声明 alert('我只有被调用才可以执行!'); //函数本身没有运行功能 } //必须调用才可以执行 box(); //调用 function b ...

  6. java.lang.NoClassDefFoundError 异常

    在项目实施过程中,当访问某一个功能时,出现异常为  java.lang.NoClassDefFoundError  com/xxx/yyy/Zzzz > ,检查发现这个类实际已经存在于应用服务器 ...

  7. 一台机器同时运行多个appium实例

    测试需要同时在多个android设备上运行,就需要启动多个appium 第一台是运行微信: DesiredCapabilities capabilities = new DesiredCapabili ...

  8. python入门第一天,循环与判断

    学习一门新的语言最重要的就是练习. 一.脚本需求: 编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 二.脚本流程图: 写代码之前画个流程图总是好的,可以让你理清思路,避免写着写着 ...

  9. maven plugin在tomcat 热部署

    前言: 此处的方法适用于tomcat6 和 tomcat7,对于最新的tomcat8还没有进行过測试,有兴趣的同学能够自己測一下. 总共分为五步:         1.在tomcat中配置用户权限,即 ...

  10. C# IoC 容器

    Unity是Unity是微软patterns& practices组用C#实现的轻量级,可扩展的依赖注入容器,它为方便开发者建立松散耦合的应用程序, 有以下优点: 1.简化了对象的创建,特别是 ...