真人网赌app平台-全球最大网赌app-登录

敏捷App开发方法概念

2018-06-09 09:55:43


     自从App工程产生以来,大家在降低App开发项目的风险过程中尝试过多种方法,虽然面向对象、结构化、CMM等技术有利于帮助App危机的解决,然而其复杂的过程使App行业陷入低效泥沼中。2001年Kent beck Martin Fowler Robert Martin等经验论阵营的头领发起了敏捷联盟向全世界发布了他们的宣言:个体和交互胜过过程和工具;工作App高于理解文档;客户合作胜过合同谈判;响应变化胜过遵循计划。宣言体现了App开发方法必须去适应App变化的特征,在宣言的基础上就提出了敏捷App开发方法。 

  1 敏捷方法概述 
  截止现在敏捷App开发方法还没有一个确定的定义。但它的特点是重视App生产效率的,适用于App需求不确定、用户易沟通并且能参与开发、开发人员有责任感并且积极向上、十个人以下的小项目的开发,是以保证App开发有成功产出为前提的,尽可能减少在开发过程中制成品的方法,体现“刚刚够”(Just enough)的观点。 
  人作为核心、循序渐进和迭代算法是敏捷App开发的宗旨。在敏捷App开发过程中,App项目被分解成很多个小项目,每个小项目的成果都经过测试,再把他们集成起来。它的灵活性、协作性和App的商业价值上作出的贡献是敏捷App开发方法的优势。这都在“敏捷宣言”的核心原则中得到了体现:交互和独立工作是建立在工具和过程基础上的、App使用是建立在文档基础上的、客户的协作是建立在合同谈判基础上的、对变更做出的响应是建立在遵循计划基础上的。 
  2 几种常用的敏捷方法比较 
  2.1 极限编程(XP) 
  极限编程(简称XP)是由KentBeck于1996年提出的,极限编程要求把它列出的每一个思想和方法都做到极限、做到最好。 
  极限编程的核心价值是大家在开发中必须注意的:Communication(沟通)、Simplicity(简单)、Feedback(反馈)、Courage(勇气)、此外还有第五个价值: Modesty(谦虚)。因为计划赶不上变化,使用极限编程的App开发人员只需要在开发的初期做出一些文档。极限编程把App测试放在首位,这样以后出现漏洞的几率就会降到最低。 
  极限编程是一种近螺旋式的开发方法,它把复杂的开发分解为相对比较简单的小App;通过沟通、反馈和其它的方法,客户和开发人员就可以清楚的了解到开发进度、变化、困难和急需解决的问题等,并及时地调整开发过程。 
  2.2 SCRUM 
  SCRUM的宗旨是发挥构件技术和面向对象的开发方法,对迭代式面向对象方法进行改进,适用于需求不确定的产品的开发。是迭代的增量化过程,便于工作管理和产品研发。更综合了各种开发的经验。 
  SCRUM把项目分成N个为期15-30天的迭代阶段,称之为“冲刺”(sprint)。每个“冲刺”之前,你明确这一个“冲刺”需要实现的功能,然后让开发人员去完成。但是,在“冲刺”时,SCRUM的核心是所有开发都围绕着迭代,需求是固定的。SCRUM方法中只有3中角色:SCRUM主管、开发团队、产品负责人。 
  2.3 动态系统开发方法(DSDM) 
  开发一种面向领域的快速开发方法是产生动态系统开发方法的原因,动态系统开发方法在技术支撑、应用推广、研究改进培训认证和培训认证等方面都比其他方法要完善,适用于对时间要求很紧的开发项目,动态系统开发方法应用范围不再仅仅局限于IT行业。 
  DSDM方法提倡以业务为核心,快速而有效地进行系统开发,并提出了探索式开发方法的概念。强调App使用者一开始就预见所有需求是不可能的。该方法中,只要进能入下一步,当前的算法就是可行的。 
  2.4 水晶方法(Crystal) 
  水晶方法是Alistair Cockburn于上世纪90年代末提出的,水晶方法目的是发展一种提倡“机动性的”方法。 
  Crystal是根据项目重要性和规模来区别项目的,并给出相应的办法。所以,crystal是多种方法的组合.它阐明了要把对话和交流放在第一位的观点。Crystal方法中有两条准则:(1)应用反思工作室促使方法学的自适应,(2)使用的增量式循环不超过4个月。 
  2.5 特性驱动开发(FDD) 
  特性驱动开发是一个强调快速迭代、特性驱动的App开发方法,适用于周期短的开发。它既能保证文档和质量,又能保证App的快速开发,并提出划分的每一个功能开发时间不超过两星期,要求两星期内生产出可见的、能运行的代码。 
  特性驱动开发方法认为简单的过程和良好的定义就能很好地被实行,它强调的是实用、简化、易于被开发人员接受,是一个特性驱动快速迭代的过程,适用的项目为App需求经常变动。 
  2.6 自适应App开发(ASD) 
  自适应App开发方法的理论来源是复杂自适应系统理论,目的是通过提高自适应性用来应对互联网时代下的App需求难于预测并高速变化的App开发,它与水晶方法正在相互借鉴和融合。 
  在一个环境中,结果是不可预测的,把计划看成是一个自相矛盾的。在计划中,偏离计划就是错误的,要纠正。而在一个适配性环境里,偏离计划恰恰是在引导开发人员走向正确的目标。在不可预测的环境中,需要大家用各式各样的方法来应对不确定性。在管理中,重点在于鼓励大家交流沟通,而不是告诉大家需要做什么,从而使开发人员能自己提出具有创造性的解决方案。 

  不同的开发方法对于不同的开发人员来说,意义是不同。不同的项目规模,不同的开发环境,也决定了开发团队采用哪种开发方法,本文仅仅对敏捷开发方法做了一个简单先容,相信能为开发团队在实践中选择方法提供一个比较客观的参考。 

真人网赌app平台|全球最大网赌app

XML 地图 | Sitemap 地图