软件工程测试卷简答题
-
下载可编辑
软件工程考试试卷
——简答题题库
< br>三、简答题
(
简要回答下列问题
)
1
、什么是软件工程?它目标和内容是什么?
软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门
学科。
软件工程目标:
付出较低开发
成本;
达到要求的功能;取得较好的性能;开发的软件易
于移植
;
只需较低的维护费用;
能按时完成开发任务,
及时交付使用;
开发的软件可靠性高。
软件工程内容:包括开发技术和开发管理两个方面。
2
、软件开发中有哪几种过程模型?
哪些适用于面向对象的软件开发?
软件开发中常见的软件过程
模型有瀑布模型、
原型模型、
螺旋模型、喷泉模型、统一软
p>
件过程等。
其中喷泉模型、统一软件过程适用于面向对象的软件开发。
3
、什么是结构分析方法?该方法使
用什么描述工具?
结构化分析:
简
称
SA
,
面向数据流进行数据分析的方
法。
采用自顶向下逐层分解的分析
策略。
顶层抽象地描述整个系统,
底层具体地画出系统工程的每个细节。
中间层则是从抽象
到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结
构化语言,判定表,判定
树描述加工逻辑。
4
、
什么是
软件概要设计?该阶段的基本任务是什么?
把一个软件需求转
换为软件表示时,
首先设计出软件总的体系结构。
称为概要设计
或结
构设计。
基本任务:
⑴设计软件系统结构
⑵进行数据结构及数据库的设计
⑶编写概要设计的文档
⑷评审
.
专业
.
整理
.
下载可编辑
5
、软件维护有哪些内容?
(
1
)校正性维护。在软件交付使用后,一些
隐含的错误在某些特定的使用环境下会暴
露出来。
为了识别和纠
正错误,
修改软件性能上的缺陷,
应进行确定和修改错误的过程
,
这个过程就称为校正性维护。
(
2
)适应性维护。为了使应用软件适应计算机硬件、软件环境及
数据环境的不断发生
的变化而修改软件的过程称为适应性维护。
(
3
)完善性维护。为增加软件功能、
增强软件性能、提高软件运行效率而进行的维护
活动称为完善性维护。
< br>
(
4
)预防性维护。为了提
高软件的可维护性和可靠性而对软件进行的修改称为预防性
维护。
6
、软件测试要经过哪些步骤<
/p>
?
这些测试与软件开发各阶段之间有什么关系
?
软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试。
单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正
确实现规定的功
能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计
文档。
集成测试是为了检查与设计相关的软件体系结构的有关
问题,
也就是检查概要设计是否
合理有效。
确认测试主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。
系统测试是把已确认的软件与其他系统元素
< br>(
如硬件、其他支持软件、数据、人工等
)
结合在一起进行测试。以确定软件是否可以支付使用。
7
、什么是软件生存周期?它有哪几
个活动?
软件生存周期:一个软件从提出开发要求开始直
到该软件报废为止的整个时期。
包括:可行性分析和项目开发
计划,需求分析,概要设计,详细设计,编码,测试,维
护。
8
、衡量模块独立性的两个标准是什
么?各表示什么含义?
内聚和耦合。
内聚:
又称为块内联系,
指模块内部各成分之间相互关联的程度,
< br>以高内聚为设计目标。
耦合:也称块间联系,模块之间
相互联系程度的度量,联系越紧密,耦合性越强,独立
.
专业<
/p>
.
整理
.
下载可编辑
性越差,以低耦合为设计目标。
<
/p>
9
、什么是结构分析方法?结构化分析方法通过哪些步骤来实现?
结构化分析:
简称
SA
,
面向数据流进行数据分析的方法。
采用自顶向下逐层分解的分析
策略。
顶层抽象地描述
整个系统,
底层具体地画出系统工程的每个细节。
中间层则是从
抽象
到具体的过渡。
实现的步骤:⑴
了解当前系统的工作流程,获得当前系统的物理模型。
⑵抽象出当前
系统的逻辑模型。
⑶建立目标系统的逻辑模型。
⑷作进一步补充和优化。
10
、
什么是需求分析?需求分析阶段的基本任
务是什么
?
需求分析:开发人员准确
地理解用户的要求,进行细致的调查分析,将用户非形式的需
求陈述转化为完整的需求定
义,再由需求定义转换到相应的需求规格说明的过程。
基本任务:
⑴问题识别
⑵分析与综合,导出软件的逻辑模型
⑶编写文档
11
、什么样是
事物流
?什么是
变换流
?
数据流图(
DFD
)一般可分为
变
换流
,
事物流
两种。
p>
变换流
:由输入﹑输出﹑变换(或称处理)
三部分组成,是一顺序结构。
事物流
:它的某个加工,分离成许多发散的数据流,形成许多加工路径
,并且根据
输入值选择其中一个路径来执行。
(这人加工称为事
务处理中心)
12
、单元测试有哪些内容
?
单元测试主要针对模块的以下五个基本特征进行测试:
(1)
模块接口
(2)
局部数据结构
(3)
重要的执行路径
(4)
错误处理
(5)
边界条件
.
专业
.
整理
.
下载可编辑
13
、什么是软件生存周期模型?有哪些主要模型?
生存周期模型:
描述软件开发过程中各种活动如何执行的模型。
对软件开发提供强有力
的支持,
为开发
过程中的活动提供统一的政策保证,
为参与开发的人员提供帮助和指导,
是
软件生存周期模型化技术的基础,也是建立软件开发环境的核心。
主要有:瀑布模型,增量模型,螺旋模型,喷泉模型,基于知识的模型,
变换模型。
14
< br>、软件设计的基本原理包括哪些内容?
⑴模块化:
p>
模块是软件的组成部分,
是具有独立功能且可命名的一段程序,
p>
所有模块组
成整体,可以满足问题的要求。
⑵抽象:
认识复杂现象过程所使用权的工具,
< br>只考虑事物本质的共同特性,
忽略细节和
其它因素。通过
抽象确定组成软件的过程实体。
⑶信息隐蔽:
将模块实现自身功能的细节与数据
隐蔽
起来。
模块间仅交换为完成系统
功能所必须的信息。
⑷模块独立性:每个模块只完成系统要求的独立的子功能。
15
、结构化程序设计的基本要点是
什么
?
主要有三个:
1
、采用自顶向下、逐步求精的程序设计方法
<
/p>
2
、使用三种基本控制结构构造程序。任何程序都可以由顺序、选
择、重复
(
循环
)
三种
基本控制结构构造,这三种基本结构的共同点是单入口、单出口。
3
、主程序员组的组织形式。
16
、详细设计有哪几种描述方法?
详细设计的描述方法有图形、表格和语言,其中图形常用结构化程序流程图、盒图和
p>
PAD(
问题分析图
)
为描述工具,语言常用过程设计语言
(PDL)
来作为工具
。
17
、单元测试中采用什么方法
? <
/p>
测试的方法是为被测试模块编写驱动模块和桩模块来实现被测试单元的可运行。
通过驱
动模块来模拟被测试模块的上级调用模块,以上级模块调用被测模块
的格式驱动被测模块,
.
专业
.
整理
.
下载可编辑
接收被测模块的测试结构并输出。
桩模块则用来代替被测试模块
所调用的模块。
它的作用是
返回被测模块所需的信息。
18
、什么是软件
配置管理
?
什么是基线
?
软件配置管理,简称
SCM(Software
Configuration Management),
是指一组管理整个软
件生存期各阶段中变更的活动。
软件配置管理技术可以使软件变更所产生
的错误达到最小并
最有效地提高生产率。
基线:
是软件生存期中各开发阶段的一个特定点,
它的作用
是把开发各阶段工作的划分
更加明确化,使本来连续的工作在这些点上断开,以便于检查
与肯定阶段成果。
19
、
简述文档在软件工程中的作用?
文档在软件工程中的作用如下:
(1)
提高软件开发过程的能见度
(2)
提高开发效率
(3)
作为开发人员阶段工作成果和结束标志
(4)
记录开发过程的有关信息便于使用与维护;
(5)
提供软件运行、维护和培训有关资料;
(6)
便于用户了解软件功能、性能。
20
、软件工程三要素之间的关系?
软件质量是软件工程的生命线,软件工程以质量保证为基础。
质量管理促进了过程的改进
,
创造了许
多行之有效的软件开发方法和工具。
软件工程釆用层次化的方
法
,
每个层次都包括过程、方法、工具三要素。
方法支撑过程和工具,过程和工具又促进方法学的研究。
21
、
说明
面向对象的特征
?
面向对象的特征是:
(1)
对象唯一性。每个对象都有自身唯一的标识,在对象生存期中,其标识不变,不同
的对象不能有不同的标识。
(2)
分类性。是指将具有一致的数据结构
(
属性
)
和行为
(
操作
)
的对象抽象成类
(3)
继承性。是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。<
/p>
(4)
多态性。是指相同的操作或函
数过程可以作用于多种类型的对象上并获得不同的结
果。
p>
.
专业
.
整理
p>
.