参与者(actor):在系统之外与系统交互的某人或某事物。例如,管理员,用户等等。

参与者位于边界之外,边界之内的都不叫参与者。用一个词来形容更准确,主角。也就是只有主动启动了这个业务的人,才是参与者。

第二点要注意的是,参与者可以非人。参与者可以是另一个计算机系统、一个计时器、一个传感器等。任何一个功能性需求,都有参与者启动。

我们通过机票预订系统来分析一些情况。

情况一:机票购买者通过登录网站购买机票,那么机票购买者就是参与者。

情况二:假如机票购买者通过呼叫中心,由人工座席操作订票系统购买机票,那么人工座席才是真正的参与者,而机票购买者是呼叫中心的参与者。

情况三:如果机票购买者通过呼叫中心的自动语音预定机票而不是通过人工座席,那么呼叫中心就成为机票预定系统的一个参与者。

情况四:如果扩大系统边界,让呼叫中心成为机票预定系统的一个子系统,并且假设机票购买者可以自主选择是通过人工座席、自动语音还是登录网站预定机票,那么机票购买者是参与者,而人工座席则变成业务工人。

业务主角(business actor):业务主角是参与者的一个版型。业务主角,针对的是业务人员而非计算机用户。在没有计算机系统,这些业务人员 也客观存在,在引入计算机系统之前他们的业务也一直跑得很顺畅。

在建设一个符合客户需要的计算机系统之前,首要条件是很好地搞清楚客户的业务。

在初始需求阶段,务必使用业务主角,业务主角是客户实际业务里的参与者,没有计算机系统,没有抽象的计算机角色。

业务主角,必须在实际业务里能找到对应的岗位或人员。

业务工人(business worker):有些人员参与了业务,但是身份很尴尬,他是被动参与业务的。这些在系统边界内的人员,被称为业务工人。

通过三个问题,来分析是否是业务工人。

一、他是主动向系统发出动作的吗?

二、他有完整的业务目标吗?

三、系统是为他服务的吗?

如果答案都是否定的,那他一定是业务工人。

涉众(stakeholder),也称为干系人。参与者是涉众代表。例如要建立一个办公自动化系统,这儿系统将为所有办公室文员归档和查找文件带来利益。但是并不需要把所有的办公室文员都找来询问需求,一个称为“文员”的参与者可以代表这批涉众来向系统提供如何归档和如何查询的要求。

myself:突然感觉,系统的好处就是在于文档的电子化,方便查询和归档。我们目前要为聋校做的系统,也是一个电子归档化的过程。将老师平时的一些电子稿信息归档。但是前提,要有一些基础信息的管理。包括老师和学生的一些基础信息。学生的健康信息等。老师上课的信息与工资信息等等。学生的听力信息管理等等。老师考核信息管理,学生成绩管理。等多角度的文档归档与查询。说白了,就是这样。没那么神秘。

用户(user):是指系统的使用者,通俗点说就是系统的操作员。用户是参与者的代表,或者说参与者的实例或代理。并非所有的参与者都是用户,但是一个用户可以代理多个参与者。

角色(role):是参与者的职责。是参与者职责中抽象出相同的那一部分。一个用户可以代理多个参与者,拥有多个职责,指定为多个角色。

通过这个图,来理解参与者与各概念之间的关系。

UML--核心元素之参与者Actor的更多相关文章

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

    一:版型        --->在UML里有一个概念叫版型.有些书里也称类型,构造型.        --->这个概念是对一个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核心元素之用例

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

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

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

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

    一:基本概念

  8. UML核心元素--边界

    定义:边界是无形的,是可大可小的,同时参与者.用例和边界又有着相生相克的性质.与其说边界是UML元素,还不如说它是一种分析方法. 1.需求是动态的过程:系统边界是无形的,看不到的,不好理解,倒不如说需 ...

  9. <十二>面向对象分析之UML核心元素之节点和设备

    节点,设备

  10. 【笔记】UML核心元素

    1.参与者 定义:在系统之外与系统交互的某人或某物. 特点:1.可以非人:2.与系统直接交互:3.主动发出动作并获得反馈:4.涉众(stakerholder)的代表 具有两个版型: 1.业务主角(bu ...

随机推荐

  1. 2015第24周二Spring事务2

    今天继续深入学习SPring事务,发现网上很多文章都是很相似的转载没多少价值,就觉得更有必要把这个主题深入下去,先是摘录那些对自己有用的观点,后期再结合源码进行全面的整理. Spring提供了许多内置 ...

  2. hdu4085

    http://acm.hdu.edu.cn/showproblem.php?pid=4085 斯坦纳树. 用状压DP. 一共有2K个关键点:1,2...,K和N-K+1,N-K+2...,N,我们用一 ...

  3. ZooKeeper编程指导

    简介 对于想要利用ZooKeeper的协调服务来创建一个分布式应用的开发人员来说,这篇文章提供了指导.包含了一些概念和实际性操作的信息. 这篇文章的前四个章节介绍了各种ZooKeeper的概念,这对理 ...

  4. SecureCRT 安装及初始化配置

    安装 SecureCRT 7.3.4 安装以及破解方法 SecureCRT 6.5.0 汉化解压版 初始化配置 这里配置以SecureCRT 6.5.0 汉化解压版为例 1.调整SecureCRT终端 ...

  5. HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth之全然具体解释

      HTML:scrollLeft,scrollWidth,clientWidth,offsetWidth究竟指的哪到哪的距离之全然具体解释scrollHeight: 获取对象的滚动高度. scrol ...

  6. JMeter创建FTP测试

    FTP服务主要提供上传和下载功能.有时间需要我们测试服务器上传和下载的性能.在这里我通过JMeter做一个FTP测试计划的例子. * 使用的是JMeter2.4版本. * 测试的服务器是IP:124. ...

  7. [RxJS] Completing a Stream with TakeWhile

    Subscribe can take three params: subscribe( (x)=> console.log(x), err=> console.log(err), ()=& ...

  8. sqlite创建数据库问题

    1.<Sqlite权威指南>上说是这么创建数据库的: sqlite3 test.db 但是我写了这条语句之后出现了下面的情况(注:安装Sqlite过程见 ...) 我的sqlite3放在 ...

  9. (转)一小时搞定DIV+CSS布局-固定页面开度布局

    本文讲解使用DIV+CSS布局最基本的内容,读完本文你讲会使用DIV+CSS进行简单的页面布局. 转载请标明:http://www.kwstu.com/ArticleView/divcss_20139 ...

  10. Java关键字transient和volatile

    transient标记的变量,在进行序列化的时候,这个字段不进行序列化操作. volatile标记的变量,在进行读写时,必须强制的与内存同步,即在读的时候需要从内存中读取,写的时候也需要回写到内存中. ...