第一篇:GIS软件工程期末考试复习题
《软件工程》选择题
一、选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内,每小题1分)
1.软件产品的开发主要是(D)。
A.复制B.再生产C.拷贝D.研制
2.可行性研究的目的是决定(B)。
A.开发项目B.项目值得开发否C.规划项目D.维护项目
3.SA方法用DFD描述(D)。
A.系统的控制流程B.系统的数据结构
C.系统的基本加工D.系统的功能
4.进行需求分析可使用多种工具,但(C)是不适用的。
A.数据流图(DFD)B.判定表C.PAD图D.数据字典
5.软件设计阶段一般又可分为(B)。
A.逻辑设计与功能设计B.总体设计与详细设计
C.概念设计与物理设计D.模型设计与程序设计
6.软件设计中划分模块的一个准则是(C)。
A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合7.下列语言中哪个语言是低级语言(D)
A.PASCALB.VISUAL BASICC.C++D.汇编语言
14.软件测试的目的是(B)。
A.试验性运行软件B.发现软件错误
C.证明软件正确D.找出软件中全部错误
8.软件测试中,白盒法是通过分析程序的(B)来设计测试用例的。
A.应用范围B.内部逻辑C.功能D.输入数据
9.黑盒法是根据程序的(C)来设计测试用例的。
A.应用范围B.内部逻辑C.功能D.输入数据
10.把一组具有相似特性的对象组合在一起,称之为(C)。
A、多态性B、继承性C、类D、消息
11.面向对象的主要特征除对象唯一性、封装、继承外,还有(A)
A、多态性B、完整性C、可移植性D、兼容
12.软件生存周期中时间最长的是(D)阶段。
A.需求分析B.概要设计C.测试D.维护
13.与计算机科学的理论研究不同,软件工程是一门(C)学科。
A.理论性B.原理性C.工程性D.心理性
14.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节
出错,对软件的影响最大(C)。
A、详细设计阶段B、总体设计阶段C、需求分析阶段D、测试和运行阶段
15.软件工程的出现主要是由于(C)。
A.程序设计方法学的影响B.其它工程科学的影响 C.软件危机的出现D.计算机的发展
16.SA方法的基本思想是(C)
A.自底向上逐步抽象B.自底向上逐步分解C自顶向下逐步分解 D.自顶向下逐步抽象
17、为了提高软件测试的效率,应该(D)。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.在完成编码以后制定软件的测试计划
D.选择发现错误可能性较大的数据作为测试用例
18.与设计测试用例无关的文档是(A)。
A.项目开发计划B.需求规格说明书C.设计说明书D.源程序
19.使用白箱测试方法时确定测试数据应根据(A)和指定的覆盖标准。
A.程序的内部逻辑B.程序的复杂程度C.使用说明书D.程序的功能
20.软件部件的内部实现与外部可访问性的分离,是指软件的(C)。
A.继承性B.共享性C.封装性D.抽象性
21、软件管理的具体内容包括对(D)
A.开发人员、组织机构B.用户管理、配置管理C.控制、文档资料 D.(A)、(B)和(C)
22.软件需求分析阶段的工作,可以分为四个方面:对问题的识别.分析与综合.编写需求分
析文档以及(B)
A.软件的总结B.需求分析评审C.阶段性报告D.以上答案都不正确
23..数据流图是常用的进行软件需求分析的图形工具,其主要图形元素是(C)
A.输入.输出.外部实体和加工B.变换.加工.数据流和存储
C.加工.数据流.数据文件和源或宿D.变换.数据存储.加工和数据流
24、软件的集成测试工作最好由(D)承担,以提高集成测试的效果。
A.该软件的设计人员B.该软件开发组的负责人
C.该软件的编程人员D.不属于该软件开发组的软件设计人员
25.软件生命周期的最后的一个阶段是(B)
A.书写软件文档B.软件维护C.稳定性测试D.书写详细用户说明McCall提出了表明软件质量的11个质量特性。它们是正确性、可靠性、可使用性、完整性、(D)、可移植性、可复用性、效率、可测试性、互联性。
A.模块独立性、安全性B.文档完备性、灵活性
C.可维护性、安全性D.可维护性、灵活性
27、每个对象可用它自己的一组属性和它可以执行的一组(C)来表征。
A、行为B、功能C、操作D、数据
28、面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以由父类,下层可以有子类,这种层次结构系统的一个重要性质是(B),一个类获得其父亲的全部描述(数据和操作)
A、传递性B、继承性C、复用性D、并行性
29、软件开发在需求分析、设计、编码、测试这几个阶段所需不同层次的技术人员大致是
(C)
A.初级、高级、高级、初级B.中级、中级、高级、中级
C.高级、中高级、初级、中高级D.中级、中高级、中级、初级
30、软件重用的单位是(A)。
A.软件模块 B.性能C.系统D.功能
31、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为(B)
A、相互排斥B、相互补充C、独立使用D、交替使用
32、系统分析员是(B)
A、用户中系统的直接使用者B、用户和软件人员的中间人
C、软件的编程人员D、用户和软件人员的领导
33、结构化分析SA方法以数据流图、(D)和加工说明等描述工具,即用直观的图和简洁的语言来描述软系统模型。
A、DFD图B、PAD图C、IPO图D、数据字典
34、在E-R 模型中,包含以下基本成分(C)。
A、数据、对象、实体B、控制、联系、对象
C、实体、关系、属性D、对象、属性、操作
35、结构设计是一种应用最广泛的系统设计方法,是以(A)为基础、自顶向下、逐步求精和模块化的过程。
A、数据流B、数据流图C、数据库D、数据结构
36、初步用户手册在(B)阶段编写。
A.可行性研究 B.需求分析 C.软件总体设计 D.软件详细设计
37、在软件结构化设计中,好的软件结构设计应该力求做到(B)。
A、顶层扇出较少,中间层扇出较高,底层模块低扇入
B、顶层扇出较高,中间层扇出较少,底层模块高扇入
C、顶层扇入较少,中间层扇出较高,底层模块高扇入
D、顶层扇入较少,中间层扇入较高,底层模块低扇入
38、软件详细设计主要采用的方法是(D)。
A、模块设计B、结构化设计C、PDL语言D、结构化程序设计
39、软件测试的手段有多种,通过人工来评审文档或程序,借以发现其中错误,该手段是(D)。
A、黑盒测试B、正确性测试C、动态测试D、静态测试
40、黑盒测试在设计测试用例时,主要需要研究(A)。
A、需求规格说明与概要设计说明B、详细设计说明
C、项目开发计划D、概要设计说明与详细设计说明
41、在整个软件维护阶段所花费的全部工作中,(C)所占比例最大。
A、改正性维护B、适应性维护C、完善性维护D、预防性维护
42.软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、分析与综合、编写需
求分析文档以及(C)。
A.总结B.阶段性报告C.需求分析评审D.以上答案都不正确
43.在结构化分析方法中,用以表达系统内数据的运动情况的工具有(A)。
A.数据流图B.数据词典C.结构化语言 D.判定表与判定树
44.来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具,通常也称为(D)工具。
A.CADB.CAIC.CAMD.CASE
45.螺旋模型综合了(A)的优点,并增加了风险分析。
A.瀑布模型和演化模型B.瀑布模型和喷泉模型
C.演化模型和喷泉模型D.原型和喷泉模型
46.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。
A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型
B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型
C.获得当前系统的物理模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型
D.获得当前系统的物理模型,建立当前系统的物理模型,建立目标系统的物理模型
47.设计软件结构一般不确定(C)。
A.模块的功能B.模块的接口
C.模块内的局部数据D.模块间的调用关系
48.结构分析方法就是面向(D)自顶向下逐步求精进行需求分析的方法。
A.目标B.功能C.对象D.数据流
49.软件是一种(B)产品。
A.物质B.逻辑C.有形D.消耗
50.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(C)。
A、详细计划B、可行性分析C、运行阶段D、测试与排错
51.结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B)
A、控制流B、数据流C、程序流D、指令流
52.在软件的可行性研究中,可以从不同的角度对软件的可行性进行研究,其中是从软件的功能可行性角度考虑的是(B)
A、经济可行性B、技术可行性C、操作可行性D、法律可行性
53、下述任务中,不属于软件工程需求分析阶段的是(D)。
A.分析软件系统的数据要求B.确定软件系统的功能需求
C.确定软件系统的性能要求D.确定软件系统的运行平台
54、火车是一种陆上交通工具,火车和陆上交通工具之间的关系是(D)关系。
A.组装B.整体成员C.has aD.一般具体
55.瀑布模型的存在问题是(B)
A.用户容易参与开发B.缺乏灵活性
C.用户与开发者易沟通D.适用可变需求
56.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)
A.软件工程B.软件周期
C.软件危机D.软件产生
57.软件测试的目的是(B)。
A. 评价软件的质量B.发现软件的错误
C. 找出软件的所有错误D.证明软件是正确的58.需求分析最终结果是产生(B)。
A.项目开发计划B.需求规格说明书
C.设计说明书D.可行性分析报告
59.快速原型模型的主要特点之一是(D)
A.开发完毕才见到产品B.及早提供全部完整的软件产品
C.开发完毕后才见到工作软件D.及早提供工作软件
60.结构分析方法就是面向(B)自顶向下逐步求精进行需求分析的方法。
A. 目标B.数据流C.功能D.对象
61.研究开发所需要的成本和资源是属于可行性研究中的(B)研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.法律可行性
62.为了提高软件的可维护性,在编码阶段应注意(D)
A.保存测试用例和数据B.提高模块的独立性
C.文档的副作用D.养成好的程序设计风格
《软件工程》填空题
二、填空题(请把答案写在相应的横线上,每小题1.5分)
1、面向对象开发方法包括 OOA、OOD、OOP 三部分。
2、在单元测试时,需要为被测模块设计 驱动模块和桩模块。
3、软件工程管理的具体内容包括对开发人员、组织机构、用户、文档资料等方面的管理。
4、可行性研究的三个方面是 技术可行性、社会可行性 和__经济可行性__。
5、对象的抽象是___类___。
6、软件工程包括软件开发技术和__软件工程管理__两大部分内容。
7、需求分析阶段产生的最重要的文档是__需求规格说明书_。
8、结构化方法是一种面向数据流的开发方法。由结构化分析、_结构化设计_、结构化程序设计构成。
9、对象之间进行通信的构造叫做_消息_。
10、结构化分析方法的分析策略是__自顶向下逐步求精__。
11、规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为___容错__软件。
12、软件生存周期包括问题定义、可行性研究,需求分析,总体设计,详细设计,_编码_,测试,维护活动,可以将这些活动以适当方式分配到不同阶段去完成13、___可行性研究___的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
软件工程简答题
三、简答题(简要回答下列问题,每小题4分*5=20)
1、什么是软件工程?它目标和内容是什么?
软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。
软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。
软件工程内容:包括开发技术和开发管理两个方面。
2、什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。
3、衡量模块独立性的两个标准是什么?各表示什么含义?
内聚和耦合。
内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。
4、软件设计的基本原理包括哪些内容?
⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块组成整体,可以满足问题的要求。
⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节和其它因素。通过抽象确定组成软件的过程实体。
⑶信息隐蔽:将模块实现自身功能的细节与数据“隐蔽”起来。模块间仅交换为完成系统功能所必须的信息。
⑷模块独立性:每个模块只完成系统要求的独立的子功能。
5、软件生命周期划分为哪几个阶段?
软件生命周期分为三个时期八个阶段:
软件定义:问题定义、可行性研究;
软件开发:需求分析、概要设计、详细设计、编码、测试;
软件运行:软件维护
《软件工程》应用题
四、综合应用题(每小题10分*3=30)
1.给你一个GIS软件开发任务由 你负责,你将怎样进行?
2.目前常用的GIS开发、应用平台软件有哪些,各有什么特点
3.合格的GIS软件工程负责人应该有什么样的素质和知识?
第二篇:软件工程复习题
第三章 软件工程
一、软件工程基本概念
1.软件是计算机系统中与硬件相互依存的重要部分,包括程序、数据及相关的 文档。其中,程序 是软件开发人员根据用户需求开发的、用程序设计语言描述的、适
合计算机执行的指令(语句)序列。
2.下列叙述中,正确的是(D)。A.软件就是程序清单B.软件就是存放在计算机中的文件 C.软件应包括程序
清单及运行结果D.软件包括程序和文档3.软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件)
4.软件工程的出现是由于(软件危机的出现)5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(软件危机)
软件工程概念的出现源自软件危机。所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。总之,可以将软件危机归结为成本、质量、生产率等问题。
6.开发大型软件时,产生困难的根本原因是(大型系统的复杂性)。
7.软件危机出现于20世纪60年代末,为了解决软件危机,人们提出了 软件工程学 的原理来设计软件这就是软件工程诞生的基础。
8.下列不属于软件工程的3个要素的是(D)A.工具B.过程C.方法D.环境 软件工程过程与软件生命周期
9.软件工程过程是把输入转化为输出的一组彼此相关的 资源 和活动。通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为 软件生命周期 10.软件生命周期中所花费用最多的阶段是(软件维护)11.软件开发的结构化生命周期方法将软件生命周期划分成(定义、开发、运行维护)。12.软件生命周期一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。软件工程的目标与原则
13.软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境,主体内容是软件开发方法学。软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。14.软件工程的理论和技术性研究的内容主要包括软件开发技术和(软件工程管理)
15.软件工程的原则包括抽象、信息隐藏、模块化、局部化、确定性、一致性、完备性和可验证性。
软件开发工具与软件开发环境
16.开发软件时对提高开发人员工作效率至关重要的是(先进的软件开发工具和环境)17.软件开发环境是全面支持软件开发全过程的 软件工具 集合。常用的软件开发方法和技术可以分为三大类:瀑布型、增量型和变换型。瀑布型开发方法将软件生命周期的各项活动规定为按固定顺序连接的若干阶段,强调早期的需求分析和开发的阶段性,强调产品测试;但是不能适应需求的变化。增量型则先建立一个不完全的系统,通过对需求的理解再进一步扩充和完善。例:瀑布模型突出的缺点是不适应(D)的变动 A.算法B.平台C)程序语言D.用户需求
二、结构化分析方法需求分析与需求分析方法
18.在软件生产过程中,需求信息的给出是(软件用户)。19.需求分析中,开发人员要从用户那里了解(软件做什么)。
20.需求分析阶段的任务是确定(软件系统功能)21.需求分析的任务是发现需求、求精、建模和定义需求的过程。需求分析将创建所需的数据模型、功能模型和 控制模型
22.需求分析阶段的工作:需求获取、需求分析、编写需求规格说明书、需求评审
下列工具中属于需求分析常用工具的是(D)。A)PADB)PFDC)N—SD)DFD 结构化分析方法 常用的需求分析方法:
(1)结构化分析方法。主要包括:面向数据流的结构化分析方法(SA),面向数据结构的Jackson方法(JSD)和面向数据结构的结构化数据系统开发方法(DSSD)(2)面向对象的分析方法(OOA)
23.结构化方法的核心和基础是 结构化程序设计理论24.下列不属于结构化分析的常用工具的是(D)。A)数据流图B)数据字典C)判定树D)PAD图 25.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)
A)可行性分析 B)需求分析C)详细设计D)程序编码
26.数据流图用于抽象描述一个软件的逻辑模型.数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A)。
A)控制流B)加工C)数据存储D)源和潭 说明:数据流图中的主要图形元素与说明: 27.在数据流图(DFD)中的箭头代表的是(数据流)28.在数据流图(DFD)中,带有名字的箭头表示(数据的流向)。
29.在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为 数据字典软件需求规格说明书
30.软件需求规格说明书 是需求分析阶段的最后结果 31.下列叙述中,不属于软件需求规格说明书的作用的是(D)
A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析
32.(数据描述)是对软件系统所必须解决的问题做出的详细说明
说明:需求规格说明书一般包括以下内容:概述、数据描述、性能描述、功能描述、参考文献目录等。其中概述从系统角度描述软件的目标和任务;功能描述中描述了为解决用户问题所需要的每一项功能的过程细节;性能描述说明系统应达到的性能和应该满足的限制条件、检测的方法和标准。
三、结构化设计方法软件设计的基本概念
33.在软件开发中,下面任务不属于设计阶段的是(D)A)数据结构设计 B)给出系统模块结构 C)定义模块算法 D)定义需求并建立系统模型
34.软件设计包括软件的结构、数据、接口和过程设计,其中软件的过程设计是指(系统结构部件转换成软件的过程描述)。
说明:结构设计:定义软件系统各主要部件之间的关系;数据设计:将分析时创建的模型转化为数据结构的定义;接口定义:描述软件内部、软件和协作系统之间以及软件与人之间如何通信;过程设计:把系统结构部件转换成软件的过程性描述。
35.下面不属于软件设计原则的是(C)A.抽象 B.模块化C.自底向上D.信息隐藏
36.耦合和内聚是评价模块独立性的两个主要标准,其中内聚 反映了模块内各成分之间的联系,耦合反映了模块间互相连接的紧密程度。
37.内聚性是信息隐蔽和局部化概念的自然扩展,一个模块的内聚性越强,则该模块的模块独立性越 强。一个模块与其它模块的耦合性越强,则它的模块独立性越 弱。38.下列叙述中,正确的是(C)
A.接口复杂的模块,其耦合程度一定低B.耦合程度弱的模块,其内聚程度一定低C.耦合程度弱的模块,其内聚程度一定高D.以上都不对
39.下列选项中,不属于模块间耦合的是(B)。A.数据耦合B.同构耦合C.异构耦D.公用耦合40.软件设计中,有
利于提高模块独立性的一个准则是(C)。
A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合 概要设计
41.软件的概要 设计又称为总体结构设计,其主要任务是建立软件系统的总体结构,设计数据结构及数据库,编写概要设计文档,概要设计文档评审。
42.在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C)
A.详细设计 B.需求分析 C.总体设计 D.编程调试 43.在概要设计阶段,常用的软件结构设计工具是 结构图(sc),也称程序结构图。生成的结构图中,带有箭头的连线表示(模块之间的调用关系),矩形表示模块。44.在概要设计阶段,一般采用面向数据流的设计方法。数据流的类型有 变换型和事务型。将变换型映射成结构图称为 变换分析。将事务型映射成结构图称为 事务分析。
45.好的软件设计结构通常 顶层 高 扇出,中间扇出较少,底层 高 扇入。46.模块的控制范围包括它本身以及它所有的从属模块,模块的作用范围是指模块内一个判定的作用范围,凡是受到这个判定影响的所有模块都属于这个判定的作用范围。理想的情况是(模块的作用范围应在控制范围内)详细设计
47.详细设计 的任务是为软件结构图中的每一个模块确定实现算法和局部数据结构,用选定的表达工具表示算法和数据结构的细节。确定怎样来具体实现所要求的系统。48.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为(N—S图)。
49.详细设计的结果基本决定了最终程序的(质量)。50.软件设计模块化的目的是 降低复杂性。51.详细设计的典型语言描述工具是(PDL)
结构化分析(需求阶段)的常用工具有:数据流图(DFD)、数据字典(DD)、判定树和判定表
结构设计(概要设计阶段)工具是:结构图(SC, structure chart)
过程设计(详细设计阶段)常见的工具有:程序流程图、N—S图、PAD图(问题分析图,)和PDL(过程设计语言)
四、软件测试 软件测试的目的52.在软件测试设计中,软件测试的主要目的是(D)。A.实验性运行软件B.证明软件正确 C.找出软件中全部错误D.发现软件错误而执行程序
(注意:不是为了证明软件的正确性,也不是为了找出全部错误)
软件测试的准则
53.下列叙述中.不属于测试的特征的是(C)。A.测试的挑剔性B.完全测试的不可能性C.测试的可靠性D.测试的经济性 软件测试技术与方法
软件测试方法从是否需要执行被测试软件的角度,可以分为 静态测试 和 动态测试 ;按功能划分为 白盒测试 和 黑盒测试。
静态测试包括 代码检查、静态结构分析、代码质量量度 等
白盒测试和黑盒测试都属于 动态测试
白盒测试的主要方法: 逻辑覆盖、基本路径测试 等 黑盒测试的主要方法: 等价类划分法、边界值分析法、错误推测法、因果图 等
54.下列不属于静态测试方法的是(B)。
A.代码检查B.白盒法C.静态结构分析D.代码质量度量
55.在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是(A)。
A.路径的集合B.循环的集合C.目标的集台D.地址的集合56.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是(A)A.黑箱测试法B.白箱测试法C.错误推测法D.安装测试法
57.黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证,不考虑程序内部的逻辑结构,在软件接口处进行。常用的黑箱测试有等价分类法、边界值分析法、因果图法和错误推测法4种。软件测试的实施
58.软件测试过程一般按4个步骤进行,即单元测试、集成测试、验收测试(确认测试)和系统测试58.检查软件产品是否符合需求定义的过程称为(A)A.确认测试B.集成测试C.验证测试D.验收测试 说明:软件的测试过程一般按4个步骤进行:单元测试:对软件设计的最小单位—模块进行正确性检验的测试,发现模块内部可能存在的错误。由于模块通常不是一个独立的程序,不能单独运行,所以常常需要用到模拟环境。可以采用静态测试和动态测试(以白盒测试为主)。
集成测试:测试和组装模块的过程,主要是发现与接口有关的错误,依据是概要设计说明书。涉及的内容有:软件单元的接口测试、全局数据结构测试、边界条件和非法输入的测试等。通常采用两种方式:非增量方式组装域增量方式组装
验收测试(确认测试):验证软件的功能和性能以及其
他特性是否满足了需求规格说明书中确定的各种需求,以及软件配置是否完全、正确。采用黑盒测试。系统测试:将软件与硬件、用户、数据等组合,在实际运行环境下对整个系统进行集成测试和确认测试。59.软件开发离不开系统环境资源的支持.其中必要的测试数据属于(D)。
A.硬件资源B.通信资源C.支持软件D.辅助资源
软件测试过程中,辅助资源包括测试用例(测试数据)、测试计划、出错统计和最终分析报告等。60.为了提高测试的效率,应该(D)
A.随机选取测试数据B.取一切可能的输入数据作为测试数据 C.在完成编码以后制定软件的测试计划D.集中对付那些错误群集的程序
61.为了便于对照检查,测试用例应由输入数据和预期的 输出结果 两部分组成。
四、程序的调试
软件调试(Debug,即排错)的任务是诊断和改正程序中的错误,与软件测试不同,软件测试是尽可能多地发现软件中的错误。软件测试贯穿整个软件生命期,调试主要在开发阶段。
62.程序调试的基本步骤:错误定位、修改和设计代码以排除错误、进行回归测试防治引进新的错误。63.下列叙述正确的是(D)
A.测试和调试工作必须由程序编制者自己完成B.测试用例和调试用例必须完全一致
C.一个程序经调试改正错误后,一般不必再进行测试 D.上述三种说法都不对 软件调试方法
64.下列不属于软件调试技术的是(B)。
A.强行排错法B.集成测试法C.回溯法D.原因排除法
六、软件维护
65.软件维护活动包括以下几类:校正性维护、适应性维护、完善性维护和预防性维护。
第三篇:GIS复习题总结
名词解释:
1.地理信息系统(06,07,08,09)
地理信息系统:地理信息系统是由计算机硬件、软件和不同方法组成的系统,该系统设计来支持空间数据的采集、管理、处理、分析、建模和显示,以便解决复杂的规划和管理问题。
2.数据结构(06,08,09)
数据结构:数据结构即数据的组织形式,是适合计算机储存、管理处理的数据逻辑表达。
3.缓冲区分析(07,08)
缓冲区分析:缓冲区分析就是在点、线或面等不同实体周围建立一定宽度的缓冲多边形,以确定不同地理要素的空间近邻性或其影响范围。
4.元数据(metadata)(06,07,08)
元数据(metadata):元数据是“关于数据的数据”,它反映了某项数据自身的一些特征。
5.WebGIS(06,09)
WebGIS:指基于Internet平台,客户端应用软件采用网络协议,运用在Internet上的地理信息系统。一般由多主机,多数据库和多个客户端以分布式连接在Internet上而组成,包括以下四个部分:WEB-GIS浏览器,WEB-GIS服务器,WEB-GIS编辑器,WEB-GIS信息代理。
6.专家系统(06,08)
专家系统:研究模拟人类专家的推理思维过程,将领域专家的知识和经验以知识库的形式存入计算机,系统可以根据可以根据这些知识,对输入的原始事实进行复杂推理,并做出判断和决策,从而起到专门领域专家的作用。
7.组件式GIS(06,08)
组件式GIS:ComGIS的基本思想是把GIS的各大功能模块划分为几个组件,每个组件完成不同的功能。各个GIS组件之间,以及GIS组件与其它非GIS组件之间,都可以方便地通过可视化的软件开发工具集成起来,形成最终的GIS基础平台以及应用系统。
8.虚拟现实(06,08)
虚拟现实:虚拟现实技术是指采用各种技术,来营造一个使人感觉置身于类似于现实世界的环境中。虚拟现实技术具有以下几个特征:(1)立体感的视觉效果;(2)存在感;(3)多感知性;(4)闭环交互方式;(5)动态显示。
9.图层(09)
图层:在地理信息系统中由地图数字化形成的矢量数据存储的基本单元。图层存储了主要地理要素(如弧段、节点、多边形、标识点等)和次要要素(如图幅范围、连接以及注释等),是一组与主题相关的数据单元。
10.数字地球(07,09)
数字地球:数字地球是一种基于因特网的嵌入海量数据的多分辨率的真实地球的三维表现。数字地球的核心思想有两点:一是用数字化手段处理地球问题;二是通过网络最大限度地利用地球信息资源。
11.空间数据质量(07)
空间数据质量:GIS数据质量是指该数据对待特定用途的分析、操作和应用的适宜程度。因此,数据质量的好坏是一个相对的概念,但它具有明确的内容。具体的含义包括:(1)数据完整性,(2)数据一致性,(3)位置精度,(4)时间精度,(5)属性精度。
12.拓扑关系(07)
拓扑关系:拓扑关系是明确定义空间结构关系的一种数学方法,在GIS中,它不但用于空间数据的编辑和组织,而且在空间分析和应用中都具有非常重要的意义。类型:拓扑邻接,拓扑关联,拓扑包含。
13.地理空间中栅格数据(07)
地理空间中栅格数据:栅格数据是将空间分割成有规则的网格,在各个网格上给出相应的属性值来表示空间实体的中数据组织形式。
简答题:
1. 简述地理信息系统的主要软、硬件组成。(06,07,08,09)
答:一个实用的地理信息系统,要支持对空间数据的采集、管理、处理、分析、建
模和显示等功能,其基本构成一般包括以下五个主要部分:系统硬件、系统软件、空间数据、应用人员和应用模型。
(1)系统硬件:地理信息系统硬件用以储存、处理、传输和显示地理或空间数据。空间
处理设备与数据输入、输出设备连接构成地理信息系统的硬件环境。数据处理设备是地理信息系统硬件的主体,作为系统硬件的核心,它包括从服务器到图形工作站,微机等各种形式的计算机。数据输入设备即数字化仪,扫描仪和数字测量设备等。数据输出设备有绘图仪,打印机和高分辨率显示装置等。
(2)系统软件:地理信息系统的软件是整个系统的核心,用于执行地理信息系统功能的各种操作,包括数据输入、处理、数据库管理、空间分析和数据输出等。一个完整的地理信息系统需要包括很多种类的软件协同工作,这些软件按照功能可以分为:地理信息系统功能软件、基础支撑软件和操作系统软件等。
(3)空间数据:地理信息系统的操作对象是地理数据,它具体描述地理现象的空间特征、属性特征和时间特征。
(4)应用人员:地理信息系统应用人员包括系统开发人员和地理信息的最终用户,他们的业务素质和专业知识是地理信息系统工程及其应用成败的关键。
(5)应用模型:地理信息系统应用模型是为某一特定的实际工作而建立的运用地理信息
系统的解决方案,其构建和选择也是系统应用成败的=至关重要的因素。
2. 简述地图投影的基本原理。(06,09)
答:要将地球椭球面上的空间信息表现到平面地图上,或用GIS的地图图形显示出来,就必须采用某种数学法则,使空间信息在地球表面上的位置和地图平面位置一一对应起来。地图投影的目的就是研究这样的投影法则,以满足地图制图的要求。
地球表面是一个不规则曲面,即使 把它当做椭球或球表面,数学上也还是一种不
能展开的曲面,即使把这样的曲面摊开成平面就会发生破裂或褶皱。理想的地图应使制图区域不破裂,并保持图形轮廓的完整一致,其边界邻区也应该是延续的,对接无误的。
地图投影就是依据一定的数学法则,将不可展开的地表曲面映射到平面上或可展成平面的曲面上,最终在地表面店和平面点之间建立一一对应的关系。在实践中应采用经度、纬度表示的地球表面上的点位与平面直角坐标或极坐标表示的平面上的点位,通过一定的数学关系式建立起对应的联系。
3. 简述栅格数据结构的特点。(06,09)
答:基于栅格模型的数据结构简称栅格数据结构,是指将空间分割成规则的网格,作为栅格单元,在各个栅格单元上给出相应的属性值来表示地理实体的一种数据组织形式。
在栅格数据结构中,点由一个单元网格表示。线由一串有序的相互连接的单元王国
维表示,各个网格的值相同。多边形由聚集在一起的相互连接的单元网格组成,区域内部的网格值相同,但与外部网格值不同。
栅格数据结构表示的是二维表面上地理要素的离散化数值,每个网格对应一种属
性。其空间位置用行和列标识。网格边长决定了栅格数据的数据经度,但是,当用栅格
数据来表示地理实体时,不论网格边长多小,与原实体特征相比较,信息都有丢失,这是由于复杂的实体采用统一的网格所造成的。一般的,可以通过保证最小多边形的精度标准来确定网格尺寸,使形成的栅格数据既有效地逼近地理实体,又能最大限度地减少数据量。
与矢量数据结构相比,用栅格数据结构表达地理实体要素比较直观,容易实现多层数据的爹和分析,便于与遥感图像及扫描输入数据相匹配使用等
4. 最常用遥感与GIS数据的融合方法。(06,07,08,09)
答:遥感与GIS数据的融合,目前最常用的方法具体表现为:
(1)遥感影像与数字线画图(DLG)的融合:经过正射纠正后的遥感影像,与数字线画
图信息融合,可产生影像地图。
(2)遥感影像与数字地形模型(DEM)的融合:数字地形模型与遥感数据的融合,有助
于实施遥感影像的几何校正与配准,消除遥感影像中因地形起伏所造成的像元位移,提高遥感影像的位移精度,同时数字地形可参与遥感影像的分类,改善分类精度。
(3)遥感影像与数字栅格图(DRG)的融合:将数字栅格地图与遥感图像配准叠合,可
以从遥感图像中快速发现已经发生变化的区域,进而实现空间数据库的自动/半自动更新。
5. 地理信息系统有哪些数据来源及数据类型。(07)
答:(1)地图数据:地图数据来源于各种类型的普通地图和专题地图。这些地图的内容丰富,图上空间实体间的空间关系直观,实体的类别或属性清晰,实测地形图还具有很高的定位精度。
(2)影像地图:影像数据主要来源于卫星遥感和航空遥感,包括多平台、多层面、多种传感器、多时相、多光谱、多角度和多种分辨率的遥感影像数据,也是GIS最有效的数据源之一。
(3)文本数据:文本数据来源于各类调查报告、实测数据、文献资料、解译信息等。
6. 不规则三角网模型。(07)
答:TIN曲面数据结构通常用于数字地形的三维建模和显示。它是将离散分布的实测数据点连成三角网,网中的每个三角形要求尽量接近等边形状,并保证由最近邻的点构成三角形,即三角形的边长之和最小。利用这种数据结构,可方便地进行地形分析,如坡度和坡向信息的提取,填挖方计算,阴影和地形通视分析,等高线自动生成和三维显示等。因此,TIN被广泛应用于各种GIS。
7. 四叉树编码的基本思想。(07)
答:栅格数据可用四叉树结构储存,这种数据结构的原理可以表述为:将空间区域按照
nn四个象限进行递归分割n次,每次分割形成2×2个子象限,知道子象限中的属性数值都相
同为止,该子象限就不能再分割。凡属性值都相同的子象限,不论大小,均作为最后的储存单元
8. 空间数据库的组成部分。(07)
答:空间数据库系统由三部分所组成,其中空间数据库储存系统指的是GIS在计算机储存介质上储存的与应用相关的地理空间数据的总和,一般是以一系列特定结构的文件的形式储存在硬盘、光盘等储存介质中。
空间数据库管理系统则是指能够对介质上储存的地理空间数据进行语义和逻辑上的定义,提供必须的空间数据查询检索和存取功能,以及能够对空间数据进行有效的维护和更新的一套软件系统。
由GIS得空间分析模型和应用模型所组成的软件可以看做是空间数据库的数据库应用系统,通过它不但可以全面地管理空间数据,还可以运用空间数据进行分析和决策。
9. 空间数据的特征。(06,08,09)
答:空间数据具有三个基本特征:空间特征、属性特征及时间特征。
(1)空间特征:空间特征是指地理现象和过程所在的位置、形状和大小等几何特征,以及与相邻地理现象和过程的空间关系,包括方位关系、拓扑关系、相邻关系、相似关系等。
(2)属性特征:属性特征是指地理现象和过程所具有的专属性质,通常包括名称、数量、质量、性质等,称为属性数据。
(3)时间特征:时间特征是指一定区域内的地理现象和过程随着时间的变化情况,成为时态数据。
10.数字地图的优点。(06,08)
答:(1)数字地图的储存介质是计算机磁盘、光盘等,与纸张印刷的常规地图相比,其信息储存量大、体积小,易于携带和通过网络进行传输。
(2)数字地图是以空间数据反映各种地理特征,可以在计算机软件的支持下借助高分辨率的显示器实现地图的无级缩放、漫游等显示和信息的动态选择、查询和量算等功能。
(3)数字地图便于与遥感信息和GIS空间数据相结合,实现地图的快速更新,同时也便于多层次信息的综合表现与分析。
11.如何建立空间属性库,属性库在GIS中有什么作用?(09)
论述题:
1.2. 矢量与栅格数据的优缺点。(07)
答:矢量数据:优点:(1)便于面向实体的数据表达;(2)数据结构紧凑、冗余度低;(3)拓扑结构有利于网络分析、空间查询等。
缺点:(1)数据结构较复杂;(2)软件实现的技术要求比较高;(3)多边形叠合等分析相对困难。
栅格数据:优点:(1)数据结构相对简单;(2)空间分析较容易实现;(3)有利于遥感数据的匹配应用和分析
缺点:(1)数据量较大,冗余度高,需要压缩处理;(2)定位精度比矢量低;(3)拓扑关系难以表达。
3. 简述地理信息系统中主要空间分析方法。(06,08,09)
答(1)数字地形模型分析:数字地形模型(DTM)就是用数字化的形式表达的地形信息,DTM在形式上可分为规则网格、不规则网格和数字等高线、等深线、地形特征线等。
(2)空间叠合分析:空间叠合分析是指在相同的空间坐标系统条件下,将同一地区两个不同地理特征的空间和属性数据重叠相加,以产生空间区域的多重属性特征,或建立地理对象 之间的空间对应关系。一般用于搜索同时具有几种地理属性的分布区域。
(3)空间邻近的分析:空间邻近度地理空间中两个地物距离相近的程度,临近度分析是空间分析的一种重要手段。在实际应用中,如研究道路沿线的污染或河流沿线的供水能力,公共设施的服务区域划分等,都是一个邻近度问题。空间邻近度分析通常有空间缓冲区分析和voronoi多边形两种分析方法。
(4)空间网络分析:空间网络分析是GIS空间分析的重要组成部分。网络是由点、线的二元关系构成的系统,通常用来描述某种资源或物资沿着路径在空间上的运行。空间网络分析的用途很广泛,如公共交通运营的线路选择和紧急救援行动的线路选择等
4.5. 简述数字高程数据通常有几种形式?它们在实际中有什么用途?如何获取和储存这些
数据?(08)
6. 在实际工作中要用到国家基本比例尺地图,请问有哪几种?各自采用什么样的投影?
(09)
答:在我国,国家从基本比例尺系列地图:1:5千、1:1万、1:2.5万、1:5万、1:10万、1:25万、1:50万和1:100万。其中在我国,国家从基本比例尺系列地图:1:5千、1:1万、1:2.5万、1:5万、1:10万、1:25万、1:50万采用全球统一分带的高斯-克吕格投影;1:100万则采用正轴等角割圆锥投影(Lambert投影)。
7.
第四篇:软件工程期末考试试题
一,单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。
1.可行性研究要进行一次_____需求分析。
A.详细的 B.全面的 C.简化的、压缩的 D.彻底的 2.系统流程图用于可行性分析中的_____的描述。
A.当前运行系统 B.当前逻辑模型 C.目标系统 D.新系统 3.系统流程图是描述_____的工具。
A.逻辑系统B.程序系统C.体系结构D.物理系统 4._______工具在软件详细设计过程中不采用。
A.判定表 B.IPO图 C.PDL D.DFD图 5.程序的三种基本控制结构是
A.过程、子程序和分程序 B.顺序、选择和重复
C.递归、堆栈和队列 D.调用、返回和转移 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.提高软件质量和可靠的技术大致可分为两大类:其中一类就是避开错误技术,但避开错误技术无法做到完美无缺和绝无错误,这就需要
A.消除错误 B.检测错误 C.避开错误 D.容错 14._____是以提高软件质量为目的的技术活动。
A.技术创新 B.测试 C.技术创造 D.技术评审 15.面向对象方法学的出发点和基本原则是尽可能模拟人类习惯的思维方式,分析、设计和实现一个软件系统的方法和过程,尽可能接近于人类认识世界解决问题的方法和过程。因此面向对象方法有许多特征,如软件系统是由对象组成的;________;对象彼此之间仅能通过传递消息互相联系;层次结构的继承。
A.开发过程基于功能分析和功能分解 B.强调需求分析重要性
C.把对象划分成类,每个对象类都定义一组数据和方法 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.程序的功能
1.C[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。因此答案为C。
2.A[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。描述的对象是当前正在运行的系统,因此选择A。
3.C[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。
4.D[解析]详细描述处理过程常用三种工具:图形、表格和语言。其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。
5.B[解析]程序的三种基本控制结构是顺序、选择和循环(重复)。子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。6.D[解析]程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。三种结构可以写出非常复杂的程序,而且选择和循环都可以嵌套设计。
7.C [解析]因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用,包括编码副作用、数据副作用、文档副作用三种。只有答案C是正确的表述。
8.C[解析]编码副作用指的是在使用程序设计语言修改源代码时可能引入错误,比如删除或修改一个子程序、一个标号、一个标识符,改变程序代码的时序关系,修改文件的打开或关闭等。因此本题答案为C。
9.A [解析]软件的可维护性可用七个质量特性来衡量,分别是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。对于不同类型的维护,这些特性的侧重点也不相同,有一些可维护特性是可以相互促进的,比如可理解性和可测试性,可理解性和可修改性,另外一些则是相互矛盾的,如答案中的B效率和可移植性、C中的效率和可修改性。至于D中的结构好则不属于可维护性的特征。
10.B [解析]类有两种主要的结构关系,即一般——具体结构关系和整体——部分结构关系。前者称为分类结构,用来描述现实世界中的一般化的抽象关系。后者称为组装结构,用来描述现实世界中的类的组成的抽象关系。汽车和发动机的关系很明显,应该属于整体——部分关系。
11.B[解析]变更控制包括建立控制点和建立报告与审查制度,其过程中的“检出”和“登入”处理实现了存取控制和同步控制,存取控制管理各个用户存取和修改一个特定软件配置对象的权限,同步控制可用来确保由不同用户所执行任务的并发变更。
12.A[解析]“检出”和“登入”处理实现了两个重要的变更控制要素。具体说明见上题。
13.D[解析]提高软件质量和可靠性的技术大致可分为两类,一类是避开错误技术,即在开发的过程中不让差错潜入软件的技术,另一类是容错技术,即对某些无法避开的差错,使其影响减至最小的技术
14.D[解析]技术评审是以提高软件质量为目的的技术活动,是对软件本身的结构、与运行环境的接口、变更带来的影响等方面进行的评审活动。
15.C[解析]面向对象方法有四个特征,分别是对象唯一性、分类性、继承性和多态性。其中分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类,每个类是具有相同性质的个体集合,而每个对象相关类的实例,对象彼此之间通过传递消息互相联系。16.D[解析]面向对象的分析的过程就是认识客观世界的过程,其目的就是建立对客观世界的精确、简洁、可理解的正确模型,也就是所谓的建模。因此本题答案为D。
17.A[解析]原型不同于最终系统,它只实现所选择的部分功能,仅是为了试验或是演示而用,部分功能需求可以忽略或者模拟实现,因此适用于需求不确定性高的系统。
18.A[解析]原型化方法的基本思想是根据用户给出的基本需求,通过快速实现构造出一个小型的、可执行的模型,用户在计算机上实际运行这个用户界面原型,在试用过程中提出意见或建议,然后开发者再对原型进行改进。如此周而复始,逐步弥补不足之处,从而提高了最终产品的质量。它是一种自外向内的设计过程 19.D[解析]软件测试是为了尽可能多的发现程序中的错误,尤其是发现至今尚未发现的错误。在选取测试用例时,不可能进行穷举测试,在每一个细节进行测试,也不能无目的地随机选取测试数据,为了提高测试的效率,测试用例应该选择发现错误可能性大的部分,这样的测试结果才符合软件测试的目的。
20.A[解析]白盒测试是把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,由于白盒测试是一种结构测试,所以被测对象基本上是源程序,以程序的内部逻辑和指定的覆盖标准确定测试数据。二,填空题(本大题共10小题,每小题2分,共20分)
21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的()情况。
22.成本效益分析的目的是从()角度评价开发一个项目是否可行。
23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和()。
24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条()的边的路径。
25.汇编语言是面向()的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。
26.在JSP方法中解决结构冲突的具体办法是()。
27.详细设计的任务是确定每个模块的内部特性,即模块的算法、()。
28.所有软件维护申请报告要按规定方式提出,该报告也称()报告。
29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向维护的技术;在维护阶段用来提高维护的效率和质量的()技术。
30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选择的语言有:()、PASCAL语言、C语言和PL/1语言。
21.解:信息流动[解析]系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况。
22.解:经济[解析]成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行。
23.解:宽度优先策略[解析]渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块。它从主控模块开始,按照软件的控制层次结构,以深度优先或宽度优先的策略,逐步把各个模块集成在一起。
24.解:在其他独立路径中未有过[解析]在基本路径测试中,以详细设计或源程序为基础,导出控制流程图的拓扑结构——程序图,在计算了程序图的环路复杂性之后,确定只包含独立路径的基本路径图,其中独立路径是包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。
25.解:机器[解析]汇编语言属于低级语言,是一种面向机器的语言,它与高级语言相比有许多优越性:如操作灵活,可以直接作用到硬件的最下层,完成与外部设备的接口工作等,是能够利用计算机硬件特性直接控制硬件设备的唯一语言。
26.解:中间数据结构或中间文件[解析]JSP方法是面向数据结构的设计方法。它定义了一组以数据结构为指导的映射过程,根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,在JSP方法中解决结构冲突的具体办法是引入中间数据结构或中间文件,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。
27.解:使用的数据[解析]详细设计的基本任务是为每个模块进行详细的算法设计,为模块内的数据结构进行设计,确定每个模块的内部特性,包括模块的算法和使用的数据。对数据库进行物理设计等。
28.解:软件问题[解析]在软件维护的流程中,第一步就是制定维护申请报告,也称为软件问题报告,它是维护阶段的一种文档,由申请维护的用户填写。29.解:维护支援[解析]面向维护的技术涉及软件开发的所有阶段,能够减少软件错误,提高软件的可维护性。而维护支援技术则包含信息收集,错误原因分析,维护方案评价等项,是在软件维护阶段用来提高维护效率和质量的技术。30.解:FORTRAN语言[解析]计算机语言根据不同行业的需求,使用的侧重点也不尽相同,在办公管理方面,一些数据库语言如FOXPRO、ORICAL有很多的应用,在工程行业,计算机语言的科学计算能力就显得格外重要,如MATLAB、PL/
1、FORTRAN语言都是工程计算中常用的语言。
三,名词解释(本大题共5小题,每小题3分,共15分)
31.经济可行性
解:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。[解析]对于一个系统所必须要衡量的是经济上是否合算,经济可行性的范围很广,包括效益分析、潜在市场前景等。
32.社会可行性
解:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。[解析]社会可行性包括合同、责任、侵权等技术人员不甚了解的诸多问题。
33.投资回收期
解:投资回收期就是使累计的经济效益等于最初的投资费用所需的时间。[解析]通常我们用投资回收期来衡量一个开发项目的价值,投资回收期越短,就越快获得利润。
34.对应关系 解:即有直接因果关系在程序中可以同时处理。[解析]对应关系是指数据单元在数据内容上、数量上和顺序上有直接的因果关系,对于重复的数据单元,重复的次序和次数都相同才有对应关系。
35.结构冲突 解:输入数据与输出数据结构找不到对应关系的情况,称为结构冲突。[解析]使用JSP方法时会遇到此类结构冲突问题,对此,Jackson提出了引入中间数据结构或中间文件的办法,将冲突部分分隔开来,建立多个程序结构,再利用中间文件把它们联系起来,构成一个系统的整体。四,简答题(本大题共4小题,每小题5分,共20分)
36.可行性研究报告的主要内容有哪些?
解:一个可行性研究报告的主要内容如下:(1)引言:说明编写本文档的目的;项目的名称、背景;本文档用到的专门术语和参考资料。
(2)可行性研究前提:可行性研究前提。说明开发项目的功能、性能和基本要求;达到的目标;各种限制条件;可行性研究方法和决定可行性的主要因素。(3)对现有系统的分析:说明现有系统的处理流程和数据流程;工作负荷;各项费用支出;所需要各类专业技术人员的数量;所需要各种设备;现有系统存在什么问题。(4)所建议系统的技术可行性分析:所建议系统的简要说明;处理流程和数据流程;与现有的系统比较的优越性;采用所建议系统对用户的影响;对各种设备、现有软件、开发环境、运行环境的影响;对经费支出的影响;对技术可行性的评价。
(5)所建议系统的经济可行性分析:说明所建议系统的各种支出,各种效益;收益投资比;投资回收周期。
(6)社会因素可行性分析:说明法律因素,对合同责任、侵犯专利权、侵犯版权等问题的分析;说明用户使用可行性,是否满足用户行政管理、工作制度、人员素质的要求。
(7)其他可供选择方案:逐一说明其他可供选择的方案,并说明未被推荐的理由。
(8)结论意见:说明项目是否能开发;还需要什么条件才能开发;对项目目标有什么变动等。
[解析]做软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发,其中的问题能否解决,报告共分为八个基本内容。
37.系统设计的内容是什么?
解:系统设计阶段先从高层入手,然后细化。系统设计要决定整个结构及风格,这种结构为后面设计阶段的更详细策略的设计提供了基础。
(1)系统分解。系统中主要的组成部分称为子系统,子系统既不是一个对象也不是一个功能,而是类、关联、操作、时间和约束的集合。每次分解的各子系统数目不能太多,最底层子系统称为模块。
(2)确定并发性。分析模型、现实世界及硬件中不少对象均是并发的。系统设计的一个重要目标就是确定哪些是必须同时动作的对象,哪些不是同时动作的对象。后者可以放在一起,而综合成单个控制线或任务。
(3)处理器及任务分配。各并发子系统必须分配给单个硬件单元,要么是一个一般的处理器,要么是一个具体的功能单元,必须完成下面的工作:估计性能要求和资源需求,选择实现子系统的硬软件,将软件子系统分配给各处理器以满足性能要求和极小化处理器之间的通信,决定实现各子系统的各物理单元的连接。(4)数据存储管理。系统中的内部数据和外部数据的存储管理是一项重要的任务。通常各数据存储可以将数据结构、文件、数据库组合在一起,不同数据存储要在费用、访问时间、容量以及可靠性之间做折中考虑。
(5)全局资源的处理。必须确定全局资源,并且制定访问全局资源的策略。全局资源包括:物理资源,如处理器、驱动器等;空间,如盘空间、工作站屏等;逻辑名字,如对象标识符、类名、文件名等。
如果资源是物理对象,则可以通过建立协议实现对并发系统的访问,以达到自身控制;如果资源是逻辑实体,如对象标识符,那么在共享环境中有冲突访问的可能,如独立的事务可能同时使用同一个对象标识符,则各个全局资源都必须有一个保护对象,由保护对象来控制对该资源的访问。
(6)选择软件控制机制。分析模型中所有交互行为都表示为对象之间的事件。系统设计必须从多种方法中选择某种方法来实现软件的控制。(7)人机交互接口设计。设计中的大部分工作都与稳定的状态行为有关,但必须考虑用户使用系统的交互接口。
[解析]系统设计是问题求解及建立解答的高级策略。必须制定解决问题的基本方法,系统的高层结构形式包括子系统的分解、它的固有并发性、子系统分配给硬软件、数据存储管理、资源协调、软件控制实现、人机交互接口。
38.什么是软件危机?软件危机的表现是什么?其产生的原因是什么?
解:软件发展第二阶段的末期,由于计算机硬件技术的进步,计算机运行速度、容量、可靠性有显著的提高,生产成本显著下降,这为计算机的广泛应用创造了条件。一些复杂的、大型的软件开发项目提出来了,但是,软件开发技术的进步一直未能满足发展的需要。在软件开发中遇到的问题找不到解决办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。
软件危机表现在以下四个方面:
(1)经费预算经常突破,完成时间一再拖延。由于缺乏软件开发的经验和软件开发数据的积累,使得开发工作的计划很难制定。主观盲目制定计划,执行起来与实际情况有很大差距,使得开发经费一再突破。由于对工作量估计不足,对开发难度估计不足,进度计划无法按时完成,开发时间一再拖延。(2)开发的软件不能满足用户要求。开发初期对用户的要求了解不够明确,未能得到明确的表达。开发工作开始后,软件人员和用户又未能及时交换意见,使得一些问题不能及时解决,导致开发的软件不能满足用户的要求,因而导致开发失败。(3)开发的软件可维护性差。开发过程中没有同意的、公认的规范,软件开发人员按各自的风格工作,各行其是,开发过程无完整、规范的文档,发现问题后进行杂乱无章的修改。程序结构不好,运行时发现错误也很难修改,导致维护性差。(4)开发的软件可靠性差。由于在开发过程中,没有确保软件质量的体系和措施,在软件测试时,又没有严格的、充分的、完全的测试,提交给用户的软件质量差,在运行中暴露出大量的问题。
造成软件危机的原因是:(1)软件的规模越来越大,结构越来越复杂。(2)软件开发管理困难而复杂。(3)软件开发费用不断增加。(4)软件开发技术落后。(5)生产方式落后。(6)开发工具落后,生产率提高缓慢。
[解析]由于软件危机的出现,人们才开始用工程化的思想来开发软件,从此,软件生产才步入了软件工程时代。
39.软件质量保证应做好哪几方面的工作?
解:软件质量保证是软件工程管理的重要内容,软件质量保证应做好以下几方面的工作:
(1)采用技术手段和工具。质量保证活动要贯彻开发过程始终,必须采用技术手段和工具,尤其是使用软件开发环境来进行软件开发。(2)组织正式技术评审。在软件开发的每一个阶段结束时,都要组织正式的技术评审。国家标准要求单位必须采用审查、文档评审、设计评审、审计和测试等具体手段来保证质量。(3)加强软件测试。软件测试是质量保证的重要手段,因为测试可发现软件中大多数潜在错误。(4)推行软件工程规范(标准)。用户可以自己制定软件工程规范(标准),但标准一旦确认就应贯彻执行。(5)对软件的变更进行控制。软件的修改和变更常常会引起潜伏的错误,因此必须严格控制软件的修改和变更。(6)对软件质量进行度量。即对软件质量进行跟踪,及时记录和报告软件质量情况。
[解析]软件的质量保证是向用户及社会提供满意的高质量的产品,确保软件产品从诞生到消亡为止的所有阶段的质量的活动,是软件工程管理中的重要内容。五,论述题(本大题共3小题,第40小题7分,第41小题8分,第42小题10分,共25分)
40.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。
解:PDL语言:
N=1
WHILE N<=10 DO
IF A(N)<=A(N+1)MAX =A(N+1);
ELSE MAX =A(N)ENDIF;
N=N+1;
ENDWHILE;
PAD图:
[解析]人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。41.根据下列条件使用等价类划分法设计测试用例。
某一8位微机,其八进制常数定义为:以零开头的数是八进制整数,其值的范围是-177~177,如05,0127,-065
解:(1)划分等价类并编号,如下表示:(4分)
(2)为合理等价类设计测试用例,表中有两个合理等价类,设计两个例子(2分)
(3)为不合理等价类测试用例,至少设计一个测试用例(2分)
[解析]等价类划分属于黑盒测试的一种,它将输入数据域按有效的或无效的划分成若干个等价类,测试每个等价类的代表值就等于对该类其他值的测试,这样用少量有代表性的例子代替大量测试目的相同的例子,可以有效提高测试效率。本题划分了3个合理等价类,9个不合理等价类进行测试,取到了预期的效果。
42.某电器集团公司下属的厂包括技术科、生产科等基层单位。现在想建立一个计算机辅助企业管理系统,其中:
生产科的任务是:
(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。
(2)根据车间实际生产日报表、周报表调整月生产计划
(3)以月生产计划为以及,制定产品设计(结构、工艺)及产品组装月计划。
(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间
技术科的任务是:
(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。
(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。试写出以上系统中生产科和技术科处理的软件结构图。
解:
画出生产科图的给6分,画出技术科的给4分。
[解析]软件结构图是软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制层次体系,软件结构往往用树状或网状结构的图形来表示,其主要内容有模块及模块的控制关系,根据题意,可绘制出生产科和技术科的软件结构图,其中生产科的结构图深度和宽度均为4,技术科的结构图的深度和宽度均为3。
第五篇:软件工程期末考试总结
一、1、1968年“软件工程”诞生。
2、软件定义:软件是程序、数据 相关文档的完整结合。其中,程序是能够完成预订功能和性能的可执行的指令序列;数据是使程序能够适当的处理信息的数据结构;文档是开发、使用和维护程序所需要的图文资料。
3、为了解决软件危机,技术措施(方法和工具),组织管理措施
4、软件工程:软件工程是(1)把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(2)研究(1)中提到的途径。
5、软件工程是从管理和技术两方面
6、软件工程的本质特性:(1)软件工程关注于大型程序的构造;(2)专拣工程的中心课题是控制复杂性;
(3)软件经常变化;(4)开发软件的效率非常重要;(5)和谐的合作是开发软件的关键;(6)软件必须有效的支持它的用户;(7)在软件工程领域中通常由具有一种文化背景的人替具有另外一种文化背景的人创造产品。
7、软件工程的7条基本原理:(1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严格的产品控制;(4)采用现代程序设计技术;(5)结果应能清楚的审查;(6)开发小组的人员应该少而精;(7)承认不断改进软件工程实践的必要性。
8、软件工程包括(技术和管理)两方面内容,是技术与管理紧密结合所形成的工程学科。
9、软件工程方法学包括三个要素:方法、工具和过程。
10、CASE计算机辅助软件工程
11、软件的生命周期由 软件定义、软件开发和运行维护(软件维护)3个时期组成。
12、软件生命周期每个阶段的基本任务:(1)问题定义:必须回答的关键问题是:“要解决的问题是什么?”性质规模总目标;(2)可行性研究:要回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?”可解?值得解?(3)需求分析:这个阶段的任务不是具体的解决问题,而是准确的确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能需求规格说明书(4)总体设计:这个阶段必须回答的关键问题是:“概括地说,应该怎样实现目标系统?”(总体设计又称概要设计)软件结构图(5)详细设计:把解法具体化,也就是回答下面这个关键问题:“应该怎样具体的实现这个系统呢?”算法、数据结构(6)编码和单元测试:关键任务是写出正确的容易理解、容易维护的程序模块(7)综合测试:关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求(最基本的测试是集成测试和验收测试)。
13、软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,他规定了完成各项任务的工作步骤。用生命周期模型描述它。
15、过程模型:生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也成为过程模型。
16、瀑布模型是唯一被广泛采用的且现在仍是应用最广泛的过程模型。
17、增量模型:也称渐增模型,适用于能在较短时间内向用户提交可完成部分工作的产品。
18、螺旋模型:适用于内部开发的大规模软件项目。
二
1、可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能解决。
2、研究每种解法的可行性从三个方面:(1)技术可行性(2)经济可行性(3)操作可行性
3、系统流程图是概括的描绘 物理系统 的传统工具。
数据流图是系统逻辑功能的图形表示。
4、数据字典的作用:在软件分析和设计过程中给人提供关于数据的描述信息。
5、系统的逻辑模型由(数据流图和数据字典)共同构成,没有数据字典,数据流图就不严格,没有数据流图,数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。
5、数据字典由4类元素的定义组成:数据流、数据流分量、数据存储、处理,但是对数据处理的定义用
其他工具(IPO图或PDL)描述更方便。
三
1、需求分析:把用户关于软件的期望和想法,转变成软件开发人员需要的关于该软件的规格说明。
2、需求分析过程应该建立的3种模型:数据模型、功能模型和行为模型
3、实体-联系图是用于建立数据模型的图形,数据流图是建立功能模型的基础,状态转换图是行为建模的基础。
4、实体-联系图符号:矩形框代表实体,用连接实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,用直线把实体(或关系)与其属性连接起来。
5、状态转换图:初态、终态和中间态。
6、在一张状态图中只能有一个初态,终态有0至多个。初态用实心圆,终态用一对同心圆(内为实心圆),中间态用圆角矩形。
8、IPO图是输入、处理、输出图的简称,它是由美国IBM公司发展完善起来的一种图形工具,能够方便的描绘输入数据、对数据的处理和输出数据之间的关系。
9、从以下4个方面验证软件需求的正确性:(1)一致性 所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾(2)完整性 需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能(3)现实性 指定的需求应该是用现有的硬件技术和软件技术基本上可以实现的(4)有效性 必须证明需求是正确有效的,确实能解决用户面对的问题
五
10、总体设计阶段主要内容:设计软件结构和设计数据库
11、耦合:耦合是对一个软件结构内不同模块之间互连程度的度量。
12、耦合设计原则:尽量少使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合13、内聚:内聚标志着一个模块内各个元素彼此结合的紧密程度。功能内聚10偶然内聚014、“高内聚,低耦合”
15、启发规则:(1)改进软件结构提高模块独立性(2)模块规模应该适中(3)深度、宽度、扇出和扇入都应适当【深度:表示软件结构中控制的层数,它往往能粗略的标志一个系统的大小和复杂程度;宽度:是软件结构内同一个层次上的模块总数的最大值;扇出:是一个模块直接控制的模块数目;扇入:表明有多少个上级模块直接调用它】(4)模块的作用域应该在控制域之内【模块的作用域:受该模块内一个判定影响的所有模块的集合。模块的控制域:是这个模块本身以及所有直接或间接从属于它的模块集合。】(5)力争降低模块接口的复杂程度(6)设计单入口单出口的模块(7)模块功能应该可以预测。
16、描绘软件结构的图形工具:层次图和结构图。
17、层次图用来描绘软件的层次结构(作为描绘软件结构的文档)。
18、信息流的两种类型:变换流和事务流
19、变换流:信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经过加工处理以后再沿输出通路变换成外部形式离开软件系统。当系统具有这些特征时,这种信息流就叫做变换流。
20、事务流:数据沿输入通路到达一个处理T,这个处理根据输入数据的类型在若干个动作序列中选出一个来执行,这类数据成为事务流,处理T叫做事务中心。
六、详细设计
21、结构程序设计的经典定义:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。
七、实现
1、高级语言写程序比用汇编语言写程序生产率可以提高好几倍,而且高级语言写的程序容易阅读,容易
测试,容易调试,容易维护。所以高级语言明显优于汇编语言。
2、实现:编码和测试统称为实现。
3、编码:就是把软件设计结果翻译成用某种程序设计语言书写的程序
4、软件测试:是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。
5、测试的目的:在软件投入生产性运行之前,尽可能多的发现软件中的错误(发现软件中的错误)。
6、调试是在测试发现错误之后排除错误的过程。
7、软件测试的目标或定义:(1)测试是为了发现程序中的错误而执行程序的过程。(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案(3)成功的测试是发现了至今为止尚未发现的错误的测试。
8、测试的目的是暴露程序中的错误由程序的编写者自己进行测试是不恰当的,测试阶段通常由其他人员组成测试小组来完成测试工作。
9、逻辑覆盖:是对一系列测试过程的总称这组测试过程逐渐进行越来越完整的通路测试。
10、语句覆盖:选择足够多的测试数据,使被测程序中每个语句至少执行一次(语句覆盖是很弱的逻辑覆盖)。
11、判定覆盖(分支覆盖):不仅每个语句必须至少执行一次,而且每个判定的没种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。(比语句覆盖强)
12、条件覆盖:不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取到各种可能的结果(比判定覆盖强)。
13、判定/条件覆盖:选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果(有时不必条件判定强)。
14、条件组合覆盖:是更强的逻辑覆盖,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。
15、点覆盖:如果连通图G的子图G’是连通的,而且包含G的所有节点,则称G’是G 的点覆盖。(要求:选取足够多的测试数据,使得程序执行路径至少经过流图的每个节点一次(与语句覆盖标准相同)。)
16、边覆盖:如果连通图G的子图G”是连通的,而且包含G的所有边,则称G”是G 的点覆盖(要求:选取足够多的测试数据,使得程序执行路径至少经过流图中每条边一次(与判定覆盖相同)。)。
17、路径覆盖:选取足够多的测试数据,使程序的每条可能路径都至少执行一次。
18、控制结构测试包括:基本路径测试、条件测试、循环测试。
19、黑盒测试力图发现下述类型的错误:(1)功能不正确或遗漏了功能(2)界面错误(3)数据结构错误或外部数据库访问错误(4)性能错误(5)初始化和终止错误
20、黑盒测试外部,白盒测试内部。
八、维护
软件维护就是在软件已经交付使用后,为了改正错误或满足新的需要而修改软件的过程。
把诊断和改正错误的过程称为改正性维护。
适应性维护:为了和变化了的环境适当的配合而进行的修改软件的活动,是即必要有经常的维护活动。完善性维护、预防性维护。