2015年软件工程期末考试试题及答案(机密)解析 下载本文

班级 姓名 学号 题 号 得 分 阅卷人 一 二 三 四 五 六 七 八 九 十 总 分 一.简要回答下列各问题(共40分,每个小题5分) (1) 阐述软件工程的定义。

答:

? 是指导计算机软件开发和维护的一门工程学科; ? 采用工程的概念、原理、技术和方法来开发和维护软件; ? 把证明正确的管理技术和最好技术综合运用到软件开发中; ? 研究经济地开发出高质量的软件方法和技术; ? 研究有效维护软件的方法和技术。

(2) 简述软件危机的原因。

答:

? 缺乏软件开发的经验和有关软件开发数据的积累,使得开发计划很难制定。 ? 软件人员与用户的交流存在障碍,使得获取的需求不充分或存在错误 。 ? 软件开发过程不规范。如,没有真正了解用户的需求就开始编程序。 ? 随着软件规模的增大,其复杂性往往会呈指数级升高。需要很多人分工协作,

不仅涉及技术问题,更重要的是必须有科学严格的管理。

? 缺少有效的软件评测手段,提交用户的软件质量不能完全保证。

北方工业大学试卷 第1页 共13页

(3) 画出软件生存周期的瀑布模型的示意图,并简单评述其优缺点。

优点:

? 可强迫开发人员采用规范化的方法。 ? 严格地规定了每个阶段必须提交的文档。

? 要求每个阶段交出的所有产品都必须是经过验证

的。

缺点

? 由于瀑布模型几乎完全依赖于书面的规格说明,很

可能导致最终开发出的软件产品不能真正满足用户的需要。如果需求规格说明与用户需求之间有差异,

就会发生这种情况。 ? 瀑布模型只适用于项目开始时需求已确定的情况。

1-2 瀑布模型示意图

(4) 画出软件生存周期的增量模型的示意图,并简述其优点。

?

能在较短时间内向用户提交可完成一些有用的工作产品,即从第1个构件交付之日起,用户就能做一些有用的工作。

? 逐步增加产品的功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给用户组织带来的冲击。

? 项目失败的风险较低,虽然在某些增量构件中可能遇到一些问题,但其他增量构件将能够成功地交付给客户。

? 优先级最高的服务首先交付,然后再将其他增量构件逐次集成进来。因此,最重要的系统服务将接受最多的测试。

北方工业大学试卷 第2页 共13页

(5) 画出D.Ross提出的软件工程结构化分析方法的框架示意图,并解释数据字典和数据流的含义。

答:

数据字典:数据字典以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义,包括数据流、加工、数据文件、数据元素,以及数据源点、数据汇点等。 数据流图: 或 加工。对输入数据进行变换以产生输出数据,其中要注明加工的名字。 外部实体,即数据输入源(Source)或数据输出汇点(Sink)。其中要注明数据源或数据汇点的名字。

或 数据存储。要用名词或名词性短语为数据存储命名。

数据流。描述被加工数据及传递方向。箭头旁边要注明数据流的名字,可用名

词或名词性短语命名。

(6) 举例说明变换型和事务型流图的特点。 答:

变换型流图由输入、中心变换和输出3部分组成,而且逐层展开。如:

事务型流图通常接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。

(7) 给出下面变换型数据流图对应的模块结构图。

答:

北方工业大学试卷 第3页 共13页