软件工程模试卷一_第1页
软件工程模试卷一_第2页
软件工程模试卷一_第3页
软件工程模试卷一_第4页
软件工程模试卷一_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、a3用用sa方法获得的需求说明书有方法获得的需求说明书有四个部分组成,用于描述系统中的每四个部分组成,用于描述系统中的每个数据,个数据,是在是在( ) a分层的分层的dfd b数据词典数据词典 c一组小说明一组小说明 d补充材料补充材料b4结构图结构图(sc)和框图是不同的,和框图是不同的,前者描述的是前者描述的是( ) a程序的过程特性程序的过程特性 b程序的层次特性程序的层次特性 c. 两者都在内两者都在内 d两者都不是两者都不是5对模块描述有四个方面内容,其中对模块描述有四个方面内容,其中( ) 部分是在详细设计后才得以补充进去。部分是在详细设计后才得以补充进去。a功能功能 b界面界面

2、c过程过程 d注释注释bd6适于软件检验的手段有多种,适于软件检验的手段有多种,通过人工来评审文档或程序,通过人工来评审文档或程序,借以发现其中错误,该手段是借以发现其中错误,该手段是( )a.黑盒法黑盒法 b正确性证明正确性证明 c动态检查动态检查 d静态检查静态检查7在软件维护工作中,如果对软件的修改在软件维护工作中,如果对软件的修改只限制在原需求说明书的范围之内,这种只限制在原需求说明书的范围之内,这种维护是属于维护是属于( ) a纠正性维护纠正性维护 b适应性维护适应性维护 c完善性维护完善性维护 d预防性维护预防性维护dc8. 把一组具有相似特性的对象组合在一起,把一组具有相似特性的

3、对象组合在一起,称之为称之为( ) a. 多态性多态性 b.继承性继承性 c.类类 d.消息消息 9. 提高程序可读性的有力手段是提高程序可读性的有力手段是( ) a使用三种标准控制结构使用三种标准控制结构 b采用有实际意义的变量名采用有实际意义的变量名c. 显式说明一切变量显式说明一切变量 d给程序加注释给程序加注释 cd8. 把一组具有相似特性的对象组合在一起,把一组具有相似特性的对象组合在一起,称之为称之为( ) a. 多态性多态性 b.继承性继承性 c.类类 d.消息消息 9. 提高程序可读性的有力手段是提高程序可读性的有力手段是( ) a使用三种标准控制结构使用三种标准控制结构 b采

4、用有实际意义的变量名采用有实际意义的变量名c. 显式说明一切变量显式说明一切变量 d给程序加注释给程序加注释 cd10. 模块间的联系有多种类,模块间的联系有多种类,具有好的可修改性和可理解性是具有好的可修改性和可理解性是( ) a数据型数据型 b. 内容型内容型 c公共型公共型 d控制型控制型a1瀑布模型将软件生命期划分为若干阶段,瀑布模型将软件生命期划分为若干阶段,各个阶段之间是通过各个阶段之间是通过 实现过渡的。实现过渡的。2一个大型软件系统的质量应该从可维护性、一个大型软件系统的质量应该从可维护性、可靠性、可理解性和可靠性、可理解性和 等多个方面来等多个方面来进行评价。进行评价。3sa

5、方法在精确性和可理解性之间,考虑了方法在精确性和可理解性之间,考虑了一个折衷的方案,它用结构化语言、判定表和一个折衷的方案,它用结构化语言、判定表和 这三种半形式化的方式编写小说明。这三种半形式化的方式编写小说明。文档文档 效率效率 判定树判定树 4sd方法认为,方法认为,个判定的作用范围个判定的作用范围应该是应该是_的子集。的子集。 控制范围控制范围5详细设计的描述方式有多种,其中遵循详细设计的描述方式有多种,其中遵循个个“走树走树”规则就能方便地编写出程序的规则就能方便地编写出程序的是是_ _ 。 pad(问题分析图)(问题分析图)6提高程序效率的根本途径在于提高程序效率的根本途径在于设计

6、阶段设计阶段_ _。 选择良好的数据结构和算法选择良好的数据结构和算法7黑盒法和白盒法都是用于设计黑盒法和白盒法都是用于设计_的方法。的方法。 测试用例测试用例8在软件维护工作过程中,在软件维护工作过程中,对任何一次维护请求,首先进行的对任何一次维护请求,首先进行的步骤是步骤是_ 。明确维护的类型明确维护的类型 9. 数据库设计过程引入一个中间步骤,数据库设计过程引入一个中间步骤,即先建立一个即先建立一个_ _。 概念数据模型(概念数据模型(er图)图) 10. 软件工程学的最终目标,软件工程学的最终目标,是以较低的成本研制具有是以较低的成本研制具有_的软件。的软件。 较高质量较高质量 1 1

7、何谓软件的何谓软件的“健壮性健壮性”?参考答案:参考答案:软件软件“健壮性健壮性”是反映软件质量的一个指标。是反映软件质量的一个指标。意为:即使前提条件不符合规格也能继续意为:即使前提条件不符合规格也能继续合理运行的程度。合理运行的程度。2 2简要说明简要说明“需求说明书需求说明书”的作用。的作用。参考答案:参考答案: 需求说明书主要有以下三个作用:需求说明书主要有以下三个作用: * * 作为用户和软件人员之间的合同,为双方作为用户和软件人员之间的合同,为双方相互了解提供基础。相互了解提供基础。 * * 反映出问题的结构,可以作为软件人员进反映出问题的结构,可以作为软件人员进行设计和编写的基础

8、。行设计和编写的基础。 * * 作为验收的依据,即作为选取测试用例和作为验收的依据,即作为选取测试用例和进行形式验证的依据。进行形式验证的依据。5 5集成测试有哪几种测试方式集成测试有哪几种测试方式? ?简要说明其中哪一种更优越,为什么简要说明其中哪一种更优越,为什么? ?参考答案:参考答案:测试方式有渐增式与非渐增式两种。渐增式测试方式有渐增式与非渐增式两种。渐增式比非渐增式优越,因为用渐增式,如果是比非渐增式优越,因为用渐增式,如果是“由顶向下由顶向下”则可利用前面已测试过的模块,则可利用前面已测试过的模块,而不必另外准备驱动模块,如果是而不必另外准备驱动模块,如果是“由底向上由底向上”,

9、也可利用已测式过的模块,不必再准备桩模块。也可利用已测式过的模块,不必再准备桩模块。渐增式可以较早地发现模块界面之间的错误、渐增式可以较早地发现模块界面之间的错误、有利于排错、检查比较彻底。有利于排错、检查比较彻底。6 6数据库设计的核心问题是什么数据库设计的核心问题是什么? ?参考答案:参考答案: 数据库设计的核心问题是如何建立一个数据库设计的核心问题是如何建立一个合理的数据模式。合理的数据模式。3 3假设对顾客的订货单按如下原则处理:假设对顾客的订货单按如下原则处理: 将顾客的信用度分三个档次:将顾客的信用度分三个档次: 欠款时间不超过欠款时间不超过3030天;天; 欠款时间超过欠款时间超

10、过3030天但不超过天但不超过100100天;天; 欠款时间超过欠款时间超过100100天。天。对于上述三种情况,分别根据库存情况来决定对于上述三种情况,分别根据库存情况来决定对顾客订货的态度。对顾客订货的态度。情况之一情况之一( (欠款时间欠款时间3030天天) ),如果需求数如果需求数库存量,则立即发货,库存量,则立即发货,如果需求数如果需求数 库存量,则只发现有库存,不足库存量,则只发现有库存,不足部分待进货后补发。部分待进货后补发。情况之二情况之二(30(30天天 库存量,则不发货。库存量,则不发货。情况之三情况之三( (欠款时间欠款时间100100天天) ),则通知先付欠款,再考虑是

11、否发货。则通知先付欠款,再考虑是否发货。试用判定树的形式予以描述试用判定树的形式予以描述( (设欠款时间设欠款时间d d,需求数需求数n n,库存量,库存量q)q)。 解:解: 4 4有有过程如下图所示的流程,过程如下图所示的流程, 试用判定表予以描述试用判定表予以描述 4 4有有过程如下图所示的流程,过程如下图所示的流程, 试用判定表予以描述试用判定表予以描述条条件件b1ftttb2-fftb3-ft-结结果果s1s21 2 3 41 2 3 4解:解:5.5.已知模块已知模块c c中的一个判定影响到模块中的一个判定影响到模块b b,如图所示,它违反了如图所示,它违反了sdsd的设计原则的设

12、计原则. .试问试问: : 可以采用哪些手段对结构图作改进,可以采用哪些手段对结构图作改进,请说明改进办法并画出改进的结构图。请说明改进办法并画出改进的结构图。解:解: 7. 7. 对下列子程序进行调试:对下列子程序进行调试: procedure example(y,z procedure example(y,z:realreal;var xvar x:real)real) begin begin if (y1) and (z=0) then x:=x/y if (y1) and (z=0) then x:=x/y; if (y=2) or if (y=2) or (x=l) then x:=

13、x+lx=l) then x:=x+l; end. end.该子程序接受该子程序接受x, y, zx, y, z的值,并将计算结果的值,并将计算结果x x的值的值返回给调用程序。返回给调用程序。 答题要求:答题要求: (1) (1)画出流程图。画出流程图。 (2) (2)用白盒法设计测试用例,并写出它所满足的用白盒法设计测试用例,并写出它所满足的是何种覆盖标准、预期结果以及路径。是何种覆盖标准、预期结果以及路径。解:(解:(1 1)流程图见右图。)流程图见右图。(2 2)用白盒法中条件组合覆盖设计测试用例:)用白盒法中条件组合覆盖设计测试用例: y=2, z=0, x=4; y=2, z=0,

14、 x=4; y=2, z=1, x=1; y=2, z=1, x=1; y=1, z=0, x=2; y=1, z=0, x=2; y=1, z=1, x=1. y=1, z=1, x=1.一、填空题一、填空题1软件危机的事实使人们意识到:软件危机的事实使人们意识到:计算机要推广使用,其关键在于计算机要推广使用,其关键在于 技术的革新。技术的革新。2所谓所谓“用户要求用户要求”是指软机系统必须满足的是指软机系统必须满足的 和限制。和限制。软件开发软件开发 所有性质所有性质 3软件工程技术中,控制复杂性的软件工程技术中,控制复杂性的两个基本手段是两个基本手段是“分解分解”和和 。4jackson

15、法的设计原则是:程序结构法的设计原则是:程序结构同同 相对应。相对应。抽象抽象 数据结构数据结构 5 5编程的目标是编写出逻辑上编程的目标是编写出逻辑上正确又易于正确又易于 的程序。的程序。6检验是软件开发过程中不可缺少的部分,检验是软件开发过程中不可缺少的部分,检验的目的在于检验的目的在于 。阅读(或维护)阅读(或维护) 发现错误并及时纠正发现错误并及时纠正 7 7在集成测试时,采用先独立在集成测试时,采用先独立测试每一模块,然后在连到一起测试每一模块,然后在连到一起运行,这种方式称为运行,这种方式称为 测试。测试。8适合于作为概念性数据模型的所谓适合于作为概念性数据模型的所谓第二代数据模型

16、是第二代数据模型是 。非渐增式非渐增式 er模型模型(概念数据模型概念数据模型) 9面向对象的开发,最大的优点是面向对象的开发,最大的优点是帮助分析者、设计者及用户清楚地帮助分析者、设计者及用户清楚地表述表述 ,便于互相进行交流通讯。,便于互相进行交流通讯。抽象概念抽象概念 二、选择题二、选择题1软件规模可按源程序行数的多少进行分类,软件规模可按源程序行数的多少进行分类,所谓大型软件,通常是指源程序行数为所谓大型软件,通常是指源程序行数为( ) a5 50k b50 100k c1m d1 10mb 2在软件生命期中,占工作量比例最大的是在软件生命期中,占工作量比例最大的是( ) a可行性研究

17、可行性研究 b建立系统的结构建立系统的结构 c编写程序编写程序 d维护维护d 3用用sa方法获得的需求说明书有四部分,方法获得的需求说明书有四部分, 用于描述系统由那些部分组成、各部分间有何用于描述系统由那些部分组成、各部分间有何 联系等,是在联系等,是在( ) a一套分层的数据流图一套分层的数据流图 b一本数据词典一本数据词典 c一组小说明一组小说明 d补充材料补充材料a 4sa方法在描述方式上的特点,方法在描述方式上的特点, 是尽量采用是尽量采用( ) a自然语言自然语言 b形式语言形式语言 c图形表示图形表示 d表格表格c 5决定软件系统中各个模块的外特性,决定软件系统中各个模块的外特性

18、, 即其输入输出和功能是即其输入输出和功能是( ) 的任务。的任务。 a需求分析需求分析 b概要设计概要设计 c详细设计详细设计 d编程阶段编程阶段b 6用于概要设计所采用的描述手段是用于概要设计所采用的描述手段是( ) adfd b结构模块图结构模块图 c程序流程图程序流程图 d数据结构图数据结构图b 7一个模块传送给另一模块的参数是由单个一个模块传送给另一模块的参数是由单个 数据项组成的数组,它属于数据项组成的数组,它属于( ) a数据型数据型 b复合型复合型 c内容型内容型 d公共型公共型a 8在概要设计的设计文档中,在概要设计的设计文档中, 对每个模块的描述内容包括对每个模块的描述内容

19、包括( ) a功能、界面、输入、输出功能、界面、输入、输出 b界面、输入、输出、过程界面、输入、输出、过程c界面、过程、限制和约束界面、过程、限制和约束 d功能、界面、过程、注释功能、界面、过程、注释d 9根据根据sp方法的要点规定,方法的要点规定, 程序最后要由程序最后要由( ) 审定。审定。 a专家专家 b谁编谁审谁编谁审 c主程序员主程序员 d资料员资料员c 10结构化程序图(结构化程序图(fc)中的箭头是用于)中的箭头是用于 表示表示( ) a控制流控制流 b数据流数据流 c数据数据/控制控制 d调用关系调用关系a 三、简答题三、简答题1简要说明概要设计与详细设计简要说明概要设计与详细

20、设计的任务有何区别?的任务有何区别?2简述提高程序可读性的技巧和方法?简述提高程序可读性的技巧和方法?3何谓何谓“软件开发环境软件开发环境”?环境的基础是什么?环境的基础是什么? 答答:1. 概要设计任务:概要设计任务:决定系统中决定系统中各模块外特性(即输入输出和功能)各模块外特性(即输入输出和功能)详细设计任务:详细设计任务:决定每模块内部特性(内部的决定每模块内部特性(内部的算法及使用的数据)算法及使用的数据) 2. a)用用sp方法进行详细设计(由顶向下逐步细化,方法进行详细设计(由顶向下逐步细化, 用三种标准控制结构反复嵌套来构造程序)用三种标准控制结构反复嵌套来构造程序) b)程序

21、中包含说明性材料(内部文档,即用注释程序中包含说明性材料(内部文档,即用注释语句写序言性、描述性注释)语句写序言性、描述性注释) c)良好的程序书写格式良好的程序书写格式 d)编程风格编程风格3. 软件开发环境又称软件工程环境,包括软件开发环境又称软件工程环境,包括方法、工具和管理等多种技术在内的综合的方法、工具和管理等多种技术在内的综合的系统,其中软件开发方法是环境的基础。系统,其中软件开发方法是环境的基础。 五、设计题五、设计题程序功能说明书指出,某程序的输入条件为:程序功能说明书指出,某程序的输入条件为:每个学生可以选修每个学生可以选修1至至3门课程,试用黑盒法门课程,试用黑盒法设计测试

22、用例。设计测试用例。1(1)按等价分类法设计测试用例按等价分类法设计测试用例(要求列出设计过程)(要求列出设计过程)(2)按边缘值分析法设计测试用例。按边缘值分析法设计测试用例。 解:解:1) 合理等价类合理等价类 选修选修1门门 选修选修2门门 选修选修3门门 不合理等价类不合理等价类 没选课没选课 选选3门以上门以上 测试用例测试用例 选修选修2 选修选修0 选修选修3 2) 边缘值法边缘值法 0,1,3,4 六、应用题六、应用题现有一模块结构图如下所示。现有一模块结构图如下所示。已知模块已知模块c中的一个判定影响到模块中的一个判定影响到模块b,试问:,试问: 问题问题1 该模块结构图违反

23、了该模块结构图违反了sd什么设计原则?什么设计原则?问题问题2 改进方法之一:改进方法之一:“将将c c所在的模块合并到它的所在的模块合并到它的调用模块中调用模块中”。请画出这一。请画出这一改进方案的模块结构图。改进方案的模块结构图。 七、应用题七、应用题有一过程,其流程如下图所示。有一过程,其流程如下图所示。其中其中b1 b1 、b2b2、 b3b3为判定的逻辑条件,为判定的逻辑条件,s1s1、 s2s2为加工处理为加工处理. .试用判定表给予描述。试用判定表给予描述。 tf解解: 1. 结构化软件开发方法的思想和有关技术。结构化软件开发方法的思想和有关技术。(试对软件开发的结构化方法作简要

24、论述)(试对软件开发的结构化方法作简要论述) 答:答:结构化方法包括结构化方法包括结构化系统分析结构化系统分析,结构化结构化系统设计系统设计以及以及结构化程序设计结构化程序设计。结构化分析方法(结构化分析方法(sasa)是软件项目开发的一种是软件项目开发的一种分析方法,它根据软件项目内部数据传递、变分析方法,它根据软件项目内部数据传递、变换的关系,遵循自顶向下逐步求精的指导思想,换的关系,遵循自顶向下逐步求精的指导思想, 必须搞清的几个问题:必须搞清的几个问题:采用抽象与分解的原则,将复杂的采用抽象与分解的原则,将复杂的软件项目逐步分解,通过软件开发软件项目逐步分解,通过软件开发的描述工具,如

25、数据流图(描述系统功能需求的描述工具,如数据流图(描述系统功能需求和数据需求)、数据词典(用于描述系统中的和数据需求)、数据词典(用于描述系统中的数据,主要是数据流图中的数据)、判定表、数据,主要是数据流图中的数据)、判定表、判定树及其结构化语言(用于描述数据加工逻判定树及其结构化语言(用于描述数据加工逻辑)的描述得到软件系统的逻辑模型。辑)的描述得到软件系统的逻辑模型。 缺点:缺点:不适合开发复杂的、规模大的项目,不适合开发复杂的、规模大的项目,适应用户需求的能力差,没有从根本上解适应用户需求的能力差,没有从根本上解决软件重用问题,难以彻底解决软件维护决软件重用问题,难以彻底解决软件维护的问

26、题。的问题。 软件设计包括了数据结构设计、软件设计包括了数据结构设计、系统体系结构设计、用户界面、系统体系结构设计、用户界面、构件级细节和设计文档。构件级细节和设计文档。结构化设计(结构化设计(sd)的基本思想是将系统设计的基本思想是将系统设计成由相对独立、单一功能的模块组成的软件成由相对独立、单一功能的模块组成的软件系统结构。这样每个模块可以独立地理解、系统结构。这样每个模块可以独立地理解、编程、测试、排错和修改。这就使得复杂的编程、测试、排错和修改。这就使得复杂的研制工作得以简化,提高了系统的可靠性和研制工作得以简化,提高了系统的可靠性和质量,也减少了研制所需的人工。质量,也减少了研制所需

27、的人工。 采用结构化设计方法设计系统体系结构,采用结构化设计方法设计系统体系结构,采用的技术是采用的技术是面向数据流的技术面向数据流的技术,即通,即通过描述用户需求的数据流图,将用户需求映射过描述用户需求的数据流图,将用户需求映射到软件体系结构。根据数据流的类型,映射的到软件体系结构。根据数据流的类型,映射的方式有两种:方式有两种:变换映射变换映射、事务映射事务映射。 变换映射:变换映射:适用于具有明确的输入适用于具有明确的输入和输出流边界的数据流图。和输出流边界的数据流图。dfd被被映射成这样一种结构,该结构将控制分配到映射成这样一种结构,该结构将控制分配到输入、加工、输出的三类分离的模块。

28、输入、加工、输出的三类分离的模块。 事务映射:事务映射:适用于单一数据项驱动适用于单一数据项驱动多条动作路径的数据流图,多条动作路径的数据流图,dfd被被映射为将控制分配到某获取和计值事务的映射为将控制分配到某获取和计值事务的子结构的一种结构,而另一个子结构控制子结构的一种结构,而另一个子结构控制所有潜在的基于事务的处理动作。所有潜在的基于事务的处理动作。一旦导出体系结构,则可进一步精化,然一旦导出体系结构,则可进一步精化,然后依据质量标准进行分析。后依据质量标准进行分析。 结构化程序设计结构化程序设计就是选择一种就是选择一种结构化的编程语言进行编码。结构化的编程语言进行编码。 2 请阐述原型

29、法的特点和适用场合请阐述原型法的特点和适用场合答:答:所谓原型法是指开发人员和用户所谓原型法是指开发人员和用户在一起定义软件的总体目标,标示出已知的在一起定义软件的总体目标,标示出已知的需求,并规划出需要进一步定义的区域。然需求,并规划出需要进一步定义的区域。然后在后在很短时间内建立很短时间内建立一个软件系统的一个软件系统的原型原型,该原型只包含软件中那些对用户该原型只包含软件中那些对用户/客户可见的客户可见的部分。将原型交用户使用并评价,如不满意部分。将原型交用户使用并评价,如不满意则对原型逐步调整,直到用户满意为止。这则对原型逐步调整,直到用户满意为止。这是一个迭代的过程。是一个迭代的过程

30、。 原型法使用前提(适用场合)原型法使用前提(适用场合): (1)用户定义了软件的一组一般性目标,)用户定义了软件的一组一般性目标, 但不能标示出详细的输入、处理及输出需求;但不能标示出详细的输入、处理及输出需求; (2)开发者不能确定算法的有效性、操作系统开发者不能确定算法的有效性、操作系统 的适应性或人机交互的形式。的适应性或人机交互的形式。 不足:不足:原型是拼凑起来的,没有考虑到软件的原型是拼凑起来的,没有考虑到软件的 总体质量和长期的可靠性。软件开发管理抓得总体质量和长期的可靠性。软件开发管理抓得 不紧不紧. . 3. 什么是面向对象的分析与设计?什么是面向对象的分析与设计?答:面向

31、对象的分析答:面向对象的分析,重点在于发现并,重点在于发现并描述问题域中的对象(或概念)。描述问题域中的对象(或概念)。面向对象的设计面向对象的设计,重点在于定义发现那些,重点在于定义发现那些能最终用面向对象程序设计语言实现的逻能最终用面向对象程序设计语言实现的逻辑软件对象。这些对象具有属性和方法。辑软件对象。这些对象具有属性和方法。最后,在系统构造和面向对象的设计中,最后,在系统构造和面向对象的设计中,用面向对象语言如用面向对象语言如java实现了所设计的构件。实现了所设计的构件。4. 面向对象方法(面向对象方法(uml)的分析)的分析与设计和传统开发方法的区别。与设计和传统开发方法的区别。答:答:面向对象开发方法和传统开发方法在面向对象开发方法和传统开发方法在开发的步骤上基本相同。开发的步骤上基本相同。不同之处不同之处在于:在于:(1)分析

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论