2.软件过程解析.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.软件过程解析

CMMI Model Components 软件过程模型 所谓软件过程模型就是一种开发策略,这种策略针对软件工程的各个阶段提供了一套范形,使工程的进展达到预期的目的。对一个软件的开发无论其大小,我们都需要选择一个合适的软件过程模型,这种选择基于项目和应用的性质、采用的方法、需要的控制,以及要交付的产品的特点。 一个软件过程模型是软件过程的一个抽象表示法。每个过程模型从一个特定的角度表现一个过程,只提供过程的某一侧面的信息。 典型的软件过程模型有: 瀑布模型 原型(迭代)模型 喷泉模型 增量模型 螺旋模型 构件组装模型 瀑布模型(waterfall Model) 传统的生命周期模型 70年由Royce提出 典型瀑布模型具有顺序性和依赖性 瀑布模型的特征: 从上一项活动中接受该项活动的工作成果(工作产品),作为输入。 利用这一输入实施该项活动应完成的内容。 给出该项活动的工作成果,作为输出传给下一项活动。 对该项活动实施的工作进行评审。若其工作得到确认,则继续下一项活动。 问题定义 软件需求 总体设计 详细设计 编程调试 运行维护 定义阶段 开发阶段 维护阶段 瀑布模型的优缺点 瀑布模型的优点: 从上一项活动中接受该项活动的 工作成果(工作产品),作为输入; 强调开发的阶段性; 强调早期计划及需求调查; 强调产品测试。 瀑布模型的缺点: 从认识论角度看,人的认识是一个多次反复循环的过程,不可能一次完成。但瀑布模型中划分的几个阶段,没有反映出这种认识过程的反复性。特别是瀑布模型过于依赖早期进行的唯一一次需求调查,不能适应需求的变化; 软件开发是一个知识密集型的开发活动,需要相互合作完成,但瀑布模型没有体现这一点。特别是由于瀑布模型是单一流程,开发中的经验教训不能反馈应用于本产品的过程。 分析 正确的规格说明 原始要求 错误的规格说明 设计 编码 测试 正确编码 正确功能 正确设计 对错误说明的设计 错误编码 可纠正错误 错误设计 错误设计的编码 错误说明编码 不可纠正和潜伏的错误 交付的软件产品 原型(迭代)模型 基本思想: 在获取一组基本的需求定义后,利用高级软件工具的可开发环境,快速地建立一个目标系统的最初版本-原型,并把它交给用户试用、补充和修改,再进行新的版本开发。反复进行这个过程,直到得出系统的“精确解”,即用户满意为止。 经过这样一个反复补充和修改的过程,应用系统的“最初版本”就逐步演变为系统的“最终版本”。 原型:一个真实的可执行模型,它实现了系统的若干基本功能。 原型法:不断地运行系统“原型”来进行启发、揭示和判断的系统开发方法。 来源: 利用相应原型开发工具快速开发。 已经完成核心产品开发和试点,进行本地化、客户化的过程,称为二次开发(迭代和演化)。 原型(迭代)模型 快速建立原型的目的,是获取需求: 在“需求分析” 阶段,开发团队和用户一起为想象中的系统的某些主要部分,定义需求和规格说明,并由开发团队在规格说明级用原型描述语言构造一个系统原型,它代表了部分系统,包括哪些为满足用户需求的必要属性。 该原型可用来帮助分析和设计工作,而不是一个软件产品。 通过演示原型,用户可以根据他所期望的系统行为来评价原型的实际行为。如果原型不能满意地运行,用户能立刻找出问题和不可接受的地方,并与开发团队重新定义需求。 该过程一直持续到用户认为该原型能成功地体现想象中的系统的主要部分 功能为止。 在这期间,用户和开发团队都不要为程序算法或设计技巧等枝节问题 分心,而是要确定开发团队是否理解了用户的意思,同时试验实现 它们的若干方法。 有了满意的系统原型,同时也积累了使用原型的经验, 用户常会提出新目标,从而进一步重新原型周期。新目标 的范围要比修改或补充不满意的原型大。 开发要求 分析评价 软件环境 用户 开发团队 构造原型 原型(迭代)模型 软件原型是软件的最初版本,以最少的费用、最短的时间开发出的、反映最后软件的主要特征的系统。它具有以下特征: 它是一个可实际运行的系统。 它没有固定的生存期。一种极端是扔掉原型(以最简便方式大量借用已有软件,做出最后产品的模型,证实产品设想是成功的,但在产品中并不使用这些模块);另一种极端是最终产品的一部分即增量原型(先做出最终产品的核心部分,逐步增加补充模块),演进原型居于其中(每一版本扔掉一点,增加一点,逐步完善至最终产品)。 从需求分析到最终产品都可作原型,即可为不同目标作原型。 它必须快速、廉价。 它是迭代过程的集成部分,即每次经用户评价后修改、运行,不断重复双方认可。 原型(迭代)模型的优点 原型(迭代)模型的优点: 任何功能一经开发就能进入测试以便验证是否符合产品需求。 帮助导引出高质量的产品要求。如果没有可能在一开始就弄清楚所有的产品需求,它们可以分批取得。而对于已提出

您可能关注的文档

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档