软件工程-复习

简介: -

第一章

软件危机的主要原因是软件本身的特点及开发方法

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融合了CJavaPerl等语言的语法特性

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分)

适应性维护是在软件使用过程中,用户会对软件提出新的功能和性能要求,为了满足这些新的要求而对软件进行修改,使之在功能和性能上得到完善和增强的活动。

答案

错误



第12章

目录
相关文章
|
6月前
|
自然语言处理 算法 测试技术
|
6月前
|
存储 算法 测试技术
|
6月前
|
存储 算法 测试技术
【软件工程】软件工程复习题库2023
【软件工程】软件工程复习题库2023
109 0
|
6月前
软件工程面试技巧之十八罗汉
软件工程面试技巧之十八罗汉
|
6月前
|
数据建模 测试技术 uml
【软件工程】期末复习总结(通俗易懂,学不会来打我)
【软件工程】期末复习总结(通俗易懂,学不会来打我)
|
算法 安全 测试技术
软件工程基础知识
软件工程是一门关于软件开发过程、方法和工具的学科,它旨在提高软件开发的效率和质量,以满足用户需求和市场需求。软件工程涉及到软件开发的各个方面,包括需求分析、设计、编码、测试、维护等环节。本文将介绍软件工程的基础知识,包括软件开发生命周期、软件过程模型、软件需求工程、软件设计和软件测试等方面。 一、软件开发生命周期 软件开发生命周期是指软件从需求分析到维护的整个过程,它包括以下几个阶段: 1. 需求分析阶段:在这个阶段,软件开发人员与用户沟通,了解用户需求和系统需求,确定软件开发的目标和范围。 2. 设计阶段:在这个阶段,软件开发人员根据需求分析的结果,设计软件的架构、模块、接口等,确定
117 0
|
编解码 前端开发 JavaScript
所学自省
我相信看到本文的有些同专业同学回想:“算了,一大堆看不懂的东西。” 也有的人看了收藏,然后不管了。 也有人看来,挨个百度,了解是什么东西,然后可能就回去哔哩哔哩找教程,去菜鸟教程网站看教程…… 论差距是怎么产生的。
43 0
|
敏捷开发 开发框架 算法
软件工程知识点整理
软件工程知识点整理
191 0
软件工程知识点整理
|
编解码 安全 前端开发
素养复习笔记!
素养复习笔记!
|
数据可视化 测试技术 项目管理
软件工程期末复习(三)
软件工程期末复习(三)