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

2018年合肥工业大学计算机与信息学院848软件工程学科专业基础综合之软件工程导论考研核心题库

  摘要

一、名词解释

1. 数据流图

【答案】数据流图(DFD )是结构化分析方法中用于表示系统逻辑模型的一种工具,是一种

功能模型。它以图形 的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能。

2. 程序的可移植性

【答案】程序的可移植性指程序从某一环境转移到另一个环境下的难易程度。为获取较高的可移植性,在设计过程中采用的程序设计语言和运行支撑环境,尽量不使用与系统底层相关性强的语言。

二、简答题

3. 什么是抽象类?在建模时有时使用抽象类有什么好处?

【答案】(1)抽象类的定义

抽象类是指没有实例的类,定义了一些抽象的操作,即不提供实现方法的操作,只提供操作的特征,并标注。

(2)使用抽象类的好处

在建模时使用抽象类使系统结构更加的清晰,增加了系统的可读性和可理解性。

4. 什么是耦合性?模块的耦合性有哪些内容?

【答案】(1)耦合性的定义

耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。

(2)模块耦合性的分类

①无直接耦合

无直接耦合指两个模块之间没有直接的关系,它们分别从属于不同模块的控制与调用,它们之间不传递任何信息。因此模块间耦合性最弱,模块独立性最高。

②数据耦合

数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。这种耦合程度较低,模块的独立性较高。

③标记耦合

标记耦合指两个模块之间传递的是数据结构,如高级语言中的数组名、记录名、文件名等这些名字即为标记,其实传递的是这个数据结构的地址。两个模块必须清楚这些数据结构,并按要求对其进行操作,这样降低了可理解性。可采用“信息隐蔽”的方法,把该数据结构以及在其上的操作全部集中在一个模块,就可消除这种耦合,但有时因为还有其他功能的缘故,标记耦合是不可避免的。

④控制耦合

控制耦合指一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调用模块通过该控制变量的值有选择地执行模块内某一功能。因此被调用模块内应具有多个功能,哪个功能起作用受其调用模块控制。

5. 软件开发成本估算方法有哪些?

【答案】(1)自顶向下估算方法

①定义

估算人员参照以前完成的项目所耗费的总成本(或总工作量),来推算将要开发的软件的总成本(或总工作 量),然后把它们按阶段、步骤和工作单元进行分配。

②优点

自顶向下估算方法的主要优点是对系统级工作的重视,所以估算中不会遗漏系统级的诸如集成、用户手册和配置管理之类的事务成本估算,且估算工作量小、速度快。

③缺点

它的缺点是往往不清楚低级别上的技术性困难问题,而往往这些困难会使成本増加。

(2)自底向上估算方法

①定义

自底向上估算方法是将待开发的软件细分,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,得到软件的总开发工作量。

②优点

这种方法的优点是对每一部分的估算工作交给负责该部分工作的人员来做,所以估算较为准确。

③缺点

其缺点是其估算往往缺少如软件开发有关的系统级工作量,如集成、配置管理、质量管理、项目管理等,所以估算往往偏低。

(3)差别估算方法

①定义

差别估算是将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相似项目的若干不同之处,并估算每个不同之处对成本的影响,导出开发项目的总成本。

②优点

该方法的优点是可以提高估算的准确度。

③缺点

该方法的缺点是不容易明确“差别”的界限。

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

【答案】(1)对象

①定义

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

②分类

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

③特点

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

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

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

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

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

(2)类

类是具有相同属性和服务的一组对象的集合。因此,对象的抽象是类,类的具体化就是对象,即类的实例是对象。

(3)类结构

在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般一具体结构关系,整体一部分结构关系。

①一般一具体结构关系

一般一具体结构关系称为分类关系,也可以说是“或”关系,或者是“is-a”关系。类的这种层次结构可用来描述现实世界中一般化的关系,通常越在上层的类越具有一般性和共性,越在下层的类越具体、越细化。

②整体一部分结构关系

整体一部分结构关系称为组装结构,它们之间的关系是一种“与”关系,或者是“has-a”关系。类的这种层次关系可用来描述现实世界中类的组成的抽象关系,上层的类具有整体性,下层的类具有成员性。在类的层次结构中,通常上层类称为父类或超类,下层类称为子类。

(4)消息

①定义