Kent Beck&Dave Thomas:務(wù)實(shí)的敏捷
敏捷中國大會(huì)2009終于落下了帷幕,總的來說今年的大會(huì)辦得相當(dāng)成功。Kent Beck和David Thomas,兩位敏捷宣言的簽署人,給大會(huì)帶來了十分精彩的演講。
Kent Beck做了一個(gè)很切題的主題演講——“務(wù)實(shí)的理想主義”("Pragmatic Idealism")?,F(xiàn)實(shí)和理想往往是比較矛盾的,但是在充滿競爭和變化的現(xiàn)代社會(huì),這種矛盾卻無處不在。對軟件開發(fā)來說,我們的理想目標(biāo)包括:
• 責(zé)任心(Accountability),客戶和團(tuán)隊(duì)之間,團(tuán)隊(duì)成員之間,公司內(nèi)部不同部門之間不再需要相互遮遮掩掩,所有人勇于承擔(dān)自己的責(zé)任;
• 可依賴性(Reliability),軟件團(tuán)隊(duì)只忙于對客戶最有價(jià)值、有用的功能;
• 可預(yù)測性(Predictability),團(tuán)隊(duì)以比較穩(wěn)定的速度和質(zhì)量發(fā)布軟件,團(tuán)隊(duì)總是能夠信守對客戶的承諾,按時(shí)給客戶發(fā)布可靠的軟件;
• 專注(Focus),每個(gè)成員能夠?qū)W⒂谡嬲o帶來價(jià)值的工作;
• 有效性(Effectiveness),僅僅把時(shí)間花在做有價(jià)值的事情上;
• 財(cái)務(wù)有效性(Cost Efficiency),盡管軟件開發(fā)的成本以及門檻變得越來越低,我們還是需要更有效的投資。有效的投資能夠保證公司嘗試更多的選擇,在激烈競爭中更容易生存;
• 更高頻率的發(fā)布周期,高頻率的發(fā)布帶來的好處是更多的客戶反饋,公司能夠從反饋中快速學(xué)習(xí),不斷調(diào)整。
怎樣實(shí)現(xiàn)這些看似很難實(shí)現(xiàn)的理想目標(biāo),Kent給我們的建議是:
• 在敏捷團(tuán)隊(duì)中樹立標(biāo)桿;
• 分享敏捷開發(fā)的成功經(jīng)驗(yàn);
• 給團(tuán)隊(duì)激勵(lì)、支持和認(rèn)可,鼓勵(lì)團(tuán)隊(duì)一步一個(gè)腳印的向理想的目標(biāo)靠近。
Dave Thomas的演講題目是“務(wù)實(shí)的敏捷”("Pragmatic Agile")。敏捷其實(shí)是一種怎樣做事情、做什么樣的事情的方法?!白坑谐尚У某绦騿T”作為與敏捷宣言同一個(gè)時(shí)代出版的書,其中很多基本原則仍然有很多 現(xiàn)實(shí)意義,而且這些原則與敏捷開發(fā)的原則相輔相成的:
• 破窗理論,團(tuán)隊(duì)?wèi)?yīng)該專注處理小問題,及時(shí)處理小問題能夠大大減少大問題出現(xiàn)的幾率,正如老子說的“為之于未有,治之于未亂”;
• 不重復(fù)原則(DRY),無論是代碼還是設(shè)計(jì)都應(yīng)該減少重復(fù);
• 減少代碼耦合,試圖同時(shí)做所有事情,結(jié)果往往是一事無成;
• 自動(dòng)化一切重復(fù)工作。
敏捷并不是一個(gè)目的,我們要用敏捷的思維方式來指導(dǎo)我們開發(fā)程序、寫書以及做很多其他的東西。這個(gè)務(wù)實(shí)意味著“只做有用的東西”(Doing what works, if not wok, stop; Working at what to do),關(guān)注與給客戶帶來價(jià)值。