User Story:開發人員要求客戶把所有的需求寫成一個個獨立的小故事,每個只需要幾天時間就可以完
成。開發過程中,客戶可以隨時提出新的User Story,或者更改以前的User Story。
Story Estimates和開發速度:開發小組對每個User Story進行估算,並根據每個開發週期
(Iteration)中的實際情況反覆計算開發速度。這樣,開發人員和客戶能知道每個星期到底能開發多
少User Story。
Release Plan和Release Scope:整個開發過程中,開發人員將不斷地發布新版本。開發人員和客戶一
起確定每個發布所包含的User Story。
Iteration(開發週期)和Iteration Plan:在一個Release過程中,開發人員要求客戶選擇最有價值的
User Story作為未來一兩個星期的開發內容。
The Seed:第一個開發週期(Iteration)完成後,提交給客戶的系統。雖然這不是最終的產品,但它
已經實現了幾個客戶認為是最重要的Story,開發人員將逐步在其基礎上增加新的模組。
Continuous Integration(整合):把開發完的User Story的模組一個個拼裝起來,一步步接近乃至最
終完成最終產品。
驗收測試(功能測試):對於每個User Story,客戶將定義一些測試案例,開發人員將使運行這些測試
案例的過程自動化。
Unit Test(單元測試):在開始寫程式前,程式員針對大部分類的方法,先寫出相應的測試程式。
Refactoring (重整和最佳化) :去掉代碼中的冗餘部分,增加代碼的可重用性和伸縮性。
小結
XP的一個成功因素是重視客戶的反饋——開發的目的就是為了滿足客戶的需要。XP方法使開發人員始終
都能自信地面對客戶需求的變化。XP強調團隊合作,經理、客戶和開發人員都是Team Dev中的一員。團
隊通過相互之間的充分交流和合作,使用XP這種簡單但有效方式,努力開發出高品質的軟體。XP的設
計簡單而高效;程式員們通過測試獲得客戶回函,並根據變化修改代碼和設計,他們總是爭取儘可能早
地將軟體交付給客戶。XP程式員能夠勇於面對需求和技術上的變化。
XP很象一個由很多小塊拼起來的智力拚圖,單獨看每一小塊都沒有什麼意義,但拼裝好後,一幅美麗的
圖畫就會呈現在你面前。