看,組織結(jié)構(gòu)的文化、人員、溝通則決定了敏捷方法是否適用。跟這些相關(guān)聯(lián)的關(guān)鍵成功因素有:
組織文化必須支持談判
人員彼此信任
人少但是精干
開發(fā)人員所作決定得到認(rèn)可環(huán)境設(shè)施滿足成員間快速溝通之需要最重要的因素恐怕是項目的規(guī)模。規(guī)模增長,面對面的溝通就愈加困難,因此敏捷方法更適用于較小的隊伍,20、40人或者更少。大規(guī)模的敏捷軟件開發(fā)尚處于積極研究的領(lǐng)域。
另外的問題是項目初期的大量假定或者快速收集需求可能導(dǎo)致項目走入誤區(qū),特別是客戶對其自身需要毫無概念的情況下。與之類似,人之天性很容易造成某個人成為主導(dǎo)并將項目目標(biāo)和設(shè)計引入錯誤方向的境況。開發(fā)者經(jīng)常能把不恰當(dāng)?shù)姆桨甘谟杩蛻?,并且直到最后發(fā)現(xiàn)問題前都能獲得客戶認(rèn)同。雖然理論上快速交互的過程可以限制這些錯誤的發(fā)生,但前提是有效的負(fù)反饋,否則錯誤會迅速膨脹。
用于敏捷開發(fā)團隊的項目管理工具已經(jīng)有一些項目管理工具用于敏捷開發(fā),可以用它們來幫助規(guī)劃,跟蹤,分析和整合工作。 這些工具在敏捷開發(fā)中扮演的重要的角色,也是知識管理的一種方法。
通常包括:版本控制整合,進度跟蹤,工作分配,集成發(fā)布和迭代規(guī)劃,論壇和軟件缺陷的報告和跟蹤。
方法列表
目前列入敏捷方法的有:
軟件開發(fā)節(jié)奏,Software Development Rhythms
敏捷數(shù)據(jù)庫技術(shù),AD/Agile Database Techniques
敏捷建模,AM/Agile Modeling
自適應(yīng)軟件開發(fā),ASD/Adaptive Software Development
水晶方法,Crystal
特性驅(qū)動開發(fā),F(xiàn)DD/Feature Driven Development
動態(tài)系統(tǒng)開發(fā)方法,DSDM/Dynamic Systems Development Method
精益軟件開發(fā),Lean Software Development
Scrum
XBreed
極限編程,XP Extreme Programming
探索性測試
敏捷技術(shù)
測試驅(qū)動開發(fā),TDD/Test-Driven Development
行為驅(qū)動開發(fā),BDD/Bahavior-Driven Development