從程序員到項目組
作者:9pts 本文選自:WPMI
在互聯網的時代,軟件項目的成功更大程度上取決于項目小組中那個體的成熟度和能力,而非個別程序員的個人魅力。所以,如何從程序員準確定位到項目組就是一個非常重要的轉折點。
微軟的Windows徹底改變了用戶使用計算機的方式,此后,軟件業便進入了快速發展的黃金時期,并因此成為推動計算機網絡應用的最重要源動力。如今,在.com公司紛紛凋零之際,軟件業更加逆流而上,以致各發達國家競相將軟件工程提升到重點產業的戰略高度。作為軟件行業的最基本細胞,程序員也成為了當今最熱門的一種職業。
但最初的程序員,就像一個個斗士,更多的包含了個人英雄主義的色彩。他們在數字和字符中掙扎,在激流中順應變化,在曲折迂回中尋找出路,面對著太多的困苦與壓力:首先要耐得住個人奮斗的寂寞;其次,還要承受得住壓力,有查不完殺不凈的BUG在等待,有日新月異的技術在更新;再其次,更要承擔得起挫折。因為或許費盡心血開發出的產品一朝便成了垃圾,更或許走過多年才發現必須回到起點重新開始。這種種的困難全都渡過去,才能成就一個優秀的程序員。但整體而言,僅僅憑借幾個、幾十個,甚至幾百個數字英雄卻很難鑄造出一個強勁的產業。
實際中,大多數人都把軟件開發人員想當然地默認為程序員。的確,程序員這個原本默默無聞地在后臺辛勤耕耘的角色隨著計算機的發展空前重要起來。微軟的比爾·蓋茨成了無數程序員的夢想,但程序員并不代表軟件開發的全部,甚至可以說編寫代碼僅僅是軟件開發中相對簡單的一小部分。眾知周知,在近乎已成流水線的軟件產業發展中,依靠簡單的密集勞動或幾個數字英雄絕對不可能從真正意義上解決企業經營和管理上的問題,所以,要開發出成熟有效的產品,就必須要有一個強有力的團隊共同協作,在一個成熟嚴密的項目體制中,需要很多角色擔任不同的分工和責任。項目的成功系數更大程度上取決于團隊整體的成熟度和能力,而非個別程序員的個人魅力。
再看看國內市場,我國雖然在網絡門戶、電子商務的模仿、借鑒和推動方面絲毫不亞于西方發達國家,但是在軟件項目管理和專業人才的培養方面卻大大滯后。所以如何將一個個自由英雄更好、更有效地團結起來,組建出高效的開發小組,已成為越來越多管理者思考的重點。
本文將對程序員的個人定位與項目團隊的組成與發展進行簡要的分析,希望與大家共同探討。
軟件項目小組的角色分工
軟件項目小組大多是為實現一個特定目標而成立的團隊,規模大小根據目標而定,從2個人到十幾人甚至幾十人、幾百人不等,但通常都在20人以下。這樣的小組集合了不同方面的專業人員,幾乎每個做過開發的人員都會遇到以下的問題:
項目無法按期完成,完成以后還要不斷修補完善,象一場噩夢遙遙無期;
項目進行當中人員流失,產品夭折;
客戶需求不斷改變,永遠對開發完成的產品不滿意;
開發成員之間矛盾不斷,互相抱怨,工程進展緩慢;
小組成員分工不均,工作分配失去平衡等等; ……
為了避免噩夢的再次發生,也許下面的建議對您會有所啟發和幫助:
在項目小組成立的時候,一定要有個項目負責人,我們稱之為組長或項目經理。一個項目的成功與否,項目經理是最關鍵的因素,古人云:一將無能,累死千軍??芍^一針見血。
項目經理根據需求制定出開發的目標,并選擇最合適的人員組成項目小組。一個比較完整的項目小組可能由以下表1所列的角色組成,當然,有些角色是在項目小組成員比較少的情況下完全可能由一個人兼任,但并不意味著這些角色可以輕易地忽略:
clearcase/" target="_blank" >cccccc" height="30">
角色性質 |
角色分工 |
項目管理人員 |
|
系統分析人員 |
|
商務分析人員 |
|
交互設計人員 |
|
數據庫工程師 |
|
程序開發人員 |
|
質量控制人員 |
|
技術支持人員 |
|
系統管理人員 |
|
輔助設計人員
|
|
角色 |
主要職責 |
工作流程 |
||||
獲得 |
處理 |
輸出 |
||||
系統分析員 |
軟件設計 |
獲得需求(來源:商務工程師、項目經理) 獲得(提?。┫到y相關的角色 獲得(提?。┫到y相關的用例 |
數據映射分析 |
輸出系統模型工件文檔(UML) |
||
界面設計師 |
用戶界面設計 |
得到項目流程描述工件文檔(來源:商務工程師、項目經理、系統分析員) |
理解項目界面控件類型及限制 |
輸出界面描述工件文檔 |
||
數據庫設計師 |
數據庫設計 |
得到項目數據對象工件文檔(來源:商務工程師、項目經理、系統分析員) |
理解數據庫設計要求 |
輸出數據庫定義工件文檔 |
||
程序員 |
代碼實現 |
獲取界面描述工件文檔HTML等)(來源:界面設計師) |
理解工件意圖 |
輸出程序源代碼 |
||
美工 |
輔助VI企劃設計 |
獲取整體風格需求。(來源:項目經理) |
美工設計 |
輸出界面模板 |
||
文檔員 |
技術白皮書 |
獲得產品計劃及功能描述。(來源:項目經理、界面工程師) |
檢測系統可操作性 |
輸出各種文檔 |
原文轉自:http://www.anti-gravitydesign.com