软件工程第2章-软件生存周期及其模型课件.pptx

上传人(卖家):晟晟文业 文档编号:3892879 上传时间:2022-10-23 格式:PPTX 页数:45 大小:2.01MB
下载 相关 举报
软件工程第2章-软件生存周期及其模型课件.pptx_第1页
第1页 / 共45页
软件工程第2章-软件生存周期及其模型课件.pptx_第2页
第2页 / 共45页
软件工程第2章-软件生存周期及其模型课件.pptx_第3页
第3页 / 共45页
软件工程第2章-软件生存周期及其模型课件.pptx_第4页
第4页 / 共45页
软件工程第2章-软件生存周期及其模型课件.pptx_第5页
第5页 / 共45页
点击查看更多>>
资源描述

1、2 为了克服软件危机,人们从其他产业的工业化为了克服软件危机,人们从其他产业的工业化生产得到启示,于是在生产得到启示,于是在68年北大西洋公约的软件可年北大西洋公约的软件可靠性会议(靠性会议(NATO)上,首次提出了)上,首次提出了“软件工程软件工程”的概念。提出了在软件生产中采用工程化的方法,的概念。提出了在软件生产中采用工程化的方法,采用一系列科学的、现代化的方法技术来开发软件。采用一系列科学的、现代化的方法技术来开发软件。这种工程化的思想贯穿到软件开发和维护的全过程。这种工程化的思想贯穿到软件开发和维护的全过程。是指在软件工具的支持下,所进行的一系列软是指在软件工具的支持下,所进行的一系

2、列软件开发和进化的活动。件开发和进化的活动。通常包括以下四类基本过程:通常包括以下四类基本过程:1 1、软件规格说明:、软件规格说明:规定软件的功能及其运行环境。规定软件的功能及其运行环境。2 2、软件开发:、软件开发:产生满足规格说明的软件。产生满足规格说明的软件。3 3、软件确认:、软件确认:确认软件能够完成客户提出的要求。确认软件能够完成客户提出的要求。4 4、软件演进:、软件演进:为满足客户的变更要求,软件必须在为满足客户的变更要求,软件必须在使用的过程中演进。使用的过程中演进。工具工具和设备和设备有技能经过培有技能经过培训的开发人员训的开发人员软件工程软件工程过程过程方法方法工具工具

3、软件工程釆用层次化的方法软件工程釆用层次化的方法,每个层次都包括过程、每个层次都包括过程、方法、工具三要素。方法、工具三要素。典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:要解决的问题是什基本任务:要解决的问题是什么?该问题有行得通的解决办么?该问题有行得通的解决办法吗?若有,则需要多少费用、法吗?若有,则需要多少费用、资源、时间等?资源、时间等?结束标准:提出书面可行性研结束标准:提出书面可行性研究报告;若问题值得去解决,究报告;若问题值得去解决,制定项目开发计划。制定项目开发计划。典型的软件生存周期

4、包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:为了解决问题,目标系基本任务:为了解决问题,目标系统必须做什么?确定目标系统的功统必须做什么?确定目标系统的功能。能。结束标准:给出软件需求说明书结束标准:给出软件需求说明书典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:概括地说,应如何解决基本任务:概括地说,应如何解决这个问题?把确定的各项功能需求这个问题?把确定的各项功能需求转换成需要的体系结构。设计软件转换成需要的体系结构。设计软件的结构,确定程序由哪些模块组成的结构,确定程序由哪些模块组成及模块间的关系,同时设计该项目及模块间的关系,同时设计该项目的总体

5、数据结构和数据库结构。的总体数据结构和数据库结构。结束标准:给出概要设计文档结束标准:给出概要设计文档典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:应怎样具体地实现这个基本任务:应怎样具体地实现这个系统?为每个模块完成的功能进行系统?为每个模块完成的功能进行具体描述,把功能描述转变为精确具体描述,把功能描述转变为精确的、结构化的过程描述。的、结构化的过程描述。结束标准:设计出程序的详细规格结束标准:设计出程序的详细规格说明书说明书典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:

6、把每个模块的控制基本任务:把每个模块的控制结构转换成计算机可接受的程结构转换成计算机可接受的程序代码。程序应是结构好、清序代码。程序应是结构好、清晰易读,并且与设计一致。晰易读,并且与设计一致。结束标准:以某种程序设计语结束标准:以某种程序设计语言表示的源程序清单。言表示的源程序清单。典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:为保证软件的质量,基本任务:为保证软件的质量,在设计测试用例的基础上检验在设计测试用例的基础上检验软件的各个组成部分,是否达软件的各个组成部分,是否达到预定要求。到预定要求。结束标准:软件合格,能交付结束标准:软件合格,能交付用户使用。用户

7、使用。典型的软件生存周期包括以下阶段:典型的软件生存周期包括以下阶段:基本任务:通过各种必要的维基本任务:通过各种必要的维护活动使系统持久地满足用户护活动使系统持久地满足用户需要,是软件生存周期中时间需要,是软件生存周期中时间最长的阶段。最长的阶段。结束标准:以某种程序设计语结束标准:以某种程序设计语言表示的源程序清单。言表示的源程序清单。开发开发时期时期运行运行时期时期计划计划时期时期(目标与范围说明书目标与范围说明书)(可行性论证论告可行性论证论告)(维护报告维护报告)(测试报告测试报告)(源程序清单源程序清单)(设计文档设计文档)(需求说明书需求说明书)瀑布模型软件开发模型是描述软件开发

8、过程中各种活动如何软件开发模型是描述软件开发过程中各种活动如何执行的模型。因此又称为执行的模型。因此又称为软件过程模型软件过程模型。软件过程模型是对软件开发实际过程的抽象和软件过程模型是对软件开发实际过程的抽象和简化。简化。目前典型的软件开发模型有:目前典型的软件开发模型有:瀑布模型、增量模型、原型模型、螺旋模型、瀑布模型、增量模型、原型模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等。喷泉模型、变换模型和基于知识的模型等。不同的开发方法有不同的软件过程模型。不同的开发方法有不同的软件过程模型。软件过程模型是软件开发全过程、软件开软件过程模型是软件开发全过程、软件开发活动以及它们之间关系的

9、结构框架发活动以及它们之间关系的结构框架 软件项目的管理提供里程碑和进度表软件项目的管理提供里程碑和进度表 为软件开发提供原则和方法为软件开发提供原则和方法1.以软件需求完全确定为前提的以软件需求完全确定为前提的瀑布模型瀑布模型2.在软件开发初期只能提供基本需求所采在软件开发初期只能提供基本需求所采用的渐进式开发模型如用的渐进式开发模型如原型模型、螺旋原型模型、螺旋模型、增量模型、并发开发模型模型、增量模型、并发开发模型3.以形式化开发方法为基础的以形式化开发方法为基础的变换模型变换模型4.基于构件的开发过程基于构件的开发过程5.敏捷开发过程敏捷开发过程-统一软件开发过程统一软件开发过程RUP

10、开发开发时期时期运行运行时期时期计划计划时期时期(目标与范围说明书目标与范围说明书)(可行性论证论告可行性论证论告)(维护报告维护报告)(测试报告测试报告)(程序程序)(设计文档设计文档)(需求说明书需求说明书)瀑布模型 软件开发过程与软件生命周期是一致的软件开发过程与软件生命周期是一致的 相邻二阶段之间存在因果关系相邻二阶段之间存在因果关系 需对阶段性产品进行评审需对阶段性产品进行评审 软件生命周期模软件生命周期模型型,使软件开发过程可以在使软件开发过程可以在分析、设计、编码、测试和维护的框架下分析、设计、编码、测试和维护的框架下进行;进行;软件开发过程具有系统性、可控性,克服软件开发过程具

11、有系统性、可控性,克服了软件开发的随意性了软件开发的随意性。项目开始阶段用户很难精确的提出产品需求,项目开始阶段用户很难精确的提出产品需求,由于技术进步,用户对系统深入的理解,修改由于技术进步,用户对系统深入的理解,修改需求十分普遍。需求十分普遍。项目开发晚期才能得到程序的运行版本,这时项目开发晚期才能得到程序的运行版本,这时修改软件需求和开发中的错误代价很大。修改软件需求和开发中的错误代价很大。采用线性模型组织项目开发经常发生开发小组采用线性模型组织项目开发经常发生开发小组人员人员“堵塞状态堵塞状态”,特别是项目的开始和结束。,特别是项目的开始和结束。增量模型是一种非整体开发的模型。是一种进

12、增量模型是一种非整体开发的模型。是一种进化式的开发过程。化式的开发过程。根据增量的方式和形式的不同,分为:根据增量的方式和形式的不同,分为:基于瀑布模型的渐增模型基于瀑布模型的渐增模型基于原型的快速原型模型基于原型的快速原型模型该模型具有较大的灵活性,适合于软件需求不该模型具有较大的灵活性,适合于软件需求不明确、设计方案有一定风险的软件项目。明确、设计方案有一定风险的软件项目。增量增量 小而可用的软件小而可用的软件 特点特点 在前面增量的基础上开发后面的增量在前面增量的基础上开发后面的增量 每个增量的开发可用瀑布或快速原型模型每个增量的开发可用瀑布或快速原型模型 迭代的思路迭代的思路需求分析需

13、求分析设计设计编码编码测试测试运行运行评价评价计划计划循环模型 速成原型的工作模型是一个循速成原型的工作模型是一个循环的模型。环的模型。1.1.快速分析快速分析 快速确定软件系统的基快速确定软件系统的基本要求,确定原型所要体现的特征本要求,确定原型所要体现的特征(界面,总体结构,功能,性能界面,总体结构,功能,性能)2.2.构造原型构造原型 考虑主要特征,快速构考虑主要特征,快速构造一个可运行的系统。有三类原型:造一个可运行的系统。有三类原型:用户界面原型,功能原型,性能原用户界面原型,功能原型,性能原型。型。3.3.运行和评价原型运行和评价原型 4.4.修改与改进修改与改进原型的工作模型运行

14、运行评价评价构造构造快速分析修改快速分析修改软件开发的目标是要在规定的投资和时间内,软件开发的目标是要在规定的投资和时间内,开发出符合用户的需求,高质量的软件,为此需开发出符合用户的需求,高质量的软件,为此需要有成功的开发方法。要有成功的开发方法。面向过程(结构化)的开发方法面向过程(结构化)的开发方法 面向对象的开发方法面向对象的开发方法是现有的软件开发方法中最成熟,应用最广泛的方法,是现有的软件开发方法中最成熟,应用最广泛的方法,主要特点是快速,自然和方便。主要特点是快速,自然和方便。结构化方法总的指导思想自顶向下、逐步求精。它的结构化方法总的指导思想自顶向下、逐步求精。它的基本原则是功能

15、的分解与抽象。基本原则是功能的分解与抽象。结构化程序设计方法结构化程序设计方法 SP法(法(Structured Program)结构化设计方法结构化设计方法 SD法(法(Structured Design)结构化分析方法结构化分析方法 SA法(法(Structured Analysis)SA,SD,SP 法相互衔接,形成了法相互衔接,形成了一整套开发方法。一整套开发方法。什么是原型化方法什么是原型化方法原型原型是软件的一个早期是软件的一个早期的版本,它的版本,它反映了最终系统的部分重要特性。反映了最终系统的部分重要特性。原型化方法的基本思想是花费少量代价建立一原型化方法的基本思想是花费少量代

16、价建立一个可运行的系统,使用户及早获得学习的机会。个可运行的系统,使用户及早获得学习的机会。原 型 化 方 法 又 称 速 成 原 型 法(原 型 化 方 法 又 称 速 成 原 型 法(R a p i d Prototyping)。)。YYNNYN细化的快速原型模型快速分析或修改快速分析或修改评价评价构造构造运运 行行 原型模型支持软件需求开发,帮助用户和开发人原型模型支持软件需求开发,帮助用户和开发人员理解需求,是软件需求工程的关键。员理解需求,是软件需求工程的关键。它产生的正式需求文挡,是软件开发的基础。它产生的正式需求文挡,是软件开发的基础。如果开发的原型是可运行的,它的若干高质量的如

17、果开发的原型是可运行的,它的若干高质量的程序片段和开发工具可用于工作程序的开发。程序片段和开发工具可用于工作程序的开发。原型的开发和评审是系统分析员和用户原型的开发和评审是系统分析员和用户/客户共同客户共同参予的迭代过程,每个迭代循环都是线性过程。参予的迭代过程,每个迭代循环都是线性过程。对大型软件对大型软件,需要多个原型描述系统的生存期,需要多个原型描述系统的生存期,螺旋模螺旋模型将瀑布模型与原型化模型结合起来型将瀑布模型与原型化模型结合起来,并加入了风险分析。并加入了风险分析。螺旋模型 螺旋模型将开发过程螺旋模型将开发过程分为几个螺旋周期,每分为几个螺旋周期,每个螺旋周期可分为个螺旋周期可

18、分为4 4个工个工作步骤:作步骤:第一,确定目标、方案第一,确定目标、方案和限制条件;和限制条件;第二,评估方案、标识第二,评估方案、标识风险和解决风险;风险和解决风险;第三,开发确认产品;第三,开发确认产品;第四,计划下一周期工第四,计划下一周期工作。作。软件工程项目从螺旋中心开始启动,沿顺时针方软件工程项目从螺旋中心开始启动,沿顺时针方向前进。向前进。第一圈第一圈 产生产品规格说明;产生产品规格说明;第二圈第二圈 产生一个用于开发的原型;产生一个用于开发的原型;第三圈第三圈 产生软件产品的初始版本;产生软件产品的初始版本;第四圈第四圈 产生软件产品比较完善的新版本产生软件产品比较完善的新版

19、本 。符合人们认识现实世界和软件开发的客覌规律;符合人们认识现实世界和软件开发的客覌规律;支持软件整个生命周期;支持软件整个生命周期;保持瀑布模型的系统性、阶段性;保持瀑布模型的系统性、阶段性;利用原型评估降低开发风险;利用原型评估降低开发风险;开发者和用户共同参与软件开发,尽早发现软件开发者和用户共同参与软件开发,尽早发现软件中的错误;中的错误;不断推出和完善软件版本,有助于需求变化,获不断推出和完善软件版本,有助于需求变化,获取用户需求,加强对需求的理解。取用户需求,加强对需求的理解。OOSD(Object-Oriented Software Development)是)是80年代推出的一

20、种全年代推出的一种全新的软件开发方法。非常实用而强有力,被誉为新的软件开发方法。非常实用而强有力,被誉为90年代软件的核心技术之一。年代软件的核心技术之一。其基本思想是:其基本思想是:对问题领域进行自然的分割,对问题领域进行自然的分割,以更接近人类通常思维的方式建立问题领域的模以更接近人类通常思维的方式建立问题领域的模型,以便对客观的信息实体进行结构和行为的模型,以便对客观的信息实体进行结构和行为的模拟,从而使设计的软件更直接地表现问题的求解拟,从而使设计的软件更直接地表现问题的求解过程。面向对象的开发方法以对象作为最基本的过程。面向对象的开发方法以对象作为最基本的元素,是分析和解决问题的核心

21、。元素,是分析和解决问题的核心。OOSD由三部分组成:由三部分组成:OOA(Object-Oriented Analysis)面向对象的分析面向对象的分析 OOD(Object-Oriented Design)面向对象的设计面向对象的设计 OOP(Object-Oriented Program)面向对象的程序设计面向对象的程序设计OOAOOA强调的是对一个系统中的对象特征和行强调的是对一个系统中的对象特征和行为的定义。建立系统的三类模型。为的定义。建立系统的三类模型。OODOODOOD与与OOAOOA密切配合顺序实现对现实世界的进密切配合顺序实现对现实世界的进一步建模。一步建模。OOPOOPO

22、OP是面向对象的技术中发展最快的,使用是面向对象的技术中发展最快的,使用面向对象的程序设计语言,进行编码。面向对象的程序设计语言,进行编码。分分 析析系统系统 设计设计软件软件 设计设计实实 现现喷泉模型该模型是由该模型是由B.H.Sollers和和J.M.Edwards于于1990年提出的年提出的一种新的开发模型。它克服了瀑布模型不支持软件重用和一种新的开发模型。它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性,喷泉模型使开发过程具有迭多项开发活动集成的局限性,喷泉模型使开发过程具有迭代性和无间隙性。代性和无间隙性。其特点如下:其特点如下:.开发过程有分析、系统设计、软件开发过程有分

23、析、系统设计、软件设计和实现设计和实现4个阶段。个阶段。.各阶段相互重叠,它反映了软件过各阶段相互重叠,它反映了软件过程并行性的特点。程并行性的特点。.以分析为基础,资源消耗成塔型。以分析为基础,资源消耗成塔型。.反映了软件过程迭代性的自然特性,反映了软件过程迭代性的自然特性,从高层返回低层无资源消耗。从高层返回低层无资源消耗。.强调增量开发,整个过程是一个迭强调增量开发,整个过程是一个迭代的逐步提炼的过程。代的逐步提炼的过程。面向对象的方法的代表性成果有:面向对象的方法的代表性成果有:1.B.Henderson-sellers 和和 J.m.Edwards提出的面向对象软件提出的面向对象软件

24、生存期喷泉模型及面向对象的系统开发方法。生存期喷泉模型及面向对象的系统开发方法。2.G.Booch提出的面向对象的开发方法。提出的面向对象的开发方法。3.P.Coad和和E.Yourd提出的提出的OOA和和OOD法。法。4.J.Rumbaugh等人提出的对象建模技术等人提出的对象建模技术(OMT)。5.Jacobson 提出的面向对象的软件工程提出的面向对象的软件工程(OOSE)。6.G.booch J.Rumbough Jacobson等人在等人在Booch方法、方法、OMT和和OOSE的基础上推出了统一建模语言的基础上推出了统一建模语言UML。生活中的辛苦阻挠不了我对生活的热爱。22.10

25、.2322.10.23Sunday,October 23,2022人生得意须尽欢,莫使金樽空对月。0:07:440:07:440:0710/23/2022 12:07:44 AM做一枚螺丝钉,那里需要那里上。22.10.230:07:440:07Oct-2223-Oct-22日复一日的努力只为成就美好的明天。0:07:440:07:440:07Sunday,October 23,2022安全放在第一位,防微杜渐。22.10.2322.10.230:07:440:07:44October 23,2022加强自身建设,增强个人的休养。2022年10月23日上午12时7分22.10.2322.10.

26、23精益求精,追求卓越,因为相信而伟大。2022年10月23日星期日上午12时7分44秒0:07:4422.10.23让自己更加强大,更加专业,这才能让自己更好。2022年10月上午12时7分22.10.230:07October 23,2022这些年的努力就为了得到相应的回报。2022年10月23日星期日0时07分44秒0:07:4423 October 2022科学,你是国力的灵魂;同时又是社会发展的标志。上午12时7分44秒上午12时7分0:07:4422.10.23每天都是美好的一天,新的一天开启。22.10.2322.10.230:070:07:440:07:44Oct-22相信命运,让自己成长,慢慢的长大。2022年10月23日星期日0时07分44秒Sunday,October 23,2022爱情,亲情,友情,让人无法割舍。22.10.232022年10月23日星期日0时07分44秒22.10.23谢谢大家!谢谢大家!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件工程第2章-软件生存周期及其模型课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|