软件工程-理论与实践习题答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题答案

习题一答案

一、选择题

1. 软件的主要特性是(A B C)。

A) 无形 B) 高成本

C) 包括程序和文档D) 可独立构成计算机系统

2. 软件工程三要素是(C D)。

A) 技术、方法和工具B) 方法、工具和过程

C) 方法、对象和类D) 过程、模型、方法

3. 包含风险分析的软件工程模型是(A)。

A) 螺旋模型 B) 瀑布模型C) 增量模型 D) 喷泉模型

4. 软件工程的主要目标是(C)。

A) 软件需求B) 软件设计C) 风险分析D) 软件实现

5. 下列属于面向对象开发方法的是(A B C D)。

A) Booch B) UML C) Coad D) OMT

6. 软件危机的主要表现是(B D)。

A) 软件成本太高B) 软件产品的质量低劣

C) 软件开发人员明显不足D) 软件生产率低下

7. 软件开发方法的主要工作模型有(A B C)

A) 螺旋模型B) 循环模型C) 瀑布模型D) 专家模型

8. 软件工程的目标有(A B C)。

A) 易于维护B) 低的开发成本

C) 高性能D) 短的开发期

9. 软件工程学的目的和意义是( A)。

A) 应用科学的方法和工程化的规范管理来指导软件开发

B) 克服软件危机

C) 作好软件开发的培训工作

D) 以较低的成本开发出高质量的软件

二、判断题

1. 软件就是程序,编写软件就是编写程序。(×)

2. 瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。(×)

3. 结构化方法的工作模型是使用螺旋模型进行开发。(×)

4. 结构化方法和JSP方法都不适合于大型软件的开发。(√)

5. 原型化开发方法包括生成原型和实现原型两个步骤。(×)

6. 面向对象的开发方法包括面向对象的分析、面向对象的设计和面向对象的程序设计。( √)

7. 软件危机的主要表现是软件的需求量迅速增加,软件价格上升。(×)

8. 软件工具的作用是为了延长软件产品的寿命。(×)

9. 软件工程过程应该以软件设计为中心,关键是编写程序。(×)

10. RCP法与RSP法的主要区别是前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。(√)

三、简答题

1. 软件产品的特性是什么?

答:●软件是一种逻辑产品,具有无形性;

●软件产品的生产主要是研制;

●软件不存在磨损和老化问题,但存在退化问题;

●软件产品的生产主要是脑力劳动;

●软件产品的成本非常昂贵,其开发方式目前尚未完全摆脱手工生产方式;

● 软件具有“复杂性”,其开发和运行常受到计算机系统的限制。

2. 软件发展有几个阶段?各有何特征?

答:①程序设计阶段。

硬件特征:价格贵、存储容量小、运行可靠性差。

软件特征:只有程序、程序设计概念,不重视程序设计方法。

②程序系统阶段。

硬件特征:速度、容量及工作可靠性有明显提高,价格降低,销售有爆炸性增长。

软件特征:程序员数量猛增,开发人员素质低。

③软件工程阶段。

硬件特征:向超高速、大容量、微型化及网络化方向发展。

软件特征:开发技术有很大进步,但未获得突破性进展,软件价格不断上升,未完全摆脱软件危机。

3. 什么是软件危机?其产生的原因是什么?

答:“软件危机”(Software Cris is)的出现是由于软件的规模越来越大,复杂度不断增加,软件需求量增大。而软件开发过程是一种高密集度的脑力劳动,软件开发的模式及技术不能适应软件发展的需要。致使大量质量低劣的软件涌向市场,有的花费大量人力、财力,而在开发过程中就夭折。软件危机主要表现在两个方面:

(1) 软件产品质量低劣,甚至开发过程就夭折。

(2) 软件生产率低,不能满足需要。

4. 什么是软件生存周期模型?它有哪些主要模型?

答:软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。主要模型包括:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型。

5. 有哪些主要的软件开发方法?

答:主要的软件开发方法有:结构化开发方法、Jackson(JSP、JSD)方法、原型化开发方法、维也纳开发方法(VDM)和面向对象的开发方法。

6. 软件生命期各阶段的任务是什么?

答:软件生命期瀑布模型分为六个阶段:

● 可行性研究与计划(确定系统的目标和规模,分析项目的可行性);

● 需求分析与规格说明(明确系统的规格和要求);

● 设计(包括概要设计和详细设计,将系统分解为模块);

● 编程(用程序语言实现每个模块,简单容易);

● 测试(发现并改正错误,分为模块测试、集成测试和系统联调三级);

● 运行维护(扩充功能、纠错等)。

习题二答案

一、选择题

1. 需求分析的主要目的是(BC)。

A) 系统开发的具体方案

B) 进一步确定用户的需求

C) 解决系统是“做什么的问题”

D) 解决系统是“如何做的问题”

2. 需求分析的主要方法有(CD)。

A) 形式化分析方法B) PAD图描述

C) 结构化分析(SA)方法D) OOA法

3. 面向对象的分析方法主要是建立三类模型,即(D)。

A) 系统模型、ER模型、应用模型

B) 对象模型、动态模型、应用模型

C) E-R模型、对象模型、功能模型

D) 对象模型、动态模型、功能模型

4. SA法的主要描述手段有(B)。

A) 系统流程图和模块图

B) DFD图、数据词典、加工说明

C) 软件结构图、加工说明

D) 功能结构图、加工说明

5. 画分层DFD图的基本原则有(ACD)。

A) 数据守恒原则

B) 分解的可靠性原则

C) 子、父图平衡的原则

D) 数据流封闭的原则

6. 在E-R模型中,包含以下基本成分(C)。

A) 数据、对象、实体

B) 控制、联系、对象

C) 实体、联系、属性

D) 实体、属性、联系

7. 画DFD图的主要目的是(A D)。

A) 作为需求分析阶段用户与开发者之间交流信息的工具

B) 对系统的数据结构进行描述

C) 对目标系统的层次结构进行描述

D) 作为分析和设计的工具

8. 数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成(C)。

A) 数据说明条目、控制流条目、加工条目、数据存储条目

B) 数据流条目、数据项条目、文件条目、加工条目

C) 数据源条目、数据流条目、数据处理条目、数据文件条目

D) 数据流条目、数据文件条目、数据池条目、加工条目

相关文档
最新文档