软件工程复习题.docx

上传人:小飞机 文档编号:3131928 上传时间:2023-03-11 格式:DOCX 页数:22 大小:46.48KB
返回 下载 相关 举报
软件工程复习题.docx_第1页
第1页 / 共22页
软件工程复习题.docx_第2页
第2页 / 共22页
软件工程复习题.docx_第3页
第3页 / 共22页
软件工程复习题.docx_第4页
第4页 / 共22页
软件工程复习题.docx_第5页
第5页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《软件工程复习题.docx》由会员分享,可在线阅读,更多相关《软件工程复习题.docx(22页珍藏版)》请在三一办公上搜索。

1、软件工程复习题 一、 得分 单项选择题(在每小题的四个备选答案中,选出一个正确的答案序号填在括号内。每小题1分,共20分) 1. 信息隐蔽概念与( A )这一概念直接的相关。 A. 模块的独立性 C. 软件结构定义 2. 下列方法中不属于面向对象的开发方法有。 A. Booch方法 3. 不属于详细设计的主要工具有( C )。 A. IPO图 C. PDL A. 小 5. 软件需求分析是保证软件质量的重要步骤,它的实施应该是在。 A.编码阶段 6. 模块内聚度越高,说明模块内各成分彼此结合的程度越。 A.松散 7. 软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而且影响

2、软件的。 B.可维护性 C.可扩展性 D.可移植性 B.紧密 C.无法判断 D.相等 B.软件开发全过程 D.软件设计阶段 C.软件定义阶段 B. PAD图 D. SC B. Coad方法 C. VDM方法 D. OMT方法 B. 模块类型的划分 D. 软件生命周期 4. 选择结构的复杂性比顺序结构的复杂性要( B )。 B.大 C.相等 D.无法比较 第 1 页 共 14 页 10. 下列选项不属于软件工程方法学三要素的是。 B.设计阶段 D.测试阶段 B.工具 C.过程 D )。 D.操作 A.运行和维护阶段 C.代码实现阶段 12. .黑盒测试在设计测试用例时,主要需要研究。 A.需求规

3、格说明与概要设计说明 B.详细设计说明 C.项目开发计划 D.概要设计说明与详细设计说明 13. 可行性研究要进行一次( D )需求分析。 A. 深入的 B. 详尽的 C. 彻底的 D. 简化的、压缩了的 14. 下列属于维护阶段的文档是。 A.软件规格说明 C.软件问题报告 )。 C.数据定义 D.数据维护 B.用户操作手册 D.软件测试分析报告 15. 数据字典的最基本功能是。 A.数据流图舍去了具体的物理元素,只剩下数据的流动、加工处理和存储 B.数据流图是用作结构化分析建模的一种工具 C.传统的数据流图主要由处理、数据源点/终点、数据流、控制流、数据存储组成 D.数据流图的编绘采用自上

4、向下、逐层分解的方法 17. 选择程序设计语言的关键因素是。 A.软件应用领域 C.软件开发方法 B.软件执行环境 D.算法和数据结构 18. 所谓软件过程的里程碑,通常是指。 B.每个项目活动 D.开发进度月报 19. 程序的三种基本控制结构是。 A.过程、子程序与分程序 B.顺序、选择和重复 第 2 页 共 14 页 C.递归、堆栈和队列 D.调用、返回和转移 20. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为。 1软件不仅仅是程序,还应该有一整套_文档_。 2传统的软件生命期模型是_瀑布模型_。 3Jackson程序设计方法是一种_面向数据结构_的设计方法。 4黑盒测试也称为

5、_功能测试_,白盒测试也称为_结构测试_。 5与程序流程图相比,盒图没有_转移箭头_,因此不允许随意转移控制。 6在单元测试中,使用_驱动程序_模拟被测单元的调用和数据传递动作,_存根程序_模拟被测模块的子程序。 7度量软件规模的常用技术主要有_代码行技术_和_功能点技术_。 8可行性研究包括_技术可行性_、_经济可行性_和_社会可行性_等三个方面的可行性研究。 三、 得分 简答题 (每题8分,共32分) 1. 集成测试有哪两种测试策略?试比较它们的优缺点。 答:主要是自顶向下集成测试策略和自底向上集成测试策略两种。 自顶向下集成测试策略的优点是:能尽早地对程序的主要控制和决策机制进行检验,因

6、此能较早地发现错误。 缺点是:在测试较高层模块时,低层处理采用桩模块替代,不能反映真实情况,重要数据不能及时回送到上层模块,因此测试并不充分。 自底向上集成测试策略的优点是:不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象。 2. 简述结构化程序设计方法的基本要点。 答: (1)采用自顶向下,逐步求精的程序设计方法. (2)使用三种基本控制结构构造程序,分别是顺序,选择和循环 第 3 页 共 14 页 (3)采用主程序员组的组织形式. (4)采用单入口单出口的模块形式. 3. 试解释软件、软件工程和软件工程方法学的基本含义。 答: 软件:软件是一种产品,同时又

7、是开发和运行产品的载体。作为一种产品,它表达了由计算机硬件体现的计算潜能。作为开发运行产品的载体,软件是计算机工作的基础、信息通信的基础,也是创建和控制其他程序的基础。具体包括以下三方面内容:在运行中能提供所希望的功能和性能的指令集;使程序能够正确运行的数据结构;描述程序研制过程、方法所用的文挡。 软件工程:是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。 软件工程方法学:软件工程方法学是研究软件设计方法论及工程开发技术的一门新兴学科。 4. 简述面向对象开发方法的三大模型及各自的

8、作用。 答: 面向对象开发方法中的三大模型是指对象模型、动态模型、功能模型。各自的作用是: q 对象模型:描述现实世界中的“类与对象”以及之间的关系,表示目标系统的静态数据结构。 q 动态模型:描述对象之间的互相作用。 q 功能模型:该模型表明系统中数据之间的依赖关系,以及有关的数据处理功能。 四、 得分 应用分析题 (共32分) 1. 根据给出的程序流程图,画出它的N-S图和流图,并计算它的McCabe复杂度。 (15分) 其中:Pi代表操作语句,Ci代表判定条件 第 4 页 共 14 页 答: N-S图为: 流图为: McCabe复杂度根据公式: V= E N +2 = 10 8 + 2

9、= 4 2. 设计一个程序:先读入三角形的三条边的值,再根据这些值判断三角形是普通的、等腰的或等边的,要求打印出说明信息。 (10分) 1)写出该程序的有关约束条件; 2)结合黑盒测试中的等价分类法技术,设计有关测试用例。 答: 1)我们可以设三角形的3条边分别为A,B,C。如果它们能够构成三角形的3条边,必须满足的约束条件是: A0,B0,C0,且A+BC,B+CA,A+CB。 如果是等腰的,还要判断A=B,或B=C,或A=C。 如果是等边的,则需判断是否A=B,且B=C,且A=C。 2)等价分类法有关部门等价类的划分: 第 5 页 共 14 页 输入条件 有效等价类 , , 无效等价类 ,

10、 , , , , , andand 是否三角形的三条边 , , , , , 是否等腰三角形 , , 是否等边三角形 , andand , , 有关测试用例: 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 覆盖等价类 , , , , , , , , , 非等边三角形 非等腰三角形 是等边三角形 等腰三角形 不能构成三角形 输出 一般三角形 14 15 第 6 页 共 14 页 3. 绘制取款过程的数据流程图: (7分) 储户将填好的取款单及存折交储蓄所,经查对储户帐, 将不合格的存折和取款单退还储户,合格的存折和取款单被送交取款处理。处理时要修改储户帐和现金帐,并将存折利息单

11、和现金交储户,同时将取款单存档。试画出以上存取款处理过程的数据流程图。 答:数据流程图为: 1 什么是软件?什么叫软件软件工程?其目标是什么? 软件定义在运行中能提供所希望的功能和性能的指令集; 使程序能够正确运行的数据结构; 描述程序研制过程、方法所用的文挡。 软件工程 定义1:应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。 定义2:在软件设计、实现、检查、运行、维护各个过程中适用的立足于科学基础上的实用方法。 软件工程的目标:a.降低开发和维护成本,提高软件质量,加快和控制开发进度, b.降低开发的风险, c.软件开发的实施使大型软件的开发成为可能 2 什么是

12、软件危机?它的表现是什么? 文档:各种规格书、说明书、用户手册等等的总称。 软件:程序与文档。 软件危机:在计算机软件的开发和维护过程中,所遇到的一系列严重问题,这一系列问题使软件产生了危机。 软件危机的表现: 对软件开发成本和进度的估计常常很不准确。 用户易对“已完成的”软件系统产生不满。 软件质量不可靠。 软件常常是不可维护的。 软件通常没有适当的文档资料。 软件成本越来越高。 第 7 页 共 14 页 软件开发生产率提高速度慢,跟不上发展。 3 可行性研究的目的是什么? 可行性研究的目的:用最小的代价在尽可能短的时间内确定问题是否能够解决。若值得解,则推荐一个较好的方案,并制定一个初步的

13、计划;若无可行解,则建议停止开发工程。 4 数据流图的基本要求是什么? 描绘“做什么”,而不考虑“怎样做”。数据流图中描绘的是数据流,而不是控制流。 5 软件生存期分几个阶段?每个阶段的主要作用是什么? 问题定义 关键:要解决的问题是什么?作用:提出关于问题性质、工程目标和规模的书面报告。 可行性研究 关键:问题是否有行得通的解决办法?作用:进行一次大大压缩和简化了的系统分析和设计的过程,导出系统的高层逻辑模型,估计系统的成本和效益作为是否进行此项工程的重要依据。 需求分析 确定目标系统必须具备哪些功能。得出经过用户确认的系统逻辑模型。 总体设计 关键:应如何解决这个问题。作用:根据系统分析的

14、结果来考虑系统的结构,即考虑算法与数据的结构。 考虑如下问题: a.如何将系统划分成一个个模块;b.模块间传送什么数据; c.模块间如何调用;d.如何评价模块结构的质量。 详细设计 如何具体实现这个系统?根据总体设计的结果,考虑在具体硬件与操作系统上的程序模块结构与数据结构。实际上是具体考虑每一模块内部采用什么算法。设计出程序的详细规格说明。 编码和单元测试 写出正确的、容易理解的、容易维护的程序模块,并测试编写出的每一个模块。 综合测试 通过各种类型的测试使软件达到预定的要求。 集成测试:根据设计的软件结构,把经过单元测试的模块按某种选定的策略装配起来,进行必要的测试。 验收测试:按规格说明

15、书的规定,由用户对目标系统进行验收。 软件维护 通过各种必要的维护活动使系统持久地满足用户的需要。 通常有四类维护活动: a.改正性维护 b.适应性维护c.完善性维护d.预防性维护 6 系统分析的方法有哪几种? 系统分析即需求分析方法,大致可分为三种:归纳法、推论法和比较、舍取法。 例1:某企业计划用计算机实现工资管理,系统的分析由接受过信息处理训练的人员承担。 可采用“归纳法”。例2:某公司根据经理的指示要开发一个能适应若干年后的经营环境,并能开拓市场的综合信息处理系统。可采用“推论法”。 第 8 页 共 14 页 例3:某公司想用计算机进行接收订货处理,希望在询问时能正确地应答,快速给出票

16、据,从而改善服务,降低营业成本,但因是小公司,费用大了有困难,且商品种类多,变动也快,订货集中在很短的时间内,操作人员未受训练等等。采用比较、舍取法。 7 何为功能模块?设计模块? 功能模块:在分析阶段由系统分析员对该系统应完成的功能进行规定的模块。 设计模块:在后面设计阶段对如何实现这些功能进行描述的模块。 8 我们学过的几个单词缩写:SADT,HIPO,PSL,PSA,等,其意义是什么? SADT:结构分析设计方法 HIPO图:H图加IPO图,即层次图加输入/处理/输出图。 PSL:问题陈述语言 PSA:问题陈述分析程序 CADSAT:计算机辅助设计和规格说明分析工具。 9 何为模块化?评

17、价好的模块化的标准是什么? 模块化是指把整个系统按照一定的规则分割成各个模块的过程。 评价好的模块的标准: a.模块的大小:既不能太大,也不能太小。 b.模块之间的联系程度:模块的独立性越强越好,也就是模块间的接口越简单越好 c.模块内的联系程度:块内联系越强,则模块独立性就越高,系统的结构也就越好。 d.模块的信息隐蔽程度:各个模块间仅有极少量的信息连结,大量的详细的信息隐蔽在模块内部,这样的模块结构是好的结构。 10 模块间的调试调用方式有哪几种?a.直接引用 b.通过CALL语句调用 11 系统设计基础有哪几种?a.以控制为中心的设计b.以数据为中心的设计 12 结构化程序设计方法采用哪

18、几种基本的控制结构?画出图形。 结构化程序设计方法采用三种基本控制结构:顺序、选择和重复 图形如下: F 处理1 T F 条件 条件 处理1 处理2 T 处理 处理2 顺序 选择 重复 13 程序设计工程有那些步骤? 了解具体使用的计算机的性能和环境。 计算机性能 操作系统 程序设计语言 充分理解系统设计的详细规格书。 考虑程序在机器上的管理方式。 了解编译程序的特点与规 第 9 页 共 14 页 14 大,中,小规模系统的开发分析顺序是什么? 问题的明确;确立系统方案;系统基本设计;系统需求规格的明确化;系统方案评价;制订系统计划。 15 什么是测试?测试的目的是什么? 测试的定义是:为了发

19、现错误而执行程序。 测试的目的是:设法使软件发生故障,暴露软件错误。 16 软件测试由哪几个步骤组成?各个步骤的工作是什么? 模块测试 这一测试发现的问题往往是编码和详细设计的错误。 子系统测试 主要测试模块间的接口,也就是模块间的协调和通信。 系统测试 这一步发现的问题往往是软件设计中的错误,也可能发现需求说明中的错误。 验收测试 使用实际数据进行测试,以验证系统能否满足用户需求。 平行运行 平行运行是一种试运行 17 一个正确的软件能否说它是可靠的?为什么? 一个正确的软件不能说是可靠的,因为正确性与可靠性是二个不同的概念。正确性是从系统开发者的立场出发,指开发出的软件满足该规格的要求;而

20、可靠性是从用户立场出发,指系统完全满足用户的要求与各种性能指标。 18 选择测试用例一般有哪几种方法?各自的含义是什么? 选择测试用例一般使用黑盒测试和白盒测试。 黑盒法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程。即不关心程序内部的逻辑,只根据程序的功能说明来设计测试用例。 白盒法把程序看成装在一个透明的白盒子里,即完全了解程序的结构和处理过程。白盒法测试也叫逻辑驱动测试或逻辑覆盖法。 选择测试用例 为每个等价类编号; 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的合理等价类,重复进行,直至覆盖所有的合理等价类; 设计一个新的测试用例,使其覆盖一个尚未被覆盖的不合理等价类,

21、重复进行,直至覆盖所有的不合理等价类。 说明:若一次覆盖二个不合理等价类,则程序发现第一个不合理等价类后,可能不会再去检查第二个不合理等价类,因此这一部分程序实际上并没有测试到。 19 开发同期中各阶段潜伏的错误一般再什么时候被发现? 系统分析运行维护 系统设计综合测试 程序设计单体测试 越早潜伏的错误越晚发现 20 软件维护的内容包括哪几类?各自的含义是什么? 维护内容分为修改、适应新环境的变更和改良三类。 修正 改正在开发阶段产生,在测试阶段又没有发现的错误。 第 10 页 共 14 页 a.改正有关程序的异常结束或输出不恰当的信息等的处理方面的错误。 b. 修正性能方面的错误。 c. 修

22、正有关程序设计标准、功能规格与设计内容不一致等软件实现方面的错误。 适应新环境的变更 为适应软件外界环境改变,而对它们进行的修改。 a.由分类代码的变化、数据库的逻辑结构的变化等数据环境的变化引起的相应的变更。 b.由硬件、操作系统等处理环境的变化引起的相应的变更。 更加完善的改良 为扩充功能或改善性能而进行的修改。 a.为提高效率而进行的改良。 b.为了便于使用,输出形式的改善或添加新的输出信息等的功能的改善。 c.补充源程序说明,提高源程序的易读性等的便于维护的改良。 21 Jackson方法属于哪一种设计方法?你能否用这方法设计一个打印表程序结构? Jackson系统开发方法是一种典型的

23、面向数据结构的分析设计方法,它是以信息驱动的,是将信息转换成软件的程序结构 设计一个打印表程序结构: 姓名 年龄 类别 状态 其中:类别为教师学生两种;状态为:若教师,则为工龄;若学生,则为年级。 其数据结构为: 然后把数据结构和程序结构找出对应关系 找出数据结构中与程序结构相对应的关系。 表格 表体 产生表格 产生表体 第 11 页 共 14 页 表格 “表格”由“表头”和“表体”顺序组成 表头 表体 行 “表体”由“行”重复组成 “状态”由“工龄”或“年级”选择组成 年龄O 姓名 每一“行”又由“姓名”、“年龄”、“类别”和“状态”顺序组成 年龄 类别 状态 工龄O 程序结构为: 产生表格

24、 产生表头 产生表体 产生行* 产生姓名 产生年龄 产生类别 产生状态 产生工龄O 产生年级O 22 什么叫文档?包括那些内容? 文档:各种规格书、说明书、用户手册等等的总称。文档可分为两类:用户文档和系统文档 用户文档包括: 功能描述 安装文档 使用手册 参考手册 操作员指南五方面内容 系统文档:主要指从问题定义、需求说明到验收测试计划等和系统实现有关的文档。 23 测试时软件的配置和测试配置各包含什么内容? 测试时的软件配置包含:需求说明书、设计说明书、源程序清单。 测试配置包含:测试计划、测试方案。其中测试方案包括:测试时使用的输入数据、每组输入数据预定要检验的功能、每组输入数据预期应得

25、到的正确输出。 24 需求功能的集合和规格的功能集合,程序功能结合之间的关系 软件维护过程中三个集合的定义: 需求功能集合 规格功能集合 程序功能集合 若规格功能集合S是需求功能集合R的必要且充分的描述内容时, 第 12 页 共 14 页 即当S=R时,此规格功能理想的。 若规格功能集合S包含了全部需求功能集合的内容,即SR,那么,规格功能集合S是正确的。 除去以上两种情况,则为错误的。 S= R R S R S R (c) 错误的 由于程序的实现是以规格功能集合S为目标进行的,所以在的情况下,不能进行程序设计。 若程序功能集合P必要且充分地实现了规格功能集合S,即P=S时,则程序功能集合P是

26、理想的。 只要满足S集合中没有未实现的功能时,即满足PS时,则程序功能集合P是正确的。 除去以上两种情况,即为设计或编码阶段的错误。 一般只要满足关系式PSR就行了。 25 不用GOTO语句用类某种语言的方式写出一个结构程序来。 处理开始 (a) 理想的 (b) 正确的 N 处理1 条件A Y 处理4 处理3 N 条件C 处理5 N 处理6 Y Y 条件B N 处理2 条件D N 处理结束 N 条件B 条件F Y Y Y 第 13 页 共 14 页 IF 条件A THEN 处理1 处理4 DO WHILE 条件B DO WHILE 条件B IF 条件C THEN IF 条件E THEN 处理3

27、 IF 条件F THEN ELSE 处理6 ENDIF ELSE ENDDO ENDIF 处理2 ELSE ENDIF 处理5 ENDIF ENDDO ELSE 26 把到医院去看病从进去到出来写出一个系统分析图来。 挂号 27 选择科室 排队 看病 付钱 取药品 把程序结构变成图解逻辑 A seq B iter E seq do H; do I; E end B end do C; D select F iter do J; F end D or G select do K; G or do L; G end D end A end A B C D E FO GO H I 程序结构 J* KO LO 图解逻辑 第 14 页 共 14 页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号