软件工程期末考试试题(共5页).doc
精选优质文档-倾情为你奉上一、 填空题(每空1分,共25分)1. 软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试和运行和维护。2. 基于软件的功能划分,软件可以划分成_系统软件_、支撑软件、应用软件_三种。3. 可行性研究,应从 经济可行性 、技术可行性、运行可行性、法律可行性和开放方案可行性等方面研究。4. 系统流程图是描绘 物理系统 的传统工具。它的基本思想是用图形符号以 黑盒子形式 描绘系统里面的每个部件5. 数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工 、 数据流 和 数据存储文件。6. 结构化分析方法是面向_数据流_进行需求分析的方法。结构化分析方法使用_数据流图DFD_与_数据字典_来描述。7. 继承性 是自动地共享类、子类和对象中的方法和数据的机制。8. 软件详细设计工具可分为3类,即_图示工具_、_设计语言_和_表格工具_。9. 为了在软件开发过程中保证软件的质量,主要采取下述措施:_审查_、复查和管理复审、_测试_。10. 大型软件测试包括 单元测试 、 集成测试 、确认测试和 系统测试四个步骤。二、 单项选择题(每小题2分,共20分)1. 软件设计中划分模块的一个准则是( C )。A、 低内聚低耦合 B.低内聚高耦合 C.高内聚低耦合 D.高内聚高耦合2. Jackson设计方法是由英国的M. Jackson提出的,它是一种面向( C )的软件设计方法。A、 对象 B.数据流 C.数据结构 D.控制结构3. 试判断下列叙述中,哪 个(些)是正确的( C )。a、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的A、a B、b C、c D、b和c4. ( A )是用户和设计交换最频繁的方法。A、 原型化方法 B、瀑布模型方法 C. 螺旋模型方法 D、构件组装模型5. 软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )。A、 硬件环境 B、软件开发的环境 C.软件开发工具和软件开发的环境 D、 开发人员的素质6. 20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言( D )。A、 PASCAL B、 VISUAL BASIC C. C+ D、 汇编语言7. 软件测试的目的是?( D )A、 证明软件的正确性 B.找出软件系统中存在的所有错误C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误8. 使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。A、程序的内部逻辑 B、程序的复杂程度C、该软件的编辑人员 专心-专注-专业D、程序的功能9. 软件维护工作的最主要部分是( C )。A、 校正性维护 B、适应性维护 C.完善性维护 D、预防性维护10. PDL是( B )语言。A、 高级程序设计语言 B、伪码式 C、中级程序设计语言 D、低级程序设计语言三、 判断题(正确的在括号内打上“”,错误的打上“×”。每题2分,共20分)1. 用黑盒法测试时,测试用例是根据程序内部逻辑设计的。( X )2. 发现错误多的程序模块,残留在模块中的错误也多。( V )3. 为了加快软件维护作业的进度,应尽可能增加维护人员的数目。( X )4. 软件维护就是改正软件中的错误。( X )5. 质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。( V )6. 软件开发的主要任务是写程序。 ( X )7. 测试只能证明程序有错误,不能证明程序没有错误。( V )8. 模块化程序设计中,模块越小,模块化的优点越明显。一般来说,模块的大小都在10行以下。( X )9. 在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。( X )10. 程序设计风格指导原则提出,尽量多使用临时变量。( X )三程序设计与算法描述题(共15分)1. 根据下面的伪代码程序,完成相应要求。(8分) START IF C1THEN WHILE C2 DO f ENDDOELSE BLOCK g p ENDBLOCK ENDIF REPEAT UNTIL C3qr ENDREP STOP1) 画出程序流程图(4分)2) 用NS图描述(4分)1)程序流程图如下:4分(2)N-S图 如下:4分2. 有下列伪码程序:STARTINPUT (M,N)IF M>=10 THEN X=10 ELSE X=lENDIFIF N>=20 THEN Y=20 ELSE Y=2ENDIFPRINT(X,Y)STOP设计该程序的语句覆盖和路径覆盖测试用例。(7分)设计该程序的语句覆盖和路径覆盖测试用例。1.M=9(或<l0),N=l9(或<20);2.M=l0(或>=10),N=20(或>=20)路径覆盖的测试用例为 M=9,N=19; M=9、N=20; M=l0,N=l9; M=10,N=20