《软件工程教程》(第2版)主编:吴迪 马宏茹 丁万宁 第一章课后习题参考答案 您所在的位置:网站首页 智能仪器原理及应用第四版第八章课后答案赵茂泰 《软件工程教程》(第2版)主编:吴迪 马宏茹 丁万宁 第一章课后习题参考答案

《软件工程教程》(第2版)主编:吴迪 马宏茹 丁万宁 第一章课后习题参考答案

2023-11-21 18:19| 来源: 网络整理| 查看: 265

                         第1章   软件工程概述  课后习题参考答案 一、选择题

(1)在下列选项中,( D )不是软件的特征

A.系统性与复制性

B.可靠性与一致性

C.抽象性与智能型

D.有形性与可控性

(2)与计算机科学的理论研究不同,软件工程是一门( B )学科。

A.理论性

B.工程性

C.原理性

D.心理性

(3)下列选项中,( C )不是软件生存周期模型

A.螺旋模型

B.增量模型

C.功能模型

D.瀑布模型

(4)软件生存周期中时间最长的阶段是( D )

A.需求分析阶段

B.总体设计阶段

C.测试阶段

D.维护阶段

(5)瀑布模型是一种( D )

A.软件开发方法

B.软件生存周期

C.程序设计方法学

D.软件生存周期模型

(6)软件开发中常采用结构化生存周期方法,由于其特征而一般称其为( A )。

A.瀑布模型

B.对象模型

C.螺旋模型

D.层次模型

(7)在结构性的瀑布模型中,( D )阶段定义的标准将成为软件测试中系统测试阶段的目标。

A.详细设计阶段

B.总体设计阶段

C.可行性研究阶段

D.需求分析

二、简答题 (1)什么是软件危机?软件危机表现在哪些方面?

具体来说,软件危机出现的原因可以概括如下。

① 忽视软件开发前期的需求分析。

② 开发过程缺乏统一的、规范化的方法论指导。

③ 文档资料不齐全或不准确。

④ 忽视与用户之间、开发组成员之间的交流。

⑤ 忽视测试的重要性。

⑥ 不重视维护或由于上述原因造成维护工作的困难。

⑦ 从事软件开发的专业人员对这个产业的认识不充分,缺乏经验。

⑧ 没有完善的质量保证体系。

具体地说,软件危机的表现形式可以概括如下。

① 软件开发费用和进度失控。

② 软件系统实现的功能与实际需求不符。

③ 软件的可靠性差。

④ 软件难以维护。

⑤ 软件通常没有适当的文档资料。

⑥ 软件成本在计算机系统总成本中所占的比例居高不下,且逐年上升。

⑦ 软件生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。

(2)简述软件和软件工程的定义以及软件工程的形成过程。

软件是计算机系统中与硬件相对应的另一部分,是一系列程序、数据及其相关的文档集合。在这里,程序是按照特定顺序组织的计算机数据和指令的集合;数据是使程序能正常执行的数据结构;文档是是开发、使用和维护程序所需要的图文资料。

软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度,实现满足用户要求的软件产品的定义、开发、发布和维护的工程或进行研究的学科。

软件工程的发展经历了以下四个阶段。

① 20世纪70年代。为了解决软件项目失败率高、错误率高以及软件维护任务重等问题,人们提出了软件生产工程化的思想,希望使软件生产走上正规化的道路,并努力克服软件危机。人们发现将传统工程学的原理、技术和方法应用于软件开发,可以起到使软件生产规范化的作用。

② 20世纪80年代。面向对象的方法与技术受到了广泛的重视,maltalk-80的出现标志着面向对象的程序设计进入了实用和成熟阶段。20世纪80年代末,逐步发展起来的面向对象的分析与设计方法,已经形成了完整的面向对象技术体系,使系统的生存周期更长,适应更大规模、更广泛的应用。

③ 20世纪90年代末。出现了许多的敏捷方法,如自适应软件开发、水晶项目开发、动态系统开发、极限编程、特征驱动开发和Scrum等。这些主要的敏捷方法的创始人在2001年聚集一堂,并发表了敏捷开发宣言。

④ 21世纪。对快速应用开发(Rapid Application Development,RAD)追求的趋势仍在继续,在信息技术、组织、竞争对策及环境等方面的变革步伐也正在加快。云计算、大数据、物联网、人工智能和机器学习、移动互联网、三维打印、可穿戴式技术、虚拟现实、增强现实、社交媒体、无人驾驶汽车和飞机等技术不断涌现。“大规模计算”、“自治和生化计算机”、“模型驱动体系结构”和“构件化软件开发”等新领域都可能成为接下来软件工程发展的主要方向。

(3)软件工程的目标是什么?如何解决多目标之间的矛盾?

软件工程要达到的基本目标包括以下六方面。

① 达到要求的软件功能。

② 取得较好的软件性能。

③ 开发出高质量的软件。

④ 付出较低的开发成本。

⑤ 需要较低的维护费用。

⑥ 能按时完成开发工作,及时交付使用。

软件工程的首要问题是软件质量。软件工程的目的就是在以上目标的冲突之间取得一定程度的平衡。因此,在涉及平衡软件工程目标这个问题的时候,软件的质量应该摆在最重要的位置加以考虑。软件质量可用功能性、可靠性、可用性、效率、可维护性和可移植性等六个特性来评价。

(4)什么是软件生存周期?它分为几个时期,几个阶段?

软件生存周期是指从设计该产品的构想开始,到软件需求的确定、软件设计、软件实现、产品测试与验收、投入使用,以及产品版本的不断更新,到该产品最终被市场淘汰的全过程。软件生存周期由软件定义、软件开发和运行维护三个时期组成,划分为问题定义、可行性研究、需求分析、概要设计、详细设计、软件实现和单元测试、综合测试和运行维护八个阶段。

(5)什么是软件生存周期模型?它有哪些主要软件过程模型?

软件生存期模型也称为软件过程模型,是从软件项目需求定义直至软件运行维护为止,跨越整个生命周期的系统开发、运行和维护所实施的全部过程、活动和任务的结构框架。典型的包括瀑布模型、快速原型模型、增量模型、螺旋模型、统一过程、敏捷过程等。

(6)在软件工程知识体系中,将软件工程划分为哪些知识域?

SWEBOK将软件工程知识体系划分为10个知识域,包含在两类过程中。一类过程是开发与维护过程,包括软件需求、软件设计、软件构造、软件测试和软件维护;另一类过程是支持过程,包括软件配置管理、软件工程管理,软件工程过程、软件工程工具写方法、软件质量。每个知识域还可进一步分解为若干个论题,在论题描述中引用有关知识的参考文献,形成一个多级层次结构,以此确定软件工程知识体系的内容和边界。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有