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

2017年河南大学软件工程(同等学力加试)考研复试核心题库

  摘要

一、名词解释

1. 问题分析图PAD

【答案】问题分析图(PAD )是由程序流程图演化而来,用二维树形结构的图来表示程序的控制流,将其翻译成 程序代码比较容易。它既可以用来表示程序逻辑,也可以用来描述数据结构,支持结构化程序设计(SP )方法, 仅具有顺序、选择、循环三类基本成分。

二、简答题

2. 测试面向对象软件时,单元测试、集成测试和确认测试各有哪些新特点?

【答案】(1)单元测试,是在类层面上的测试。由于继承和复合,类(或对象)在很多情况下已不再是单纯意义上的单个操作。因此,具体的测试将在多有与操作有关的每个子类语境中进行。

(2)集成测试,由于面向对象软件中类的成分直接和间接交互,使得传统测试放法已经失去意义。因此有两种策略可供选择,分别是基于线程的测试和基于使用的测试。

(3)确认测试,关注与用户可见的动作和用户识别的系统输出,但基于场景的测试总是主宰面向对象系统的确认测试。

3. 试分析瀑布模型的优点和缺点。

【答案】瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终 得到软件产品。开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈。

(1)优点

①可强迫开发人员采用规范的方法。

②严格地规定了每个阶段必须提交的文档。

③要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。

④对文档的约束,使软件维护变得容易一些,且能降低软件预算。

(2)缺点

①开发过程一般不能逆转,否则代价太大。

②实际的项目开发很难严格按该模型进行。

③客户往往很难清楚地给出所有的需求。

④软件的实际情况必须到项目开发的后期客户才能看到。

4. 在哪些情况下适宜使用原型?哪些情况下不宜使用原型?

【答案】(1)适宜使用原型的情况

①开发周期很长的项目,通过原型开发来缩短开发周期。

②系统的使用可能变化较大,不能相对稳定,而原型模型具有适应变化的机制。

③用户对系统的需求较为模糊,对某种要求缺乏信心。

④开发者对系统的某种设计方案的实现无信心或无十分的把握。

(2)不宜使用原型的情况

①缺乏开发工具,或对原型的可用工具不了解的时候。

②用户不愿意参与开发。

③用户的数据资源没有很好地组织和管理的时候,因为快速原型需要快速寻找和存取数据。 ④用户的软件资源没有被组织和管理起来的时候,因为MIS 中的模型、模块、使用设施和程序的难易程度对原型使用很关键。

5. 根据瀑布模型为下列任务排序:验收测试、项目计划、单元测试、需求复审、成本估计、总体设计、设计复审、市场调研、详细设计、系统测试、实现、编制需求规格说明书。

【答案】根据题意可以把上述任务分为:

A. 市场调研

B. 项目计划、成本估计、编制需求规格说明书(同时进行)

C. 需求复审

D. 总体设计

E. 详细设计

F. 设计复审

G. 实现

H. 单元测试

I. 系统测试

J. 验收测试

根据瀑布模型的要求,上述任务正确的排序应为ABCDEFGHIJ 。

6. 什么是需求分析?需求分析阶段的基本任务是什么?

【答案】(1)需求分析的定义

需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求

陈述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。

(2)需求分析的基本任务

需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。本阶段要进行以下几方面的工作。

①问题识别

双方确定对问题的综合需求,这些需求如下:

a. 功能需求

所开发的软件必须具备什么样的功能,这是最重要的。

b. 性能需求

待开发的软件的技术性能指标。如存储容量、运行时间等限制。

c. 环境需求

软件运行时所需要的软、硬件(如机型、外设、操作系统、数据库管理系统等)的要求。 d. 用户界面需求

人机交互方式、输入输出数据格式等等。

另外还有可靠性、安全性、保密性、可移植性、可维护性等方面的需求,这些需求一般通过双方交流、调查研究来获取,并达到共同的理解。

②分析与综合,导出软件的逻辑模型

分析人员对获取的需求,进行一致性的分析检查,在分析、综合中逐步细化软件功能,划分成各个子功能。这里也包括对数据域进行分解,并分配到各个子功能上,以确定系统的构成及主要成分,并用图文结合的形式,建立起新系统的逻辑模型。

③编写文档

a. 编写“需求规格说明书”,把双方共同的理解与分析结果用规范的方式描述出来,作为今后各项工作的基础。

b. 编写初步用户使用手册,着重反映被开发软件的用户功能界面和用户使用的具体要求,用户手册能强制分析人员从用户使用的观点考虑软件。

c. 编写确认测试计划,作为今后确认和验收的依据。

d. 修改完善软件开发计划。在需求分析阶段对待开发的系统有了更进一步的了解,所以能更准确地估计开发成本、进度及资源要求,因此对原计划要进行适当修正。

7. 简述对象、类、类结构、消息、方法的基本概念。

【答案】(1)对象

①定义

对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

②分类

对象类型包括有形实体、作用、事件、性能说明。

③特点

a. 对象具有状态,一个对象用数据来描述它的状态,对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。

b. 对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。

c. 对象内的数据具有自己的操作,从而可灵活地专门描述对象的独特行为。

d. 具有较强的独立性和自治性,其内部状态不受或很少受外界的影响。

e. 具有很好的模块化特点,为软件重用奠定了坚实的基础。