作者:探碼科技, 原文鏈接: http://nbbskj.com/blog/678
《敏捷軟件開發(fā) - 原則、模式與實踐》是2003 年9月清華大學出版社出版的圖書,作者是Robert C. Martin。本書重點講述了如何使用uml,并通過真實案例講解如何用極限編程來設計、測試、量構和結對編程。
以下內(nèi)容節(jié)選自本書!
我們遵循以下原則:
完整的團隊
XP項目的所有參與者(開發(fā)人員、業(yè)務分析師、測試人員等)一起工作在一個開放的場所中,他們都是同一個團隊的成員,這個場所的墻壁上掛著大幅的顯眼的圖表和他顯示當前進度的其他東西。
計劃游戲
計劃是持續(xù)的、循序漸進的。每2周,開發(fā)人員就為下2周估算候選特性的成本,而客戶則根據(jù)成本和業(yè)務價值來選擇要實現(xiàn)的特性。
客戶測試
作為選擇每個所期望的特性的一部分 ,客戶定義自動驗收測試來表明該特性可以工作。
簡單設計
團隊保持設計恰好和當前的系統(tǒng)功能相匹配,它通過了所有的測試,不包含任何重復,可以表達編寫者想要表達的所有意圖,并包含盡可能少的代碼。
結對編程
所有產(chǎn)品軟件都是由兩個程序員并排坐在一起在同一臺機器上構建的。
測試驅(qū)動開發(fā)
程序員以非常短的周期工作,他們先增加一個失敗的測試,然后設法使其通過。
改進設計
隨時改進糟糕的代碼,保持代碼盡可能干凈,有表達力。
持續(xù)集成
團隊總是可以使系統(tǒng)逐步集成和完善。
集體代碼所有權
任何結對的程序員都可以在任何時候改進任何代碼。
編碼標準
系統(tǒng)中所有的代碼看起來就好像是由一個非常勝任的人編寫的。
隱喻
團隊提出一個程序工作原理的公開景象。
可持續(xù)的速度
團隊只有持久才有獲勝的希望。他們以能夠長期維持的速度努力工作。他們保存精力,他們把項目看作是馬拉松長跑,而不是全速短跑。
?
在軟件開發(fā)方面,探碼一直踐行的就是敏捷開發(fā)的思維,以用戶的需求進化為核心,采用迭代、循序漸進的方法進行著軟件開發(fā)。在開發(fā)過程中,一個項目在構建初期被細分成多個子項目在項目管理協(xié)同工具上創(chuàng)建Issue,各個子項目的成果都要經(jīng)過測試,并經(jīng)歷開發(fā)的全生命周期的管理。每個子項目都是獨立的,而又是可以合在一起變成整體的。意思就是每個子項目相互聯(lián)系又可以獨立運行,整個項目一直處于開發(fā)中,又不影響軟件的運行。
同時,敏捷開發(fā)并不適合每一個開發(fā)團隊,這要求團隊技術人員至少有3人以上;技術人員的要有足夠的穩(wěn)定性;技術人員的功底也得深厚!
?
相關文章:敏捷迭代軟件開發(fā)簡略教程