第3章
软件工程
3.1
软件基本概念
软件基本概念”部分所涉及的考题的分值在本章中所占比重为9%,属于非重点考查对象,由命题走势图3-2可知,本节所涉及考题分值有下降的趋势。
3.1.1 考点1:
软件危机
随着计算机应用需求的驱动,系统
软件和应用
软件都有很大发展,如操作系统、编译系统以及各种应用
软件等。由于
软件生产过程复杂,成本较高,使大型
软件的生产出现了很大的困难,人们称之为
软件危机。
软件危机主要表现在:
软件需求增长得不到满足;
软件生产高成本,价格昂贵;
软件生产进度无法控制;
软件需求定义不准确,易偏离用户需求;
软件可维护性差。归结起来,
软件危机主要表现在两方面:一方面是无法满足日益增长的对
软件的需求;另一方面是难以满足对已有的
软件系统维护的需要。
产生
软件危机的内在原因可归纳为两个:一个是
软件生产本身具有复杂性的特征;另一个原因与
软件开发所使用的方法和
技术有关。
软件工程是为克服
软件危机而提出的一种概念及相关方法和
技术。
例3.1.1
软件危机的主要表现有多个方面,如
Ⅰ.需求增长无法满足 Ⅱ.生产成本过高 Ⅲ.进度无法控制
Ⅳ.需求定义不准确 Ⅴ.质量不易保证 Ⅵ.难以满足维护需要
但比较而言,一般认为
软件危机产生的主要原因是( )。[2003年9月 选择第7题]
A.Ⅰ和Ⅱ B.Ⅰ和Ⅲ C.Ⅱ和Ⅴ D.Ⅰ和Ⅵ
答案:D
3.1.2 考点2:
软件生命周期
软件生命周期是人们在研究
软件生产时发现的一种规律性事实。和工业生产一样,
软件生产也有一个生产、使用和消亡的过程,即一个计算机
软件的功能确定、设计、开发成功投入使用,并在使用中不断地修改、增补和完善,直至被新的需要所替代而停止使用的过程。这个过程被称为
软件的生命周期。
瀑布模型将
软件生命周期划分为8个阶段,各个阶段的任务分别是问题定义、可行性研究、需求分析、总体设计、详细设计、程序编制、测试和运行维护。8个阶段又可以归纳为3个时期,即计划期、开发期、运行期。
例3.1.2 瀑布模型
软件生命周期划分为计划、开发和运行三个时期。下面哪项属于开发期?( )[2006年4月 选择第7题]
A.问题定义和测试 B.可行性研究和编码 C.编码和测试 D.可行性研究和测试
答案:C
3.1.3 考点3:
软件开发
技术与
软件工程管理
软件开发
技术包括
软件开发方法学、工具和环境支持,其主体内容是
软件开发方法学。现代
软件工程方法得以实施,
软件开发工具和环境是重要的保证。
软件开发环境是方法与工具的结合,以及配套的
软件的有机结合。
软件工程管理包括
软件管理学和
软件工程经济学。
软件工程管理是
软件按工程化生产时的重要环节,它要求按照预先指定的计划、进度和预算执行、以实现预期的经济效益和
社会效益。工程管理包括人员组织、进度安排、质量保证和成本预算等。
软件工程经济学是研究
软件开发中对成本的估算、成本效益分析的方法和
技术,它应用经济学基本原理来研究
软件工程开发中的经济效益问题。
例3.1.3
软件工程包括
软件开发
技术和
软件工程管理。下面属于
软件工程管理内容的是( )。[2004年9月 选择第13题]
A.
软件工具 B.
软件工程环境 C.开发方法 D.
软件工程经济学
答案:D
3.1.4 考点4:
软件开发
技术、工具和环境
软件开发方法学是一种专门研究
软件开发模式、内容、步骤和操作的学问。近30年来形成了
软件开发的多种模式,它们大致可归纳为三种类型:基于瀑布模型的结构化生命周期法、基于动态需求定义的原型化方法和面向对象的方法。
软件开发工具的发展促成了
软件开发的高速度和高质量。工具的发展从单项工具的开发逐步向集成工具的开发发展。
软件开发方法的有效应用也必须得到相应工具的支持,否则方法将难以有效地实施。工具的完善和发展将促进
软件开发方法的进步和完善。
软件工程环境(或称
软件开发环境)是全面支持
软件开发过程的
软件工具集合。CASE(计算机辅助
软件工程)是当前
软件开发环境中富有特色的研究方向和发展方向。
例3.1.4
软件开发方法可归纳为三种模式:基于瀑布模型的结构化生命周期法、基于动态需求定义的________方法和面向对象的方法。[2004年9月 填空第3题]
答案:原型化