敏捷開發(fā)指導思想

敏捷概述

背景

敏捷開發(fā)最早被提出應用于軟件開發(fā)管理流程中。隨著時代發(fā)展,軟件規(guī)模和復雜度激增,需求變化加快,軟件開發(fā)過程日益“重型化”,因此輕量級的,更能適應變化的敏捷軟件開發(fā)方法被普遍認可并迅速發(fā)展流行。

敏捷宣言(原則)

個體和交互 勝過 過程和工具
可以工作的軟件 勝過 面面俱到的文檔
客戶合作 勝過 合同談判
響應變化 勝過 遵循計劃


認識敏捷

統(tǒng)一認識:敏捷=理念(敏捷核心思想)優(yōu)秀實踐(敏捷的經(jīng)驗積累)具體應用(結(jié)合自身,靈活應用)

理念

  1. 聚焦客戶(視覺)價值(Value),消除浪費

    • 部分完成但沒最終落地的工作。
    • 開發(fā)完成但沒有被客戶應用的特性。
    • 人員流動導致經(jīng)驗不能累計,重復學習。
    • 移交導致信息丟失。
    • 任務切換(研究表明多任務工作會導致效率下降20%-40%)。
    • 因任務或資源互相依賴而導致工作停滯。
    • 缺陷,解決缺陷本身就是浪費,而且缺陷越遺留到后面浪費越大。
  2. 激發(fā)團隊(Team)潛能,加強協(xié)作

    • 激發(fā)團隊
      • 通過目標牽引團隊自主工作
      • 當團隊自管理時效率最高
      • 當團隊成員不被打擾時,工作效率最高
      • 當團隊解決自我問題時,提升最快
      • 團隊成員共同參與計劃制定、任務安排,關(guān)注團隊目標、共擔責任
      • 人們對自己做出的承諾比別人要求的更認真
      • 人們會盡力做到最好
      • 在強大的壓力下努力工作,會自然降低對質(zhì)量的要求
    • 溝通協(xié)作
      • 廣泛的面對面的交流是團隊工作高效的方式
      • 白板溝通 優(yōu)于 電話溝通 優(yōu)于 郵件溝通 優(yōu)于 文檔、錄制的音視頻
  3. 不斷調(diào)整以適應(Adapting)變化

    • 適應變化
      • 認清“客戶是逐步發(fā)現(xiàn)真正的需求”。
      • 小批量快速交付是關(guān)鍵。
      • 通過迭代計劃不斷調(diào)整以適應需求變化
    • 應持續(xù)保持良好的架構(gòu)
      • 良好的架構(gòu)是適應變化的基石
        1. 軟件開發(fā)特點是內(nèi)容龐大、內(nèi)容持續(xù)增長、持續(xù)周期長,因此需要良好的架構(gòu)來保證長期的演進
        2. 優(yōu)秀的架構(gòu)通過可擴展性來很好的適應需求的變化,對敏捷起到支持作用,相反拙劣的架構(gòu)會阻礙敏捷
        3. 良好架構(gòu)有助于定制合適的增量開發(fā)/集成計劃,使分層分級的可持續(xù)集成更加容易
      • 架構(gòu)需要盡早驗證和持續(xù)維護
        1. 通過迭代來實現(xiàn)和驗證架構(gòu),有利于架構(gòu)的盡早穩(wěn)定
        2. 特殊效果表現(xiàn)需識別影響架構(gòu)的需求,優(yōu)先實現(xiàn),規(guī)避架構(gòu)風險
        3. 通過重構(gòu)及時維護和優(yōu)化架構(gòu),使架構(gòu)保持生命力
      • 利用多層次的反饋不斷調(diào)整以逼近目標

實踐

  1. 因地制宜選擇合適的敏捷實踐

  2. 敏捷團隊(SCRUM)

    • 產(chǎn)品負責人ProductOwner(PO)-產(chǎn)品經(jīng)理/游戲策劃/導演

      • 負責產(chǎn)品,代表相關(guān)的利益

      • 提供愿景

      • 代表利益相關(guān)人(如觀眾、Marketing、管理者等),對產(chǎn)品投資回報負責

      • 確定產(chǎn)品發(fā)布計劃

      • 定義產(chǎn)品并確定優(yōu)先級

      • 驗收迭代結(jié)果.并根據(jù)驗收結(jié)果和需求變化刷新需求清單和優(yōu)先級

    • SCRUM主管Scrum Master(SM):

      • 確保Scurm正確使用和收益最大化,但是不做決定(不命令和控制Team)

      • 輔導團隊正確應用敏捷實踐

      • 引導團隊建立并遵守規(guī)則

      • 保護團隊不受打擾

      • 推動解決團隊遇到的障礙

      • 激勵團隊

    • 開發(fā)團隊(Team):

      • 負責自我管理開發(fā)產(chǎn)品的人組成的跨職能團隊

      • 負責估計工作量并根據(jù)自身能力找出最佳方案完成任務且保證交付質(zhì)重

      • 向OP和利益相關(guān)人演示工作成果

      • 團隊自我管理、持續(xù)改進

  3. 工作件

    • 產(chǎn)品Backlog(需求清單)
      • 什么是產(chǎn)品Backlog
        • 經(jīng)過優(yōu)先級排序的動態(tài)刷新的產(chǎn)品需求清單,用來制定發(fā)布計劃和迭代計劃。
      • 產(chǎn)品Blocklog的好處
        • 通過需求的動態(tài)管理應對變化,避免浪費;
        • 易于優(yōu)先交付對用戶價值高的需求。
      • 產(chǎn)品Blocklog關(guān)鍵要點
        • 清楚表述列表中每個需求任務對用戶帶來的價值,做為優(yōu)先級排序的重要參考;
        • 動態(tài)的需求管理而非"凍結(jié)"方式,PO持續(xù)地管理和及時刷新需求清單,在每輪迭代前,都要重新篩選出高優(yōu)先級需求進入本輪迭代;
        • 迭代的需求分析過程,而非一次性分析清楚所有需求(只對近期迭代要做的需求進行詳細分析,其它需求停留在粗粒度)
        • [圖片上傳失敗...(image-e6b495-1543726686826)]
    • 迭代Backlog
      • 什么是迭代
        • 迭代Backlog是團隊在一輪迭代中的"任務"(Task)清單,是團隊的詳細迭代開發(fā)計劃;
        • 當團隊接收從產(chǎn)品Blocklog挑選出要在本輪迭代實現(xiàn)的需求時,召開團隊迭代計劃會議,將需求轉(zhuǎn)化為具體的"任務";
        • 每項任務信息包括當前剩余工作量和賁任人。
      • 好處
        • 將需求分解成更細小的任務,利于對迭代內(nèi)進度進行精確控制;
        • 剩余工作量可用來實時跟蹤團隊當前進展。
      • 關(guān)鍵要點
        • '任務"由團隊成員自己分解和定義,而不是上級指派,支撐需求完成的所有工作都可以列為任務;
        • 任務要落實到具體的賁任人;
        • 任務粒度要小,工作量大于兩天的任務要進一步分解;
        • 用小時做為任務剩余工作量的估計單位,并每日重估計和刷新。
    • 完成標準
      • 什么的完成標準
        • 基于"隨時可向用戶發(fā)布"的目標制定衡量團隊工作是否已完成的標準,由團隊和PO形成共識;
      • 好處
        • 共同協(xié)商的完成標準是團隊的自我承諾,團隊會更認真;
        • 用于準確評估團隊工作進展;
        • 清晰和明確的完成標準保證了每次迭代是高質(zhì)量的。
      • 關(guān)鍵要點
        • 團隊自協(xié)商:團隊根掮項目實際情況來定義完成標準,并嚴格遵守;
        • 有層次:一般分為三個層次:Story級別,迭代級和發(fā)布級,每個級別都有各自的完成標準。
  4. 管理實踐

    • Sprint計劃會議
      • 什么是計劃會議
        • 每輪迭代啟動前,團隊共同討論本輪迭代詳細開發(fā)計劃的過程,輸入是產(chǎn)品Backlog,輸出是團隊迭代Backlog
        • 多團隊迭代計劃會議要分層召開
          1. 版本迭代計劃會議:將產(chǎn)品Backlog (需求)分配給團隊;
          2. 團隊迭代計劃會議:將選取的產(chǎn)品Backlog需求轉(zhuǎn)換成迭代Backlog〔任務),分配給團隊成員;
        • 迭代計劃會議內(nèi)容:
          1. 澄清需求、對"完成標準"達成一致
          2. 工作量估計、根據(jù)團隊能力確定本輪迭代交付內(nèi)容;
          3. 細化、分配迭代任務和初始工作計劃。
          4. [圖片上傳失敗...(image-445853-1543726686826)]
      • 好處
        • 通過充分討論,使團隊成員對任務和完成標準理解一致;
        • 團隊共同參與,促進團隊成員更認真對待自己的承偌。
      • 要點
        • 充分參與:SM確保PO和Team充分參與討論,達成理解一致;
        • 相互承諾:Team承諾完成迭代Backlog中的需求并這到"完成標準”,PO承諾在短迭代周期不增加需求〔2-4周);
        • 確定內(nèi)部任務:Team和PO辦商把一些內(nèi)部任務放入迭代中(例如重構(gòu)、持續(xù)集成環(huán)境搭建4等),由PO考慮并與其他外部需求一起排序。
    • 每日站會
      • 什么是站會
        • 每日工作前,團隊成員的例行溝通機制,由SM組織,Team成員全體站立參加
        • 聚焦在下面的三個主題:
          1. 我昨天為本項目做了什么?
          2. 我計劃今天為本項目做什么?
          3. 我需要什么幫助以更高效的工作?
      • 好處
        • 增加團隊凝聚力,產(chǎn)生積極的工作氛圍
        • 及時黍露風險和問題;
        • 促進團隊內(nèi)成員的溝通和協(xié)調(diào)。
      • 要點
        • 準時開始:按計劃會議制定的時間地點開會,形成團隊成員的自然習慣;
        • 高效會議:會議限時15分鐘,每個人都保持站立,依次發(fā)言,不討論與會議三個主題無關(guān)的事情〔如技術(shù)解決方案等);
        • 問題跟蹤:SM應該記錄下所有的問題并跟蹤解決;
    • 迭代驗收(評審會議)
      • 由SM組織,PO和用戶代表(外部或內(nèi)部利益相關(guān)人)負責驗收、Team負責演示
    • 回顧會議
      • 什么是回顧會議
        • 在每輪迭代結(jié)束后舉行的會議,目的是分享好的經(jīng)驗和發(fā)現(xiàn)改逬點,促進團隊不斷進步;
        • 圍繞如下三個問題:
          1. 本次迭代有哪些做得好
          2. 本次迭代我們在哪些方面還能做得更好
          3. 我們在下次迭代準備在哪些方面改進?
      • 好處
        • 激勵團隊成員;
        • 幫助團隊挖掘優(yōu)秀經(jīng)驗并繼承;
        • 避免團隊犯重復的錯誤;
        • 營造團隊自主改進的氛圍。
      • 要點
        • 會議氣氛:Team全員參加,氣氛寬松自由,暢所欲言,頭腦風暴發(fā)現(xiàn)問題,共同分析根因;
        • 關(guān)注重點:Team共同討論優(yōu)先級,將精力放在最需要的地方(關(guān)注幾個改進就夠了);
        • 會議結(jié)論要跟蹤閉環(huán):可以放入迭代Backlog中。
    • 可視化管理
      • 項目跟蹤
        • To Do
        • Doing
        • Done
        • Finished
      • 故事看板[圖片上傳失敗...(image-dd8ce4-1543726686826)]
  5. 技術(shù)實踐

敏捷特點:簡單、高效

  • 所有人對項目的成功負責
  • 所有人由需求驅(qū)動工作,需求一旦確定,就不應該修改了
  • 所有人都需要跨領(lǐng)域的工作
  • 持續(xù)交付、迭代前進
  • 小步前進、持續(xù)改進

首次實施敏捷的步驟

  1. 思想動員
  2. 差距分析
  3. 環(huán)境和工具準備
  4. 敏捷實踐技能準備,技術(shù)能力準備
  5. 確定開發(fā)模型和擬應用實踐
  6. 敏捷實施
  7. 回顧評估與調(diào)整改進
  8. 激勵表彰
  9. 項目結(jié)束總結(jié)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,192評論 25 708
  • 用兩張圖告訴你,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,048評論 2 59
  • 1、在項目的Sprint回顧會后,團隊成員指出那是抱怨會,不是非常有效。Scrum主管應該怎么做?A 建議團隊尊重...
    隔壁老李頭閱讀 12,466評論 1 16
  • 投資分為兩種,實體投資,金融投資,實體投資只要市場有需求,競爭對手
    馬文宇宙閱讀 97評論 0 0
  • 當太陽落回西山,收起最后一道光芒,潔白的天空中仿佛被突然涂抹了重重的濃墨,夜的黑便在微涼的夏風中蔓延開來。 大地一...
    fxp暗香浮動閱讀 442評論 0 4

友情鏈接更多精彩內(nèi)容