软件生存周期及其模型精.ppt
《软件生存周期及其模型精.ppt》由会员分享,可在线阅读,更多相关《软件生存周期及其模型精.ppt(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件生存周期及其模型第1页,本讲稿共44页2.1 2.1 软件工程过程与软件生存期软件工程过程与软件生存期 为为了了克克服服软软件件危危机机,人人们们从从其其他他产产业业的的工工业业化化生生产产得得到到启启示示,于于是是在在68年年北北大大西西洋洋公公约约的的软软件件可可靠靠性性会会议议(NATO)上上,首首次次提提出出了了“软软件件工工程程”的的概概念念。提提出出了了在在软软件件生生产产中中采采用用工工程程化化的的方方法法,采采用用一一系系列列科科学学的的、现现代代化化的的方方法法技技术术来来开开发发软软件件。这这种种工工程程化化的的思思想想贯贯穿穿到软件开发和维护的全过程。到软件开发和维护
2、的全过程。第2页,本讲稿共44页是是指指在在软软件件工工具具的的支支持持下下,所所进进行行的的一一系系列列软软件件开开发发和和进化的活动。进化的活动。通常包括以下四类基本过程:通常包括以下四类基本过程:1 1、软件规格说明:、软件规格说明:规定软件的功能及其运行环境。规定软件的功能及其运行环境。2 2、软件开发:、软件开发:产生满足规格说明的软件。产生满足规格说明的软件。3 3、软件确认:、软件确认:确认软件能够完成客户提出的要求。确认软件能够完成客户提出的要求。4 4、软软件件演演进进:为为满满足足客客户户的的变变更更要要求求,软软件件必必须须在在使使用用的过程中演进。的过程中演进。软件工程
3、过程软件工程过程(Software engineering process)第3页,本讲稿共44页软件工程过程软件工程过程(Software engineering process)规程与规程与规程与规程与方法方法方法方法工具工具和设备和设备有技能经过培有技能经过培训的开发人员训的开发人员过程过程第4页,本讲稿共44页软件工程三要素软件工程三要素软件工程软件工程过程过程方法方法工具工具软件工程釆用层次化的方法软件工程釆用层次化的方法,每个层次都包括过程、方每个层次都包括过程、方法、工具三要素。法、工具三要素。第5页,本讲稿共44页软件生存周期 软件的生存周期是指一个软件从提出开发要求直到该软件
4、软件的生存周期是指一个软件从提出开发要求直到该软件软件的生存周期是指一个软件从提出开发要求直到该软件软件的生存周期是指一个软件从提出开发要求直到该软件报废为止的整个时期。报废为止的整个时期。报废为止的整个时期。报废为止的整个时期。软件的生存周期一次划分为若干阶段,生存阶段划分时软件的生存周期一次划分为若干阶段,生存阶段划分时软件的生存周期一次划分为若干阶段,生存阶段划分时软件的生存周期一次划分为若干阶段,生存阶段划分时应遵循的基本原则是各阶段的任务尽可能相对独立,同应遵循的基本原则是各阶段的任务尽可能相对独立,同应遵循的基本原则是各阶段的任务尽可能相对独立,同应遵循的基本原则是各阶段的任务尽可
5、能相对独立,同一阶段各项任务的性质尽可能相同,每一阶段都有明确一阶段各项任务的性质尽可能相同,每一阶段都有明确一阶段各项任务的性质尽可能相同,每一阶段都有明确一阶段各项任务的性质尽可能相同,每一阶段都有明确的任务。的任务。的任务。的任务。第6页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:4.4.4.4.详细设计详细设计3.3.概要设计概要设计2.2.2.2.需求分析需求分析需求分析需求分析1.1.1.1.可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划第7页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的
6、软件生存周期包括以下阶段:1.可行性研究和项目开发计划可行性研究和项目开发计划2.2.需求分析需求分析需求分析需求分析3.概要设计概要设计4.4.详细设计详细设计详细设计详细设计基本任务:要解决的问题是什么?该问题有行得通的解决办法吗?若有,则需要多少费用、资源、时间等?结束标准:提出书面可行性研究报告;若问题值得去解决,制定项目开发计划。第8页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:1.1.可行性研究和项目开发计划可行性研究和项目开发计划2.2.需求分析需求分析3.3.概要设计概要设计4.4.详细设计详细设计基本任务:为了解决问题,目标系统必须做什么?
7、确定目标系统的功能。结束标准:给出软件需求说明书第9页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:1.1.1.1.可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划2.2.2.2.需求分析需求分析需求分析需求分析3.3.概要设计概要设计4.4.4.4.详细设计详细设计详细设计详细设计基本任务:概括地说,应如何解决这个问题?把确定的各项功能需求转换成需要的体系结构。设计软件的结构,确定程序由哪些模块组成及模块间的关系,同时设计该项目的总体数据结构和数据库结构。结束标准:给出概要设计文档第10页,本讲稿共44页典型的
8、软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:1.1.1.1.可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划可行性研究和项目开发计划2.2.2.2.需求分析需求分析需求分析需求分析3.3.3.3.概要设计概要设计概要设计概要设计4.4.详细设计详细设计基本任务:应怎样具体地实现这个系统?为每个模块完成的功能进行具体描述,把功能描述转变为精确的、结构化的过程描述。结束标准:设计出程序的详细规格说明书第11页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:7.7.软件维护软件维护6.6.测试测试测试测试5.5.5.5.编码编码编
9、码编码第12页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:5.编码编码编码编码6.测试测试7.软件维护软件维护软件维护软件维护基本任务:把每个模块的控制结构转换成计算机可接受的程序代码。程序应是结构好、清晰易读,并且与设计一致。结束标准:以某种程序设计语言表示的源程序清单。第13页,本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:5.编码编码编码编码6.6.测试测试测试测试7.软件维护软件维护基本任务:为保证软件的质量,在设计测试用例的基础上检验软件的各个组成部分,是否达到预定要求。结束标准:软件合格,能交付用户使用。第14页,
10、本讲稿共44页典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:5.编码编码6.6.测试测试测试测试7.7.软件维护软件维护基本任务:通过各种必要的维护活动使系统持久地满足用户需要,是软件生存周期中时间最长的阶段。结束标准:以某种程序设计语言表示的源程序清单。第15页,本讲稿共44页技术审查和管理复审 技术审查是从技术角度进行审查,是保证软件质量和降低软件技术审查是从技术角度进行审查,是保证软件质量和降低软件技术审查是从技术角度进行审查,是保证软件质量和降低软件技术审查是从技术角度进行审查,是保证软件质量和降低软件成本的重要措施。成本的重要措施。成本的重要措施。成本的重要措施。技
11、术审查通常由专家组成的审查小组来承担审查工作。技术审查通常由专家组成的审查小组来承担审查工作。技术审查通常由专家组成的审查小组来承担审查工作。技术审查通常由专家组成的审查小组来承担审查工作。管理复审的主要任务实在软件生存周期的每个重要里程碑,管理复审的主要任务实在软件生存周期的每个重要里程碑,管理复审的主要任务实在软件生存周期的每个重要里程碑,管理复审的主要任务实在软件生存周期的每个重要里程碑,对工程项目的成本、实际花费的经费、投资回收的前景、对工程项目的成本、实际花费的经费、投资回收的前景、对工程项目的成本、实际花费的经费、投资回收的前景、对工程项目的成本、实际花费的经费、投资回收的前景、项
12、目的进度等经济因素从管理角度进行审查。项目的进度等经济因素从管理角度进行审查。项目的进度等经济因素从管理角度进行审查。项目的进度等经济因素从管理角度进行审查。第16页,本讲稿共44页2.2 软件生存周期模型软件生存周期模型是描述软件开发过程中各种活动软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。如何执行的模型。软件生存周期模型的选择受软件规模、种类、开发方式、软件生存周期模型的选择受软件规模、种类、开发方式、软件生存周期模型的选择受软件规模、种类、开发方式、软件生存周期模型的选择受软件规模、种类、开发方式、开发环境以及开发使用的方法等因素影响。开发环境以及开发使用的方法等因素影响
13、。开发环境以及开发使用的方法等因素影响。开发环境以及开发使用的方法等因素影响。软件生存周期模型一旦确定,软件开发过程就应该软件生存周期模型一旦确定,软件开发过程就应该按照模型严格执行,不可随意更改。按照模型严格执行,不可随意更改。第17页,本讲稿共44页开发开发时期时期运行运行时期时期计划计划时期时期(目标与范围说明书目标与范围说明书)(可行性论证论告可行性论证论告)(维护报告维护报告)(测试报告测试报告)(源程序清单源程序清单)(设计文档设计文档)(需求说明书需求说明书)软件生命周期(软件生命周期(SDLD)瀑布模型瀑布模型瀑布模型第18页,本讲稿共44页常用的软件开发模型软软件件开开发发模
14、模型型是是描描述述软软件件开开发发过过程程中中各各种种活活动动如如何何执执行行的的模模型。因此又称为型。因此又称为软件过程模型软件过程模型。软件过程模型是对软件开发实际过程的抽象和简化。软件过程模型是对软件开发实际过程的抽象和简化。目前典型的软件开发模型有:目前典型的软件开发模型有:瀑布模型、增量模型、原型模型、螺旋模型、喷泉模瀑布模型、增量模型、原型模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等。型、变换模型和基于知识的模型等。不同的开发方法有不同的软件过程模型。不同的开发方法有不同的软件过程模型。第19页,本讲稿共44页软件过程模型软件过程模型软件过程模型是软件开发全过程、软件开发活
15、软件过程模型是软件开发全过程、软件开发活动以及它们之间关系的结构框架动以及它们之间关系的结构框架软件项目的管理提供里程碑和进度表软件项目的管理提供里程碑和进度表为软件开发提供原则和方法为软件开发提供原则和方法第20页,本讲稿共44页1.以软件需求完全确定为前提的以软件需求完全确定为前提的瀑布模型瀑布模型2.在软件开发初期只能提供基本需求所采用的在软件开发初期只能提供基本需求所采用的渐进式开发模型如渐进式开发模型如原型模型、螺旋模型、增原型模型、螺旋模型、增量模型、并发开发模型量模型、并发开发模型3.以形式化开发方法为基础的以形式化开发方法为基础的变换模型变换模型4.基于构件的开发过程基于构件的
16、开发过程5.敏捷开发过程敏捷开发过程-统一软件开发过程统一软件开发过程RUP五类软件开发过程模型五类软件开发过程模型第21页,本讲稿共44页瀑布模型瀑布模型开发开发时期时期运行运行时期时期计划计划时期时期(目标与范围说明书目标与范围说明书)(可行性论证论告可行性论证论告)(维护报告维护报告)(测试报告测试报告)(程序程序)(设计文档设计文档)(需求说明书需求说明书)瀑布模型第22页,本讲稿共44页瀑布模型主要思想瀑布模型主要思想 软件开发过程与软件生命周期是一致的软件开发过程与软件生命周期是一致的相邻二阶段之间存在因果关系相邻二阶段之间存在因果关系需对阶段性产品进行评审需对阶段性产品进行评审第
17、23页,本讲稿共44页瀑布模型的优点瀑布模型的优点软件生命周期模软件生命周期模型型,使软件开发过程可以在分析、使软件开发过程可以在分析、设计、编码、测试和维护的框架下进行;设计、编码、测试和维护的框架下进行;软件开发过程具有系统性、可控性,克服了软件开发过程具有系统性、可控性,克服了软件开发的随意性软件开发的随意性。第24页,本讲稿共44页瀑布模型的缺点瀑布模型的缺点项目开始阶段用户很难精确的提出产品需求,由项目开始阶段用户很难精确的提出产品需求,由于技术进步,用户对系统深入的理解,修改需求于技术进步,用户对系统深入的理解,修改需求十分普遍。十分普遍。项目开发晚期才能得到程序的运行版本,这时修
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 生存 周期 及其 模型
限制150内