第十一篇对象约束语言(UML)
- 格式:ppt
- 大小:144.50 KB
- 文档页数:24
一、填空题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项最佳实践为:迭代式软件开发、需求管理、基于构件的架构应用、建立可视化的软件模型、软件质量验证、软件变更控制。
1、软件工程的生命周期:需求分析阶段;系统分析与设计阶段;系统实现阶段;测试阶段;维护阶段。
2、建模的目标是:(1)便于开发人员展现系统;(2)允许开发人员制定系统的结构或行为;(3)提供指导开发人员构造系统的模板;(4)记录开发人员的决策。
建模的实质是:对现实的简化;通过将问题分割成一系列可以解决的、较小的问题来解决复杂问题。
3、建模的四原则是:(1)认真选择模型;(2)每个模型可以有多种表达方式;(3)最好的模型总是能够切合实际;(4)孤立的模型是不完整的。
4、面向对象=对象+类+继承+通信。
继承是指子类可以自动拥有父类的全部属性与操作;使得父类和子类之间能够共享数据和方法。
继承简化了对现实世界的描述,定义子类时不必重复定义那些在父类中已经定义过的属性与操作。
而只需专注于自己特有的属性与操作。
有了继承机制,软件的可复用性得到提高。
多态是指同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
通常通过派生类重载基类中的同名函数来实现。
分为:编译时的多态性和运行时的多态性。
5、面向对象的程序设计语言有:基于Smalltalk的语言;基于C的语言;基于LISP的语言;基于Pascal的语言。
6、面向对象分析的基本原则:抽象原则;分类原则;聚合原则;关联原则;消息通信原则。
7、面象对象分析的层次共有:主题层;类与对象层;结构层;属性层;服务层。
在设计期间主要扩充4个组成部分:人机交互子系统部分、问题域子系统部分、任务管理子系统部分、数据管理子系统部分。
8、Rstional Rose的主界面由标题栏、菜单栏、工具栏、工作区和状态栏组成。
默认的工作区由左侧的浏览器和文档区,右侧的编辑区和下方的日志记录组成。
9、Rational Rose中有4个视图:(1)用例视图:只关注系统功能的高层形状,不关注系统的具体实现方法;(2)逻辑视图:关注系统如何实现用例中提出的功能,提供系统的详细图形,描述组件之间如何关联。
模型是对现实的抽象或模拟,是对现实系统的本质特征的一种简化、直观、类比和抽象的描述。
特征:反映性、简化性、直观性、抽象性模型的类型1). 从学科分:思维模型、社会模型、工程模型、建筑模型、软件模型2). 从形物化角度分:逻辑模型、实体模型3). 从抽象程度分:概念模型、逻辑模型、物理模型。
建模:建立模型的过程被称为建模。
建模的必要性:软件是人智力劳动的产物,具有极高的智能特性。
软件没有物理实体的物理形态,而是智能、逻辑和算法的描述。
软件具有高度抽象性。
软件开发是高度复杂性工作,软件的规模越来越大,功能越来越复杂,服务领域越来越广泛。
综上:软件的开发和生产必须借助于模型,来反映和描述软件中间的开发过程和开发状态。
软件模型通过一定的形式和方法用来描述软件的模型。
软件建模:建立软件模型的过程被称为软件建模。
软件模型的内容:业务模型、需求模型、逻辑模型、设计模型、实现模型、测试模型。
面向对象建模在软件开发中,采用与人的思维过程相一致的,直接面向客观事物,面向所要解决的需求问题,并用一套对象、类、继承、消息等机制开发软件的系统性软件建模方法。
特点:对象是软件建模的重心;包括需求、设计、实现等多种模型;属一类建模方法,而非一种方法。
对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。
对象既可以描述客观存在的事物,也可以表示由人主观构造的抽象观念。
类用来描述具有相同性质的一组对象。
关联:对具有共同结构特征、关系和语义的链接描述。
聚合:聚合表示有多个部分聚集成为整体,表示部分构成整体的一种松散的关系。
组合泛化依赖:表示两个模型元素之间的语义联系,指一个模型元素发生变化,必然影响到另外一个模型元素。
封装是把某些可以独立存在的内容封裹起来,构成一个整体,并把内部细节隐藏起来,仅向外部提供可以提供的外在描述。
对象的封装是把对象的属性和操作结合成一个独立的系统单位,并隐藏对象的内部细节,向外部提供对象的接口。
UML语言的建模1.UML语言概述1.1面向对象面向对象是一种认识客观世界的世界观,这种世界观将客观世界看成是有许多不同种类的对象构成的,每个对象有自己的内部状态和运动规律,不同对象之间的相互联系、相互作用就构成了完整的客观世界。
面向对象是从结构组织的角度去模拟客观世界的一种方法,这种方法的基本着眼点是构成客观世界的那些成分----对象。
对象是现实世界中个体或事物的抽象表示,是其属性和相关操作的封装。
属性表示对象的性质,属性值规定了对象所有可能的状态。
对象的操作是指该对象可以展现的外部服务。
类是某些对象的共同特性的表示,它描述了这些对象内部是如何构造的。
相同类的对象在它们的操作和它们的信息结构两个方面都有相同的定义。
在面向对象系统中,每个对象都属于一个类。
面向对象技术具有以下的基本特征:抽象性、封装性、继承性、多态性。
面向对象程序设计语言也多种多样:20世纪60年代,出现了最早的面向对象程序设计语言Simula67语言,具有了类和对象的概念,被公认为是面向对象语言的鼻祖。
随后又推出了纯面向对象程序设计语言,如美国Xerox Palo Alto研究中心推出的Smalltalk,它完整地体现并进一步丰富了面向对象的概念。
进而出现了混合型面向对象程序设计语言,如 C++,这类语言一般是在其他语言的基础上开发出来的。
还有与人工智能语言结合形成的面向对象程序设计语言,如LOOPS、Flavors和CLOS。
以及适合网络应用的面向对象程序设计语言,如 Java语言等。
1.2 UML语言UML (Unified Modeling Language)又称统一建模语言或标准建模语言,是一种面向对象的建模语言,它是运用统一的、标准化的标记和定义实现对软件系统进行面向对象的描述和建模。
UML是OOA和OOD的常用工具。
使用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)。