免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2015年下半年 信息系统项目管理师 上午试卷 综合知识
  第27题      
  知识点:   可视化建模与UML   UML图   建模
  关键词:   UML   建模        章/节:   信息系统及其技术和开发方法       

 
UML提供了各种图来描述建模过程,下图所示的UML图是一个(27)。
 
 
  A.  活动图
 
  B.  状态图
 
  C.  用例图
 
  D.  序列图
 
 
 

 
  第27题    2019年上半年  
   79%
项目成员张工绘制了四张类图,其中不正确的是( )。
  第26题    2015年下半年  
   30%
在统一建模语言中(26)的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求包括基于基本流程的“角色”关..
  第26题    2016年上半年  
   44%
使用UML对系统进行分析设计时,需求描述中的“包含”、“组成”、“分为......部分”等词常常意味..
   知识点讲解    
   · 可视化建模与UML    · UML图    · 建模
 
       可视化建模与UML
        1.统一建模语言
        概念
        统一建模语言(Unified Modeling Language,UML)是一种通用的可视化建模语言,它是面向对象分析和设计的一种标准化表示,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。
        UML描述了系统的静态结构和动态行为,它将系统描述为一些独立的相互作用的对象,构成为外界提供一定功能的模型结构,静态结构定义了系统中重要对象的属性和服务,以及这些对象之间的相互关系,动态行为定义了对象的时间特性和对象为完成目标而相互进行通信的机制。
        特征
        UML具有如下语言特征:
        .不是一种可视化的程序设计语言,而是一种可视化的建模语言。
        .是一种建模语言规范说明,是面向对象分析与设计的一种标准表示。
        .不是过程,也不是方法,但允许任何一种过程和方法使用它。
        .简单且可扩展,具有扩展和专有化机制,便于扩展,无须对核心概念进行修改。
        .为面向对象的设计与开发中涌现出的高级概念(如协作、框架、模式和组件)提供支持,强调在软件开发中对架构、框架、模式和组件的重用。
        .与最好的软件工程实践经验集成。
        发展
        面向对象技术和UML的发展经历了长期的过程。1996年底,UML已稳占面向对象技术市场的85%,成为可视化建模语言事实上的工业标准。1997年,OMG采纳UML1.1作为基于面向对象技术的标准建模语言,至今,UML已发展至2.X版本。UML代表了面向对象方法的软件开发技术的发展方向,具有巨大的市场前景。
        2.UML设计目标
        UML设计目标包括:
        .使UML成为一个通用的建模语言,可供所有建模者使用。
        .应能够很好地支持设计工作。
        .应该能够准确表达当前软件开发中的热点问题,比如软件规模、分布、并发、方法和团队开发等。
        .在尽可能简单的同时能够对应用系统的各个方面建模。
        3.UML中的关系
        UML中有4种关系:依赖、关联、泛化和实现。
        依赖(Dependency)
        表示两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物(依赖事物)的语义。用可能有方向的虚线表示,如下图所示。
        
        依赖关系
        关联(Association)
        是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(Aggregation)是一种特殊类型的关联,它描述了整体和部分间的结构关系。关联用下图表示,可以标注重复度和角色。
        
        关联关系
        聚集的图形化表示如下图所示。
        
        聚集的图形化表示
        泛化(Generalization)
        是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。图形上表示为一条带有空心箭头的实线,指向父元素,如下图所示。
        
        泛化关系
        实现(Realization)
        是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。有两种情况需要用到实现关系:一种是在接口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。图形上用一条带有空心箭头的虚线表示,如下图所示。
        
        实现关系
        4.UML中的图
        UML提供了9种主要的图来对待建系统进行建模。
        类图(Class Diagram)
        显示了一组对象、接口、协作和它们间的关系。在面向对象系统的建模中所建立的最常见的图就是类图,类图给出系统的静态设计视图,如下图所示。
        
        类图
        对象图(Object Diagram)
        显示了一组对象以及它们之间的关系。对象图描述了在类图中所建立的事物的实例的静态快照。和类图一样,对象图给出系统的静态设计视图或静态进程视图,但它们是从真实的或原型案例的角度建立的。这种视图主要支持系统的功能需求。利用对象图可以对静态数据结构建模。
        用例图(Use Case Diagram)
        显示了一组用例、参与者(actor)以及它们之间的关系。用例图通常包括用例、参与者、扩展关系、包含关系,如下图所示。
        
        用例图
        包含(include)关系为用例建模提供了从两个或更多用例的描述中抽取通用部分的能力。一般情况下,如果若干个用例的某些行为是相同的,则可以把这些相同的行为提取出来作为一个单独的用例,这个用例称作抽象用例,其他用例可以包含该抽象用例。所以,在描述用例之前就开始抽取包含用例是不可取的。在UML的较早版本中也有uses关系,在UML2.2中uses和includes被include取代,称为包含关系。
        扩展(extend)关系提供了使用另外的可选流程来补充或插入到一个已存在的用例中的能力。因此,这是一种能够扩展原用例却不用对原来的用例进行重新描述的方法。
        包含关系和扩展关系的区别:
        .包含关系中,对基用例来说,如果缺少了被包含用例,则基用例不完整;扩展关系中,如果去掉扩展关系,基用例仍然完整。
        .包含关系中,被包含用例对基用例是可见的;扩展关系中,基用例对扩展用例可见,而扩展用例对基用例不可见。
        .扩展关系中,扩展用例本身具有独立的功能,而非从其他用例中抽取。
        .包含关系中,被包含用例通常应被两个以上的其他用例所包含。
        用例图用于对系统的静态用例视图进行建模。这个视图主要支持系统的行为,即该系统在它的周边环境的语境中所提供的外部可见服务。
        交互图
        序列图和协作图均被称为交互图,它们用于对系统的动态方面进行建模。一张交互图显示的是一个交互,由一组对象和它们之间的关系组成,包含它们之间可能传递的消息。序列图是强调消息时间顺序的交互图;协作图是强调接收和发送消息的对象的结构组织的交互图。交互图一般包含对象、链和消息。
        (1)序列图(Sequence Diagram)。
        序列图是场景的图形化表示,描述了以时间顺序组织对象之间的交互活动。如下图所示。
        
        序列图
        序列图有两个不同于协作图的特征:
        .序列图有对象生命线。对象生命线是一条垂直的虚线,表示一个对象在一段时间内存在。
        .序列图有控制焦点。控制焦点是一个瘦高的矩形,表示一个对象执行一个动作所经历的时间段,既可以是直接执行,也可以是通过下级过程执行。
        (2)协作图(Collaboration Diagram)。
        协作图强调收发消息的对象的结构组织。协作图有两个不同于序列图的特征:
        .协作图有路径。为了指定一个对象如何与另一个对象链接,可以在链的末端附上一个路径构造型。通常只需要显式地表示local(局部)、parameter(参数)、global(全局)以及self(自身)这几种链的路径,不必表示association(关联)。
        .协作图有顺序号。为表示一个消息的时间顺序,可以给消息加一个数字前缀(从1号开始),在控制流中,每个新消息的顺序号单调增加(如2、3等)。为了显示嵌套,可使用带小数点的号码(1表示第一个消息,1.1表示嵌套在消息1中的第一个消息,等等)。嵌套可为任意深度。另外,沿同一个链可以显示许多消息,且每个消息都有唯一一个顺序号。
        协作图和序列图是同构的,它们之间可以相互转换。
        状态图(Statechart Diagram)
        显示了一个状态机,它由状态、转换、事件和活动组成。状态图关注系统的动态视图,它对于接口、类和协作的行为建模尤为重要,强调对象行为的事件顺序。状态图通常包括简单状态和组合状态、转换(事件和动作)。如下图所示。
        
        状态图
        活动图(Activity Diagram)
        活动图是一种特殊的状态图,它显示了在系统内从一个活动到另一个活动的流程。活动图专注于系统的动态视图,它对于系统的功能建模特别重要,并强调对象间的控制流程。活动图一般包括活动状态和动作状态、转换和对象。
        活动图可以表示分支和汇合。当对一个系统的动态方面建模时,通常有两种使用活动图的方式:
        .对工作流建模。此时所关注的是与系统进行协作的参与者所观察到的活动。
        .对操作建模。此时把活动图作为流程图使用。
        构件图(Component Diagram)
        显示了一组构件之间的组织和依赖。构件图关注系统的静态实现视图,它与类图相关,通常把构件映射为一个或多个类、接口或协作。
        部署图(Deployment Diagram)
        显示了运行处理节点以及其中构件的配置。部署图给出了体系结构的静态实施视图。它与构件图相关,通常一个节点包含一个或多个构件。
        5.UML视图
        为方便起见,用视图来划分UML中的概念和组件。视图只是表达系统某一方面特征的UML建模组件的子集,在每一类视图中使用一种或多种特定的图来可视化地表示视图中的各种概念。
        在上层,视图被划分成三个视图域:结构、动态行为和模型管理。
        结构描述了系统中的结构成员及其相互关系。
        动态行为描述了系统随时间变化的行为。
        模型管理说明了模型的分层组织结构。包是模型的基本组织单元,特殊的包还包括模型和子系统。模型管理视图跨越了其他视图,并根据系统开发和配置组织这些视图。
        下表列出了UML的视图和视图所包括的图以及每种图有关的主要概念。
        
        UML视图
 
       UML图
        图(diagram)是一组元素的图形表示,大多数情况下把图画成顶点(代表事物)和弧(代表关系)的连通图。为了对系统进行可视化,可以从不同的角度画图,这样图是对系统的投影。
        UML 2.0提供了13种图,分别是类图、对象图、用例图、序列图、通信图、状态图、活动图、组件图、部署图、组合结构图、包图、交互概览图和定时图。序列图、通信图、交互概览图和计时图均被称为交互图。
        (1)类图(class diagram)。展现了一组对象、接口、协作和它们之间的关系,如下图所示。在面向对象系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,包含主动类的类图给出了系统的静态进程视图。类图中通常包含类、接口、协作,以及依赖、泛化和关联关系,也可以包含注解和约束。类图通常用于对系统的词汇建模;对简单的协作建模;对逻辑数据库模式建模。
        
        UML类图
        (2)对象图(object diagram)。展现了一组对象以及它们之间的关系,描述了在类图中所建立的事物实例的静态快照。对象图一般包括对象和链。与类图相同,对象些图给出系统的静态设计视图或静态进程视图,但它们是从真实的或原型案例的角度建立的。
        (3)用例图(use case diagram)。展现了一组用例、参与者(actor)以及它们之间的关系,描述了谁将使用系统以及用户期望以什么方式与系统交互,如下图所示。用例图中包含用例、参与者,以及用例之间的扩展关系(<>)和包含关系(<>),参与者和用例之间的关联关系,用例与用例以及参与者与参与者之间的泛化关系。用例图给出系统的用例视图,可用于对系统的语境建模;对系统的需求建模。
        
        UML用例图
        (4)序列图(sequence diagram)。是场景(scenario)的图形化表示,描述了在一个用例或操作的执行过程中以时间顺序组织的对象之间的交互活动,如下图所示。图中对象发送和接收的消息沿垂直方向按时间顺序从上到下放置。序列图中有对象生命线和控制焦点。
        
        UML序列图
        (5)通信图(communication diagram)。强调收发消息的对象之间的结构组织。通信图有路径和顺序号。序列图和通信图都是交互图(interaction diagram)。交互图展现了一种交互,它由一组对象和它们之间的关系组成,包括它们之间可能发送的消息。交互图关注系统的动态视图。序列图和通信图是同构的,它们之间可以相互转换。
        (6)交互概览图(interaction overview diagram)。组合了序列图和活动图的特征,显示了每个用例的活动中对象如何交互。它使用活动图的表示法,描述业务过程中的控制流概览,软件过程中的详细逻辑概览,以及将多个图进行连接,抽象掉了消息和生命线。
        (7)定时图(timing diagram)。是另一种交互图,关注一个对象或一组对象在改变状态时的时间约束条件,描述对象状态随着时间改变的情况,很像示波器,适合分析周期和非周期性任务。当为设备设计嵌入式软件时,定时图特别有用。
        (8)状态图(state diagram)。展现了一个状态机,它由状态、转换、事件和活动组成,用于建模时间如何改变对象的状态以及引起对象从一个状态向另一个状态转换的事件,如下图所示。状态图关注系统的动态视图,它对于接口、类和协作的行为建模尤为重要,强调对象行为的事件顺序。
        
        UML状态图
        (9)活动图(activity diagram)。是一种特殊的状态图,展现了在系统内从一个活动到另一个活动的流程。活动图专注于系统的动态视图。它对于系统的功能建模特别重要,并强调对象间的控制流程。活动图可用于对工作流建模,操作建模。
        (10)组合结构图(composite structure diagram)。用于描述一个分类器(类、组件或用例)的内部结构,分类器与系统中其他组成部分之间的交互端口,展示一组相互协作的实例如何完成特定的任务,描述设计、架构模式或策略。
        (11)组件图(component diagram)。展现了一组构件之间的组织和依赖。组件图专注于系统的静态实现视图。它与类图相关,通常把构件映射为一个或多个类、接口或协作。
        (12)部署图(deployment diagram)。展现了运行时处理结点以及其中构件(制品)的配置。部署图给出了体系结构的静态实施视图。它与构件图相关,通常一个结点包含一个或多个构件。部署图是UML图中唯一用来对面向对象系统的物理方面建模的一种图。
        (13)包图(package)。用于把模型本身组织成层次结构的通用机制,描述类或其他UML构件如何组织成包,以及这些包之间的依赖关系。包可以拥有其他元素,可以是类、接口、构件、结点、协作、用例和图,甚至是嵌套的其他包。拥有是一种组成关系。
 
       建模
        建模是在计算机上创造三维形体的过程,建模是三维动画的基础,没有一个好的模型,其他好的效果都难以表现。三维建模的基本方法主要有:利用二维形体的技术、直接进行三维物体建模、造型组合等。
        利用二维形体进行建模的技术的主要思想是首先创建简单的二维形体,如样条线和形状等,然后对这些创建的二维形体进行挤压、旋转、放样等操作以创建三维造型。
        直接进行三维物体建模的常用方法有多边形建模、面片建模、NURBS建模等。
        造型组合是把已有的物体组合成新的物体,其中布尔运算是最重要的组合技术。
   题号导航      2015年下半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第27题    在手机中做本题