第一章
软件危机的主要原因是软件本身的特点及开发方法
20世纪60年代提出了软件工程概念
软件工程是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。
在下列选项中,(软件工程材料 )不属于软件工程学科所要研究的基本内容
软件工程的三要素是方法、工具和过程
用来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具,通常也称为(CASE )工具。
软件就是程序,编写软件就是编写程序。(错误)
软件危机的主要表现是软件需求增加,软件价格上升。 (错误)
软件工程学科出现的主要原因是软件危机的出现。 (正确)
与计算机科学的理论研究不同,软件工程是一门原理性学科。 (错误)工程性学科。
第二章
软件生命周期模型不包括( 用例模型)。
包含风险分析的软件工程模型是(螺旋模型 )。
软件过程是(软件开发活动的集合 )。
软件工程中描述生命周期的瀑布模型一般包括计划、需求分析、设计、编码、( 测试)、维护等几个阶段。
软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( 编码阶段)。
增量模型本质上是一种(非整体开发模型 )。
螺旋模型综合了( 瀑布模型和演化模型)的优点, 并增加了风险分析。
瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。(错)
原型化开发方法包括生成原型和实现原型两个步骤。 (错)
软件过程改进也是软件工程的范畴。 (正)
第7章
可行性研究也称为(项目论证 )。
( 技术可行性)研究往往是系统开发过程中难度最大的工作,是可行性研究的关键。
研究软硬件资源的有效性是进行(技术可行性 )研究的一方面。
软件开发计划是软件工程中的一种(管理 )性文档。
需求工程的主要目的是( 解决系统是“做什么的问题”)。
需求分析的主要方法有(结构化分析SA方法 )。
SA法的主要描述手段有(DFD图、数据词典、加工说明 )。
在E-R模型中,包含以下基本成分( 实体、属性、关系)。
在下面的叙述中哪一个不是软件需求分析的任务?(结构化程序设计 )。
需求规格说明书的作用不应包括( 软件可行性研究的依据)。
第8章
为了提高模块的独立性,模块之间最好是数据耦合
在面向数据流的软件设计方法中,一般将信息流分为变换流和事务流
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的内聚性和耦合性。
模块的独立性是由内聚性和耦合性来度量的,其中内聚性是模块的功能强度。
当算法中需要用一个模块去计算多种条件的复杂组合,并根据这些条件完成适当的功能时,从供选择的答案中,选出合适的描述工具。判定表
面向数据流的软件设计方法可将数据流映射成软件结构。
Jackson方法根据数据结构来导出程序结构。
判断-----------------
软件设计说明书是软件概要设计的主要成果。 错误
软件设计中设计复审和设计本身一样重要,其主要作用是避免后期付出高代价。正确
HIPO法既是需求分析方法,又是软件设计方法。 正确
划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。错误
SD法是一种面向数据结构的设计方法,强调程序结构与问题结构相对应。错误
判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。错误
模块独立要求高耦合低内聚。 错误
表
判断表
判断树
程序流程图
N-S图
PAD图
映射成结构图
Jackson图
第9章
1 .第一个体现结构化编程思想的程序设计语言是 Pascal
2 .困难(3分)
汇编语言也是面向机器的低级语言
3 .普通(3分)
超高级语言一般由知识库 和方法库支持
4 .困难(3分)
机器语言是可以直接操纵计算机底层硬件的语言
5 .普通(3分)
规范的编程风格会对后其的软件维护带来很多便利
6 .困难(3分)
面向对象设计的结果,实现时只能使用面向对象语言。
7 .普通(3分)
PHP是一种嵌入在HTML内部的在服务器端执行的脚本语言
8 .普通(3分)
可移植性好的语言可以使系统方便地在不同的计算机系统上运行
9 .困难(3分)
超高级语言是对数据处理 和过程描述更高级的抽象
10 .困难(3分)
PHP融合了C、Java、Perl等语言的语法特性
11 .普通(3分)
Objective-C是扩充C的面向对象编程语言
12 .困难(3分)
C既具有高级语言语言的特点,又具有汇编语言语言的特性
13 .困难(3分)
汇编语言保持了机器语言简洁、快速的特性
14 .困难(3分)
一些对性能要求极高的图形程序,就必须使用C或者C++实现核心代码
15 .困难(3分)
今年来流行的Ajax也是基于JavaScript的后台通信机制
16 .困难(3分)
对于大规模的科学运算,可以选用FORTAN或者C语言,因为它们具有大量的标注库函数
17 .困难(2分)
在软件开发项目里,常量名称选用大写字母,变量名选用小写字母
18 .困难(2分)
序言注释需位于模块的起始部分
19 .困难(2分)
Java编译器首先将源代码编译成虚拟机中的字节码.
20 .容易(2分)
名词解释:编程风格
答案
编程风格是指源程序的书写习惯
21 .容易(2分)
(1)软件实现是软件产品由概念到实体的一个关键过程,它将( )的结果翻译成用某种程序设计语言编写的并且最终可以运行的程序代码。虽然软件的质量取决于软件设计,但是规范的程序设计风格将会对后期的软件维护带来不可忽视的影响。
A. 软件设计
B. 详细设计
C. 架构设计
D. 总体设计
答案
详细设计
22 .容易(2分)
(3)第一个体现结构化编程思想的程序设计语言是( )。
A. FORTRAN
B. C
C. Pascal
D. Cobol
答案
Pascal
24 .容易(2分)
(2)进行程序设计语言的选择时,首先考虑的是应用领域。
答案
正确
26 .容易(2分)
(4)项目的应用领域是选择程序设计语言的关键因素。
答案
正确
27 .容易(2分)
(5)FORTRAN、Pascal、C语言和汇编语言都是科学工程计算可选用的语言。
答案
错误
28 .普通(2分)
下面( ) 不是人们常用的评价软件质量的4个因素之一。
A. 可理解性
B. 可靠性
C. 可维护性
D. 易用性
答案
易用性
29 .普通(2分)
在软件维护的内容中,占维护活动工作量比例最高的是( )。
A. 纠错性维护
B. 适应性维护
C. 预防性维护
D. 完善性维护
答案
适应性维护
30 .普通(2分)
使用软件时提出增加新功能就必须进行( ) 维护。
A. 预防性
B. 适应性
C. 完善性
D. 纠错性
答案
完善性
34 .容易(2分)
代码行技术是比较简单的定量估算软件规模的方法。
答案
正确
35 .容易(2分)
总体上说,软件工程文档可以分为用户文档、开发文档和管理文档三类。
答案
正确
文档是影响软件可维护性的决定因素。
答案
正确
37 .容易(2分)
适应性维护是在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之在功能和性能上得到完善和增强的活动。
答案
错误