文∣阿安,,PMP,,NPDP,敏捷教練,,歡迎關(guān)注,,一起學(xué)習(xí)產(chǎn)品開發(fā)管理 從上世紀(jì)中期開始,傳統(tǒng)項(xiàng)目管理發(fā)展了近70年,,在工業(yè)時(shí)代大家都遵循泰勒的科學(xué)管理方法的傳統(tǒng)項(xiàng)目管理方式,,新世紀(jì)進(jìn)入互聯(lián)網(wǎng)時(shí)代,創(chuàng)新型企業(yè)發(fā)現(xiàn)這種傳統(tǒng)項(xiàng)目模式越發(fā)不再適合尤其是軟件產(chǎn)品開發(fā),。 《精益創(chuàng)業(yè)》的作者埃里克說(shuō)到:“現(xiàn)在是管理的新世紀(jì),,從社會(huì)層面而言,我們已經(jīng)擁有了一整套管理制造實(shí)體產(chǎn)品的最佳方式,,但談到初創(chuàng)企業(yè)和創(chuàng)新,,我們還在摸索中前行,。我們依賴愿景,追隨能創(chuàng)造奇跡的“偉大人物”,?!?/p> 2001年17位世界級(jí)軟件實(shí)踐大師提出新的時(shí)代應(yīng)遵循彼得.德魯克的人性化管理,正式提出了'敏捷宣言',。 1,、敏捷的4個(gè)價(jià)值觀(1)個(gè)人與互動(dòng)勝于過(guò)程與工具 過(guò)程與工具固然重要,但人與人之間的互動(dòng)比過(guò)程與工具還重要,; (2)可用的軟件勝于復(fù)雜的文檔 可用的軟件比復(fù)雜的文檔重要,文檔夠用就好,。 (3)與客戶協(xié)作勝于合同談判 開發(fā)團(tuán)隊(duì)與客戶是一個(gè)團(tuán)隊(duì),彼此協(xié)作比凡事都只通過(guò)合同談判還重要。 (4)響應(yīng)變更勝于遵循計(jì)劃 根據(jù)客戶的需求響應(yīng)變更,比遵循原計(jì)劃重要,這樣才能為客戶創(chuàng)造最高價(jià)值,。 新型的敏捷開發(fā)不在一種簡(jiǎn)單方法論而是綜合了許多方法和技術(shù),能夠幫助企業(yè)根據(jù)開發(fā)期間不斷變化的特性,,進(jìn)行調(diào)整并且能夠降低風(fēng)險(xiǎn),完成為客戶創(chuàng)造最高價(jià)值的軟件,。 以前傳統(tǒng)開發(fā)都是產(chǎn)品做到開發(fā)團(tuán)隊(duì)認(rèn)為的完美才上市,但結(jié)果依然還是會(huì)不斷收到客戶的抱怨,, 而現(xiàn)在的做法是做出最小價(jià)值的產(chǎn)品后就上市,然后根據(jù)客戶的反饋不斷修改升級(jí)產(chǎn)品,,決定產(chǎn)品最終形態(tài)的并不是制造團(tuán)隊(duì),,也不是設(shè)計(jì)團(tuán)隊(duì),而是真正的客戶,。 在全球敏捷項(xiàng)目管理中,,主要包含了Scrum、XP,、Kanban ,、Lean四種敏捷方法論及其實(shí)踐模式。
2,、4種主流的敏捷開發(fā)模式這里主要介紹這4種主流的敏捷開發(fā)模式 1.Scrum 美國(guó)施瓦布和薩瑟蘭參考美國(guó)空軍作戰(zhàn)時(shí)面對(duì)戰(zhàn)斗的快速反應(yīng)的方法:觀察、面向,、決定和行動(dòng)提出的Scrum。 Scrum的基本價(jià)值觀,主要有: (1)專注( Focus) Scrum團(tuán)隊(duì)?wèi)?yīng)專注于交付潛在的可發(fā)布,,可增量產(chǎn)品上的工作,。 (2)尊重( Respect) Scrum團(tuán)隊(duì)不分你我,開發(fā)團(tuán)隊(duì)內(nèi)的成員只有開發(fā)者的稱號(hào),沒有其他工作等級(jí)職稱。 (3)承諾( Commitment) 承諾就是對(duì)交付成果的保證,、誓言及義務(wù),。 4)勇氣( Courage) 有勇氣公開,放棄不透明的作風(fēng)。 (5)公開( Openness) 團(tuán)隊(duì)中每一個(gè)人都要知道彼此的工作哪些已經(jīng)完成,且要能善于接受新的想法,成為學(xué)習(xí)型組織和高效率團(tuán)隊(duì),。 對(duì)于 Scrum主要有4個(gè)項(xiàng)目工作定義 1) Scrum是一個(gè)可以讓我們關(guān)注于在最短時(shí)間內(nèi)交付最高商業(yè)價(jià)值產(chǎn)品的框架,。 2)這個(gè)框架讓我們可以快速并持續(xù)檢驗(yàn)真正可用的軟件,。 3)開發(fā)方式根據(jù)商業(yè)價(jià)值來(lái)調(diào)整工作順序,是團(tuán)隊(duì)自我組織決定能交付最高價(jià)值功能最為有效的工作方式,。 4)每?jī)芍艿揭粋€(gè)月,任何一個(gè)人都能看到真正可用的軟件而非文檔,。 Scrum是用于開發(fā)與持續(xù)支持復(fù)雜性產(chǎn)品的管理框架,在這個(gè)框架中,人們可以解決復(fù)雜的適應(yīng)性問(wèn)題,同時(shí)以高效生產(chǎn)力與創(chuàng)造性的方式,交付最高價(jià)值的產(chǎn)品,。 2,、XP極限編程(XP)是由肯特·貝克,羅恩杰弗里斯和沃德·坎寧安共同開發(fā)的一種敏捷方法. 極限編程主要價(jià)值時(shí)推動(dòng)團(tuán)隊(duì)成員與客戶保持高度互動(dòng),其核心為13個(gè)實(shí)踐,。 (1)全隊(duì) 客戶代表及開發(fā)團(tuán)隊(duì)都是XP團(tuán)隊(duì)成員,,,并且客戶代表與開發(fā)團(tuán)隊(duì)要在一起工作??蛻粲袃蓚€(gè)主要職責(zé):編寫用戶故事和確認(rèn)功能驗(yàn)收測(cè)試,。 (2)規(guī)劃游戲 規(guī)劃游戲是全隊(duì)共同參與,以游戲或活動(dòng)的方式,規(guī)劃在特定的迭代的用戶故事,并有效估算所需的工作量。 (3)最小的發(fā)布 要快速將功能交付到客戶手中并聚焦在最小可售功能或稱為最小可行產(chǎn)品MVP,,讓客戶可以更頻繁地進(jìn)行調(diào)整和應(yīng)對(duì)變化,。 (4)客戶測(cè)試 軟件產(chǎn)品需要經(jīng)過(guò)徹底的測(cè)試,最好在交給客戶之前已經(jīng)有自動(dòng)化的驗(yàn)收測(cè)試。 (5)編程標(biāo)準(zhǔn) 編寫內(nèi)容包括文檔名稱,、變量名稱,、程序縮排、括號(hào),、備注等,同一個(gè)團(tuán)隊(duì)要遵循相同的編程標(biāo)準(zhǔn),才有辦法做到程序代碼共同擁有,。 (6)程序代碼共同擁有 所有程序是XP所有團(tuán)隊(duì)成員共同擁有的,不是某個(gè)開發(fā)人員所獨(dú)自擁有的,意思是所有的程序除了自己看得懂之外,必須讓任何個(gè)團(tuán)隊(duì)成員都看得懂、都可以進(jìn)行修改,。 (7)持續(xù)集成團(tuán)隊(duì) 工作的成果要每天集成到系統(tǒng),有時(shí)候可以一天集成幾次,。 (8)隱喻 用隱喻的共同愿景來(lái)描述團(tuán)隊(duì)是如何工作的,這樣比較生活化可以激發(fā)創(chuàng)意思考。 (9)持續(xù)步伐 傳統(tǒng)的軟件開發(fā),一開始的時(shí)候工作時(shí)間比較規(guī)律,但快要收尾時(shí),卻要每天加班,而且到最后加班時(shí)間越來(lái)越久,項(xiàng)目反而越拖越長(zhǎng),甚至無(wú)法驗(yàn)收,。 XP就是要維持一個(gè)可走得遠(yuǎn)的持續(xù)步伐更有規(guī)律地完成增量成果,。 (10)測(cè)試驅(qū)動(dòng) 在編程之前,團(tuán)隊(duì)就已經(jīng)寫好測(cè)試用例,以確保通過(guò)的程序就是客戶需要的。 (11)結(jié)對(duì)編程 兩個(gè)人一起編程,,而不是一個(gè)人寫好程序再交給另一人做測(cè)試,。 (12)簡(jiǎn)單設(shè)計(jì) 編程的方法越簡(jiǎn)單越好,不要為了增加個(gè)人效率,而寫了大部分人都看不懂的程序,增加后期維護(hù)的難度。 (13)重構(gòu) 在不改變程序代碼的外部行為,同時(shí)提高內(nèi)部結(jié)構(gòu),改善程序代碼設(shè)計(jì)的過(guò)程,通常是改為比較有效率或以后比較好修改的程序,。 3,、精益精益軟件開發(fā)源于日本豐田汽車生產(chǎn)制造過(guò)程,精益的主要概念是以客戶為主,所有的工作產(chǎn)出應(yīng)該要為客戶創(chuàng)造最高價(jià)值。 精益的7個(gè)基本原則也適用于軟件開發(fā),,其核心價(jià)值與敏捷開發(fā)不謀而合,。 (1)消除浪費(fèi) 對(duì)客戶或產(chǎn)品沒有增加任何價(jià)值的行為都是一種浪費(fèi),包括在組織、過(guò)程、系統(tǒng)及其他方面的各種可能形式的浪費(fèi),都應(yīng)該被消除,。 研發(fā)過(guò)程應(yīng)該通過(guò)利用價(jià)值流圖方式分析每項(xiàng)活動(dòng),辨識(shí)出浪費(fèi)的地方,并消除浪費(fèi),。 (2)強(qiáng)化學(xué)習(xí) 精益追求持學(xué)習(xí)和改善、無(wú)論團(tuán)隊(duì)表現(xiàn)多好,總有還可改進(jìn)的地方,。 例如,學(xué)習(xí)用簡(jiǎn)單的邏輯編程,所有的變量命名都讓自己和別人看得懂,。學(xué)習(xí)做適度的分解和估算,讓自己和團(tuán)隊(duì)能實(shí)現(xiàn)自己的承諾,如期完成合乎質(zhì)量的成果。 (3)盡可能晚做決策 等到真正需要做決策的時(shí)候,再做決策,提前的變更只會(huì)增加無(wú)形的成本,。等到要做決策所需要的信息充分獲得了,到了最后負(fù)責(zé)時(shí)刻,再做決策,判斷會(huì)比較正確,。 (4)盡可能盡快交付 主管、客戶都喜歡看到盡快交付產(chǎn)品,,團(tuán)隊(duì)盡快把可靠功能交付給客戶,獲得客戶的反饋,再據(jù)以修訂系統(tǒng),盡快交付也意味著更快的滿意,。 (5)授權(quán)團(tuán)隊(duì) 管理者該做的事是制定可以讓團(tuán)隊(duì)創(chuàng)造增值的措施。精益項(xiàng)目是授權(quán)團(tuán)隊(duì)做決策,讓團(tuán)隊(duì)自我管理從而在工作上獲得最佳的效益,。 (6)建構(gòu)完整性 就感知外部完整性而言,要每天都能持續(xù)把客戶的價(jià)值觀轉(zhuǎn)換成細(xì)節(jié)設(shè)計(jì)給開發(fā)團(tuán)隊(duì),,系統(tǒng)要能穩(wěn)定內(nèi)聚且能發(fā)揮整體的作用 (7)著眼整體 開發(fā)團(tuán)隊(duì)要考慮組織整體利益,而不能只考慮團(tuán)隊(duì)局部利益。團(tuán)隊(duì)要了解最初引發(fā)項(xiàng)目的商業(yè)需求,,并檢查團(tuán)隊(duì)的解決方案如何實(shí)現(xiàn)項(xiàng)目目標(biāo),而且必須是完整的解決方案,而不是幾個(gè)分裂解決方案的堆積,。 4、KANBAN看板是由大衛(wèi)·安德森發(fā)現(xiàn)的方法,他是受到日本豐田汽車及時(shí)交付( Just-in-time Delivery)的啟發(fā),。 看板的原意是招牌或看板,,豐田汽車及日本百貨業(yè)喜歡將客戶要的產(chǎn)品有哪些、正在生產(chǎn)中的產(chǎn)品有哪些,、已經(jīng)完成可以交付的產(chǎn)品有哪些,這些價(jià)值信息放在一個(gè)大看板上進(jìn)行顯示,。 其用意在于及時(shí)交付客戶要的產(chǎn)品,團(tuán)隊(duì)成員即不會(huì)做太多,也不會(huì)做太少,所有的工作可視化,也不會(huì)讓團(tuán)隊(duì)的工作超量,。 看板方法的主要原則 (1)從過(guò)程開始 變革最大的阻力是人,,變革成功的關(guān)鍵是變化越少越好,從既有的過(guò)程開始是反省、檢討,而不是變革,大家的接受度會(huì)比較高,。 (2)同意增量漸進(jìn)的改變 變革式的改變通常會(huì)導(dǎo)致失敗,,抵抗和恐懼的力量可能遠(yuǎn)比改變帶來(lái)的好處強(qiáng)很多,看板奉行的是漸進(jìn)式的改變,每隔一段時(shí)間就看到更進(jìn)一步的成效。 (3)尊重當(dāng)前角色的頭銜和職責(zé) 對(duì)于現(xiàn)有的過(guò)程,、角色,、職責(zé)及頭銜應(yīng)該給予肯定,目的是要能順利推行看板方法,讓原本的組織做很少的改變,就可以開始接受看板。 (4)鼓勵(lì)各層級(jí)的領(lǐng)導(dǎo)行為 要能夠?qū)訉迂?fù)責(zé),各階層真正了解看板方法,并鼓勵(lì)成員自動(dòng)擔(dān)任領(lǐng)導(dǎo)角色,讓全員都能自我約束,團(tuán)隊(duì)進(jìn)行自我管理,。 5,、敏捷方法價(jià)值除了以上4種最為常見的敏捷方法以外,還有動(dòng)態(tài)開發(fā)系統(tǒng),、水晶家族等敏捷方法。 敏捷方法論有很多種,每一種即可以單獨(dú)使用,也可以混合使用,甚至在同一組織,,公司內(nèi)部,根據(jù)所開發(fā)產(chǎn)品的不同的特性采用不同的方法論,。 敏捷方法論沒有說(shuō)哪一種比較好,哪一種比較不好,而是要選擇適合的方法論。 |
|
來(lái)自: timtxu > 《管理實(shí)踐與職場(chǎng)》