第九章 对象约束语言
- 格式:ppt
- 大小:289.00 KB
- 文档页数:22
一、填空题1、软件对象可以这样定义:所谓的软件对象,是一种将状态和行为有机结合起来形成的软件构造模型,它可以用来描述现实世界中的一个对象。
2、类是具有相同属性和操作的一组对象的组合,即抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。
3、面向对象程序的基本特征是抽象、封装、继承和多态。
4、在UML中主要包括的视图为静态视图、用例视图、交互视图、状态机视图、活动视图、物理视图和模型管理视图。
5、UML图包括:用例图、类图、状态图、序列图、活动图、构件图和部署图。
6、用例图描述了系统的参与者与系统进行交互的功能,是参与者所能观察和使用到的系统功能的模型图。
一个用例是系统的一个功能单元,是参与者与系统之间进行的一次交互作用。
7、状态机视图是通过对象的各种状态建立模型来描述对象随时间变化的动态行为,并且它是以独立的对象为中心进行描述的。
8、用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系。
9、在UML中定义了4种基本的面向对象的事物,分别是结构事物、行为事物、分组事物和注释事物等。
10、使用Rational Rose建立的Rose模型中包括4种视图,分别是用例视图、逻辑视图、构件视图和部署视图。
11、在用例视图中包括了系统中的所有参与者、用例和用例图,必要时还可以在用例视图中添加顺序图、协作图、活动图和类图等。
12、逻辑视图关注系统如何实现用例中所描述的功能,主要是对系统功能性需求提供支持,即系统应该提供的功能。
13、构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系,包含模型代码库、执行文件、运行库和其他构件等信息。
14、部署视图显示的是系统的实际部署情况,它是为了便于理解系统如何在一组处理节点上的物理分布,而在分析和设计中使用的构架视图。
15、Rational统一过程以一种能够被大多数项目和开发组织适应的形式建立起来,其所包含的6项最佳实践为:迭代式软件开发、需求管理、基于构件的架构应用、建立可视化的软件模型、软件质量验证、软件变更控制。
需求分析复习重点考试简答题重点:一、软件需求从层次上分哪三类?业务、用户、系统业务需求:抽象层次最高需求,是系统建立战略出发点,表现为高层次目标,描述了组织为什么要开发系统;用户需求:执行实际工作用户对系统所能完成具体任务期望,描述了系统能够帮助用户做些什么。
表达了用户对系统期望。
系统需求:用户对系统行为期望,一系列系统需求联系在一起可以帮助用户完成任务,达成用户需求,进而满足业务需求;可以直接映射为系统行为,定义了系统中需要实现功能,描述了开发人员需要实现什么。
业务需求一一目标(最高层次)用户需求一一具体任务系统需求一一系统行为联系:业务需求可以明确系统最终目标和努力方向,进而指导具体需求获取活动,发现用户需求;用户需求经过明确和细化处理,可以转化为系统需求。
二、软件需求分哪儿种活动?包括需求开发和需求管理需求开发4 (获取、分析、规格说明,需求验证)+1 (需求管理:版本管理,追踪,控制)需求JL程需求开发需求管理软件需求工程分为需求开发和需求管理两部分1、需求开发任务可进一步细分为4点>需求获取(是从人、文档或者环境当中获取需求过程)>分析(建模来整合各种信息)>规格说明(获取需求需要被编写成文档,在系统涉众之间交流需求信息)>验证(确保需求规格说明文档能正确、准确反映用户意图)2、需求管理保证需求作用在整个软件产品生命周期中连续、稳定和有效发挥需求管理子活动有以下3点:>建立和维护需求基线集A建立需求跟踪信息>进行变更控制三、需求获取有哪儿种方法?(要举例)传统方法、集体获取方法、认知方法、采样…1.传统方法问卷调查、面谈、硬数据分析、文档检查、需求剥离等2.集体获取方法头脑风暴(Brainstorming) 专题讨论会(Workshop) >JAD等3.认知方法任务分析(Task Analysis)、协议分析(Protocol Analysis)等4.采样随机采样、分层采样5.原型书面描绘、幻灯片演示、程序代码6.基于上下文方法观察、民族志(Ethnography)和话语分析(Conversation Analysis )四、分析建模有哪儿种常见手段,分别举例(ppt有)1、结构化需求分析建模>过程建模(过程建模以DFD为中心,结合使用微规格说明、数据字典、ERD、FDD、PDD等技术一起完成结构化分析建模任务)>数据建模(模型建立:ERD)2、面向对象需求分析建模:它以UML为基础,综合使用了多种不同分析技术,主要有:对象模型、用例模型、行为模型、状态机模型、对象约束语言。
UML 基础与 Rose 建模复习资料1-4 章一、主要内容1、对象与类的定义对象:是面向对象系统的基本构造块,是一些相关的变量和方法的软件集。
(对象经常用于建立对现实世界中的一些基本构造块)注:客观世界里的任何实体都可以被称为对象。
对象可以是具体的、有形的物,也可以是无形的事物或概念。
对象是问题域或实现域中某些事物的一个抽象。
对象是一个封装数据属性和操作行为的实体。
类:是具有相同属性和操作的一组对象的组合。
也就是说,抽象模型中的“类”描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。
2、面向对象的基本特征:1)抽象:抽象忽略了事件中与当前目标无关的非本质特征,强调与当前事物相关的特征,并将事物正确的归类,得出事物的抽象模型,并且为对象的重用提供了保障2)封装:就是把对象的状态和行为绑到一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的内部细节。
3)继承:是指特殊类的对象拥有其一般类的属性和行为。
4)多态性:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
3、 UML 包含的视图以及这些视图都对应的图UML 中主要视图有:静态视图、用例视图、交互视图、状态机视图、活动视图、物理视图、模型管理视图对应的图如下图所示4、 UML 包含的图以及图的作用在下面的各章节中都分别有总结,这里就不总结5、 UML 中模型元素的主要关系UML 中主要包含 4 种关系:依赖、关联、泛化、实现依赖:指的是两个事物之间的语义,当其中一个事物(独立的事物)发生变化就会影响另外一个事物(依赖事物)的语义。
关联:是一种事物之间的结构关系,用它来描述一组链,链是对象之间的连接。
泛化:事物之间的一种特殊 / 一般关系,特殊原子(子元素)的对象,也就是我们在面向对象学中常常提起的继承。
实现:实现关系也是 UML 元素之间的一种语义关系,它描述了一组操作的规约和一组对操作的具体实现之间的语义关系。
需求工程习题集一、选择题1、需求获取的成果(A)。
A、获取笔录、录音或摄像B、客户C、需求规格说明文档D、设计说明书2、项目前景与范围文档中,项目前景不应包括什么信息(B)。
A、前景概述B、详细的功能需求C、主要特性D、假设与依赖3、下列不属于需求开发的活动的是(B)。
A、需求获取B、需求管理C、需求验证D、需求分析4、面谈的类别不包括(C)。
A、结构化面谈B、半结构化面谈C、封闭式面谈D、非结构化面谈5、采用观察方法进行需求获取的原因(C)。
A、用户多B、客户变化D、事件的情景性D、存在默认知识6、确定需求优先级的常用的方法(A)。
A、累计投票B、协商C、需求细化D、需求建模7、需求评审是(B)中常用的一种方法。
A、需求获取B、需求验证C、需求分析D、需求管理8、需求跟踪是(D)中的一个活动。
A、需求获取B、需求验证C、需求分析D、需求管理9、针对客户需求文档进行文档审查的时候,采用的方法是(C)。
A、需求重用B、文档分析C、需求剥离D、民族志10、下列不是过程建模中使用的技术是(C)。
A、上下文图B、数据流图C、E-R图D、微规格说明11、针对相关产品的需求规格说明进行文档审查的时候,采用的方法是(C)。
A、需求剥离B、文档分析C、需求重用D、民族志12、下列不是用例模型的基本元素的是(A)。
A、用例B、参与者C、实体D、系统边界13、下列不属于需求验证的方法的是(B)。
A、需求评审B、需求分析C、利用跟踪关系D、开发测试用例15、需求分析的最终结果产生的是(C)。
A、项目开发计划B、可行性分析报告C、需求规格说明书D、设计说明书16、最常见的IEEE1998将需求分成5种类别,下列哪个不是5种类别的是(D)。
A、功能需求B、性能需求C、质量属性D、需求获取17、下列不属于面向对象建模中所使用的技术是(C)。
A、用例模型B、行为模型C、数据模型D、对象模型18、下列不属于获取信息的内容的是(D)。
第一章需求工程概述需求工程包含哪些基本活动。
第二章需求基础1、需求的定义。
(1)用户为了解决问题或达到某些目标所需要的条件或能力;⏹(2)系统或系统部件为了满足合同、标准、规范或其它正式文档所规定的要求而需要具备的条件或能力;⏹(3)对(1)或(2)中的一个条件或一种能力的一种文档化表述。
2、需求的分类。
⏹功能需求(Functional Requirement):❑和系统主要工作相关的需求,即在不考虑物理约束的情况下,用户希望系统所能够执行的活动,这些活动可以帮助用户完成任务。
功能需求主要表现为系统和环境之间的行为交互。
⏹性能需求(Performance Requirement):❑系统整体或系统组成部分应该拥有的性能特征,例如CPU使用率、内存使用率、系统的相应时间等。
⏹质量属性(Quality Attribute):❑系统完成工作的质量,即系统需要在一个“好的程度”上实现功能需求,例如可靠性程度、可维护性程度等。
⏹对外接口(External Interface):❑系统和环境中其他系统之间需要建立的接口,包括硬件接口、软件接口、数据库接口等等。
⏹约束❑进行系统构造时需要遵守的约束,例如编程语言、硬件设施等3、功能需求的层次性系统需求(1)业务需求●系统建立的战略出发点,表现为高层次的目标(Objective),它描述了组织为什么要开发系统●为了满足用户的业务需求,需求工程师需要描述系统高层次的解决方案,定义系统应该具备的特性(Feature)●参与各方必须要对高层次的解决方案达成一致,以建立一个共同的前景(Vision)●特性说明了系统为用户提供的各项功能,它限定了系统的范围(Scope)(2)用户需求●执行实际工作的用户对系统所能完成的具体任务的期望,描述了系统能够帮助用户做些什么●模糊性,不清晰(3)系统需求●用户对系统行为的期望,一系列的系统行为联系在一起可以帮助用户完成任务,满足业务需求●系统需求可以直接映射为系统行为,定义了系统中需要实现的功能,描述了开发人员需要实现什么●将用户需求转化为系统需求的过程是一个复杂的过程⏹首先需要分析问题领域及其特性,从中发现问题域和计算机系统的共享知识,建立系统的知识模型;⏹然后将用户需求部署到系统模型当中,即定义系列的系统行为,让它们联合起来实现用户需求,每一个系统行为即为一个系统需求。
计算机辅助软件工程(CASE)复习资料选择题1. 下面哪个UML视图是描述一个对象的生命周期的A. 类图B. 状态图C. 协作图D. 组件图2.类的定义不包含以下的要素A.类的属性B.类所要执行的操作C.类的编号D.属性的类型3.对反应型对象建模一般使用A.状态图B.序列图C.活动图D.类图4.下列关于接口关系的说法不正确的是A.接口是一种特殊的类B.所有接口都是有构造型<<interface>>的类C.一个类可以通过实现接口从而支持接口所指定的行为D.程序运行时,其他对象不仅需要依赖于此接口,还要知道该类对接口实现的其他信息5.下列关于系统的模型组织结构的说法不正确的是A.将系统的模型组织分层或分组能够将一个大系统进行分解,降低系统的复杂度B.将系统的模型组织分层或分组使单块模型没有适用于其他情况的可重用的单元C.将系统的模型组织分层或分组能够允许多个项目开发小组同时使用某个模型而不发生过多的相互牵扯D.将系统的模型组织分层或分组使一个小的、独立的单元所进行的修改所造成的后果可以跟踪确定6. UML体系包括三个部分:UML基本构造块,UML公共机制和A.UML规则B.UML命名C.UML模型D.UML约束7.下列对用例的泛化关系描述不正确的是A.用例的泛化关系中,所有的子用例都有相似的目的和结构。
注意它们是整体上的相似B.用例的泛化关系中,基础用例在目的上可以完全不同,但是它们都有一段相似的行为,它们的相似是部分的相似不是整体的相似C.用例的泛化关系类似面向对象中的继承,它把多个子用例中的共性抽象成一个父用例。
子用例在继承父用例的基础上可以进行修改D.用例的泛化指的是一个父用例可以被特化形成多个子用例,而父用例和子用例之间的关系就是泛化关系8.关于协作图的描述,下列哪个不正确A.协作图作为一种交互图,强调的是参加交互的对象的组织B.协作图是序列图的一种特例C.协作图中有消息流的顺序号D.在ROSE工具中,协作图可在序列图的基础上按“F5”键自动生成9.下面不是状态图组成要素的是A.状态B.转换C.初始状态D.链10.在软件测试中,“高产”的测试是指A.用适量的测试用例运行程序,证明被测程序正确无误B.用适量的测试用例运行程序,证明被测程序符合相应的要求C.用少量的测试用例运行程序,发现被测程序尽可能多的错误D.用少量的测试用例运行程序,纠正被测程序尽可能多的错误11.在UML中,接口有几种表达方式A. 2B. 4C. 6D. 812.下面不是活动图组成要素的是A.生命线B.动作状态C.泳道D.活动状态13.模块内所有成分形成一个整体,完成单个功能,则称其为A.过程性内聚B.时间性内聚C.功能性内聚D.偶然性内聚14.为了提高软件集成测试的效果,承担软件集成测试工作的人员最好是A.该软件的设计人员B.该软件开发组的负责人C、该软件的编程人员D.不属于该软件开发组的软件设计人员15.组成UML有三种基本的建筑块是:关系,图和A.事物B.类C.用例D.实体16.下列四个选项中,哪个不会出现在协作图中A.对象B.控制焦点C.消息D.对象间的连接17.下列关于对象约束语言的特性,说法不正确的是A.对象约束语言不仅是一种查询语言,同时还是一种约束语言B.对象约束语言是一种弱类型的语言C.对象约束语言是基于数学的,但是却没有使用相关数学符号的内容D.对象约束语言也是一种声明式语言18.缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题的软件需求模型是A.瀑布模型B.原型模型C.增量模型D.螺旋模型19.程序的三种基本控制结构是A.过程,子程序,分程序B.顺序,条件,循环C.递归,堆栈,队列D.调用,返回,转移20.部署图的组成不包括A.处理器B.设备 C.构件 D.链接21.组成UML有三种基本的建筑块是事物、图和A. 关系B. 类C. 用例D. 实体22. UML体系包括三个部分:UML基本构造块,UML公共机制和A. UML规则B. UML命名C. UML模型D. UML约束23. 在类图中,“+”表示的可见性是A. PublicB. ProtectedC. PrivateD. Package24. 下面哪个视图属于UML语言的交互图A. 行为图B. 状态图C. 实现图D. 顺序图25. 下面哪个不是UML中的静态视图A. 用例图B. 状态图C. 对象图D. 类图26. 在类图中,哪种关系表达总体与局部的关系A. 泛化B. 实现C. 聚合D. 依赖27. 顺序图包含类角色,生命线,激活期和A.关系 B.消息C.用例D.实体28. 在ATM自动取款机的工作模型中(用户通过输入正确的用户资料,从银行取钱的过程),下面不是“Actor”的是A. 用户B. ATM取款机C. ATM取款机管理员D. 取款29. 可以认为对象不是A.某种可被人感知的事物B.思维、感觉或动作所能作用的物质C.思维、感觉或动作所能作用的精神体D.不能被思维、感觉或动作作用的精神体30.类的定义不包含以下的要素A.类的属性B.类所要执行的操作C.类的编号D.属性的类型31.下列关于交互视图说法正确的是A.交互视图描述了执行系统功能的各个角色之间相互传递消息的顺序关系,是描绘系统中各个角色或功能交互的模型B.交互视图包含类图和序列图C.交互视图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求D.交互视图是参与者所能观察和使用到的系统功能的模型图32.两个模块间通过参数交换信息,而传递的信息中含有控制信息,则称其为A.数据耦合B.控制耦合C.外部耦合D.公共耦合33.模块内所有成分形成一个整体,完成单个功能,则称其为A.过程性内聚B.时间性内聚C.功能性内聚D.偶然性内聚34.缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题的软件需求模型是A.瀑布模型B.原型模型C.增量模型D.螺旋模型35.程序的三种基本控制结构是A.过程,子程序,分程序B.顺序,条件,循环C.递归,堆栈,队列D.调用,返回,转移36.结构化程序设计的一种基本方法是A.筛选法B.递归法C.归纳法D.逐步求精法37.动作状态A.是非原子性的动作或操作的执行状态B.不是原子性的动作或操作的执行状态,它能被外部事件的转换中断C.通常用于对工作流执行过程中的步骤进行建模D.从理论上讲,所占用的处理时间极长38.UML的全称是A. Unify Modeling LanguageB. Unified Modeling LanguageC. Unified Modem LanguageD. Unified Making Language39.在软件测试中,“高产”的测试是指A.用适量的测试用例运行程序,证明被测程序正确无误B.用适量的测试用例运行程序,证明被测程序符合相应的要求C.用少量的测试用例运行程序,发现被测程序尽可能多的错误D.用少量的测试用例运行程序,纠正被测程序尽可能多的错误40.下列各项中不属于测试过程中的输入的是A.软件配置 B.测试配置 C.测试工具 D.测试用例41. 面向对象设计的基本特性除了封装和多态之外,还包括A. 一致性B. 完整性C. 继承性D. 可移植性42. UML的概念模型不包括A. 应用领域B. 规则C. 基本构造块D. 公共机制43. 如果对银行ATM的常用功能进行建模,包括取款、存款、转账、查询等,可以用来表示该系统的功能需求的是A. 序列图B. 用例图C. 活动图D. 对象图44.一个用例中加入一些新的动作后则构成了另一个用例,这两个用例之间的关系是A. 聚集B. 泛化C. 扩展D. 包含45. 通常把一组具有相同数据结构和相同操作的对象的集合定义为A. 类B. 属性C. 对象D. 消息46. 多对象是UML哪个视图中的概念A. 类图B. 状态图C. 协作图D. 组件图47. UML中关联的多重性是指A. 一个类由多少个方法被另一个类调用B. 一个类的实例能够与另一个类的多少个实例相关联C. 一个类的某个方法被另一个类调用的次数D. 两个类所具有的相同的方法和属性48. 在结构建模中,关系建模具有重要地位,下面关系中不属于基本关系的是A. 泛化B. 依赖C. 交互D. 关联49下面哪一个不是包的内聚性有三原则A. 重用发布等价原则B. 共同重用原则C. 共同封闭原则D. 共同继承原则50.UML体系包括三个部分:UML基本构造块,UML公共机制和A.UML规则B.UML命名C.UML模型D.UML约束51.下面哪个视图属于UML语言的交互图A. 行为图B. 顺序图C. 状态图D. 实现图52.顺序图是强调消息随时间顺序变化的交互图,描述顺序图的组成部分不包括A. 角色B. 转换C. 生命线D. 消息53.下面哪个UML视图是描述一个对象的生命周期的A. 类图B. 状态图C. 协作图D. 顺序图54.将活动图中的活动状态进行分组,每一组表示一个特定的类、人或部门,他们负责完成组内的活动。