uml 软件工程期末考试复习材料

一、 名词解释

1、 软件工程——

建立在系统化、规范化、数量化等工程原则和方法上的,关于软件开发各阶段的定义、任务和作用的工程学科。p1包括软件开发技术、软件项目管理两方面内容。

2、 模型——

对现实的简化,提供系统的蓝图,包含架构[总体]设计和组件[详细]设计;包含重要的因素忽略不相干的细节;一个系统可以从不同视角使用不同模型进行描述;模型可以是架构的[侧重于组织]、也可以关注行为[系统的动作] p3

3、 对象——

现实世界中具有静态特征和动态特征的某个具体的实际事物。P6

4、 封装——

把属性和操作封在一个对象里,不允许外界直接存取和使用。包含属性与行为的结合和信息屏蔽两层含义。P7

5、 消息——

向对象发出的[服务]请求,包括服务的对象标识、服务标识、输入信息和回答信息等。P7定义对象之间单路通信,是从发送方到接收方的控制流,激发某操作、唤醒信号或导致对象的创建或撤消。P164用箭头表示,符号见表10-1

6、 继承——

派生类或子类自动拥有基类或父类的全部属性和操作的类创建方法。P8

7、 多态——

同一操作作用于不同对象,有不同解释或不同的执行结果。P9两种——编译时、运行时;3实现方式——接口、继承、抽象类。

8、 UML——

一种功能强大的、面向对象的可视化系统分析的建模语言p23

[对面向对象系统进行可视化、详述、构造和文档化的工具,已成为软件建模的工业标准。]

9、 视图——

从某个方面或角度出发描述系统,或表达系统某个方面特征的一个或多个图。p63

10、 动作事物——

时间、空间上的动作,模型的动词;最基本的是交互与状态机p69

11、 交互——

一组对象在特定上下文、为达到特定目的进行一系列消息交换组成的动作,要列出每个操作的消息、动作次序、连接关系。p69

12、 状态——

13、 用例——P78

14、 事件流——P79

15、 对象关联——

16、 可见性——

描述属性和操作是否可被其他类引用p95

17、 活动——

18、 激活——

对象被占用以完成某任务,用矩形条表示。P165

19、 状态——

对对象或交互在其生命周期中所满足的条件、执行某些动作或等待某些事件的抽象。P47

20、 迁移——

两种状态之间的关联描述,指特定事件发生且满足某种条件时由前一状态进入后一状态,也称为激活迁移,由“源状态”转换到“目标状态”。P50

21、 动作——

动作P134一组最小的可执行行为,耗时与外界历时比可忽略

22、 动作[状态]——

原子的不可中断的行为状态。

23、 状态机——

由输入集、输出集、状态集及其映射关系集构成的、记录给定时刻或状态下事物根据不同输入所引起的变化而改变状态或引发动作。

24、 软件开发——

针对问题进行软件需求与系统分析、设计、编程、测试和维护的求解过程,主要活动有两个:认识和描述问题、解决问题。

25、 用例——

抽象描述系统产生对特定参与者有价值而且可观测的结果而执行的一组动作。P69系统与特定角色交互执行的一系列动作。

26、 活动类——

其对象有一个或多个进程或线程的类

27、 组件——

28、 节点——

29、 面向对象——

从事物的本质特点出发来看待事物、分析事物及其相互的内在关系的方法论。

30、 类——

具有相同属性与服务的一组对象的集合。

31、 元模型——

定义用于描述模型的体系结构和语言,是元元模型的实例。

32、 模型——

对客观存在的研究对象或将要建立的系统构成与行为的抽象描述,有赖于抽象方法和观察视角或层次。

33、 属性p95——

类所代表的事物特性,3种可见性

34、 操作p96——

一类对象能做事务的抽象,相当于服务的实现,由返回类型、名称和参数表构成的签名完整描述。4类可见性:包内公有“~

35、 职责p97

—类或其它元素的契约或义务,是特征属性和行为操作的较高层次集合命名

36、 转换p132——

特定事件发生或某条件满足时对象完成一定动作而从源状态转变到目标状态,分4种:内、外、完成、复合。

P132包括5部分信息:源、目标、触发事件、监护条件、动作

37、 监护条件P134——

触发转换必须满足的条件,是一个布尔表达式。

38、 泳道图——

将动作、状态及动作按负责的对象用垂直线进行分组的活动图p146

39、 状态——

对对象或交互在其生命周期中所满足的条件、执行某些动作或等待某些事件的抽象。

40、 组件(Component)

p185:是系统中定义良好接口的、可替换的物理实现单元;可以是源代码、二进制或可执行的组件。

41、 节点(Node)p196

——运行时计算资源的物理要素,具有内存和运算能力、位置

双向工程

二、 选择题

优秀的程序除了功能正确、性能优良以外,还应该易读、易用、易维护p1

软件工程包括两方面内容:软件开发技术和软件项目管理。软件开发技术包括软件开发方法学、软件工具和软件工程环境;软件项目管理包括软件度量、项目估算、进度控制、人员组织、配置管理和项目计划等

经典的软件工程思想将软件开发分成5个阶段:需求分析阶段(Requirements Capture)、系统分析与设计(System Analysis and Design)阶段、系统实现(Implementation)阶段、测试(Testing)阶段和维护(Maintenance)阶段

 

1、 1、最适合UML的开发过程描述是_____

A、结构化开发过程                     B、用例驱动、架构为中心、增量迭代

C、模型驱动的软件开发过程 D、面向对象开发过程

2、 2UML的规则不包括______

A.命名 B.范围 C.可见性   D.扩展机制 E完整性 F执行

3、 3UML语言体系结构不包括_____

A、元元模型  B、原模型  C、模型  D、用户对象

4、 4、类不可用于对系统中_____建模。

A、词汇 B、职责分布 C、非软件事物     D、动态行为

5、 5UML的公共机制不包括______

A.规格说明 B.修饰 C.通用划分 D.命名 E扩展机制

6、 6、用于对系统中反应型实体进行建模的是__ __

A、状态图      B、活动图      C、顺序图      D、协作图

7、 7、用于对系统功能需求进行建模的是__ ___

A、状态图      B、活动图      C、顺序图      D、用例图

8、 8、用于对系统中实体之间动态交互过程建模的是__  ___

A、状态图     B、活动图        C、交互图    D、用例图

9、 9、根据定义,构件不具有以下哪个特征:__  ___

A、有用性     B、独立性        C、适应性    D、易用性

E、商业性     F、递归性     G、接口标准化    H、多态性

10、 10、状态机不是__  ___的局部视图。

A、对象  B、系统总体行为  C、实体的行为    D、用例或协作

1D  2B  3C  4A

1A      2B       3C       4B

三、 填空题

1、 类元的可见性表示符号中:“+”表示公有的,“-”表示______的,
#”表示_____的。

 

2、 UML定义的一些基本的描述事物的语义规则有5种:_______、范围、_____________________

3、 仔细查看下图,识别模型元素,并填入标注框内。

1

2

3

A 触发状态 B 并发分支符号

C 停止状态 D 并发汇合符号

4、 教材介绍的最流行的三种设计工具是EARoseJBOOP13

5、 UML的模型元素包括__________________P63

6、 UML提供的通用机制可以为模型元素提供额外的_______________

四、 简答题

1、 通用建模语言的必要性p4

共享、统一语义[个性化理解];更好地规划、更快开发;减少复杂性影响

2、 建模4原则

选择合适、准确的模型

多角度、多方式表达

以切合实际需要、表达重要细节为准

独立模型的关联才能很好地表现系统

3、 面向对象的四种关系及其表达模式

对象的分类关系:一般/特殊结构

对象之间的组成关系:整体/部分结构

对象属性之间的静态联系:实例连接

对象行为之间的动态联系:消息连接

4、 OMT-2的建模特征p11

引入各种独立于语言的符号;

用对象模型、动态模型、功能模型和用例模型,共同完成对整个系统的建模;

定义的概念和符号,可用于软件开发的分析、设计和实现的全过程

5、 OOSE的建模特征

面向用例,引入外部角色描述用例;

用例贯穿始终,包括系统测试与验证;

适合于业务过程和需求分析。

6、 软件开发的CASE工具一般包括哪几类?

分析、设计、代码生成、测试、文档编制与生成、逆向工程等p13

7、 开发工具的作用

使设计与构建变得更直观、更容易理解和修改

8、 对象模型的五个层次p13

类与对象层、属性层、服务层、结构层和主题层,分别对应建立对象模型的5项主要活动:发现对象、定义类、定义属性、定义服务、识别结构。

9、 Rose的四个视图及作用

用例视图Use Case View、逻辑视图Logical View、组件视图Component View、配置视图Deployment View

用例视图:包括系统的所有参与者、用例和用例图,还可包括用例的局部视图——时序图和协作图;与实现无关,只关注高层功能

逻辑视图:关注系统如何实现用例表达的功能,描述组件之间的关联,包括组件的细节因素如特定类、类图和状态图等

组件视图:说明组件及其各自构成要素如模型代码库、可执行文件、运行库等,是代码的实际模块

配置视图:关注系统的实际配置[可不同于逻辑结构];还说明系统性能及处理措施如容错、网络带宽、故障恢复与响应时间等p49

10、 构成UML4个部分是?

视图、图、模型元素、通用机制p63

11、 UML5种视图的内容和作用

p64用例、逻辑、组件、并发、配置

用例视图:强调系统的外部参与者看到的或需要的系统功能

描述系统应该具备的功能;直接驱动其他视图的开发;是测试依据——验证标准

使用者:

逻辑视图:从系统的静态结构和动态行为角度显示如何实现系统功能

系统内部结构与动态协作关系

使用者:设计、开发者

并发视图:显示系统的并发性,解决并发系统存在的通信与同步问题

资源有效利用、代码并行执行及系统异步事件或消息处理,线程之间的通信与同步

使用者:开发、集成

组件视图:显示代码组件的组织结构

使用者:开发

配置视图:显示系统的具体配置,即计算机和设备组成的物理结构

节点上运行实例的部署、各节点设备连接

使用者:开发、集成、测试;评估成果与资源分配

5种视图组合成UML的完整模型。

12、 9种图的内容和作用p66-67

1.用例图:显示谁是相关的用户,用户希望系统提供什么服务,用户需要为系统提供的服务,以便使系统的用户更容易地理解这些元素的用途,也便于软件开发人员最终实现这些元素,它最常用来描述系统以及子系统。

多个参与者与系统用例之间的连接

2.类图:描述类,接口,协作以及它们之间关系的图,用来显示系统中各个类的静态结构。

描述应用领域概念,类、关联

3.对象图:描述的是参与交互的各个对象在交互过程中某一时刻的状态.对象可以看作是类图在某一时刻的实例

多个类实例——对象之间的关联,系统运行的快照——某时间可能呈现的状况

4.状态图:是系统分析的一种常用的工具,它通过建立类对象的生存周期模型来描述随时变化的动态行为,系统分析员在对系统建模时,最先考虑的不是基于活动之间的控制流,而是基于状态之间的控制流,因为系统中对象的状态变化最易发现和理解

补充说明类,其对象可能具有的所有状态及其转换事件

5.时序图:是以时间为序的表示方法,主要用来描述对象的时间顺序

多个对象之间的动态协作,实现一个用例或事件处理功能

6.协作图:描述对象及其间的链

强调与[上下文]环境的关联

7.活动图:是某件事情正在进行的状态,即可以是现实生活中正在进行的某一项工作,也可以是软件系统某个对象的一个操作,活动在状态机表现为由一系列动作组成的非原子的执行过程协作图:描述的是和对象结构相关的信息 它的用途是表示类操作的实现。它可以说明类操作用到的参数,局部变量以及操作中永久链。

描述执行算法的工作流程涉及的活动,控制的流转、决策和条件

8.组件图:是系统实现视图的图形表示,而其中的一个组件图只能表示系统实现视图的一部分,也就是说任何一个组件图都不能描述系统实现的所有方面,只能系统中组件组合起来才能表示完整的系统实现视图,组件中可以包涵注释和约束,也可以包涵或子系统它们都可以将系统中的模型元素组织成较大的组块。

代码物理结构

9.配置图:显示实际的计算机和设备已经它们之间的必要连接,也可以显示连接的类型,还有可以显示配置和配置之间的依赖的关系。不过每个配置必须存在于某些节点上。

系统的软硬件物理结构

10.包图:是维护和控制系统总体结构的重要建模工具.对复杂系统进行建模,经常需要处理大量的类 ,接口,组件.节点和图,这时就有必要将这些元素进行分组,即把语义相近并倾向于同一个变化的元素组织起来加入同一个包中,以方便理解和处理整个模型

13、 UML4类事物

P68结构、动作、分组、注释

14、 7种结构事物

P68类、接口、协作、用例、活动类、组件和节点。

15、 3种扩展组件p73

p73构造型、标记值、约束

16、 建模步骤图

p74

17、 类图建模的3种方式

系统词汇、简单协作、逻辑数据库模式p94

18、 类之间的4种关系中最常用的关联关系的6种修饰

p101是名称、角色、多重性、聚合、组合和导航性。

19、 状态机由5部分组成:

状态、转换、事件、活动和动作。p124

20、 活动图与流程图的区别

3条,对象活动顺序与规则体现的系统行为而非处理过程[控制结构——顺序、分支、循环];并发表示与否;面向对象或面向过程。p145

21、 时序图与协作图的3个相同点

规定责任、支持消息、衡量工具p175

22、 区别

交互映射——链;有效时间——激活p176

23、 3种组件类型

配置、工作产品、执行

24、 UML四层元模型体系结构是什么?

元元模型、元模型、模型、运行实例[应用、方案]p206

25、 UML3种基本构造块是什么?

事物、关系和图。P9

26、 UML定义的4种基本事物是什么?

结构事物、行为事物、分组事物、注释事物p68

27、 用例图构成要素及用例间的4种关系是什么?

执行者或主角、用例和关系;用例间的4种关系是关联、泛化、扩展和包含。

28、 UML概念模型的3种要素是什么?

基本构造块、规则和公共机制。

29、 UML5种基本关系是什么?

关联、依赖、泛化、实现、聚合p70

30、 UML5种动态建模机制是什么?

用例图、协作图、顺序图、活动图和状态图。

 

31、 时序图的四个要素

对象(Object)、生命线(Lifeline)、消息(Message)、激活(Activation) p163

32、 Rup的二维开发模型

P237横轴表示项目的时间维,是过程展开的生命周期特征,描述术语包括周期(Cycle)、阶段(Phase)、迭代(Iteration)、里程碑(Milestone);纵轴以自然的逻辑内容[核心工作流]来组织,术语包括活动(Activity)、产物(Artifact)、工作者(Worker)和工作流(Workflow),如图16-5所示。

33、 构造型扩展机制的优点

模型元素的扩展与调整、UML简单化p209-210

34、 RUP的迭代开发模型的优点

与传统的瀑布模型相比较,迭代过程具有以下优点

1)降低在一个增量上的开支风险

开发人员重复某个迭代,只损失这一个有误开发迭代的花费

2)降低产品无法按照既定进度进入市场的风险

尽早确定风险,可尽早解决问题而不至于在开发后期匆匆忙忙

3)加快整个开发工作的进度

清楚问题的焦点所在,开发人员的工作会更有效率

迭代过程模式更容易适应需求的变化

用户需求通常是在后续阶段中不断细化的

35、 说明UML过程的几个关键流程的三个方面是什么?

制品、工作人员、工作流

五、 综合题

1、 1、识图辨义

2、 2、建模

3、 2.1建立学生选课的用例图

4、 2.2请绘制用例图描述有关教学系统中的“学生选课”功能需求

5、 2.3根据网络化选课经验,绘制学生下载备选课信息的的协作图

6、 2.4根据网络化选课经验,绘制学生下载备选课信息的的协作图

 uml 软件工程期末考试复习材料_第1张图片

你可能感兴趣的:(uml 软件工程期末考试复习材料)