2017年南京信息工程大学F20软件工程复试仿真模拟三套题
● 摘要
一、名词解释
1. 边界值分析法
【答案】边界值分析是选取刚好等于、稍小于和稍大于等价类边界值的数据作为测试数据,而不是选取每个等价 类内的典型值或任意值作为测试数据,它是对等价类划分方法的补充。边界值分析法是一种重要的黑盒测试方法。
二、简答题
2. 简述事件如何触发操作。
【答案】(1)如果仅描述事件的模式,那状态图就会失去意义。一个对象的行为描述必须指出在事件的响应中该对象做些什么。在响应所对应的状态和事件过程中,完全依附于状态和变迁的操作。
(2)活动是需要花费时间来完成的操作
①活动与状态有关,一个活动可以是连续的操作,例如在电视机屏幕上显示一幅画面。
②一个活动也可以包括经过一段时间间隔之后的自动终结顺序操作,例如关闭阀门,或者执行一次计算。
③一个状态可以控制一个连续性活动,这种控制可以持续到一个事件使该状态发生变迁时才结束,例如电话铃响。在状态框中用 表示活动A 开始进入该状态并在退出该状态时结束。
表示时序活动A 开始进④一个状态也可以控制时序的活动,例如机器人移动一个零件,这种控制持续到完成该行动,或因另一个事件被中断而提前停止该活动时才结束。相同的记号
入该状态,当完成时停止。
(3)如果一个事件在行动完成之前发生状态的变迀,则该活动被提前终止。例如机器人遇到阻碍而停止移动。这两种使用没有本质的区别:连续性活动可以被看成延续时间不确定的时序活动。
3. 什么是测试用例?动态测试有哪些方法?
【答案】(1)测试用例的定义
“测试用例”是指为寻找程序中的错误而精心设计的一组测试数据,每个测试用例一般是一个二元组(输入数据、预期结果)。
(2)动态测试的分类
动态测试主要有两种方法:白盒法和黑盒法。但无论白盒法还是黑盒法都只能选择一些有代表性的测试用例进行有限的测试。
①白盒法测试
白盒法是从被测试程序的内部逻辑入手来设计测试用例;有六种用于有判定存在的逻辑覆盖标准,即程序内部路径的覆盖程度。对于有循环存在的覆盖用限制循环次数的办法来测试。但是对于一个实际问题的程序测试中,其路径是一个庞大的数字,基本路径测试告诉了最少路径计算办法,在分析程序控制流程图环路复杂性的基础上,导出基本路径集合,从而设计测试用例,保证这些基本路径至少执行一次,以最少的用例发现尽量多的错误。
②黑盒法测试
黑盒法着重测试被测试程序的功能,而不关心内部如何实现其功能的结构,是从用户观点出发的测试。具体方法有四种,采用黑盒法的综合策略是先用等价类划分法(包括边界值分析法,即取边值上的数)设计出测试用例,然后用错误推测法补充。如果被测试程序含有多个条件的逻辑组合,则开始就用因果图法。
4. 有限状态机有哪些优缺点?
【答案】(1)优点
有限状态机的优点在于简单易用,状态间的关系能够直观看到。
(2)缺点
任何时刻系统只能有一个状态,无法表示并发性,不能描述异步并发的系统。另外,在系统部件较多时,状态数随之增加,导致复杂性显著增长。
5. 软件工程的净室方法为什么没有得到广泛的使用?
【答案】(1)净室方法学太理论、太数学化,以至难于在真实的软件开发中使用。
(2)不需要进行单元测试,而是进行正确性验证和统计质量控制,与当前大多数软件开发方式背离。
(3)软件开发产业的成熟度。净室过程的使用需要在整个生命周期阶段定义的过程中严格的应用,因为大多数软件企业的运作还处于特定的阶段(级别),因此,还没有准备好应用哪些技术。
6. 简述瀑布模型的优缺点。
【答案】瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终 得到软件产品。开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶 段都会产生循环反馈。
(1)优点
①可强迫开发人员采用规范的方法。
②严格地规定了每个阶段必须提交的文档。
③要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
④对文档的约束,使软件维护变得容易一些,且能降低软件预算。
(2)缺点
①开发过程一般不能逆转,否则代价太大。
②实际的项目开发很难严格按该模型进行。
③客户往往很难清楚地给出所有的需求。
③软件的实际情况必须到项目开发的后期客户才能看到。
7. 面向对象建模的三种模型是什么,各自的主要功能有哪些,分别可用UML 的哪些图来描述?
【答案】(1)面向对象建模的三种模型是对象模型、动态模型、功能模型。
(2)三种模型的主要功能
①对象模型
表示静态的、结构化的系统的数据性质。它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。.
②动态模型
表示瞬时的、行为化的系统的控制性质,它规定了对象模型中对象的合法变化序列。
③功能模型
表示软件系统的功能性质,它指明了系统应该“做什么”,更直接地反映了用户对目标系统的需求。
(3)UML 图描述
①在UML 中,使用类图来建立对象模型。
②在UML 中,使用状态图和事件追踪图来建立动态模型。
③在UML 中,使用用例图来建立功能模型。
三、综合应用题
8. 某航空公司规定,乘客可以免费托运重量不超过30kg 的行李。当行李重量超过30kg 时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示与上述每种条件组合相 应的计算行李费的算法。
【答案】用判定树表示航空公司的规定如图所示。
图 航空公司规定判定树