软件工程复习题(看完必过)_第1页
软件工程复习题(看完必过)_第2页
软件工程复习题(看完必过)_第3页
软件工程复习题(看完必过)_第4页
软件工程复习题(看完必过)_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、复习题16给出一组数从小到大的排序算法,分别用下列工具描述其详细过程:(1)流程图;(2)N-S图;(3) PDL语言。17.欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。绘制该系统的数据流图和软件结构图。

2、27.如图显示某程序的逻辑结构。 试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。NYN设计测试方案覆盖种类需满足的条件测试数据期望结果 判定覆盖A>0,B=0A=2,B=0执行S1A>0,B¹0或A£0,B=0或A£0,B¹0A=2,B=1或A=1,B=0或A=1,B=1 执行S2 条件覆盖以下四种情况各出现一次  A>0B=0A=2,B=0执行S1A£0B¹0A=1,B=1执行S2 条件组合覆盖A>0,B=0A=2,B=

3、0执行S1A>0,B¹0A=2,B=1执行S2A£0,B=0A=1,B=0执行S2A£0,B¹0A=1,B=1执行S222.试由程序流程图导出程序图1入口2A>1 F38B=0 T TX=X/A 4 FA=25 TX>1 F96X=X+1 T 7出口 F(a)程序流程图 (b)导出程序图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

4、的答案中满足判定覆盖的测试用例是_1_ (2分) 在1-3的答案中满足条件覆盖的测试用例是_3_ (2分) 在1-3的答案中满足判定/条件覆盖的测试用例是_2_ (2分) 39工资计算系统中的一个子系统有如下功能: ( 1 )计算扣除部分由基本工资计算出应扣除(比如水电费、缺勤)的部分; ( 2 )计算奖金部分根据职工的出勤情况计算出奖励金; ( 3 )计算工资总额部分根据输入的扣除额及奖金计算出总额; ( 4 )计算税金部分由工资总额中计算出应扣除各种税金; ( 5 )生成工资表根据计算总额部分和计算税金部分传递来的有关职工工资的详细信息生成工资表。 试根据要求画出该问题的数据流程图。40用

5、自顶向下结构化程序设计方法编写直接选择排序从小到大排列的程序。要求保持良好的程序风格,加上必要的注释()。用C语言编写:/*程序名称:直接选择排序;*/*作者:陈明锐;*/*完成日期:2006年6月9日;*/*过程头:selectsort(int *A;int N)*/*输入参数:N为元素个数(N<=1000);A整型数组,从1到N存放待排序元素;*/*返回结果:数组A为指针,由它返回排序结果;*/void selectsort(int *A;int N)int i,j,k,x;for (i=1;i<N;i+) /*求第I个最小值*/ k=i; /*先假设I位置上的值最小*/for

6、 (j+=i;j<=N;j+) /*求I到N位置上的最小值*/ if (A(j)<A(k)) k=j;if (k<>i) /*需要交换A(K)和A(I)的值*/ /*交换A(K)和A(I)*/ x=A(i); A(i)=A(k);A(k)=x /*结束交换*/ /*求出了第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

7、f2 f3 f4 主模块 Get f2 B Get f3 Read f1主模块 Read f1主模块 A C Write f4主模块 f1 f1 f2 f2 f3 f3 f4 f4 3、下图为程序段的流程图,请按照语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖准则分别为程序设计测试用例。1.语句覆盖测试用例输入A B X覆盖语句输出A B XTest13 0 60、1、2、3、4、53 0 32.判定覆盖测试用例输入A B X覆盖判定输出A B XTest13 0 6TA、TB3 0 3Test21 0 0!TA、!TB1 0 03条件覆盖测试用例输入A B X覆盖条件输出A B X

8、Test14 0 8T1、 T2、T3、 T44 0 3Test21 1 0!T1、!T2、!T3、!T41 1 04判定/条件覆盖测试用例输入A B X覆盖条件覆盖判定输出A B XTest14 0 8T1、T2、T3、T4TA、TB4 0 3Test21 1 0!T1、!T2、!T3、!T4!TA、!TB1 1 05条件组合覆盖测试用例输入A B X覆盖条件输出A B XTest14 0 8T1、 T2、T3、 T44 0 3Test21 1 0!T1、!T2、!T3、!T41 1 0Test34 1 0T1、!T2、T3、!T44 1 1Test41 0 2!T1、T2、!T3、T41

9、0 34、下面列出了一段伪码程序,使用基本路径测试方法,完成流图的绘制,计算环形复杂度,并用语句编号标明各条独立路径以及对应的输入数据和预期输出。1: INPUT(A,B,C,D)2: IF ( A > 0 )3: AND ( B > 0 )4: THEN X=A+B5: ELSE X=A-B6: END7: IF ( C > A)8: OR ( D < B )9: THEN Y=C-D10: ELSE Y=C+D11: END12: PRINT(X,Y)流图如下:基本路径数=流图的环形复杂度=5独立路径:路径1: 1 2 5 6 7 9 11 12输入: A=-1,B

10、=1,C=0,D=2 (任意) ;预期输出:X=-2,Y=-2路径2: 1 2 3 5 6 7 9 11 12输入: A=1,B=-1,C=2,D=2;预期输出:X=2,Y=0路径3: 12 3 4 6 7 9 11 12输入: A=1,B=1,C=2,D=2;预期输出:X=2,Y=0路径4:1 2 3 4 6 7 8 9 11 12输入:A=1,B=1,C=0,D=-1;预期输出:X=2,Y=1路径5:1 2 3 4 6 7 8 10 11 12输入:A=1,B=1,C=0,D=2;预期输出:X=2,Y=2设计题如图显示某程序的逻辑结构。试为它设计足够的测试用例,分别实现对程序的判定覆盖、条

11、件覆盖和条件组合覆盖。 对一个包含10000条机器指令的程序进行一个月集成测试后,总共改正了15个错误,此时MTTF=10h,经过两个月的测试后,总共改正了25个错误,MTTF=15h。(1)程序中总的错误数为多少?(2)为达到MTTF=100h,还要改正多少个错误?(1) 10 =10000/K(ET - 15) 15 =10000/K(ET - 25)K = 100/3 ET =45(2) Ec = 45 - 3 =42 还需改正42-25 = 17个错误。对一个长度为100,000条指令的程序进行测试,记录下来的数据如下: 测试开始, 发现错误个数为0; 经过160小时的测试, 累计改正

12、100个错误, 此时, MTTF = 0.4小时; 又经过160小时的测试, 累计改正300个错误, 此时, MTTF = 2小时;(1) 估计程序中固有的错误总数;(2) 为使MTTF达到10小时, 必须测试多少个错误?1)MTTF = IT / ( k * (Et - Ec(t) )所以0.4 = IT / ( k * (Et - 100) )2 = IT/ ( k * (Et - 300) )所以可以求出Et =3502)由1)可以知道k = IT / 2(Et - Ect) = 100000 / 2(350 - 300) = 100000 / 100 = 1000;所以MTTF = 1

13、0 = 100000 / 1000(Et - Ec) = 100/(Et - Ec) = 100/(350 - Ec)所以Ec = 340 340-300 =40个错误。某公司对已开发的软件产品采用错误植入模型来进行测试和评估。评测部对待测软件人为植入了17个故障;在开始测试的一小段时间内,发现了300个固有故障;发现了植入的故障3个,被测程序的机器指令条数为3*105。(1) 请估算出被测程序的固有故障的个数N的值。(2) 若通过一段时间后,发现的错误个数为1600时,请估算此程序的平均无故障时间。(3) 若要求把此平均无故障时间再提高2倍,应至少再排除多少个错误?(1) ET = 17/3

14、*300 =1700(2) MTTF = 3*105 / 200 * (1700 -1600) =15 h(3) Ec = 1700 - 3*105 / 200*30 =1650还需改正1650-1600 =50个错误。2007年下午试题三(共15分)阅读下列说明和图,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。说明 某图书管理系统的主要功能如下:1图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。2资源可以分为两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者

15、和介质类型(CD 或者磁带)。3读者信息保存在图书管理系统的读者信息数据库中,记录的信息包括:读者的识别码和读者姓名。系统为每个读者创建了一个借书记录文件,用来保存读者所借资源的相关信息。现采用面向对象方法开发该图书管理系统。识别类是面向对象分析的第一步。比较常的识别类的方法是寻找问题描述中的名词,再根据相关规则从这些名词中删除不可能成为类的名词,最终得到构成该系统的类。表 3-1 给出了说明中出现的所有名词。过对表 3-1 中的名词进行分析,最终得到了图 3-1 所示的 UML 类图(类的说明如表 3-2 所示)。问题1(3 分)表 3-2 所给出的类并不完整,根据说明和表 3-1,将图 3

16、-1 中的(a)(c)处补充完整。问题2(6 分)根据说明中的描述,给出图 3-1 中的类 CatalogItem 以及(b)、(c)处所对应的类的关键属性(使用表 3-1 中给出的词汇),其中,CatalogItem 有 4 个关键属性;(b)、(c)处对应的类各有 2 个关键属性。问题 3(6 分)识别关联的多重度是面向对象建模过程中的一个重要步骤。根据说明中给出的描述,成图 3-1 中的(1)(6)。 2007下半年试题三(共15分)【说明】已知某唱片播放器不仅可以播放唱片,而且可以连接电脑并把电脑中的歌曲刻录到唱片上(同步歌曲)。连接电脑的过程中还可自动完成充电。关于唱片,还有以下描述

17、信息:1每首歌曲的描述信息包括:歌曲的名字、谱写这首歌曲的艺术家以及演奏这首歌曲的艺术家。只有两首歌曲的这三部分信息完全相同时,才认为它们是同一首歌曲。艺术家可能是一名歌手或一支由2名或2名以上的歌手所组成的乐队。一名歌手可以不属于任何乐队,也可以属于一个或多个乐队。2每张唱片由多条音轨构成;一条音轨中只包含一首歌曲或为空,一首歌曲可分布在多条音轨上;同一首歌曲在一张唱片中最多只能出现一次。3. 每条音轨都有一个开始位置和持续时间。一张唱片上音轨的次序是非常重要的,因此对于任意一条音轨,播放器需要准确地知道,它的下一条音轨和上一条音轨是什么(如果存在的话)。根据上述描述,采用面向对象方法对其进

18、行分析与设计,得到了如表3-1所示的类列表、如图3-1所示的初始类图以及如图3-2所示的描述播放器行为的UML状态图类 名说 明 Artist艺术家 Song歌曲Band乐队Musician歌手Track音轨Album唱片【问题1】(3分) 根据说明中的描述,使用表3-1给出的类的名称,给出图3-1中的AF所对应的类。【问题2】(6分) 根据说明中的描述,给出图3-1中(1)(6)处的多重度。【问题3】(4分)图3-1中缺少了一条关联,请指出这条关联两端所对应的类以及每一端的多重度。类多重度2009下半年试题三(共 15 分)阅读下列说明和 UML 图,回答问题 1 至问题 4,将解答填入答题纸的对应栏内。【说明】某企业为了方便员工用餐,为餐厅开发了一个订餐系统(COS:Cafeteria OrderingSystem),企业员工可通过企业内联网使用该系统。 企业的任何员工都可以查看菜单和今日特价。 系统的顾客是注册到

温馨提示

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

评论

0/150

提交评论