当前位置:问答库>考研试题

2017年江西财经大学软件工程复试仿真模拟三套题

  摘要

一、名词解释

1. 抽象

【答案】把在现实世界中一定事物、状态或过程之间的共性集中和概括起来,暂时忽略它们之间的差异,这就是抽象。即抽象就是抽出事物的本质特性而暂时不考虑它们的细节。

二、简答题

2. 使用边界值分析方法设计测试用例的设计原则有哪些?

【答案】(1)如果输入条件规定了值的范围,可以选择正好等于边界值的数据作为合理的测试用例,还要选择刚好越过边界值的数据作为不合理的测试用例。

(2)如果输入条件指出了输入数据的个数,则按最大个数、最小个数、比最小个数少1、比最大个数多1等情况分别设计测试用例。

(3)对每个输出条件分别按照以上一组(1)和(2)确定输出值的边界情况。由于输出值的边界不与输入值的边界值相对应,所以要检查输出值的边界不一定可能,要产生超出输出值之外的结果也不一定能做到,但必要时还需试一试。

(4)如果程序的规格说明书给出的输入或输出域是个有序集合(如顺序文件、线性表、链表等),则应该选 取集合的第一个元素和最后一个元素作为测试用例。

3. 什么是软件工程?简述软件工程的基本原理及软件工程的目标。

【答案】(1)软件工程的定义

①软件工程是从管理和技术两方面研究如何更好地开发和维护计算机软件的一门学科。

②软件工程采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术 和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

(2)软件工程的基本原理

①用分阶段的生命周期计划严格管理。

①坚持进行阶段评审。

②实行严格的产品控制。

③采用现代程序设计技术。

④结果应能清楚地审查。

⑤开发小组的人员应该少而精。

⑥承认不断改进软件工程实践的必要性。

(3)软件工程的目标

软件工程的目标是在给定成本和进程的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性、可互操作性并满足用户需要的高质量软件产品。

4. 说明对象模型的特征。

【答案】(1)对象模型表示了静态的、结构化的、系统数据性质,描述了系统的静态结构,表现了对象间的相互关系。

(2)模型主要关心系统中对象的结构、属性和操作使用对象图来描述。

5. 列举用主动对象表示控制流时应遵循的应用规划。

【答案】(1)在一个表示进程的主动对象中,有且仅有一个表示进程的主动服务。

(2)如果要把一个进程和隶属于它的线程分散到不同的对象中去表示,则尽可能使每个对象中只含有一个表示线程的服务。

(3)如果要把进程和隶属于它的线程放在一个对象中表示,就应该把这个进程的全部线程都放在同一个对象中,避免一部分集中,一部分分散。

6. 画数据流图的步骤是什么?画数据流图应该注意什么事项?

【答案】(1)画数据流图的步骤

①首先画系统的输入输出,即先画顶层数据流图

顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据,这些输入数据从哪里来;有哪些输出数据,输出到哪里去。这样就定义了系统的输入、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。顶层图只有一张。

②画系统内部,即画下层数据流图

一般将层号从0开始编号,采用自顶向下、由外向内的原则。画0层数据流图时,一般根据当前系统工作分组情况,并按新系统应有的外部功能,分解顶层流图的系统为若干子系统,决定每个子系统间的数据接口和活动关系。画更下层数据流图时,则分解上层图中的加工,一般沿着输入流的方向,凡数据流的组成或值发生变化的地方则设置一个加工,这样一直进行到输出数据流(也可从输出流到输入流方向画)。如果加工的内部还有数据流,则对此加工在下层图中继续分解,直到每一个加工足够简单,不能再分解为止,不再分解的加工称为基本加工。

(2)画数据流图时要注意的事项

①命名

不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。数据流的名字代表整个数据流的内容,而不仅仅是它的某些成分,不便用缺乏具体含义的名字,如“数据”、“信息”等,加工名也应反映整个处理的功能,不使用“处理”、“操作”这些笼统的词。

②画数据流而不是控制流

数据流图反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是名词或名词

短语,整个图中不反映加工的执行顺序。

③一般不画物质流

数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。

④每个加工至少有一个输入数据流和一个输出数据流

反映出此加工数据的来源与加工的结果。

⑤加工点的编号

如果一张数据流图中的某个加工点分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图应编号,子图上的所有加工也应编号,子图的编号就是父图中相应加工的编号,加工的编号由子图号、小数点及局 部号组成。

⑥父图与子图的平衡

子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。有时考虑平衡可忽略一些枝节性的数据流(如出错处理)。父图与子图的平衡,是分层数据流图中的重要性质,保证了数据流图的一致性,便于分析人员的阅读与理解。

⑦局部数据存储

在分层处理的过程中,当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。一个局部数据存储只要当它作为某些加工的数据接H 或某个加工特定的输入或输出时,就把它画出来,这样有助于实现信息隐藏。

⑧提高数据流图的易理解性

注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。分解时要注意子加工的独立性,还应注意均匀性,特别是画上层数据流时,要注意将一个问题划分成几个大小接近的组成部分,这样做便于理解;不要在一张数据流图中,某些加工已是基本加工,某些加工还要分解好几层。

7. 什么是事件?

【答案】事件是发生在某一个时问点的一件事,例如,用户单击左边按钮,或者某次航班从北京出发。

三、综合应用题

8. 什么是动态模型?建立动态模型时主要使用哪些图形符号?这些符号的含义是什么?

【答案】(1)动态模型表示瞬时的、行为化的系统的控制性质,它规定了对象模型中对象的合法变化序列。

(2)在UML 中,使用状态图和事件追踪图来建立动态模型。

(3)其符号的含义为:

①状态图表示需要考察的对象的动态行为。