《30天軟體開發 告別瀑布擁抱敏捷》一書 讀後總結
週四、發現旁邊一同事在看一本名為《30天軟體開發 告別瀑布擁抱敏捷》的書、“敏捷開發”這個詞雖然我在很早就已獲知,但是我也只是簡簡單單的認識到一個術語,並未去了解和認識什麼是敏捷開發。也剛好趁上個月的專案剛好是採用敏捷開發的模式完成的。於是就向同事借了該書幾天。在閱讀該書內容的過程中並結合自身專案的參與經歷,用對比的方式學習、認識和理解敏捷開發。
一、初試Scrum
Scrum是一個用於管理如 軟體開發 這樣的複雜工作的框架。(這裡的框架不是技術上的框架 只是針對專案管理上的一套理論)Scrum結構:3個角色 + 3個工件 + 5個事件
角色:
1、產品負責人[1人]:簡單的理解為專案經理也行。確定產品的功能和達到要求的標準,指定軟體的釋出日期和交付的內容。
2、開發團隊[3-9人]: 完成軟體開發過程中的直接參與者。
[開發團隊最佳規模:足夠小以保持敏捷性、足夠大以完成重要的工作。少於3人的開發團隊,成員間缺乏足夠的互動,因而生產率不會很大。
大於9人的團隊需要過多的協調溝通工作,產生太多複雜性]
3、Scrum Master[1人]: 流程管理員,負責確保所有人都能正確地理解並實施Scrum。服務型領導、服務於產品負責人、服務於開發團隊。
工件:
1、增量:
2、產品待辦列表
3、Sprint待辦列表
事件:
1、Sprint
2、Sprint計劃會議
3、每日站會
4、Sprint評審會議
5、Sprint回顧會議
二、Scrum實施流程
首先我們需要明白一個術語:什麼是Sprint?
Sprint:一次迭代開發的時間週期
Scrum的核心,其週期小於或者等於一個月,其產出是“完成的”、“可用的”、潛在可釋出的產品增量,Sprint的長度在整個開發過程中保持一致。
新的Sprint必須在上一個Sprint完成之後立即開始。
一個Sprint迭代開發週期流程如下:
1、Sprint計劃會議
目的是為這個Sprint的工作做計劃。
Sprint計劃會議要解決以下兩個問題:
1、接下來的Sprint交付的增量中要包含什麼內容?
2、要如何完成交付增量所需的工作?
2、每日Scrum站會
每日站會以15分鐘為限、開發團隊成員在這時分享各自的工作情況、完成進度、併為接下來的一天制定計劃。
會議上,每個開發成員需要說明以下幾點:
1、昨日我為開發團隊達成Sprint目標做了什麼?
2、今天我準備如何幫助團隊達成Sprint目標
3、有什麼事情阻礙了我幫助團隊達成Sprint目標
目標:增強團隊交流溝通、確定開發過程中需要移除的障礙、強調和提倡快速決策,提高每個成員對專案的認知程度,同時也是監視和調整的關鍵會議.
3、Sprint評審會議(非正式會議)
會議內容通常含以下內容:
1、產品負責人說明哪些工作“完成”了,哪些工作沒有“完成”。
2、開發團隊討論哪些工作進展順利、遇到了什麼問題、問題是如何解決的等。
3、參會所有人就下一步的工作進行探討,這樣 Sprint評審會議就能為接下來的Sprint計劃會議提供有價值的資訊。
4、為下個產品版本的釋出評審時間表、預算、潛在功能。
4、Sprint回顧會議
會議目的:檢視自身並建立下個Sprint改進計劃的機會。
會議內容:
1、對前一個Sprint週期中的人、關係、過程和工具進行檢視。
2、找出做的好的和潛在需要改進的主要方面、並進行排序。
3、制訂改進Scrum團隊工作方式的計劃
Sprint回顧會議提供了一個專注於檢視和調整的正式機會。
三、實際專案驅動 如何實施Scrum開發?
1) 將整個產品的backlog分解成Sprint Backlog(按優先順序排列的一個產品需求列表),這個Sprint Backlog是按照目前的人力物力條件可以完成的。由產品負責人完成。
2) 召開Sprint計劃會議,劃分任務,確定這個Sprint內需要完成的任務,標註任務的優先順序並分配給每個成員。確定需求中各功能模組的具體完成時間。如圖:
---
3) 進入sprint開發週期,在這個週期內,每天需要召開每日站會(Daily Scrum meeting)。如圖:
(圖片來源於網路)
(圖片來源於網路)
任務看版包含 未完成、正在做、已完成 的工作狀態,假設你今天把一個未完成的工作已經完成,那麼你要把小卡片從未完成區域貼到已完成區域。每個人的工作進度和完成情況都是公開、透明的。
4) 整個sprint週期結束,召開Sprint評審會議(Sprint review meeting),將成果演示給產品負責人.
5) 團隊成員最後召開Sprint回顧會議(Sprint retrospective meeting),總結問題和經驗。
6) 這樣周而復始,按照同樣的步驟進行下一次Sprint開發週期. 直至整個專案開發完成。
整個Scrum開發流程如下圖所示:
四、個人總結
①首先關於敏捷開發 並不是什麼新的技術、也不是什麼新的名詞、而只是專案開發管理上的一個概念性、經驗性的理論,是一種開發方法 也就是一種軟體開發的流程。
其實在國外很早就盛行啦、在國內大概在09年、10年才開始將這種開發模型得以應用。不要被他的“敏捷”而 敏捷。
②敏捷的關鍵是人,scrum更適合小型團隊、初創公司、外包公司。還要求團隊內成員的水平較高、技術水平平均。要求團隊開發人員態度積極、熱情、參與、成員穩定性高。適用開發週期短、緊急型的專案。
③概念歸概念、理論終究是理論、真正的掌握和理解敏捷開發的精髓 關鍵在於實際的專案驅動和環境的允許、在專案實踐中積累和學習!
更針對走專案管理方向者學習,路漫漫其修遠兮... ...
五、擴充套件閱讀
如需更多、更詳細的瞭解敏捷開發可前往 Scrum中文資料站>>
相關文章
- 淺談軟體開發模型之瀑布開發和敏捷開發模型敏捷
- 瀑布式開發和敏捷開發的區別敏捷
- 軟體開發流變史:從瀑布開發到敏捷開發再到DevOps敏捷dev
- 敏捷軟體開發:原則、模式與實踐讀書摘要敏捷模式
- 瀑布模型和敏捷開發模型敏捷
- 微軟軟體研發策略轉變之路 從瀑布式走向敏捷開發微軟敏捷
- 《敏捷軟體開發 原則、模式與實踐》的讀書筆記敏捷模式筆記
- 敏捷開發讀書筆記——隨筆敏捷筆記
- 《Web安全開發指南》讀後總結Web
- 擁抱變化,無限可能(D2 開場總結)
- 軟體開發新模式:敏捷開發模式敏捷
- 軟體框架設計的藝術----讀書總結框架
- 軟體開發-敏捷方法論敏捷
- 敏捷開發的26個總結敏捷
- 五年軟體開發的一點自我總結
- 《軟體開發本質論》讀書筆記筆記
- 敏捷開發專案管理軟體敏捷專案管理
- 預訓練模型時代:告別finetune, 擁抱adapter模型APT
- 軟體開發模型/原型法/瀑布模型/螺旋模型模型原型
- 軟體開發趨勢:敏捷開發框架,瞭解一下?敏捷框架
- 《深入核心的敏捷開發》讀書筆記(2)敏捷筆記
- 讀軟體設計的要素07讀後總結與感想兼導讀
- 在瀑布式專案中實現敏捷開發敏捷
- 擁抱ES6——OSSJavaScriptSDK開發手記JavaScript
- 力軟敏捷開發框架幫您開發什麼軟體敏捷框架
- 軟體安全開發生命週期讀書筆記筆記
- 高效MySQL讀書總結篇(一)MySql
- 敏捷軟體開發的最佳資源敏捷
- [軟體工程]敏捷開發與常規開發的需求過程差別的原因,我寫的書和評價軟體工程敏捷
- [總結]開發了一款面試答題小軟體面試
- 扔掉 Electron,擁抱基於 Rust 開發的 TauriRust
- 敏捷擁護者眼中敏捷開發的常見問題敏捷
- React開發簡書總結React
- 擁抱開源,從中受益
- 擁抱 NamedParameterJdbcTemplateJDBC
- 一些敏捷開發詞彙彙總敏捷
- 小白科普:敏捷軟體開發(skycto JEEditor)敏捷
- 軟體開發和敏捷-對症下藥敏捷