《人件》:人與人之間的互動是複雜的,並且其效果從來都難以預期,但卻是工作中最為重要的方面。
人不是「插入即相容的程式設計裝置」。
--凝聚力
敏捷軟體開發宣言
ø個體和互動勝過過程和工具
ø可以工作的軟體勝過面面俱到的文件
工作的軟體是首要的進度度量標準。
ø客戶合作勝過合同談判
ø響應變化勝過遵循計畫
為下兩周做詳細的計畫,為下三個月做粗略的計畫,再以後就做極為粗糙的計畫。
extreme programming.
ø短交付週期
(每兩周一次迭代
-客戶反饋)
ø測試驅動開發(測試指令碼)
junit
,nunit
當你能夠度量你說的,並且能夠用數字去表達它時,就表示你了解了它;若你不能度量它,不能用數字去表達它,那麼說明你的知識是匱乏的,不能令人滿意的。
測試驅動的開發方法:
ø保證每乙個功能都是正確的
ø從程式呼叫者的角度編寫程式,設計出便於呼叫的軟體
ø程式是可測試的,解耦合,促使模組之間隔離
例如,解除使用者介面和業務規則之間的耦合。
ø測試是一種無價的文件形式
敏捷軟體開發 第I部分 敏捷開發
人件 人與人之間的互動是複雜的,並且其效果從來都難以預期,但卻是工作中最為重要的方面。人不是 插入即相容的程式設計裝置 凝聚力 敏捷軟體開發宣言 個體和互動勝過過程和工具 可以工作的軟體勝過面面俱到的文件 工作的軟體是首要的進度度量標準。客戶合作勝過合同談判 響應變化勝過遵循計畫 為下兩周做詳細的計...
敏捷軟體開發 第II部分 敏捷設計
高內聚性 就乙個類而言,應該僅有乙個引起它變化的原因。軟體實體 類,模組,函式等等 應該是可擴充套件的,但是不可修改的。如果程式中的一處改動會產生連鎖反應,導致一系列相關模組的改動,那麼設計就具有僵化性的臭味。ocp 原則建議我們應該對系統進行重構。對於擴充套件是開放的 open for exten...
敏捷軟體開發 敏捷開發原則
編寫單元測試是一種驗證行為,更是一種設計行為。測試時乙個無價的文件。如果你想知道如何呼叫乙個函式或者建立乙個物件,會有乙個測試展示給你看。什麼是設計?不應該認為設計就是一組和 分離的uml圖。一組uml圖也許描繪了設計的一些部分,但是它不是設計。還是要 化 僵化性是指難以對軟體進行改動,即使是簡單的...