[轉]一個Java專案的標準開發流程
專案過程
1、專案啟動
- 專案組成立(公司成員、客戶成員)
- 制定專案預期目標
- 制定專案計劃週期
- 建立好專案組成員溝通機制
2、需求調研
- 建立調研計劃、協調調研時間
- 收集客戶資料,獲取客戶需求(所有的資料都需要保留一份,資料中存疑的需要及時詢問)
- 編寫需求文件(重點描述出客戶的業務流程和效能要求。採用Word、Excel、Rose等形式。)
- 需求變更記錄
- 確定開發環境和執行環境
- 擴充套件性要求
- 與舊系統的接駁要求。
- 估算出專案工作量
本階段需要一套需求管理系統來進行需求的管理。
本階段的需求文件也是使用者測試的依據。
3、系統設計/詳細設計
一個系統可以分為基礎平臺和應用模組兩部分。
- 選擇基礎平臺,無論是採用第三方平臺還是自行開發平臺,都需要深入瞭解,檢視是否符合要求。
- 應用模組設計(針對業務流程)
- 中介軟體的採用或自行開發,需要深入瞭解。
- 使用者介面的設計,如果使用者介面設計完畢並確認,即可初步寫出使用者使用手冊、管理員使用手冊。
- 變更記錄
本階段的系統設計是整合測試的依據。
4、程式開發
建立開發任務計劃表、開發計劃日程表
- 優先編寫測試用例
- 按照編碼規範編寫程式碼
- 按照文件註釋規範註釋
以上形成開發文件。
本階段需要一套版本管理系統。
本階段的測試用例也是單元測試的依據。
如果能做到,最好每日構建。
5、測試
本階段需要一套Bug管理系統,形成需求、設計、開發、測試互動。
- 編寫測試計劃和測試方案
- 功能測試:單元測試、整合測試
- 效能測試:整合測試、壓力測試
如果能做到,最好能進行自動化測試。
如果能做到,做分析統計工作。
最後形成測試報告。
6、試用、培訓、維護
本階段需要解決:
- 解決異地修改和公司修改的同步問題。
- 使用者測試中的Bug修改問題,按照級別分為
a)、程式Bug
b)、設計變更
c)、需求變更
儘量按照a b c的順序來進行修改,儘量避免b、c級的修改。
最後形成安裝手冊、維護記錄。
專案成員組成
根據以上過程,一個專案組中,需要:
1、需求工程師,其要求
善於與客戶溝通,能快速瞭解客戶的需求,對客戶所在的行業比較熟悉。
善於學習新知識。
熟悉Word、Excel、Rose等工具的使用。
熟悉開發語言和開發框架
熟悉已積累的產品的功能、效能等。
2、系統分析師/設計師,其要求
精通開發語言和開發框架,部分需要精通資料庫
精通已積累的產品的功能、效能等
深入瞭解客戶行業特點
能根據客戶的要求分析出其實質
能做出優秀的設計
熟悉Word、Excel、Rose等工具的使用
3、開發工程師,其要求
熟悉開發語言,熟悉開發要求和註釋規範,部分需要熟悉資料庫。
熟悉單元測試。
能根據設計做出良好的編碼,保證功能和效能。
部分需要有一定的設計要求,因為涉及到將來的維護。
4、測試工程師,其要求
熟悉測試工作,能按照測試計劃進行測試。
熟悉開發語言,能協助開發工程師找錯。
能獨立完成黑、白盒測試。
如果是高階測試人員,還要能夠對系統能深入進行分析並能制定出優秀的測試方案。
5、管理人員
一般由以上人員兼任,主要有
專案經理:負責整個專案
開發經理:負責系統設計、開發工作
測試經理:負責測試工作
6、其他人員
一些專案涉及到其他人員,如頁面設計人員、頁面製作人員。
部分大的專案,還有專門的維護人員。
由於目前國內很多公司並沒有嚴格這麼區分,如果專案小的話,可以一人兼任多項職位.