UML 第四章 UML核心视图

合集下载

UML物理视图节点.

UML物理视图节点.

UML物理视图节点
关键字:UML物理视图节点
·节点
节点是表示计算资源的运行时的物理对象,通常具有内存和处理能力。

节点可能具有用来辨别各种资源的构造型,如CPU 、设备和内存等。

节点可以包含对象和构件实例。

图9–3 部署图
节点用带有节点名称的立方体表示,可以具有分类(可选)(如图9–3)。

节点间的关联代表通信路径。

关联有用来辨别不同路径的构造型。

节点也有泛化关系,将节点的一般描述与具体的特例联系起来。

对象在节点内的存在用嵌套在节点符号内的对象符号来表示。

如果这样的表示不方便,对象符号可以包含表示它所在节点名称的location 标签。

节点间对象或构件实例的迁移也可以表示出来。

基于UML的人力资源管理系统的设计

基于UML的人力资源管理系统的设计

基于UML的人力资源管理系统的设计作者:李锐来源:《电脑知识与技术》2012年第31期摘要:随着信息技术的进步,人力资源管理系统积极地推动了企业的信息化发展。

该文基于UML,对人力资源管理系统进行设计,实现了系统建模。

关键词:人力资源管理系统;UML;设计;建模中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2012)31-7404-02随着信息技术的进步,高效率地完成人力资源管理的日常工作事务,已成为适应企业现代管理制度,推动企业管理走向规范化、科学化、系统化的必要条件。

随着人力资源管理工作范围的不断扩大,实行人工操作,势必会耗费工作人员大量的时间和精力,而利用计算机进行人力资源管理工作,不仅能够保证信息存储的准确无误、各类型报表的快速输出,而且还可以依靠计算机对各类人力资源信息进行查询与统计,极大地提高了人力资源管理的工作效率[1]。

鉴于以上优势,本文基于统一建模语言UML来对人力资源管理系统进行设计。

1统一建模语言UML统一建模语言UML(Unified Modeling Language)是一个支持软件开发所有阶段的模型化的图形化语言,是20世纪80年代末至90年代中面向对象的分析与设计方法的发展的产物,通过UML能绘制出软件的整体蓝图[2]。

UML适用于软件系统开发的各个过程阶段。

在需求分析阶段,可以利用用例来捕获用户需求,利用类图描述系统问题域的主要概念和机制;在设计阶段,为实现用例,类之间的协作使用动态模型来描述。

另外,UML模型是软件测试的依据,单元测试对应类图和类规格说明,集成测试对应部件图和合作图,系统测试对应用例图。

软件包含的信息很多,难以用一个视图来表达。

为了形象地表达出软件所包含信息,并详尽描述系统的整体特性和功能,UML中使用不同的视图从各个角度来描述软件系统,以准确地对其进行定义。

UML的视图包括以下五种:1)用例视图,是从外部角度(主要指用户)来以最直观的方式描述软件功能,是UML视图的核心,其他视图是依据用例视图来确定的。

UML简答题汇总

UML简答题汇总

真题汇总1.什么是用例图?用例图有什么作用?定义:由参与者、用例以及他们之间的关系构成的用于描述系统功能的图称为用例图。

作用:(1)用例图是从软件需求分析到最终实现的第一步,它显示了系统的用户和用户希望提供的功能,有利于用户和软件开发人员之间的沟通。

(2)用例图可视化的表达了系统的需求,具有直观、规范的特点,克服了纯文字性说明的不足。

(3)用例方法是完全从外部来定义系统的,它把需求和设计完全分离开来。

使用户不用关心系统内部是如何完成各种功能的。

2.简述面向对象分析方法(OOA)的5个基本步骤:(1)识别对象,识别对象包括标识潜在的对象和筛选对象.(2)识别对象的属性.(3)识别对象的行为。

(4)识别对象所属的类。

(5)定义主题词。

3.简述时序图的建模步骤:(1)设置交互语境。

(2)确定对象.(3)分析消息和条件。

(4)分析附加约束。

(5)对建模结果精华和细化。

4.RUP统一过程中的四个阶段.(1)初始阶段(2)细化阶段(3)构造阶段(4)移交阶段4.什么是模型?简述建模的目的.模型是为了理解事物而对事物做出的一种抽象。

是对事物规范化的、无歧义描述的一种工具。

目的:规范、可视化、建造、建档5.什么是UML?简述UML的内容及其特点?UML是面向对象工作组(OMG)系统的一种面向对象,用来对软件密集系统进行可视化建模,对开发的系统产品进行说明、可视化编制文档的一种标准建模语言。

内容:(1)UML语义:给出了基于UML的精确的主模型定义。

(2)UML表示法:定义了UML符号的表示方法,为开发者或开发工具使用这些图形符号和文本语法,给系统建模提供了标准。

特点:(1)有统一的标准,便于使用人员沟通.(2)是一种面向对象的建模语言.(3)可视化,表示能力强大,提供了扩展机制。

(4)容易使用。

6.UML2。

0中共有13种图,名称分别是什么?简要说明其作用。

用例图、类图、对象图、顺序图、通信图、活动图、状态机图、组件图、部署图、包图、复合结构图、交互概观图、定时图7.UML2.0中增加了2种交互图,他们的名称分别是什么?并简要说明其作用。

UML语言简述课后答案

UML语言简述课后答案

3.简答题(1)UML中的模型元素主要有哪些?答:UML语言中的模型元素包括事物和事物之间的联系。

一、事物UML语言中事物可以分为结构事物、动作事物、分组事物和注释事物。

1、结构事物结构事物分为:类、接口、协作、用例、活动类、组件和节点(1)类。

类是对具有相同属性、方法、关系和语义的对象的抽象,一个类可以实现一个或多个接口。

类用包括类名、属性和方法的矩形表示。

(2)接口。

接口是为类或组件提供特定服务的一组操作的集合。

(3)协作。

协作定义了交互操作。

一些角色和其他元素一起工作,提供一些合作的动作,这些动作比元素的总和要大。

UML中协作用虚线构成的椭圆表示。

(4)用例。

用例描述系统对一个特定角色执行的一系列动作。

在模型中用例通常用来组织动作事物,它是通过协作来实现的。

UML中,用例用标注了用例名称的实线椭圆表示。

(5)活动类。

活动类是类对象有一个或多个进程或线程的类。

在UML中活动类的表示法和类相同,只是边框用粗线条。

(6)组件。

组件是实现了一个接口集合的物理上可替换的系统部分。

(7)节点。

节点是在运行时存在的一个物理元素,它代表一个可计算的资源,通常占用一些内存和具有处理能力。

一个组件集合一般来说位于一个节点,但也可以从一个节点转到另一个节点。

2、动作事物UML语言中动作事物是UML模型中的动态部分,它们是模型的动词,代表时间和空间上的动作。

交互和状态机是UML模型中最基本的两个动态事物元素。

(1)交互。

交互是一组对象在特定上下文中,为达到某种特定的目的而进行的一系列消息交换组成的动作。

在交互中组成动作的对象的每个操作都要详细列出,包括消息、动作次数(消息产生的动作)、连接(对象之间的连接)。

(2)状态机。

状态机由一系列对象的状态组成。

3、分组事物分组事物是UML模型中组织的部分,分组事物只有一种,称为包。

4、注释事物注释事物是UML模型的解释部分。

二、UML语言中的关系1、关联关系关联关系连接元素和链接实例,它用连接两个模型元素的实线表示,在关联的两端可以标注关联双方的角色和多重性标记。

软件工程-课程目录-大纲视图(全国高等教育自学考试指定教材-计算机网络专业-独立本科)

软件工程-课程目录-大纲视图(全国高等教育自学考试指定教材-计算机网络专业-独立本科)

第一章绪论1.1 软件工程概念的提出与发展1.2 软件开发的本质1.3 本章小结第二章软件需求与软件需求规约2.1 需求与需求获取2.1.1需求定义2.1.2 需求分类2.1.3 需求发现技术2.2 需求规约2.2.1 需求规约定义2.2.2 需求规约(草案)格式2.2.3 需求规约(规格说明书)的表达2.2.4 需求规约的作用2.3 本章小结第三章结构化方法3.1 结构化需求分析3.1.1 基本术语1.数据流2.数据存储3.数据源和数据谭3.1.2 系统功能模型表示数据流图(Dataflow Diagram)3.1.3 建模过程1.建立系统环境图, 确定系统语境2.自顶向下, 逐步求精, 建立系统的层次数据流图3.定义数据字典数据流条目给出所有数据流的结构定义数据存储条目给出所有数据存储的结构定义数据项条目给出所有数据项的类型定义4.描述加工(1)结构化自然语言(2)判定表(3)判定树3.1.4 应用中注意的问题(1)模型平衡问题(2)信息复杂性控制问题3.1.5 需求验证3.2 结构化设计3.2.1 总体设计1.总体设计的目标及其表示(1)Yourdon提出的模块结构图(2)层次图(3)HIPO图2.总体设计步骤(1)变换型数据流图——变换设计(2)事物型数据流图——事物设计3.模块化及启发式规则(1)模块化1)耦合①内容耦合②公共耦合③控制耦合④标记耦合⑤数据耦合2)内聚①偶然内聚②逻辑内聚③时间内聚④过程内聚⑤通信内聚⑥顺序内聚⑦功能内聚(2)启发式规则1)改进软件结构, 提高模块独立性2)力求模块规模适中3)力求深度、宽度、扇出和扇入适中4)尽力使模块的作用域在其控制域之内5)尽力降低模块接口的复杂度6)力求模块功能可以预测3.2.2 详细设计1.结构化程序设计2.详细设计工具(1)程序流程图(2)盒图(N-S图)(3)PAD图(Problem Analysis Diagram)(4)类程序设计语言IPO图、判定树和判定表等也可以作为详细设计工具3.3 本章小结第四章面向对象方法——UML 4.1 UML术语表4.1.1 表达客观事物的术语1.类与对象1)类的属性(Attribute)2)类的操作3)关于类语义的进一步表达①详细叙述类的职责(Responsibility)②通过类的注解和/或操作的注解, 以结构化文本的形式和/编程语言, 详述注释整个类的语义和/或各个方法③通过类的注解或操作的注解, 以结构化文本形式, 详述注释各个操作的前置条件和后置条件, 甚至注释整个类的不变式④详述类的状态机⑤详述类的内部结构⑥类与其他类的协作4)类在建模中的主要用途①模型化问题域中的概念(词汇)②建立系统的职责分布模型③模型化建模中使用的基本类型2.接口(Interface)(1)采用具有分栏和关键字《interface》的矩形符号来表示(2)采用小圆圈和半圆圈来表示3.协作(Collaboration)4.用况(Use Case)5.主动类(Action Class)6.构件(Component)7.制品(Artifact)8.节点(Node)4.1.2 表达关系的术语1.关联(Association)(1)关联名(Name)(2)导航(3)角色(Role)(4)可见性(5)多重性(Multiplicity)(6)限定符(Qualifier)(7)聚合(Aggregation)(8)组合(Composition)(9)关联类(10)约束①有序(ordered)②无重复对象(set)③有重复对象(bag)④列表(list)或序列(sequence)⑤只读(readonly)2.泛化(Generalization)①完整(Complete)②不完整(Incomplete)③互斥(Disjoint)④重叠(Overlapping)3.细化(Realization)4.依赖①绑定(Bind)②导出(Derive)③允许(Permit)④实例(InstanceOf)⑤实例化(Instantiate)⑥幂类型(Powertype)⑦精化(Refine)⑧使用(Use)可模型化以下各种关系(1)结构关系1)以数据驱动2)以行为驱动(2)继承关系(3)精化关系(4)依赖关系4.1.3 表达组合信息的术语——包1)访问(Access)2)引入(Import)4.2 UML模型表达格式1.类图(Class Diagram)(1)模型化待建系统的概念(词汇), 形成类图的基本元素(2)模型化待建系统的各种关系, 形成该系统的初始类图(3)模型化系统中的协作, 给出该系统的最终类图(4)模型化逻辑数据库模式2.用况图(Use Case Diagram)所包含的内容(1)主题(Subject)(2)用况(Use Case)(3)参与者(Actor)(4)关联、泛化与依赖模型化工作1)关于系统/业务语境的模型化①系统边界的确定②参与者与用况的交互③参与者的语义表达④参与者的结构化处理2)关于系统/业务需求的模型化①确定系统/业务的基本用况②用况的结构化处理③用况的语义表达3.状态图(1)状态1)名字2)进入/退出效应(Effect)①entry②exit③状态内部转移3)do动作或活动4)被延迟的事件(2)事件1)信号(Signal)事件2)调用(Call)事件3)时间事件4)变化事件(3)状态转移①源状态②转移触发器③监护(guard)条件④效应(effect)⑤目标状态实际应用中, 使用状态图的作用①创建一个系统的动态模型②创建一个场景的模型4.顺序图(1)术语解析1)消息2)对象生命线3)聚焦控制(the Focus of Control)(2)控制操作子1)选择执行操作子(Operator for Optional Execution)2)条件执行操作子(Operator for Conditional Execution)3)并发执行操作子(Operator for Parallel Execution)4)迭代执行操作子(Operator for Iterative Execution)4.3 本章小结第五章面向对象方法——RUP5.1 RUP特点1.以用况为驱动2.以体系结构为中心3.迭代增量式开发5.2 核心工作流5.2.1 需求获取1.列出候选需求2.理解系统语境(1)业务用况模型(2)业务对象模型3.捕获系统功能需求(1)活动1: 发现并描述参与者(2)活动2: 发现并描述用况(3)活动3: 确定用况的优先级(Priority)(4)活动4: 精化用况(5)活动5: 构造用户界面原型1)用户界面的逻辑设计2)物理用户界面的设计3)开发用户界面原型并演示为了执行该用况, 用户怎样使用该系统(6)活动6: 用况模型的结构化5.2.2 需求分析1.基本术语(1)分析类(Analysis Class)1)边界类(Boundary Classes)2)实体类(Entity Classes)3)控制类(Control Classes)(2)用况细化(Use Case Realization)(3)分析包(Analysis Package)2.分析模型的表达3.分析的主要活动(1)活动1: 体系结构分析(Architectural Analysis)1)任务1: 标识分析包2)任务2: 处理分析包之间的共性3)任务3: 标识服务包4)任务4: 定义分析包的依赖5)任务5: 标识重要的实体类6)任务6: 标识分析包和重要实体类的公共特性需求(2)活动2: 用况分析1)任务1: 标识分析类①标识实体类②标识边界类③标识控制类2)任务2: 描述分析(类)对象之间的交互(3)活动3: 类的分析1)任务1: 标识责任2)任务2: 标识属性①关于实体类属性的标识②关于边界类属性的标识③关于控制类属性的标识3)任务3: 标识关联和聚合①关于关联的标识②关于聚合的标识③关于泛化的标识(4)活动4: 包的分析4.小结(1)关于分析模型1)分析包2)分析类3)用况细化(2)关于分析模型视角下的体系结构描述(3)用况模型和分析模型比较(4)分析模型对以后工作的影响1)对设计中子系统的影响2)对设计类的影响3)对用况细化[设计]的影响5.2.3 设计1.设计层的术语(1)设计类(Design Class)(2)用况细化[设计](3)设计子系统(4)接口(Interface)2.设计模型、部署模型以及相关视角下的体系结构描述(1)设计模型及其视角下的体系结构描述1)子系统结构2)对体系结构有意义的设计类3)对体系结构有意义的用况细化[设计](2)部署模型及该模型视角下的体系结构描述3设计的主要活动(1)活动1: 体系结构的设计1)任务1: 标识节点和它们的网络配置2)任务2: 标识子系统和它们的接口①标识应用子系统②标识中间件和系统软件子系统③定义子系统依赖④标识子系统接口3)任务3: 标识在体系结构方面有意义的设计类和它们的接口4)任务4: 标识一般性的设计机制①标识处理透明对象分布的设计机制②标识事务管理的设计机制(2)活动2: 用况的设计1)标识参与用况细化的设计类2)标识参与用况细化的子系统和接口(3)活动3: 类的设计1)任务1: 概括描述设计类2)任务2: 标识操作3)任务3: 标识属性4)任务4: 标识关联和聚合5)任务5: 标识泛化6)任务6: 描述方法7)任务7: 描述状态(4)活动4: 子系统的设计1)任务1: 维护子系统依赖2)任务2: 维护子系统所提供的接口3)任务3: 维护子系统内容4.RUP设计小结1)RUP设计的突出特点2)关于RUP的设计方法①给出用于表达设计模型中基本成分的4个术语, 包括子系统, 设计类, 接口, 用况细化[设计]②规约了设计模型的语法, 指导模型的表达③给出了创建设计模型的过程以及相应的指导3)RUP的设计模型①设计子系统和服务子系统②设计类(其中包括一些主动类), 以及他们具有的操作、属性、关系及其实现需求。

UML复习题选填简答整理

UML复习题选填简答整理

第一章UML入门填空:1、如果把众多事物进行归纳和分类,那么所依据的面向对象的特性是抽象。

2、面向对象中的表示层用于提供给用户使用和显示的界面。

3、UML中的元元模型层位于结构最上层,是组成UML最基本的元素,代表要定义的所有事物。

4、在UML2.0中用来表示类、组件、协作等模型元素内部结构的是组合结构图。

5、UML中的实现关系使用一条空心三角作为箭头的虚线作为其图形表示。

选择:1、下列不属于对象特性的是。

A、对象都是唯一的B、一滴水是一个对象C、一个对象肯定属于某个类别D对象必须是可见的2、如果要解决系统做什么应该使用。

A、面向对象的分析B、面向对象的设计C、面向对象的编程D、面向对象的开发3、面向对象中的描述了系统内部对象及其关系的静态结构。

A、对象模型B、状态模型C、交互模型D、类模型4、UML中的用于描述系统的实现模块以及它们之间的依赖关系。

A、组件视图B、用例视图C、逻辑视图D、部署视图5、下列不属于UML2.0中图的是。

A、协作图B、包图C、交互图D、组合结构图6、下列UML事物中表示协作的是。

A、B、C、D、InterfaceName简答题:1、简要说明UML中视图与图的关系。

答:UML的视图都是由一个或多个图组成的,图就是系统架构在某个侧面的表示,所有的图一起组成了系统的完整视图。

第二章用例图填空题:1、用例图标准关系有扩展、泛化关系、关联关系和包含关系。

2、用例图的组成有关系、系统、参与者和用例。

3、在UML中,用例用一个圆形来表示。

4、泛化关系使用一条实线和一个三角箭头来链接用例。

选择题:1、下列说法正确的是。

A.用例间的关系是后期开发需要的,对用例图没有影响。

B.扩展关系可以是用例间的,也可以是参与者间的。

C.泛化关系可以是用例间的,也可以是参与者间的。

D.包含关系表示为虚线箭头。

2、下列符号中表示扩展的是。

A. B. C. <<extends>>D. <<extends>>简答题:1、用例描述主要包括哪些方面?答:用例描述一般包括有:名称、标识符(可选)、参与者(可选)、状态(可选)、频率、前置条件、后置条件、假设(可选)、基本操作流程、可选操作流程、修改历史记录(可选)2、泛化描述了什么?答:泛化描述的是子用例与父用例的关系,子用例是父用例的特化,它除了可以具有父用例的特性外,还可以有自己的另外特性。

UML复习资料(完整)

UML复习资料(完整)

2011UML复习题纲一、选择、判断、填空第一章UML与面向对象1、UML(Unified Modeling Language,统一建模语言)是软件和系统开发的标准建模语言,它主要以图形的方式对系统进行分析、设计。

2、UML是在多种面向对象分析与设计方法相互融合的基础上形成的,是一种专用于系统建模的语言。

它为开发人员与客户之间,以及开发人员之间的沟通与理解架起了“桥梁”。

3、UML不是开发工具,只是建模语言。

4、OOA三种基本模型:功能模型、对象模型、动态模型。

5、软件是程序、数据和相关文档的完整集合。

6、软件开发过程分为如下几个阶段:需求分析、总体设计、详细设计、编程与测试、维护。

7、面向对象的软件工程方法包括面向对易用的分析(OOA)、面向对象的设计(OOD)、面向对象的编程(OOP)。

8、软件方法学包含3个要素:方法、工具和过程。

9、对象是现实世界中一个实际存在的事物,它可以是看得见摸得着的东西。

10、类是一组具有相同属性的操作的对象集合,它为所有属于该类的对象提供了统一的描述。

11、封装是指将对象属性和操作结合在一起,构成一个独立的对象。

封装使得对象属性和操作紧密结合在一起,这反映了事物的状态特性与动作是事物不可分割的特征。

12、继承是指子类可以拥有父类的全部属性和操作,继承是OO方法的一个重要的概念,并且是OO技术可以提高软件开发效率的一个重要原因。

13、多态性是指在父类中定义的属性和操作被子类继承后,可以具有不同的数据类型或表现出不同的行为。

14、OO开发中的三层设计:问题域类、GUI类和数据访问类。

15、面向对象设计准则:模块化、抽象、信息隐藏、低耦合、高内聚。

16、UML的构成:元元模型层、元模型层、模型层、用户模型层。

17、UML的核心是由视图、图、模型元素、通用机制组成。

18、UML中的视图细分:(1)用例视图(用例视图强调从系统的外部参与者角度需要的功能,描述系统应该具有的功能);(2)逻辑视图(逻辑视图的使用者主要是设计人员和开发人员,描述用例视图提出的系统功能的实现);(3)并发视图(并发视图的使用者主要是开发人员和系统集成人员,它主要考虑资源的有效利用、代码的并行执行以及系统环境中异步事件的处理);(4)组件视图(组件是不同类型的代码模块,它是构造应用的软件单元。

UML用例图

UML用例图
父用例 用例间的泛化关系 子用例
2013-10-09
34
用例间的关系:泛化关系
• 在用例泛化中,子用例表示父用例的特殊形式。 • 子用例从父用例处继承行为和属性,还可以添加、覆盖或改 变继承的行为。 • 如果系统中一个或多个用例是某个一般用例的特殊化时,就 需要使用用例的泛化关系。
参与者
2013-10-09 4
参与者
• 每个参与者可以参与一个或多个用例。它通过交换信息与用 例发生交互,而参与者的内部实现与用例是不相关的,可以 用一组定义其状态的属性充分描述参与者。
书籍查询 书籍预订 查询借阅信息
借书
借阅者
2013-10-09
还书
5
参与者
• 参与者包括人参与者和外部系统参与者。 系统的用户是人参与者,用户通过与系统的交互操纵系统, 完成所需要的工作。 外部系统也可以作为一个参与者,与本系统相互作用,交换 信息。外部系统可以是一个软件系统,也可以是一个硬件设 备。
<<use>>
书籍查询
书籍预订
ห้องสมุดไป่ตู้
登录系统
<<use>>
查询借阅信息
借书
<<extend>>
2013-10-09
借阅者
还书
交纳罚金
15
用例
• 用例不是需求或功能的规格说明,但它也展示和体现了其所 描述的过程中的需求情况。 规格说明只描述执行用例的主线次序、标准行为和一般行为。 用例需要描述执行用例的主线次序、标准行为(输入帐号) 的不同变形、一般行为下的所有异常情况及其预期反应, • 在UML中,用例用一个椭圆来表示,用例的名字可以写在椭 圆的下方。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.1.2.2 说明层类图
说明层类图考察的是类的接口,类图中表 达的类和类关系应当是对问题领域在接口 层次抽象的描述。
4.1.2.3 实现层类图
类图中的类直接映射到可执行代码。在这 个层次上,类必须明确采用哪种实现语言、 设计模式、通信标准、遵循规范等。
4.1.3 包图(package)
4.2.1.1 动作流
所有动作状态之间的转换流称之为动作流。
与状态图的转换相同,活动图的转换也用 带箭头的直线表示,箭头的方向指向转入 的方向。
4.2.1.1 分支与合并分支(Decisionቤተ መጻሕፍቲ ባይዱ& Merge)
分支一般用于表示对象类所具有的条件行为。 条件行为用分支和合并表达。 在活动图中分支与合并用空心小菱形表示。 一个分支有一个入转换和两个带条件的出转 换,出转换的条件应当是互斥的,这样可以 保证只有一条出转换能够被触发。 一个合并有两个带条件的入转换和一个出转 换,合并表示从对应的分支开始的条件行为 的结束。
第四章 UML核心视图
4.1 静态视图 4.1.1 用例图 4.1.2 类图 4.1.3 包图 4.2 动态视图 4.2.1 活动图 4.2.2 状态图 4.2.3 时序图 4.2.4 协作图
4.1 静态视图
静态视图就是表达静态事物的。它只描述 事物的静态结构,而不描述其动态行为。 静态视图包括用例图、类图和包图
4.2.1.1 动作状态(Action State)
动作状态是指执行原子的、不可中断的动 作,并在此动作完成后通过完成转换转向 另一个状态的状态。 动作状态使用平滑的圆角矩形表示,动作 状态所表示的动作写在圆角矩形内部。
Click Mouse
4.2.1.1 动作状态(Activity State)
使用包的不同版型来绘制包图时,包图就 展示了这个版型所寓意的软件观点。
4.2 动态视图
动态试图是描述事物动态行为的。
动态试图包括:活动图、状态图、时序图 和协作图
4.2.1 活动图(activity diagram)
活动图描述了为了完成某一个目标需要做 的活动以及这些活动的执行顺序。 活动是某件事情正在进行的状态。 活动在状态机中表现为一个由一系列动作 组成的非原子的执行过程。
4.1.1.1 业务用例视图
业务模块视角
业务模块视角
4.1.1.2 业务用例实现视图
业务用例实现视图展现业务用例有哪些实 现途径。
4.1.1.3 概念用例视图
概念用例视图用于展现从业务用例中经过 分析分解出来的关键概念用例,并表示概 念用例和业务用例之间的关系。 一般说这些关系有扩展、包含和精化。
4.2.1.1 活动图的组成元素
① ② ③ ④ ⑤ ⑥ ⑦ 组成UML的图形元素: 动作状态(Action State) 活动状态(Activity State) 动作流(Action Flow) 分支(Decision)与合并(Merge) 分叉(Fork)与汇合(Join) 泳道(Swimlane) 对象流(Object Flow)
4.2.1.1 活动状态(Action Flow)
活动状态用于表达状态机中的一个非原子 的运行。
活动状态的表示图标也是平滑的圆角矩形, 并可以在图标中给出入口动作和出口动作 等信息。
Make Plan
entry/ SetGoal
4.2.1.1 活动状态
活动状态的特点: ① 活动状态可以分解成其他子活动或动作状态, 由于它是一组不可中断的动作或操作的组合, 所以可以被中断。 ② 活动状态的内部活动可以用另一个活动图来表 示。 ③ 和动作状态不同,活动状态可以有入口动作和 出口动作,也可以有内部转移。 ④ 动作状态是活动状态的一个特例,如果某个活 动状态只包括一个动作,那么它就是一个动作 状态。
① ② ③ ④ 组成: 状态(State) 转换(Transition) 事件(Event) 动作(Action)
4.2.2 状态图—状态


状态由一个带圆角的 矩形表示。
状态图标可以分为三 部分: ① 名称 ② 内部转换 ③ 嵌套状态
4.2.2 状态图—转换
转换用带箭头的直线表示,一端连接源状态即转 出的状态,箭头一端连接目标状态即转入的状态。
4.1.1 用例图
对客户而言,用例视图是他们业务领域的 逻辑化表达。对开发者而言,用例视图是 系统蓝图和开发的依据。 用例视图是用来展现参与者和用例的。
4.1.1.1 业务用例视图
业务用例视图使用业务主角和业务用例展现业务 建模结果。 业务主角视图:从业务主角视角展示业务主角在 业务中使用哪些业务用例来达成业务目标。
活动图是一种描述系统行为的图,它用于 展现参与行为的类所进行的各种活动的顺 序关系。
4.2.1.1 用例活动图
用例表达了参与者的一个目标,用例场景 则描述了如何来达到这个目标。 活动图用来描述用例场景,即业务流程。 业务流程一般包括几个基本业务流程和一 个或多个备选业务流程,而业务流程则通 过多个活动按照一定的条件和顺序来推进。 活动可以是手动执行的任务,也可以是自 动执行的任务,每个活动完成一个工作单 元。
4.2.1.1 活动的分解
4.2.1.1 发送和接收信号
UML用凸五边形表示发送信号。当前面的 活动结束后,信号发送,然后开始下一活 动。 UML用凹五边形表示接收信号。当前面的 活动结束时,接收制品会等待,直到收到 信号,然后才开始下一个活动。
4.2.1.2 对象活动图
用于展示对象的交互。
动作 Exit:活动退出是要进行的动作
Activity
entry/ do/ event Undefined/ exit/
判断:判断根据某个条件进行决策,执行不同的流程 分支。 同步:同步起始和同步汇合。同步起始表示从它开始 多个分支并行执行;同步汇合表示多个分支同时达到 后再执行后续活动。 基本流:最主要、最频繁使用的、默认的业务流程分 支。 支流:不经常使用的,由某个条件触发的业务流程分 支。 异常流:非正常的、不是业务目标期待的、容错性的、 处理意外情况的业务流程分支。 组合活动:用嵌套的活动来表示。
4.2.2 状态图(State Diagram)
状态图显示一个状态机。状态机用于对模 型元素的动态行为进行建模,即对系统行 为中受事件驱动的方面进行建模。 通常使用状态图来说明业务角色或业务实 体可能的状态—导致状态转换的事件和状 态转换引起的操作。 状态图通常会简化对类的设计的确认。
Query price
feeBill
[unpaid]
Pay Money
Play Badminton
feeBill
[paid]
4.2.1.1 活动的分解
一个活动可以分为若干个动作或子活动, 这些动作和子活动本身可以组成一个活动 图。 一个包含子活动的活动和嵌套了子状态的 组合状态类似,概念上也相对统一。 一个不含内嵌活动或动作的活动称之为简 单活动;一个嵌套了若干活动或动作的活 动称之为组合活动,组合活动有自己的名 字和相应的子活动图。
获得业务用例之后,通过用例场景来说明 如何达到业务目标,以业务主角和业务工 人作为泳道,以工作单元作为活动来编排 活动图来描述用例场景。 能够
帮助发现概念用例 帮助发现角色 帮助发现业务实体 帮助建立领域模型
4.2.1.6 活动图与流程图的区别
① 流程图着重描述处理过程,它的主要控制 结构是顺序、分支和循环,各个处理之间 有严格的顺序和时间关系;而活动图描述 的则是对象活动的顺序关系所遵循的规则, 它着重表现的是系统的行为,而非系统的 处理过程。 ② 活动图能够表示并发活动的情形,而流程 图做不到。 ③ 活动图是面向对象的,而流程图是面向过 程的。
4.2.1.1 分叉与汇合
4.2.1.1 对象流
对象流是动作状态或者活动状态与对象之间的 依赖关系,表示动作使用对象或者动作对对象 的影响。 对象流中的对象特点: ① 一个对象可以由多个动作操纵。 ② 一个动作输出的对象可以作为另一个动作输入 的对象。 ③ 在活动图中,同一个对象可以多次出现,它的 每一次出现表明该对象正处于对象生存期的不 同时间点。
动作状态的特点: ① 动作状态是原子的,它是构造活动图的最小单 位,已经无法分解为更小的部分。 ② 动作状态是不可中断的状态,它一旦开始运行 就不能中断,一直运行到结束。 ③ 动作状态是瞬时的行为,它所占用的处理事件 极短,有时甚至可以忽略。 ④ 动作状态可以有入转换,入转换既可以是动作 流,也可以是对象流。动作状态至少有一条出 转换,这条转换以内部动作的完成为起点,与 外部事件无关。 ⑤ 动作状态和状态图中的状态不同,它不能有入 口动作和出口动作,更不能有内部转移。 ⑥ 在一张活动图中,动作状态允许多处出现。
活动图示例
起始点:标记业务流程的开始。 结束点:表示业务流程的终止。一个活动 图有一个或多个结束点。 活动:活动是业务流程中的一个执行单元。 在UML中,活动被赋予了四个特定的事件。
Entry:进入活动时要执行的动作 Do:活动执行过程中要进行的动作
Event:活动执行中接收到某个事件是执行的
4.2.1.1 对象流
对象流用带有箭头的虚线表示。如果箭头 从动作状态出发指向对象,则表示动作对 对象施加了一定的影响。如果箭头从对象 指向动作状态,则表示该动作使用对象流 所指向的对象。
4.2.1.1 对象流
Guest Manager
Enter into gymnasium
Look for field Quoted price
4.1.1.4 系统用例视图
系统用例视图是系统的开发范围
4.1.1.5 系统用例实现视图
一个系统用例有多种实现方式
相关文档
最新文档