2018年山西大学计算机与信息技术学院859软件工程专业基础之软件工程导论考研强化五套模拟题
● 摘要
一、名词解释
1. 信息隐藏
【答案】信息隐藏在信息安全保障体系的诸多方面发挥着重要作用,它指的是在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对不需要这些信息的其他模块来说,是不能访问的,也是不可见的。
2. 重用性
【答案】利用标准化的软件模块快速构建特定的应用系统,不做修改或稍加改动就可以在不同环境中多次重复使用。
二、简答题
3. 动态测试的四个阶段分别是什么?请简述各阶段的主要工作?
【答案】(1)动态测试的四个阶段
动态测试的四个阶段分别是单元测试、集成测试、系统测试、确认测试。
(2)动态测试各阶段的主要工作
①单元测试
把每个模块作为一个单独的实体来测试,检验其正确性。目的是保证每个模块作为一个单元能正确运行。模块测试所发现的是编码和详细设计的错误。
②集成测试
把经过单元测试的模块放在一起形成一个子系统来测试。模块相互间的协调和通信是这个测试过程中的主要 问题,即集成测试着重测试模块的接口。
③系统测试
把经过测试的子系统装配成一个完整的系统来测试。系统测试发现的是软件设计中和需求说明中的错误。
④确认测试
把软件系统作为单一的实体进行测试,它是在用户积极参与下进行的,而且主要使用实际数据进行测试。确认测试的目的是验证系统确实能够满足用户的需要,确认测试发现的是系统需求说明书中的错误。
4. 简述事件如何触发操作。
【答案】(1)如果仅描述事件的模式,那状态图就会失去意义。一个对象的行为描述必须指出在事件的响应中该对象做些什么。在响应所对应的状态和事件过程中,完全依附于状态和变迁的操作。
(2)活动是需要花费时间来完成的操作
①活动与状态有关,一个活动可以是连续的操作,例如在电视机屏幕上显示一幅画面。
②一个活动也可以包括经过一段时间间隔之后的自动终结顺序操作,例如关闭阀门,或者执行一次计算。
③一个状态可以控制一个连续性活动,这种控制可以持续到一个事件使该状态发生变迁时才结束,例如电话铃响。在状态框中用 表示活动A 开始进入该状态并在退出该状态时结束。
表示时序活动A 开始进④一个状态也可以控制时序的活动,例如机器人移动一个零件,这种控制持续到完成该行动,或因另一个事件被中断而提前停止该活动时才结束。相同的记号
入该状态,当完成时停止。
(3)如果一个事件在行动完成之前发生状态的变迀,则该活动被提前终止。例如机器人遇到阻碍而停止移动。这两种使用没有本质的区别:连续性活动可以被看成延续时间不确定的时序活动。
5. 根据瀑布模型为下列任务排序:验收测试、项目计划、单元测试、需求复审、成本估计、总体设计、设计复审、市场调研、详细设计、系统测试、实现、编制需求规格说明书。
【答案】根据题意可以把上述任务分为:
A. 市场调研
B. 项目计划、成本估计、编制需求规格说明书(同时进行)
C. 需求复审
D. 总体设计
E. 详细设计
F. 设计复审
G. 实现
H. 单元测试
I. 系统测试
J. 验收测试
根据瀑布模型的要求,上述任务正确的排序应为ABCDEFGHIJ 。
6. 列举出几种情况下运用整体一部分结构而实现或支持的复用。
【答案】(1)在两个或更多的对象类中都有一组属性和服务描述这些对象的一个相同的组成部分。把它们分离出来作为部分对象,建立整体一部分结构,这些属性和服务就被多个类复用,从而简化了它们的描述。
(2)系统中已经定义了某类对象,在定义其他对象时,发现其中一组属性和服务与这个已定义的对象是相同的,那就不必再重复地定义这些属性与服务,只需建立它与前一类对象之间的整体一部分结构。
(3)通过整体一部分结构提取可复用构件,以支持领域范围的复用问题。如果一个对象类中有一组属性和服务描述了该对象的一个独立部分,即使从本系统看并不需这样一个部分对象,只要它是一种在本领域经常使用的对象,就可把它从整体中分离出来作为部分对象,使它的类定义成为一个应用范围较广的可复用构件。
三、综合应用题
7. 在测试一个长度为24000条指令的程序时,第一个月由甲、乙两名测试员各自独立测试这个程序。经一 个月测试后,甲发现并改正20个错误,使MTTF 达到10h 。与此同时,乙发现24个错误,其中6个甲也发现了。 以后由甲一个人继续测试这个程序。问:
(1)刚开始测试时程序中总共有多少个潜藏的错误?
(2)为使MTTF 达到60h , 必须再改正多少个错误?还需用多长测试时间?
(3)画出MTTF 与集成测试时间之间的函数关系曲线。
【答案】(1)根据公式:可得:
即刚开始测试时程序中总共有80个错误。
(2)根据估算平均无故障时间的公式可得:
即还需要改正50个错误。根据甲改正进度,还需要3个月。 计算可得,
(3)MTTF 与集成测试时间之间的函数关系曲线,如图所示。
图 MTTF 与测试时间的关系