ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:171.67KB ,
资源ID:8774635      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8774635.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程期终考试复习题.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程期终考试复习题.docx

1、软件工程期终考试复习题软件工程期终考试复习题一、单向选择题1 一个模块把一个数值量作为参数传送给另一个模块。这两种模块之间的耦合是(A)。逻辑耦合数据耦合控制耦合内容耦合2.下列有关内聚度由低到高的排列顺序,(C)是正确的。A 偶然性、时间性、功能性、通信性、逻辑性、顺序性、过程性B 过程性、时间性、顺序性、功能性、通信性、逻辑性、偶然性C偶然性、逻辑性、时间性、过程性、通信性、顺序性、功能性D时间性、逻辑性、顺序性、功能性、通信性、偶然性、过程性3. 好的软件结构应该是(B) A 高内聚、高耦合 B 高内聚、低耦合 C 低内聚、高耦合 D 低内聚、低耦合4.黑盒测试在设计测试用例时,主要需要

2、研究(A)。.需求规格说明与概要设计说明.详细设计说明.项目开发计划.概要设计说明与详细设计说明5.SA方法的基本思想是(C) A 自底向上逐步抽象 B 自底向上逐步分解 C 自顶向下逐步分解 D 自顶向下逐步抽象6. 软件是一种(C)。.程序.数据.逻辑产品.物理产品7、软件的发展经历了(D)个发展阶段。 AA 一 B 二 C 三 D 四8、需求分析的任务不包括(B)。A 问题分析 B 系统设计 C.需求描述 D 需求评审。9、一个软件的宽度是指其控制的(C)。A 模块数 B 层数 C 跨度 D 厚度10、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。 A 判

3、定表和判定树 B 盒图 C 流程图 D 关系图11、 以下不属于逻辑覆盖的是(D)。A 语句覆盖 B 判定覆盖 C 条件覆盖 D 基本路径12、为适应软件运行环境的变化而修改软件的活动称为(B)。A 纠错性维护 B 适应性维护 C 改善性维护 D 预防性维护13适合于面向对象方法学的软件生存周期模型是( B )A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型14从实用角度看,数据规范化程度在大多数场合选用第( C )范式。A. 1 B.2 C.3 D.515. 可行性分析研究的目的是( A )。A. 项目值得开发否 B.争取项目 C.开发项目 D.规划项目16 模块的内聚性最高的是( D

4、)A.逻辑内聚B.时间内聚 C.偶然内聚D.功能内聚( C )17.软件是( )。A. 处理对象和处理规则的描述 B. 程序C. 程序及其文档 D. 计算机系统( B )18. 软件需求规格说明的内容不应包括( )。A. 主要功能 B. 算法的详细描述C. 用户界面及运行环境 D. 软件的性能( B )19. 程序的三种基本控制结构是( )。A. 过程、子程序和分程序 B. 顺序、选择和重复C. 递归、迭代和回溯 D. 调用、返回和转移( ) 20. 面向对象的分析方法主要是建立三类模型,即( )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) -模型、对象模型

5、、功能模型 D) 对象模型、动态模型、功能模型( C )21. 在E-R模型中,包含以下基本成分( )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作( A ) 22. 各种软件维护的类型中最重要的是( )。 A) 完善性维护 B) 纠错性维护 C) 适应性维护 D) 预防性维护( B ) 23软件测试的目标是( )。A. 证明软件是正确的 B. 发现错误、降低错误带来的风险C. 排除软件中所有的错误 D. 与软件调试相同( D )24软件生命周期中所花费用最多的阶段是( )A详细设计 B软件编码 C软件测试 D软件维护( C )25若有一个计

6、算类型的程序,它的输入量只有一个X,其范围是-1.0, 1.0,现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是( )A条件覆盖法 B等价分类法 C边界值分析法 D错误推测法( D )26、详细设计的基本任务是确定每个模块的( )设计A功能 B.调用关系 C.输入输出数据 D.算法( A )27设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)C(P2)显然E(P1)E(P2),则得出结论E(P1+P2)E(P1)+E(P2)就是:( ) A模块化的根据 B逐步求精

7、的根据 C抽象的根据 D信息隐藏和局部化的根据( D )28下面几种白箱测试技术,哪种是最强的覆盖准则 ( ) A语句覆盖 B条件覆盖 C判定覆盖 D条件组合覆盖( A )29面向数据流的设计方法把( )映射成软件结构。 A数据流 B系统结构 C控制结构 D信息流( A )30.内聚程度最低的是( )内聚A.偶然 B.过程 C.顺序 D.时间( A )31.确定测试计划是在( )阶段制定的.A总体设计 B.详细设计 C.编码 D.测试( D )32需求分析的产品是( ) A数据流程图案 B数据字典 C判定表 D需求规格说明书 ( C )33数据字典是软件需求分析阶段的最重要工具之一,其最基本的

8、功能是( )A数据库设计 B数据通信 C数据定义 D数据维护( D )34.( )引入了“风险驱动”的思想,适用于大规模的内部开发项目。 A增量模型 B喷泉模型 C原型模型 D螺旋模型( D )35模块的内聚性最高的是( ) A逻辑内聚 B时间内聚 C偶然内聚 D功能内聚( D )36.提高测试的有效性非常重要,成功的测试是指( )A.证明了被测试程序正确无误 B.说明了被测试程序符合相应的要求C.未发现被测程序的错误 D.发现了至今为止尚未发现的错误二、填空题1. 软件生存周期一般可分为_ 问题定义 _、可行性研究、 _需求分析 _、设计编码、_ 测试_、运行与维护阶段。2. 按软件的功能进

9、行划分,软件可以划分为 系统软件 、 支撑软件 和应用软件。3. 可行性研究主要集中在以下四个方面 经济可行性 、 技术可行性 法律可行性 和抉择。4. 用户界面的 可使用性 是用户界面设计最重要的也是最基本的目标。5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的_结构化设计方法_,以数据结构为基础构造模块的_jackson _方法,以对象、类、继承和通信为基础的_ 面向对象设计方法_。6. _ 数据流图_和_ 数据字典_共同构成系统的逻辑模型。7. 软件测试的方法有_ 分析方法_和_ 非分析方法_(即黑盒法)。8. 单元测试一般以_ 白盒_测试为主,_ 黑盒_测试为辅。9

10、 软件工程的发展可分为 时期、软件=程序+文档、 时期。(程序 软件产品)10 DFD中最低一层的 包含了系统的全部数据和加工,从哪里开始分析呢?W.Davis认为,一般应该从数据的 开始。因为 的数据代表系统的输出,其要求是明确的。由这里开始,沿着 一步步向数据 ,较易看清楚数据流中每一个数据项的来龙去脉,有利于减少错误和遗漏。(数据流图 终点 终点 数据流图 源点回溯)11 加工说明通常使用 、 或 来描述。(结构化语言 判定表 判定树)12 耦合越弱,则表明模块的 越强。(独立性)13 要把数据流图(DFD)转换成软件结构,首先必须研究DFD的类型。各种软件系统,一般可分为 和 两类。(

11、事务型 变换型)14 模块之间联系越紧密,其耦合性就越 ,模块的独立性就越 。(弱 强 )15 模块的独立性概括了把软件划分为 时要遵守的准则。(模块)16 一个模块的作用范围指受该模块内 影响的所有模块的集合,一个模块的控制范围指 及其 的集合。(的判定所 模块本身 下级模块)17 SD方法的中心任务是把用DFD图表示的系统分析模型转换为 ,使用的主要描述工具是 。(软件结构的设计模型 SC图)18 详细设计常用的表达工具有 3 (流程图和N-S图 伪代码和PDL语言 判定表或判定树)19 要改善程序的清晰度必须从改善每个模块的控制结构入手,结构化的三种控制结构是 、 、 。(顺序结构 、

12、选择结构 、 循环结构)20 编码的目的是选定的 ,把模块的 翻译为用 书写的源程序。(程序设计语言 过程性描述)21 实现源程序的文档化主要包括以下三个方面的内容:它们是: 4 (有意义的变量名 适当的注释 标准的书写格式)22 运行被测试程序的方法称为 测试。(动态)23 黑盒测试以程序功能为测试依据,可以采用如下的测试方法 、 、 。(等价分类法 边界值分析法 错误猜测法)24 语句覆盖是指设计足够的 ,使得被测试程序中 至少执行一次。语句覆盖是比较 的覆盖标准。(测试用例 每条语句 低)25 判定覆盖是指设计足够的测试用例,使得被测试程序中每个 至少获得一次 和 值,从而使程序中 的每

13、一个 至少都通过一次。(判定条件 真值 假值 分支)26 条件覆盖指设计足够的测试用例,使得 中的每个条件的 值至少出现一次。(每个判定表达式 各种可能)27 黑盒法把被测对象看成一个 ,测试人员完全不考虑程序的 和 。只在软件的 处进行测试。(黑盒子 内部结构 处理过程 接口)28 在单元测试中,测试一个模块时,需要设计 。(驱动模块和桩模块)29 软件测试依次由 、 、 和系统测试四个层次的测试组成。(单元测试 集成测试 确认测试)30、瀑布模型把软件生命周期划分为8个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段

14、:计划阶段、开发阶段和( 运行阶段 )。31、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,( 需求分析阶段 )出错,对软件的影响最大。32、在结构化的瀑布模型中,(需求分析阶段)定义的标准将成为软件测试中的系统测试阶段的目标。33、软件工程的出现主要是由于(软件危机的出现)。34、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为相互补充。35、UML是软件开发中的一个重要工具,它主要应用于基于对象的( 面向对象 )的方法。36、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高( 原型化方法 )。37、结构化分析方法是一种预先严格定义

15、需求的方法,它在实施时强调的是分析对象的(数据流)。38、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( 编码阶段 )。39、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。螺旋模型将瀑布模型和演化模型相结合,并增加了(风险分析),它建立在()的基础上,沿着螺线自内向外每旋转一圈,就得到(原型)的一个新版本。喷泉模型描述了(面向对象)的开发模型,它体现了这种开发方法创建软件的过程所固有的(递归)和(开发各阶段之间无“间隙”)的特征。40、以下不属于白盒测试技

16、术的是(等价类划分)。41、为改正软件系统中潜藏的错误而进行的维护活动称为(纠错性维护 )。 42、保证软件质量的手段有复审、复查、管理复审和测试等。其中复审发生在软件生命周期的(每个阶段结束之前 )。43、完整的系统设计应包括( 计算机系统设计、应用软件设计、数据库设计和网络设计 )。44、在信息系统的物理模型中,表示系统各个物理组成部分之间的数据流动情况的工具是(系统流程图 )。45、系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的( 信息流动)情况。46、成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。47、自顶向下结合的渐增式测试法

17、,在组合模块时有两种组合策略:深度优先策略和(宽度优先策略) 。48、在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。49、详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。50、所有软件维护申请报告要按规定方式提出,该报告也称(软件问题)报告。51、独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。52、设计任何一个人机界面,一般必须考虑(系统响应时间)、用户帮助机制、错误信息处理和命令方式四个方面。53、在软件测试中,已知产品内部工作过程,通过测试检验产品内部动作是否

18、按照产品规格说明的规定正常进行的方法称为(白盒)测试法。54、(耦合度)是对软件结构中模快间关联程度的一种度量。55 软件工程方法学的目的:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(软件开发工具和软件开发的环境)。三、判断题1、缺乏有力的方法学的指导和有效的开发工具的支持, 这往往是产生软件危机的原因之一。()2、一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。(X)3、在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。()4、快速原型技术适用于软件产品要求大量的用户交互、或产生大量的可视输

19、出、或设计一些复杂的算法等场合。()5、流程图也称为程序(框图)是最常用的一种表示法。()6、面向数据设计方法一般都包括下列任务: 确定数据结构特征;用顺序、选择和重复三种基本形式表示数据等步骤。()7、理想的人机界面应针对具有典型个性的特定的一类用户设计。()8、数据输入的一般准则中包括尽量(增加)用户输入的动作。(X)9、用穷举测试是较现实的测试方法。(X)10、编码时应尽可能使用全局变量(X)11、重视程序结构的设计,能使程序具有较好的层次结构()12、程序中的注解越少越好( X )。13、用户对软件需求的描述不精确,往往是产生软件危机的原因之一。()14、目前,软件项目的进度安排的两种

20、比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。()15、一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见。()16、目前的绝大多数软件都不适合于快速原型技术。(X)17、面向数据的设计方法适用场合是具有明显的层次信息结构的应用如:企事业的信息管理系统;系统软件(如操作系统)等。()18、缺乏处理大型软件项目的经验。是产生软件危机的唯一原因。(X)19、通常紧致性好的语言一致性就好。(X)20、测试计划、测试用例、出错统计和有关的分析报告一般不用长期保存。(X)21、数据输入的一般准则中包括保证信息显示方式与数据输入方式

21、的协调一致;允许用户定做输入格式等内容。()22、软件也会磨损和老化。(X)23、完善性维护是提高或完善软件的性能。()24、McCabe建议模块规模应满足:V(G)20。(X)( )25、开发软件就是编写程序。( )26、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等 测试。( )27、编程序时应尽可能利用硬件特点以提高程序效率.( )28、软件需求分析的任务是建立软件模块结构图。( )29、尽可能使用高级语言编写程序( )30、以结构化分析方法建立的系统模型就是数据流图。( )31、进行总体设计时加强模块间的联系。( )32、编码时尽量多用全局变量.( )33

22、、用CASE环境或程序自动生成工具来自动生成一部分程序.( )34、软件测试是要发现软件中的所有错误。35. 缺乏有力的方法学的指导和有效的开发工具的支持, 这往往是产生软件危机的原因之一。( T )36 一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达能力。( F )37 在用户需求分析时观察用户手工操作过程不是为了模拟手工操作过程,而是为了获取第一手资料,并从中提取出有价值的需求。( F )38 快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输出、或设计一些复杂的算法等场合。( T )39 流程图也称为程序框图是最常用的一种表示法。( T )40 面向数据

23、设计方法一般都包括下列任务: 确定数据结构特征;用顺序、选择和重复三种基本形式表示数据等步骤。( T )四、简答题1 什么叫软件工程?软件工程三要素是什么?解:软件工程:指导计算机软件开发和维护的一门学科,采用工程的概念、原理、技术和方法来开发与维护软件。软件工程三个要素:方法、工具、过程2衡量模块独立的两个标准是什么?它们各表示什么含义?解:衡量模块独立性的两个定性的度量标准:耦合性和内聚性。耦合性和内聚性的概念(略)耦合性与内聚性是模块独立性的两个定性的度量标准,将软件系统划分模块时,尽量做到高内聚、低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。3什么是白盒法?它有哪两类测试法

24、?解:以程序的结构为依据的测试方法包括:逻辑覆盖测试法和路径测试法。其中,逻辑覆盖法包括:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖和条件组合覆盖。4软件的可维护性与哪些因素有关?解:软件的可维护性与可理解性、可修改性、可测试性等因素有关。5、程序设计语言的三种类型和特点是什么?解:1) 机器语言、汇编语言:依赖于机器,面向机器 2) 高级语言:独立于机器,面向过程或面向对象3) 面向问题语言:独立于机器,非过程式语言(4GL) 6、什么是软件危机?为什么会产生软件危机?解:软件危机是指软件在开发和维护过程中遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,三是如何维护数量不

25、断膨胀的已有软件。产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关。7、耦合性有哪几种类型? 其耦合度的顺序如何解:低:非直接耦合 数据耦合标记耦合 控制耦合外部耦合 公共耦合内容耦合 :高8、什么是黑盒测试法?解:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息。9.简述软件工程的概念。答:概括地说,软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和

26、当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。10. 简述典型的软件生命周期的各个阶段。答:软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行维护三个时期组成。软件定义时期:问题定义、可行性研究和需求分析开发时期:总体设计、详细设计、编码和单元测试、综合测试。维护时期:主要任务是使软件持久地满足用户的需要。即每个有8个阶段及基本任务:1问题定义:回答 要解决的问题是什么?2可行性研究:该问题有行的通的解决办法吗?若有解决问题的办法,则需要多少费用、资源、时间?3需求分析:回答“为了解决这个问题,目标系统必须做什么”,确定目标系统的功能

27、4总体设计:回答 “概括地说,应如何解决这个问题”。把确定的各项功能需求转换成需要的体系结构。设计软件的结构,确定程序由哪些模块组成及模块间的关系,同时设计该项目的应用系统的总体数据结构和数据库结构。5详细设计:回答 “应怎样具体地实现这个系统”。为每个模块完成的功能进行具体描述,把功能描述转变为精确的、结构化的过程描述6编码和单元测试:把每个模块的控制结构转换成计算机可接受的程序代码。写出的程序应是结构好,清晰易读,并且与设计一致。7综合测试:通过各种类型的测试使软件达到预定的要求。8软件维护:通过各种必要的维护活动使系统持久地满足用户需要。11. 简述传统方法学软件设计的基本原理及内容。?

28、答:传统方法学也称生命周期方法学或结构化范型。原理:采用结构化技术(结构化分析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件工具或软件工程环境来支持结构化技术的运用。内容:把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务。采用生命周期方法学可以大大提高软件开发的成功率,软件开发的生产率也能明显提高。12. 以G.J.Myers的观点,简述对软件测试的定义。?答:G.Myers给出了关于测试的一些规则,这些规则也可以看作是测试的目标或定义。(1) 测试是为了发现程序中的错误而执行程序的过程;(2) 好的测试方案是极可能发现迄今为止尚未发现的错误的测试

29、方案;(3) 成功的测试是发现了至今为止尚未发现的错误的测试。从上述规则可以看出,测试的正确定义是“为了发现程序中的错误而执行程序的过程”。13. 简述面向对象方法学的4个要点。?答:.概括地说,面向对象方法学具有下述4个要点:(1)把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件。 (2) 把所有对象都划分成类(class)。(3) 按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。 (4) 对象彼此间仅能通过发送消息互相联系。14. 列举出5个详细设计阶段的常用工具。?答:程序流程图,盒图,PAD图(问题分析图

30、),判定表,判定树,过程设计语言,15 向对象建模主要建立哪几种模型,其中哪种模型是最基本,最核心的?答:功能模型,动态模型,对象模型。对象模型16 元测试着重从哪几个方面对模块进行测试?答:模块接口、局部数据结构、重要的执行通路、出错处理通路、边界条件17 么是模块独立?为什么模块独立性很重要?答:模块独立是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他模块的接口是简单的。即功能专一,模块之间无过多的相互作用的模块。这种类型的模块可以并行开发,模块独立性越强,开发越容易。独立性强的模块,还能减少错误的影响,使模块容易组合、修改及测试。17. 软件生命期各阶段的任务是什么? 答:软件生命期分为7个阶段: 1、问题定义:要解决的问题是什么2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性3、需求分析:系统必须做什么4、总体设计:系统如何实现,包括系统设计和结构设计5、详细设计:具体实现设计的系统

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1