posts - 122,  comments - 25,  trackbacks - 0
          1、什么是iteration和release?
          iteration和release是兩個(gè)不同的概念,但在敏捷實(shí)踐活動(dòng)中,我們往往認(rèn)識的比較模糊,一個(gè)Iteration就是一次release,其實(shí)不然。那么,具體有什么區(qū)別和聯(lián)系呢?
          Iteration(迭代):在固定的周期內(nèi),經(jīng)過需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測試等活動(dòng),完成計(jì)劃的的業(yè)務(wù)需求,迭代結(jié)束提供一個(gè)可工作的產(chǎn)品。計(jì)劃的業(yè)務(wù)需求,可能是一個(gè)完整的User Story,也可能是一個(gè)Story中的若干task。
          Release(發(fā)布):經(jīng)過一個(gè)或若干個(gè)iteration后,完成計(jì)劃中的所有User Story,經(jīng)過測試后才release,最終真正交付給客戶使用。
          在我們的實(shí)踐活動(dòng)中,一個(gè)User Story所需的工作量超過我們的有效資源,無法安排在一個(gè)iteration內(nèi)。我們就會想當(dāng)然的會去延長迭代周期,增加有效資源以適應(yīng)所需工作量。殊不知,這更象是形式上的迭代開發(fā),無異于瀑布式項(xiàng)目開發(fā)過程。

          2、建立固定的迭代周期,保持穩(wěn)定的開發(fā)節(jié)奏
          Scurm方法也非常強(qiáng)調(diào)穩(wěn)定的迭代節(jié)奏,一個(gè)穩(wěn)定的迭代節(jié)奏就如同項(xiàng)目的的心跳。Simon Baker描述說:"就像心臟有規(guī)律地跳動(dòng)來保持身體運(yùn)行,固定的迭代長度提供了一個(gè)恒量,有助于建立開發(fā)和交付的節(jié)奏。根據(jù)我的經(jīng)驗(yàn),節(jié)奏是幫助取得不變的步幅的重要因素"(2004)。對于敏捷開發(fā)的團(tuán)隊(duì)而言,穩(wěn)定的迭代節(jié)奏可以讓產(chǎn)品保持更穩(wěn)定的交付。

          3、如何保持穩(wěn)定的開發(fā)節(jié)奏?
          當(dāng)一個(gè)迭代期內(nèi)可提供的有效資源無法實(shí)現(xiàn)一個(gè)User Story時(shí),我們?nèi)绾伟磁拍兀?在 談迭代周期控制的困惑 中已談到,這里不在細(xì)述。

          4、如何選擇適合自己團(tuán)隊(duì)的迭代周期?
          一般需要考慮以下因素:
          1)、整個(gè)項(xiàng)目周期長度(完成計(jì)劃的商業(yè)需求所需時(shí)間)
          較短的迭代周期將會有以下一些好處:更頻繁的向客戶展示/交付可用的軟件;更頻繁的度量開發(fā)進(jìn)度;更頻繁的取得反饋并改進(jìn);一般大的項(xiàng)目最好有多次(3次或以上)獲取反饋、修正的機(jī)會,根據(jù)項(xiàng)目周期調(diào)整迭代周期長度。
          2)、不確定性的多少
          不確定性有多種形式,客戶到底想要的是什么?小組的工作效率,時(shí)間?技術(shù)門檻等都不存在不確定性,不確定性越多,迭代就應(yīng)該越短。
          3)、獲得反饋的難易程度
          指小組獲取反饋數(shù)量、頻度和及時(shí)性,視所處的環(huán)境不同,選擇合適的迭代長度;
          4)、優(yōu)先級要以多久保持不變
          開發(fā)小組承諾在一次迭代中完成一組特定的功能,重要的是不要改變他們的目標(biāo)方向,
          優(yōu)先級不會被改變的時(shí)間長度是選擇迭代長度時(shí)需要考慮的因素。
          5)、迭代的系統(tǒng)開銷
          每次迭代的成本(時(shí)間),如迭代中進(jìn)行的完整回歸測試。最佳迭代周期的目標(biāo)之一就是減少或近似消除每次迭代的系統(tǒng)開銷。如每次回歸時(shí)間成本很高,那決定周期長度時(shí)更傾向于長一些。
          6)、團(tuán)隊(duì)成員的緊迫感
          Niels Malotaux指出:"只要項(xiàng)目的結(jié)束日期還在遙遠(yuǎn)的將來,我們就不會感到任何壓力,并從容不迫的工作。當(dāng)結(jié)束日期逼近時(shí),我們才會開始更努力的工作"。意思指項(xiàng)目開始大家比較放松,而越臨近結(jié)束,工作越忙壓力越大。因此,選擇一個(gè)合適的迭代周期長度,讓團(tuán)隊(duì)成員在整個(gè)迭代過程中感受到的壓力更平均,不是給團(tuán)隊(duì)更多的壓力,而是壓力總量平均分布在迭代過程中。

          每個(gè)團(tuán)隊(duì)根據(jù)所在環(huán)境和條件確定一個(gè)合適的迭代長度,一般建議2~4周。在我們的實(shí)踐中,以2周一次迭代的頻率,保持相對穩(wěn)定的開發(fā)和交付的節(jié)奏。

          5、參考資料:
          《敏捷估計(jì)與規(guī)劃》 Mike Cohn
          posted on 2011-01-31 14:26 josson 閱讀(3421) 評論(0)  編輯  收藏 所屬分類: 項(xiàng)目管理
          <2011年1月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 洮南市| 土默特左旗| 榆中县| 绥阳县| 内江市| 维西| 长治市| 闸北区| 炎陵县| 邵阳县| 云霄县| 霞浦县| 阜新市| 崇明县| 榆社县| 镇巴县| 宁化县| 陈巴尔虎旗| 麦盖提县| 资源县| 都昌县| 台东县| 南宁市| 台中县| 平阴县| 米脂县| 洛浦县| 宿州市| 高州市| 岐山县| 界首市| 菏泽市| 上林县| 元谋县| 当雄县| 紫阳县| 凯里市| 安仁县| 蒙阴县| 通榆县| 格尔木市|