190 likes | 391 Views
The Accidental Agilists: One Team’s Journey from Waterfall to Agile. Presenter: 劉自偉. 大綱. 簡介 使用 Waterfall 模型 改用 Agile Methodology 學到的事項 未來工作 結論. 簡介. 專案背景 在美國 Ohio 州立大學中的 Arts and Science(ASC) 學院裡,每季都要輔助超過 16,000 位的大學生進行修課。 學生常用各種理由去拜訪教授,從要求看年度計劃至選課準備畢業。 教授已經受不了預約的人數。
E N D
The Accidental Agilists: One Team’s Journey from Waterfall to Agile Presenter: 劉自偉
大綱 • 簡介 • 使用Waterfall模型 • 改用Agile Methodology • 學到的事項 • 未來工作 • 結論
簡介 • 專案背景 • 在美國Ohio州立大學中的Arts and Science(ASC)學院裡,每季都要輔助超過16,000位的大學生進行修課。 • 學生常用各種理由去拜訪教授,從要求看年度計劃至選課準備畢業。 • 教授已經受不了預約的人數。 • 根據統計,在2007年,平均每位教授有超過39,000位同學的預約。
專案探索 • 在2006年,院長和教授們組成一個小組去調查別州是否有同樣的問題 • Michigan州 • Penn州 • 一個advising support system可以幫助 • 更有效的處理資料紀錄與平凡的工作 • 每位學生可以更有效率的和不同系上的教授溝通 • 預防浪費時間的小事 • 紀錄一年間學生預約的量,並回報給院長 • 將學生指派給不同的教授,而不採用FIFS的機制
簡介 • 2006年5月,院長指派兩個單位去進行開發的工作 • ASC Advising and Acdemic Service Office (AAS) • ASC Technology Service Office (TSO) • 除了上述之功能外,advising support system還需要 • 在固定的資源內完成 • 在秋季開學之前完成,最慢可以延至12月
Waterfall模型 • 由於專案時間相當緊湊,所以TSO決定採用formal governance做決策,並架構用waterfall模型做最有效率的設計。 • 2006年5月,TSO和AAS建立一個governance structure其內容如下 • 執行指導委員會 (Executive Steer Committee) • 專案管理員 (Project Manager) • 核心團隊 (Core Team) • 實作團隊 (Implementation Team) • 顧問團隊 (Advisory Team)
Waterfall模型 • 執行指導委員會 (Executive Steer Committee) • 與大眾溝通專案目的 • 解決核心團隊無法決定的議題 • 將大眾的建議告知核心團隊 • 定案project design的最後版本 • 專案管理員 (Project Manager) • 與前線使用者溝通專案目的 • 監控過程 • 帶領核心團隊
Waterfall模型 • 核心團隊 (Core Team) • 定義、開發並管理專案範疇與最後期限 • 形成諮詢團隊擷取需求 • 形成feedback團隊幫忙設計、測試與其他開發工作 • 改進並給顧問團隊的建議排優先權 • 與全體廣泛溝通 • 實作團隊 (Implementation Team) • 根據核心團隊的規格書執行專案 • 幫忙設計、測試等工作 • 顧問團隊(Advisory Team) • 扮演請教的角色,收集教授們的需求
Project Timeline • 2006年5月,核心團隊第一次開會 • 會議的結尾,他們決定了project timeline • 並充滿熱忱與意志
問題出現 • 此專案的問題開始出現在analysis phase,並且可能無法在6月完成。 • TSO努力將他拉回原本的進度 • 當專案開始脫離原本的計畫,成員必須放棄他們深信的軟體開發方法。 • 我們可以用一個悲傷模型(grieving process)來表達 • 拒絕 (Denial) • 生氣 (Anger) • 討價還價 (Bargaining) • 失望 (Depression) • 接受 (Acception)
Agile的轉變 • Denial: 真不敢相信它竟然發生了! • advisingprocess未記錄,非常複雜,只有少數人知道 • 核心團隊的成員沒有足夠的授權做決定 • 部份隊員不參與開發,只相信技術團隊會完成 • TSO的網路開發員和實作團隊人員離開學校 • TSO招新的開發員,核心團員分攤剩下的工作。
Agile的轉變 • Anger: 為什麼是我們? 這不公平! • 在一場面試了之後,TSO的首選開發者拒絕了這項offer • 仍然沒有開發者 • 在了解advising business process的某些觀點仍有些出入
Agile的轉變 • Bargaining: 只要我們努力,事情就會改善 • 直到2006年7月,TSO團隊仍然執著的相信waterfall模型是正確的專案管理方法。 • 他們始終相信,事情會變好,只要 • 核心團隊可以完成需求文件 • 開多一點的會議 • 每個人多工作幾小時
Agile的轉變 • Depression: 這個專案是個失敗品! • 隨著九月的到來,似乎沒有任何東西已經完成了,畢竟連UI都沒有。 • 最後,TSO不得不承認專案的失敗是堅持採用waterfall方法。 • Acceptance: 專案會變好的。 • TSO的新網路開發者從在8月1號開始 • 並馬上將自己加入實作團隊 • 他馬上策畫一個美麗的web interface • 團員信心大增,似乎在9月交出一東西也無不可能
Agile的轉變 • 在不到一個月的時間,他們將重點放在某個特定的功能 • 在九月初,advise staff 的部份search interface已經release出來了 • 可以在預約時取得學生的學籍資料 • 在12月,scheduling interface首次展示出來 • 可使學生註冊也可以使教授寄信給學生 • The Online Student Advising and Service Center system (OSASC)重生了!!
學到的事項 • 由waterfall轉到agile的四個主要重點 • 個人與互動強於流程和工具 • 三人一起開發的團隊有高度的合作性 • 努力開發軟體強於文件的撰寫 • 由教授幫忙在紙上畫出自己希望的操作介面 • 客戶的共同合作強於契約協議 • 每當某些介面或功能完成了,由教授直接進行測試 • 處理改變強於跟隨計畫 • 由於教授了解專案的發展,所以當他們需求改變時,這些改遍很容易就實作出來
未來工作 • 在Agile 2008,TSO承包了開發OSASC中的特殊模組 • 教授也會幫忙記錄並分享他們與55,000位以上的學生互動的情形 • TSO這次採用agile的方法 • Scrum當作專案管理架構 • XP當工程方法
結論 • 由根深蒂固的waterfall模型到agile軟體開發,讓你和你的團隊有至之死地而後生的感覺。 • 執行一個大的專案,在你的組織採用Agile方法它的受益覺對是值得的。