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核心元素之设计类,类,属性,方法,可见性
设计类
随机推荐
- Activiti使用过程_1
1 微信公众号:
- Bootstrap学习5--bootstrap中的模态框(modal,弹出层)
bootstrap中的模态框(modal),不同于Tooltips,模态框以弹出对话框的形式出现,具有最小和最实用的功能集. 务必将模态框的 HTML 代码放在文档的最高层级内(也就是说,尽量作为 b ...
- SpringBoot学习笔记(7):Druid使用心得
SpringBoot学习笔记(7):Druid使用心得 快速开始 添加依赖 <dependency> <groupId>com.alibaba</groupId> ...
- 每天一个Linux命令(22)find命令_命令详解
find命令的一些常用参数的常用实例和用时的注意事项. 实例: (1)-name参数: 1)[sunjimeng@localhost home]$ find ~ -name & ...
- ubuntu16.04 docker安装
docker官网安装页面:https://docs.docker.com/engine/installation/linux/ubuntu/ 这个是ubuntu14.04 LTS需要的 $ sudo ...
- 最小生成树prim算法 POJ2031
#include<iostream> #include<algorithm> #include<string.h> #include<ctype.h> ...
- mysql 事件(Event) 总结
1 事件简介 事件(event)是MySQL在相应的时刻调用的过程式数据库对象.一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”. 事件和触发器类似,都是在 ...
- django实现用户注册、登录、退出
视图 from django.contrib import auth from django.contrib.auth.models import User from django.views.dec ...
- 使用virtualenv构建python虚拟环境
hb@hb-pc ~ $ virtualenv --python=python3 --no-site-packages test Running virtualenv with interpreter ...
- Hibernate学习---第十四节:hibernate之session线程安全
1.hibernate.cfg.xml 文件中添加如下代码开启线程安全: <property name="hibernate.current_session_context_class ...