日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

敏捷无敌之橄榄球与软件开发(9)

發(fā)布時(shí)間:2023/12/16 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 敏捷无敌之橄榄球与软件开发(9) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

橄欖球與軟件開發(fā) (9)

本文摘自《敏捷無敵》一書

?阿捷滿懷希望地問了很多人,可是最終沒有人能夠解決他的問題,也沒有人知道如何找到敏捷圣賢,甚至大多數(shù)人都沒聽說過論壇里有這么一個(gè)ID!幾經(jīng)周折,阿捷終于在論壇早期的精華帖中找到了一個(gè)E-mail地址,據(jù)帖子主人說,曾經(jīng)有一個(gè)叫做“敏捷圣賢”的朋友通過這個(gè)E-mail地址和他討論了很多軟件工程方面的問題,由此促使他寫下了這篇帖子。
阿捷懷著死馬當(dāng)活馬醫(yī)的心態(tài),用這個(gè)電子郵件地址給傳說中的“敏捷圣賢”發(fā)了一份電子郵件。

敏捷圣賢:


你好!別人都這么稱呼你!我也只好這么稱呼你了。???
我現(xiàn)在遇到一些很棘手的問題,我在論壇里發(fā)了很多帖子,但是沒有人能夠幫助我。有人告訴我,可能只有你才能幫助我!??
我是Agile公司的一名項(xiàng)目經(jīng)理,之前我們采用的傳統(tǒng)軟件開發(fā)模式已經(jīng)不能滿足現(xiàn)在的需要。我想采用敏捷的方式來幫助我們進(jìn)行開發(fā)。
我看過《人月神話》,我知道對于目前的軟件開發(fā),還沒有什么“銀彈”,但我還是希望從你那里獲得什么“銅蛋”,或者“糖衣炮彈”也行,只要能解決我的問題!
如果方便,可以回郵件或者加我MSN嗎?我的MSN是agilejie@msn.com。???
盼復(fù)!極其盼復(fù)。????
阿捷

時(shí)間一天天過去,白天上班的時(shí)候阿捷還要和大民阿朱他們一起為了項(xiàng)目早日Release而浴血奮戰(zhàn),晚上則依舊是一周兩次和美國總部那邊開Conference Meeting。在其他的時(shí)間里,阿捷已經(jīng)沒有時(shí)間再去練習(xí)CS的槍法,而是如饑似渴地學(xué)著敏捷的知識(shí)。阿捷有一種預(yù)感,如果世間還有一種方法可以幫助他們按時(shí)Release Agile OSS 5.0的TD-SCDMA產(chǎn)品,能夠幫助中國的銷售團(tuán)隊(duì)拿到中國移動(dòng)的TD訂單,那就是“敏捷開發(fā)”。阿捷還有一種預(yù)感,那就是敏捷圣賢一定會(huì)給他回信。阿捷每天下班回到家第一件事情就是去查自己的MSN上有沒有新加入朋友的請求,而每次的結(jié)果都讓阿捷很失望。漸漸地,阿捷的心已經(jīng)有點(diǎn)涼了,自己有時(shí)候也在找借口安慰自己:“反正項(xiàng)目Delay也不是TD一個(gè)項(xiàng)目組的事情,周小小和Rob他們兩個(gè)組的進(jìn)度更慢。
還是在周五晚上,時(shí)鐘已經(jīng)指到了凌晨2點(diǎn),小黑早就已經(jīng)回到自己的小窩里打著小呼嚕了,而阿捷還在開著這周的Conference meeting,情況都不容樂觀,不僅中國這三個(gè)組,美國那邊的開發(fā)情況也都不樂觀,項(xiàng)目Delay已經(jīng)成為板上釘釘?shù)氖虑榱恕elease Manager甚至建議將開發(fā)計(jì)劃延遲到2008年的5月份。在一陣悲觀情緒之中,阿捷結(jié)束了這周的Conference Meeting。突然間,MSN彈出一個(gè)讓阿捷怦然心動(dòng)的窗口,“Hi,阿捷,請加我。”這個(gè)人的簽名居然是“敏捷圣賢”!???
阿捷一陣激動(dòng),趕緊通過“敏捷圣賢”的請求!那邊已經(jīng)發(fā)過來了信息!?

?

敏捷圣賢:你好,阿捷?
阿捷:圣賢你好!我是阿捷。
敏捷圣賢:你是怎么知道我的?
阿捷:嗯,是猴子告訴我的,我們上學(xué)的時(shí)候住一個(gè)宿舍!
敏捷圣賢:哪個(gè)猴子?Sorry,我已經(jīng)沒印象了。我知道你說的那個(gè)中文的敏捷論壇網(wǎng)站,不過我已經(jīng)很久沒有登錄去看了,那里真正有價(jià)值的東西太少。
阿捷大致把現(xiàn)在他的項(xiàng)目背景、開發(fā)方式、項(xiàng)目管理的方法和工具,以及目前遇到的問題等一股腦講給敏捷圣賢。他本以為敏捷圣賢會(huì)很驚訝于Agile公司系統(tǒng)的龐大和繁雜,卻沒想到敏捷圣賢對他說:“你之前所說的問題,其實(shí)是當(dāng)前大型軟件公司開發(fā)的通病,我一點(diǎn)也不驚訝。既然你想用敏捷開發(fā)來改變現(xiàn)狀,那么我想知道,關(guān)于敏捷軟件開發(fā),你又了解多少呢?”
阿捷:嗯,我知道TDD,FDD,結(jié)對編程……
阿捷把這些天學(xué)來的敏捷開發(fā)詞匯全都敲了出來。
敏捷圣賢:嗯!這都是一些具體的開發(fā)模式,對于提高你們的編程效率是有幫助的。但對于項(xiàng)目的整體改善,效果不大,你需要改善項(xiàng)目整體管理方式才行!
阿捷:奧!是什么樣的管理方式??
敏捷圣賢:如果你想使用一個(gè)輕量級(jí)、能很快取得巨大成效且流程簡單容易使用的東西,那就是Scrum!
阿捷:Scrum?這是什么的縮寫?
敏捷圣賢:Scrum不是什么縮寫,就是一個(gè)單詞!你看過橄欖球吧??
阿捷:在電視里看過!橄欖球分為英式和美式,英式不穿防護(hù)服和不戴頭盔;美式都要帶,而且比較野蠻。其實(shí)橄欖球起源就在英國,美式橄欖球是后來由移民帶到美洲后演變發(fā)展而來的。我覺得,共同點(diǎn)是將球送到對方的陣區(qū)內(nèi),本質(zhì)區(qū)別是英式玩球,美式玩人。但橄欖球跟軟件開發(fā)有什么關(guān)系?
喜歡體育的阿捷從前寒假的時(shí)候都會(huì)在家里看美國超級(jí)碗的轉(zhuǎn)播。?
敏捷圣賢:有關(guān)系!你看電視比賽時(shí),當(dāng)比賽出現(xiàn)小的犯規(guī)或因?yàn)殛?duì)員受傷等原因中斷的時(shí)候,怎么處理的?
阿捷:爭球!雙方各三名前鋒隊(duì)員相互摟抱,半蹲頂架在一起。由有球權(quán)的隊(duì)投球。投球隊(duì)員投球后,雙方隊(duì)員互相頂推,中間的隊(duì)員搶球。投球隊(duì)員繞到球隊(duì)的后面將球撿起,可以傳球或帶球跑,比賽繼續(xù)進(jìn)行。
敏捷圣賢:嗯!差不多!你知道在橄欖球中這個(gè)術(shù)語叫什么嗎?
阿捷:國內(nèi)都叫司克蘭。
敏捷圣賢:嗯,英文就是Scrum!意思是密集爭球!實(shí)際上,我想說的Scrum這個(gè)敏捷項(xiàng)目管理方式,寓意就來自于“密集爭球(scrum)”,寓指整個(gè)團(tuán)隊(duì)攢足力量,為了一個(gè)共同的目標(biāo),一起向前快跑!
阿捷沒想到這軟件開發(fā)還跟橄欖球扯上了,馬上輸入:呵呵,這個(gè)比喻很貼切。
敏捷圣賢:根據(jù)我的實(shí)踐,Scrum是目前最符合敏捷開發(fā)模式的敏捷項(xiàng)目管理方式,能帶來很多好處。
阿捷馬上問道:最初是誰提出的這個(gè)思想?都有哪些公司在用?
敏捷圣賢:Scrum是在十多年前由Ken Schwaber和Jeff Sutherland博士共同提出的,現(xiàn)在此方式已被眾多大、中、小型企業(yè)使用,其中包括Yahoo!,Microsoft,Google,Lockheed Martin,Motorola,SAP,Cisco,GE Medical,CapitalOne和US Federal Reserve。許多使用Scrum的團(tuán)隊(duì)都取得了重大的改進(jìn),其中更有個(gè)別在生產(chǎn)效率和職業(yè)道德方面得到了徹底的改革。
阿捷:這么多大公司都在用,看來不錯(cuò)。我們該怎么使用它?到底如何做才算是“Scrum”?
敏捷圣賢:Scrum其實(shí)僅僅定義了一個(gè)開發(fā)框架(Framework),具體的編程實(shí)踐,完全取決于每個(gè)團(tuán)隊(duì),并且是完全基于常識(shí)進(jìn)行管理的。首先,我們來看看Scrum是如何符合我們所熟知的敏捷開發(fā)原則的。
阿捷沒有馬上回答,等著敏捷圣賢把剩下的話說完。?
敏捷圣賢:保持簡單:Scrum本身就是很簡單輕量級(jí)的流程,它能簡化我們的開發(fā)流程。
接受變化:Scrum鼓勵(lì)將工作細(xì)分成小塊。它關(guān)注的是一小段一小段時(shí)間,但是只有在這些時(shí)間段的中間,我們才可以重新調(diào)整工作的優(yōu)先級(jí)。
不斷迭代:Scrum需要在小于30天的一次次迭代中構(gòu)建應(yīng)用程序。
不斷的反饋和改善:在每一次迭代的末尾,Scrum流程要求我們回顧以前是怎么做的,并且思考我們下次可以做哪些不同的事來改善流程。
協(xié)作:Scrum強(qiáng)烈鼓勵(lì)團(tuán)隊(duì)成員的協(xié)作和溝通。如果沒有這些,Scrum就一點(diǎn)用都沒有。
減少浪費(fèi):Scrum幫助我們識(shí)別做那些只對客戶或者團(tuán)隊(duì)有價(jià)值的事情。
阿捷:嗯,這些原則真的很實(shí)用。那具體的Scrum的流程又是什么樣的呢?
敏捷圣賢:在講流程之前,我先給你講幾個(gè)關(guān)鍵的定義。
“產(chǎn)品訂單”(Product Backlog):這是你構(gòu)建一個(gè)產(chǎn)品所需做的所有事情的一個(gè)高層次的列表,并按優(yōu)先級(jí)排列,這樣可以保證你總是工作在最重要的任務(wù)上。比如對于整個(gè)Agile OSS 5.0產(chǎn)品套件,你的TD-SCDMA就是其中的一個(gè)Product Backlog,而且是比較重要的Backlog,要是我,就絕不會(huì)讓這個(gè)Backlog Block整整兩個(gè)月沒有進(jìn)展。??
“沖刺”(Sprint):一個(gè)Sprint就是一次為完成特定目標(biāo)的迭代,一般是2~4周。?
“沖刺訂單”(Sprint Backlog):是Sprint的工作任務(wù)列表。一個(gè)“沖刺”訂單來自于產(chǎn)品訂單上最高優(yōu)先級(jí)的一些任務(wù),以及產(chǎn)生的附加任務(wù),每一個(gè)任務(wù)都應(yīng)該有一個(gè)明確的“完成(Done)”的定義。比如對于你的TD項(xiàng)目組,在每一個(gè)開發(fā)的版本上都要列出優(yōu)先的開發(fā)任務(wù)。??
“產(chǎn)品負(fù)責(zé)人”(Product Owner):這個(gè)人負(fù)責(zé)維護(hù)產(chǎn)品訂單內(nèi)容和優(yōu)先級(jí)。?
阿捷:這些新名詞還真的需要時(shí)間慢慢習(xí)慣才行。那流程到底是怎樣的呢?
敏捷圣賢:它是一個(gè)非常輕量級(jí)的流程。簡單講是先建立一個(gè)產(chǎn)品“訂單”(Backlog),做一個(gè)短期“沖刺”(Sprint)計(jì)劃,執(zhí)行這個(gè)計(jì)劃,每天開會(huì)討論計(jì)劃中的問題和進(jìn)展,計(jì)劃完成后演示工作成果,再對該階段的工作做回顧、反思,接著不斷重復(fù)以上流程。
阿捷:就這樣簡單嗎?有點(diǎn)太粗略了,你能不能講得更細(xì)一些??
敏捷圣賢:我可以給你一些細(xì)的指導(dǎo),可是時(shí)間不允許!我現(xiàn)在正在San Francisco的機(jī)場,等著轉(zhuǎn)機(jī)去東京呢!馬上要登機(jī)了。你在北京?北京好像現(xiàn)在已經(jīng)很晚了吧???
阿捷:啊?我這里快凌晨3點(diǎn)了,別管我時(shí)間了。趕緊教教我在這個(gè)流程中的每一步都該做哪些事情好嗎??
敏捷圣賢:嗯,那我得簡短些!?
敏捷圣賢:當(dāng)你構(gòu)建產(chǎn)品訂單時(shí),要?jiǎng)?chuàng)建一個(gè)按優(yōu)先級(jí)排列的所有功能的列表,把最重要的功能放在列表的最前面。?
阿捷有點(diǎn)發(fā)傻:如果需要把所有的事情都放進(jìn)去,不就和敏捷的簡單原則相悖嗎??
敏捷圣賢:最初的計(jì)劃是非常非常高層次的,僅僅是我們對客戶從今天開始想要的那些功能的粗略的認(rèn)識(shí)。一旦認(rèn)識(shí)發(fā)生變化,就要及時(shí)調(diào)整。下一步做Sprint“沖刺”計(jì)劃。你要從產(chǎn)品訂單拿出一些優(yōu)先級(jí)最高的任務(wù),制訂一個(gè)2~4周的計(jì)劃,決定如何完成這些任務(wù)。然后開始執(zhí)行這個(gè)計(jì)劃。?
阿捷有點(diǎn)明白了:好的。那其他的呢??
敏捷圣賢補(bǔ)充著:每天開一次短會(huì),檢查Sprint中每個(gè)任務(wù)的進(jìn)展?fàn)顩r,對未完成的任務(wù),要求任務(wù)所有人給出新的剩余工作量的估算。?
阿捷:啊?每天都開一次碰頭會(huì),那得浪費(fèi)多少時(shí)間啊!?
敏捷圣賢:所以你作為Scrum Master要讓會(huì)議開得很短,對于你現(xiàn)在的TD項(xiàng)目組來說,5個(gè)人,我覺得只要花10分鐘就夠了。在Sprint完成之后,大家聚在一起,展示一下工作成果,這時(shí)候一定要讓產(chǎn)品負(fù)責(zé)人知道已經(jīng)完成了哪些工作。???
阿捷:好的,然后再開一次回顧會(huì)議?我們以前項(xiàng)目做完后,都會(huì)搞一次的。
敏捷圣賢:對,一個(gè)Sprint結(jié)束后,做一次反省。從團(tuán)隊(duì)的角度來審視哪里做得好,并繼續(xù)保持,找出不好的地方,并尋求改善方法。
阿捷:這個(gè)流程真的很簡單。不錯(cuò)。?
敏捷圣賢:還有,在一個(gè)Sprint做完之后,你要重新調(diào)整一次產(chǎn)品訂單,然后再做計(jì)劃,開始下一個(gè)Sprint。?
阿捷:好的。呵呵,聽起來Scrum還不錯(cuò)。我想下周一就開始,我的項(xiàng)目團(tuán)隊(duì)做一個(gè)兩周的Sprint,看看效果如何。你覺得好嗎?
敏捷圣賢:呵呵,不會(huì)吧,阿捷,這么著急?你是我遇到的第一個(gè)剛聽了Scrum,馬上就要實(shí)施的人!可是你真的準(zhǔn)備好了嗎?
阿捷很有信心:差不多吧!Scrum這玩藝兒聽你講起來挺簡單的!我在網(wǎng)上再找點(diǎn)資料。???
敏捷圣賢:這么有信心!祝你成功!我得走了,已經(jīng)開始通知旅客登機(jī)了!?
阿捷:哈哈,好的。謝謝你!祝你旅途愉快!再見!?
敏捷圣賢:再見!?
阿捷突然又想到一件事情,趕緊和敏捷圣賢說:等一下,還有一個(gè)問題。我們原來實(shí)行的是CMM/CMMI那套,后來又是六西格瑪,現(xiàn)在是ISO 9000,每周的開發(fā)都要和美國那邊做匯報(bào),現(xiàn)在大家都還在采用傳統(tǒng)的瀑布開發(fā)模式,要是就我一個(gè)組采用Scrum,能跟其他組融合嗎?會(huì)不會(huì)相互沖突?如果沖突怎么辦?而我又該如何向我的Manager解釋這些呢?

?


當(dāng)阿捷敲完這長長的一串時(shí),敏捷圣賢的頭像已經(jīng)變成灰色,他已經(jīng)下線了。阿捷有點(diǎn)發(fā)呆地看著電腦屏幕,看來這些問題只能依靠自己解決了。

總結(jié)

以上是生活随笔為你收集整理的敏捷无敌之橄榄球与软件开发(9)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。