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

2018年解放军信息工程大学软件工程825软件工程和编译原理[专硕]之软件工程导论考研仿真模拟五套题

  摘要

一、简答题

1. 简述面向对象的要素。

【答案】(1)抽象

①定义

抽象是指强调实体的本质、内在的属性,忽略一些无关紧要的属性。

②抽象性

面向对象比其他方法技术有更高的抽象性,对象具有极强的抽象表达能力,对象可表示一切事物,可表达结构化的数据,也可表达非结构化的数据,如过程实体、图形、声音、规则等。

③共性抽象

类实现了对象的数据(即状态)和行为的抽象,它是对象的共性抽象。

(2)封装性(信息隐蔽)

①定义

封装性是指所有软件部件内部都有明确的范围以及清楚的外部边界,每个软件部件内部都有界面接口,软件部件的内部实现与外部可访问性分离。

②作用

面向对象的类是封装良好的模块,类定义将其说明(用户可见的外部接口)与实现(用户不可见的内部实现)显式地分开,其内部实现按其具体定义的作用域提供保护。对象是封装的最基本的单位。封装防止了抽象相互依 赖性而带来的变动影响,面向对象的封装是比传统语言的封装更为清晰、更为有力。

(3)共享性

①同一类中的共享

在同一类中的对象有着相同数据结构。

②在同一个应用中的共享

在同一应用的类层次结构中,存在继承关系的各相似子类中,存在数据结构和行为的继承使相似子类共享共同的结构和行为。

③在不同应用中的共享

通过类库这种机制和结构来实现不同应用中的信息共享。

2. 什么是面向数据流的设计方法?它有哪些策略?

【答案】(1)面向数据流的设计方法的定义

面向数据流的设计方法也称结构化设计方法(SD ),它与结构化分析(SA )相衔接,它按一定的设计策略将数据流图转换成软件的模块层次结构。

(2)面向数据流的设计策略

①事务型分析设计

一个大的复杂的系统分解成较小的,相对简单的子系统,这些子系统彼此之间相对独立一些,而高层数据流图的数据处理往往反映这些子系统的功能,有平行分别处理的特点,因此,高层数据流图的转换通常可作为事务型处理,把一个加工逻辑看成是一类特定的事务,把它们分别映射成一个模块,最高层模块为系统模块,通过对输入初始命令的判断决定调用哪个模块。这种事务型分析设计的策略也用于较低层数据流图向软件结构图的转换。

②变换型分析设计

变换型数据流图具有主要的处理功能及实现这项处理功能所需要的输入数据流和经过处理后产生的输出数据流。确定了第三部分,高层模块就可分解出三个从属于它的新模块,分别执行输入、变换、输出功能。变换分析设计一般用于对较低层数据流图向软件结构图的转换。

3. 面向对象实现应该选用哪种程序设计语言?为什么?

【答案】(1)面向对象实现应该尽量选用面向对象语言来实现面向对象分析、设计的结果。

(2)原因

①一致的表示方法。面向对象开发基于不随时间变化的、一致的表示方法。既有利于在软件开发过程中始终使用统一的概念,也有利于维护人员理解软件的各种配置成分。

②可重用性。既可重用面向对象分析结果,也可重用相应的面向对象设计和面向对象程序设计结果。

③可维护性。程序显式地表达问题域语义,对维护人员理解待维护的软件有很大帮助。在选择编程语言时,应该考虑的首要因素是哪个语言能最恰当地表达问题域语义。

4. 三种模型的建立过程。

【答案】(1)对象模型:确定类、准备数据字典、确定联系、确定属性、完善对象模型。 (2)动态模型:准备脚本、准备事件跟踪、构造状态图。

(3)功能模型:确定输入输出值、建立DFD 。

一、简答题

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

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

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

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

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

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

①问题识别

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

a. 功能需求

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

b. 性能需求

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

c. 环境需求

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

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

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

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

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

③编写文档

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

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