我與敏捷
2013年,我和幾位小伙伴一起在公司接觸了敏捷開發(fā)型宙,當時還沒有對敏捷體系的認知撬呢,只是跟隨的技術負責人一起開站會,趕進度妆兑。到今天魂拦,回首居然已有了7年。
我對于敏捷的認知的加深搁嗓,前后共有三次芯勘。
第一次,參加了優(yōu)普豐的培訓腺逛,獲得了scrum master的證書荷愕,從“野路子”發(fā)展成“持證上崗”。
第二次棍矛,在前東家接觸到thoughworks的一眾大佬安疗,認識到開發(fā)配合敏捷是要有相關工具支持的。
第三次茄靠,是在當前公司敏捷文化下的思考茂契,在當前體制下,到底如何做敏捷慨绳?
什么是敏捷?
敏捷有很多流派,大家比較熟悉的有Scrum和XP脐雪,另外還有如Crystal厌小,iScrum,太極敏捷等流派战秋。我這邊主要談Scrum框架璧亚。
Ken Schwaber和Jeff Sutherland 開發(fā)并維護Scrum指南,里面很詳細了說明了Scrum游戲規(guī)則脂信,這里只做個簡要說明癣蟋。如需查看全文,請點擊:https://mp.weixin.qq.com/s/mGAlH-sImN6-6LbGJx17TA
Scrum定義:Scrum是輕量級的狰闪、容易理解的疯搅、難以精通的;Scrum是一個框架在這個框架中人們可以解決復雜的自適應問題埋泵,同時也能高效并有創(chuàng)造性地交付盡可能高價值的產(chǎn)品幔欧。
Scrum包含5個事件:Sprint,Sprint計劃會議丽声、每日Scrum站會礁蔗、Sprint評審會議、Sprint回顧會議雁社;
Scrum包含3個角色:產(chǎn)品負責人浴井、開發(fā)團隊、Scrum Master霉撵;
Scrum包含3個資產(chǎn):產(chǎn)品待辦列表滋饲、Sprint待辦列表、產(chǎn)品增量喊巍;
Scrum包含5個價值觀:專注屠缭、勇氣、開放崭参、尊重呵曹、承諾;
對于敏捷的普遍誤區(qū)
1何暮、只有精英才能夠使用敏捷并成功迭代出好的產(chǎn)品奄喂。
這個問題其實Ken Schwaber早在千禧年初,就已經(jīng)回答海洼。
Ken Schwaber(以下為原文翻譯):
2001年正式宣布敏捷時跨新,有很多評論家說,敏捷真的很不錯坏逢,如果你有杰出的工程師團隊域帐,他們使用優(yōu)秀的工程工具赘被,運用正確的工程實踐,全面了解業(yè)務范圍和技術領域肖揣,不受任何干擾民假,并且擁有所有需要的資源,那么就可以使用Scrum龙优。
沒錯羊异,像這樣的人可以在每個迭代都構建產(chǎn)品,很棒彤断!但是野舶,Scrum只對傻子起作用,你可以找來一些癡呆的人宰衙,可能他們沒有上過學平道,不知道計算機科學,不了解軟件工程績效菩浙,相互憎恨巢掺,不知道業(yè)務范圍,使用糟糕的工程工具劲蜻,他們生產(chǎn)出的每個增量一律是廢品陆淀,這也很棒!
每個迭代的過程中先嬉,我們的開發(fā)情況轧苫,所有人都可以隨時了解情況,Scrum的要點部分就是透明疫蔓,并且我們從一開始就知道含懊。
這就是Scrum的魅力,我們不用像瀑布開發(fā)一樣衅胀,6個月過去了岔乔,大家都在祈禱沒有問題。Scrum是一個框架滚躯,就像所有的方法論一樣雏门,任何人都可以來使用。
2掸掏、自己(Scrum Master)可以指導團隊成員每一項工作和改進茁影,并對自己的意見信心滿滿。
Scrum Master是Scrum團隊中的服務型領導丧凤。Scrum Master幫助Scrum團隊外的人員了解他們?nèi)绾闻cScrum團隊交互是有益的募闲,通過改變他們與Scrum團隊的互動方式來最大化Scrum團隊所創(chuàng)造的價值。
Scrum的開發(fā)團隊應該是自我改進的愿待。Why浩螺?
整個軟件開發(fā)中靴患,開發(fā)團隊才是真正的執(zhí)行者,他們分析需求年扩、設計軟件蚁廓、編寫工程访圃、測試保障厨幻、運維上線,是最一線的工作者腿时。我們這邊大多數(shù)的Scrum Master是不具備這些專業(yè)能力的况脆。一個不具備開發(fā)團隊專業(yè)能力的人來指揮甚至命令團隊按照他的想法來落地,只會適得其反批糟。這是一個典型的外行逼死內(nèi)行的例子格了。
3、運用敏捷之后徽鼎,所有的迭代都會非常的快盛末。
這個鍋,翻譯的兄弟應該背背好否淤。相對于快悄但,敏捷更應該被人們(領導)記住的應該是靈活,通過敏捷框架石抡,我們可以應對瞬息變化的市場檐嚣,而不是我們用了一個框架,原來寫2000行代碼的程序員就能成為寫10000行代碼的軟件工程師了啰扛。另外嚎京,通過敏捷,開發(fā)效率確實可以提升隐解,但這是建立在各種工具鞍帝、流程、體系煞茫、基本功訓練上的帕涌。有時間我會單獨寫一篇關于敏捷落地開發(fā)團隊需要的支撐。
4溜嗜、我們敏捷了宵膨,可以和設計文檔、需求文檔炸宵、開發(fā)文檔說再見了辟躏。
敏捷軟件開發(fā)宣言中確實說過“工作的軟件高于詳盡的文檔”,但這不等價于不需要寫文檔土全。文檔的必要性取決于團隊的決策捎琐,如果團隊覺得當前類型的story需要流程会涎、需要時序圖,那么開發(fā)團隊就應該將他們編寫出來瑞凑。當然末秃,文檔存在的形式可以是多種多樣的,比如:詳細的word文檔籽御,process on上的時序圖练慕,黑板繪制的草圖(團隊成員拍照保留)。我們可以簡化形式技掏,但不應高舉敏捷旗號铃将,大行不作為之實。