- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《实用软件工程》陆惠恩主编.ppt
《实用软件工程》陆惠恩主编 《软件工程基础》陆惠恩主编 《软件工程》 第1章概 述 本章主要内容: 软件工程的产生 软件工程学 软件生命周期 软件开发模型 本章重点: 软件工程 软件生命周期。 第1章概述1.1 软件工程的产生 1.1.1 软件工程发展史 软件是指计算机程序及其有关的数据和文档。 软件生产的各个阶段必需完成的有关计算机程序的功能、设计和使用的文字或图形资料,这些资料称为“文档”。 1. 程序设计阶段 2. 软件=程序+文档阶段 3. 软件工程阶段 4. 第4代技术阶段 1.1.2 软件危机 软件危机是指在计算机软件开发和维护时所遇到的一系列问题。 软件危机主要包含的问题: 如何开发软件以满足对软件日益增长的需求; 如何维护数量不断增长的已有软件。 1. 软件危机产生的原因 2. 软件危机主要表现形式 3. 解决软件危机的途径 软件项目管理的提出是在20世纪70年代中期的美国,当时美国国防部专门研究了软件开发不能按时提交,预算超支和质量达不到用户要求的原因,结果发现70%的项目是因为___管理不善_____引起的,而非技术原因。于是软件开发者开始逐渐重视起软件开发中的各项管理。 1.2 软件工程学 1. 2.1什么是软件 ? 软件是指计算机程序及其有关的数据和文档的完整集合。 软件文档(software documentation)是以人们可读的形式出现的技术数据和信息。 “软件是程序以及开发、使用和维护所需要的所有文档(document)。” 1.2.2 什么是软件工程? 软件工程(software engineering)是软件开发、运行、维护和引退的系统方法。 软件工程是指导计算机软件开发和维护的工程学科。 软件工程采用工程的概念、原理、技术和方法来开发与维护软件。 软件工程的目标是在规定的时间、开发费用内,开发满足用户需求的高质量的软件。 1.2 软件工程学 1.2.3 软件工程学的内容 软件开发技术和软件工程管理。 软件开发技术包含软件工程方法学、软件工具和软件工程环境。 软件工程管理学包含软件工程经济学和软件管理学。 1. 软件工程方法学 三个要素:方法,工具,过程。 2. 软件工具 3. 软件工程环境:是方法和工具的结合。 “软件开发环境是相关的一组软件工具集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成”。 计算机辅助软件工程(Computer Aided Software Engineering,CASE) 是一组工具和方法的集合,可以辅助软件生命周期各阶段进行软件开发活动。 4. 软件工程管理 目的是为了能按预定的时间和费用,成功地生产软件产品。 内容:费用管理、人员组织、工程计划管理、软件配置管理。 软件工程各阶段所产生的全部文档和软件本身构成软件配置。 1.2.4 软件工程过程 软件过程是“把输入转化为输出的一组彼此相关的资源和活动”。 软件过程是软件工程方法学的三个要素 (方法、工具和过程)之一。 1.2.5 软件工程基本原理 用分阶段的生命周期计划进行严格的管理; 坚持进行阶段评审; 实行严格的产品控制; 采用现代程序设计技术; 软件工程结果应能清楚地审查; 开发小组的人员应该少而精; 承认不断改进软件工程实践的必要性。 1.3 软件生命周期 1. 软件生命周期定义 从设计软件产品开始到产品不能使用为止的时间周期。 软件生命周期中,软件开发与维护时的费用越低,软件的使用寿命越长,产生的价值就越大,这就是掌握软件工程学的目的。 2. 软件生命周期划分的原则 3. 软件生命周期各阶段的任务 由软件计划、软件开发和软件运行维护三个时期组成。 软件计划时期:问题定义、可行性研究、需求分析三阶段。 软件开发时期:软件概要设计、软件详细设计、软件实现、综合测试等阶段。 软件运行过程中需要不断地进行维护,使软件持久满足用户需要。 软件生存周期一般可分为问题定义、__可行性研究___、___需求分析___、设计、___编码__、测试、运行与维护阶段。 需求分析应交付的主要文档是_____需求规格说明书_____。 1.4 软件开发模型 1.4.1 瀑布模型 (Waterfall Model) 1.4.2 快速原型模型 快速原型模型(Rapid Prototype Model)是快速开发一个可以运行的原型系统, 通常有三种类型: 渐增式的原型:也称增量模型。 用于验证软件需求的原型。 用于验证设计方案的原型。 1.4.3 增量模型 增量方式包括: 增量开发 增量提交 1.4.4 喷泉模型 适用于面向对象方法。 主张分析和设计过程的重叠
文档评论(0)