2017UML复习武汉理工大学_第1页
2017UML复习武汉理工大学_第2页
2017UML复习武汉理工大学_第3页
2017UML复习武汉理工大学_第4页
2017UML复习武汉理工大学_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、下面的问题基本都可以在讲义或教材上找到1UML的三个主要的特性1 )UM提一种语言2) UM提用来建模的3) UM提统一的标准2UM4是方法论。它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。3应用UMLI勺三种方式UMLL乍为草图非正式的不完整的图(通常是在白板上手绘草图),借助可视化语言的功能,用于探讨问题或解决方案空间的复杂部分。敏捷建模强调UML作为草图.UMLL乍为蓝图对已有代码做反向工程导出详细的设af图,可视化和更好理解代码,前向工程指导代码生成,通过手工或自动化工具umlL乍为编程语言用UML完成软件系统的执行规范4应用UM

2、LW可以从三个视角描述概念透视图-用图来描述现实世界或关注领域中的事物.规格说明(软件)透视图-用图描述软件抽象或具有规格说明和接口的构件(components),但不特定于某种语言实现.实现透视图-用图描述用某种特定技术实现软件,例如java.5构造型用来定义一些特定于某个领域或某个系统的构造块6敏捷开发的定义敏捷开发方法常常应用时间定量的迭代和进化式开发,使用自适应计划,提倡增量交付,包含其它鼓励敏捷白价值观和实践-快速和柔性的响应变化.PPT1(第41页)7主动类的实例称为主动对象,一个主动对象拥有一个控制线程并且能够发起控制活动;它不在别的线程、堆栈或状态机内运行,具有独立的控制期。从

3、某种意义上说,它就是一个线程。8什么是UPUP的科目有那些,UP项目将其工作和迭代组织为四个阶段一种标准的分析和设计方法,保证在软件开发过程中所有必须的任务被理解和完成科目:业务建模、需求、设计、分析、环境阶段:1 初始(Inception)初始阶段不是需求阶段,而是可行性阶段,做足够的调查以决策:继续或停止陈述项目的生命周期目标,考虑所有涉众(stakeholder)的需求,范围和边界,接受准则,建立小部分需求.大致的愿景,业务案列(businesscase),模糊的估计.2 细化(Elaboration)通过分析决定风险,项目的稳定愿景,稳定的架构和资源的花费精化的愿景,迭代实现核心架构,

4、解决高风险,到识重要的需求和范围,更实际的估计.3 构造(Construction)构造阶段是制造过程。它强调管理资源和优化花费,计划和质量。此阶段被分为几个迭代迭代实现剩余的低风险和容易的元素,并且准备部署(deployment).4 移交(Transition)移交阶段是把产品交到用户手中,主要包括市场,包装,安装,配置,用户社区支持,改正错误,etc.beta测试,部署.9用例是由一组用例实例组成的,用例实例也就是常说的场景,而协作是用例的实现。10敏捷UP方法在组织需求时主要的关键制品有那几个1)用例模型:一组使用系统的典型场景。主要用于功能需求。2)补充性规格说明:基本上是用例之外的

5、所有内容。主要用于所有非功能需求,也用来记录没有表示为用例的功能特性。3)词汇表:以最简单的形式定义重要的术语。4)设想:概括了高阶需求和项目的业务案例,是简短的执行概要文档。5)业务规则:通常描述了凌驾于某一软件项目的需求或政策。11中文教材P66-67候选用例选择的判断准则老板测试EBP测试规模测试12什么是领域模型?如何创建领域模型,如何找到概念类领域模型是对领域内的概念类或现实中的对象的可视化的表示创建领域模型:1)寻找概念类2)将其绘制为UML类图中的类3)添加关联和属性找概念类:1)重用和修改现有的模型。2)使用分类列表。3)确定名词短语。13UML中有哪几种图1)类图:描述一组类

6、之间的关系。用于对应用领域中的概念以及与系统实现有关的内部概念建模;2)对象图:描述一组对象之间的关系。它是对象类图的一个实例,表示在某一时刻系统对象的状态、对象之间关系的状态以及对象行为静态方面的状态;3)用例图:描述一组用例参与者及其它们之间的关系,是外部用户所能观察到的系统功能的模型图。用于需求建模;4)顺序图:描述一个交互,表示了对象之间传送消息的时间顺序;5)通信图:描述一个交互,强调对象与对象之间的消息传递;6)状态机图:描述一个对象所处的状态及其变化,是一个类对象所可能经历的所有历程的模型图;7)活动图:描述执行算法的工作流程中涉及的活动,是对人类组织的现实世界中的工作流程建模;

7、8)构件图:描述一组构件及其关系,用于为系统的构件建模型;9)部署图:描述一组节点及其关系,允许评估分配结果和资源分配。节点是一组运行期间的系统资源,如计算机、数据库、设备或存储器。14敏捷UP方法从需求到设计的整个过程,有哪几个模型,主要步骤和产出工件需求阶段:主要实践包括需求讨论会、设想包装练习、计点投票表决等。产出的制品有用例模型、设想、补充性规格材料、词汇表等。设计阶段:主要实践包括敏捷建模、测试驱动开发等。产出的制品有设计模型、软件架构文档、数据模型等。15描述(description)类起什么作用描述类包含描述其他事物的信息。在以下情况需要增加描述类1)需要有关商品或服务的描述,独

8、立于任何商品或服务的现有实例。2)删除其所描述事物的实例(如Item)后,导致信息丢失,而这些信息是需要维护的,但是被错误地与其所删除的事物关联起来。3)减少冗余或重复信息。16建立类模型描述,三角形,五边形,N边行,有向图,无向图,17中文版教材P173,P179多态的图18中文版教材P355状态机图19软件开发是一个很复杂的工程,而采用统一的建模语言来对软件进行描述能够使客户、涉众、开发人员对软件能够有更好的共识,也能够有效地降低复杂性20UML定义了方法和属性的那几种可见性?1)属性可见性一一B是A的属性。2)参数可见性B是A中方法的参数。3)局部可见性一一B是A中方法的局部对象(不是参

9、数)。4)全局可见性一一B具有某种方式的全局可见性。21类图和对象图的关系1)依赖关系(Dependence):假设A类的变化引起了B类的变化,则说名B类依赖于A类。依赖关系有如下三种情况:1、A类是B类的一个成员变量;2、A类是B类方法当中的一个参数;3、A类向B类发送消息,从而影响B类发生变化;2)泛化关系(Generalization):UMLM象图和类图白泛化关系A是B和C的父类,B,C具有公共类(父类)A,说明A是B,C的一般化(概括,也称泛化)在UML1中,对泛化关系有三个要求:1、子类与父类应该完全一致,父类所具有的属性、操作,子类应该都有;2、子类中除了与父类一致的信息以外,还

10、包括额外的信息;3、可以使用父类的实例的地方,也可以使用子类的实例;3)关联关系(Association):类之间的联系,如篮球队员与球队之间的关联(下图所示)。其中,关联两边的employee和employer”标示了两者之间的关系,而数字表示两者的关系的限制,是关联两者之间的多重性。通常有“*”(表示所有,不限),“1”(表示有且仅有一个),“。”(表示。个或者多个),“0,1”(表示。个或者一个),“n.m(表示n到m个都可以),m*(表示至少m个)。4)聚合关系(Aggregation):UMLX寸象图和类图的聚合关系表示的是整体和部分的关系,整体与部分可以分开5)组合关系(Compo

11、sition):UMLM象图和类图的组合关系也是整体与部分的关系,但是整体与部分不可以分开6)实现关系(Implementation):是用来规定接口和实线接口的类或者构建结构的关系,接口是操作的集合,而这些操作就用于规定类或者构建的一种服务。22对象模型的静态和动态两种模型的作用,敏捷建模对产生这两种图形的实践方法是如何建议白,UML态和动态模型各包含那几种图?动态模型有助于设计逻辑、代码行为或方法体,倾向于创建更为优异、困难和重要的图形。静态模型有助于设计包、类名、属性和方法特征标记的定义。静态和动态建模之间具有关系,敏捷建模对此的时间是并行创建模型:花费较短的时间创建交互图(动态),然后

12、转到对应的类图(静态),交替进行。PPT6(第5-7页)23如何发现用例1 .选择系统边界。2 .确定主要参与者一一通过使用系统的服务实现其目标的那些人或事物。3 .确定每个主要参与者的目标。4 .定义满足用户目标的用例,根据其目标对应用例命名PPT3(第11页)24画一张顺序(sequence)图描述顾客购买商品(教材上POSM例子)25UP迭代计划是由哪些因素驱动的?风险(risk-driven)驱动和客户驱动(client-driven)26建模的目的是什么?建模的主要目的是理解和沟通,而非文档27用例的actor有哪些类型1 .主要参与者:调用系统来满足自己的目标2 .次要参与者:为系

13、统提供服务3 .后台参与者:队用例的行为感兴趣28什么是系统顺序图,和顺序图有什么区别系统顺序图说明了系统的输入和输出事件.SSD与系统开发的逻辑视图中的用例实现(use-caserealization)关联.系统顺序图主要用于用例的主成功场景,常见和复杂的替代场景顺序图(不是系统顺序图)是按时间序列显示对象交互顺序图描述了事件的时态序(temporalorder).29扩展本质用例是什么,如何产生它是什么:一份分析文档详细描述了高层用例中识别的功能元素他不是什么:扩展本质用例不是画图,不包括stickfigures,表示系统的方框,或其它图标,尽管与一个图形关联.Step1:命名用例(系统功

14、能,e.g.“输入时间表信息”)Step2:找出相关的参与者.Step3:以客户理解的语言描述用例的意图(intent).Step4:找出与此用例有关的假设和限制,和此用例将扩展或包含的用例Step5:规定理想路径(如果你喜欢用两列)标记为“参与者动作”和“系统响应”,给每一步编号。这构成了用例的基本路径.Step6:识别用户错误,建立替代路径处理错误.30一个软件系统中有那些类型的事件?软件系统基本对三件事响应:来自参与者的外部事件时钟事件缺陷或异常31中文版教材P110,P111,P122有关图形的说明和解释32从操作契约描述的角度看,领域模型有那几种状态变化领域模型状态变化包括:1创建实

15、例2形成或消除关联3改变属性33什么是模型在开发一个软件期间所产生的中间描述或文档模型是正在构建的系统某方面的表示(representation)34什么是Descoping从迭代中移去任务或需求,并将其分配到将来的某个迭代中处理,而不是推迟完成时间。35什么是关联,关联的角色,什么是依赖,什么是泛化,聚合和组合关联是类(更精确地说,是这些类的实例)之间的关系,表示有意义和值得关注的连接。在UML中,关联被定义为“两个或多个类元之间的语义联系,涉及这些类元实例之间的连接”。它使一个类的可见属性和方法被另一个类使用。关联是一种结构关系,规定一个对象和另一个对象联接。依赖是一种使用关系,说明一个事

16、物的规格说明改变会对使用它的事物产生影响。泛化是一般性的事物(超类或者父类)和更特殊事物(子类)之间的关系。聚合用来表明一个类是实际上拥有但可能共享另一个类的对象。(整体/部分关系)(has-a关系)组合是聚合的一种,并且是更严格的整体/部分关系:部分的实例在某一时刻只属于唯一的组合实例。部分永远属于某一组合,并且组合负责建立,删除部分.(如果组合被删除,部分必须被删除,或依附于另一个组合)36软件开发方法学定义,包括什么内容。多年以来,已经试验了许多不同的开发软件策略,一些特别成功的或者广泛适用的策略已经形成并作为方法学发表方法学对软件开发在至少两个重要方面提出了指导:(1)方法学定义了能够有助于开发一个系统的若干模型(2)方法学定义了一组规范表示法来描写建议的模型,形成文档方法学还定义了软件开发中包含的各种不同

温馨提示

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

评论

0/150

提交评论