UML核心元素--参与者
定义:参与者是在系统之外与系统交互的某人或某事物。参与者在建模过程中处于核心地位。
1、系统之外:系统之外的定义说明在参与者和系统之间存在明确的边界,参与者只能存在于边界之外,边界之内的所有人和事务都不是参与者。
2、参与者可以非人:不存在没有参与者的用例,用例不应该自动启动,也不应该主动启动另一个用例。没有人参与的需求一定有别的事务在发出启动操作,这个事务就是参与者,可能是另一个计算机系统、一个计时器、一个传感器等。
3、特点:参与者对系统有着明确的目标和要求并且主动发出动作;
系统是为参与者服务的。
4、边界不同,参与者会随之变化:
(1)机票购买者通过登录网站购买机票:机票购买者;
(2)机票购买者通过呼叫中心,由人工坐席操作订票系统购买机票:人工坐席是订票系统的参与者,机票购买者是呼叫中心的参与者;
(3)机票购买者通过呼叫中心的自动语音提示预定机票:呼叫中心是订票系统的参与者(参与者非人);
(4)扩大系统边界,呼叫中心只是订票系统的子系统,那么上述三种情况下,机票购买者都是参与者,人工坐席变成了业务工人。
5、业务主角:业务主角是参与者的一个版型,它针对的是业务人员而非计算机用户,用来确定业务范围,在需求阶段使用,没有计算机系统这些业务人员也客观存在。
版型:版型是对UML元素基础定义的扩展,在同一元素基础定义的基础上赋予特别的含义,是这个元素适用于特定的场合。
例如,类有“接口”、“边界类”、“实体类”和“控制类”。
业务范围与系统范围:业务范围不同于系统范围,业务范围指这个项目所涉及的所有客户业务,这些业务有没有计算机系统参与都客观存在。
系统范围是指软件将要实现的那些对应于业务功能的系统功能,从功能性需求来说系统范围是业务范围的子集。但是一些系统功能会超出业务范围,例如,操作日志。
站在业务主角的立场上看到的边界是业务范围的边界而非系统范围边界。
6、业务工人:业务工人不是参与者!
首先,业务工人处于边界内参与业务的执行;
其次,业务工人只是系统给的相应器,不会主动发起动作,以订票为例,购票人不拨打电话人工坐席是不会订票的。
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里有一个概念叫版型.有些书里也称类型,构造型. --->这个概念是对一个UML元素基础定义的扩展.在同一个元素基础定义的基础上赋予特别 ...
- <十>面向对象分析之UML核心元素之关系
关系 --->在UML中关系是非常重要的语义,它抽象出对象之间的联系,让对象构成特定的结构. 一,关联关系(association)
- <八>面向对象分析之UML核心元素之分析类
一:基本概念 ---->在那大数项目中,分析类是被忽视的一种非常有用的元素. ---->分析类用于获取系统中主要的“职责簇”,他们代表系统的原型类,是系统必须处 ...
- <五>面向对象分析之UML核心元素之边界
一:基本概念
- <四>面向对象分析之UML核心元素之用例
一:基本概念 --->用例定义了一组用例实例,其中每个实例都是系统所执行一系列操作,这些操作生成特定主角可以观测的值. --->所谓用例,就是一件事情,要完成这 ...
- UML核心元素--边界
定义:边界是无形的,是可大可小的,同时参与者.用例和边界又有着相生相克的性质.与其说边界是UML元素,还不如说它是一种分析方法. 1.需求是动态的过程:系统边界是无形的,看不到的,不好理解,倒不如说需 ...
- <十二>面向对象分析之UML核心元素之节点和设备
节点,设备
- <九>面向对象分析之UML核心元素之设计类,类,属性,方法,可见性
设计类
随机推荐
- 我的Android进阶之旅------>Android中StateListDrawable支持的状态
Android中StateListDrawable支持的状态 android:state_active 代表是否处于激活状态 android:state_checked 代表是否处于已勾选状态 an ...
- emmet缩写格式
2016年5月30日 10:10 标准网页<!DOCTYPE html> <html lang="zh-CN"> <head> <meta ...
- Android Screen Orientation
Ref:Android横竖屏切换小结 Ref:Android游戏开发之横竖屏的切换(二十七)
- (转)RequireJS shim 用法说明
RequireJS中如果使用AMD规范,在使用的过程中没有太多的问题,如果加载非AMD规范的JS文件,就需要使用Require中的shim. require.config({ paths:{ jque ...
- 使用阿里云的PyPI源
方法1:(1)创建pip.conf文件 (2).编辑如下内容 [global] index-url = http://mirrors.aliyun.com/pypi/simple/ [install] ...
- KinedEditor特性
谷歌浏览器会将kindeditor在其他js文件加载完之后加载 kindeditor是异步加载,document.ready完了,kindeditor可能还没加载完 kind会将选区变成一个节点 1. ...
- css 分析
.important.warning {background:silver;} .important .warning {background:silver;} //上面有什么区别? //1.2个选择 ...
- [算法]在数组中找到出现次数大于N/K的数
题目: 1.给定一个整型数组,打印其中出现次数大于一半的数.如果没有出现这样的数,打印提示信息. 如:1,2,1输出1. 1,2,3输出no such number. 2.给定一个整型数组,再给 ...
- HDU 找到唯一的冠军
产生冠军 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & ...
- LINQ 学习路程 -- 查询操作 OrderBy & OrderByDescending
Sorting Operator Description OrderBy 通过给定的字段进行升序 降序 排序 OrderByDescending 通过给定字段进行降序排序,仅在方法查询中使用 Then ...