admin 管理员组

文章数量: 1086019


2025年1月1日发(作者:英文名ivy怎么读)

软件工程习题集

第1章 概述

(一) 单项选择题

1.“软件危机”产生的主要原因是( A )。

A.软件日益庞大 B.开发方法不当 C.开发人员编写程序能力差 D.没有维护好软件

2. 软件是一种( B )性工业产品。

A. 理论 B. 知识(或逻辑) C. 消耗 D. 体力

3. 需求分析是在( B )进行的。

A. 用户 B. 用户和分析设计人员之间 C. 开发人员内部

4. 软件的主要结构和功能是在( A )阶段决定的。

A. 分析设计 B. 编程 C. 测试 D. 维护

5.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是( D )。

D. 使用和维护人员间

A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档

6.在软件工程时期,决定软件质量的主要因素是( A )

A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展

7. 在软件开发模型中,提出最早、应用最广泛的模型是( A )。

A. 瀑布模型 B. 喷泉模型 C. 增量模型 D. 螺旋模型

8.瀑布模型把软件生存周期划分为软件定义、软件开发与( C )三个阶段,而每一阶段又可分为若干

更小的阶段。

A. 详细设计 B. 可行性分析 C. 运行及维护 D. 测试与排错

9. 计算机辅助软件工程,简称( D )。

A. SA B. SD C. SC D. CASE

10. 软件危机是软件产业化过程中出现的一种现象,下述现象中:( C )是其主要表现。

① 软件需要增长难以满足。

② 软件开发成本提高。

③ 软件开发进度难以控制。

④ 软件质量不易保证。

A. ③和④ B. ③和④ C. 全部 D. ①、②和③

11 软件工程的出现主要是由于( C )。

A. 程序设计方法学的影响

C. 软件危机的出现

B. 其他工程科学影响

D. 计算机的发展

12、软件生成周期模型有多种,下列选项中,( C )不是软件生存周期模型。

A.螺旋模型 B.增量模型 C.功能模型 D.瀑布模型

(二)简答题

1. 软件产品的特点是什么?

2. 软件生产的发展经历了哪几个时代?各有何特征?

3. 软件危机的概念、表现形式、产生原因、解决途径

4. 简述主要的软件生存期模型(或软件开发模型)。

5. 简述瀑布模型的阶段划分和各阶段的主要任务以及瀑布模型存在的问题。

第2章 软件可行性研究

(一)单项选择题

1. 在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于

( B )的研究。

A. 经济可行性 B. 技术可行性 C. 操作可行性 D. 法律可行性

2. 下列不属于成本-效益分析的度量指标是( C )。

A. 货币的时间价值 B. 投资回收期 C. 性质因素 D. 纯收入

3. 软件可行性研究实质上是要进行一次( A )需求分析、设计过程。

A. 简化、压缩的 B. 详细的 C. 彻底的 D. 深入的

4. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( A )。

A. 成本估算 B. 项目计划 C. 工程管理 D. 工程网络图

5. 研究开发所需要的成本和资源是属于可行性研究中的 ( B ) 。

A. 技术可行性研究

C. 社会可行性研究

B. 经济可行性研究

D. 法律可行性研究

6.可行性研究的目的是决定( B )。

A.开发项目 B.项目值得开发否 C.规划项目 D.维护项目

7.年利率为i,现存入P元不计复利,n年后本金利息为( C )。

A.P×(1+i)n B.P×(1-i×n) C.P×(1+i×n) D.P×(1+i)×n

8.研究硬软件资源的有效性是进行( A )研究的一方面。

A.技术可行性 B.经济可行性 C.社会可行性 D.操作可行性

9.经济可行性研究的范围包括( C )

A.资源有效性 B.管理制度 C.效益分析 D.开发风险

10.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开 发的决策依据,

因必须给出( B )的回答。

A.确定 B.行或不行 C.正确 D.无二义

(二)简答题

1. 可行性研究的任务是什么?

2. 可行性研究的步骤是怎样的?

3. 可行性研究报告有哪些主要内容?

4. 成本-效益分析可用哪些指标进行度量?

(三)应用题

1. 设计一个软件的开发成本为5万元,寿命为3年。未来3年的每年收益预计为2200元、24000元、26620

元。银行年利率为10%。试对此项目进行成本效益分析,以决定其经济可行性。

2、课后习题2.4

第3章 需求分析

(一)单项选择题

1. 需求分析阶段最重要的技术文档之一是( C )。

A. 项目开发计划

C. 需求规格说明书

2. 在需求分析之前有必要进行( B )。

A. 程序设计 B. 可行性分析

B. 设计说明书

D. 可行性分析报告

C. ER分析 D. 3NF分析

3. 软件需求分析阶段建立原型的主要目的是( C )。

A. 确定系统的功能和性能要求

C. 确定系统是否满足用户需要

4. 需求分析阶段的研究对象是( A )。

A. 用户要求

C. 系统要求

B. 分析员要求

D. 软硬件要求

B. 确定系统的运行要求

D. 确定系统是否满足开发人员需要

5. 概要设计阶段产生的文档不包括( C )。

A. 概要设计说明书 B. 数据库设计说明书

C. 用户手册 D. 开发进度月报

6. 结构化设计是一种面向( A )的设计方法。

A. 数据流 B. 模块

C. 数据结构 D. 程序

7. 为使得开发人员对软件产品的各阶段工作都进行周密的思考,从而减少返工,所以( C )的编制是很

重要的。

A. 需求说明 B. 概要说明

C. 软件文档 D. 测试大纲

8. 系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括( A )。

A. 软件环境可行性、技术可行性、经济可行性、社会可行性

B. 经济可行性、技术可行性、操作可行性

C. 经济可行性、社会可行性、系统可行性

D. 经济可行性、实用性、社会可行性

9. 需求分析中开发人员要从用户那里了解( A )。

A. 软件做什么

C. 输入的信息

B. 用户使用界面

D. 软件的规模

10.SA方法用DFD描述( D ) 。

A.系统的控制流程 B.系统的数据结构

C.系统的基本加工 D.系统的功能

11. 对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流

( A )。

A.必须一致 B.数目必须相等 C.名字必须相同 D.数目必须不等

12 .数据流图是常用的进行软件需求分析的图形工具,其基本图形符号是( C )

A. 输入.输出.外部实体和加工 B. 变换.加工.数据流和存储

C. 加工.数据流.数据存储和外部实体 D. 变换.数据存储.加工和数据流

13、数据流图描述系统的( D )。

A.数据结构 B.控制流程 C.基本加工 D.软件功能

14、数据字典不包括的条目是( C )。

A.数据项 B.数据流 C.数据类型 D.数据加工

15、结构化分析方法使用的描述工具( B )定义了数据流图中每一个图形元素。

A.数据流图 B.数据字典 C.判定表 D.判定树

16、在结构化分析方法中,与数据流图配合使用的是(C )。

A.网络图 B.实体联系图 C.数据字典 D.程序流程图

(二)简答题

1. 需求分析的基本任务是什么?

2. 需求分析的难点主要表现在哪几个方面,如何解决?

3. 需求分析应遵循的原则是什么?

4. 结构化分析方法的步骤是什么?

5. 画数据流图的步骤及注意事项。

6.需求分析工具:层次方框图、维纳图、IPO图

(三)应用题

1. 某单位住房分配方案如下:所有住户50平方米以内每平方米1000元,超过50平方米后:在本人住房

标准面积以内每平方米1500元,其中住房标准为:教授105平方米,副教授90平方米,讲师75平方米;

标准面积以外每平方米4000元。请用判定表和判定树表示各条件组合与费用之间的关系。

2. 某校教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,可进行如下功能的

处理:

查询成绩:查询成绩以及从名次表中得到名次信息。

学籍管理:根据学生总成绩排出名次信息。

成绩处理:处理单科成绩并输入成绩表中。

就以上系统功能画出0层,1层的DFD图。

3.课后习题3.8、3.9

第4章 软件总体设计

(一)单项选择题

1. 最高程度也是最差的耦合是( B )。

A. 公共耦合 B. 内容耦合 C. 控制耦合 D. 数据耦合

2. 一个模块把数值作为参数传送给另一个模块,这种耦合方式称为( A )。

A. 数据耦合 B. 公共耦合 C. 控制耦合 D. 标记耦合

3. 一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为( B )。

A. 时间内聚 B. 功能内聚 C. 通信内聚 D. 顺序内聚

4. 画软件结构图时应注意调用关系只能( A )。

A. 从上到下 B. 从下到上 C. 从左到右 D. 从右到左

5. 变换型DFD是一个( C )结构。

A. 循环 B. 选择 C. 分层 D. 顺序

6. 软件设计中划分模块的一个准则是( C )。

A.低内聚低耦合 B.低内聚高耦合 C.高内聚低耦合 D.高内聚高耦合

7. 为了提高模块的独立性,模块内部最好是( C )。

A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚

8. 面向数据流的设计方法把( C )映射成软件结构。

A、数据流 B、模块化 C、控制结构 D、信息流

9. 在面向数据流的软件设计方法中,一般将信息流分为( A )

A、 变换流和事务流 B、 变换流和控制流

C、 事务流和控制流 D、 数据流和控制流

10、如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为( A )。

A、时间内聚 B、逻辑内聚 C、通信内聚 D、信息内聚

11、在软件结构化设计中,好的软件结构设计应该力求做到( B )。

A、顶层扇出较少,中间层扇出较高,底层模块低扇入

B、顶层扇出较高,中间层扇出较少,底层模块高扇入

C、顶层扇入较少,中间层扇出较高,底层模块高扇入

D、顶层扇入较少,中间层扇入较高,底层模块低扇入

12、结构图(SC)和层次方框图是不同的,前者 ( B )。

A、描述程序的过程特性 B、描述程序的层次特性

C、描述程序的过程特征和层次特征 D、即不描述程序的过程特征,也不描述程序的层次特征

13. 为了提高模块的独立性,模块内部最好是( C )。

A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚

14、软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定( C )。

A.模块间的操作细节 B.模块间的相似性 C.模块间的组成关系 D.模块的具体功能

15.在多层次的结构图中,其模块的层次数称为结构图的( A )。

A. 深度 B. 跨度 C. 控制域 D. 粒度

16、一个模块直接控制(调用)的下层模块的数目称为模块的__B_____。

A、扇入数 B、扇出数 C、宽度 D、作用域

17.某个模块的作用域是指__D____。

A、被该模块调用的所用模块

C、与该模块相关联的所有模块

B、调用该模块的所有模块

D、受该模块内的判定影响的所有模块

(二)简答题

1. 什么是软件概要设计?该阶段的基本任务是什么?

2. 软件设计的基本原理包括哪些内容?

3. 什么是模块间的耦合性?有哪几种耦合性?简述降低模块间耦合度的方法。

4. 什么是模块间的内聚性?有哪几种内聚性?简述降低模块间内聚度的方法。

(三)应用题

1. 课后习题4.6、4.7

第5章 软件详细设计

(一)单项选择题

1. 在详细设计阶段,经常采用的工具包括( C )。

A. SC图 B. DFD图 C. PAD图 D. IDEF图

2. 详细设计的基本任务中包括( B )。

A. 数据流设计 B. 人机对话设计 C. 数据库的逻辑设计 D. 软件结构设计

3. 可自动生成程序的详细设计方法是( D )。

A. 流程图 B. IPO图 C. 盒图 D. PAD图

4.软件详细设计阶段的任务是( A )。

A.算法设计 B.功能设计 C.调用关系设计 D.输入/输出设计

5.程序的三种基本控制结构是( B )

A.过程、子程序和分程序 B.顺序、选择和重复

C.递归、堆栈和队列 D.调用、返回和转移

6.在详细设计阶段,经常采用的工具有( A )

A.PAD B.SA C.SC D.DFD

7.详细设计的结果基本决定了最终程序的( C )

A.代码的规模 B.运行速度 C.质量 D.可维护性

8.软件设计一般分为总体设计和详细设计,它们之间的关系是( B )。

A、全局和局部 B、抽象和具体 c、总体和层次 d、功能和结构

9、软件设计阶段一般又可分为( B )

A.逻辑设计和功能设计 B.概要设计和详细设计

C.概念设计和物理设计 D.模型设计和程序设计

10、结构图中,不是其主要成分的是( C )

A.模块 B.模块间传递的数据 C.模块内部数据 D.模块间的控制关系

(二)简答题

1. 什么是软件详细设计?该阶段的基本任务是什么?

2. 详细设计有哪几种描述方法?

(三)应用题

1. 某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标

准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计

少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。

请使用流程图、PAD图、PDL来设计收费算法。

2. 课后习题5.4、5.5

第6章 软件编码

(一)单项选择题

1. 选择程序设计语言的关键因素是( A )。

A. 项目应用领域 B. 软件执行环境 C. 软件开发方法 D. 算法和数据结构

2. 如果编写系统软件,可选用( B )语言。

A. FoxPro B. C C. Cobol D. Fortran

3. 如果需要处理复杂的数值计算,可供选用的语言是( D )语言。

A. Pascal B. C C. SQL D. Fortran

4 4GL语言可用于( B )应用领域。

A. 科学工程计算 B. 数据处理与数据库应用 C. 实时处理 D. 人工智能

5. 属于4GL的是( B )语言。

A. Fortran B. FoxPro C. Pascal D. C

6. 序言性注释主要内容不包括( D )。

A. 模块的接口 B. 数据的描述 C. 模块的功能 D. 数据的状态

7. 功能性注释主要内容不包括( D )。

A. 程序段的功能 B. 语句的功能 C. 模块的功能 D. 数据的状态

8. 注释的说法正确的是( C )。

A. 序言性注释应嵌入在源程序的内部 B. 每一行程序都要加注释

C. 修改程序也应修改注释 D. 功能性注释可说明数据状态

9.下列语言中哪个语言是低级语言( D )

A. PASCAL BASIC C. C++ D.汇编语言

(二)简答题

1. 程序设计语言的有哪些共同特性?

2. 选择程序设计语言应考虑哪些因素?

3. 第4代语言(4GL)有哪些主要特征?

4. 什么是程序设计风格?为了具有良好的设计风格,应注意哪些方面的问题?

第7章 软件测试

(一)单项选择题

1. 下面说法正确的是( C )。

A. 经过测试没有发现错误说明程序正确

B. 测试的目标是为了证明程序没有错误

C. 成功的测试是发现了迄今尚未发现的错误的测试

D. 成功的测试是没有发现错误的测试

2. 覆盖准则最强的是( D )。

A. 语句覆盖 B. 判定覆盖 C. 条件覆盖

3. 发现错误能力最弱的是( A )。

D. 路径覆盖

A. 语句覆盖 B. 判定覆盖 C. 条件覆盖 D. 路径覆盖

4. 下面( D )方法能够有效地检测输入条件的各种组合可能引起的错误。

A. 等价类划分 B. 边界值分析 C. 错误推测 D. 因果图

5. 与确认测试阶段有关的文档是( A )。

A. 需求规格说明书 B. 概要设计说明书 C. 详细设计说明书 D. 源程序

6. 软件测试不需要了解软件设计的( B )。

A. 功能 B. 内部结构 C. 处理过程 D. 条件

7. ( B )方法需要考察模块间的接口和各模块之间的联系。

A. 单元测试

8. 调试应该由( B )完成。

A. 与源程序无关的程序员 B. 编制该源程序的程序员

C. 不了解软件设计的机构 D. 设计该软件的机构

9. 与设计测试数据无关的文档是( D )。

A. 需求说明书 B. 设计说明书 C. 源程序 D. 项目开发设计

10. 软件质量作为一个极为重要的问题贯穿软件的( B )。

A. 开发 B. 生存期 C. 度量 D. 测试

B. 集成测试 C. 确认测试 D. 系统测试

11. 软件按照设计的要求,在规定时间和条件下达到不出故障、持续运行的要求的质量特性称为

( B )。

A. 可用性 B. 可靠性 C. 正确性 D. 完整性

12. 软件可靠性的定量指标,常借用硬件可靠性的定量度量方法来度量软件的可靠性,其中MTTF是

( D )。

A. 平均等待时间

C. 平均失效等待时间

B. 平均间隔时间

D. 平均失效间隔时间

13. 以提高软件质量为目的技术活动是( B )。

A.技术创新 B. 测试 C. 技术改造 D. 技术评审

14.软件测试中,白盒法是通过分析程序的( B )来设计测试用例的。

A.应用范围 B.内部逻辑 C.功能 D.输入数据

15.黑盒法是根据程序的( C )来设计测试用例的。

A.应用范围 B.内部逻辑 C.功能 D.输入数据

16. 使用白盒测试方法时确定测试数据应根据( A )和指定的覆盖标准。

A.程序的内部逻辑 B.程序的复杂程度 C.使用说明书 D.程序的功能

17. 白箱测试方法重视( A )的度量。

A.测试覆盖率 B.测试数据多少 C.测试费用 D.测试周期

18、软件的集成测试工作最好由( D )承担,以提高集成测试的效果。

A.该软件的设计人员 B.该软件开发组的负责人

C.该软件的编程人员 D.不属于该软件开发组的软件设计人员

19、软件测试的手段有多种,通过人工来评审文档或程序,借以发现其中错误,该手段是( D )。

A、黑盒测试 B、正确性测试 C、动态测试 D、静态测试

20、黑盒测试在设计测试用例时,主要需要研究( A ) 。

A、需求规格说明与概要设计说明 B、详细设计说明

C、项目开发计划 D、概要设计说明与详细设计说明

21.软件单元测试的主要工作内容是( D )。

A.测试模块内部逻辑 B.测试模块内数据流向

C.测试模块单元的具体实现 D.以上全是

22.用来代替被测模块的子模块的是( B )。

A.驱动模块 B.桩模块 C.调用模块 D.配置模块

23.自顶向下的增量式集成策略的最大成本是( A )。

A.桩模块的开发和维护 B.驱动模块的开发和维护

C.对被测模块的组装 D.对构件的分层和修改

24.有一个功能增强型的项目,其以前的产品已经很稳定,并且新增的项目只有少数几个构件被增加或修

改,那么对该项目进行集成测试最适合采用的策略是( C )。

A.自项向下集成策略 B.自底向上集成策略 C.非增量集成策略 D.基于功能的集成策略

(二)简答题

1. 为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网?

2. 软件测试的目的是什么?为什么把软件测试的目的定义为只是发现错误?

4. 单元测试、集成测试和确认测试各自主要目标是什么?它们之间有什么不同?相互有什么关系?

5. 什么是黑盒测试与白盒测试?它们都适应哪些测试?

6. 简述软件测试与软件调试的区别。

(三)应用题

1. 变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字

母可以英文字母、数字以及下划线的任意组合。请用等价分类法设计测试用例。

2. 某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标

准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计

少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。

测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例。

1.

已知被测试模块流程图如下,按照“条件覆盖”法,在表格中填入满足测试要求的数据。

a

start

F

b

T

c

M=M/2

(A>3)AND(B=1)

F

d

(A=1)OR(M>1)

T

e

M=M-5 M=M+5

f

end

假设几种可能的条件是:

T1: A>3 F1:A<=3 T2: B=1 F2: B≠1 T3: A=1 F3:A≠1 T4:M>1 F4:M<=1

请设计路径覆盖用例,并写出各种测试用例下程序的执行路径。

填写下表(注意:本题答案不唯一)

数据

3. 课后习题7.8、7.9

覆盖路径

覆盖条件

M值

第8章 软件维护

(一)单项选择题

1. 决定软件可维护性的因素不包括( C )。

A. 可靠性 B. 可移植性 C. 简洁性

2. 整个维护工作中所占比重最大的是( C )。

A. 校正性维护 B. 适应性维护 C. 完善性维护 D. 预防性维护

D. 效率

3. 软件维护困难不包括( D )。

A. 读懂别人程序的困难 B. 文档的不一致性 C. 软件维护不吸引人

4. 维护的副作用应包括( C )。

D. 源程序错误多

A. 隐含的错误 B. 文档的错误 C. 修改源代码时引入的错误 D. 开发时错误

5. 在软件生存周期中,时间最长、所花费的精力和费用也最多的阶段是( B )。

A. 详细设计 B. 维护 C. 概要设计 D. 测试

6. 在长期维护小组中,( A )是该小组的技术负责人。

A. 组长 B. 副组长 C. 维护负责人 D. 维护程序员

7. 维护支援技术涉及软件的( D )阶段。

A. 需求分析 B. 设计 C. 测试 D. 维护

8、为适应软件运行环境的变化而修改软件的活动称为(B)。

A. 纠错性维护 B.适应性维护 C.改善性维护 D. 预防性维护

(二)简答题

1. 什么是软件的可维护性?软件的可维护性与哪些软件质量的特性有关?如何提高软件的可维护性?为

什么在软件开发过程中,要特别重视软件的可维护性?

2. 什么是软件维护的副作用?如何防止软件维护副作用?

3. 简述软件维护的流程。

面向对象的方法

(一) 单项选择题

1.把一组具有相似特性的对象组合在一起,称之为( C )。

A、多态性 B、继承性 C、类 D、消息

2.面向对象的主要特征除对象唯一性、封装、继承外,还有( A )

A、多态性 B、完整性 C、可移植性 D、兼容

3、每个对象可用它自己的一组属性和它可以执行的一组( C )来表征。

A、行为 B、功能 C、操作 D、数据

4、面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一

个类的上层可以由父亲,下层可以有子类,这种层次结构系统的一个重要性质是( B ),一个类获得其父

亲的全部描述(数据和操作)

A、传递性 B、继承性 C、复用性 D、并行性

5、火车是一种陆上交通工具,火车和陆上交通工具之间的关系是( D )关系。

A.组装 B.整体成员 a D.一般具体

6、动态模型的描述工具是( C )。

A.对象图 B.结构图 C.状态图 D.设计图

7.汽车有一个发动机。汽车和发动机之间的关系是( B )关系。

A.一般具体 B.整体成员 C.分类关系 a

8.面向对象程序设计语言不同于其他语言的最主要特点是( C )。

A.模块性 B.抽象性 C.继承性 D.共享性

9.软件部件的内部实现与外部可访问性的分离,是指软件的( C )。

A.继承性 B.共享性 C.封装性 D.抽象性

10.在只有单重继承的类层次结构中,类层次结构是( A )层次结构。

A.树型 B.网状型 C.星型 D.环型

11.表示对象的相互行为的模型是( B )模型。

A.对象 B.动态 C.功能 D.静态

12.有时间间隔的操作是( B )。

A.动作 B.活动 C.加工 D.处理

13.与事件联系在一起的瞬时操作是( B )。

A.处理 B.动作 C.活动 D.加工

14.在确定类时,所有( A )是候选的类。

A.名词 B.形容词 C.动词 D.代词

15.常用动词或动词词组来表示( C )。

A.对象 B.类 C.关联 D.属性

16 在用例图中,可以用(D)来表示整个软件系统或其中一些子系统的边界,也可以用它表示软件系统的

不同发布版本的功能范围

A、执行者 B、关联关系 C、用例 D、边界框

17.(B)作为完成用例任务的责任承担者,协调、控制其他类共同完成用例规定的功能或行为

A、数据对象 B、控制类 C、实体类 D、边界类

18. 如果用例B是用例A的某项子功能,并且建模者确切地知道在A所对应的动作序列中何时将调用B,

则称(A)

A、用例A扩展用例B B、用例A继承用例B

C、用例A包括用例B D、用例A实现用例B

19. 如果用例A与用例B相似,但A的动作序列是通过改写B的部分或者扩展B的动作而获得的,则称

(B)

A、用例A扩展用例B B、用例A继承用例B

C、用例A包括用例B D、用例A实现用例B

20. 如果用例A与用例B相似,但A的功能较B多,A的动作序列是通过在B的动作序列中的某些执行

点上插入附加的动作序列而构成的,则称(C)

A、用例A扩展用例B B、用例A继承用例B

C、用例A包括用例B D、用例A实现用例B

21. 在UML中,(A)表示使用软件系统的功能,与软件系统交换信息的外部实体

A、执行者 B、类 C、用例 D、用例图

22. 在构件中图中,(D)用于显示构件之间的关联关系。

A、节点 B、包 C、构件 D、依赖关系

23. (D)是一种不包含操作的实现部分的特殊类。

A、概念类 B、分析类 C、实现类 D、接口

24. 在类图中,(C)说明允许候选值范围,如集合可以设定的大小。可以说明可能用于关联端、组成类中

的部分、消息迭代次数和其他目的。

A、角色 B、多重性 C、注释 D、监护条件

25. 泛化使得(A)操作成为可能,即操作的实现是由它们所使用的对象的类,而不是由调用确定的。

A、多态 B、多重 C、传参 D、传值

26. (C)使用类图的一个子集,用于强化某个时间点类实例之间的关系。

A、交互图 B、协作图 C、对象图 D状态图

27. (A)是用来反映代码的物理结构。

A、构件图 B、用例图 C、类图 D、状态机

28.(D)是对象与其外界相互关联的唯一途径。

A、函数调用 B、接口 C、状态转换 D、消息传递

29. UML的(A)表示消息源发出消息后不必等待消息处理过程的返回,即可继续执行自己的后续操作。

A、异步消息 B、返回消息 C、同步消息 D、简单消息

30. 在UML顺序图中,如果一条消息从对象a传向对象b,那么其(A)是一条从b指向a的虚线有向边,

它表示原消息的处理已经完成处理结果(如果有的话)给返回消息传回。

A返回消息 B、自消息 C、创建(create)消息 D、销毁(destory)消息

31. (B)用于概述相互合作的对象流的交互关系和链接关系。

A、用例图 B、通信图 C、状态图 D、类图

32. 要状态机图中,(A)表示两个状态之间的关系,源状态和目的状态。

A、转换 B、状态 C、事件 D监护条件

33. ( C)是指以设计复用为目的,采用一种良好定义、正规的、一致的方式记录的软件设计经验。

A.架构 B.模型 C.设计模式 D.设计数据

34. 当客户程序与抽象类的实现部分之间存在很大的依赖性时,可以考虑使用( D )

A、单例模式 B、对象池模式 C、工厂模式 D、外观模式

35. 当需要强调一系列相关产品对象的设计以便进行联合使用,可以考虑使用( A )。

A.工厂模式 B.对象池模式 C.外观模式 D.单例模式

36.( A )将整个软件系统分为若干层次,最顶层直接面向用户提供软件系统的操作界面。其余各层为紧

邻其上的层次提供服务。

A.分层模式 C.架构模式 D.管道模式

37. 希望创建一个可复用的类,该类必须能够与接口不可预订的类协同工作,可以考虑使用( D )

A、单例模式 B、对象池模式 C、工厂模式 D、适配器模式

38、( C )是在不改变代码外在行为的前提下,对代码做出修改,以改进程序内部结构。

A版本控制 B代码调式 C代码重构 D代码走查

39、在UML中(D )表示执行者为达成一项相对独立、完整的业务目标而要求软件系统完成的功能。

A用例图 B边 C执行者 D用例

40、在活动图中( A )的一个输出部分有一个监护条件,检查预定者是不是会员,这是一个条件线

程,它只有在监护条件被满足时才会激发,如果这个线程没有被激发,那么随后相对应的结合的输入部分

被认为已完成。

A分叉 B转换 C控制 D活动

(二)应用题

1、根据商品进货的通信图,画出商品进货的序列图。如下图所示:

1: 1:用户登录2: 2:通过登陆

登陆界面

: 用户

主界面

3: 3:选择进货操作

4: 4:增加进货记录

5: 5:

修改商品库存

进货界面

进货记录

商品库存

2、一本书的组成有一个封面,一个目录,一个前言,若干章,每章有若干节,每节有若干段,每段有若干句子,每

节有0个或多个插图,还有0个或多个表格,最后有一个附录。建立该书的对象模型。

2.交通工具分为空中、陆上、水上交通工具,空中交通工具分为客机、货机、专用轻型机,陆上交通工具分

为火车、汽车;火车汽车又分为客车、货车;水上交通工具分为客轮、货轮、客货混合轮。建立交通工具

的对象模型。


本文标签: 软件 模块 设计 测试