迭代開發需要快速反應,這需要各種不通角色人員的配合。如果人們做事情總是拖拖拉拉,就會延緩軟件項目的進度。而且每個人對自己在迭代中應該做什么事情必須很清楚,這需要事前的準備和角色的合理分配。
迭代需要用戶的配合,實際上最好能夠有客戶方真正的系統使用者參加到迭代過程中來,因為他們是最有發言權的。很多項目中會讓 項目經理或是 系統分析師擔當客戶代表的角色,這樣做有很多弊病。有時出于各種原因客戶確實不能到現場配合的,我們也可以通過其他的途徑獲得客戶反饋。比如一個階段迭代完成以后,可以把相關操作用截屏加文字說明的方式發給客戶,讓他們對產品有一個直觀的印象。
為了讓 團隊能夠有效快速地配合,應該盡可能使用各種自動化工具。比如自動化 測試管理工具,以及 配置管理,集成以及發布之類的工具。通過對這些工具的有效應用,使得各個成員能夠快速獲得信息。
迭代開發要擁抱變化,主動適應變化。要讓每個參與者都認識到這一點:不能夠固步自封,或者滿足于現有的成就,不去思考可改進的地方。從管理者的角度上,必須重視每一個反饋信息。
迭代開發追求對任務的度量。很多組織會把這種度量和員工的績效考評聯系起來。這種做法可能是合適的,但是如果只是簡單衡量工作量或者工作完成速度和質量,有可能會比較片面。畢竟軟件開發是一個環環相扣的過程,表面上來看這個環節處理不好,實際上可能是準備工作做得不好,或者其他人的配合不好。
所以如果在迭代過程中出現了問題,一定要客觀地分析,特別是應該挖掘導致這些問題出現的深層次原因。譬如在一次迭代中測試人員發現了一些bug,但是兩次迭代過去了,這些bug仍然存在,這就說明對bug的處理不夠迅速(當然如果因為某些原因這些事情被故意推遲了的情況不算)。這時就必須分析一下到底是什么原因造成了信息的不通暢。而不能簡單地批評相關責任人。
總結
本文對迭代開發的五個關鍵(變化,周期,目標,反饋,合作)方面進行了討論。作為一種方法論,迭代開發的好處在于它使軟件團隊變得更加靈活。在實施迭代開發的過程中,應注意不能流于形式化,切實做好每個環節的工作,這樣才能獲得滿意的結果。
文章來源于領測軟件測試網 http://www.kjueaiud.com/