看,组织结构的文化、人员、沟通则决定了敏捷方法是否适用。跟这些相关联的关键成功因素有:
组织文化必须支持谈判
人员彼此信任
人少但是精干
开发人员所作决定得到认可环境设施满足成员间快速沟通之需要最重要的因素恐怕是项目的规模。规模增长,面对面的沟通就愈加困难,因此敏捷方法更适用于较小的队伍,20、40人或者更少。大规模的敏捷软件开发尚处于积极研究的领域。
另外的问题是项目初期的大量假定或者快速收集需求可能导致项目走入误区,特别是客户对其自身需要毫无概念的情况下。与之类似,人之天性很容易造成某个人成为主导并将项目目标和设计引入错误方向的境况。开发者经常能把不恰当的方案授予客户,并且直到最后发现问题前都能获得客户认同。虽然理论上快速交互的过程可以限制这些错误的发生,但前提是有效的负反馈,否则错误会迅速膨胀。
用于敏捷开发团队的项目管理工具已经有一些项目管理工具用于敏捷开发,可以用它们来帮助规划,跟踪,分析和整合工作。 这些工具在敏捷开发中扮演的重要的角色,也是知识管理的一种方法。
通常包括:版本控制整合,进度跟踪,工作分配,集成发布和迭代规划,论坛和软件缺陷的报告和跟踪。
方法列表
目前列入敏捷方法的有:
软件开发节奏,Software Development Rhythms
敏捷数据库技术,AD/Agile Database Techniques
敏捷建模,AM/Agile Modeling
自适应软件开发,ASD/Adaptive Software Development
水晶方法,Crystal
特性驱动开发,FDD/Feature Driven Development
动态系统开发方法,DSDM/Dynamic Systems Development Method
精益软件开发,Lean Software Development
Scrum
XBreed
极限编程,XP Extreme Programming
探索性测试
敏捷技术
测试驱动开发,TDD/Test-Driven Development
行为驱动开发,BDD/Bahavior-Driven Development