(新)第2讲:软件过程模型(教学讲解课件).ppt

上传人(卖家):晟晟文业 文档编号:4980779 上传时间:2023-01-30 格式:PPT 页数:56 大小:2.34MB
下载 相关 举报
(新)第2讲:软件过程模型(教学讲解课件).ppt_第1页
第1页 / 共56页
(新)第2讲:软件过程模型(教学讲解课件).ppt_第2页
第2页 / 共56页
(新)第2讲:软件过程模型(教学讲解课件).ppt_第3页
第3页 / 共56页
(新)第2讲:软件过程模型(教学讲解课件).ppt_第4页
第4页 / 共56页
(新)第2讲:软件过程模型(教学讲解课件).ppt_第5页
第5页 / 共56页
点击查看更多>>
资源描述

1、第二次课:软件工程的基本过程模型与方法p软件生命周期软件生命周期p软件工程的基本过程软件工程的基本过程p软件工程的基本方法软件工程的基本方法p问题定义与可行性分析问题定义与可行性分析 (教学讲解课件)软件工程p软件工程主要研究内容:软件工程主要研究内容:1.1.一个目标一个目标:如何经济的、高质量的开发与维护一个软件系统2.2.三个三个方面方面:过程、方法、工具(教学讲解课件)可行性分析需求分析概要设计详细设计编程实现测试部署维护可行性分析方法软件工程方法软件工程方法软件工程工具软件工程工具需求分析方法概要设计方法详细设计方法编程实现方法测试方法维护方法支持方法的工具支持方法的工具(教学讲解课

2、件)软件生命周期p软件生命周期的定义:软件生命周期的定义:软件产品从考虑其概念开始到交付使用,直至最终退役为止的整个过程(教学讲解课件)5 (教学讲解课件)软件生命周期(教学讲解课件)1.问题定义问题定义“要解决的问题是什么?要解决的问题是什么?”2.可行性研究可行性研究“对于上一阶段定义的问题有行得通的解决办法吗?对于上一阶段定义的问题有行得通的解决办法吗?”可可行性研究报告行性研究报告3.需求分析需求分析“目标系统必须做什么?目标系统必须做什么?”需求规格说明书需求规格说明书4.总体设计(概要设计)总体设计(概要设计)“概括的说,应该怎么实现目标系统?概括的说,应该怎么实现目标系统?”概要

3、设计说明书概要设计说明书(教学讲解课件)5.详细设计(模块设计)详细设计(模块设计)“应该怎么具体地实现这个系统呢?应该怎么具体地实现这个系统呢?”详细设计说明书详细设计说明书6.编码和单元测试编码和单元测试7.综合测试(集成测试,验收测试)综合测试(集成测试,验收测试)8.软件维护软件维护(改正性维护,适应性维护,完善性维护,(改正性维护,适应性维护,完善性维护,防御性维护)防御性维护)(教学讲解课件)软件过程模型p什么是模型?什么是模型?模型模型:对现实世界的抽象,是对现实世界的物物、或者现象现象的抽象抽象抽象:提取所关注的信息,而忽略不重要、次要的信息模型的作用模型的作用:有助于人们对现

4、实世界的认识模型的表示模型的表示:任何形式(数学公式、图像、文本)(教学讲解课件)软件过程模型p什么是软件过程模型?什么是软件过程模型?软件过程模型软件过程模型:对软件开发全部过程的抽象,是对软件全部开发过程中所涉及的活动(或者任务)、以及活动之间的关系的抽象软件过程模型的作用软件过程模型的作用:告诉人们应该去遵循一个什么样的过程去开发软件系统 (教学讲解课件)软件过程模型p几种常见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模型螺旋模型喷泉模型(教学讲解课件)软件过程模型p软件过程模型:瀑布模型软件过程模型:瀑布模型l 1970年提出l 生命周期的各项活动自上而下,相互衔接呈线性

5、图状,如同瀑布流水瀑布流水,逐级逐级下落下落l 各个活动之间具有顺序性顺序性和依赖性依赖性(教学讲解课件)软件过程模型p软件过程模型:瀑布模型软件过程模型:瀑布模型l 特点:特点:1)强调了每一阶段的严格性阶段的严格性,强调推迟实现推迟实现2)强调质量保证强调质量保证:每个阶段通过严格的阶阶段评审与确认段评审与确认,得到一致、完整、准确、无二义性的文文档档,并“冻结”文档为该阶段结束的标志;3)是一种整体开发模型(教学讲解课件)软件过程模型p软件过程模型:瀑布模型软件过程模型:瀑布模型l局限性:局限性:1)在软件开发的初期阶段获取正确、完整的需求很困难2)理想的线性开发模式,缺理想的线性开发模

6、式,缺乏灵活性乏灵活性3)阶段划分完全固定,产生大量文档大量文档,极大地增加了工作增加了工作量量(教学讲解课件)软件过程模型p几种常见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模型螺旋模型喷泉模型(教学讲解课件)软件过程模型p软件过程模型:原型模型软件过程模型:原型模型l 原型:原型:软件的一个早期可运行的版本,它反映最终系统的部分重要功能和性能l 原型的作用:原型的作用:准确地确定用户需求准确地确定用户需求l 主要使用领域:主要使用领域:1.系统特别大2.系统需求不明确(教学讲解课件)软件过程模型p软件过程模型:原型模型软件过程模型:原型模型l优点优点:1)用户参与,尽早揭示软

7、件中用户参与,尽早揭示软件中可能存在的风险及不确定因素可能存在的风险及不确定因素,尤其是关于用户需求一致性方面的风险。2)开发过程与用户培训过程同开发过程与用户培训过程同步步,系统易维护,对用户更友好,产品柔性好。(教学讲解课件)软件过程模型p软件过程模型:原型模型软件过程模型:原型模型l局限性:局限性:1)对大型项目,不经过系统分析,一开始构造原型比较困难构造原型比较困难2)对于那些不是与用户密切交互的软件(比如大规模计算、批处理等软件),应用原型模原型模型有一定的困难,因为比较难型有一定的困难,因为比较难获取用户的评价获取用户的评价3)文档文档容易被忽略(教学讲解课件)软件过程模型p几种常

8、见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模型螺旋模型喷泉模型软件过程模型p软件过程模型:增量模型软件过程模型:增量模型非整体的、搭积非整体的、搭积木的开发的思想:木的开发的思想:1)把软件产品作为系统的增量构件来设计、编码、集成和测试2)每开发一部分,向用户展示一部分。需求分析需求分析验证验证规格说明规格说明验证验证设计设计验证验证维护维护针对每个构件完成详细针对每个构件完成详细设计、编码和集成,经设计、编码和集成,经测试后交付给用户测试后交付给用户增量模型的第一种变体:增量模型的第一种变体:先总体分析设计,开发时采用增量方式(教学讲解课件)软件过程模型p软件过程模型:增量模

9、型软件过程模型:增量模型分析分析分析分析分析分析设计设计设计设计设计设计编码编码编码编码编码编码测试测试测试测试测试测试构件构件1构件构件2 构件构件3增量模型的第二种变体:增量模型的第二种变体:完全的增量式分析、设计与开发,加快了形成产品的速度,但增加了不同构件不能组装一起的风险非整体的、搭积非整体的、搭积木的开发的思想:木的开发的思想:1)把软件产品作为系统的增量构件来设计、编码、集成和测试2)每开发一部分,向用户展示一部分。(教学讲解课件)软件过程模型p软件过程模型:增量模型软件过程模型:增量模型优点:优点:短时间内提交部分产品,降低开发风险适用范围适用范围:1)开发过程中,需求可能发生

10、变化,用户接受分阶段地提交产品2)分析设计人员对应用领域不熟悉,难以一步到位3)项目风险较高4)用户可以参与到整个软件开发过程5)软件公司自己有较好的类库和构件库(教学讲解课件)软件过程模型p几种常见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模型螺旋模型喷泉模型(教学讲解课件)(教学讲解课件)软件过程模型p软件过程模型:螺旋模型软件过程模型:螺旋模型l Boehm1988Boehm1988年提出年提出l 基本思想:基本思想:使用原型及其他方法来尽量降低风险l 增加了风险分析过程增加了风险分析过程的快快速原型模型速原型模型l 强调版本和版本升级版本和版本升级(教学讲解课件)软件过程

11、模型p软件过程模型:螺旋模型软件过程模型:螺旋模型l 优点:优点:1)将瀑布模型、原型模型和增量模型结合起来,加入了风险分析,弥补了不足之处2)风险驱动,方便项目管理人员及时调整管理决策及时调整管理决策,进而可降低开发风险3)支持用户需求的动态变化(教学讲解课件)软件过程模型p软件过程模型:螺旋模型软件过程模型:螺旋模型l 局限性局限性:1)需要有丰富的风险评估专家2)如果每次迭代的效率不高,致使迭代次数过多,将会增加成本并推迟提交时间l 适用领域:适用领域:需求不明确需求不明确的大型软件系统的开发(教学讲解课件)软件过程模型p几种常见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模

12、型螺旋模型喷泉模型(教学讲解课件)软件过程模型p软件过程模型:喷泉模型软件过程模型:喷泉模型l基本思想:基本思想:1)软件开发过程自下而上周期的各阶段是相互重叠和多次反复的(迭代性迭代性),就像水喷上去又可以落下来,类似一个喷泉2)各个开发阶段没有特定的次序要求(无间隙性无间隙性),并且可以交互进行,可以在某个开发阶段中随时补充其他任何开发阶段中的遗漏(教学讲解课件)软件过程模型p软件过程模型:喷泉模型软件过程模型:喷泉模型l 优点:优点:提高效率,节省开发时间l 缺点:缺点:没有严格的阶段区分,不便于管理(教学讲解课件)软件过程模型p各个模型的比较:各个模型的比较:过程模型过程模型优点优点缺

13、点缺点瀑布模型规范,文档驱动不灵活,产生大量文档原型模型尽早发现需求,揭示风险对于不是与用户密切交互的系统,较难获取用户评价;容易忽视文档增量模型快速提交产品,控制风险增加了不同构件集成的风险螺旋模型将瀑布、原型、增量三种模型结合起来,增加了风险分析,弥补他们的缺点要求具有丰富经验的风险分析专家喷泉模型提高效率,节省开发时间不严格区分开发阶段,不便于管理(教学讲解课件)课程进度我们现在的我们现在的位置位置(教学讲解课件)问题定义p目的:弄清目的:弄清“要解决的问题是什么?要解决的问题是什么?”p任务:任务:用户单位用户单位xxx水利局、地震局水利局、地震局负责人负责人xxx开发单位开发单位xx

14、xx开发单位负责人开发单位负责人xxxx项目名称项目名称三防决策系统问题描述问题描述手工无法完成防风、防汛、防震的事物,也无法预测某些地区在某些时间段内三防的具体情况项目目标项目目标开发一个效率较高的三防决策系统,便于相关部门能及时地掌握三防实时动态,.项目规模项目规模项目的开发预投入约xxx元可行性研究可行性研究建议进行3个月,费用不超过xxx元 xxx年xx月xx日 签字:xxxx可行性研究的目的 用用最小的代价最小的代价在在尽可能短的时间尽可能短的时间内研究并确内研究并确定客户提出的定客户提出的问题是否有行得通的解决办法问题是否有行得通的解决办法系统分析师的工作!系统分析师的工作!(教学

15、讲解课件)可行性研究的内容p技术可行性技术可行性p经济可行性经济可行性p操作可行性操作可行性p社会可行性社会可行性(教学讲解课件)可行性研究的过程1:确定系统的规模和目标确定系统的规模和目标2:研究目前正在使用的系统研究目前正在使用的系统3:导出新系统的高层逻辑模型导出新系统的高层逻辑模型4:重新定义问题重新定义问题5:导出和评价选择的解决方案导出和评价选择的解决方案6:推荐行动方针推荐行动方针7:草拟开发计划草拟开发计划8:书写文档提交审查书写文档提交审查(教学讲解课件)成本-效益分析技术目的:目的:从经济角度经济角度分析开发一个特定的新系统是新系统是否划算否划算,从而帮助客户组织的负责人正

16、确地做出是否投资于这项开发工程的决定。两方面内容:两方面内容:成本估算技术、效益估算方法成本估算技术、效益估算方法(教学讲解课件)成本估算技术p任务分解(自上向下)任务分解(自上向下)单个任务的成本单个任务的成本=人力(人月数)人力(人月数)*每人每月平均工资每人每月平均工资p代码行技术(自底向上)代码行技术(自底向上)软件功能成本软件功能成本=源代码行数源代码行数*每行代码的平均成本每行代码的平均成本p差别估算差别估算 (教学讲解课件)效益估算技术货币的时间价值货币的时间价值投资回收期投资回收期纯收入纯收入投资回收率投资回收率p几个度量指标几个度量指标(教学讲解课件)货币的时间价值p同样数量

17、的货币随时间的不同具有不同的价值p货币在不同时间的价值可用年利率(i)来折算p初始投资P,n年后的收益:pn年后的能收益F元,那这些钱的现在价值P为:nPF)1(inFP)1(i(教学讲解课件)例子:货币的时间价值背景背景:假设某软件生命周期为5年。现在投资20万元,平均年利率3%。从第一年起,每年年底收入4.2万元。P=20万4.2万4.2万4.2万4.2万4.2万012345l 初始投资初始投资5年后的价值年后的价值:231855)03.01(*205F2229841)03.01()03.01()03.01()03.01(*420001234Fl 投资投资5年后的回报:年后的回报:(教学讲

18、解课件)纯收入p整个生命周期之内系统的累计经济效益累计经济效益(折合成现值)与投资之差投资之差例子:纯收入背景背景:假设某软件生命周期为5年。现在投资20万元,平均年利率3%。从第一年起,每年年底收入4.2万元。P=20万4.2万4.2万4.2万4.2万4.2万012345l 投资投资5年的纯收入年的纯收入:7652-200000-)03.01(1)03.01(1)03.01(1)03.01(1)03.01(1*42000当前投资额-折合现价的总收入12345F(教学讲解课件)投资回收期p工程累计经济效益工程累计经济效益(折现之后折现之后)等于最初投资最初投资所需的时间(教学讲解课件)例子:投

19、资回收期(1/4)背景背景:假设某软件生命周期为5年。现在投资20万元,平均年利率3%。从第一年起,每年年底收入4.2万元。l初始投资初始投资5年后的价值年后的价值:l投资投资5年后的回报:年后的回报:231855)03.01(*2051F2229841)03.01()03.01()03.01()03.01(*4200012342F(教学讲解课件)例子:投资回收期(2/4)l 投资投资5年的纯收入年的纯收入:7652-200000-)03.01(1)03.01(1)03.01(1)03.01(1)03.01(1*42000当前投资额-折合现价的总收入123453F(教学讲解课件)例子:投资回收

20、期(3/4)l 投资投资6年后的纯收入(折现之后):年后的纯收入(折现之后):27520200000-)03.01(1)03.01(1)03.01(1)03.01(1)03.01(1)03.01(1*42000当前投资额-折合现价的总收入1234564F6年肯定收回投资!年肯定收回投资!例子:投资回收期(4/4)l 收回投资的大致时期:收回投资的大致时期:35174)03.01(1*42000年收益折现之后的价值第6622.0351747652间年中收入亏损的大致时第622.522.05收回投资的大致时间(教学讲解课件)投资回收率p设想把数量等于投资额的资金存入银行p每年年底从银行取回的钱等于

21、系统每年预期可以获得的效益p在时间等于系统寿命时,正好把在银行中的存款全部取光p此时的银行年利率年利率就是假想的投资回收率投资回收率投资回收率:每年年底收回的效益:当前投资额:.)1()1()1(33221jFPjFjFjFPi(教学讲解课件)例子:投资回收率%3银行年利率%65.1)1(1)1(1)1(1)1(111*420002000005432jjjjjj背景背景:假设某软件生命周期为5年。现在投资20万元,平均年利率3%。从第一年起,每年年底收入4.2万元。(教学讲解课件)系统流程图 用图形符号以黑盒子形式描述组成系统的每用图形符号以黑盒子形式描述组成系统的每个部件。描述的是数据在系统

22、各个部件之间的流个部件。描述的是数据在系统各个部件之间的流动情况,不是对数据进行加工处理的控制过程。动情况,不是对数据进行加工处理的控制过程。(教学讲解课件)系统流程图符号系统流程图符号(教学讲解课件)例例1 1:库存清单系统的系统流程图库存清单系统的系统流程图 系统流程图举例(教学讲解课件)例子例子2 2 人工销售教材流程图人工销售教材流程图系统流程图举例(教学讲解课件)例子例子3 3 计算机售书系统流程图计算机售书系统流程图结束结束学生学生购书发票购书发票到书库到书库领书领书 购书单购书单审查并审查并开发票开发票11-学生各学期用书数据库学生各学期用书数据库购书单购书单2 2-教材存量数据库教材存量数据库1-学生各学期用书数据库学生各学期用书数据库 2-教材存量数据库教材存量数据库系统流程图举例(教学讲解课件)小结p 软件生命周期:软件定义、软件开发、软件维护p 问题定义关注“软件将要解决什么样的问题?”p 可行性分析关于“用户的问题在给定条件下是否有解决办法?”p 可行性分析的过程:确定系统目标和规模、研究现有系统、建立新系统的逻辑模型、重新定义问题 (教学讲解课件)

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

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

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


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

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


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