CMMI组织标准生命周期.doc_第1页
CMMI组织标准生命周期.doc_第2页
CMMI组织标准生命周期.doc_第3页
CMMI组织标准生命周期.doc_第4页
CMMI组织标准生命周期.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

附录 组织标准生命周期 模 板 1 组织标准生命周期组织标准生命周期 Organizational Standard Life Cycle 编 号 OSSP PRM OPD LC 版 本 v2 0 发布时间 2008 10 10 2 变更记录变更记录 RECORD RECORD OFOF CHANGES CHANGES 版本号版本号生效日期生效日期变更理由变更理由 变更内容变更内容编制人编制人审批人审批人 3 目目 录录 1 介绍介绍 INTRODUCTION 3 1 1目的 PURPOSE 3 2瀑布模型 瀑布模型 WATERFALL MODEL 4 2 1模型描述 DESCRIPTION OF THE MODEL 4 2 2模型分析 THE ANALYSIS OF MODEL 4 2 2 1优点 4 2 2 2缺点 4 2 2 3补救措施 5 3迭代模型 迭代模型 ITERATIVE MODEL 5 3 1模型描述 DESCRIPTION OF THE MODEL 5 3 2模型分析 THE ANALYSIS OF MODEL 5 3 2 1优点 5 3 2 2缺点 6 3 2 3补救措施 6 4原型法 原型法 PROTOTYPING 6 4 1模型描述 DESCRIPTION OF THE MODEL 6 4 2模型分析 THE ANALYSIS OF MODEL 7 4 1 1优点 7 4 1 2缺点 7 4 1 3补救措施 7 5 喷泉模型喷泉模型 FOUNTAIN MODEL 7 5 1模型描述 DESCRIPTION OF THE MODEL 7 5 2模型分析 THE ANALYSIS OF MODEL 8 5 2 1优点 8 5 2 2缺点 8 5 2 3补救措施 8 6 增量模型 增量模型 INCREMENTAL MODEL 9 6 1模型描述 DESCRIPTION OF THE MODEL 9 6 2模型分析 THE ANALYSIS OF MODEL 9 6 2 1优点 9 6 2 2缺点 9 6 2 3补救措施 10 7 螺旋模型 螺旋模型 SPIRAL MODEL 10 7 1模型描述 DESCRIPTION OF THE MODEL 10 7 2模型分析 THE ANALYSIS OF MODEL 10 4 7 2 1优点 11 7 2 2缺点 11 7 2 3补救措施 11 8 演化模型演化模型 INCREMENTAL MODEL 11 8 1模型描述 DESCRIPTION OF THE MODEL 11 8 2模型分析 THE ANALYSIS OF MODEL 12 8 2 1优点 12 8 2 2缺点 12 8 2 3补救措施 12 9 智能模型智能模型 四代技术 四代技术 4GL 13 9 1模型描述 DESCRIPTION OF THE MODEL 13 9 2模型分析 THE ANALYSIS OF MODEL 13 8 2 1优点 13 2 2 2缺点 14 2 2 3补救措施 14 10 混合模型 混合模型 HYBRID MODEL 14 5 1 介绍介绍 Introduction 1 1目的目的 Purpose 描述适合公司目前现状 可供项目选择的标准生命周期模型 2 瀑布模型 瀑布模型 Waterfall Model 2 1模型描述模型描述 Description of the Model 立项 计划 需求开发设计编码测试交付 监控 变更控制 对于需求非常明确 通常需求的规模比较小 或者用户所需的系统是在已熟悉的某个系统上进 行简单的改动 的项目 可以采用瀑布模型进行开发 每一个工程阶段的输入都严格依赖于前一个 工程阶段的输出 并且每一个工程阶段内都应该完成与最终交付产品相关的该工程阶段内的所有工 作 2 2模型分析模型分析 The analysis of Model 2 2 1 优点优点 为开发和维护提供了一种有效的管理图式 易于使用 在消除非结构化软件 降低软件的复杂度 促进软件开发工程化方面起着显著作用 在业界 有30多年的经验积累 是以往软件项目的主要标准 公司也有很多实例可以参考 6 2 2 2 缺点缺点 缺乏灵活性 特别是无法解决需求不明确或不准确的问题 软件与用户见面时间晚 增加了项目风险 2 2 3 补救措施补救措施 在需求或设计阶段 平行地进行几次快速原型 来消除风险和不确定性 3 迭代模型 迭代模型 Iterative Model 3 1模型描述模型描述 Description of the Model 立项 计划 初步需求开发 设计编码测试交付 监控 设计编码测试交付 编码测试交付 变更控制 完成 需求 开发 很多项目的需求往往不能在软件研发的初期就明确下来 对于这样项目 应该先尽可能明确需 求的范围 并将最熟悉的或者最重要的需求分析出来 在这部分的需求明确之后就可以着手对这部 分的系统设计 编码和测试了 在后续的过程中可以根据需要安排多次迭代过程 每次迭代具体什 么时候开始 包含哪些过程可以根据项目需要进行定制 Rational统一过程 RUP 模型和极限编程 XP 方法中使用的软件生命周期模型都属于迭代 模型的范畴 7 3 2模型分析模型分析 The analysis of Model 3 2 1 优点优点 相比于瀑布模型 项目开始和过程中更容易发现项目中的风险和问题 每次迭代完成后 软件产品都处于可执行 可检验的状态 项目组能够经常性地识别和管理风险 因此 迭 代模型中的风险在项目早期就会快速降低 活动安排比较灵活 几乎总是可以在规定的时间里获得稳定的 已经集成和经过测试的软 件临时版本 3 2 2 缺点缺点 如果迭代过程划分不合理 后续的迭代过程比较艰难 存在大量的返工 3 2 3 补救措施补救措施 初步的需求开发和第一次迭代过程中的设计工作中 尽可能多的进行同行评审 使最初的 迭代结果具备较好的可扩展性 4 原型法 原型法 Prototyping 4 1模型描述模型描述 Description of the Model 需求分析 快速设计 构造原型 评审和修改需求 建立产品 运行维护 原型模型本身是一个迭代的模型 是为了解决在产品开发的早期阶段存在的不确定性 歧义性 和不完整性等问题 通过建立原型使开发者进一步确定其应开发的产品 使开发者的想象更具体化 也更易于被客户所理解 原型只是真实系统的一部分或一个模型 完全可能不完成任何有用的事情 8 通常包括抛弃型和进化型两种 抛弃型指原型建立 分析之后要扔掉 整个系统重新分析和设计 进化型则是对需求的定义较清楚的情形 原型建立之后要保留 作为系统逐渐增加的基础 采用进 化型一定要重视软件设计的系统性和完整性 并且在质量要求方面没有捷径 因此 对于描述相同 的功能 建立进化型原型比建立抛弃型原型所花的时间要多 4 2模型分析模型分析 The analysis of Model 4 1 1 优点优点 可以很大程度上消除需求沟通方面的风险 4 1 2 缺点缺点 由于原型并非最终产品 如果原型不能利用 可能导致成本的增加 原型可能会引起客户的误解 以为产品即将完成 4 1 3 补救措施补救措施 对于抛弃型的原形 在不影响与客户交流的情况下尽可能简化实现 节约开发成本 5 喷泉模型喷泉模型 Fountain Model 5 1模型描述 模型描述 Description of the Model 喷泉模型与传统的结构化生存期比较 具有更多的增量和迭代性质 生存期的各个阶段可以相 互重叠和多次反复 而且在项目的整个生存期中还可以嵌入子生存期 就像水喷上去又可以落下来 可以落在中间 也可以落在最底部 随着面向对象系统分析及设计方法的普及 出现了喷泉模型 喷泉模型认为软件自下而上周期 的各阶段是相互重叠和多次反复的 就像水喷上去可以落下来 既可以落在中间 也可以落在最底 部 类似一个喷泉 各个开发阶段是没有特定的次序要求的 并且是可以交互进行的 可以在某个 开发阶段中随时补充其它任何开发阶段中的遗漏 喷泉模型的图示如下 集成 9 测试 编程 设计 分析 5 2模型分析模型分析 The analysis of Model 5 2 1 优点优点 喷泉模型的最大特点是可以从任何一个开发阶段 泡泡 转到其它任一个开发阶段 各个阶段 之间没有明显的界限 也就是 在整个过程中补漏 拾遗 纠错的切入点大大增多 不受开发阶段 的限制 5 2 2 缺点缺点 喷泉模型的缺点是要求对文档的管理较为严格 审核的难度加大 尤其是面对可能随时加入各 10 种信息 需求与资料 5 2 3 补救措施补救措施 成立专门的审核组 由专人定期对资料统计 审核 6 增量模型增量模型 Incremental Model 6 1模型描述 模型描述 Description of the Model 与建造大厦相同 软件也是一步一步建造起来的 在增量模型中 软件被作为一系列的增量构 件来设计 实现 集成和测试 每一个构件是由多种相互作用的模块所形成的提供特定功能的代码 片段构成 增量模型在各个阶段并不交付一个可运行的完整产品 而是交付满足客户需求的一个子 集的可运行产品 整个产品被分解成若干个构件 开发人员逐个构件地交付产品 这样做的好处是 软件开发可以较好地适应变化 客户可以不断地看到所开发的软件 从而降低开发风险 在使用增量模型时 第一个增量往往是实现基本需求的核心产品 核心产品交付用户使用后 经过评价形成下一个增量的开发计划 它包括对核心产品的修改和一些新功能的发布 这个过程在 每个增量发布后不断重复 直到产生最终的完善产品 使用增量模型开发字处理软件 可以考虑 第一个增量发布基本的文件管理 编辑和文档生成 功能 第二个增量发布更加完善的编辑和文档生成功能 第三个增量实现拼写和文法检查功能 第 四个增量完成高级的页面布局功能 6 2模型分析模型分析 The analysis of Model 6 2 1 优点优点 它非常灵活 可以在开发过程中响应重大的规范变化 另一个明显的优点是分析员和开发 人员可以处理不太复杂的问题 6 2 2 缺点缺点 其风险是学习的欲望超过了对生产率的追求 开发项目有可能会变成一个研究项目 超出 了时间和预算 甚至根本就做不出产品 由于各个构件是逐渐并入已有的软件体系结构中的 所以加入构件必须不破坏已构造好的 系统部分 这需要软件具备开放式的体系结构 11 在开发过程中 需求的变化是不可避免的 增量模型的灵活性可以使其适应这种变化的能 力大大优于瀑布模型和快速原型模型 但也很容易退化为边做边改模型 从而是软件过程 的控制失去整体性 6 2 3 补救措施补救措施 如果开发团队认识到这个风险 把注意力集中在顾客需求上 学习的欲望就不会超过对生产率 的追求 7 螺旋模型螺旋模型 Spiral Model 7 1模型描述 模型描述 Description of the Model 螺旋模型由 TRW 的 Barry Boehm 博士提出 是对瀑布 快速原型模型的改进 它在瀑布的每个 阶段之前都增加了风险分析 它将瀑布模型和快速原型模型结合起来 强调了其他模型所忽视的风 险分析 特别适合于大型复杂的系统 可以把快速原型模型以螺旋的形式画出来 这个模型已成功 应用于大型系统的内部开发 当目标是软件重用 且有特殊的质量目标时 这个模型尤其适用 它 依赖对开发过程中的风险进行精确的评估 这需要控制所有的因素 消除外部影响 至少要将外部 影响降到最低 与对瀑布模型的其他扩展和改进一样 它在早期的阶段中增加了反馈 这个模型已 在重要编程项目的开发中服务多年 螺旋模型沿着螺线进行若干次迭代 1 制定计划 确定软件目标 选定实施方案 弄清项目开发的限制条件 2 风险分析 分析评估所选方案 考虑如何识别和消除风险 3 实施工程 实施软件开发和验证 4 客户评估 评价开发工作 提出修正建议 制定下一步计划 7 2模型分析模型分析 The analysis of Model 螺旋模型由风险驱动 强调可选方案和约束条件从而支持软件的重用 有助于将软件质量作 为特殊目标融入产品开发之中 但是 螺旋模型也有一定的限制条件 具体如下 1 螺旋模型强调风险分析 但要求许多客户接受和相信这种分析 并做出相关反应是不 容易的 因此 这种模型往往适应于内部的大规模软件开发 12 2 如果执行风险分析将大大影响项目的利润 那么进行风险分析毫无意义 因此 螺旋 模型只适合于大规模软件项目 3 软件开发人员应该擅长寻找可能的风险 准确地分析风险 否则将会带来更大的风险 一个阶段首先是确定该阶段的目标 完成这些目标的选择方案及其约束条件 然后从风险角度分析 方案的开发策略 努力排除各种潜在的风险 有时需要通过建造原型来完成 如果某些风险不能排 除 该方案立即终止 否则启动下一个开发步骤 最后 评价该阶段的结果 并设计下一个阶段 7 2 1 优点优点 在瀑布的每个阶段之前都增加了风险分析 可以把快速原型模型以螺旋的形式画出来 这个模型已成功应用于大型系统的内部开发 当目标是软件重用 且有特殊的质量目标时 这个模型尤其适用 7 2 2 缺点缺点 它依赖对开发过程中的风险进行精确的评估 这需要控制所有的因素 消除外部影响 至 少要将外部影响降到最低 7 2 3 补救措施补救措施 与对瀑布模型的其他扩展和改进一样 它在早期的阶段中增加了反馈 8 演化模型 incremental model 8 1模型描述 模型描述 Description of the Model 演化模型主要针对事先不能完整定义需求的软件开发 用户可以给出待开发系统的核心需求 并且当看到核心需求实现后 能够有效地提出反馈 以支持系统的最终设计和实现 软件开发人员 根据用户的需求 首先开发核心系统 当该核心系统投入运行后 用户试用之 完成他们的工作 并提出精化系统 增强系统能力的需求 软件开发人员根据用户的反馈 实施开发的迭代过程 第 一迭代过程均由需求 设计 编码 测试 集成等阶段组成 为整个系统增加一个可定义的 可管 理的子集 在开发模式上采取分批循环开发的办法 每循环开发一部分的功能 它们成为这个产品的原型 的新增功能 于是 设计就不断地演化出新的系统 实际上 这个模型可看作是重复执行的多个 瀑布模型 演化模型 要求开发人员有能力把项目的产品需求分解为不同组 以便分批循环开发 这种 13 分组并不是绝对随意性的 而是要根据功能的重要性及对总体设计的基础结构的影响而作出判断 有经验指出 每个开发循环以六周到八周为适当的长度 8 2模型分析模型分析 The analysis of Model 8 2 1 优点优点 任何功能一经开发就能进入测试以便验证是否符合产品需求 帮助导引出高质量的产品要求 如果没有可能在一开始就弄清楚所有的产品需求 它们可 以分批取得 而对于已提出的产品需求 则可根据对现阶段原型的试用而作出修改 风险管理可以在早期就获得项目进程数据 可据此对后续的开发循环作出比较切实的估算 提供机会去采取早期预防措施 增加项目成功的机率 大大有助于早期建立产品开发的配置管理 产品构建 build 自动化测试 缺陷跟踪 文档管理 均衡整个开发过程的负荷 开发中的经验教训能反馈应用于本产品的下一个循环过程 大大提高质量与效率 如果风险管理发现资金或时间已超出可承受的程度 则可以决定调整后续的开发 或在一 个适当的时刻结束开发 但仍然有一个具有部分功能的 可工作的产品 心理上 开发人员早日见到产品的雏型 是一种鼓舞 使用户可以在新的一批功能开发测试后 立即参加验证 以便提供非常有价值的反馈 可使销售工作有可能提前进行 因为可以在产品开发的中后期取得包含了主要功能的产品 原型去向客户作展示和试用 8 2 2 缺点缺点 如果所有的产品需求在一开始并不完全弄清楚的话 会给总体设计带来困难及削弱产品设 计的完整性 并因而影响产品性能的优化及产品的可维护性 如果缺乏严格的过程管理的话 这个生命周期模型很可能退化为一种原始的无计划的 试 错 改 模式 心理上 可能产生一种影响尽最大努力的想法 认为虽然不能完成全部功能 但还是造出 了一个有部分功能的产品 如果不加控制地让用户接触开发中尚未测试稳定的功能 可能对开发人员及用户都产生负 面的影响 14 8 2 3 补救措施补救措施 在需求或设计阶段 平行地进行几次快速原型 来消除风险和不确定性 9 智能模型 四代技术 4GL 9 1模型描述模型描述 Description of the Model 智能模型也称为 基于知识的软件开发模型 它把瀑布模型和专家系统结合在一起 利用专家系统来帮助软件开发人员的工作 该模型应用基于规则的系统 采用归纳和 推理机制 使维护在系统规格说明一级进行 这种模型在实施过程中以软件工程知识 为基础的生成规则构成的知识系统与包含应用领域知识规则的专家系统相结合 构成 这一应用领域软件的开发系统 采用智能模型的软件过程如下图所示 智能模型拥有一组工具 如数据查询 报表生成 数据处理 屏幕定义 代码生成 高层图形功能及电子表格等 每个工具都能使开发人员在高层次上定义软件的某些 特性 并把开发人员定义的这些软件自动地生成为源代码 这种方法需要四代语言 4GL 的支持 4GL 不同于三代语言 其主要特征是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论