软件工程试题与答案(14)

发布时间:2013-12-28 10:46:46

《软件工程模拟试题及参考答案》(一)

一、单向选择题(四选一、每小题3分,共18分)

1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式( B )到计算机世界的方法。

a对应 b 映射 c 反映 d 反射

2、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。0802

流程图 框图 判定表 N-S

3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。1001

程序 数据 逻辑 物理

4、人机界面的风格大致经过了(B)代的演变。

5、以下不属于白盒测试技术的是(D1402

逻辑覆盖 基本路径测试 循环覆盖测试 等价类划分

6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。1501

纠错性维护 适应性维护 改善性维护 预防性维护

二、填空题(每空2分,共18分)

1. 文档一种数据媒体和其上所记录的(数据)。0101

2. 机器语言、汇编语言:依赖于机器,面向(机器)0101

3. 软件有效性,指软件系统的时间和(空间)效率。0103

4. 软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。0103

5. 软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。0103

6. 为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。0402

7. 一个软件的深度是指其控制的(层数)。0801

8. 以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的代码的过程叫(编码)过程。1301

9. 软件维护是软件生命周期的(最后)一个阶段。1501

三、判断题(每小题2分,共24分,错误打X、正确打√)

1. 缺乏有力的方法学的指导和有效的开发工具的支持, 这往往是产生软件危机的原因之一。(√)0102

2. 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(X0206

3. 在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。(√)0402

4. 快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合。(√)0402

5. 流程图也称为程序框图是最常用的一种表示法。(√)0802

6. 面向数据设计方法一般都包括下列任务: 确定数据结构特征;用顺序、选择和重复三种基本形式表示数据等步骤。(√)1001

7. 理想的人机界面应针对具有典型个性的特定的一类用户设计。(√)1201

8. 数据输入的一般准则中包括尽量增加用户输入的动作。(X1204

9. 用穷举测试是较现实的测试方法。(X1401

四、简答题(每小题4分,共20分)

1、计算机软件——与计算机系统操作有关的程序、规程、 规则及任何与之有关的文档和数据。0101

2、需求分析的任务是什么?0103

需求分析的任务是确定待开发的软件系统“做什么”。具体任务包括确定软件系统的功能需求、性能需求和运行环境约束,编制软件需求规格说明书、软件系统的验收测试准则和初步的用户手册。

3、软件项目的成本管理——估算软件项目的成本,作为立项和签合同的依据之一,并在软件开发过程中按计划管理经费的使用。0201

4、快速原型技术的基本思想是什么?0402

在软件开发的早期,快速开发一个目标软件系统的原型,让用户对其进行评价并提出修改意见,然后开发人员根据用户的意见对原型进行改进。

5、程序设计语言的有哪些特点?1301

1)一致性2)二义性3)紧致性4)局部性

五、综合题(每小题10分,共20分)

1、可将软件生存周期划分为哪3个过程和哪9个阶段。0103

13个过程是:软件定义过程、软件开发过程、软件使用与维护过程。

29个阶段有:可行性研究、需求分析、概要设计、详细设计、实现、组装测试、验收测试、使用与维护、退役。

2、画出与图1所示的程序流程图对应的程序图,并试计算其巡回秩数V(G)

解:(1)程序图如(图2)所示:

2)计算其巡回秩数:VG=E –N +2=13 –10 +2=5

(图一) (图二)

《软件工程模拟试题及参考答案》(二)

一、单向选择题(四选一、每小题3分,共18分)

1、软件的发展经历了(D)个发展阶段。0102

2、需求分析的任务不包括(B)。

问题分析 系统设计 需求描述 需求评审。

3、一个软件的宽度是指其控制的(C)。0801

模块数 层数 跨度 厚度

4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。

判定表和判定树 盒图 流程图 关系图

5、以下不属于逻辑覆盖的是(D)。

语句覆盖 判定覆盖 条件覆盖 基本路径

6、为适应软件运行环境的变化而修改软件的活动称为(B)。1501

纠错性维护 适应性维护 改善性维护 预防性维护

二、填空题(每空2分,共18分)

1. 软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。0101

2. 高级语言:独立于机器,面向过程或面向(对象)0101

3. 软件项目管理的范围主要集中于3P上,即:People人员、Problem问题和(过程)。0201

4. 人机界面的风格第一代界面是命令和(询问)方式。1202

5. 由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。1504

6. 在公式VG= E – N + 2中:E为程序图G中边的总数; N 为程序图中结点的总数。VG)又称为图G的环形(复杂度)0204

7. 任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。0303

8. 为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问你确实要删除1204

9. 文档是一种数据媒体和其上所记录的(数据)。0101

三、判断题(每小题2分,共24分,错误打X、正确打√)

1. 用户对软件需求的描述不精确,往往是产生软件危机的原因之一。(√)0102

2. 目前,软件项目的进度安排的两种比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。(√)0206

3. 一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。(√)0206

4. 目前的绝大多数软件都不适合于快速原型技术。(X0402

5. 面向数据的设计方法的适用场合是具有明显的层次信息结构的应用如:企事业的信息管理系统;系统软件(如操作系统)等。(√)10001

6. 缺乏处理大型软件项目的经验。是产生软件危机的唯一原因。(X0102

7. 通常紧致性好的语言一致性就好。(X1301

8. 测试计划、测试用例、出错统计和有关的分析报告一般不用长期保存。(X1401

9. 数据输入的一般准则中包括保证信息显示方式与数据输入方式的协调一致;允许用户定做输入格式等内容。(√)1204

10. 软件也会磨损和老化。(X0101

11. 完善性维护是提高或完善软件的性能。(√)0101

12. McCabe建议模块规模应满足:VG)≤20。(X0204

四、简答题(每小题4分,共20分)0

1、程序设计语言的三种类型和特点是什么?0101

1.机器语言、汇编语言:依赖于机器,面向机器

2.高级语言:独立于机器,面向过程或面向对象

3.面向问题语言:独立于机器,非过程式语言(4GL 2分)

2、软件危机——是指在计算机软件开发、使用与维护过程中遇到的一系列严重问题和难题。

3、软件项目的质量管理——制定软件质量保证计划,按照质量评价体系控制软件质量要素,对阶段性的软件产品进行评审,对最终软件产品进行确认,确保软件质量。0201

4、好的编程风格应遵循哪四条规则?1304

1)节简化2)模块化3)简单化4)文档化

5、软件测试中按照错误的性质和范围进行分类可分为:“功能错误”及其它哪些错误?

1.系统错误 2.加工错误(算法错误)3.数据错误 4.代码错误

五、综合题(每小题10分,共20分)

1、选择语言时要考虑的因素有:项目的应用领域、项目中算法、计算的复杂性和其余哪些内容? 答:1)项目中数据结构的复杂性2)用户的性能需求3)软件运行的环境

4)软件开发人员开发水平5)可用的编译器和交叉编译器

2、已知一个软件项目的记录,开发人员M=3人,其代码行数=12.1KLOC,工作量E=24PM,成本S=168000美元,错误数N=29,文档页数Pd=365页。试计算开发该软件项目的生产率P、平均成本C、代码出错率EQR和文档率D0201

解: 1.软件开发的生产率P为:

P = L / E = 12.1×103LOC / 24PM = 504 LOC/PM

2.开发每行代码的平均成本C为:

C = S / L = 168000美元 / 12100LOC=13.9美元/LOC

3.代码出错率EQR为:

EQR = N / L = 29/12.1KLOC=2.4/KLOC

4.软件的文档率D为:

D = Pd / L = 365 / 12.1KLOC = 30/ KLOC

《软件工程模拟试题及参考答案》(三)

单向选择题(四选一、每小题3分,共18分)

1、从事物的组成部件及每个部件的属性、功能来认识事物。这种方法被称为(A)的方法。0701

A、面向对象B、面向数据C、面向过程D、面向属性

2、判定表由四部分组成:左上部列出(B)。0802

条件组合与动作之间的对应关系 所有条件 所有可能的动作 可能的条件组合

3、根据用户在软件使用过程中提出的建设性意见而进行的维护活动称为(C)。1501

纠错性维护 适应性维护 改善性维护 预防性维护

4、可行性研究的步骤中不包括(C)的内容。0302

复查初步分析结果。 研究现有的系统。 导出新系统高层逻辑模型。 建立新系统的物理模型解法。

5、将软件组装成系统的一种测试技术叫(A)。1403

集成测试 单元测试 集合测试 系统测试

6、技术可行性是可行性研究的关键,其主要内容一般不包括(C)。0302

A. 风险分析 资源分析 人员分析 技术分析

2、填空题(每空2分,共18分)

1、面向问题语言:是独立于(机器),非过程式语言4GL0101

2、软件有效性,指软件系统的(时间)和空间效率。0103

3、软件项目管理的对象主要包括产品、过程和(资源)等。0201

4、计算机系统工程是用工程、科学和(数学)的原则与方法研制基于计算机的系统的有关技术、方法和过程。0301

5、在Jackson方法中,实体结构是指实体在时间坐标系中的行为序列。这种序列以顺序、选择和(重复)三种结构进行复合。0602

6、一个模块的扇出数是指该模块直接控制的其他(模块数)。0801

7、第二代界面是简单的(菜单)式。1202

8、软件可适应性,是指软件在不同的(系统约束)条件下,使用户需求得到满足的难易程度。0302

9、如果一个模块控制另一个模块,称前者为主控模块,后者为(从属)模块。0801

三、判断题(每小题2分,共24分,错误打X、正确打√)

1. 可行性研究工作要在初步的需求定义之前进行。(X0302

2. 软件开发、设计几乎都是从头开始,成本和进度很难估计。()0101

3. 文档(document一种数据媒体和其上所记录的数据。(√)0101

4. 软件工程使用的软件工具能够自动或半自动地支持软件的开发、管理和文档的生成。(√)0102

5. 为了充分发挥开发人员的潜力、缩短工期,软件工程项目的任务分解与安排应尽力挖掘可并行开发的部分。(√)0206

6. 需求分析阶段的成果主要是需求规格说明,但该成果与软件设计、编码、测试直至维护关系不大。(X0401

7. 类是对具有共同特征的对象的进一步抽象。(√)0701

8. 面对日益增长的软件需求,人们显得力不从心。往往是产生软件危机的原因之一。(√)0202

9. 数据输入的一般准则中包括采用灵活多样的交互方式,允许用户自选输入方式;允许用户控制交互过程。(√)1204

10. 如果在分析阶段和设计阶段采用的是面向对象的方法,而在编码阶段采用的是面向过程的语言,那么这种翻译就比较困难。(√)1301

11. 软件测试是对软件规格说明、软件设计和编码的最全面也是最后的审查。(√)1401

12. 如果测试过程没有发现任何错误,则说明软件没有错误。(X)1401

四、简答题(每小题4分,共20分)

1、螺旋模型的适应场合有哪些?0104

适应场合:支持需求不明确、特别是大型软件系统的开发,并支持面向规格说明、面向过程、面向对象等多种软件开发方法,是一种具有广阔前景的模型。

2、软件生存周期

软件从定义开始,经过开发、使用和维护,直到最终退役的全过程称为软件生存周期。

3、软件开发风险分析实际上就是贯穿于软件工程过程中的一系列风险管理步骤,它包括哪些主要内容?

风险标识 风险估算 风险评价 风险驾驭和监控。

4、需求评审评审标准(按照重要性的次序)包括正确性、无歧义性、完全性、可验证性和其它那些内容?。

1)一致性。2)可理解性。3)可修改性。4)可追踪性。

5、什么是静态测试

静态测试是采用人工检测和计算机辅助静态分析的方法对程序进行检测。1401

五、综合题(每小题10分,共20分)

1、为以下程序流程图分别设计语句覆盖和判定覆盖测试用例并标明程序执行路径。1402

解:1)语句覆盖测试用例

x=2y=0z=4作为测试数据,程序执行路径为abcde

2)判定覆盖——分支覆盖

可以设计如下两组数据以满足判定覆盖:

x=3y=0z=1(通过路径abce);

x=2y=1z=2(通过路径acde)。

x=2y=1z=1;覆盖路径acde

x=1y=1z=1;覆盖路径ace

x=3y=0z=1;覆盖路径abce

2、分别画出顺序结构、选择结构、while结构、until结构的程序图,并计算它们的V(G)值。0202

解:

《软件工程模拟试题及参考答案》(四)

一、单向选择题(四选一、每小题2分,共18分)

1、软件工程中的各种方法是完成软件工程项目的技术手段,它们支持软件工程的(A)阶段。0102

各个 前期 中期 后期

2、从事物的属性侧面来描述事物的方法就是(B)的方法。0701

面向对象 面向数据 面向过程 面向属性

3、一个模块的(B)是指能直接控制该模块的模块数。0801

扇出数 扇入数 宽度 深度

4Jackson方法在需求分析阶段的主要步骤不包括(A)。

了解实体行为 标识实体与行为 生成实体结构图 创建软件系统模型

5、实践表明,确定发生错误的位置和内在原因所需的工作量几乎占整个调试工作量的(D%1404

30 50 70 90

6、为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为(D)。1501

纠错性维护 适应性维护 改善性维护 预防性维护

二、填空题(每空2分,共18分)

1. 软件工程由方法、工具和过程三部分组成,称为(软件工程)的三要素。0102

2. 软件可修改性,是指允许对软件系统进行修改而不增加其(复杂)性。0103

3. 一般来说,产品、过程、资源等对象都具有内部属性和(外部)属性。0602

4. 软件开发风险分析实际上就是贯穿于软件工程过程中的一系列风险管理步骤,包括风险标识、(风险估算)、风险评价、风险驾驭和监控。0206

5. 使用类创建对象的过程实际上是类的(实例化)过程。0701

6. 第三代界面是面向(窗口)的点选界面。1202

7. 在编码阶段对代码的可测试性进行考虑可以(减少)测试阶段的工作量。1303

8. 测试用例的设计应有第(三)方参与。1302

9. 调试的目的是确定错误的位置和引起错误的原因,并加以(改正)。1404

三、判断题(每小题2分,共24分,错误打X、正确打√)

1. 一个好的开发人员应具备的素质和能力包括善于分析和综合问题,具有严密的逻辑思维能力。(√)

2. 计算机系统工程是一种从系统层面上的问题求解活动。(√)0301

3. 软件需求是指用户对目标软件系统在功能、性能、行为、设计约束等方面的期望。(√)0402

4. 数据流图就是用来刻画数据流和转换的信息系统建模技术。(√)0501

5. 软件过程设计不用遵循自上而下,逐步求精的原则和单入口单出口的结构化设计思想。(X0802

6. PDL经常表现为一种混杂的形式,他不允许自然语言如英语的词汇与某种结构化程序设计语言(如PascalCAda等)的语法结构交织在一起。(X0802

7. 设计阶段的输出是编码阶段的输入。(√)1301

8. 通过软件测试,可以发现软件中所有潜伏的错误。(X1404

9. 非结构化维护用于软件的配置中只有源代码维护。(√)1501

10. 系统规格说明是系统分析和定义阶段生成的一种文档。(√)0304

11. 数据流图的分解速度应保持较高。通常一个加工每次可分解为10~20个子加工。(X0501

12. 内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越低越好。(X0803

四、简答题(每小题4分,共20分)

1、原型法模型一般适应哪些场合?0104

它适合于那些不能预先确切定义需求的软件系统的开发,更适合于那些项目组成员(包括分析员、设计员、程序员和用户)不能很好交流或通信有困难的情况。

2、简答结构化程序设计的内容。 0801

是程序设计技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制构件。

3、用JSD方法开发一个软件的步骤包括:标识实体与动作、生成实体结构图和以下那些方面?1002

1)初建系统模型2)扩充功能性过程3)系统定时4)实现

4、动态测试

动态测试是指事先设计好一组测试用例,然后通过运行程序来发现错误。1402

5、逻辑覆盖——指设计测试用例对程序的内部分支逻辑结构进行部分或全部覆盖的技术。1402

五、综合题(每小题10分,共20分)

1、软件工程的目标是什么?0103

答:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性并满足用户需求的软件产品。

2、什么是判定/条件覆盖?为以下程序流程图设计判定/条件覆盖测试用例并标明程序执行路径。

解:1)判定/条件覆盖——它是指设计足够的测试用例,即满足条件覆盖又满足判定覆盖。

2)测试用例:x=2y=0z=3(覆盖x>1y=0x=2z>1,通过路径abcde);

x=1y=1z=1(覆盖x1y0x2z1,通过路径ace)。

《软件工程模拟试题及参考答案》(五)

一、单向选择题(四选一、每小题2分,共18分)

1、统计表明,软件测试工作往往占软件开发总工作量的(B%以上。

20 40 60 80

2、单元测试的测试对象是(B)。1403

系统 程序模块。 模块接口 系统功能

3、软件总体设计是指软件总体结构设计和数据设计,该阶段的主要任务不包括(D)。0801

设计软件的模块结构 定义接口并建立数据结构

生成概要设计规格说明和组装测试计划 模块设计

4、软件开发部分的任务是将系统对软件的需求转换成可操作的系统要素,即(A0101

软件 硬件 文本 说明

5、维护工作量的估算模型为:MP+Ke(c-d)其中:M代表(A)。1502

维护所用工作量 生产性工作量 助动性工作量 经验常数

6、维护的副作用可分三类,不包括(D)。1504

代码副作用 数据副作用 文档副作用 人员副作用

二、填空题(每空2分,共18分)

1. 软件工程由(方法)、工具和过程三部分组成,称软件工程的三要素。0103

2. 基于计算机系统的软件要素中的软部件由程序、数据和(文档)组成。0301

3. 数据流图就是用来刻画数据流和转换的信息系统建模技术。它用简单的图形记号分别表示数据流、转换、(数据源)以及外部实体。0501

4. 被继承的类我们称之为基类(父类),在基类的基础上新建立的类我们称之为派生类子类。0701

5. 流程图也称为程序框图是最常用的一种表示法,它有顺序、分支和(循环)三个基本控制构件。

6. 机器语言和汇编语言,也称为(低级)语言。1301

7. 软件测试是执行程序发现并排除程序中潜伏的(错误)的过程。1401

8. 动态测试有两种测试方法:黑盒测试和(白盒)测试。1401

9. 软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误、改进性能等属性、适应环境变化等方面工作的(难易)程度。0103

三、判断题(每小题2分,共24分,错误打X、正确打√)

1. 文档记录软件开发活动和阶段成果,具有永久性,可供人或机器阅读。(√)0101

2. 生产高质量的软件产品是软件工程的首要目标。(√)0203

3. 软件开发人员对用户需求的理解有偏差,这将导致软件产品与用户的需求不一致,是产生软件危机的唯一原因。(X0102

4. 开发一个软件项目总存在某些不确定性,即存在风险。有些风险如果控制得不好,可能导致灾难性的后果。(√)0206

5. 面向对象设计是将面向对象分析所创建的分析模型进一步细化形成软件设计模型的过程。(√)1101

6. 只有了解用户、了解任务,才能设计出好的用户界面。(√)1202

7. 结构化维护用于待维护的软件的配置是完整的维护。(√)1501

8. 用户本身的技能,个性上的差异,行为方式的不同,不会对人机界面使用造成影响。(X1201

9. 程序的可靠性、可维护性和效率通常由程序设计语言、源代码的质量、和语言的实现机制决定的。(√)1302

10. 程序文档一般指以注释的形式嵌入程序中的代码描述。(√)1303

11. 为提高可交互性一般应提高用户对话、移动和思考的效率,即最大可能地减少击键次数,缩短鼠标移动的距离,避免使用户产生无所适从的感觉。(√)1204

12. 一般单元测试不可以并行进行。(X)1403

四、简答题(每小题4分,共20分)

1、软件工程的原则有抽象、信息隐藏、模块化和其他那些内容?

局部化 一致性 完全性 可验证性

2、常用的软件项目的估算方法主要有哪4种?

1.自顶向下的估算方法2.自底向上的估算方法3.差别估算法4.根据经验估算公式

3、一个PDL的原型,它可以建立在任意一个通用的结构化程序设计语言之上。其基本成分包括:子程序定义、界面描述、数据说明和其它那些内容?0802

块结构 分支结构 循环结构 I/O结构

4、人机界面设计过程可分为创建系统功能的外部模型;确定为完成此系统功能人和计算机应分别完成的任务及另外哪4个步骤?1202

1)考虑界面设计中的典型问题2)借助CASE工具构造界面原型3)实现设计模型4)评估界面质量

5、软件测试过程一般可划分为哪几个主要阶段?

单元测试 集成测试 验收测试 系统测试

五、综合题(每小题10分,共20分)

1、请简述编码原则

1)编写易于修改和维护的代码2)编写易于测试的代码3)编写详细的程序文档

4)编程中采用统一的标准和约定,降低程序的复杂性5)分离功能独立的代码块形成新的模块

2、什么是条件覆盖?并为以下程序流程图设计条件覆盖测试用例并标明程序执行路径。

解:1)条件覆盖——条件覆盖是指设计足够的测试用例,使每个判定表达式中的每个条件的每种可能值都至少出现一次。

设计如下两组测试用例,可以满足条件覆盖的标准:

x=2y=0z=3(覆盖x>1y=0x=2z>1,通过路径abcde);

x=1y=1z=1(覆盖x1y0x2z1,通过路径ace)。

《软件工程》期末考试样题

一、填空题

1软件开发模型有 、第四代技术模型、 、构件组装模型、混合模型。

2可行性研究一般可以从 可行性、 可行性、运行可行性、法律可行性和开发可行性等方面来研究。

3现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为

4.数据流图的基本符号包括

5Jackson图除了可以表达程序结构外,还可以表达 ,它首先要分析 ,并用适当的工具来描述。

6.详细设计的工具有 、表格工具和

7IPO图由 、处理和 三个框组成。这个图的特点是能够直观的显示三者之间的关系。

8.面向对象技术是一整套关于如何看待 的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。面向对象方法是一种运用 、聚集、消息传送、多态性等概念来构造系统的软件开发方法。

二、单项选择题

1下列( )属于系统软件。

WINDOWS 2000 Word Flash 3D MAX

2下列哪个图是NS图的构件( )。

A B.

C. D.

3对于螺旋模型,下列( )不是利用笛卡尔坐标表达的活动。

A. 制定计划 B. 实施工程 C. 风险分析 D. 程序编码

三、多项选择题

1软件危机可以表现为( )。

产品不符合用户的需要 软件产品的质量差 软件的可维护性差 软件的价格昂贵

2Jackson图中一般可能包括( )。

A.表头B.表体C.表名D.字段名

3.关于内容耦合的描述正确的是( )。

A、内容耦合是最高程度的耦合 B、应该尽量使用内容耦合

C、高级语言一般设计成允许内容耦合的形式 D、如果一个模块有多个入口,可能发生内容耦合

4.下列属于不标准的书写格式( )。

A、书写时适当使用空格分隔B、一行写入多条语句

C、嵌套结构不使用分层缩进的写法D、程序中不加注释

四、判断题(正确的在括号内打上“√”,错误的打上“×”)

1.软件生存周期是从软件开始开发到开发结束的整个时期。(

2.系统流程图是一个典型的描述逻辑系统的传统工具。(

3.数据流图和数据字典共同构成系统的逻辑模型。(

4.扇出是一个模块直接调用的模块数目,一般推荐的扇出为34。(

5.耦合用于衡量一个模块内部的各个元素彼此结合的紧密程度。(

6.程序运行过程中出现错误叫做容错。

7.软件测试的目的是证明程序没有错误。

8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程。

五、问答题

1.什么是软件生存周期。

2在需求分析阶段,建立目标系统的逻辑模型的具体做法是什么

3.为什么数据流图要分层?

4.软件的质量反应为哪些方面的问题?

样题答案

一、填空题

1瀑布模型、螺旋模型、原型模型

2.经济、技术

3F/(1+i)n

4.数据输入的源点和数据输出的汇点 加工 数据流 数据存储文件

5数据结构、数据结构

6.图形工具 语言工具

7.输入 输出

8.软件系统 现实世界 对象 继承 封装

二、单项选择题

1A 2C 3D

三、多项选择题(每小题2分,共10分)

1ABCD 2ABCD 3AD 4BCD

四、判断题

1× 2× 3 4 5×

6× 7× 8× 9 10

五、问答题

1.答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程。

2.答:系统流程图是描述物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘系统里的每个部件(程序、文件、数据库、表格、人工过程等)。系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程。

3.答:这了表达数据处理过程的数据加工情况,用一个数据流图是不够的。为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系。

4.答:软件需求是度量软件质量的基础,不符合需求的软件就不具备质量。

在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件。

如果不遵守这些开发准则,软件质量就得不到保证。

往往会有一些隐含的需求没有明确地提出来。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。

软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。

软件工程试题与答案(14)

相关推荐