mature agile with a twist of cmmi

18
Mature Agile with a Twist of CMMI Presenter: 975202075 陳陳陳

Upload: sheehan-kneafsey

Post on 30-Dec-2015

52 views

Category:

Documents


0 download

DESCRIPTION

Mature Agile with a Twist of CMMI. Presenter: 975202075  陳俊志. 大綱. 簡介 背景 改善 Agile 的作法 結論. 簡介. 分享將 Scrum 與 CMMI 成功結合的經驗 提出如何將部分 CMMI 的 practices 帶入到 Agile 專案,建立更牢固的軟體開發法. 背景 (1/3). Systematic 公司 致力於在資訊與通訊系統領域中的 IT 解決方案 通過 CMMI level 5 評鑑 能夠以漸進及創新方式不斷地修正以改善流程 CMMI 可維持一組織能夠預測及改善專案之實行. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mature Agile with a Twist of CMMI

Mature Agile with a Twist of CMMI

Presenter: 975202075 陳俊志

Page 2: Mature Agile with a Twist of CMMI

大綱 簡介 背景 改善 Agile的作法 結論

Page 3: Mature Agile with a Twist of CMMI

簡介 分享將 Scrum 與 CMMI成功結合的經驗

提出如何將部分 CMMI 的 practices帶入到 Agile專案,建立更牢固的軟體開發法

Page 4: Mature Agile with a Twist of CMMI

背景 (1/3)

Systematic公司 致力於在資訊與通訊系統領域中的 IT解決方案

通過 CMMI level 5評鑑 能夠以漸進及創新方式不斷地修正以改善流程

CMMI可維持一組織能夠預測及改善專案之實行

Page 5: Mature Agile with a Twist of CMMI

背景 (2/3) 只有 Agile的情況

無一致的製作方式 管理流程不足

而 CMMI可讓 Agile制度化( Institutionalization)並於出現問題時提供該往哪方向解決

只有 CMMI的情況 流程實作內容不足

而 Agile提供有效符合 CMMI流程需求的實作方式

Page 6: Mature Agile with a Twist of CMMI

背景 (3/3)

Scrum角色之對應 Product Owner→Project

Manager 、 Software Architect 或 User Experience Engineer

Scrum Master→Team leader

Page 7: Mature Agile with a Twist of CMMI

改善 Agile的作法建立好的初步 product backlog(1/3)

CMMI中之 Project Planning(PP)可作為Scrum 的 Sprint zero CMMI中之 Project Planning

Work Breakdown Structure(WBS) 成本估計 資源規劃 Stakeholder參與計畫 風險管理計畫 …

PP之流程更新為須產生 product backlog

Page 8: Mature Agile with a Twist of CMMI

每一 activity會有描述說明如何實行、需要的輸入及輸出

描述是基於過去經驗而定出 經 Product Owner確認過計畫後才能進入執行

Page 9: Mature Agile with a Twist of CMMI

改善 Agile的作法建立好的初步 product backlog(3/3)

二個層級的計畫及追蹤 進入執行後有

Product Owner依據建立的專案計畫進行追蹤 Scrum team追蹤目前的 Sprint進度

相較於只有 Sprint backlog,以上之計畫活動能夠更清楚定義 Sprint的目標為何

Scrum team可專注在 Sprint上

Page 10: Mature Agile with a Twist of CMMI

改善 Agile的作法風險( Risks)及阻礙( Impediments)

計畫及風險管理活動降低了 product backlog的風險 讓 Scrum team去對 product backlog中之項目用1至3 點去估計難度

舉行風險辨識會議找出重要風險 風險管理可主動預防阻礙

CMMI之風險管理著重在預防 計畫階段

Project Plan為風險辨識之依據 執行階段

藉由二周一次的會議中報告已知及新的風險

Page 11: Mature Agile with a Twist of CMMI

改善 Agile的作法確保高品質 (1/3)

在 Scrum中是藉以下二點來確保高品質 短的回合( Iteration)及 顧客在 Sprint的結束進行檢驗

精確的品質計畫 Quality Assurance Schedule(QAS)

需要被審查的 story 需要檢查的程式碼 哪種文件是需要哪種審查 …

QAS能讓 Scrum team了解到怎樣才叫完成

Page 12: Mature Agile with a Twist of CMMI

改善 Agile的作法確保高品質 (2/3)

使用檢查清單確保 story之品質 方式為

專注在早期測試的規格及設計 讓其他人審查所完成的 story

Page 13: Mature Agile with a Twist of CMMI

Story Completion Checklist可

幫助結構化開發 Story的步驟

定義工作項目需要被審查員審查的日期

Page 14: Mature Agile with a Twist of CMMI

改善 Agile的作法測試、整合、發布及 configuration management(1/3)

自動化測試是在 Sprint中必備的 一旦有 developer 將 code commit至共同的

build server即馬上進行測試 每一專案需要有一標準的生產線讓專案能快速啟動

在持續整合中,當 check in code時須要先滿足以下條件 在開發者電腦上,測試必須先能穩定地執行 經 code分析工具( FxCop)檢查過

Page 15: Mature Agile with a Twist of CMMI

改善 Agile的作法測試、整合、發布及 configuration management(2/3)

專注在“ fix-time after failed build”,可帶來專案好的紀律 一旦有 failed build發生即停止生產線 使用 build管理工具( CruiseControl)告訴所有開發者 build失敗發生

Page 16: Mature Agile with a Twist of CMMI

改善 Agile的作法測試、整合、發布及 configuration management(3/3)

週期性地稽核 configuration management系統 在每一 Sprint中,work product evaluation(WPE)會舉行

在發布給顧客時, functional configuration audit(FCA)會舉行

主要目的在於 確保 build出來的 product是正確且完整, configuration

management活動是被正確地執行 可讓 Scrum team牢記 configuration

management的活動

Page 17: Mature Agile with a Twist of CMMI

結論 此篇論文討論到了

較詳細定義的 Sprint zero 風險管理 各種的檢查清單

作者認為所提出的方法可對大型或分散之專案帶來很大幫助

Page 18: Mature Agile with a Twist of CMMI

感謝收聽