(新)第2讲:软件过程模型(教学讲解课件).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《(新)第2讲:软件过程模型(教学讲解课件).ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 过程 模型 教学 讲解 课件
- 资源描述:
-
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几种常见的软件过程模型几种常见的软件过程模型瀑布模型原型模型增量模
展开阅读全文