一 項目的生命周期
一個新的開發(fā)團隊一般會經歷的幾個階段:
- 創(chuàng)建期(forming):團隊的初步形成,主要是團隊人員互相了解
- 風暴期(storming):頭腦風暴,團隊成員之間討論如何領導、如何分配工作、怎樣工作以及怎樣算是達到目標
- 規(guī)范期(norming):團隊確定了決策流程,并開始自己的工作
- 運轉期(performing):團隊成員開始有效的工作
- 調整期(mourning):經過一段時間的運轉,根據團隊出現的一些問題進行調整
一個項目的生命周期分為:
1、識別階段
確定項目的相關干系人
2、啟動階段
在開始進行編碼之前對需求進行收集和分析,并對項目的范圍和計劃進行初步的規(guī)劃。這個階段的產物應該包含:
- 商務分析報告,包含該項目的價值評估
- 概括性的功能與非功能需求列表,詳細程度應該要達到估算工作量和做項目計劃
- 發(fā)布計劃,其中包含工作時間安排表和與項目相關的成本
- 測試策略
- 發(fā)布策略
- 架構評估報告
- 風險和問題列表
- 開發(fā)生命周期的描述
- 執(zhí)行上述內容的計劃描述
這些產物也應該被一同放在版本庫中以便項目關系人可以隨時獲取最新的版本。
3、初始階段
初始階段的主要目的是為了建立初始的項目基礎建設,這個階段一般需要一到兩周的時間。這段時間我們可以:
- 確保團隊可以得到開發(fā)所需的所有軟硬件
- 確保基本的基礎設施都準備好了
- 創(chuàng)建電子郵箱帳號
- 建立好版本控制庫
- 在角色、職責、工作時間和會議時間上達成一致
- 為第一周準備工作
- 創(chuàng)建一個簡單的測試環(huán)境和測試數據
- 開發(fā)用戶故事或需求的待辦列表
- 創(chuàng)建項目結構,創(chuàng)建最簡單的用戶故事,包括一個構建腳本和一些測試,從而驗證集成環(huán)境正常工作
4、開發(fā)與發(fā)布
推薦使用迭代增量式進行軟件的開發(fā)。迭代式開發(fā)的最基本要求:
- 軟件應該一直處于可工作狀態(tài)
- 每個迭代都能將軟件部署到一個類生產環(huán)境并向客戶展示
- 迭代長度不超過兩星期
5、運營階段
運營階段和開發(fā)階段基本相同。
分析任何項目,都應該從以下這些問題出發(fā)
- 如何跟蹤項目進度
- 如何防止、發(fā)現、跟蹤缺陷
- 怎么知道一個用戶故事做完了
- 如何管理花鏡
- 如何管理配置項
- 演示可工作功能的頻率是怎樣的
- 做回顧回憶的頻率是怎樣的
- 運行和自動化測試的頻率是怎樣的
- 如何部署軟件
- 如和構建軟件
- 對于營運團隊來說,如何確保發(fā)布計劃是可行的且可接受
- 如何確保風險問題列表是及時更新的