软件生命周期-姜鑫乐和余超.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件生命周期-姜鑫乐和余超.ppt》由会员分享,可在线阅读,更多相关《软件生命周期-姜鑫乐和余超.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、运行维护运行维护 阶段阶段软件生命周期软件生命期(软件生命期(Life cycle):一个软件从定义、开发和运行维护,直到最终被废一个软件从定义、开发和运行维护,直到最终被废弃,所经历的生存过程称为软件生存期或叫生命期。弃,所经历的生存过程称为软件生存期或叫生命期。生命期的划分:生命期的划分:问题问题定义定义可行性研可行性研究和需求究和需求分析分析软件软件设计设计程序程序编写编写软件软件测试测试运行运行/维护维护定义阶段定义阶段开发阶段开发阶段软件生命周期n1.定义时期定义时期 主要任务是调查和分析。主要任务是调查和分析。u调查用户需求,分析调查用户需求,分析新系统新系统的主要目标,分析开的主
2、要目标,分析开发该系统的可行性。并写出发该系统的可行性。并写出“可行性分析报告可行性分析报告”。u 需求分析在于弄清楚用户对软件的全部需求,需求分析在于弄清楚用户对软件的全部需求,并用并用“需求规格说明书需求规格说明书”的形式准确地表达。需的形式准确地表达。需求规格说明书应包括对软件的功能需求、性能需求规格说明书应包括对软件的功能需求、性能需求、环境约束和外部接口等描述。求、环境约束和外部接口等描述。用户和系统分析员的相互理解与配合,是做好这用户和系统分析员的相互理解与配合,是做好这一时期工作的关键。一时期工作的关键。n2.软件开发时期软件开发时期 开发时期要完成设计和实现。开发时期要完成设计
3、和实现。设计设计:主要任务是将需求转变为软件的表:主要任务是将需求转变为软件的表示形式。目的是确定软件的总体结构、示形式。目的是确定软件的总体结构、数据结构、用户界面和算法细节,从数据结构、用户界面和算法细节,从需需求规格说明书求规格说明书导出导出软件结构图软件结构图。实现编码实现编码:选定某种语言,把设计的过程:选定某种语言,把设计的过程性描述翻译为源程序。直到这一阶段,性描述翻译为源程序。直到这一阶段,才产生能在计算机上执行的源程序。前才产生能在计算机上执行的源程序。前面各个阶段产生的都属于软件的文档。面各个阶段产生的都属于软件的文档。n实现测试实现测试:按照不同的层次,又可细分:按照不同
4、的层次,又可细分为单元测试、综合测试、确认测试和系为单元测试、综合测试、确认测试和系统测试等步骤。测试是保证软件质量的统测试等步骤。测试是保证软件质量的重要手段。测试阶段的文档称为重要手段。测试阶段的文档称为“测试测试报告报告”,包括测试计划、测试用例与测,包括测试计划、测试用例与测试结果等内容。试结果等内容。3.运行维护时期运行维护时期n维护的目的,是使软件在整个生命周期维护的目的,是使软件在整个生命周期内保证满足用户的需求和延长使用寿命。内保证满足用户的需求和延长使用寿命。每一次进行维护,都应该遵守规定的程每一次进行维护,都应该遵守规定的程序,并填写和更改好有关的文档。序,并填写和更改好有
5、关的文档。n维护时期不再进一步划分阶段。维护时期不再进一步划分阶段。软件过程模型软件过程模型软件过程模型:软件过程模型:软件项目开发和维护的总体过程思路的软件项目开发和维护的总体过程思路的框架框架。也称之。也称之为软件开发模型或软件生命期模型。为软件开发模型或软件生命期模型。它指出了软件开发过程各阶段之间的关系和顺序,是它指出了软件开发过程各阶段之间的关系和顺序,是软件开发过程的概括软件开发过程的概括。它为软件开发过程提供原则和方法,。它为软件开发过程提供原则和方法,并为软件工程管理提供里程碑和进度表。因此,软件开发并为软件工程管理提供里程碑和进度表。因此,软件开发模型也是软件工程的重要内容。
6、模型也是软件工程的重要内容。软件过程模型软件过程模型瀑布模型瀑布模型原型模型原型模型螺旋模型螺旋模型喷泉模型喷泉模型增量模型增量模型瀑布模型瀑布模型瀑布模型的基本思想是:瀑布模型的基本思想是:瀑布模型严格按照软件生存周期各个阶段来进行开瀑布模型严格按照软件生存周期各个阶段来进行开发,发,上一阶段的输出即是下一阶段的输入上一阶段的输出即是下一阶段的输入,并强调每一,并强调每一阶段的严格性。阶段的严格性。形如瀑布流水,最形如瀑布流水,最终终得到得到软软件件产产品。品。它规定了各阶段的任务和应提交的成果及文档,每一阶段它规定了各阶段的任务和应提交的成果及文档,每一阶段的任务完成后,都必须对其阶段性产
7、品(主要是文档)的任务完成后,都必须对其阶段性产品(主要是文档)进行评审,通过后才能开始下一阶段的工作。因此,它进行评审,通过后才能开始下一阶段的工作。因此,它是一种以文档作为驱动的模型。是一种以文档作为驱动的模型。特点:特点:上一阶段的变换结果上一阶段的变换结果 是下一阶段的变换的是下一阶段的变换的 输入,相邻两个阶段输入,相邻两个阶段 具有因果关系,紧密相联。具有因果关系,紧密相联。需求分析需求分析问题定义问题定义可性行研究可性行研究计划计划时期时期概要设计概要设计详细设计详细设计编编 码码 测测 试试开发开发时期时期运行与维护运行与维护运运 行行时时 期期瀑布模型瀑布模型的特点瀑布模型的
8、特点1.阶段间具有顺序性和依赖性阶段间具有顺序性和依赖性2.推迟实现的观点推迟实现的观点3.质量保证的观点质量保证的观点瀑布模型需求分析需求分析计划计划设计设计编码编码测试测试运行、维护运行、维护定义定义阶段阶段开发开发阶段阶段维护维护阶段阶段瀑布模型瀑布模型瀑布模型的优点:瀑布模型的优点:1 1、强迫开发人员采用规范的技术方法;、强迫开发人员采用规范的技术方法;2 2、严格地规定了每个阶段必须提交的文档;、严格地规定了每个阶段必须提交的文档;3 3、每个阶段结束前必须正式进行严格的技术审查和管理、每个阶段结束前必须正式进行严格的技术审查和管理复审。复审。瀑布模型瀑布模型瀑布模型的缺点:瀑布模
9、型的缺点:1 1、在在软软件件开开发发的的初初期期阶阶段段就就要要求求做做出出正正确确、全全面面、完完整整的需求分析的需求分析对许多应用软件来说是极其困难的。对许多应用软件来说是极其困难的。2 2、在在需需求求分分析析阶阶段段,当当需需求求确确定定后后,无无法法及及时时验验证证需需求求是否正确、完整。是否正确、完整。3 3、作为整体开发的瀑布模型,由于、作为整体开发的瀑布模型,由于不支持产品的演化不支持产品的演化,缺乏灵活性,对开发过程中很难发现的错误,只有在最缺乏灵活性,对开发过程中很难发现的错误,只有在最终产品运行时才能暴露出来,从而使软件产品难以维护。终产品运行时才能暴露出来,从而使软件
10、产品难以维护。软件过程模型软件过程模型瀑布模型瀑布模型原型模型原型模型螺旋模型螺旋模型喷泉模型喷泉模型增量模型增量模型原型模型原型模型原型模型也称快速原型模型,原型模型也称快速原型模型,基本思想:基本思想:软件开发人员在与用户进行需求分析时,软件开发人员在与用户进行需求分析时,以比较小的代价以比较小的代价快速建立一个能够反映用户主快速建立一个能够反映用户主要需求的原型系统要需求的原型系统,在实践过程中提出改进意,在实践过程中提出改进意见,开发人员根据用户的意见,对原型进行补见,开发人员根据用户的意见,对原型进行补充和完善,然后再由用户试用、评价、提出建充和完善,然后再由用户试用、评价、提出建议
11、,重复这一过程,直到用户对开发的原型系议,重复这一过程,直到用户对开发的原型系统满意为止。统满意为止。原型模型原型模型主要做法是:主要做法是:首先建立一个能够反映用户主要需求的原型,首先建立一个能够反映用户主要需求的原型,让用户实际看一看未来系统的概貌,以便判让用户实际看一看未来系统的概貌,以便判断哪些功能是符合需要的,哪些方面还需要断哪些功能是符合需要的,哪些方面还需要改进。然后将原型反复改进,最终建立完全改进。然后将原型反复改进,最终建立完全符合用户要求的新系统。符合用户要求的新系统。原型模型原型模型需需求求的的采采集集和和细细化化快速设计快速设计建造原型建造原型用户评价原型用户评价原型对
12、原型加工对原型加工(需需求求精精确确化化)产品样品产品样品(需求确认需求确认)开始开始停止停止原型运行原型运行反馈意见反馈意见修改修改/更新更新原型模型的特点原型模型的特点加工加工原型原型原型原型快速分析快速分析和设计和设计建造建造原型原型客户客户评价原型评价原型1 1、原型系统仅包括未来系统的主要功能,、原型系统仅包括未来系统的主要功能,以及系统的重要接口。(它不包括细节,以及系统的重要接口。(它不包括细节,例如异常处理,对无效输入的反应等,例如异常处理,对无效输入的反应等,对系统的性能需求:如硬件运行速度等对系统的性能需求:如硬件运行速度等也可推迟考虑)也可推迟考虑)2 2、为了尽快向用户
13、提供原型,、为了尽快向用户提供原型,开发原型系统时应尽量使用开发原型系统时应尽量使用 能缩短开发周期的语言和工能缩短开发周期的语言和工 具。具。原型模型原型模型n举例:举例:UNIX支持的支持的SHELL语言是一种功能很强的高级语言是一种功能很强的高级语言,有人用这种语言来写一个办公自动化系语言,有人用这种语言来写一个办公自动化系统的原型系统,只需要一天就完成了编程和测统的原型系统,只需要一天就完成了编程和测试,比使用其他高级语言快了许多倍。试,比使用其他高级语言快了许多倍。虽然虽然SHELL语言在运行时需要很大的支撑系统,语言在运行时需要很大的支撑系统,运行速度也是比较缓慢的,不太适宜用来实
14、现运行速度也是比较缓慢的,不太适宜用来实现最终的实际系统,但用它来开发原型系统,可最终的实际系统,但用它来开发原型系统,可以大大加快实现的速度。以大大加快实现的速度。原型模型原型模型原型模型的适应场合:原型模型的适应场合:原型模型比瀑布模型原型模型比瀑布模型更符合人们认识事物的过程更符合人们认识事物的过程和规律,和规律,是一种较实用的开发框架。是一种较实用的开发框架。它适合于那些它适合于那些不能预先确切定义需求不能预先确切定义需求的软件系统的开发,的软件系统的开发,更适合于那些项目组成员(包括分析员、设计员、程序更适合于那些项目组成员(包括分析员、设计员、程序员和用户)不能很好交流或通信有困难
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 生命周期 姜鑫乐
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内