敏捷开发

      简单的说,敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。

    1、敏捷原则

        1)我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意

        2)  即使到了开发的后期,也欢迎改变需求。敏捷过程利用变化来为客户创造竞争优势。

        3)经常性的交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好

        4)在整个项目开发期间,业务人员和开发人员必须天天都在一起工作。

        5)围绕被激励起来的人个来构建项目。给他们提供所需要的环境和支持,并且信任他们能够完成工作。

        6)在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。

        7)工作的软件是首要进度度量标准。

        8)敏捷过程提可持续的开发速度。

        9)不断地关注优秀的技能和好的设计会增强敏捷能力。

        10)简单----使未完成的工作最大化的艺术----是根本的。

        11)最好的构架、需求和设计出自与自组织的团队。

        12)每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。

   2、极限编程

       极限编程(Extreme Programming,XP)是一门针对业务和软件开发的规则,它的作用在于将两者的力量集中在共同的、可以达到的目标上。它是以符合客户需要的软件为目标而产生的一种方法论,XP使开发者能够更有效的响应客户的需求变化,哪怕是在软件生命周期的后期。它强调,软件开发是人与人合作进行的过程,因此成功的软件开发过程应该充分利用人的优势,而弱化人的缺点,突出了人在软件开发过程中的作用。极端编程属于轻量级的方法,认为文档、架构不如直接编程来的直接。

      从长远看,早期发现错误以及降低复杂度可以节约成本。极限编程强调我们将任务/系统细分为可以在较短周期解决的一个个子任务/模块,并且强调测试、代码质量和及早发现问题。通常,通过一个个短小的迭代周期,我们就可以获得一个个阶段性的进展,并且可以及时形成一个版本供用户参考,以便及时对用户可能的需求变更作出响应。

      极限编程中有四个核心价值是我们在开发中必须注意的:沟通(Communication)、简单(Simplicity)、反馈(Feedback)和勇气(Courage)。XP用“沟通、简单、反馈和勇气”来减轻开发压力和包袱;无论是术语命名、专著叙述内容和方式、过程要求,都可以从中感受到轻松愉快和主动奋发的态度和气氛。这是一种帮助理解和更容易激发人的潜力的手段。XP用自己的实践,在一定范围内成功地打破了软件工程“必须重量”才能成功的传统观念。XP精神可以启发我们如何学习和对待快速变化、多样的开发技术。成功学习XP的关键,是用“沟通、简单、反馈和勇气”的态度来对待XP;轻松愉快地来感受XP的实践思想;自己认真实践后,通过对真实反馈的分析,来决定XP对自己的价值;有勇气接受它,或改进它。

原文地址:https://www.cnblogs.com/Machainn/p/5270328.html