一.选择题:
1.软件危机出现于____,为了解决软件危机,人们提出了用____的原理来设计软件,
这是软件工程诞生的基础。
A.50年代末 B.60年代初 C.60年代末 D.70年代初
A.运筹学 B.工程学 C.软件学 D.软件学 E.数字
2.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作____。
A.软件投机 B.软件危机 C.软件工程 D.软件产生
3.产生软件危机的原因有如下几点,除了______。
A、 软件开发过程未经审查
B、 软件开发不分阶段,开发人员没有明确的分工
C、 所开发的软件,除了程序清单外,没有其他文档
D、 采用工程设计的方法开发软件,不符合软件本身的特点
4.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是____。
A.引入新技术提高空间利用率 B.用较少的投资获得高质量的软件
C.缩短研制周期扩大软件功能 D.硬软件结合使系统面向应用
5.请按顺序写出软件生命期的几个阶段____,____ ,____,____,____,____。
A.维护 B.测试 C.详细设计 D.概要设计 E.编码 F.需求分析
6. 瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶
段又可细分为若干个更小的阶段。
A.详细设计 B.可行性分析 C.运行及维护 D.测试与排错
7.划分软件生存周期的阶段时所应遵循的基本原则是_____。
A、各阶段的任务尽可能相关性 B、各阶段的任务尽可能相对独立
C、各阶段的任务在时间上连续 D、各阶段的任务在时间上相对独立
8.一个软件项目是否进行开发的结论是在______文档中作出的。
A、 软件开发计划 B、可行性报告 C、需求分析说明书 D、测试报告
9.分析员是____。
A. 用户中系统的直接使用者 B.用户和软件人员的中间人
C.软件的编程人员 D。用户和软件人员的领导
10.下列叙述中,_______不属于数据字典的作用。
A、作为编码阶段的描述工具 B、为用户与开发人员之间统一认识
C、作为概要设计的依据 D、为需求分析阶段定义各类条目
11.使用结构化分析方法时,采用的基本手段是____。
A.分解和抽象 B.分解和综合 C.归纳与推导 D.试探与回溯
12.结构化系统分析主要是通过____进行分析的。
A.算法分解 B.控制结构分解 C.数据结构分解 D.处理功能分解
13.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的____。
总貌 B.细节 C.抽象 D.软件的作者
13.变换型和事务型是程序结构的标准形式。从某处获得数据,再对这些数据作处理,
然后将结果送出是属于____。
A.变换型 B 事务型
14.需求分析说明书不能作为______。
A、 可行性研究的依据 B、用户和开发人员之间的合同
C、 系统概要设计的依据 D、软件验收测试的依据
15.结构化分析方法以数据流图、____和加工说明等描述工具,即用直观的图和简洁
的语言来描述软件系统模型。
A.DFD图 B.PAD图 C.IPO图 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.数据结构
41.Jackson程序设计方法是一种面向 _____ 的设计方法。
A、数据结构 B、数据流图 C、IPO图 D、系统流程图
20.Jackson设计方法由英国的M. Jackson提出的,它是一种面向____的设计方法。
A.对象 B.数据流 C.数据结构 D.控制结构
21.结构化设计采用模块化方法的主要出发点是______。
A、 增加内聚性 B、减少耦合度 C、提高有效性 D、降低复杂度
22.下列_____不是模块化设计的目的。
A、可采用结构化设计方法 B、降低复杂度
C、有利于信息隐蔽 D、描述系统的功能与性能
23.一个模块直接控制(调用)的下层模块的数目称为模块的_______。
A、扇入数 B、扇出数 C、宽度 D、作用域
24.某个模块的作用域是指______。
A、被该模块调用的所用模块 B、调用该模块的所有模块
C、与该模块相关联的所有模块 D、受该模块内的判定影响的所有模块
25.模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内
聚的一类是____。
A.顺序性内聚 B.过程性内聚 C.逻辑性内聚 D.功能性内聚
26.如果模块中所有成分引用共同的数据,该模块内的联系类型是____。
A.顺序内聚 B.功能内聚 C.通信内聚 D.过程内聚
27.初始化模块和结束模块从块内联系看,被称为____模块。
A.过程内聚 B.功能内聚 C.时间内聚 D.逻辑内聚
28.若一模块内部的处理动作为:成分A的输出是成分B的输入,则该模块的聚合性称
为______。
A、顺序内聚 B、功能内聚 C、过程内聚 D、通信内聚
29.某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布
尔标志信息决定本次调用哪种通知书的打印,这种模块之间的耦合称为____。
A.数据耦合 B.混合耦合 C.公共耦合 D.控制耦合
30.要减少两个模块之间的耦合,则必须____。
A.两个模块间的调用次数要少
B.模块间传递的参数要少
C.模块间传递的参数要少且布传递开关型参数
D.模块间传递的参数要少且不传递开关型参数以及两模块不引用同样的全局变量
31.下列耦合度表示中,最弱的耦合形式是______。
A、特征耦合 B、公共耦合 C、数据耦合 D、数据结构
32.一个模块传送给另一模块的参数是由单个数据项组成的数组,它属于______耦合。
A、 数据型 B、复合型 C、内容型 D、公共型
34.PAD(Problem Analysis Diagram)图是一种____工具。
A.系统描述 B。详细设计 C。测试 D。编程辅助
35.下列系统设计工具中,______不属于详细设计工具。
A、N—S图 B、数据流图 C、程序流程图 D、PAD
36.程序流程图、N-S图和PAD图是____使用的表达工具。
A.设计阶段的概要设计 B.设计阶段的详细设计
C.编码阶段 D.测试阶段
37.模块内部的算法设计在结构化方法的______阶段进行。
A、系统分析 B、概要设计 C、详细设计 D 编码(实现)
38.源程序的版面文档要求应有变量说明、适当注释和____。
A.框图 B.统一书写格式 C.修改记录 D.编程日期
39.提高程序可读性的有力手段是______。
A、 选好一种程序设计语言 B、显式说明一切变量
C、使用三种标准控制语句 D、给程序加注释
40.文档是软件开发人员.维护人员.用户以及计算机之间的____, 软件开发人员在各个阶
段以文档作为前段工作成果的_____和后段工作的_____。
A. 接口 B.桥梁 C.科学 D.继续 E.体现 F.基础
41.软件工程中______不属于用户文档的内容。
A、 功能描述 B、安装手册 C、系统设计 D、使用手册
42.在软件工程中,高质量的文档标准是完整性、一致性和____。
A.统一性 B.安全性 C.无二义性 D.组合性
43.一般来说,在管理软件中,软件生存周期各个阶段的工作量以______所占的比例最
大。
A、需求分析与设计阶段 B、编码实现阶段 C、测试阶段 D、维护阶段
44.软件的____一般由两次故障平均间隔时间和故障平均恢复时间来度量;
A.可维护性 B可靠性 C效率 D可理解性
45.采用____且编写程序,可提高程序的可移植性;
A.机器语言 B宏指令 C汇编语言 D高级语言
46. 软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是__B__。
A.引入新技术提高空间利用率 B.用较少的投资获得高质量的软件
C.缩短研制周期扩大软件功能 D.硬软件结合使系统面向应用
47. 划分软件生存周期的阶段时所应遵循的基本原则是__b___。
A.各阶段的任务尽可能相关性 B.各阶段的任务尽可能相对独立
C.各阶段的任务在时间上连续 D.各阶段的任务在时间上相对独立
48. 结构化设计方法采用变换分析和事务分析技术实现____。
A.从数据结构导出程序结构 B.从模块结构导出程序结构
C.从模块结构导出数据结构 D.从数据流图导出初始化结构图
49. 需求分析说明书不能作为______。
A.可行性研究的依据 B.用户和开发人员之间的合同
C.系统概要设计的依据 D.软件验收测试的依据
50. 瀑布模型把软件生存周期划分为软件定义、软件开发和____三个阶段,而每一阶段又
可细分为若干个更小的阶段。
A.详细设计 B.可行性分析 C.运行及维护 D.测试与排错
51. Jackson设计方法由英国的M. Jackson提出的,它是一种面向____的设计方法。
A.对象 B.数据流 C.数据结构 D.控制结构
52. 一个模块直接控制(调用)的下层模块的数目称为模块的_______。
A.扇入数 B.扇出数 C.宽度 D.作用域
53. 模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的
一类是____。
A.顺序性内聚 B.过程性内聚 C.逻辑性内聚 D.功能性内聚
54. 某模块的功能是打印录取通知书或不录取通知书,调用模块可通过向此模块传递布尔
标志信息决定本次调用哪种通知书的打印,这种模块之间的耦合称为____。
A.数据耦合 B.混合耦合 C.公共耦合 D.控制耦合
55. 程序流程图、N-S图和PAD图是____使用的表达工具。
A.设计阶段的概要设计 B.设计阶段的详细设计
C.编码阶段 D.测试阶段
56. 分析员是____。
A.用户中系统的直接使用者 B.用户和软件人员的中间人
C.软件的编程人员 D.用户和软件人员的领导
57. 下列_____不是模块化设计的目的。
A.可采用结构化设计方法 B.降低复杂度
C.有利于信息隐蔽 D.描述系统的功能与性能
58. 软件工程中______不属于用户文档的内容。
A.功能描述 B.安装手册 C.系统设计手册 D.使用手册
59. 软件的____一般由两次故障平均间隔时间和故障平均恢复时间来度量。
A.可维护性 B.可靠性 C.效率 D.可理解性
60. 一般来说,在管理软件中,软件生存周期各个阶段的工作量以______所占的比例最大。
A.需求分析与设计阶段 B.编码实现阶段
C.测试阶段 D.维护阶段
61.在下列工具与环境中( )属于较早期的CASE。
A.基于信息工程CASE B.人工智能CASE
C.结构的基于图形CASE D.集成的CASE环境
62.Putnam成本估算模型是一个( )模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量
63.在McCall软件质量度量模型中,( )属于面向软件产品修改。
A.可靠性 B.可重用性 C.适应性 D.可移植性
64.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是( )
A.SQIC B.SQMC C.SQRC D.SQDC
65.软件复杂性度量的参数包括( )
A.效率 B.规模 C.完整性 D.容错性
66.对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。
A.结合 B.隐藏 C.封装 D.抽象
67.软件调试技术包括( )
A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试
68.瀑布模型的存在问题是( )
A.用户容易参与开发 B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求
69.软件测试方法中的静态测试方法之一为( )
A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析
70.软件生命周期中所花费用最多的阶段是( )
A.详细设计 B.软件编码 C.软件测试 D.软件维护
71.第一个体现结构化编程思想的程序设计语言是( )
A.FORTRAN语言 B.Pascal语言 C.C语言 D.PL/1语言
72.程序的三种基本控制结构是( )
A.过程、子程序和分程序 B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、
返回和转移
73.在详细设计阶段,经常采用的工具有( )
A.PAD B.SA C.SC D.DFD
74.详细设计的结果基本决定了最终程序的( )
A.代码的规模 B.运行速度 C.质量 D.可维护性
75.需求分析中开发人员要从用户那里了解( )
A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模
76.结构化程序设计主要强调的是( )
A. 程序的规模 B. 程序的效率C. 程序设计语言的先进性 D. 程序易读性
77.IDEF。图反映系统( )
A.怎么做 B.对谁做 C.何时做 D.做什么
78.经济可行性研究的范围包括( )
A.资源有效性 B.管理制度 C.效益分析 D.开发风险
79.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开
发的决策依据,因必须给出( )的回答。
A.确定 B.行或不行 C.正确 D.无二义
80.需求分析阶段的任务是确定( )
A. 软件开发方法B. 软件开发工具C. 软件开发费 D. 软件系统的功能
81. 面向对象程序设计中的数据隐藏指的是( )。
A.输入数据必须输入保密口令
B.数据经过加密处理
C.对象内部数据结构上建有防火墙
D.对象内部数据结构的不可访问性
82. 与设计测试数据无关的文档是( )。
A.需求说明书 B.设计说明书 C.源程序 D.项目开发设计
83. 结构化分析SA 方法以数据流图、( )和加工说明等描述工具,即用直观的图和简
洁的语言来描述软系统模型。
A.DFD 图 B.数据字典 C.IPO 图 D.PAD 图
84. ( )引入了“风险驱动”的思想,适用于大规模的内部开发项目。
A.增量模型 B.喷泉模型 C.原型模型 D.螺旋模型
85. 瀑布模型把软件生存周期划分为软件定义、软件开发和( )三个阶段,而每一阶段
又可细分为若干个更小的阶段。
A.详细设计 B.可行性分析 C.运行及维护 D.测试与排错
86. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角
度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001。设计这组测试用例的方法是( )。
A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法
87. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( )。
A.数据库设计 B.数据通信 C.数据定义 D.数据维护
88. 模块本身的内聚是模块独立性的重要度量因素之一,在七类内聚中,具有最强内聚的一
类是( )。
A.顺序性内聚 B.过程性内聚 C.逻辑性内聚 D.功能性内聚
89. 下面几种白箱测试技术,( )是最强的覆盖准则。
A.语句覆盖 B.条件覆盖 C.判定覆盖 D.条件组合覆盖
90. 软件需求规格说明的内容不应包括( )。
A.主要功能 B.算法的详细描述
C.用户界面及运行环境 D.软件的性能
91. 面向对象的分析方法主要是建立三类模型,即( )。
A.系统模型、E-R 模型、应用模型 B.对象模型、动态模型、应用模型
C.E-R模型、对象模型、功能模型 D.对象模型、动态模型、功能模型
92. 下列( )不是模块化设计的目的。
A.可采用结构化设计方法 B.降低复杂度
C.有利于信息隐蔽 D.描述系统的功能与性能
93. 面向数据流的设计方法把( )映射成软件结构。
A.数据流 B.系统结构
C.控制结构 D.信息流
94. 下面关于面向对象方法中消息的叙述,不正确的是( )。
A.键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息
B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息
C.应用程序之间可以相互发送消息
D.发送与接收消息的通信机制与传统的子程序调用机制不同
95. 提高测试的有效性非常重要,成功的测试是指( ) 。
A.证明了被测试程序正确无误 B.说明了被测试程序符合相应的要求
C.未发现被测程序的错误 D.发现了至今为止尚未发现的错误
二、填空题:
1、 在结构化分析中,__数据字典__用于详细地定义数据流图中的成分。
2、 耦合性和内聚性是衡量___模块独立性_的两个定性的标准。
3、 结构化程序设计是一种程序设计技术,它采用__自顶向下、逐步求精__的设计方法
和顺序、选择、循环三种基本控制结构构造常态程序。
4、 结构化分析方法中,数据流图的四种基本成分为:处理、源点或终点__数据存储和
数据流_。
5、 从模块内外的联系来看,结构化设计的要求是___高内聚低耦合_。
6、 在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。通常问题简
述中的动词短语将成为数据流图中的___处理__成分。
7、 如果两模块间的通信信息是若干个参数,而每个参数是单一的数据项,则称这种耦
合性为__数据_耦合。
8、 模块内部的算法设计在结构化方法的___详细设计__阶段进行。
9、 定性度量模块独立性的两个标准是内聚性和___耦合性___。
10、 在模块结构图中,直接调用某一模块的其他模块数称为该模块的__扇入数
____。
11.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系
统中各种元素之间的( 信息流动 )情况。
12.成本效益分析的目的是从( 经济 )角度评价开发一个项目是否可行。
13.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和
( 宽度优先策略 ) 。
14.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一
条独立路径是至少包含有一条( 在其他独立路径中未有过 )的边的路径。
15.汇编语言是面向( 机器 ) 的,可以完成高级语言无法完成的特殊功能,如与外
部设备之间的一些接口工作。
16.在JSP方法中解决结构冲突的具体办法是( 中间数据结构或中间文件 )。
17.详细设计的任务是确定每个模块的内部特性,即模块的算法、( 使用的数据 )。
18.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。
19.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技
术;在维护阶段用来提高维护的效率和质量的( 维护支援 )技术。
20.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言
有:( FORTRAN语言)、PASCAL语言、C语言和PL/1语言。
21.在软件开发过程中要产生大量的信息,要进行大量的修改, 软件配置管理 能
协调软件开发,并使混乱减到最低程度。
22.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此
软件具有 容错功能 的软件。
23.McCall提出的软件质量模型包括11 个软件质量特性。
24.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、 可使用性和效率。
25.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。
26.程序设计语言的心理特性主要表现在 歧义性 、简洁性、传统性、局部性和顺序性。
27.软件结构是以 模块 为基础而组成的一种控制层次结构。
28.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、
判定树 。
29.结构化语言是介于自然语言和形式语言之间的一种半形式语言。
30.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=F/(1+(n*i)。
31. 在结构化分析中,( 数据字典/数据词典 )用于详细地定义数据流图中的成分。
32. 耦合性和内聚性是衡量( 模块独立性 )的两个定性的标准。
33. 结构化程序设计是一种程序设计技术,它采用( 自顶向下、逐步求精 )的设计方法
和顺序、选择、循环三种基本控制结构构造常态程序。
34. 结构化分析方法中,数据流图的四种基本成分为:处理、源点或终点、数据存储和( 数
据流 )。
35. 从模块内外的联系来看,结构化设计的要求是( 高内聚低耦合 )。
36. 在需求分析中,可从有关问题的简述中提取组成数据流图的基本成分。通常问题简述中
的动词短语将成为数据流图中的( 加工或处理 )成分。
37. 如果两模块间的通信信息是若干个参数,而每个参数是单一的数据项,则称这种耦合性
为( )耦合。
38. 模块内部的算法设计在结构化方法的( )阶段进行。
39. 系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中
各种元素之间的( )情况。
40. 在模块结构图中,直接调用某一模块的其他模块数称为该模块的( )。
41. ( )和数据字典共同构成了系统的逻辑模型。
42. ( )是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此
导出测试用例。
43. 成本效益分析的目的是从( )角度评价开发一个项目是否可行。
44. 为了便于对照检查,测试用例应由输入数据和预期的( )两部分组成。
45. 在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、
( ) 。
46. 若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=( )。
47. 定性度量模块独立性的两个标准是内聚性和( )。
48. 自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和
( ) 。
49. 独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独
立路径是至少包含有一条( )的边的路径。
50. 软件工程中的结构化分析SA是一种面向( )的分析方法。
三.判断
1.软件的开发与运行经常受到硬件的限制和制约。(√)
2.模块内的高内聚往往意味着模块间的松耦合。(√ )
3.Jackson图只能表达程序结构,不能表达数据结构。(X)
4. 上述数据流图表示数据A和B同时输入变换成C。(X )
5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。(X )
6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。(√)
7.应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。(X)
8.UML只能应用于软件系统模型的建立。(X)
9.容错就是每个程序采用两种不同的算法编写。(X)
10.软件测试的目的是为了无一遗漏的找出所有的错误。(X)
1.软件工程学只有理论意义,没有实际用途。 ( )
2.软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。( )
3.可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。 ( )
4.代码审查方法没有计算机测试方法好。 ( )
5.验证软件需求的方法主要靠人工审查的方法。 ( )
6.并发系统中遇到的一个主要问题是定时问题。 ( )
7.编码风格由个人喜好决定,没有固定格式。 ( )
8.面向对象建模得到的模型包含系统的3个要素,即静态结构、交互次序和数据变换。
( )
9.软件重用是提高软件开发生产率和目标系统质量的重要途径。 ( )
10.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。 ( )
11.Power Designer是一个CASE工具。 ( )
12.软件是指用程序设计语言(如Pascal,C,Visual Basic等)编写的程序,软件开发实际上就是编写程序代码。( )
13.在进行需求分析时需同时考虑维护问题。 ( )
14.UML是一种面向对象的分析设计方法,即OOA/OOD方法。 ( )
15.在面向对象的软件开发方法中,每个类都存在其相应的对象,对象是类的实例,类是生成对象的模板。( )
16.快速原型模型可以有效地适应用户需求的动态变化。 ( )
17.统一的建模语言,是一种软件工程设计语言。 ( )
18.模块化使程序设计比较方便,但比较难以维护。 ( )
19.一个模块实际上就是一个进程。 ( )
20.过程描述语言可以用于描述软件的系统结构。 ( )
21.编程语言应该在软件概要设计时选择。 ( )
22.如果通过软件测试没有发现错误,则说明软件是正确的。 ( )
23.在进行概要设计时应加强模块间联系。 ( )
24.一般人为,软件开发阶段是由设计、编码和测试三个基本活动组成。( )
25.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。 ( )
26.为了提高程序的易读性,尽可能使用高级语言或4GL编写程序。 ( )
27.为了加强软件维护作业的进度,应尽可能增加维护人员的数目。( )
28.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。( )
29.确认测试计划应该在可行性研究阶段制定。 ( )
30.数据字典是对数据流图中的数据流,处理过程、数据存储、数据的源和终点进行详细定义。( )
1. 软件工程学只有理论意义,没有实际用途。 ( )
2. 软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。 ( )
3. 可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。 ( )
4. 代码审查方法没有计算机测试方法好。 ( )
5. 编码风格由个人喜好决定,没有固定格式。 ( )
6. 面向对象建模得到的模型包含系统的3个要素,即静态结构、交互次序和数据变换。 ( )
7. 软件重用是提高软件开发生产率和目标系统质量的重要途径。( )
8. 判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。( )
9. 软件是指用程序设计语言编写的程序,软件开发实际上就是编写程序代码。( )
10.在面向对象的软件开发方法中,每个类都存在其相应的对象,对象是类的实例,类是生成对象的模板。( )
1 .螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。( )
2. 白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。( )
3. 软件概要设计包括软件系统结构设计以及数据结构和数据库设计。( )
4. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。( )
5. 软件模块之间的耦合性越弱越好。( )
6. 数据库设计说明书是一个软件配置项。 ( )
7. 在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是
生成类的模板。 ( )
8. 过程描述语言可以用于描述软件的系统结构。 ( )
9. 如果通过软件测试没有发现错误,则说明软件是正确的。( )
10.快速原型模型可以有效地适应用户需求的动态变化。 ( )
四、简答题
1. 什么是软件危机?它的具体表现有哪些?解决途径是什么?
2. 软件工程的定义。
3. 软件生命周期包括哪些阶段?每一阶段的具体任务是什么?
4. 简述瀑布模型、快速原型模型、增量模型、螺旋模型和喷泉模型的特点(优缺点)。
5. 可行性研究过程的步骤。
6. 常用的成本分析方法有哪些?
7. 需求分析的具体任务是什么?
8. 怎样与用户有效地沟通以获取用户的真实需求?
9. 结构化设计中的模块化、逐步求精、模块独立等原理。
10. 耦合的概念,常见耦合的含义及其耦合度高低排序。
11. 内聚的概念,常见内聚的含义及其内聚度高低排序。
12. 为提高软件的质量,常用的启发规则有哪些?
13. 人机界面设计一般指导原则有哪些?
14. PFD、N_S、PAD、PDL各有什么优缺点?
15. 好的编程风格有哪些?
16. 基本路径测试及其设计测试用例的步骤。
17. 软件维护的定义及其分类。
18. 决定软件可维护性的因素有哪些?
19. 简述面向对象方法的要点。
20. 简述面向对象方法的优点。
21. 类、对象、消息、封装、继承、多态。
22. 简述OOA中3个模型、5个层次的含义
23. 建立对象模型的主要活动(步骤)有哪些?
24. 简述建立动态模型的步骤。
25. OOD的准则。
26. OOD常用的启发规则有哪些?
27. 代码重用的形式有哪些?
28. 面向对象实现中提高代码重用的程序设计准则。
29. 提高可扩充性的面向对象程序设计准则。
30. 工程网络中事件的最早时刻和最迟时刻及其计算规则。
五、应用题
1、北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。
请用定义数据字典的方法,定义上述的电话号码。
2、根据下列N-S图,写出其对应的伪码。
3、某培训中心要研制一个计算机管理系统。
它的业务是: 将学员发来的信件收集分类后,按几种不同的情况处理。
1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。
2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。
3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。
要求:
I) 对以上问题画出数据流程图。
II) 画出该培训管理的软件结构图的主图。
4、银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。
请用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象。
5、复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
6、画出下列伪码程序的程序流程图和盒图。 START
IF p THEN
WHILE q DO
f
END DO
ELSE
BLOCK
g
n
END BLOCK
END IF
STOP