本文轉自:http://www.cnblogs.com/JavCof/archive/2011/03/14/1983072.html
前言:公司接了一個代理商下訂單的系統,決定採用外包的方式消化掉這個項目,於是我自薦做了這個外包項目的負責人,下面就記錄一下這過程遇到的問題。
1. 外包給誰,沒有穩定的外包供求對象?
2. 外包項目的品質怎麼控制,過程怎麼監督?工期怎麼控制,項目後期的維護工作怎麼做?
3. 需求分析怎麼做?做到什麼層次?
4. 使用者介面,資料庫設計這些誰來做,系統架構誰來完成?
結合上面的問題,自己給自己提了個醒,外包項目絕對不比自己一個人單幹來的容易。更多的時候,自己是站在一個專案經理的角度去審視問題。
下面我就羅列一下,我的應對之道吧。-,-
1. 對於外包的對象,我選擇一個熟悉朋友,因為大家都是做.NET開發,平時沒事情,也一起聊聊技術方面的事情,是個不錯的人選,至少比去威客上找的陌生人要好很多。
2. a.對於外包的品質控制,我方採用了,自己設計項目的上層架構(ORM層,Common層),外包人員完成(商務邏輯層,WebUI層)的方法。這樣做看是有悖於外包的初衷,但是對於做好外包項目品質控制真的做能到心裡有數。不會出現N個項目,N個架構的現象。(-_-|||)
b.對於過程監督的問題,項目採用了SVN來進行遠程協同開發,還好大家都比較熟悉這個軟體,問題不是太大,但是對於項目過程的監督,和項目的演化,真的起到舉足輕重的作用。
c.工期控制是個最頭疼的問題(採用原型法,用最短的時間作出一個系統的原型,不斷深入和演化的方法進行系統的完善,這樣可以有效節約計劃的時間成本)
d.後期的維護,這裡可以藉助SVN留下的開發日誌。(P.S. SVN真是個好東西,特別的遠程協同開發,VSS就捉襟見肘了)
3. 對於需求分析,還是從三方面著手,一個是使用者介面UI,資料庫設計欄位,商務邏輯功能,系統功能的描述另附文檔。
4. a.使用者介面,採用外包方設計。根據需求分析文檔,設計相應的業務表單,交與我方審核。審核通過後,在進行下一步的工作。在這裡設計者,會站在使用者的角度審視項目,對於項目的認識也會得到進一步的提升。我暫時把他稱為UDD(使用者介面驅動開發),這裡是有感於TDD的魅力聯想過來的。使用者介面先行,通過反饋回來的介面,明顯發現外包方對於業務的理有解偏(要麼設計過度,要麼設計不到位),通過QQ上和朋友進行交流,商討進行業務表單的修改。b.對於資料庫的設計我方進行的,相對外包方,我方對於業務的理解更深入,在外包方進行表單設計的同時,我方也在進行資料庫欄位的設計和修改,最終完成了一個資料庫的原型,然後通過代碼產生器,產生資料實體層,提交到了SVN。(我方設計資料庫,可以達到規範資料的欄位的目)。
項目的進展:現在項目正在交付客戶驗收,期待早日通過驗收。
前言:公司接了一個代理商下訂單的系統,決定採用外包的方式消化掉這個項目,於是我自薦做了這個外包項目的負責人,下面就記錄一下這過程遇到的問題。
1. 外包給誰,沒有穩定的外包供求對象?
2. 外包項目的品質怎麼控制,過程怎麼監督?工期怎麼控制,項目後期的維護工作怎麼做?
3. 需求分析怎麼做?做到什麼層次?
4. 使用者介面,資料庫設計這些誰來做,系統架構誰來完成?
結合上面的問題,自己給自己提了個醒,外包項目絕對不比自己一個人單幹來的容易。更多的時候,自己是站在一個專案經理的角度去審視問題。
下面我就羅列一下,我的應對之道吧。-,-
1. 對於外包的對象,我選擇一個熟悉朋友,因為大家都是做.NET開發,平時沒事情,也一起聊聊技術方面的事情,是個不錯的人選,至少比去威客上找的陌生人要好很多。
2. a.對於外包的品質控制,我方採用了,自己設計項目的上層架構(ORM層,Common層),外包人員完成(商務邏輯層,WebUI層)的方法。這樣做看是有悖於外包的初衷,但是對於做好外包項目品質控制真的做能到心裡有數。不會出現N個項目,N個架構的現象。(-_-|||)
b.對於過程監督的問題,項目採用了SVN來進行遠程協同開發,還好大家都比較熟悉這個軟體,問題不是太大,但是對於項目過程的監督,和項目的演化,真的起到舉足輕重的作用。
c.工期控制是個最頭疼的問題(採用原型法,用最短的時間作出一個系統的原型,不斷深入和演化的方法進行系統的完善,這樣可以有效節約計劃的時間成本)
d.後期的維護,這裡可以藉助SVN留下的開發日誌。(P.S. SVN真是個好東西,特別的遠程協同開發,VSS就捉襟見肘了)
3. 對於需求分析,還是從三方面著手,一個是使用者介面UI,資料庫設計欄位,商務邏輯功能,系統功能的描述另附文檔。
4. a.使用者介面,採用外包方設計。根據需求分析文檔,設計相應的業務表單,交與我方審核。審核通過後,在進行下一步的工作。在這裡設計者,會站在使用者的角度審視項目,對於項目的認識也會得到進一步的提升。我暫時把他稱為UDD(使用者介面驅動開發),這裡是有感於TDD的魅力聯想過來的。使用者介面先行,通過反饋回來的介面,明顯發現外包方對於業務的理有解偏(要麼設計過度,要麼設計不到位),通過QQ上和朋友進行交流,商討進行業務表單的修改。b.對於資料庫的設計我方進行的,相對外包方,我方對於業務的理解更深入,在外包方進行表單設計的同時,我方也在進行資料庫欄位的設計和修改,最終完成了一個資料庫的原型,然後通過代碼產生器,產生資料實體層,提交到了SVN。(我方設計資料庫,可以達到規範資料的欄位的目)。
項目的進展:現在項目正在交付客戶驗收,期待早日通過驗收。