一, 判断题(正确的在括号内打上\1.5分,共15分) Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×) PAD图在设置了五种基本控制结构后,还允许递归调用. (×)
为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×) 当验收测试通过,软件开发就完成了.(×)
完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×) 在进行总体设计时应加强模块间的联系.(×)
系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)
用黑盒法测试时,测试用例是根据程序内部逻辑设计的.(×) 在程序调试时,找出错误的位置和性质比改正该错误更难.(√)
以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)
二,单项选择题(每小题2分,共10分) 试判断下列叙述中,哪 个(些)是正确的(D)
a,软件系统中所有的信息流都可以认为是事务流 b,软件系统中所有的信息流都可以认为是变换流 c,事务分析和变换分析的设计步骤是基本相似的 A,a B,b C,c D,b和c
进行需求分析可使用多种工具,但(B)是不适用的. A,数据流图 B,PAD图 C,判定表 D,数据词典 在详细设计阶段,经常采用的工具有(A). A,PAD B,SA C,SC D,DFD
详细设计的结果基本决定了最终程序的(C) A,代码的规模 B,运行速度 C,质量 D,可维护性
使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准. A,程序的内部逻辑 B,程序的复杂程度 C,该软件的编辑人员 D,程序的功能
三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.) (ABCD)可以作为模块.
A,子程序 B,函数 C,过程 D,编译文件 下面哪些测试属于黑盒测试(BCD).
A,路径测试 B,等价类划分 C,边界值分析 D,错误推测 E,循环测试 下列属于度量效益方法的是(ABCD).
A,货币的时间价值 B,投资回收期 C,收入 D,投资回报率 软件维护的策略包括(BCD).
A,定期检测维护 B,改正性维护 C,适应性维护 D,完善性维护 下列属于软件测试过程的是(ABE).
A,单元测试 B,组装测试 C,内核测试 D,法律验证 E,确认测试 四,简答题(每题6分,共24分)
耦合性和内聚性有几种类型 其耦合度,内聚强度的顺序如何
答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高 强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱 请举例说明什么是多态,什么是重载
答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法. 重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别. 例: public class A{ int age; String name;
public void setValue(int i) { age=i; }
public void setValue(String s) { name=s; }
什么是数据字典 简述数据字典与数据流图的关系.
答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分) 简述编码风格的重要性.
答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量. 面向对象的测试和传统开发方法的测试有什么不同
答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略. 五,分析应用题(20分)
求一组数组中的最大数, 数组表示为A(n) ,n=1,2……n的自然数.(10分) 请画出程序流程图(4分) 请画出该算法的N-S图(3分) 请用PAD图来表示该算法(3分) 答案:
2. 下面是某程序的流程图:(10分) 计算它的环路复杂性.(3分) 答案:7
为了完成基本路径测试,求它的一组独立的路径.(7分) 答案:
路径1: (0)—①—(13)—(19) 路径2: (0)—②—③—(14)—(19) 路径3: (0)—②—④—⑤—(15)—(19) 路径4: (0)—②—④—⑥—⑦—(16)—(19) 路径5: (0)—②—④—⑥—⑧—⑨—(17)—(19)
路径6: (0)—②—④—⑥—⑧—⑩—(11)—(18)—(19)
路径7: (0)—②—④—⑥—⑧—⑩—(12)—(19)
六,阅读下列说明和数据流图,回答问题1至问题4,将解答填入答题纸的对应栏内.(12分) [说明]
某基于微处理器的住宅安全系统,使用传感器(如红外探头,摄像头等)来检测各种意外情况,如非法进入, 火警,水灾等 .房主可以在安装该系统时配置安全监控设备(如传感器,显示器,报警器等),也可以在系统运 行时修改配置,通过录像机和电视机监控与系统连接的所有传感器,并通过控制面板上的键盘与系统进行信息 交互.在安装过程中,系统给每个传感器赋予一个编号(即id)和类型,并设置房主密码以启动和关闭系统,设 置传感器事件发生时应自动拨出的电话号码.当系统检测到一个传感器事件时,就激活警报,拨出预置的电话 号码,并报告关于位置和检测到的事件的性质等信息.
加工4的细化图 [问题1](3分)
数据流图1(住宅安全系统顶层图)中的A和B分别是什么 答案:A:传感器: B:报警器 [问题2](3分)
数据流图2(住宅安全系统第0层DFD图)中的数据存储\配置信息\会影响图中的哪些加工 答案:监控传感器,显示信息和状态 [问题3](6分)
将数据流图3(加工4的细化图)中的数据流补充完整,并指明加工名称,数据流的方向(输入/输出)和数据流名 称.
答案: 4.4\读传感器\添加输入数据流\传感器状态\4.1\显示格式\添加输出数据流\传感器数据\4.5\拨号\添加输出数据流\电话拨号\
七,请以自己的实际体会说明项目管理的意义和作用.(8分)
答案:(要点)软件项目管理就是对软件工程项目开发过程的管理.具体地说,就是对整个软件生存期的一切 活动进行管理,以达到提高生产率,改善产品质量的目的.
软件项目管理的职能:(1)制定计划:规定待完成的任务,要求,资源,人力和进度等.(2)建立项 目组织:为实施计划,保证任务的完成,需要建立分工明确的责任机构.(3)配备人员:任用各种层次 的技术人员和管理人员.(4)指导:鼓励和动员软件人员完成所分配的任务.(5)检验:对照计划或 标准监督检查实施的情况.