public void add( Card card )
{
cards.add(card);
}
…
}
測試-編碼-重整循環的每一階段都涉及不同類型的思想。在測試階段,重點放在了被實現的類的接口上。編寫代碼是為了讓測試盡可能快地通過測試。而重整階段可以被當作是使用簡單性原則進行指導的微型代碼審查。有沒有重復的或者看起來類似的代碼,不僅僅是在當前的類里,而且是在系統的其他類里?現在的實現可能會出現什么問題,類的用戶能夠與之順利溝通嗎?
重要的成功因素
小步前進——TCR對于開發人員來說不是一個很容易的轉換。一次只進行一個步驟,同時還要明白它學習起來有一定難度。
嚴格遵守原則——只進行TDD或者只進行重整并不能讓整個TCR循環一蹴而就。給自己足夠的時間來嘗試,并取得效果。壓力和最終期限會迫使小組回到原來的習慣上——一定要小心!
重整過程——與小組的所有成員交換意見,了解一下他們的反饋
理解——確保整個小組都完全理解TCR循環是什么,如何實現它?紤]一下就此主題進行員工培訓和講座。
配對編程——第二步
TCR循環可以由某個開發人員獨自完成,但是敏捷開發和TCR循環的真正威力來自于配對編程(pair programming)。在敏捷開發里,開發人員每兩人一組編寫所有的生產代碼,其中一人擔當“驅動者(driver)”(負責操作鼠標和鍵盤),而另一個人同驅動者一道解決問題和規劃更大的圖景。編程配對里的這個驅動者可以按需要進行輪換。配對讓你能夠實現眼前的目標,同時確保不會忽略項目的整體目標。它會保證有人在考慮下一步的走向和下一個要解決的問題。
雖然配對編程引起了很多爭議,但是大多數優秀的開發人員還是在按照這一方法進行開發,至少有的時候是這樣的。管理人員們可能會相信配對編程降低了生產效率,然而盡管開發小組的生產效率在一開始會有所降低,但是研究已經表明從質量和增加的生產效率的角度來看,配對編程遠遠超過了開發人員單獨工作的質量和效率7。而另一方面,開發人員可能會覺得配對編程非常困難,因為它需要與人們更多的交互過程,并與另一個開發人員一起編寫代碼。但是這也是建立一種相互學習的環境的最好方法。
文章來源于領測軟件測試網 http://www.kjueaiud.com/