生命周期模型及选择指南
- 格式:doc
- 大小:1.99 MB
- 文档页数:25
《敏捷实践指南》学习笔记3. 生命周期选择3.1 项目生命周期图表1项目生命周期的类型、定义及特征项目的固有特征决定其更适合采用什么类型的生命周期。
但是没有某种生命周期可以完美适用,项目可以在连续区间中找到某点实现最佳平衡。
图表2生命周期的连续区间3.1.1 预测型生命周期的特征❿强调根据部门划分的、有效的、顺序的工作。
❿从高确定性的明确需求、稳定的团队和低风险中获益;如遇变更或需求分歧可能产生意想不到的成本。
3.1.2 迭代型生命周期的特征❿通过连续的原型或概念验证来改进产品或成果:每一个新的输出带来新的相关方反馈,然后团队根据这些见解在下一周期重对项目活动进行返工。
迭代有利于识别和减少项目的不确定性。
迭代型生命周期可能需要更长的时间,因为它是为学习而优化,而不是为交付速度而优化。
❿什么情况下采用迭代型生命周期:项目复杂性高、变更频繁或当项目范围受到相关方对所需最终产品的不同观点的支配时。
3.1.3 增量型生命周期的特征❿与一次交付一个最终产品相比,增量型生命周期可以更快地交付价值:为客户提供一个单一功能或是交付一项完成的工作。
随着项目继续团队可能会偏离最初的设想,但由于可以更快地交付价值,因而团队可以管理偏差。
❿什么情况下采用增量型生命周期:客户无法等待所有事情全部完成,愿意先接受整个解方案的一个部分。
3.1.4 敏捷生命周期的特征敏捷生命周期结合了迭代和增量方法,分为两种类型:(1)基于迭代的敏捷:❿团队以迭代(相等持续时间的时间盒)形式交付完整的功能。
团队集中于最重要的功能,作为一个团队合作完成其工作。
然后再集中于下一项最重要的功能,并合作完成其工作。
团队可决定一次进行若干功能的开发工作,但团队不会在完成全部分析工作后再解决所有需求。
❿时间盒:一个比较短且固定长度的时间段。
(2)基于流程的敏捷:❿团队根据自身能力,从待办事项列表中提取若干功能开始工作,而不是按照基于迭代的进度计划开始工作。
1 生命周期评价方法的概念和起源生命周期评价(LCA)是一种评价产品、工艺或活动,从原材料采集,到产品生产、运输、销售、使用、回用、维护和最终处置整个生命周期阶段有关的环境负荷的过程。
它首先辨识和量化整个生命周期阶段中能量和物质的消耗以及环境释放,然后评价这些消耗和释放对环境的影响,最后辨识和评价减少这些影响的机会。
生命周期评价(LCA)最早出现于二十世纪60年代末、70年代初,当时被称为资源与环境状况分析(REPA)。
作为生命周期评价研究开始的标志是1969年由美国中西部资源研究所针对可口可乐公司的饮料包装瓶进行的评价研究,该研究使可口可乐公司抛弃了过去长期使用的玻璃瓶,转而采用塑料瓶包装。
随后,美国ILLIN0IS大学、富兰克林研究会、斯坦福大学的生态学居研究所以及欧洲、日本的一些研究机构也相继开展了一系列针对其它包装品的类似研究。
这一时期的工作主要由工业企业发起,研究结果作为企业内部产品开发与管理的决策支持工具。
1990年由国际环境毒理学与化学学会(S ETAC)首次主持召开了有关生命周期评价的国际研讨会,在该次会议上首次提出了生命周期评价(Life Cycle Assessment,LCA)的概念。
在以后的几年里,SETAC又主持和召开了多次学术研讨会,对生命周期评价(LCA)从理论与方法上进行了广泛的研究,对生命周期评价的方法论发展作出了重要贡献。
1993年SETAC根据在葡萄牙的一次学术会议的主要结论,出版了一本纲领性报告“生命周期评价(LCA)纲要:实用指南”。
该报告为LCA方法提供了一个基本技术框架,成为生命周期评价方法论研究起步的一个里程碑。
2 生命周期评价方法的主要内容1993年SETAC在“生命周期评价纲要:实用指南”中将生命周期评价的基本结构归纳为四个有机联系的部分:定义目标与确定范围、清单分析、影响评价和改善评价,如图1所示。
v1.0 可编辑可修改图1 生命周期评价的基本结构2.1 目标定义和范围界定确定目标和范围是LCA研究的第一步。
产品管理数学模型产品线宽度:也可叫产品组合的宽度,是指在产品组合中包含的产品线的多少。
产品线越多,产品组合越宽,产品线的宽度越大;产品线深度:又称产品组合的深度,是指每条产品线包含的产品项目的多少。
包含的产品项目越多,产品线的深度就越深;产品线关联度:是各产品线在最终用途、生产条件、分销渠道和其他方面相关联的程度。
产品溢价能力:产品溢价 = 产品价格 - 同品质产品的市场平均价格。
新产品接受度:新产品投放速率:新产品投放速率 = 产品导入期的长度 / 产品预计整个生命周期的长度;产品导入期的长度≈产品步入正常返单、销售之前的时间长度(目标市场覆盖率为50%);产品预计生命周期的长度≈预计的产品更新换代用时。
新产品投放速率 =产品步入正常返单、销售之前的时间长度(目标市场覆盖率为50%) /预计的产品更新换代用时。
产品铺货率(目标市场覆盖率):产品铺货率数量指标 = 正常销售专卖店数 / 全部目标市场店数;产品返单率:产品单店返单率 = 产品本期销售额 - (本期上样专卖店数量*上样平均金额)/ 上样专卖店数量 - 本期上样专卖店数量。
目标销售额完成率:目标销售额完成率 = 计划销售额 / 实际完成销售额。
目标市场份额达成率:目标市场份额达成率 = 该产品销售额 / 同期该品类产品总销售金额。
特价产品促销带动率:特价产品促销带动率 = 特价产品销售带来的消费者购买正价产品销售额 / 总销售额。
单位广告费用增销率:单位广告费用增销率 = 广告期内增加的销售金额 / 广告总投入。
产品在市时间长度:产品在市时间长度 = 导入期的时间长度 + 成长期的时间长度 + 成熟期的时间长度 + 衰退期的时间长度 + 由于产品二次推广带来的时间长度。
渠道置换成本分析:渠道置换成本 = 重新调整装修费用 + 更换饰品费用 + 更换广告宣传费用 + 呆滞样品处理费用 + 人员培训费用。
第二章产品清洁生产第一节生命生命周期评价的理念生命周期评价的理念生命周期评价Life Cycle AssessmentLife Cycle Analysis(一)定义国际环境毒理学与化学学会(SETAC):通过识别和量化能源和材料的消耗和废物的排放,评价产品(和服务)在其生命周期中的环境负荷,并提出预防和改进措施。
评价面向产品整个生命周期,包括原材料的获取和加工、生产、运输分配、使用、维护和再使用、循环再生、以及处理处置。
国际标准化组织(ISO):生命周期评价是对一个产品系统的生命周期中的输入、输出及潜在环境影响进行的综合评价。
美国环保局(EPA):通过对特定产品、过程或服务的整个生命周期的分析,对产品或活动进行整体评价的概念或方法。
生命周期评价包括三个组成部分-清单、影响和改进,是一个交互式发展的程序。
Procter & Gamble公司:显示产品制造商对其产品从设计到处置全过程中造成的环境负荷承担责任的态度,是保证环境确实而不是虚假地得到改善的定量方法。
美国3M公司:在从制造到加工、处理乃至最终作为残留有害废物处置的全过程中,检查如何减少或消除废物的方法。
(二)特点全过程化定量化体现环境保护手段由简单、局部、粗放向复杂、全面、精细方向发展的趋势。
(三)分类概念型LCA:定性的清单分析评估环境影响,不宜作为公众传播和市场促销的依据,但可以帮助决策人员认识哪些产品在环境影响方面具有竞争和优势。
简化型或速成型LCA:涉及全部生命周期,但仅限于简化的评价,着重主要的环境因素、潜在环境影响等,多用于内部评估和不要求提供正式报告的场合。
详细型LCA:包括目的和范围确定、清单分析、影响评价、结果解释4个阶段。
(四)生命周期评价的发展生命周期评价是20世纪70年代初至90年代发展起来的理论。
当前生命周期评价已形成了基本的概念框架和技术框架。
国际标准化组织(ISO)-负责生命周期评价理论的完善和方法的国际标准化工作。
环境管理生命周期评价敏感性分析要求与指南下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
本文下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Downloaded tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The documents can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!环境管理生命周期评价敏感性分析要求与指南。
生命周期模型选用指南文档编号:文档信息:公司级别指南文档名称:生命周期模型选用指南文档类别:过程管理类密级:内部版本信息:1.0建立日期:2006-9-1创建人:审核者:批准人:批准日期:保管人:存放位置:编辑软件:MicrosoftOffice2003中文版文档修订记录*A——M——D——文档批准信息目录1概述41.1目的41.2适用范围41.3引用文件41.4术语41.5参考资料42软件生命周期模型模型选择指南42.1选择生命周期模型的参考决策树52.2软件生命周期模型描述82.2.1瀑布模型82.2.2原型+瀑布模型82.2.3增量模型92.2.4增量+迭代模型92.2.5快速应用开发模型102.3其它模型采用说明103附录103.1软件过程结构图103.2附录A—相关过程113.3附录B—相关规程123.4附录C—相关指南123.5附录D—相关模板列表12图索引:图1选择模型的参考决策树5图2瀑布模型8图3原型+瀑布模型8图4增量模型9图5增量+迭代模型9图6快速应用开发模型10图7附录图表——软件过程结构图111概述1.1目的本文档描述组织定义的几种软件生命周期模型,供项目策划时根据项目的具体情况选择或裁剪使用,从而确定软件项目开发过程的各种不同的阶段以及各阶段的执行顺序。
1.2适用范围适用于公司的软件项目策划。
1.3引用文件无。
1.4术语•软件生命周期一从软件设想开始到软件不再使用而结束的时间周期。
软件生命周期一般包括系统分析、软件需求分析、设计、实现、测试、验收、运行和维护各阶段,有时还包括退役阶段。
•软件过程-有关开发和维护软件及其相关产品(例如:项目计划、设计文档、代码、测试用例、用户手册等)的活动、方法、实践和变更的集合。
•RAD—快速软件开发1.5参考资料•《软件工程实践者的研究方法》,RogerS.Pressman著,黄柏素、梅宏等译,机械工业出版社,1999年10月•《实用软件工程》郑人杰、殷人昆、陶永雷著,清华大学出版社,1997年4月•《软件需求》,KarlE.Wiegers著,陆丽娜、王忠民、王志敏等译,机械工业出版社,2000年7月•《统一软件开发过程》,IvarJacobson、GradyBooch、JamesRumbaugh著,周伯生、冯学民、樊东平等译,机械工业出版社,2002年1月2软件生命周期模型模型选择指南所有的项目软件开发过程都应遵循一个生命周期模型,每个模型都具有能够帮助实际软件项目进行控制及协调的特征。
1 生命周期评价〔LCA〕的产生背景生命周期评价〔LCA〕,有时也称为“生命周期分析”、“生命周期方法”、“摇篮到坟墓”、“生态衡算”等。
其最初应用可追溯到1969年美国可口可乐公司对不同饮料容器的资源消耗和环境释放所作的特征分析。
该公司在考虑是否以一次性塑料瓶替代可回收玻璃瓶时,比较了两种方案的环境友好情况,肯定了前者的优越性。
自此以后,LCA方法学不断发展,现已成为一种具有广泛应用的产品环境特征分析和决策支持工具。
最初LCA主要集中在对能源和资源消耗的关注,这是由于20世纪60年代末和70年代初爆发的全球石油危机引起人们对能源和资源短缺的恐慌。
后来,随着这一问题不再象以前那样突出,其他环境问题也就逐渐进行人们的视野,LCA方法因而被进一步扩展到研究废物的产生情况,由此为企业选择产品提供判断依据。
在这方面,最早的事例之一是70年代初美国国家科学基金的国家需求研究计划〔RANN〕。
在该项目中,采用类似于清单分析的“物料——过程——产品”模型,对玻璃、聚乙烯和聚氯乙烯瓶产生的废物进行分析比较。
另一个早期事例是美国国家环保局利用LCA方法对不同包装方案中所涉及的资源与环境影响所作的研究。
80年代中期和90年代初,是LCA研究的快速增长时期。
这一时期,发达国家推行环境报告制度,要求对产品形成统一的环境影响评价方法和数据;一些环境影响评价技术,例如对温室效应和资源消耗等的环境影响定量评价方法,也不断发展。
这些为LCA方法学的发展和应用领域的拓展奠定了基础。
虽然当时对LCA的研究仍局限于少数科学家当中,并主要分布在欧洲和北美地区,但是那时对LCA的研究已开始从实验室阶段转变到实际中来了。
90年代初期以后,由于欧洲和北美环境毒理学和化学学会〔SETAC〕以及欧洲生命周期评价开发促进会〔SPOLD〕的大力推动,LCA方法在全球范围内得到较大规模的应用。
国际标准化组织制定和发布了关于LCA的ISO14040系列标准。
组织过程定义过程文件更改控制页目录1目的 (1)2范围 (1)3术语定义 (1)4职责 (1)5裁剪指南 (2)6过程 (3)6.1概要图 (3)6.2启动条件 (6)6.3输入 (6)6.4活动 (6)6.4.1制定或修订组织标准过程 (6)6.4.1.1细化过程修订方案 (6)6.4.1.2定义或修订组织标准过程 (6)6.4.1.3评审“组织标准过程” (7)6.4.1.4是否试运行 (7)6.4.1.5发布过程定义 (7)6.4.2建立组织生命周期模型选用指南与过程裁剪指南 (7)6.4.2.1收集常用生命周期 (7)6.4.2.2调查生命周期使用情况 (7)6.4.2.3选定候选使用生命周期 (7)6.4.2.4评审“生命周期模型选用指南” (8)6.4.2.5编写过程裁剪准则 (8)6.4.2.6评审“裁剪指南” (8)6.4.2.7会签“指南” (8)6.4.2.8发布 (8)6.4.3建立组织过程财富库结构及规程 (8)6.4.3.1确定组织过程财富库的内容 (8)6.4.3.2确定财富库的管理准则、角色与权限 (9)6.4.3.3管理财富库 (9)6.4.4建立组织度量库 (9)6.4.4.1确定需度量的公司级数据 (9)6.4.4.2建立统一的度量内容和方法 (9)6.4.4.3评审“方法” (9)6.4.4.4建立组织度量库 (9)6.4.4.5维护度量库 (10)6.4.4.6定期发布度量库 (10)6.4.5建立组织风险库 (10)6.4.5.1总结分析 (10)6.4.5.2建立等级划分 (10)6.4.5.3评审“风险等级划分” (10)6.4.5.4建立风险库 (11)6.4.5.5维护风险库 (11)6.4.5.6定期发布风险库 (11)6.4.6建立工作环境标准 (11)6.4.7维护并完善财富库的内容 (11)6.4.7.1初次充实财富库 (11)6.4.7.2吸收过程实施中的财富 (12)6.4.7.3评审“组织过程财富” (12)6.4.7.4发布 (12)6.5输出 (12)6.6关闭标准 (12)7审核 (12)8度量 (13)9技能要求 (13)10参照文件 (13)1目的建立并维护一套有用的组织过程资产。
软件生命周期模型及选择指南目录1. 目的 (3)2. 适用范围 (3)3. 术语定义 (3)4. 参考资料 (13)5. 概述 (3)6. 重叠瀑布模型(Interleaved Waterfall Model) (4)6.1 定义 (4)6.2 流程图 (4)6.3 重叠瀑布模型的WBS划分 (5)6.4 优缺点 (5)6.5 适用项目 (5)7. 增量模型(Incremental Model) (6)7.1 定义 (6)7.2 流程图 (6)7.3 阶段描述 ..................................................................................................... 错误!未定义书签。
7.4 增量模型的WBS划分............................................................................... 错误!未定义书签。
7.5 优缺点 (7)7.6 适用项目 (7)8. 原型模型(Prototyping Model) (8)8.1 非抛弃型原型模型...................................................................................... 错误!未定义书签。
8.1.1 阶段 .................................................................................................. 错误!未定义书签。
8.1.2 优缺点 (11)8.1.3 适用项目 (11)8.1.4 优缺点............................................................................................... 错误!未定义书签。
CMMI生命周期模型1.1 术语CMMI 能力成熟度模型集成PP 项目计划PMC 项目监控PPQA 过程和产品质量保证CM 配置管理SOW 工作说明书WBS 工作分解结构SRS 软件需求规格说明书2 带回溯的瀑布模型带回溯的瀑布模型是最常用的软件开发模型,它的各个阶段是按线性序列组织并可以回溯到上一级,克服了标准瀑布模型缺乏灵活性的缺点。
开发过程中的阶段划分为项目策划、需求分析、概要设计、详细设计、编码和单元测试、软件集成和集成测试、系统测试、验收和安装等(图1)。
尽管开发过程中定义了各个阶段的顺序,但这些阶段有时是相互交迭进行的,阶段间的依赖性由入口准则来确定。
带回溯的瀑布模型的每个阶段均具有以下特征:●从上一阶段接受本阶段工作的对象,作为输入;●对上述输入实施本阶段的活动;●给出本阶段的工作成果,作为输出传入下一阶段;●对本阶段工作进行评审,如果本阶段工作得到确认,那么继续下阶段工作,否则返回前一阶段,甚至更前阶段。
●本阶段可以回溯至上一阶段,并可以逐级向上回溯。
●各阶段之间可以有重叠。
图1 瀑布模型瀑布模型为软件开发与维护提供了一种有效的管理模式,根据这一管理模式制订开发计划、进行成本预算、组织开发人员,以阶段评审和文档控制为手段有效地对整个开发过程进行指导,从而保证了软件产品的质量。
优点:适用于需求稳定,且无其它不确定因素;易于理解和使用;每个阶段的产出物形成稳定的基线;变更被认为很少发生或是严格受控的。
缺点:对于需求不稳定或存在其它不确定因素的项目适用性差,变更实现困难且成本高;一般在最后阶段才能看到产品。
2.1 项目启动建立项目,并且确认相关的项目干系人并且取得相关干系人的关系依赖,做好相关的准备工作和进行对项目的估算,准备项目的任务书和进行项目的启动。
2.2 项目计划项目策划是每个项目的初始阶段,目的是为开发过程和过程管理做好必要的准备。
项目策划的主要工作是进行可行性分析和研究,进行估计和制定管理项目的计划。
生命周期模型及选择指南1.1文档名称:生命周期及模型选择指南1.1修订历史记录目录1 目的和范围........................ 错误!未指定书签。
2 生命周期可选模型简介.............. 错误!未指定书签。
2.1 瀑布模型.................... 错误!未指定书签。
2.1.1 标准瀑布模型.......... 错误!未指定书签。
2.1.2 V模型................ 错误!未指定书签。
2.1.3 中等简化V字模型(V4模型)错误!未指定书签。
2.1.4 最简化V字模型(V3模型)错误!未指定书签。
2.2 原型模型.................... 错误!未指定书签。
2.2.1 原型模型的形式........ 错误!未指定书签。
2.2.2 特点.................. 错误!未指定书签。
2.2.3 缺点.................. 错误!未指定书签。
2.2.4 适用项目.............. 错误!未指定书签。
2.2.5 阶段划分.............. 错误!未指定书签。
2.3 螺旋模型.................... 错误!未指定书签。
2.3.1 特点.................. 错误!未指定书签。
2.3.2 适用项目.............. 错误!未指定书签。
2.3.3 阶段划分.............. 错误!未指定书签。
2.4 增量模型.................... 错误!未指定书签。
2.4.1 特点.................. 错误!未指定书签。
2.4.2 适用项目.............. 错误!未指定书签。
2.4.3 阶段划分.............. 错误!未指定书签。
2.5 迭代模型.................... 错误!未指定书签。
ITIL 服务生命周期框架ITIL v3 的核心架构是基于服务生命周期的。
服务战略是生命周期运转的轴心;服务设计,服务转换和服务运营是实施阶段;服务改进则在于对服务的定位和基于战略目标对有关的进程和项目的优化改进。
接下来,我们简单介绍一下各模块所包括的内容:服务战略《服务战略》卷将组织在设计、开发和实施服务管理从组织能力和战略资产两个战略角度来提供指导。
该模块提出了服务管理实践过程中整个ITIL服务生命周期的政策、指南和流程。
服务战略是服务设计、服务转换、服务运营和服务改进的基础,他的主题包括了市场开发、内部和外部的服务提供、服务资产、服务目录以及整个服务生命周期过程中战略的实施。
此外,还包括了财务管理,服务投资组合管理、组织的制定和战略风险等另一些重要的主题。
组织通过这些指导可以设定面向客户的服务绩效目标、期望及市场空间,并能够很好地识别、选择和优化机会。
服务战略确保组织能处理与服务投资组合相关的成本和风险,建立运营的有效性和实现出色的绩效。
服务战略制定的决策将产生深远的影响。
服务设计《服务设计》卷描述了对服务及服务管理流程设计和开发的指导。
它包括了将战略目标转变成服务投资组合和服务资产的原则和方法。
服务设计的范围不仅限于新的服务,它还包括了为了保持和增加客户价值,而实行服务生命周期过程中必要的变更和改进,服务的连续性,服务水平的满足,和对标准、规则的遵从性。
它指导了组织如何开发设计服务管理的能力。
服务转换《服务转换》卷为如何将新的或变更的服务转换到运营过程中有关能力的开发和改进的指导。
服务战略需求通过服务设计进行编码,而服务转换则是探讨如何将这种编码有效地导入到服务运营的体系中,与此同时,还应控制失败的风险和服务中断。
生命周期模型选用指南版本1.0发布时间:烟台海颐软件股份有限公文件变更记录1.目的本文档统一规范描述了组织内软件开发过程中可以使用的各种生命周期模型,供项目策划时根据项目的具体情况选用,由此确定软件项目开发过程的各种不同的阶段以及各阶段的执行顺序,从而加强项目管理,提高过程能力成熟度级别,保证产品质量。
2.适用范围机构:产品部、开发部、工程部、质量部。
业务:本指南适用于组织内的全部软件项目。
3.名词术语软件生命周期:软件生命周期,是指从开始策划软件产品到软件不再使用为止这段时间。
典型的软件生命周期包括策划阶段、需求阶段、分析与设计阶段、实现阶段(构造阶段)、测试阶段、实施和维护阶段。
软件生命周期模型软件生命周期模型是对软件工程活动的组织方式。
软件生命周期模型通过确定软件开发活动的顺序和相互制约关系来保证软件工程活动的流程化。
4.软件生命周期模型4.1瀑布模型(Waterfall)4.1.1模型定义该模型首先由Royce[1970]提出,又称线性顺序模型,或典型生命周期模型,指软件生命周期的各项活动始终按照固定顺序执行:需求、设计、构造、集成、测试、维护,各活动之间有明确的界限,非连续的,对阶段结束的成果进行判断以确定是否可以开始下一阶段的工作,形如瀑布流水,最终得到软件产品。
瀑布模型是所有软件生命周期模型的基础。
4.1.2模型图4.1.3模型特点1)优点瀑布模型是一种文档驱动模型,主要的工作产品通过文档从一个阶段传递到下一阶段,瀑布模型的每个活动的完成都是以该活动的评审通过作为标志的。
当项目有着明确的产品定义以及易于理解的技术方案的情况下,瀑布模型有助于及早发现问题,降低阶段成本。
瀑布模型的主要特点:·简单、易于理解·要求严格的管理,包括周密的项目计划、明确的交付物、严格的质量控制手段(如阶段的评审)等·客户在项目的后期才可以见到的产品以及判断产品的质量·强调产品的测试2)缺点:·缺乏灵活性瀑布模型要求在项目的初期明确定义全部需求,然而客户在项目初期很难明确描述所有的需求,这种不确定性难以满足模型要求的“稳定的、明确定义的需求”的要求。
生命周期模型及选择指南Version 1.1文档名称:ZD-MMI-Guidelines-生命周期及模型选择指南-V1.1修订历史记录目录1 目的和范围 (1)2 生命周期可选模型简介 (1)2.1 瀑布模型 (1)2.1.1 标准瀑布模型 (1)2.1.2 V模型 (3)2.1.3 中等简化V字模型(V4模型) (5)2.1.4 最简化V字模型(V3模型) (6)2.2 原型模型 (8)2.2.1 原型模型的形式 (8)2.2.2 特点 (8)2.2.3 缺点 (9)2.2.4 适用项目 (9)2.2.5 阶段划分 (9)2.3 螺旋模型 (10)2.3.1 特点 (10)2.3.2 适用项目 (11)2.3.3 阶段划分 (11)2.4 增量模型 (11)2.4.1 特点 (12)2.4.2 适用项目 (12)2.4.3 阶段划分 (12)2.5 迭代模型 (13)2.5.1 特点 (14)2.5.2 适用情况 (15)2.5.3 迭代分类 (15)3 生命周期模型选择指南 (16)3.1 生命周期模型选择特性指标 (16)3.1.1 需求清晰性、完整性、稳定性 (16)3.1.2 项目规模 (16)3.1.3 项目类型 (17)3.1.4 技术复杂度 (17)3.1.5 可重用性 (18)3.1.6 重用已有产品 (18)3.2 生命周期模型选择决策参考 (18)3.3 生命周期模型与特性指标对应关系 (19)3.4 生命周期选择 (20)附录:标准项目生命周期图 (21)软件生命周期模型及选择指南1 目的和范围本文用以描述中地公司推荐的软件项目生命周期(以下简称LC)模型,并说明如何根据项目特性选择合适的LC模型。
2 生命周期可选模型简介软件生命周期指软件开发全部过程、活动和任务的结构框架。
软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。
2.1 瀑布模型2.1.1 标准瀑布模型.1 特点1、阶段间具有顺序性和依赖性:必须等前一阶段的工作完成之后,才能开始后一阶段的输入。
对本阶段工作进行评审,若得到确认,则继续下阶段工作,否则返回前一阶段,甚至更前阶段。
只有前一阶段输出正确,后一阶段才能正确;2、推迟实现的观点:在编码之前,设置了需求分析与设计的各个阶段,分析与设计阶段的根本任务规定在这两个阶段主要考虑目标系统的逻辑模型,不涉及软件的物理实现;3、质量保证的观点是每个阶段都坚持两个做法:规定文档,没有文档就没有完成该段任务;每个阶段结束前都要对完成的文档进行评审,以便尽早发现问题,改正错误。
.2 缺点1、无法解决软件需求不明确或不准确的问题;2、依赖于早期进行的唯一的一次需求调查,不能适应需求的变化;3、由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程;4、风险往往迟至后期的开发阶段才显露,因而失去及早纠正的机会。
.3 适用项目1、充分理解用户需求,且需求是确定不变的;2、用户有一定的能力,对需求的表述是确切的;3、充分理解该解决方案的技术和体系;4、需要一个可维护性和可支持性较高的解决方案;5、所有过程工作产品的控制基线,需要有可见度和可靠性;6、适用于新的有较多用户的产品、平台/中间件开发项目,或者是用户对开发过程有严格要求的工程定制项目;7、项目经理有一定的项目管理经验;8、需求清晰明了且时间要求宽松的软件开发项目;9、规模小、需求简单、功能单一的项目。
.4 阶段划分1、需求阶段2、设计阶段3、编码阶段4、测试阶段5、发布阶段6、实施阶段7、运行维护阶段2.1.2 V模型V模型其实就是瀑布模型,它是一种线型顺序模型,是项目自始至终按照一定顺序的步骤从需求分析进展到系统测试直到提交用户使用,它提供了一种结构化的、自顶向下的软件开发方法,每阶段主要工作成果从一个阶段传递到下一个阶段,必须经过严格的评审或测试,以判定是否可以开始下一阶段工作,各阶段相互独立、不重叠。
V字模型是所有生命周期模型的基础。
流程图如下所示:Product Investigation.1 特点1、强调开发的阶段性;2、强调早期的计划及需求调查与分析;3、强调产品测试的完备性;4、过程文档齐全,便于追溯和重用;5、过程的可见性强,便于过程质量控制;6、只要需求是稳定的,则进度也是稳定的。
.2 缺点1、无法解决软件需求不明确或不准确的问题;2、灵活性差,依赖于早期进行的需求调查,不能适应需求的变化;3、由于是单一流程,开发中的经验教训不能及时反馈并应用于本产品的过程改进。
.3 适用项目1、充分理解用户需求,需求是确定不变的;2、用户有一定的能力,对需求的表述是确切的;3、充分理解该解决方案的技术和体系;4、需要一个可维护性和可支持性较高的解决方案;5、所有过程工作产品的控制基线,需要有可见度和可靠性;6、适用于新的有较多用户的产品、平台/中间件开发项目,或者是用户对开发过程有严格要求的工程定制项目;7、项目经理有一定的项目管理经验;8、要求开发周期时间较充分。
.4 阶段划分1、需求开发2、项目计划3、概要设计4、详细设计5、编码和单元测试6、集成测试7、系统测试8、验收测试9、验收10、发布2.1.3 中等简化V字模型(V4模型)针对项目的实际情况,对V字(瀑布)模型进行演化是必要的。
中等简化V字模型是在标准瀑布模型基础上根据组织中一些小项目等的实际需要演化来的。
流程图如下所示:Product Investigation Report/Four Phase V-Waterfall Life Cycle Management.1 特点1、可以适应中等和较小项目的较灵活的管理需要;2、提供中度的进度控制,相对标准V字模型,可以减少部分项目管理工作量和开支;3、在产品交付方面进行合理的控制。
.2 缺点因项目开发流程相对简化,项目的风险增大,质量隐患增大。
.3 适用项目1、项目的复杂度、团队的规模、工作量和周转时间都是中等程度的;2、需求和技术都已被充分理解;3、项目经理有较高的项目管理和控制的经验。
.4 阶段划分 1、需求开发 2、设计3、编码和单元测试4、系统测试5、验收测试6、验收7、发布2.1.4 最简化V 字模型(V3模型)最简化V 字模型在标准瀑布模型基础上根据组织中的小项目和维护项目等的实际需要演化而来。
流程图如下所示:Three Phase V- Waterfall Life CycleSuggested for small projects whose scope is enhancement ofan existing productCheckpoint that is recommended to be signed off by SeniorManagement.1 特点1、可以适应小项目的灵活性;2、减少过程复杂带来的产品提交时间延长;3、过程相对简单,项目管理控制的工作量相对较少;4、提供中度的进度控制;5、减少开支。
.2 缺点1、对阶段性的控制较弱,问题不能及时发现;2、项目前期控制较弱,使得项目产品质量留有隐患。
.3 适用项目1、项目的规模和工作量都比较小;2、项目具有较小的开发团队;3、需求和技术都是被充分确定和理解的;4、系统具有低复杂度,不需要独立的设计阶段;5、产品的体系结构是稳定的;6、项目经理经验丰富,对项目有较好的管理控制能力;7、项目开发周期较短。
.4 阶段划分1、集成设计阶段2、编码和单元测试3、系统测试4、验收5、发布2.2 原型模型原型模型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。
一般来说,根据客户的需要在很短的时间内解决用户最迫切需要,完成一个可以演示的产品,这个产品只实现部分功能。
原型最重要的是为了确定用户的真正需求。
原型模型在克服瀑布模型缺点、减少由于软件需求不明确给开发工作带来风险方面,确有显著效果。
2.2.1 原型模型的形式.1 抛弃型开发原型为了获取需求,在原型开发之后,已获取了更为清晰的需求信息,原型无需保留而废弃。
.2 渐进型原型作为软件最终产品的一部分,可满足用户的部分需求,如进一步在此基础上开发,则可在实现其他需求后交付使用。
2.2.2 特点1、用户需求不完全或不确定;2、针对总体的轮廓先建立一个用户需求原型,然后进行评价和反馈;3、对原型进行扩充、改进和求精;4、完成最终系统。
2.2.3 缺点1、没有考虑软件的整体质量和长期的可维护性;2、大部分情况是不合适的操作算法被采用,目的是为了演示功能,不合适的开发工具被采用,仅仅为了它的方便,还有不合适的操作系统被选择等等;3、由于达不到质量要求产品可能被抛弃,而采用新的模型重新设计。
2.2.4 适用项目1、客户能提出一般性的目标,但不能标出详细的输入、处理及输出需求;或开发者不能确定算法的有效性、操作系统的适应性、及人机交互的形式;2、用户定义了一组一般性目标,但不能标识出详细的输入、处理及输出需求;3、开发者可能不能确定算法的有效性、操作系统的适应性或人机交互的形式。
2.2.5 阶段划分.1 抛弃型原型模型的阶段划分1、需求分析阶段——获取业务需求2、原型开发阶段——主要是界面实现,业务流程用图形方式表示3、原型评价阶段——和客户确认,完善业务需求4、系统设计5、系统实现.2 渐进型原型模型的阶段划分1、需求分析阶段(需求分析、原型实现、客户评价)2、设计阶段3、编码阶段4、测试阶段5、发布阶段6、实施阶段2.3 螺旋模型螺旋模型是将瀑布模型与演化模型结合起来,并且加入两种模型均忽略了的风险分析。
Array2.3.1 特点风险驱动的,关注风险,风险分析后决策是否继续进行项目。
.1 优点1、对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标;2、减少了过多测试或测试不足;3、维护和开发之间并没有本质区别。
.2 缺点1、执行风险分析的费用较高,会大大降低项目的利润。
一般只有大型项目才有必要采用此模型,并且要有足够的经费支持;2、使用该模型要求开发人员具备相当丰富的风险分析经验,如果项目实际上正走向灾难,而分析人员还认为一切良好,那么项目就会失败;3、螺旋模型过于复杂,不及瀑布模型那么容易理解和使用。
2.3.2 适用项目主要是用于大规模软件项目,需求不明朗,风险比较高的项目。
2.3.3 阶段划分螺旋模型沿着螺线旋转,由内向外每旋转一圈便开发出更完善的一个新版本。
一个螺旋式周期可分为:1、制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;2、风险分析:分析所选方案,考虑如何识别和消除风险;3、实施工程:实施软件开发(需求、设计、编码、测试等按螺旋周期推进);4、客户评估:评价本轮的开发结果,提出修正建议,计划下一轮的工作。