UML建模试习题2_第1页
UML建模试习题2_第2页
UML建模试习题2_第3页
UML建模试习题2_第4页
UML建模试习题2_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、第一套试题一选择题1. 在用例建模中,一些全局的非功能性需求和设计约束应该在哪个需求工件中描述:( )A. 用例模型 B. 用例规约 C. 补充规约 D. 词汇表2. 在用UML对系统进行动态建模时,通常使用活动图。利用活动图有两方面作用:一是对工作流建模,一是对操作建模,此时把活动图作为( )A. 程序流程图 B. 系统流程图 C. 数据流程图 D. 处理流程图3. 在UML中,依赖性也是连接两个类,对其说法正确的是( )A. 依赖性总是单向的 B. 依赖性不一定是单向的C. 依赖性总是双向的 D. 依赖性可以是双向的4. 动作事物是UML模型中的动态部分,他们是模型的动词,代表什么上的动作

2、( )A. 时间和空间 B. 时间和对象 C. 空间和对象 D. 对象5. UML中的分组事物是什么( )A. 视图 B. 部署图 C. 组件 D. 包6. UML支持的建模方式有:(请选择最合理的答案)( )A. 静态建模、动态建模 B. 动态建模、功能建模 C. 静态建模、功能建模 D. ABC都支持7. 在用例建模中,用例的粒度、个数以及模型元素之间的关系复杂程度应该由什么指导原则决定( )A. 可理解性 B. 模块化 C. 用例任务的单一性 D. ABC都不是8. 在系统用例建模中,我们判断用例建模工作是否结束的主要标志是:( )A. 功能需求的完备性 B. 模型是否易于理解 C. 是

3、否存在不一致性 D. ABC都不是9. 对UML中的包(Package)说法正确且最合理的是:( )A. 管理模型复杂度的机制B. 一种容器,包中可以容纳其他任意的模型元素C. 包中可以容纳其他的包D. ABC都对10. 关于UML中的消息描述错误的是:( )A. 消息可以从一个对象发向该对象自身。B. 消息是对象之间的通信。消息是对象之间的通信。C. 在序列图中,消息被表示为从一个对象下端引出的垂直虚线。D. 两个对象间的交互表现为一个对象发送一个消息给另一个对象。二,填空题1. UML统一了_和 _的表示法,而且对其做了进一步的发展。2. 在Rose系统用例的描述中,事件流的目的是_。这个

4、文档详细描述 _。 .3. 在用UML对系统的静态用例视图建模时,使用用例图可以对系统的_建模,还可以对系统的_建模。4. 在UML中,_是描述整体和部分的关系,且部分可以独立于整体而存在。5. 软件是由_、 数据和_组成。按软件的服务对象划分,软件可以分为_和_ 。6. 统一过程中的四个阶段是: _、_、_、_、三,简答题1. 用例的泛化关系和包含关系的区别与联系。2. 用例模型中扩展用例与包含用例之间的区别是什么?3. 简述统一建模语言(UML)4. 协作图和顺序图的区别。四,判断题1. UML不支持对元模型的扩展定义。( )2. 元模型为UML的所有元素在语法和定义上提供了简单、一致和通

5、用的定义性说明,使开发者能在语义上取得一致。( )3. 在Rose的活动图中,泳道的名称就是执行泳道中所有活动的角色。( )4. 在Rose业务模型和系统模型的区别在于业务模型针对用户,而系统模型针对所建的系统。( )5. 在UML中,实体类保存要放进永久存储体的信息。( )6. 在Rose系统模型中,使用案例是面向实现的过程而不是面向对象过程。( )7. 在Rose建模中,每个业务用例都有一个或多个系统用例对应。( )8. 在Rose的系统用例描述中,前提条件是指开始使用案例之前必须满足的条件。( )9. 迭代是绝对不能被重叠进行的。( )10. 在UML中,控制类负责业务逻辑的实现。( )

6、五,作图题1. 已知三个类A.B和C.其中类A由类B的一个实类和类C的1个或多个实类构成.请画出能够正确表示类A,B和C之间关系的UML类图.2. 一个图书管理系统中,书籍是该系统内的重要对象之一,请结合所学知识,分析该对象在整个系统的各个状态变化,画出书籍的状态图第二套试题1面向对象的基本含义所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,充分利用接口和多态提供灵活性,来认识、理解、刻划客观世界和设计、构建相应的软件系统。2多态性是一种方法,这种方法使得在多个类中可以定义同一个操作或属性名,并在每个类中可以有不同的实现。多态性是一种特性,这种特性使得一个属性或变量在不同的时

7、期可以表示不同类的对象。在一个接口后面隐藏了许多不同的实现3覆盖和重载覆盖:是指在子类中重新定义与父类同名的方法。重载:是指在同一个类中定义的几个操作或操作符都具有相同的名字。4接口的概念:所谓接口就是对操作规范的说明。通俗地说,接口只是说明函数应该做什么(What),但没有定义函数如何做(How)。5UML的主要包括3种构造块:1)事物):构成模型图的一些基本图示符号,它们表示一些面向对象的基本概念。2)关系:表示基本图示符号之间的关系。3)图:特定的视角对系统所作的抽象描述。事物是对模型中最具有代表性的成分的抽象;关系把事物结合在一起;图聚集了相关的事物。6在UML中有4种事物:- 结构事

8、物- 行为事物- 分组事物- 注释事物7协作:协作定义了一个交互,它是由一组共同工作以提供某协作行为的角色和其它元素构成的群体,这些协作行为大于所有元素的各自行为的总和。因此,协作有结构、行为和维度。8交互:交互是这样一种行为,他由在特定语境中共同完成一定特定任务的一组对象之间交换的消息组成。一个对象群体的行为或单个操作的行为可用一个交互来描述。Interaction 涉及一些其他元素,包括消息、动作序列(由一个消息所引起的行为)、links (对象间的连接)。9在UML中有4种关系:-关联:描述了两个或多个类之间的结构性关系。-依赖Dependency An dependency is a

9、semantic relationship between two things in which a change to one thing (the independent thing) may affect the semantics of the other things (the dependent thing ).-泛化:泛化是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。-实现: 实现是类元之间的语义关系,在该关系中一个类元描述了另一个类元保证实现的契约。10UML有用于描述如下事物的语义规则:命名 为事物

10、、关系和图起名范围 给一个名称以特定含义的语境可见性 怎样让其他人使用或看见名称完整性 事物如何正确、一致地相互联系执行 运行或模拟动态模型的含义是什么11UML中有4种贯穿整个语言且一致应用的公共机制:1) 详述 UML的详述提供了一个语义底版,它包含了一个系统的各模型的所有部分,并且各部分相互联系,并保持一致。因此,UML的图只不过是对底版的简单视觉投影,每一个图展现了系统的一个特定的方面。2) 修饰 UML表示法中的每一个元素都有一个基本符号,可以把各种修饰细节加到这个符号上。3) 通用划分 类/对象二分法,接口/实现二分法。4) 扩展机制 对UML图示符号的扩展。包括:-构造型Ster

11、eotype 新构造块建模-标注值Tagged value 新属性建模-约束Constraint 新语义规则建模12UML 预定义了6种可应用于关联关系的约束:1) 隐式- 表示关系不是显式的,而仅是概念性的。2) 有序- 表示关联一端的对象集是显式有序的。3) 可变- 可以自由增加、移动和改变对象之间的链(links)。4) 只增- 可以从关联另一端的一个对象增加新的链。5) 冻结- 一旦从从关联另一端的对象增加了一个链,就不能对它修改或删除。6) 或- 表示在一组关联中,对每个关联的对象只能有一个显式的关联。13UML 预定义了4种可应用于泛化关系的约束:1) 完全2) 不完全3) 互斥4

12、) 重叠14UML应用的三要素,工具、过程、表示法。15UML应与软件工程过程相结合,典型的软件过程的特点:用况驱动的、以软件构架为中心的、迭代的。16一种典型的软件架构的表示:4+1 View 用例视图:从系统外部的操作者的角度来描述系统需求。逻辑视图:描述系统内部的静态结构和动态行为,即从内部描述如何设计实现系统功能。实现视图:系统的物理实现,描述系统由哪些程序构件所组成。进程视图:描述系统运行时的架构,强调并发系统中存在的各种通信和同步问题。实施视图:描述系统的拓朴结构,描述系统的软件与各种硬件设备之间的配置关系。17UML预定义了17个依赖的构造型,可分成六组:(一) 类图中8种1)绑

13、定- 表明源对目标模板使用给定的实际参数进行实例化。2) 导出- 表明可以从目标计算出源。3) 友元- 表明源对目标的特定可见性。4) 的实例- 表明源对象是目标类元的一个实例。5)参数表明操作与参数的关系。6) 强类型- 表明目标是源的强类型;强类型是一个类元,其对象都是一个给定父类的子类。7) 精化- 表明源比目标处于更精细的抽象程度上。8) 使用- 表明源元素的语义依赖于目标元素的公共部分的语义。(二)包之间的2种依赖1) 访问- 表明源包有权引用目标包中的元素。2)引入- 是一种访问,它表明把目标包的公共内容加入到源包的命名空间(好像这些内容已被声明在源包中)。(三) 用例之间的2种依

14、赖1) 延伸- 表明目标用况延伸了源用况的行为。2)包含- 表明源用况在其指定的位置上显式地合并了另一个用况的行为。 (四) 对象交互建模之间的3种依赖1) 变成- 描述了目标对象与源对象是相同的,但在后续的时间点上属性值、状态或角色可能会不同。2) 调用- 表明源操作调用目标操作。3) 复制- 表明目标对象是源对象的精确复制,但目标对象是独立的。(五) 状态机中的1种依赖1) 发送- 表明源操作向目标发送事件。(六) One stereotype is in the context of organizing the elements of your system into subsyste

15、m.1) 跟踪- 表明目标是源的历史上祖先。18Associations, Aggregation, & Composition19关联与依赖、泛化的比较依赖是对表示了不同重要级别的类建模,依赖是使用关系。泛化是对表示了不同抽象级别的类建模,泛化是“is a kindof”关系。关联是对相互同等的两个类建模,关联描述了类的对象间相互作用的结构路径。关联的数据驱动观点: 对于每一对类,如果需要从一个类的对象到另一个类的对象导航,就要在这两个类之间说明一个关联。关联的行为驱动观点: 对于每一对类,如果一个类的对象要与另一个类中不作为其操作的参数的对象相互交互,就要在这两个类之间说明一个关联。21节

16、点(Node)是一个物理元素,它在运行时存在,代表一个可计算的资源,通常占用一些内存和具有处理能力。一个构件集合一般来说位于一个节点,但有可能从一个节点转到另一个节点。23UML 预定义了5种可应用于包的构造型:1) 虚包- 描述一个包只是其他一些包的视图。2) 框架- 描述一个主要由模式组成的包。3) 桩- 描述一个作为另一个包的public内容代理的包。4) 子系统- 描述一个表示被建模的整个系统的一个独立部分的包5) 系统- 描述一个表示被建模的整个系统的包。24链指明了一个对象向另一个对象(或自身)发送消息的路径。多数时候,这样标定一个路径的存在就足够了。如果需要更精细地表示路径是如何

17、存在的,可以将链的端点用以下标准构造型修饰:- 关联: 说明对应的对象通过关联是可见的。- 自身: 说明对应的对象因为是本操作的调遣者,所以是可见。- 全局: 说明对应的对象在全局范围内可见。- 局部: 说明对应的对象在局部范围内可见。- 参数: 说明对应的对象因为是一个参数,所以是可见。25转换一个转换是两个状态之间的一种关系,表示对象将在第一个状态中执行一定的动作,并在某个特定事件发生而某个特定的条件满足时进入第二个状态。一个转换由5部分组成:1) 源状态2) 事件触发3) 监护条件4) 动作5) 目标状态26历史状态允许一个组合状态包含顺序子状态,以记住来自组合状态的转换之前的最后活动着

18、的子状态。27活动图的几个基本要素 活动状态 活动状态之间的转移 判断: 一种表示判断决策的特殊活动 保证条件: 只有保证条件为真时转移才发生。 同步条: 一种表示活动之间的同步的特殊活动, 起点和终点:起点有且只有一个,终点可有一个或多个。28所谓泳道技术,是将活动用虚线分成一些纵向区域,这些纵向区域称为泳道。每个区域代表一个特定类,或者人,或者部门的责任区。 泳道技术是活动图中引入的一种面向对象机制。可为提取类及分析各个对象之间的交互提供方便。一、请参阅课件,完成以下填空:1、UML 1.0是 1997 年发布的。2、UML为建模者和建模支持工具的开发者提供了标准的 图形符号 和正文语法。

19、3、设有模型元素x,y,若修改x的定义可能引起对y的定义的修改,则称元素y 依赖于 元素x。4、在关联关系中,属性“阶元”表示 有多少个对象参与关联。5、当静态建模完成后,类的属性名字 和 类型 肯定被明确定义。6、传统软件工程中的可行性研究在RUP中称为 需求分析(前景分析)。 7、W3C DOM规范与MSXML之间的关系在UML中称为 实现 关系。8、如果根据RUP建模,则需求分析在 初始阶段 进行,程序设计在细化 阶段进行。9、在描述参与者时,主要考虑它在系统中扮演的 角色 ,而不是在组织中的职位。10、用例描述了系统所执行的动作序列集,一个用例是代表软件系统的一项 功能 。11、系统用

20、例由 参与者 激活。12、用例之间存在三种关系:类属(一般化)、包含和扩充。其中,包含和扩充实际上是UML建模元素四种关系中的 一般化 关系。13、 事件流 用于规定用例的行为。14、在UML静态建模时,其分析阶段主要是通过分析 问题域,确定系统中的类,画出类图或动态图。15、在UML静态建模时,其设计阶段的目的是要确定一种易转化为 代码 的设计方案,设计阶段又可分为 结构 设计和 详细 设计。16 主动 对象不需要其他对象请求就主动表现的行为,而反映型对象只是响应外部事件,在响应一个事件后,又会变回空闲状态,等待下一个事件。17、UML动态建模主要通过绘制 顺序 图、协作图、 活动 图和状态

21、图来辅助分析或描述系统用例或类的重要操作的算法。18、在UML动态建模时,主要通过分析对象的消息传递来确定系统的行为,而消息通常表示一个对象要调用另一个对象中的 操作 。19、在时序图中,分支或迭代条件使用 括起来,而约束条件使用 括起来。20、在活动图中, 动作状态 表示了正在执行的不可分解的计算,而 活动状态 是可分解的且可中断的。21、 状态 图描述了系统对象随时间变化的动态行为,并展现了对象状态的变化及变化的原因。22、在状态图中,跃迁 表示一个对象内部状态在某个事件发生并且满足某个条件时的转移。23、UML的交互作用图分为, 顺序 图和 协作 图。24、用户需求报告文档是客户、软件开

22、发人员和项目管理人员共同工作的基础,是供方交付产品和需方验收产品的依据。25、在进行需求分析时,系统分析员必须从 功能性需求、非功能性需求和可用性需求等方面展开分析。26、在UML中,类图可分为三个层次:概念层、说明层和实现层。 概念层层主要任务是识别对象和类; 说明层 层主要任务是定义类的属性和操作; 实现层 层允许使用编程语言描述类的操作的算法。27、系统界面类的属性主要是指窗体或表单中的 数据类型 ,系统界面类的操作主要是指窗体或表单中的 参数和返回值 。28、在UML动态模型中,一个对象在某个时刻如果其属性具有确定的 变化信息 ,则称之对象的状态。29、在UML动态模型中, 并发 表示

23、多线程操作。30、在UML中, 静态 图可以替代传统软件工程中的系统模块结构图。四、问答题1、在动态建模技术中,消息和事件有何区别?消息:通常表示一个对象要调用另一个对象中的操作消息:表示操作调用第一个消息由主动对象发送。当收到消息时,接收对象立即开始活动,即对象被激活。消息用带有标签的箭头表示。事件:表示一个对象接收到一个消息(1) 调用事件:调用事件引发方法的执行(2) 消息事件:消息表示只在对象之间传递信息,因此消息事件触发的唯一操作 (3) 改变事件:改变事件表示当满足某种条件时改变对象状态,改变事件使用关键字when()引用条件。(4) 时间事件:使用关键字when()或after(

24、)说明事件触发的时间条件2、在顺序图、协作图、活动图和状态图中能用于用例建模的是哪些图能用于操作建模的是哪些图能用于分析对象内部行为的是哪些图用于用例建模的只能是用例图。用于操作建模的是顺序图、协作图、活动图。用于分析对象内部行为的是状态图。3、对象、属性、服务的命名规则是什么? 对象的命名:类的名字应符合其包含的每一对象。类的名字,应该反映每个对象个体,而不是整个群体。采用名词或带有定语的名词,使用规范的词汇,使用问题域专家及用户通常使用的词汇。使用适当的语言文字。如:各软件开发文档用中文,类及其属性和服务的命名使用英文。(注意:建立中英文命名对照表。)服务的命名:命名:动词+名词属性的命名

25、:使用英文4、在UML中什么是用例如何识别用例在UML中,用例Use Case规定了系统或部份系统的行为,描述了系统所执行的动作序列集,并为参与者产生一个可供观察的结果。一个用例描述一个从头至尾的完整的功能。面对一个大系统,可先列出参与者清单,再对每个参与者列出其用例。可通过以下问题帮助识别用例:每个参与者的任务是什么有参与者将要创建、存储、改变、删除或读取系统中的信息吗什么用例会创建、存储、改变、删除或读取该信息参与者需要通知系统外部的突然变化吗需要通知参与者系统中正在发生的事情吗什么用例将支持和维护系统所有功能需求都能被用例执行吗系统需要何种输入输出输入从何来输出到何处去当前运行系统的主要

26、问题(手工操作、计算机操作)5、UML中有五种图,分别用于描述什么?用例图:描述系统功能静态图:描述系统的内部结构,包括类图和对象图行为图:描述系统对象的行为,包括状态图和活动图交互图:描述对象之间的交互关系,包括时序图、协作图实现图:描述系统的架构与配置,包括组件图和配置图6、在UML静态建模时,如何绘制类图?建立类图主要描述类间关系:1. 用户界面类的类图 2. 实体类的类图 3. 实现用例的类图7、需求分析为什么重要为什么难需求分析就是根据业务建模的产品,以及对用户现场的分析和确认,进行分析,最后书写用户需求报告和需求规格说明书。需求获取是否成功,直接关系到软件开发的成败问题。需求分析不

27、彻底或不确定,将使设计、编码、测试无法进行用户需求报告是客户、软件开发人员和项目管理人员共同工作的基础,是供方交付产品和需方验收产品的依据需求分析要占整个开发时间或工作量的30%左右需求获取的错误,属于软件开发中的早期错误,但将在后续的设计和实现中进行发散式的传播。为什么难?用户需求具有动态性,即需求的不稳定性。用户需求具有模糊性,即需求的不准确性。用户最终要和开发者对需求达成完全一致的认识,并在需求报告上签字,要承担责任。2、UML中的交互图有两种,分别是顺序图和协作图,请分析一下两者之间的主要差别和各自的优缺点。掌握利用两种图进行的设计的方法。答:协作图可视化地表示了对象之间随时间发生的交

28、互,它除了展示对象之间的关联,还显示出对象之间的消息传递。与顺序图一样,协作图也展示对象之间的交互关系。顺序图强调的是交互的时间顺序,而协作图强调的是交互的语境和参与交互的对象的整体组织。顺序图按照时间顺序布图,而协作图按照空间组织布图。顺序图可以清晰地表示消息之间的顺序和时间关系,但需要较多的水平方向的空间。协作图在增加对象时比较容易,而且分支也比较少,但如果消息比较多时难以表示消息之间的顺序。1、简述UML中接口与类的区别?(1) 接口不同于类或类型,它不描述任何结构(因此不包含任何属性),也不描述任何实现(因此不包含任何实现操作的方法)。(2) 同类一样,接口可以有一些操作,这些操作可以

29、用可见性、参数、返回值等约束等来修饰。(3) 像类一样,一个接口也可以参与泛化、关联和依赖关系。2、简述状态图和活动图的区别?(1) 活动图用来建模某个过程的活动序列,以活动为中心。(2) 状态图用来建模对象生命期中的所有阶段,以状态为中心。(3) 活动图中一个活动结束后将立即进入下一个活动,在状态图中状态的转移可能需要事件的触发。1、简述面向对象的四个基本特征?(1) 抽象:就是过滤掉对象与当前开发工作无关部分特性,只剩下所需要的属性和操作。(2) 继承:是指一个对象直接从一个类中得到的属性和方法。(3) 多态:不同的类有时具有相同名称的操作。(4) 封装:实质是当一个对象执行自己的操作时,

30、它对外界隐藏了操作的细节。2、类图与对象图的区别?(1) 类图描述系统中类的静态结构。类图不但定义了系统中的类,表示了类之间的联系(如关联、依赖、聚合等),还描述了类的内部结构(类的属性和操作)。(2) 类图描述的是一种静态关系,在系统的整个生命周期都是有效的。(3) 对象图是类图的实例,使用与类图类似的标识。(4) 它们的不同点在于对象图显示类的多个对象实例,而不是实际的类。一个对象图是类图的一个实例。由于对象存在生命周期,因此对象图只能在系统某一时间段存在。3、UML与开发语言的区别?(1) UML是一种可视化建模语言,而不是可视化程序设计语言,它不能代替其他的程序设计语言;(2) UML

31、只是一种工具和程序设计的基础。4、简述泛化关系中的抽象类、叶子类和根类?用于对类的网格结构建模,其中有位于顶层的较为一般的抽象和位于底层的较为特殊的抽象。在这些抽象层次中,经常要指明一些类是抽象的,这意味着这些类没有直接的实例。在uML中,通过把一个类的名称写为斜体来指明这个类是抽象的。一个类没有任何子类,这样的元素称作叶子类,在UML中通过在类名的下面写一个特性leaf来指明。一个类没有任何父类,这样的元素称作根类,在UML中通过在类名的下面写一个特性root来指明。5、简述类继承和接口继承的区别我们应该尽量使用哪一种类继承根据一个对象的实现定义了另一个对象的实现。简而言之,它是代码和表示的共享机制。然而,接口继承描述了一个对象什么时候能被用来替代另一个对象。类继承是派生中的类将继承父类的所有属性和方法,并且可以在派生类里添加自己的属性和方法,而接口继承则是在接口里只定义接口的方法,没有属性,并且方法不能实现,只有在派生他的类才实现该方法。类继承是编译的时候新建对象,而接口实例是在运行时刻创建对象。我们应该尽量使用接口继承,类继承会产生类爆炸现象。2什么是高内聚度 高内聚度是对一个类中的各个职责之间相关程度和集中程度的度量。一个具有高度相关职责的类并且这个类所能完成的工作量不是特别巨大,那么它就具有高内聚度。包括两个意思:不要给一个类分派太多的职责,在履行职责时尽量将部分职责分

温馨提示

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

评论

0/150

提交评论