ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:81.11KB ,
资源ID:17526287      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17526287.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(UML复习题完整版Word格式.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

UML复习题完整版Word格式.docx

1、1软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述 活动 ,也不描述 如何开发产品,它只描述系统的 组成元素及其相互的 交互协作。2一个UML模型只描述了一个系统 要做什么,它并没告诉我们系统是 如何实施的(怎么做)。3接口是可以在整个模型中反复使用的一组行为,是一个没有 属性而只有 操作 的类。4多重性指的是,某个类有 多 个对象可以和另一个类的 一个 对象关联。5当一个类的对象可以充当多种角色时,自身 关联就可能发生。6在泛化关系中, 子类 可以替代 父类 。也就是说,后者出现的地方,前者都可以出现。但是反过来却不成立。7最通常的依赖关系是一个类操作的 型构中用到了 其他

2、类 的定义。8组成是 强类型 的聚集,因为聚集中的每个部分体只能属于 一个整体。9实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚线 表示,继承关系用 实线 表示。10UML背后的两个重量级概念是 面向对象和 用例 。11状态图和类图、顺序图不同之处在于,后两种图能够对 一个对象 建立模型,而状态图只是对一个系统或者至少是一组类、对象或用例 建立模型。12状态图中3个常用的动作是 入口动作 、出口动作和 do动作,也就是对象处于这个状态是该做什么 。13顺序图中,消息用水平箭头线表示;时间用垂直虚线 表示。14当逻辑发生分支时,在顺序图中用 生命线发生的分支 表示,在协作图中用

3、 嵌套的序号 表示。15顺序图强调的是交互的 时间顺序 ,协作图强调的是交互的 空间关系 和参与交互的对象的 上下文环境。把开发过程分为5个 段,之中又由许多动作组成。17GRAPPLE过程中,得到初步类图是在 需求收集段,细化类图是在 需求分析 段。 18每一个设计模式都集中于一个特定的 (面向对象设计问题|设计要点),描述了什么时候使用它|相互通信的对象或者类 以及使用的效果|解决方案和如何取舍|解决效果 。19面向对象系统中功能复用的两种最常用技术是类继承和 接口继承|对象组合。20设计模式中应优先使用接口|对象组合 而不是 类继承。简答题3简述如何在实际工作中发现类。答:在与客户的交谈

4、中,要注意客户用来描述业务实体的名词术语。这些名词可作为领域模型中的类。还要注意你听到的动词,因为这些动词可能会构成这些类中的操作。当得到一组类的核心列表后,应当向客户询问在业务过程中每个类的作用。他们的回答将告诉你这些类的职责。5试使用UML的关系表示法,表示出大学计算机专业中如下这些课程的模型:C语言程序设计、C+语言程序设计、Windows程序设计、网络程序设计。注意抽象类和依赖的使用。6画出图形用户界面GUI的状态图,要包括屏幕保护状态。其中要表明相应的事件、动作。8画出自动饮料销售机中,理想场景和“钱数不正确”的场景合并在一起的顺序图。13简述实现继承和接口继承的区别?我们应该尽量使

5、用哪一种?类继承根据一个对象的实现定义了另一个对象的实现。简而言之,它是代码和表示的共享机制。然而,接口继承描述了一个对象什么时候能被用来替代另一个对象。类继承是派生中的类将继承父类的所有属性和方法,并且可以在派生类里添加自己的属性和方法,而接口继承则是在接口里只定义接口的方法,没有属性,并且方法不能实现,只有在派生他的类才实现该方法。类继承是编译的时候新建对象,而接口实例是在运行时刻创建对象。我们应该尽量使用接口继承,类继承会产生类爆炸现象18Lexi系统的格式化问题中,我们引入了Compositor和Composition两个类来实现“策略”模式。请画出这两个类各自的继承关系和它们之间的协

6、作关系。19Lexi系统的支持多种窗口平台的问题中,我们使用了Window和WindowsImp类来实现桥接模式。1 软件是计算机系统中与硬件相互依存的另一部分,它是程序、数据及相关文档的集合。机器可执行的:程序及有关数据机器不可执行的:与开发、运行、维护、使用和培训有关的文档资料程序:由程序设计语言所描述的、能为计算机所识别、理解和处理的语句序列。数据:使程序能正常处理信息的数据和数据结构。文档:一种数据媒体和其上所记录的数据,即记录软件开发活动和阶段性成果、理解软件所必需的阐述性资料。软件程序数据文档 程序算法数据结构软件的特点1) 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象

7、性。软件的抽象性特征使它与计算机硬件及其它工程实体有着根本区别。2) 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程,其生产主要是研制,可以零成本地大量复制软件产品。3) 在软件的运行和使用期间,没有硬件那样的机械磨损、老化问题,有着无备件特征。4) 软件系统复杂,成本昂贵,涉及社会因素。2 按照软件服务的范围,可以把软件划分为项目软件和产品软件。3 软件危机 是指计算机软件开发和维护过程中所遇到的一系列严重的问题。这些问题不仅仅是不能正常运行的软件才具有的,实际上几乎所有软件都不同程度的存在这些问题。概括说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如

8、何维护数量不断膨胀的已有软件。软件危机的典型表现: 成本高、软件质量得不到保证、进度难以控制、软件维护困难4 软件工程 是指导计算机软件开发和维护的一门工程学科。它采用工程的概念、原理、技术和方法开发维护软件,把经过时间考验、被证明是正确的管理技术和当前能够得到最好的技术方法结合起来,以经济的开发出高质量的软件,并有效的维护它。5 软件工程三要素及其辩证关系质量是软件工程的生命线,软件工程以质量保证为基础。质量管理促进了过程的改进,创造了许多行之有效的软件开发方法和工具。软件工程釆用层次化的方法,每个层次都包括过程、方法、工具三要素。方法支撑过程和工具,过程和工具又促进方法学的研究。从小到大:

9、工具、方法、过程、软件质量6 软件工程中相关的人员通常担当用户、客户、项目管理人员、软件工程人员四种角色。7 软件从定义开始,经过开发、使用和维护,直到最终退役的全过程称为软件生存周期。8 软件过程指制作软件产品的一组活动及其结果。9 软件过程模型 是从一特定角度提出的软件过程的简化描述。“模型的本质在于简化”软件过程模型就是对描述的实际过程的抽象,它包括构成软件过程的各种活动、软件产品及软件工程人员参与的不同角色。10 瀑布模型的特点1) 阶段间具有顺序性和依赖性 2) 推迟实现的观点 3) 质量保证的观点11 螺旋模型的每一个周期都包括计划制定、风险分析、工程实现和项目评审4 个阶段。12

10、 喷泉模型是是以面向对象的软件开发方法为基础,以用户需求为动力,以对象来驱动的一种软件过程模型。面向对象方法的基础1 面向对象软件工程方法由面向对象分析、面向对象设计和面向对象程序设计/实现三部分组成。2 面向对象方法的基本思想尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(即问题域)与实现解法的解空间(即求解域)在结构上尽可能一致。3 对象在应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。例如,一名职工、一家公司

11、、一个窗口、一座图书馆、一本图书、贷款和借款等,都可以作为一个对象。总之,对象是对问题域中某个实体的抽象,设立某个对象就反映了软件系统保存有关它的信息,并具有与它进行交互的能力。4 对象的特点1 以数据为中心:操作围绕对其数据所需要做的处理来设置,不设置与这些数据无关的操作,而且操作结果往往与当时所处的状态(数据的值)有关。2 对象是主动的:它与传统的数据有本质的不同,不是被动地等待对它进行处理,相反,它是进行处理的主体。3 实现了数据封装:对象好像是一只黑盒子,它的私有数据完全被封装在盒子内。对私有数据的访问或处理只能通过公有的操作进行。4 本质上具有并行性:不同对象各自独立地处理自身的数据

12、,彼此通过发送消息传递信息完成通讯。5 模块独立性好:对象是OO软件的基本模块。5 类 类是具有相同数据结构和相同操作的一组相似对象的抽象,即表示某些对象在属性和操作方面的共同特征。 类是在对象之上的抽象,有了类以后,对象则是类的具体化,是类的实例。把一组对象的共同特性加以抽象并存贮在一个类中的能力,是面向对象技术最重要的一点!6 属性 属性是类中对象所具有的数据值,是对客观世界实体所具有性质的抽象。 不同对象的同一属性可以具有相同或不同的属性值。7 方法方法就是对象所能执行的操作(Operation)。它描述了对象执行操作的算法,响应消息的方法。8 通常,一个消息由接受消息的对象、消息标识符

13、、0 或多个变元/消息参数组成。9 谈谈你对面向对象方法中消息的理解? 如何要求对象完成一定的处理动作?对象间如何进行联系?所有这一切都只能通过消息传递来实现。 传递消息的对象称为发送者,接受消息的对象称为接收者。 消息中只包含传递者的要求,它告诉接收者需要哪些处理,但并不指示接收者应该怎样完成这些处理。 消息完全由接收者解释,接收者独立决定采用什么方式完成所需的处理,发送者对接收者不起任何控制作用。 一个对象能够接收不同形式、不同内容的多个消息;相同形式的消息可以送往不同的对象,不同的对象对于形式不同的消息可以有不同的解释,能够做出不同的反映。 一个对象可以同时往多个对象传递信息,两个对象也

14、可以同时向某个对象传递消息。 接受者响应消息的过程10 消息接受者响应消息的过程:1、选择符合消息要求的操作 2 、执行该操作 3、将控制权返回调用者11 继承 广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。 在面向对象技术中,继承是子类自动地共享基类中定义的数据和方法的机制。12 继承机制在面向对象方法中的重要性13 多态多态即在类的等级的不同层次中可以共享(公用)一个方法的名称,然而不同层次中的每个类却各自按照需要来实现这个行为。当对象接收发送给他的消息时,根据该对象所隶属的类动态选用在该类中定义的实现算法。UML 概述1UML 是Unified Modeling L

15、anguage 的缩写,即统一建模语言2UML 综合符号、文本语法、图形机制三种机制来表达应用问题在需求、设计和实现级的模型。3UML 的视图机制的内容UML 中提供了静态视图、用例视图、实现视图、配置视图、状态机视图、活动视图、交互视图、模型管理视图。4 主题域在视图的更高层次,UML 中把视图划分为结构性主题域、动态主题域、模型管理主题域3 个主题域。用例视图1 用例视图从外部用户的角度捕获系统、子系统或类的行为。它将系统功能划分为对活动者具有意义的事务,这些功能片称为用例。2 活动者每个活动者参与一个或多个用例,活动者的内部实现与用例无关,活动者被一些列定义状态的属性来描述。3 建立用例

16、图的步骤1、获取Actor 2、获取用例 3、标示关系 -Actor和用例的关系 Actor和Actor的关系 用例和用例的关系4 用例文档用例文档是在理解用户需求基础上产生的,它是用例图中用例实现的文字描述。用例文档包含用例名称、用例描述、用例的前置条件、后置条件以及过程描述等内容。静态视图1 静态视图的作用静态视图是UML 的基础。静态视图中个概念是应用中具有意义的概念与软件相关的所有概念。静态视图捕获对象结构,将面向对象系统的数据结构和行为统一成单个的对象结构。它将行为实体描述为离散的模型元素,不包含任何动态行为的细节。2 类的属性/操作的可见性 描述了类在软件系统中代表的事物(即对象)

17、所具备的特性。 类可以有任意数目的属性,也可以没有属性。 在UML中,类属性的语法为:可见性 属性名:类型 初值 属性字符串包括公共的、私有的、保护的和包内可见性,分别采用+、-、#、标示3 为类的属性设置初值的目的?1、保护系统的完整性,防止漏掉取值或被非法的值破坏系统的完整性。2、为用户提供易用性。4 类和类之间的关联关系关联表示两个类之间存在的某种语义上的联系。5 举例说明普通关联的定义细节普通关联是最常见的关联关系,只要在类和类之间存在着联接关系就可以用普通关联表示。 普通关联的图示符号是联接两个类之间的直线; 通常关联是双向的,可以在一个方向上为关联命名,而在另一方向上给予另一不同的

18、名称(或不予以命名)。为避免混淆,可以在各名称前添加一个表示方向的符号。 在表示关联的直线两端,可以标示管理的重数。重数表示该类有多少个对象与对方的一个对象连接。表是方法有:1 一个对象; * 表示多个对象; 0.1 表示0个或一个对象;0.* 表示0个或多个对象; 1+或1.*表示1到多个对象例:普通关联具体实例如图所示:上图所示,一个作家可以使用1到多台计算机;一台计算机可为0至多个作家使用。(静态视图)6 举例说明关联类的定义过程?有时为了说明关联性质可能需要一些附加信息。可以引入关联类记录这些关联信息。关联种每个联接和关联类的一个对象相关联。关联类的符号表示如下图所示:从图中可以看出,

19、一个电梯控制器控制着多台电梯,它们之间的联接对应一个队列,而每个队列存储着来自电梯控制器和点提按钮的请求服务信息。电梯控制器选择一个合适的电梯为乘客服务。5 类的组合关系和聚合关系的区别和联系 有时两个具有关联的类具有着“整体/部分”的关系,其中一类描述了较大的事物(“整体”),它有较小的事物(部分)组成这种关系成为聚合。 聚合关系描述“has a”关系,意味着整体对象拥有部分对象,其图形表示如下: 组合是聚合的变体,相对聚合它添加了很多语义信息。它表示的是更强的拥有关系,而且整体与部分的生命周期是一致的。 这就意味着在组合中,一个对象在一个事件内只能是一个组合的一部分,如在窗口系统中,一个F

20、rame只能隶属于一个Window,其图形表示如下:6 对象图对象图是某个时间点系统的映像,通常作为系统的一个实例使用。对象图描述了可能发生的实例,它是系统的一个快照。7 对象图绘制的步骤,并举例说明交互视图1 协作协作是对上下文中交互实现某种行为对象群体的描述,它描述了许多对象合作实现特定目标的行为。协作具有结构和行为两个方面:结构方面包含了目标行为的上下文信息,如有关的角色、关系等;行为方面由绑定于角色对象间的一些列交换消息描述。2 交互交互是由协作中分类角色、关联角色进行交换的一系列消息。3 顺序图的交互表达机制顺序图以二维表来显示交互。 纵向是时间轴,时间自上而下; 横向显示了协作中单

21、个对象的分类角色。每个分类角色表现为垂直列,即时间线。 消息表示为从一个对象生命线到另一个对象生命线的箭头。箭头自上而下按照时间顺序安排。4 协作图中的对象类别协作图把对象分成四组:在整个协作中存在的对象;交互中创建的对象(约束destoryed);交互中被销毁的对象(约束new) ;交互中被创建和销毁的对象(约束transient) 。5 请比较顺序图和协作图,并讨论它们的应用场景。顺序图和协作图都显示了交互,但是它们的侧重点不同:顺序图显示了时间次序,但没有显式指明对象之间的关系;协作图清晰的显示了对象间的关系,但实践次序必须从顺序号中读取。鉴于此,顺序图常常用于场景的表示,协作图则在展示

22、过程细节时更适用。状态机视图1 状态机视图 通过对每个对象的生命周期进行建模,描述了对象时间上的动态行为。2 状态机状态机是展示状态与状态转换的图。状态机是一个类的对象所有可能的生命历程的模型。状态机是一个对象的局部视图,一个将对象与其外部世界分离开来,独立的监测它的行为。状态机是对象局部化的视图,是一种很好的精确描述指明行为的方法。3 事件可以划分为信号事件、调用事件、变更/改变事件、时间事件四种类别。4 状态描述了一个对象生命期中的一个时间段。5 触发器事件触发器事件是引起转换的事件。事件可以有参数,以供转换的动作使用。6 谈谈你对状态图中事件的理解? 事件是发生在时间和空间上值得注意的事

23、情。它在一时间点上发生,没有持续时间。如果某一事情的发生造成了影响,那么在状态机模型中它是一个事件。 当我们使用事件这个词时,通常是指一个事件的描述符号。事件可能有参数来辨别每个实例,就像类用属性来辨别每个对象一样。 事件可以划分为各种类别信号事件、调用事件、变更/改变事件、时间事件。7 某建筑有一部电梯,该电梯初始安装在一层。当电梯空闲时间超时时,无论电梯当前在那一楼层,都将移向一层(即底层),到达一层后即停留,以等待用户服务请求得到达。请采用状态图对电梯系统建模。活动视图1 通常,活动图用来建模操作/计算流和工作流。2 活动图从本质上是一个流程图,显示了从活动到活动的控制流。3 活动 一个

24、活动是一个状态机中进行的非原子执行单元。 活动最终导致一些动作,这些动作由可执行的原子计算组成。 动作包括调用一个操作,发送一个信号,创建/撤销某对象等。4 动作状态 动作状态代表了可执行的原子计算,每一个原子计算都代表了一个动作的执行。 动作状态不能再分解,即动作状态可以发生,但动作状态的工作不能中断。 在UML中动作状态的工作所占用的时间一般可以忽略。5 动作状态和活动状态的区别 活动状态、动作状态仅仅是状态机中状态的特殊种类。 当进入一个动作或活动状态时你是简单的执行动作/活动状态; 当结束一个动作/活动状态时控制权就传送给下一个动作/活动。 一个活动状态在语义上等价于在适当地方展开的活

25、动图,直到该活动图紧紧看到动作为止。6 使用活动图建模工作流的原则? 为工作流建立一个焦点,即观测的视角; 选择对工作流中的具有高层职责的业务对象建模,并为每个主要的对象建立泳道; 识别工作流的初始状态的前置条件和停止状态的后置条件,这样有助于识别工作流的边界; 从工作流的初始状态开始,按照时间顺序表示并连接活动状态/动作状态; 将复杂的动作或多次出现的动作集合进行合并,形成一个活动状态,必要时在一个活动图中展开; 找出连接活动/动作状态的转换,考虑顺序流、并发流等情况; 如果工作流中涉及重要的对象,则把他们加入到活动图中; 如果对表达对象流的意图是必要的,则显示其变化的值和状态;7 活动视图

26、和交互视图的区别? 交互视图强调从对象到对象的控制流,而活动图强调从活动到活动的控制流。 交互视图观测的是传送消息的对象,活动图观测的是对象间传送的操作。物理视图1构件是定义了良好接口的物理实现单元,它是系统中可替换的部分。每个构件体现了系统设计中特定类的实现;2 构件包含代码特征和身份特征两方面的特征。3 构件和类的区别和联系 相同点1、 都可以是实现一组接口;2、 都可以参与依赖、泛化、关联关系;3、 都可以嵌套;4、 都可以具有实例;5、都可以参与交互; 不同点 类表示逻辑抽象,而构件表示存在于Byte世界的物理抽象,即构件可以存在于节点之上;这一项差异指明了建模时候是采用构建还是类的决

27、策基础 构件表示的是物理模块而不是逻辑模块,而类处于不同的抽象级别;可以看出类和构件的关系,构件是类等逻辑元素的物理实现,可以采用显式展示类和构件的依赖关系 类可以拥有属性和操作,而构件拥有得只能够是通过其接口访问的操作;特别指出接口是类和构件的桥梁,它连接了系统的逻辑模型和物理模型4、构件实现的接口称为示出接口export interface,即构件提供给其他构件的服务接口;构件使用的接口称作引入接口import interface,即应用它的构件必须遵循这个接口并以此为基础构造。5 构件的种类有实施构件、执行构件、工作产品构件三种类型。6 构件的特点 构件是系统中的一个物理实现片断,它是实现域中的元素; 一个构件基本独立于其他构件,但很少独立存在。通常为了完成某项功能,构件需要一个结构化的语境; 构件是系统中可以替换的部分,是系统设计和组建的基石; 构件完成明确的功能,在逻辑和物理上具有粘聚性,它代表了一个更大系统中

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1