UML期末复习答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
简答题
请指出UML的三个主要的特性。
答:(1)UML是一种语言,是一种表示法,本身不包含任何方法论的部分;
(2)UML是一种建模语言,不是用于编程而是用于建模。
(3)UML是统一的标准,得到众多
UML是一种方法论吗?并简要说明理由。
答:UML不是方法论。它仅仅是一种描述模型的标准语言,虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。
应用UML的三种方式是什么?
答:1)、UML作为草图----用于探讨问题或解决方案空间的复杂部分。
2)、UML作为蓝图----相对详细的设计图,用于:逆向工程或代码生成(前向工程3)、UML作为编程语言----用UML完成软件系统可执行规格说明,代码可能被自动生成。
构造型的作用是什么?
答:构造型用来定义一些特定于某个领域或某个系统的构造块。用来扩展建模元素,增加建模元素的语义
应用UML的三种透视图是什么?
答:1)、概念透视图:用图来描述现实世界或关注领域中的事物。
2)、规格说明(软件)透视图:用图来描述软件抽象物或具有规格说明和接口的构建,但并不约定特定的实现。
3)、实现(软件)透视图:用图来描述特定技术(如Java)中的软件实现。
请简要解释主动类的概念,并说明它建模的意义?
答:主动类的实例称为主动对象,一个主动对象拥有一个控制线程并且能够发起控制活动;它不在别的线程、堆栈或状态机内运行,具有独立的控制期。从某种意义上说,它就是一个线程。
什么是敏捷开发?
答:敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
请说明对象图的适用场景以及它的优缺点?、
答:对象图适用于论证类模型的设计以及对源代码进行分析和说明。其优点是能够直观理解出系统运行时的实时状态,缺点是比较复杂,工作量大。
什么是UP的阶段?
答:
1).初始:大体上的构想、业务案例、范围和模糊评估。(立项阶段)
2).细化:精化构想、核心架构的迭代实现、高风险的解决、确定大多数需求和范围以及进行更为实际的评估。(功能需求)
3).构造:对遗留下来的风险较低和比较简单的元素进行迭代实现,准备部署。(开发实现)
4).移交:进行测试和部署。(交付使用)
用例和使用场景之间是什么关系?与协作又是什么关系?
答:用例是由一组用例实例组成的,用例实例也就是常说的“使用场景”,而协作是用例的实现。
在用例图中参与者是什么,它属于系统范围之内吗?
答:参与者是为了完成一个事件而与系统交互的实体,它不属于系统范围之内。
请简要阐述在软件开发过程中使用UML的必要性以及好处。
答:软件开发是一个很复杂的工程,而采用统一的建模语言来对软件进行描述能够使客户、涉众、开发人员对软件能够有更好的共识,也能够有效地降低复杂性。
领域模型的状态变化包括那三种?
答:领域模型状态变化包括创建用例、形成或消除关联以及改变属性。
寻找概念类的三种策略是什么?
答:
1)重用和修改现有的模型:这是首要、最佳且最简单的方法。可以从已发布的领域
模型和书籍中获得。
2)使用分类列表
3)通过识别名词短语寻找概念类。在对领域的文本性描述中识别名词和名词短语,
将其作为候选的概念类或属性。
关联是什么?
答:表示类与类之间的连接,两个分析类以某种方式相互联系,这些联系被称作关联。它使一个类的可见属性和方法被另一个类使用。
详述以下问题
说说UML中有哪几种图。
答:1、第一类是用例图,描述一组用例,参与者及其它们之间的关系,是外部用户所能观察到的系统功能的模型图。用于需求建模。
2、类图,描述一组类之间的关系。用于对应用领域中的概念以及与系统实现有关的内部概念建模。
3、对象图,描述一组对象之间的关系。它是对象类图的一个实例,表示在某一时刻系统对象的状态、对象之间关系的状态以及对象行为静态方面的状态。。
而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。
4、顺序图,描述一个交互,表示了对象之间传送消息的时间顺序。
5、协作图,描述一个交互,强调对象与对象之间的消息传递。
6、状态图,描述一个对象所处的状态及其变化,是一个类对象所可能经历的所有历程的模型图
7 、活动图,描述执行算法的工作流程中涉及的活动,是对人类组织的现实世界中的工作流程建模。
8 构件图,描述一组构件及其关系,用于为系统的构件建模型。
9 部署图,描述一组节点及其关系,允许评估分配结果和资源分配。节点是一组运行期间的系统资源,如计算机、数据库、设备或存储器。
说说UML模型元素的组成。
答:UML中的模型元素包括事物和事物之间的联系。事物是UML中重要的组成部分,它代表任何可以定义的东西。事物之间的关系能够把事物联系在一起,组成有意义的结构模型。
每一个模型元素都有一个与之相对应的图形元素。UML模型元素中事物可以分为结构事物、动作事物、分组事物和注释事物。结构事物分为:类、接口、协作、用例、活动类、组件和节点;UML模型元素中动作事物是UML模型中的动态部分,它们是模型的动词,代表时间和空间上的动作。交互和状态机是UML模型中最基本的两个动态事物元素;分组事物是UML模型中组织的部分,分组事物只有一种,称为包;
注释事物是UML模型的解释部分。
UML模型元素中事物间的关系有关联关系、依赖关系、泛化关系、实现关系、聚合关系。
UML中,消息的分类可以从哪两个角度区分,请具体说明。
答:消息序列可以用两种图来表示:顺序图(突出消息的时间顺序)和协作图(突出交换消息对象间的关系)
说说模型-视图分离原则。
答:支持内聚的模型定义,这些定义只关注领域过程,而不是用户界面。
–允许对模型和用户界面层分别进行开发。
–使界面的需求变更对领域层的影响最小化。
–允许新视图能够被方便地连接到现有的领域层之上,而不会对领域层产生影响。
–允许对同一模型对象同时使用多个视图,例如销售信息同时具有表格和业务图表视图。
–允许模型层的运行不依赖于用户界面层,例如,消息处理或批处理模式的系统。
–允许模型层能够简便地移植到另一个用户接口框架下
逻辑架构是什么?
答:逻辑架构是软件类的宏观组织结构,它将软件类组织为包(或命名空间)、子系统和层等。之所以称其为逻辑架构,是因为并未决定如何在不同的操作系统三进程或网络中物理的计算机上对这些元素进行部署(后一种决定是部署的一部分)
说说如何创建领域模型?如何找到概念类?
答:如何创建领域模型
1)寻找概念类
2)将其绘制为UML类图中的类
3)添加关联和属性。
如何找到概念类
1)重用和修改现有的模型:这是首要、最佳且最简单的方法。
2)使用分类列表
3)通过识别名词短语寻找概念类
具体说明对象模型有那两种类型及其作用,对建立对象模型敏捷建模建议的实践方法是什么?
应用题
画类图