qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          敏捷開(kāi)發(fā)的一些體會(huì)

           現(xiàn)在在網(wǎng)上看文章,貌似不敏捷就 落伍了。公司內(nèi)部各team在show off的時(shí)候也是大談如何從瀑布走向敏捷,貌似一敏捷就藥到病除。最近在coolshell的blog上看到一篇老文“再談敏捷和 ThoughtWorks中國(guó)咨詢師”,頓感心有戚戚焉。現(xiàn)在就結(jié)合我這里的具體項(xiàng)目談?wù)勈裁礃拥捻?xiàng)目適合做敏捷以及如何做好敏捷開(kāi)發(fā)。

            PS:哥雖然有Scrum Master的證書(shū)但還是反對(duì)什么都往敏捷頭上套。

            公司之所以選擇這個(gè)項(xiàng)目進(jìn)行Scrum試點(diǎn)有如下幾個(gè)原因:

            1、上一個(gè)版本原計(jì)劃半年結(jié)果做了1年,公司近三分之一的開(kāi)發(fā)和測(cè)試資源砸了上去。

            2、需求頻繁變化,產(chǎn)品經(jīng)理和開(kāi)發(fā)測(cè)試人員相互扯皮。

            3、產(chǎn)品倉(cāng)促上線,大量功能未經(jīng)充分測(cè)試。

            4、新上任的工程總監(jiān)是敏捷開(kāi)發(fā)愛(ài)好者,正好拿此項(xiàng)目開(kāi)刀。

             現(xiàn)在Scrum正式開(kāi)始了,但是我在這里要問(wèn)一句我們開(kāi)發(fā)軟件的目的是什么?這個(gè)還要問(wèn)嗎?不就是為了發(fā)行后賺錢嗎!帶著這個(gè)問(wèn)題,我們美國(guó)的項(xiàng)目經(jīng)理 我們準(zhǔn)備什么時(shí)候發(fā)行?哥承認(rèn)被shock了,那位大哥的回答是:我們現(xiàn)在開(kāi)始敏捷了,一個(gè)sprint接一個(gè)sprint做,啥時(shí)干完啥時(shí)發(fā)行。好吧, 幸虧這個(gè)項(xiàng)目的測(cè)試不是哥直接負(fù)責(zé),你愛(ài)咋地咋地。(其實(shí)哥是對(duì)自己手下的兄弟有信心,真要做砸了我們估計(jì)還能成為僅有的亮點(diǎn)。)

            帶著 同志們的祝福,項(xiàng)目開(kāi)始了。每個(gè)sprint不管3721只要產(chǎn)品經(jīng)理腦袋一拍,一堆需求就塞進(jìn)來(lái)了。開(kāi)發(fā)看著只有一句話描述的需求面對(duì)的回復(fù)是:現(xiàn)在是 敏捷開(kāi)發(fā)了,要多溝通少文檔。溝你妹啊!一個(gè)在中國(guó),一個(gè)在美國(guó),郵件溝通一來(lái)一去一天就沒(méi)有了。電話?是你熬夜呢還是我黎明即起?3周一個(gè) sprint,光把需求搞明白就一周去掉了,然后做啊做啊,還有2天sprint就要結(jié)束了,可是突然一看任務(wù)列表,50個(gè)只完成了30個(gè),怎么辦?根據(jù) Scrum的教條,sprint是不能延期的,那么做不完的就踢到下一個(gè)sprint去好了,反正沒(méi)有發(fā)行日期,慢慢做好了。嗯,很好,這個(gè)sprint 我們順利完成了35個(gè)任務(wù)!做啊做啊,3個(gè)月過(guò)去了,產(chǎn)品經(jīng)理看看幾個(gè)大功能也有模有樣了,很好,我們宣布某某新版本順利發(fā)行!!!(先開(kāi)槍再畫(huà)圈,很好 很強(qiáng)大!)

            顯然這樣的敏捷開(kāi)發(fā)是不能讓高層滿意的,大家坐下來(lái)總結(jié)經(jīng)驗(yàn)教訓(xùn),推出了2.0版,更新如下:

            1、大老板希望更快的看到成果匯報(bào),sprint周期由三周縮短為兩周。

            2、中美各成立一個(gè)Scrum小組,本地測(cè)試支持本地開(kāi)發(fā),每個(gè)sprint的任務(wù)按比例分配。

            3、產(chǎn)品經(jīng)理必須提供更完善的設(shè)計(jì)文檔。

            4、加強(qiáng)溝通,每周雙方召開(kāi)例會(huì)。

            5、除去在美國(guó)的主產(chǎn)品負(fù)責(zé)人和Scrum master,在上海增設(shè)本地的產(chǎn)品負(fù)責(zé)人和Scrum master,部分決策可以就地做出,不必請(qǐng)示美國(guó)。

            6、開(kāi)發(fā)必須寫(xiě)單元測(cè)試

            這些改動(dòng),3456點(diǎn)都是對(duì)項(xiàng)目整體有利的。第1點(diǎn)帶來(lái)的問(wèn)題是如果開(kāi)發(fā)工作稍 有延誤,留給測(cè)試的空間就十分有限了。第2點(diǎn)則喜憂參半,好處是上海團(tuán)隊(duì)有了更大的自主權(quán),壞處是測(cè)試開(kāi)發(fā)比嚴(yán)重不足。因?yàn)樯虾5臏y(cè)試leader要兼任 Scrum master,所以測(cè)試和開(kāi)發(fā)是2.5比7,而美國(guó)的測(cè)試和開(kāi)發(fā)則是4比6。不過(guò)考慮到本地測(cè)試生產(chǎn)率高于美國(guó),而且開(kāi)發(fā)也愿意擠出時(shí)間來(lái)幫助測(cè)試執(zhí)行測(cè)試用例,在2個(gè)sprint之后,上海團(tuán)隊(duì)表現(xiàn)良好,而美國(guó)團(tuán)隊(duì)依然落后于進(jìn)度。

            雖然2.0版的Scrum比起1.0版大有進(jìn)步,但是依然存在以下幾個(gè)問(wèn)題:

            1、周期太短,開(kāi)發(fā)完成工作后留給測(cè)試的時(shí)間太少。

            2、上海的測(cè)試長(zhǎng)期超負(fù)荷工作。

            3、因?yàn)橹芷谔蹋詻](méi)有時(shí)間做測(cè)試自動(dòng)化,這樣導(dǎo)致在無(wú)法做自動(dòng)化的回歸測(cè)試,只能依賴手工測(cè)試選取幾個(gè)關(guān)鍵測(cè)試用例保證之前的功能正常工作。

            雖然還是有種種問(wèn)題,但好歹是穩(wěn)步前進(jìn)了。周期恢復(fù)到三個(gè)星期,人手不夠開(kāi)始招實(shí)習(xí)生,自動(dòng)化測(cè)試沒(méi)時(shí)間做那么就上線后集中拉一段時(shí)間補(bǔ)課。

            通過(guò)近半年的Scrum實(shí)踐,我總結(jié)了一些經(jīng)驗(yàn)和大家分享一下:

            1、一定要有一個(gè)release目標(biāo),要根據(jù)這個(gè)目標(biāo)倒過(guò)來(lái)排計(jì)劃。

            2、PO和Scrum master必須有豐富的傳統(tǒng)開(kāi)發(fā)模式經(jīng)驗(yàn),不然項(xiàng)目很容易失控。

            3、每天的例會(huì)后Scrum master要迅速跟進(jìn),重大問(wèn)題要立刻解決,什么工作生活平衡全是扯淡,執(zhí)行力必須是第一位。

            4、雖說(shuō)搞Scrum要求每個(gè)員工都積極主動(dòng),但是開(kāi)發(fā)和測(cè)試leader還是要花很多時(shí)間分配任務(wù),調(diào)整優(yōu)先級(jí)。開(kāi)發(fā)必須為測(cè)試和修復(fù)bug留出足夠時(shí)間。

            5、自動(dòng)化測(cè)試非常重要,早做晚做一定要做。

            6、員工之間的知識(shí)共享非常重要,誰(shuí)都有個(gè)頭疼腦熱,不能因?yàn)橐粋€(gè)人暫時(shí)離開(kāi)就影響項(xiàng)目進(jìn)度。

            7、單元測(cè)試幫助很大,一是避免了很多基礎(chǔ)的業(yè)務(wù)邏輯錯(cuò)誤,二是可以讓開(kāi)發(fā)更清楚業(yè)務(wù)邏輯。

          posted on 2013-05-24 10:41 順其自然EVO 閱讀(289) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2013年5月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 泸溪县| 普兰店市| 孟连| 宁海县| 枣阳市| 稷山县| 长顺县| 综艺| 曲沃县| 红桥区| 朔州市| 东台市| 调兵山市| 康定县| 瓮安县| 桐梓县| 蓝山县| 德江县| 安义县| 长乐市| 外汇| 平谷区| 渝北区| 祁阳县| 正镶白旗| 雷山县| 福州市| 施甸县| 双鸭山市| 乌苏市| 东阳市| 平远县| 杭锦旗| 新密市| 平谷区| 正定县| 井陉县| 苏尼特左旗| 禹州市| 清新县| 札达县|