zoukankan      html  css  js  c++  java
  • 敏捷软件开发方法综述

        软件开发现在是一个与我们生活息息相关的领域,自软件工程诞生以来,软件专家们试图通过技术和管理的手段来降低软件项目的风险。在这种背景下,2011年经验论阵营的组织者发起成立了敏捷联盟并向全世界发布了他们的宣言:个体和交互胜过过程和工具; 可以工作的软件胜过面面俱到的文档;客户合作胜过合同谈判; 响应变化胜过遵循计划。以上的宣言反映了软件开发方法要适应现代软件多变化的特征!而敏捷开发方法就是在这个基础上提出来的。

         敏捷开发以人为核心迭代循序渐进的开发方法。 在敏捷开发中!软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试!具备集成和可运行的特征;敏捷方法优势在于它的协作,灵活性!以及它对软件的商业价值作出的贡献!这体现在敏捷宣言的核心原则中;在过程和工具的基础上独立工作和交互,在综合文档的基础上使用软件;在合同谈判的基础上进行客户协作以及在遵循计划的基础上对变更做出响应’敏捷过程有如基于适应而非预测等4个核心理念!敏捷过程有12个指导原则!例如在快速不断地交付用户可运行软件的过程中以积极的态度对待需求的变化;不管该变化出现在开发早期还是后期等。

          敏捷开发的要点是:(1)注重概念和架构设计,轻详细设计:强调的是产品的路线规划、市场趋势、客户价值、技术趋势等;(2)使用SWOT分析法:在敏捷开发中,更加注重客户需求。进行SWOT分析,就能选出付出最小工作量,但能获得最大价值的模块;(3)市场和需求驱动,而非技术驱动:拥抱变化,但不盲目变化。产品的改动需要经过概念设计、架构设计以及SWOT分析后,三思而后行;(4)时刻考虑版本兼容性:时刻考虑产品的架构、规划路线图,老版本的兼容性,及迁移平滑性。否则,随着版本的增多,必将面对着大量的维护工作;(5)轻文档,但非无文档:敏捷开发强调沟通的重要性,而轻冗余文档。但敏捷开发并不意味着无文档。在敏捷开发过程中,适量的文档还是很有帮助,有助于整理思路,加快沟通和讨论。

        敏捷软件开发的常用方法有以下几种:极限编程(XP);Scrum;动态系统开发方法(DSDM);水晶方法(crystal);特性驱动开发;自适应软件开发。

       敏捷=理念+优秀实践+具体应用

       敏捷包括3个层次 :   理念(敏捷核心思想)

                            优秀实践(敏捷的经验积累)

                            具体应用(能够结合自身灵活应用才是真正敏捷)

       团队是价值的真正创造者,应加强团队协作、激发团队潜能

    软件开发是一种团队活动,首先应做到提升沟通效率降低交流成本

    理念:不断调整以适应(Adapting)变化

       具体应用:因地制宜选择适合的敏捷实践

       团队在透彻理解敏捷理念的基础上,可以灵活选择最适合自己的实践,避免教条化。

       不同的方法对于不同的人来说,意义各有不同;不同的开发环境,也决定了团队采用哪种开发方法。本文总体上介绍了敏捷软件开发的方法,也提到了软件开发的主要动力-团队。一个有凝聚力的团队,才是一个好的团队,所有的方法,才能发挥出它的作用。

       

  • 相关阅读:
    单链表
    队列
    产品经理们,遇到Bug请别十万火急
    2008年7月3日
    JS URL 参数
    NET 产品版权保护方案 (.NET源码加密保护)
    常用正则表达式
    网线接法
    C#创建多文档的界面
    TGE学习笔记04 billboard
  • 原文地址:https://www.cnblogs.com/wuwei123/p/3612262.html
Copyright © 2011-2022 走看看