第4章 业务流程建模.ppt_第1页
第4章 业务流程建模.ppt_第2页
第4章 业务流程建模.ppt_第3页
第4章 业务流程建模.ppt_第4页
第4章 业务流程建模.ppt_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2020/10/10,DMKD Sides By MAO,1,第四章 业务流程建模,2020/10/10,DMKD Sides By MAO,2,4.1 概述,业务流程通常很复杂,因为在对付独特而瞬息万变的环境时,人们会不断进行大量的更改。若没有正式文档和流程管理系统的话,这些流程复杂性就会使组织遇到障碍和“瓶颈”。一个构建良好的业务流程模型可以帮助人们定位和消除不易察觉的低效、高成本和迟缓的业务流程。,2020/10/10,DMKD Sides By MAO,3,业务流程模型的多种用途: 1、记录现有的流程 2、确定人员、系统和设施方面的需求。 3、规划对现有过程和系统进行的修改。 4、测试

2、并分析现有的过程和建议的流程。,2020/10/10,DMKD Sides By MAO,4,对于大型的业务流程系统,由于流程非常复杂,新系统在上线运行之前很难取到有效的数据作为分析样本。众多问题只能在运行环境才能发现,于是又需要针对新发现的问题分析,进行分析,再上线,会容易陷入不断修改的怪圈。 那么如何避免这个怪圈呢? 建模器Modeler,2020/10/10,DMKD Sides By MAO,5,通过Modeler建立好业务流程以后,可以根据现实需求仿真运行时的数据,Modeler能够采集到整个模拟运行期间的各种数据指标,这些数据都是通过各种概率算法高仿真模拟运行时状态得到的,和上线后

3、的数据比较接近。这样一来,通过完善流程、细化各种配置,客户可以尽量让流程符合实现需求,减少系统“瓶颈”。 仿真运行发现问题并分析再优化流程,2020/10/10,DMKD Sides By MAO,6,除此之外,Modeler 可以作为业务人员和技术人员的沟通桥梁。 业务建模器作为业务视角和技术视角的一个中间点,提供了一套丰富的流程建模功能,包括许多图形化及文本编辑器、业务操作模型(Business Operation Model:BOM),以及用于将BOM转换成相应的目标平台构件的转换机制。,2020/10/10,DMKD Sides By MAO,7,4.2 业务建模工具, 非专业的工具

4、Microsoft公司的Visio工作流; Microsoft公司的Powerpoint。 完善的带有更多符号的专业技术工具 IDEF流程图 UML活动图 IBM公司的Websphere业务建模图形工具 BPEL业务流程 UML状态机。,2020/10/10,DMKD Sides By MAO,8,4.3 业务流程的图形符号表示方法,4.3.1 ANSI系统流程图符号标准,2020/10/10,DMKD Sides By MAO,9,1、循环结构,(1)图形: (2)意义:处理程序循序进行。 (3)语法:DO 处理程序1 THEN DO 处理程序2,处理程序1,处理程序2,2020/10/10

5、,DMKD Sides By MAO,10,(4)实例: (5)运用时机: 本结构适用于具有循序发生特性之处理程序,而绘制图形上下顺序 就是处理程序进行顺序。,培训需求调查,形成培训需求分析报告,2020/10/10,DMKD Sides By MAO,11,Diagram,2、选择结构(Selection) 2.1 二元选择结构(基本结构) (1)图形: (2)意义:流程依据某些条件,分别进行不同处理程序。 (3)语法:IF 条件 THEN DO 处理程序1 ELSE DO 处理程序2,处理程序1,条件,处理程序2,是,否,2020/10/10,DMKD Sides By MAO,12,(4

6、)实例: (5)运用时机: 1.本结构适用于须经选择或决策过程,再依据选择或决策结果,择一进行不同处理程序。 2.选择或决策结果,可以用是、否、通过、不通过或其它相对文字,来叙明不同路径处理程序。 3.经选择或决策结果之二元处理程序,可以仅有一个,例如:仅有是或否的处理程序。,批准,是否计划内,驳回,是,否,外训申请,2020/10/10,DMKD Sides By MAO,13,Diagram,2.2 多重选择结构(二元选择结构变化结构) (1)图形: (2)意义:流程依据某些条件,分别进行不同处理程序。 (3)语法:FOR 条件P CASE 1 DO 处理程序1 CASE 2 DO 处理程

7、序2 CASE n DO 处理程序n,处理程序1,条件P,处理程序n,P=1,P=n,处理程序1,P=2,2020/10/10,DMKD Sides By MAO,14,(4)实例: (5)运用时机: 1.本结构是二元选择结构之变化,流程依据选择或决策结果,择一进行不同处理程序。 2.选择或决策结果路径名称,可用不同文字,来叙明不同路径之处理程序。,外聘内训,培训方式选择,E-Learning,外派培训,2020/10/10,DMKD Sides By MAO,15,3、重复结构(Iteration),3.1 REPEAT-UNTIL结构 (1)图形: (2)意义:重复执行处理程序直到满足某一

8、条件为止,即直到条件变成真(True)为止。 (3)语法:REPEAT-UNTIL 条件 DO 处理程序,处理程序,条件,是,否,2020/10/10,DMKD Sides By MAO,16,(4)实例: (5)运用时机: 1.本结构适用于处理程序依据条件需重复执行的情况,而当停止继续执行的条件成立后,即离开重复执行循环至下一个流程。 2.本重复结构是先执行处理程序,再判断条件是否要继续执行。,课程试讲,评审,通过,不通过,课件制作,颁证备案,2020/10/10,DMKD Sides By MAO,17,3.2 DO-WHILE结构 (1) 图形: (2)意义:除了在执行处理程序之前,得先

9、测试条件外,DO-WHILE结构和REPEAT-UNTIL结构很相似,若条件为伪(False),就不再执行处理程序。 (3)语法:DO-WHILE 条件 DO 处理程序,处理程序,条件,是,否,2020/10/10,DMKD Sides By MAO,18,(4)实例: (5)运用时机: 1.本结构适用于处理程序依据条件需重复执行的情况,而当停止继续执行的条件成立后,即离开重复执行循环至下一个流程。 2.本重复结构是先判断条件是否成立,再执行处理程序。,实施行为转化,培训后 未转化,是,否,评估效果,2020/10/10,DMKD Sides By MAO,19,四、流程图绘制原则,1、流程图

10、分中心主轴及旁支说明,主轴内各流程图文字请键入KEY WORD,各细部流程若需补充说明,请精简条列以虚线旁支说明,每点以不超过二行为原则(请见范例)。 2、各项细部流程有办理期程者,应注明。 3、各项步骤有选择或决策结果,如(可、否)、通过、不通过或其它相对文字时,请回馈校正流程是否有遗漏,以避免悬而未决状况。 4、注意各流程图动线勾稽的合理性、并考虑是否需建置分表或合成简要总表,分表与总表应以符号、颜色或字段等区隔,使人一目了然。 5、流程图符号绘制排列顺序,为由上而下,由左而右。,2020/10/10,DMKD Sides By MAO,20,6、处理程序请以阿拉伯数字,由1开始,依处理程

11、序排列顺序编号,并以文 字依处理程序功能命名。文字命名部份,以动词受词及简明扼要叙述为原 则。若须表示处理程序之单位,则在编号之后,加上单位名称。 【实例】,1.人力资源部:成立推动小组,2.人力资源部:小组成员工作分配,2020/10/10,DMKD Sides By MAO,21,处理程序若属并行操作关系,其编号请多加一码(如8.1,8.2等依序编号), 并宜排列在流程图同一高度,而下一个处理程序编号,则自动增加1(如9)。 【实例】,9.标准化项目文件撰写,8.1审核计划,8.2实施教育训练,未通过,通过,7.提报计划,2020/10/10,DMKD Sides By MAO,22,七、

12、处理程序须以单一入口与单一出口(Single-Entry, Single-Exit)特性 绘制。 【实例】 【修正前】 【修正后】,1.,2.,是,否,1.,2.,是,否,2020/10/10,DMKD Sides By MAO,23,八、流程图一页放不下时,可使用连接符号连接下一页流程图。同一页流程 图中,若流程较复杂,亦可使用连接符号来述明流程连接性。连接符号内请以文 数字标示,以资区别。 九、相同流程图符号宜大小一致。 十、路径符号宜避免互相交叉。 【实例】,1.,2.,是,否,3.,2020/10/10,DMKD Sides By MAO,24,十一、同一路径符号之指示箭头应只有一个。

13、 【实例】 【修正前】 【修正后】,1.,3.,是,否,2.,否,是,1.,3.,是,否,2.,否,是,2020/10/10,DMKD Sides By MAO,25,十二、开始符号在流程图中只能出现一次,但结束符号则不限。若流程图能 一目了然,则开始符号及结束符号可省略。 十三、选择结构及重复结构之选择或决策条件,文字叙述应简明清晰,路径 并加注是及否或其它相对性文字指示说明。 十四、流程图中若有参考到其它已定义流程,可使用已定义处理程序符号, 不必重复绘制。 【实例】,1.填报请购单,2.办理采购.,2020/10/10,DMKD Sides By MAO,26,十五、流程图若一页绘制不下

14、,可以使用阶层性分页绘制方式,并在处理程 序编号上表示其阶层性。 【实例】 【第一页】 【第二页:处理程序2的阶层性分页绘制】,1.,2.,3.,2. 1,2.2,是,否,2.3,2020/10/10,DMKD Sides By MAO,27,范例:内部讲师选拔与评聘流程,2020/10/10,DMKD Sides By MAO,28,4.3.2 IDEF 表示法,IDEF的基本概念是在70年代提出的结构化分析方法的基础上发展起来的。IDEF是ICAM DEFinition method的缩写,后来就称之为integration definition method。 刚开始时,此方法由3部分组

15、成: IDEF0描述系统的功能活动及其联系,在ICAM( Integrated CAM)中建立加工制造业的体系结构模型,其基本内容是SADT的活动模型方法。这是由SoftTech公司发展起来的。 IDEF1描述系统信息及其联系,建立信息模型作为数据库设计的依据。这是由Hughes飞机公司为主发展起来的。 IDEF2用于系统模拟,建立动态模型。这是由HOS公司为主发展起来的。,2020/10/10,DMKD Sides By MAO,29,现在KBSI公司正继续将此方法发展成一个系列: IDEF0,功能模型,(function modeling) IDEF1X,数据模型,(data modeli

16、ng) IDEF2,仿真模型设计,(simulation model design) IDEF3,过程描述需求,(process description capture) IDEF4,面向对象设计,(object oriented design) IDEF5,本体论描述获取,(ontology description capture) IDEF6,设计原理获取,(design rational capture) IDEF7,信息系统审定,(information system auditing),2020/10/10,DMKD Sides By MAO,30,IDEF8,人与系统接口设计,(h

17、uman-system interface design) 用户接口建模(user interface modeling) IDEF9,经营约束的发现(business constraint discovery) 场景驱动信息系统设计(scenario-driven IS design) IDEF10,信息制品建模(information artifact modeling ) 实施体系结构建模(implementation architecture modeling) IDEF11,信息工具建模(information artifact modeling) IDEF12,组织设计(organ

18、ization design) 组织建模(organization modeling) IDEF13,三模式映射设计(three schema mapping design) IDEF14,网络设计(network design),2020/10/10,DMKD Sides By MAO,31,IDEF0方法是ICAM中的一个内容,用来建立加工制造业的体系结构模型。它是由Softech 公司发展起来的。 IDEF0方法是在结构化分析和设计技术(SDAT)图形化语言的基础上发展起来的,适用于对系统进行分析的设计,特别是功能分析。 建立IDEF0模型通常是系统开发的第一项任务。,2020/10/1

19、0,DMKD Sides By MAO,32,IDEF0用活动框代表活动式功能,进入或从盒子出来的箭头依次代表输入、控制、输出和支持,2020/10/10,DMKD Sides By MAO,33,IDEF0方法是: 图形化的表达方式 简洁 作为群组间沟通的工具 有严谨的定义 组织性及功能性 具有层次状的结构(Hierarchy),2020/10/10,DMKD Sides By MAO,34,IDEF0是在功能分解的基础上对一个组织或系统的决策、行为和活动进行建模的方法。 作为一个交流工具,IDEF0以其简单的图形语义增强了领域专家在制定决策时的参与并便于取得一致性意见; 作为一个分析工具,

20、IDEF0有助于建模者判断执行了哪些功能、在执行这些功能时需要什么、当前系统的那些行为是正确的、哪些是错误的。 它具有以下一组基本特色,这些特色形成一种思维规则,适用于从计划阶段到设计阶段的各种工作。,2020/10/10,DMKD Sides By MAO,35,IDEF0的基本特色,自顶向下分解 在建模一开始,先定义系统的内外关系和来龙去脉 然后将该模块进行分解得到另一张图形 IDEF0提供的规则,保证了如何通过分解得到人们所需要的具体信息。一个模块在向下分解时,分解成不少于3个、不多于6个的子模块。,2020/10/10,DMKD Sides By MAO,36,IDEF1方法,IDEF

21、1方法是用来开发“信息模型”的,该信息模型表达了制造系统环境的信息结构和语义,主要用于: 1.判断组织中当前管理和使用的信息: 2.判断在需求分析中哪些问题是由于缺乏合适的信息管理方法造成的: 3.判断在待建系统中将处理哪些信息。 目前IDEF1基本上已被扩展版本IDEF1X所代替。 IDEF1是描述企业信息需求的一个有效方法,信息模型在企业的整个生命周期均有用的。,2020/10/10,DMKD Sides By MAO,37,实体(Entity) 连接关系(Connection relationship) 分类关系(Classification Relationship) 属性 (Attr

22、ibute) 键 (Key) 外键 (External Key),IDEF1X支持关系型数据库的设计,它给出了在进行概念概念一方案设计时必须考虑的语义结构。 IDEF1X适合于进行关系型数据库设计,对数据库的逻辑层设计特别有用。,2020/10/10,DMKD Sides By MAO,38,IDEF2用于系统模拟,建立动态模型。这是由HOS公司为主发展起来的。 IDEF2则因为其它仿真软件(如SLAM、SIMAN等)发展很快,覆盖了它所涉及的功能,很少有人再应用IDEF2,有点自然萎缩的倾向,2020/10/10,DMKD Sides By MAO,39,IDEF3是一种对过程和对象状态的描

23、述方法。它提出了一种结构化的方法来表示一个系统的工作状态及状态向的变换。 IDEF3方法用两个基本的组织结构 场景描述和对象来获取对过程的描述, 相应的有两种描述方式: 过程流网PFN( Process Flow Network) 对象状态转移图OSTN( Object State Transition Network Diagram)。,2020/10/10,DMKD Sides By MAO,40,过程 (Process) 条件分岔 (Junction) 连接 (Link) 参考指针 (Referent),过程流网是以过程为中心的视图, 它注重过程中活动的出现及其次序。 IDEF3用过程流

24、网作为获取、管理和显示以过程为中心的知识的主要工具。在过程流网中包含了不同人员对事件与活动、参与这些事件的对象、以及操纵这些事件的行为之间的约束关系等知识,2020/10/10,DMKD Sides By MAO,41,方盒代表一个行为单元( unit of behavior-UOB) , 连接这些盒子之间的箭头称为联结( link) , 联结反映了UOB之间的先后顺序或者约束关系。 带有“X”记号的方盒表示过程的分叉和汇合关系。,2020/10/10,DMKD Sides By MAO,42,4.3.3 UML活动图,UML中的图:用例图、类图、对象图、状态图、序列图、协作图、活动图、构件图

25、、部署图共九种 1、用例图 :用于显示若干角色,以及这些角色与系统提供的用例之间的连接关系。 2、类图:用来表示系统中的类和类之间的关系,它是对系统静态结构的描述。 3、对象图:是类图的变体,两者之间的差别在于,对象图表示的是类的对象实例,而不是真实的类。对象图是类图的一个范例。 4、序列图:用来反映若干个对象之间的动态协作关系,也就是随着时间的流逝对象之间是如何交互的。,2020/10/10,DMKD Sides By MAO,43,5、协作图:和序列图的作用一样,反映的也是动态协作,除了显示消息变化称为交互 外,协作图还显示了对象和它们之间的关系,称为上下文有关。由于协作图或序列图都反映对

26、象之间的交互,所以建模者可以任意选择一种反映对象间的协作,如果需要强调时间和序列,最好选择序列图,如果需要强调上下文相关,最好选择协作图。 6、状态图:是对类所描述事物的补充说明,它显示了类的所有对象可能具有的状态,以及引起状态变化的事件。 7、活动图:反映一个连续的活动流,相对于描述活动流来说,活动图更常用于描述某个操作执行时的活动状况。 8、构件图: 用来反映代码的物理结构 9、部署图:用来显示系统中软件和硬件的物理架构,2020/10/10,DMKD Sides By MAO,44,2、UML模型: 包含用例模型,静态模型,动态模型共三种 用例模型:从用户角度描述系统需求,是所有开发活动

27、的指南。包含:一或者多张用例图 静态模型:描述系统的元素与元素间的关系。包括:类图,对象图,构件图,部署图 动态模型:描述系统随时间发展的行为。包含:状态图,序列图,协作图,活动图,2020/10/10,DMKD Sides By MAO,45,2020/10/10,DMKD Sides By MAO,46,类图和对象图,面向对象的开发方法的基本任务是建立对象模型,是软件系统开发的基础。UML中的对象类图(Class Diagram)与对象图(Object Diagram)表达了对象模型的静态结构,能够有效地建立专业领域的计算机系统对象模型。,一、类图,是面向对象模型的最基本的模型元素,用类图

28、来描述。类图(Class diagram)由系统中使用的类以及它们之间的关系组成,是描述系统的一种图式,分为长式和短式。类及类型名均用英文大写字母开头,属性及操作名为小写字母开头。常见类型有:Char,Boolean,Double,Float, Integer, Object,Short,String等。类图是构建其它图的基础。,2020/10/10,DMKD Sides By MAO,47,类名,对象是对象类的实例(instance),用对象图来描述。对象图亦分长式和短式。,对象名,类图与对象图,对象图,2020/10/10,DMKD Sides By MAO,48,(1)属性(attrib

29、ute) 属性用来描述类的特征,表示需要处理的数据。 属性定义: visibility attribute-name : type = initial-value property-string 可见性 属性名:类型=缺省值约束特性 其中:可见性(visibility)表示该属性对类外的元素是否可见。 分为: public(+) 公有的,即模型中的任何类都可以访问该属性。 private(-) 私有的,表示不能被别的类访问。 protected(#) 受保护的,表示该属性只能被该类及其子类访问。 如果可见性未申明,表示其可见性不确定。,2020/10/10,DMKD Sides By MAO,

30、49,(2) 操作 对数据的具体处理方法的描述则放在操作部分,操作说明了该类能做些什么工作。操作通常称为函数,它是类的一个组成部分,只能作用于该类的对象上。 操作定义: visibility operating-name(parameter-list): return-type property- string 可见性 操作名(参数表):返回类型约束特性 其中:可见性同上。 参数表:参数名:类型, Parameter-name :type =default-value 返回类型:操作返回的结果类型。,类图的描述,2020/10/10,DMKD Sides By MAO,50,UML中类的关系有

31、关联(association) 、聚集(aggregation) 、泛化(generalization) 、 依赖(depending) ,实现。,一、关联 关联是表示实例之间的结构关系,图A 顾佣关联,UML中类之间的关系,依赖表示类之间的使用关系。泛化(概括)表示一般类和特殊类之间的关系。关联和聚集都表示实例之间的结构关系。,2020/10/10,DMKD Sides By MAO,51,聚集是一种特殊的关联,它指出类间的“整体-部分”关系。关联又分为:,1、聚集(aggregation) 聚集:整体类由部分类组成的关联,其中部分类可以独立于整体类而存在。,、组合 或组装(composit

32、ion) 组装:整体类由部分类组成的关联,其中部分类不可以独立于整体类而存在。整体与部分同时存在。,聚集,组合关系,2020/10/10,DMKD Sides By MAO,52,三、泛化,泛化指出类之间的“一般与特殊关系”,即继承关系。父类与子类之间构成类的分层结构。,抽象类 指没有实例的类,定义一些抽象的操作,即不提供实现方法的操作,只提供操作的特征。并附以abstract。 交叠泛化 在继承树中,若存在某种具有公共父类的多重继承,称为是交叠(overlapping)的。否则是不交的(disjoint)。 完全泛化 一般类特化出它所有的子类,称为完全泛化,记为complete。 不完全泛化

33、 即未特化出它所有的子类,称为是不完全泛化 的,表示为incomplete.,2020/10/10,DMKD Sides By MAO,53,三、泛化,完全泛化,泛化中的多态性 及带识别名称的泛化,propulsion,propulsion,2020/10/10,DMKD Sides By MAO,54,继承性的实例,泛化关系,2020/10/10,DMKD Sides By MAO,55,泛化关系,2020/10/10,DMKD Sides By MAO,56,用例建模技术,用于描述系统的功能需求。在宏观上给出模型的总体轮廓。通过对典型用例的分析,使开发者能够有效地了解用户的需求。,用例建模

34、概述,用例图,2020/10/10,DMKD Sides By MAO,57,用例模型(Use case model) 用例模型描述的是外部执行者(Actor)所理解的系统功能。它描述了待开发系统的功能需求。 它驱动了需求分析之后各阶段的开发工作,不仅在开发过程中保证了系统所有功能的实现,而且被用于验证和检测所开发的系统,从而影响到开发工作的各个阶段和 UML 的各个模型。 用例模型由若干个用例图构成,用例图中主要描述执行者和用例之间的关系。在UML中,构成用例图的主要元素是用例和执行者及其它们之间的联系。,创建用例模型的工作包括: 定义系统、确定执行者和用例、描述用例、定义用例间的关系、确认

35、模型。,2020/10/10,DMKD Sides By MAO,58,一、执行者(Actor) 执行者是指用户在系统中所扮演的角色。执行者在用例图中是用类似人的图形来表示, 但执行者可以是人,也可以是一个外界系统。,注意:用例总是由执行者启动的。,供货,买饮料,取货款,客户,供货人,收银员,自动售货系统,2020/10/10,DMKD Sides By MAO,59,二、 用例,二、用例(use case) 从本质上讲,一个用例是用户与计算机之间的一次典型交互作用。在UML中,用例被定义成系统执行的一系列动作(功能)。 用例有以下特点: 用例捕获某些用户可见的需求,实现一个具体的用户目标。

36、用例由执行者激活,并将结果值反馈给执行者。 用例必须具有功能上的完整描述。,二、用例,2020/10/10,DMKD Sides By MAO,60,用例图的元素,用例图,用例图描述了系统的功能需求,它是从执行者的角度来理解系统,由“执行者”、“用例”和“用例之间的关系”3类模型元素构成。图中还有另外两种类型的连接,即include和extend关系,是两种不同形式的泛化关系。,include表示一个用例使用另一个用例。(一定要先做) 如图(b)要实现用例1,2必顺要先去实现用例3 Extend通过向被扩展的用例添加动作来扩展用例。(不是非要做的,如图(c),实现用例A不一定必要先实现用例B)

37、,2020/10/10,DMKD Sides By MAO,61,用例图实例,用例图实例,金融贸易系统,贸易经理,风险分析,设置边界,进行交易,交易估价,更新帐目,包含,包含,扩展,营销人员,超越边界,评价,记帐系统,销售人员,2020/10/10,DMKD Sides By MAO,62,例1 建立项目与资源管理系统的Use case图,系统的主要功能是:项目管理,资源管理和系统管理。项目管理包括项目的增加、删除、更新。资源管理包括对资源和技能的添加、删除和更新。系统管理包括系统的启动和关闭,数据的存储和备份等功能。,1、分析确定系统的执行者(角色),项目管理员、资源管理员、系统管理员、备份

38、数据系统。,项目管理,资源管理和系统管理。,2、确定用例,3、对用例进行分解,画出下层的Use case图 对上层的用例进行分解,并将执行者分配到各层次的Use case图中。,角色描述模板,还应画出相应的执行者描述模板及用例描述模板。,2020/10/10,DMKD Sides By MAO,63,例1 项目与资源管理系统(PRMS),Use Case图可以自顶而下不断精化,抽象出不同层次的Use Case图。,2020/10/10,DMKD Sides By MAO,64,例1 项目与资源管理系统(PRMS),2020/10/10,DMKD Sides By MAO,65,顺序图存在两个轴

39、:水平轴表示一组对象,垂直轴表示时间。 顺序图中的对象用一个带有垂直虚线的矩形框表示, 并标有对象名和类名。垂直虚线是对象的生命线,用于表示在某段时间内对象是存在的。 对象间的通信通过在对象的生命线之 间消息来表示,消息的箭头类型指明消息的类型。,2.5.5 顺序图(序列图),顺序图(Sequence Diagram)用来描述对象之间动态的交互行为,着重体现对象间消息传递的时间顺序。,一、概述,2020/10/10,DMKD Sides By MAO,66,当收到消息时,接收对象立即开始执行活动,即对象被激活了,通过在对象生命线上显示一个细长矩形框来表示激活。,二、消息,2020/10/10,

40、DMKD Sides By MAO,67,带分支的顺序图,2020/10/10,DMKD Sides By MAO,68,呼叫者,交换,接受者,拿起话筒,响拨号声,拨号码,路由选择,鸣响音,停音,响铃声,接电话,停铃声,A B C D E,B-A1S C-B10S 通过网络选择通话路径 E-D5S 双方通话,打电话的顺序图,2020/10/10,DMKD Sides By MAO,69,创建对象与对象的消亡,在顺序图中,还可以描述一个对象通过发送一条消息来创建另一个对象。,当对象消亡(destroying)时,用符号 表示。,创建或删除对象,2020/10/10,DMKD Sides By M

41、AO,70,协作图(Collaboration Diagram),也称为合作图,用于描述相互合作的对象间的交互关系和链接(Link)关系。虽然顺序图和合作图都用来描述对象间的交互关系,但侧重点不一样。顺序图着重体现交互的时间顺序,合作图则着重体现交互对象间的静态链接关系。,协作图,一、 合作图中的模型元素,合作图中对象的外观与顺序图中的一样。如果一个对象在消息的交互中被创建,则可在对象名称之后标以new。类似地,如果一个对象在交互期间被删除,则可在对象名称之后标以destroy。,1、对象,对象名new,对象名destroy,2020/10/10,DMKD Sides By MAO,71,在对

42、象之间的静态链接关系上可标注消息,消息类型有简单消息,同步消息和异步消息三种。用标号表示消息执行的顺序。消息定义的格式如下: 消息类型标号 控制信息:返回值:=消息名 参数表,标号有种: 顺序执行:按整数大小执行。, 嵌套执行:标号中带小数点。1.1,1.2,1.3, 并行执行:标号中带小写字母。1.1.1a,1.1.1b,,Predecessor guard-condition sequence-expression return-value:=signature,2020/10/10,DMKD Sides By MAO,72,电路设计的合作图,在控制器控制下进行布线,找出左端点r0和右端点

43、r1,创建对象“直线”,并在窗口显示出来。,布线,2020/10/10,DMKD Sides By MAO,73,下图为一销售结果统计的合作图。,统计销售结果的合作图,2020/10/10,DMKD Sides By MAO,74,状态图(State Diagram)用来描述一个特定对象的所有可能的状态及其引起状态转移的事件。一个状态图包括一系列的状态以及状态之间的转移。 状态所有对象都具有状态,状态是对象执行了一系列活动的结果。当某个事件发生后,对象的状态将发生变化。状态图中定义的状态有:,状态图,初态状态图的起始点,一个状态图只能有一个初态。 终态是状态图的终点。而终态则可以有多个。 中间

44、状态可包括三个区域:名字域、状态变量与活动域。 复合状态可以进一步细化的状态称作复合状态。,2020/10/10,DMKD Sides By MAO,75,中间态,响应事件的内部动作或活动的列表,定义为: 事件名 (参数表条件)/动作表达式,状态变量 是状态图所显示的类的属性。 活动 列出了在该状态时要执行的事件和动作。有3个标准事件: entry事件用于指明进入该状态时的特定动作。 exit事件用于指明退出该状态时的特定动作。 do事件用于指明在该状态中时执行的动作。,例:,2020/10/10,DMKD Sides By MAO,76,状态迁移一个对象的状态的变迁称为状态迁移。通常是由事件

45、触发的,此时应标出触发转移的事件表达式。如果转移上未标明事件,则表示在源状态的内部活动执行完毕后自动触发转移。,状态图,电梯状态图,2020/10/10,DMKD Sides By MAO,77,细化的状态表示,UML给出了电梯细化的状态表示,状态名 状态变量 活动,2020/10/10,DMKD Sides By MAO,78,状态图之间的消息发送,状态图之间可以发送消息,用虚箭头表示。,消息发送状态图,2020/10/10,DMKD Sides By MAO,79,活动图是由状态图变化而来的,它们各自用于不同的目的。活动图描述了系统中各种活动的执行的顺序。刻化一个方法中所要进行的各项活动的

46、执行流程。 活动图中一个活动结束后将立即进入下一个活动(在状态图中状态的变迁可能需要事件的触发)。,活动图,一、概述,2020/10/10,DMKD Sides By MAO,80,二、活动图的模型元素,构成活动图的模型元素有:活动、转移、对象、信号、泳道等。,、活动 是构成活动图的核心元素,是具有内部动作的状态,由隐含的事件触发活动的转移。 活动的解释依赖于作图的目的和抽象层次,在概念层描述中,活动表示要完成的一些任务;在说明层和实现层中,活动表示类中的方法。 活动用圆角框表示,标注活动名。,2020/10/10,DMKD Sides By MAO,81,二、活动图的模型元素,活动还有其它的

47、图符:初态、终态、判断、同步。,图 5.55 活动,2、转移 转移描述活动之间的关系,描述由于隐含事件引起的活动变迁,即转移可以连接各活动及特殊活动(初态、终态、判断、同步线)。 转移用带箭头的直线表示,可标注执行该转移的条件,无标注表示顺序执行。,2020/10/10,DMKD Sides By MAO,82,活动图的模型元素:,泳道,3、泳道 泳道进一步描述完成活动的对象,并聚合一组活动。活动图是另一种描述交互的方式,描述采取何种动作,做什么(对象状态改变),何时发生(动作序列),以及在何处发生(泳道)。 泳道也是一种分组机制。,2020/10/10,DMKD Sides By MAO,8

48、3,活动图的模型元素:,泳道,3、泳道 泳道进一步描述完成活动的对象,并聚合一组活动。活动图是另一种描述交互的方式,描述采取何种动作,做什么(对象状态改变),何时发生(动作序列),以及在何处发生(泳道)。 泳道也是一种分组机制。,2020/10/10,DMKD Sides By MAO,84,活动图,、活动图中只有一个起点一个终点,表示方式和状态图一样,泳道被用来组合活动,通常根据活动的功能来组合。具体说泳道有如下目的:直接显示动作在哪一个对象中执行,或显示的是一项组织工作的哪部分。泳道用纵向矩形来表示,如图。,三、活动图举例,泳道,2020/10/10,DMKD Sides By MAO,85,、控制图符 活动图中可发送和接收信号,发送符号对应于与转移联系在一起的发送短句。接收符号也同转移联系在一起。,、对象流 活动图中可以出现对象,对象作为活动的输入输出,用虚箭头表示。,控制图符,图5.57 对象流,控制图符例,2020/10/10,DMKD Sides By MAO,86,、活动图中可发送和接收信号,发送符号对应于与转移联系在一起的发送短句。接收符号也同转移联系在一起。转移又分两种:发送信号的转移和接收信号的转移。发送和接收信号可以和消息的的发送对象和接收对象联系在一起,如图5.61。,aPrinter:Printer,Print(fil

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论