全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最佳方案:迭代式开发2008年08月11日 星期一 10:16原文地址::9081/doc/RationalUnifiedProcess.zh_cn/manuals/intro/im_bp1.htm#Why%20Develop%20Iteratively最佳方案:迭代式开发为了降低风险,应采用迭代方式递进开发。每次迭代完成都会发布一个可执行文件。主题 为什么要以迭代方式开发 迭代式方法的优点 o 适应变更 o 降低风险 o 学习 o 提高复用性 o 提高质量 为什么要以迭代方式开发 初始设计就其关键需求而言很有可能是有缺陷的。到后期才发现设计缺陷会导致非常严重的费用超支,在某些情况下甚至会导致项目被取消。任何项目都会涉及到一定的风险。如果能在生命周期中尽早确保避免了风险,那么您的计划自然会更趋精确。有许多风险直到已准备集成系统时才被发现。不管开发团队经验如何,都绝不可能预知所有的风险。在瀑布式生命周期中,只有到生命周期的后期才能确知周围是否存在风险。在迭代式生命周期中,您需要根据主要风险列表选择要在迭代中开发的新的增量内容。每次迭代完成时都会生成一个经过测试的可执行文件,这样就可以核实是否已经降低了目标风险。迭代式方法的优点 迭代式方法一般要优于线性或瀑布式方法,其中的原因多种多样。 允许变更需求。需求总是会变化,这是事实。给项目带来麻烦的常常主要是需求变化和需求“蠕变”,它们会导致延期交付、工期延误、客户不满意、开发人员受挫。正如 Fred Brooks 25 年前所写的:“不要指望一次成功,无论如何你都要这样”。 逐步集成元素 - 集成并不只是简单的“一锤定音”。在迭代式方法中,集成可以说是连续不断的。过去在项目结束时要占到整个项目工作量 40% 的那段较长的、不确定的且棘手的时期,现在分散到六至九个集成部分中,每一部分要集成的元素都比过去少得多。 及早降低风险,因为风险一般只有在集成阶段才能发现或得到处理。展开初期迭代时,您会检查所有的核心工作流程,对项目使用的工具、市售软件及人员技能等许多方面进行磨合。过去认定的风险可能被证明不再是风险,而又可能出现一批新的未曾怀疑过的风险。 有助于组织学习和提高。团队成员有机会在整个生命周期中边做边学,各显其能。测试员可以早一些开始测试,技术文档编写员可及早开始编写,其他人也是如此。如果是非迭代式开发,这些人在初期只能制定计划或培训技能,空等着开始他们的工作。培训需求或对进一步帮助的需求(有可能来自外部)也可在评估复审中尽早提出。 提高复用性,因为分部分设计或实施比起预先确定所有共性更容易确定公用部分。确定和开发可重复使用的部分并非易事。早期迭代中的设计复审可使构架设计师确定毋庸置疑的潜在复用部分,并在以后的迭代中开发和完善这些公用代码。 生成性能更强壮的产品,因为在多次迭代中您总是不断地纠正错误。在产品脱离先启阶段后的初期迭代中仍然可以发现缺陷。性能上的瓶颈可以尽早发现并处理,而不象在交付前夕,此时已来不及处理。 容许产品进行战术改变;例如同现有的同类产品竞争。可以决定采用抢先竞争对手一步的方法,提前发布一个功能简化的产品,或者采用其他厂商的已有技术。 迭代流程自身可在进行过程中得到改进和精炼。一次迭代结束时的评估不仅要从产品和进度的角度来考察项目的情况,而且还要分析组织和流程本身有什么待改进之处,以便在下次迭代中更好地完成任务。 有一个客户曾经说过:“使用瀑布式方法,一切看起来都很顺利,直到项目快结束时,有时甚至集成已过半才发现问题。此时所有的东西都变得支离破碎。而使用迭代式方法,问题的本来面目不可能隐藏得很久。”项目经理常常抵制这种迭代式方法,视其为无穷无尽的“大肆删减”。在 Rational Unified Process 中, 这种交互式方法是很规范的;迭代在数量、持续时间和目标上都是按计划进行。参与者的任务和职责都已确定好。对进度进行的目标评测都将记录备查。从一次迭代到下一次迭代确实会存在返工现象,但返工也是严格按规定进行的。适应变更 迭代便于您将变更需求考虑进来。需求总是会随着过程而变更。需求变更一直是给项目制造难题的主要根源,它们会导致延期交付、工期延误、客户不满意、开发人员受挫。Fred Brooks 在 25 年前就曾写到:“不要指望一次成功,无论如何你都要这样。”用户会随着项目进行改变他们的想法。人的本性就是如此。强迫用户去接受他们最初所设想的那种系统,这是完全错误的。他们改变想法是因为环境在发生变化,在此转变过程中,他们对环境和技术有了更多的了解,并且他们还看到了开发各环节之中所生成的中间产品。迭代为管理层提供了一种用于对产品进行战术变更的方法,例如,同已有的产品进行竞争。例如:可以决定采用抢先竞争对手一步的方法,提前发布一个功能简化的产品,或者采用其他厂商的已有技术。在过程中允许技术变更。如果某种技术变化了或成为标准,或是出现了新技术,那么项目可以加以利用。这种情况在平台变更或者底层基础设施变更时最为显而易见。降低风险 多数风险在过去只能到集成阶段才被处理或发现,相对而言,迭代使您可以及早降低风险。展开初期迭代时,您会检查所有的核心工作流程,对项目使用的工具、市售软件及人员技能等许多方面进行磨合。过去认定的风险可能被证明不再是风险,而又可能出现一批新的未曾怀疑过的风险。集成并不只是简单的“一锤定音” - 元素是被逐步集成的。事实上,在迭代式方法中,集成可以说是连续不断的。过去在项目结束时要占到整个项目工作量 40% 的那段较长的、不确定的且棘手的时期,现在分散到六至九个(很难精确计划的)集成部分中,每一部分要集成的元素都比过去少得多。提高复用性 因为相对于必须预先确定复用性而言,分部分设计和实施时更容易确定公用部分,所以可以提高复用性。确定和开发可重复使用的部分并非易事。早期迭代中的设计复审可使构架设计师确定毋庸置疑的潜在复用部分,并在以后的迭代中开发和完善这些公用代码。要充分利用市售 (COTS) 产品这个便利条件。通过数次迭代来选择和集成它们,并核实它们是否适合这个构架。学习 开发人员有机会在整个生命周期中边做边学,各显其能。测试员可早些开始测试,技术文档可早些开始编写,其他人也是如此,而不是空等很长时间,只能制定计划和训练技能。在早期迭代的评估复审中,可以发现是否需要进一步培训或外援。迭代流程自身也可在进行过程中得到改进和精炼。一次迭代结束时的评估不仅要从产品和进度的角度来考察项目的情况,而且还要分析组织和流程本身有什么待改进之处,以便在下次迭代中更好地完成任务。提高质量 因为错误经过数次迭代已得到纠正,所以这样生
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中职钻削加工考卷题目及答案解析
- 2025-2026学年新疆维吾尔昌吉回族自治州数学四年级下学期期末联考模拟试题(含答案)
- 可复制的消防试题与答案
- 初三数学数轴相关试题及详细答案
- 中国体育考试题目与答案详解
- 2026个人竞聘报告(3篇)
- 急诊科护士考试题目及答案分析
- 血滤机报警常见问题试题与答案
- 钻孔弯曲测试题目及答案解析
- 保密常识考试试题与答案解析
- 2025年法院司法辅助人员真题附参考答案详解
- 2026乐山市市中区国有企业第二批社会招聘6人考试备考试题及答案详解
- 2026年渠县人力资源和社会保障局增量政策性岗位招募175人笔试备考试题及答案详解
- 2026宁夏中卫市海原县属国有企业领导人员招聘9人考试参考题库及答案详解
- 2022 低环境温度空气源多联式热泵(空调)机组
- 公司财务管理制度完整范本
- 2023版MRI临床应用安全专家共识课件
- 2025四川省夹金山国有林保护局有限公司招聘6人笔试历年参考题库附带答案详解
- 2026年审计系统公文写作规范考试题
- 2026年农商银行网络运维岗位题库
- 内蒙古辅警综合基础知识历年真题
评论
0/150
提交评论