互聯網傳統的開發流程:需求->方案->開發->測試->交付。
這算是一種標準流程,但是不夠細緻。每一個團隊都有適合自己的一種開發流程。
總結一下我們的基於敏捷開發的工作流程,以供參考。
工作流程
總體的過程包括:接收需求,規劃,項目啓動會,階段實施,項目總體交付,項目結束會。
規劃包括:階段劃分,項目里程碑,完成標準,實施流程。
階段實施包括:階段需求分析,階段數據庫設計,階段接口設計,階段實施開發,階段測試,階段交付。
流程分爲:主流程和分支流程
需求按影響程度分爲:影響主幹邏輯的核心需求,和對主幹流程進行補充和添枝加葉的補充需求。
階段需求分析分爲4個步驟:
- 整理需求(這個步驟主要是對原始需求進行梳理,暴露出主幹流程的問題)
- 跟需求方確認核心需求,畫出一個主幹流程圖
- 整理補充需求
- 確定補充需求,畫出詳細流程圖
這樣劃分的目的是因爲主幹流程大多數時候是比較明確的,也是很容易確定出來的,而補充需求涉及到很多細節,確認出來耗時比較長;而對於技術人員來說主流程需求是耗費精力最多的,在主幹流程確定下來之後,技術人員就可以設計數據表和接口。
沒有一開始就能確定完美的需求,等所有需求都確認下來太消耗時間了,技術人員在實施過程中也能更加理解需求。
流程:
- 產品經理接收總體需求
- 項目經理需要對需求進行規劃,規劃的工作包括任務拆解、階段規劃、項目里程碑、制定工作流程及完成標準。
- 項目經理召集項目成員召開項目啓動會。明確項目願景和目標,同步項目階段,里程碑等。
- 項目背景
- 項目目標
- 項目範圍
- 里程碑計劃
- 主要風險
- 組織架構
- 責任分工
- 流程機制
- 溝通方式
- 支持工具
- 階段實施
4.1 產品經理要先對階段主幹流程進行梳理,制定主流程圖並跟項目經理確認。
4.2 階段數據表方案設計,進行方案評審。
4.3 階段接口方案設計,進行方案評審。
4.4 實施開發
4.5 產品經理確定詳細需求,制定詳細流程圖並跟項目經理確認。
4.6 技術人員開發
4.7 內部測試
4.8 交付 - 項目整體交付
- 項目結束會(歸檔,覆盤)
分工
項目經理:
核心:保目標,助決策,提效能,促協作。
具體事項:
項目啓動會,確定整體目標和重要里程碑。
干係人管理,向上向下溝通。
制定工作制度和流程,建立溝通和協作機制。
規劃項目階段,明確各階段完成時間點。
任務拆解劃分到人,遇到問題幫助解決問題。
確定各個環節的工作成果及時彙報。
監控各個環節的進度,質量,範圍,發現有偏差時及時糾正。
發現團隊的問題,針對性的解決團隊遇到的問題,盡力幫助組員提升能力。
項目經理需要定期每週向上進行一次項目彙報(推進狀態,遇到問題,解決方案,需要支持),每週向下進行一次本週的項目進度報告。
產品經理:
核心:需求,需求,需求。
具體事項:
先完成需求的主幹流程確認(大概佔總需求的70%,佔總需求確認時間的50%)
制定主幹流程圖
再確定詳細需求(剩餘的30%的細節需求,佔50%需求確認時間)
制定詳細流程圖
後端工程師:
核心:後端落地
具體事項:
先根據產品經理提供的主幹流程圖制定主幹的數據表和接口,並進行開發。
根據詳細需求進行調整。
接口設計
實施開發
前端工程師
核心:前端落地
具體事項:
實施開發
接口聯調
完成標準
- 主流程需求確認完成
- 主流程邏輯梳理完成
- 主流程圖
- 原型圖
- 主流程需求評審會
- 詳細需求確認完成
- 所有需求確認完成
- 詳細功能流程圖
- 前端UI完成
- 按原型完成UI開發
- 後端接口完成
- 後端接口開發完成
- 接口文檔完成
- 註釋完成
- 接口自測通過
- 按原型要求完成接口
- 接口清單
- 方案評審
- 前後端聯調完成
- 所有功能接口聯調完成
- 開發完成
- 前端ui開發完成
- 後端接口開發完成
- 前後端聯調完成
- 主流程跑通
- 按需求完成功能
- 自測通過達到提交內部測試標準
- 內部測試完成
- 主流程跑通
- 邊緣規則測試通過
- 迴歸測試通過