软件工程期末考试总复习题及答案[3].docx
《软件工程期末考试总复习题及答案[3].docx》由会员分享,可在线阅读,更多相关《软件工程期末考试总复习题及答案[3].docx(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、复习题填空题1. 在信息处理和计算机领域内,一般认为软件是 _程序_、_文档_ 和_数据_ 。2. 数据流图的根本组成部分有 _数据的源点与终点_、 数据流_、 加工_、 数据文件_。3. 数据流图和数据字典共同构成了系统的 _逻辑_模型,是需求规格说明书的主要组成部分。4. 划分模块时尽量做到_高内聚、低耦合_,保持模块的独立性,尽量运用公共模块。 5. 类的实例化是_对象_。 6. 人们常用硬件牢靠性的定量度量方法来度量软件的牢靠性和可用性,常用的度量软件可7. 靠性的两个指标是_胜利地运行的概率_和_平均故障时间_。 8. 将待开发的软件细化,分别估算每一个子任务所须要的开发工作量,然后
2、将它们加起来,9. 将得到软件的总开发量。这种本钱估算方法称为_自底向上_。 10. 假设一个模块被 n 个模块调用,其中干脆的上级模块的个数是 m 个 m1,B=0A=2,B=0执行S1A1,B0或A1,B=0或A1,B0A=2,B=1或A=1,B=0或A=1,B=1执行S2条件覆盖以下四种状况各出现一次A1B=0A=2,B=0执行S1A1B0A=1,B=1执行S2条件组合覆盖A1,B=0A=2,B=0执行S1A1,B0A=2,B=1执行S2A1,B=0A=1,B=0执行S2A1,B0A=1,B=1执行S228.某城市 号码由三部分组成。它们的名称和内容分别是: 地区码:空白或三位数字; 前
3、 缀:非0或1的三位数字; 后 缀:4位数字。 假定被测程序能承受一切符合上述规定的 号码,回绝全部不符合规定的 号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。 划分等价类输入条件有效等价类无效等价类地区码1.空白;2.三位数;1. 有非数字字符;2.少于三位数字;3.多于三位数字。前 缀3.从200到999之间的三位0;1; 7.少于三位数字;8.多于三位数字。后 缀4.四位数字。9.有非数字字符;10.少于四位数字;11.多于四位数字。设计测试方案方案内容输 入预期输出地区码前缀后缀1空白200999之间的三位数字四位数字( )276-2345有效2三位数字四位数字(635)
4、805-9321有效3有非数字字符(20A)723-4567无效4少于三位数字(33 )234-5678无效5多于三位数字(5555)345-6789无效6有非数字字符(345)5A2-3456无效7起始位为0(345)012-3456无效8起始位为1(345)132-3456无效9少于三位数字(345) 92-3456无效10多于三位数字(345)4562-3456无效11有非数字字符(345)342-3A56无效12少于四位数字(345)342- 356无效13多于四位数字(345)562-34567无效29.为什么说软件的维护是不行防止的?因为软件的开发过程中,一般很难检测到全部的错误,
5、其次软件在应用过程中须要随用户新的要求或运行环境的变更而进展软件的修改或完胜利能的增删等,为了进步软件的应用程度和运用寿命,软件的维护是不行防止的。1入口2A1 F38B=0 T TX=X/A 4 FA=25 TX1 F96X=X+1 T 7出口 Fa程序流程图 b导出程序图30.软件的维护一般分为哪几类?完善性维护:满意用户在运用过程中提出增加新的功能或修改已有功能,以满意用户日益增长的须要而进展的工作; 适应性维护:是软件适应新的运行环境而进展的工作;纠错性维护:订正开发期间未觉察的遗留错误,即在程序运用期间觉察的程序错误进展诊断和改正的过程;预防性维护:为了改善将来的可维护性或牢靠性而修
6、改软件的工作。31.确定软件可维护性的因素?(1) 软件的可理解性、可测试性、可修改性; (2) 文档描绘符合要求、用户文档简洁明确、系统文档完好并且标准。32.分析软件危机产生的主要缘由有哪些? 答:导致软件危机的主要缘由有: 1软件日益困难和浩大2软件开发管理困难和困难3软件开发技术落后4消费方式落后5开发工具落后6软件开发费用不断增加 1 个要点1分,只要答上5个要点得5分!33.说明构造化程序设计的主要思想是什么? 答:1自顶向下、逐步求精的程序设计方法2分2运用3种根本限制构造、单入口、单出口来构造程序。3分 34、软件测试的根本任务是什么?测试与纠错有什么区分?答:软件测试的根本任
7、务是通过在计算机上执行程序,暴露程序中潜在的错误。测试和纠错目的和任务都不一样,测试是为了觉察程序的错误,纠错是为了定位和订正错误,从而消退软件故障,保证程序的牢靠运行。35.软件测试包括哪些步骤?同时说明这些步骤的测试目的是什么? 答:1单元测试,目的是代码到达模块说明书的要求2集成测试,目的是将经过单元测试的模块逐步组装成具有良好一样性的完好的程序3确认测试,目的是确认程序系统是否满意软件需求规格说明书的要求4系统测试,目的是检查能否与系统的其余部分协调运行,并且完成SRS对他的要求。36.需求分析与软件设计二个阶段任务的主要区分是什么? 答:需求分析定义软件的用户需求,即定义待开发软件能
8、做什么2.5分 软件设计定义软件的实现微小环节以满意用户需求,即探讨如何实现软件。2.5分 37.说明软件测试和调试的目的有何区分? 答:测试的目的是推断和觉察软件是否有错误2。5分调试的目的是定位软件错误并纠38. 根据以下被测试的流程图,选择相应的答案。(8分) (1) A=2, B=0, X=4 (2)A=2, B=1, X=1 (3)A=2, B=0, X=1 A=1, B=1, X=1 A=3, B=0, X=3 A=1, B=1, X=2 在1-3的答案中满意断定覆盖的测试用例是_1_ (2分) 在1-3的答案中满意条件覆盖的测试用例是_3_ (2分) 在1-3的答案中满意断定/条
9、件覆盖的测试用例是_2_ (2分) 39工资计算系统中的一个子系统有如下功能: 1 计算扣除部分由根本工资计算出应扣除比方水电费、缺勤的部分; 2 计算奖金部分根据职工的出勤状况计算出嘉奖金; 3 计算工资总额部分根据输入的扣除额及奖金计算出总额; 4 计算税金部分由工资总额中计算出应扣除各种税金; 5 生成工资表根据计算总额部分和计算税金部分传递来的有关职工工资的具体信息生成工资表。 试根据要求画出该问题的数据流程图。40用自顶向下构造化程序设计方法编写干脆选择排序从小到大排列的程序。要求保持良好的程序风格,加上必要的注释。用C语言编写:/*程序名称:干脆选择排序;*/*作者 */*完成日期
10、:2006年6月9日;*/*过程头:selectsortint *A;int N*/*输入参数:N为元素个数N=1000;A整型数组,从1到N存放待排序元素;*/*返回结果:数组A为指针,由它返回排序结果;*/void selectsortint *A;int Nint i,j,k,x;for (i=1;iN;i+) /*求第I个最小值*/ k=i; /*先假设I位置上的值最小*/for (j+=i;j=N;j+) /*求I到N位置上的最小值*/ if (AjAk) k=j;if ki /*须要交换AK和AI的值*/ /*交换AK和AI*/ x=Ai; Ai=Ak;Ak=x /*完毕交换*/
11、/*求出了第I个最小值*/ /*SELECTSORT*/41.把事务型数据流图映射成软件构造图:A B C + f1 f2 f4 f5 f3 主模块 Read f1 A B C Write f4 Write f5主模块 f1 f2 f1 f3 f4 f5 42.把变换型数据流图映射成软件构造图:B A C f1 f2 f3 f4 主模块 Get f2 B Get f3 Read f1主模块 Read f1主模块 A C Write f4主模块 f1 f1 f2 f2 f3 f3 f4 f4 43、什么是软件复用?简述软件复用和软件共享、软件移植的差异。答:软件复用是指在构造新的软件系统的过程中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 期末考试 复习题 答案
限制150内