1. 程式人生 > >程序員如何承接軟件外包項目

程序員如何承接軟件外包項目

朋友 控制 不同 我們 出現 進度 青島 設計方案 源碼

現在外包的軟件項目不斷增長,但隨之而來的,承接外包的軟件公司、軟件團隊也越來越多,包括很多個人SOHO一族也加入到承接軟件的競爭行列中來了,因此現在對於軟件項目的爭奪也很激烈。有很多人不知道上哪裏去爭取項目,總是抱怨沒有項目做;也有的人雖然編程技術不錯,但是對於與客戶談項目卻是一竅不通,結果應該拿到的項目也拿不到手;也有的雖然已經接到了項目,卻發現在實施開發的時候遇到好多從來沒有遇到過的問題。作為一個多年從事外包項目接單的軟件開發人士,我想從以下幾方面談談我的經驗,希望對大家會有所幫助。
第一點, 到哪裏接項目
軟件團隊或SOHO最為關心的一點是在哪裏可以找到項目做,也就是到哪裏可以找到有外包需求的客戶。對於一般人來說,廣交朋友然後通過熟人介紹還是接項目的第一途徑,但這要求你的朋友或熟人要在企業或公司裏有比效重要的管理位置,對於像那些每天只能是埋頭寫代碼的程序員這顯然是不太現實的。所以大家不能等著項目來找你,而是要主動的出擊去找項目。
現在網上有很多軟件外包網站,在這裏你可以找到不少的軟件外包信息。比如軟件商務網(bizsofts.com)上就有大量的軟件外包信息。不過這裏每天外包的項目雖然很多,但競爭也很激烈。一般一個外包信息發出後一天內就會有無數個競爭者,所以能第一時間與客戶取得聯系是非常關鍵的。因為客戶一般都是先入為主的,一般來說,如果第一個談項目的人他覺得滿意了,就會對其他的競爭者不再予以考慮,所以你要經常上網站上看看有什麽最新的項目,並立即與項目的發包方取得直接的聯系。其他比如軟件外包網、維客網、中國軟件網,還有CSDN的外包頻道上也有很多外包的信息,大家可以自己上去看看。
第二點, 如何與客戶談需求
接項目最重要的一步是與客戶談需求。客戶對軟件的需求是項目規劃和實施的根本,所以在與客戶談需求時,一定要讓用戶將所有的想法盡可能的闡述清楚,並把所有的要求羅列出來。這時候不應該害怕“勾引”起客戶的潛在需求而增加設計開發的工作量。而應該直接明白地要客戶把項目的要求一條條地列出來。這時先把條理、歸納、分析先都扔到一邊去,用紙筆將用戶最原始、最完整的要求準確地記錄下來。假如項目在你對客戶的需求沒有完全了解清楚的情況下就匆匆上馬,那麽就會隨時發生意想不到的變更,輕則使項目延期或超出預算,重則使得原來已經做好的軟件要徹底推倒重來。
所以我們在實施項目之前應該深入了解和挖掘客戶需求,對某些不明確的需求要與發包方反復進行討論,對於項目實施過程中的需求變更要規定處理辦法,並形成項目的最終需求。在需求分析階段,接包方首先對發包方的需求認真分析,然後通過業務建模、會談、問卷、需求會議等方式收集客戶完整需求,形成文檔,然後經過客戶討論、客戶審查、文檔修訂等多次反復的過程。有一點需要註意,即使雙方談的很投緣,在討論需求時也一定要詳細周到,精確到每一條不能再劃分的軟件功能為止。
第三點, 如何合理地報價
在完全了解客戶的需求後,下一步就是要確定一個合理的報價。接包方要從跟客戶的交談中盡量地了解出客戶的準確意思,思考客戶想要的是怎樣的一個軟件,項目復雜的程度多大,客戶的要求有多高,客戶的性格如何,能夠接受的價格範圍等等,這些因素對於軟件項目的報價都是密切相關的。如果客戶要的是一個小型的軟件系統,不太苛求有多全面的功能,只要滿足某一方面的需要,並且客戶又是一個比較隨和的人,那麽項目可以報一個接近成本的價格;相反如果客戶要求的是一個面面俱到的管理系統,需要有各方面的功能,缺一不可,並且客戶又是那種對項目要求嚴格苛刻,絕不變通的人,那就要充分考慮各種不穩定的因素,報一個比較高的價格。
在很多的情況下,客戶在跟接包方談項目之前,心理都已經有一個價格底線。如果要投入的費用超過了客戶的預算範圍,客戶將不再與你談該項目,他會轉而找其它軟件團隊商談。所以跟客戶談項目的過程中要迅速地思考客戶需求的真正含義,能夠通過某種轉換和變通,把客戶對於技術的要求與自己團隊的技術力量可以接受的價格相對比,從而得出一個雙方都能接受的報價。在與客戶的談判當中,靈活變通是成功的關鍵之一。當然並不是所有的客戶都可以通過變通而滿足,遇到客戶不認同項目費用的情況一定要處之泰然,真誠地為客戶解釋,把客戶的需求細化為技術上的要求給他分析,讓他同意你的報價的合理性。即使客戶對編程技術不是很了解,但經過你的細致的分析後也會對你的報價表示認同的。
第四點, 如何組織團隊
由於客戶的需求是不同的,因而項目也是各種各樣的。有網站設計項目、也有軟件設計項目,要求使用的編程語言也是多種多樣的。即使是在一個項目中,比如說網站制作的項目中,也有著前臺的美工設計和後臺程序的編寫的分工。這些工作如果全部交給一個人去作那是絕對完成不了的。即使是一個小的團隊,也不能保證所有的人才都齊備。因此最好就是自己把項目初步設計好,然後找合作夥伴共同開發,自己總體掌握整個項目的全部進度。如果在身邊沒有好的合作夥伴的話,網上也能找到不少可以合作的夥伴。
這裏推薦各地的軟件技術QQ群,大家可以在群裏找到各方面的編程高手來分工做項目。(北京39027867 上海22267033 深圳43353614 廣州43275229珠海43275805 杭州43276029 福州43309190 南京43319646 武漢 43319996 成都42961245 重慶43320370 沈陽42408057 大連43321811南昌 43321932 長沙43323026 濟南43353895 天津43353727 西安43353817 蘭州 43966886 海口43967437 昆明41193579 石家莊17940180 合肥41418679 南寧 16537410 哈爾濱43965078 蘇州43965528 長春43965640 寧波43966041 太原 43966123 青島3630711 貴陽43966364)
第五點, 如何能收到項目款
這是整個項目中最後也是最難的一個環節。即使你的項目做得再好,如果沒有收到款,那你前面的一切努力都等於是零。要想項目能順利地收到款項,那麽從項目未開始之前的談判階段就要對這一點加以註意。首先要判斷對方是否是真心外包項目。這裏有幾點經驗拿來給大家分享一下:如果你看到項目中說 “請提供完整的解決方案和成功案例發到某某郵箱”,這應該只是想套取設計方案而已,發幾張你們公司或團隊的推介廣告和報價單給他即可。還有的客戶張口就要源碼要設計文檔設計方案的,這種人目的性太強了,如果你真給了他就再也不理你啦。還有的外包方死活不肯介紹自己,不肯告訴自己是誰、怎麽稱呼、怎麽聯系、是什麽公司、做什麽業務的,與這種連最基本的誠信都沒有的客戶就根本沒有必要談下去。其次是判斷對方是否有充足的資金和實力,項目要求是否合理(技術、周期等各方面)。這個可以在需求的談判中可以有意識地來加以探明,如果對方的項目很大卻老是強調項目非常簡單,這應該是不想付足項目款;有的發包方堅持不肯給預付款,老是要求項目完成後再交全部款項,這應該是沒有誠心付款。還有的項目要30天才能完成卻只給幾天的開發時間,這種項目外包方也是很值得懷疑的。
對於軟件團隊或個人SOHO族來說,由於不是公司,對方對於我們的信任度不會很高,所以對於大的項目一定要采用合同方式,這樣出現問題才好解決。在合同中,最好訂清楚分階段來付款,這樣有利於分散風險。比如,一般要求合同訂好後先交30%的定金,項目進行到一半後待客戶驗證後交50%的項目款,全部項目完成並交付後再交清全部款項。這樣做對於客戶來說也比較好控制項目的進度,因此對方也比較容易認同並接受。
以上談了軟件團隊或個人在承接軟件項目時應該註意的幾個關鍵問題,其實還有很多問題由於文章的篇幅所限沒有涉及。比如對於項目的選擇,有的人大的項目做不來,小的項目又不願做。結果到頭來什麽項目都承接不到。因此一開始要把自己的期望值放低一些,先從一些幾百元的小項目做起,有了一定經驗後再接一些大項目,這樣循序見進才能不斷進步。

程序員如何承接軟件外包項目