探讨敏捷开发中原则与过程的分析的办法].docVIP

探讨敏捷开发中原则与过程的分析的办法].doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
探讨敏捷开发中原则与过程的分析的办法]

探讨敏捷开发中原则与过程的分析的办法] ; 从上世纪50年代软件出现开始至今,软件开发方法先后经历了无规则的编码和测试、结构化方法、面向对象的方法、能力成熟度模型CMM和轻量级开发方法等各个阶段。纵观软件开发的发展史,软件开发方法的演变是有规律可循的,遵循着一条从“计划和预测”到“反馈和适应”的历程。造成这一演变过程的原因如下: ; 1)软件使用者的主体从大型尖端领域逐渐向广泛的企业应用领域转变; ; 2)人们对软件系统需求的认识提高; ; 3)市场经济的发展,以及市场需求的频繁变化; ; 4)面向对象技术的应用和普及。 ; 而今,企业面对的是快速变化的市场,在这样的市场环境下,收集用户完整的、稳定不变的系统需求是不可能的。面对无法预知和不断变化的需求,传统的软件开发流程明显已无法适应,而敏捷过程将程序代码和系统需求紧密的联系在一起,将系统需求视作流动和变化的需求的思想,则正符合现今软件开发的现状。 ; 1 敏捷开发的兴起 ; 敏捷方法诞生于2001年,由J.Highsmith和R.C.Martin发起,由一批业界专家参与成立了敏捷联盟,并概括出了一系列让软件开发团队具有快速工作、相应变化能力的价值观和原则。 ; 在敏捷联盟的官方网站上,可看到敏捷宣言的完整内容: ; 1)个人与沟通胜过过程与工具; ; 2)可工作的软件胜过面面俱到的文档; ; 3)客户协作胜过合同谈判; ; 4)相应变化胜过遵循计划。 ; 具体来说,传统的顺序开发模型(瀑布模型、V模型、W模型)的一个重要的特点就是所有的活动都是有顺序的。顺序开发模型成功使用的一个前提是软件系统具备完善和明确的需求。如果在项目开始阶段无法进行完善的需求分析和设计,则顺序开发模型就很难被成功的使用。为了解决顺序模型的不足,出现了增量迭代模型。从本质上说,敏捷开发就是一种迭代的增量的开发模型。这种模型的优点如下:能很好的适应需求的变化;早期的迭代可以降低风险;集成是持续的而不是在项目后期进行的“大动作”;在每次迭代中发现和更正缺陷并能不断反馈并改进开发过程[1]。 ; 如果要用一句话来描述敏捷开发,那么敏捷开发应该是:以人为本、轻载、基于时间、just Enough、并行并基于构件的迭代和增量的软件开发过程。 ; 2 敏捷开发的原则 ; 敏捷联盟成立后,又陆续形成了敏捷的十二项原则(本文不在详细展开,详细描述见敏捷联盟官方网站),其主旨思想大体如下:敏捷开发中需求是逐渐展开的,在项目初期不提倡过渡的需求分析,对需求变化的响应是动态的;敏捷项目应该分成从几周到几个月间隔的迭代周期,每一个迭代周期尽量产出潜在可交付的软件产品,用户的反馈作为下次迭代的基础;可工作的软件是衡量项目进展的主要依据;敏捷开发整个过程是持续的,带有反馈的和自我完善的轻量级的过程。 ; 基于敏捷指导思想,形成了不少敏捷软件开发方法(例如XP、scrum等),它们大都强调适应性而非预测性、强调以人为中心,而不以流程为中心,以及对变化的适应和对人性的关注。以XP(extreme programming)方法为例,它消除了大多数重量型过程的不必要产物,建立了一个渐进型开发过程。该方法将开发阶段的4个活动(分析、设计、编码和测试)混合在一起,在全过程中采用迭代增量开发、反馈修正和反复测试。并且它作为一种面向客户的开发模型,开发过程中对需求改变的适应能力较高,即使在开发的后期,也可较高程度地适应用户的改变。XP开发模型与传统模型最大的不同是其核心思想是交流(Communication)、简单(Simplicity)、反馈(Feedback)和进取(Aggressiveness)[2]。这种开发模型的主要优点如下: ; 1)采用简单计划策略,不需要长期计划和复杂模型,开发周期短; ; 2)在全过程采用迭代增量开发、反馈修正和反复测试的方法,软件质量有保证; ; 3)能够适应用户经常变化的需求,提供用户满意的高质量软件。 ; 纵观所有敏捷开发方法,其基本都具备轻载、基于时间、Just Enough、并行并基于构件的迭代和增量的特点,而且具有类似的敏捷项目交付模型。 ; 3 敏捷项目交付模型 ; 敏捷项目交付模型是一种敏捷软件项目管理的生命周期模型,它是基于敏捷开发迭代和增量特点的过程模型[3]。该模型把敏捷软件项目的生命周期大体可分成项目规划、项目启动、迭代开发与发布三个阶段。各个阶段分别介绍如下: ; 1)项目规划阶段 ; 敏捷开发中的项目规划阶段类似于传统开发过程中的项目可行性分析和早期的需求收集阶段,该阶段的主要工作如下: ; (1)就要开发系统的战略目标、业务愿景和初始项目需求等与关键涉众达成共识; ; (2)根据收集到的资料,设计与决策系统开发的关键技术架构问题; ; (3)评估项目的工作量与成本,辅助客户

文档评论(0)

ailuojue2 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档