Posted on 2005-01-16 22:11
laogao 閱讀(828)
評論(0) 編輯 收藏 所屬分類:
Project Management
有人做了一個總結:一個J2EE項目組通常會有怎樣的人員結構,或者說,一個J2EE項目通常需要怎樣一組代表不同的工作性質及內容的角色。實際情況中,一個人可能同時承擔多個不同的角色,一個角色也可以有很多不同的人來分擔。這些角色包括:
- 項目經理
- 架構師
- 領域專家
- 美工
- 前端開發人員
- 后端開發人員
- 數據庫設計師
- 數據庫管理員
- 數據移植專員
- 系統管理員
- 測試人員
其中,項目經理負責安排和協調整個開發小組的任務和進度,向決策層和用戶代表反饋項目進展和狀態,以及負責保證項目組或者其成員所需的所有資源足夠完成項目開發并及時到位;架構師負責項目的總體技術選擇、系統設計和指定具體的技術標準和細節,通常也需要跟整個小組緊密協調;領域專家負責采集和分析用戶需求,在整個項目開發過程中了解和確保產品能夠符合最終用戶的要求;美工設計用戶界面;前端開發人員按照美工的藍圖增加具體的前端處理邏輯;后端開發人員實現具體的業務邏輯,通常包括持久層的操作;數據庫設計師負責通過領域專家提供的需求設計數據庫的表結構和表關系,如ER圖;數據庫管理員根據ER圖生成實際的數據表,并對數據庫進行維護,以及協助優化數據庫和SQL查詢語句性能等;數據移植專員負責編寫移植腳本,幫助客戶將原有系統數據導入新的系統;系統管理員負責維護開發工作中需要的所有開發、測試、產品環境,以及進行產品發布;測試人員負責測試,保證開發出來的產品滿足需求文檔并沒有bug,測試人員應該具備一定的領域知識。
拿一個具體的項目組來說:
這是一個J2EE外包項目的開發組,共有人員30名,1個項目經理、2個領域專家、22個開發人員開發人員、1個數據庫管理員、以及4個測試人員。由于設計部分是由甲方做好,項目組沒有專職的架構師和數據庫設計師。項目采用EJB+Struts的總體結構。
項目經理負責同甲方的項目經理確認任務安排和進度,以及協調項目組內部各成員的工作進展,并提供必要的行政和軟硬件支持,同時執行項目經理的其他日常工作,如配置管理等。2個領域專家參與同甲方領域專家的溝通,確保拿到的需求文檔和設計文檔充足且合理,并參與SIT,確保最終的產品符合文檔的需求。數據庫管理員負責維護并同步甲方提供的數據庫,同時協助開發人員優化SQL。測試人員負責在不同模塊完成后進行功能測試以及最后的SIT。開發人員按照不同的模塊分成5個組,每個組又進一步細分為1個后端開發人員和多個前端開發人員,后端開發人員同時是該組組長。所有組長統一向項目經理匯報。
由此可見,上面總結出的那個J2EE項目組成員角色清單還是相當有說服力??傮w上,在這個項目組中,項目經理是其協調和溝通作用的單點,項目組的主體由開發人員構成(這不奇怪,本身就是要開發產品嘛),領域專家和數據庫管理員主要還是配合開發人員的工作,而測試人員則除了一般意義上的測試和配合之外,因為相對獨立于開發,也起到一定的對項目開發流程的監督作用。
J2EE這個東東(可以理解為一組規范)本身就強調角色分工,當這些分工不同的角色都盡心盡力做好自己的工作,文檔齊備,并且各個不同的角色之間保持足夠的溝通,加上確定的流程,面向企業的Java項目就會更傾向于朝著健康可控的方向發展。