根據 Standish Group 發布的 2013 年統計數據我們可以發現,在 2012 年只有 39%的 IT 項目取得了成功。
隨著 IT 現在已然成為了公認的增長速度最快的產業之一,相關的各種需要進行完善和優化的項目也越來越多。與其他行業項目相比,軟件行業很難確定項目失敗的最終根源。不過,通過分析 IT 項目失敗報告,一些常見的罪魁禍首可見一斑。
雖然導致每個項目失敗的根本原因不盡相同,但是大多數我們可以歸結為這三方面原因:可憐的預算、缺乏溝通和透明、不能適應變化和重新定向。
延伸閱讀:透過 30 萬筆數據分析,日本人發現了軟體開發的三大成功撇步
- 可憐的預算
俗話說,錢不是萬能的,但是沒有錢是萬萬不能的。錢在項目走向成功還是失敗上面起著巨大的作用。即使是最精明的企業家和 IT 管理人員也都有因為資金的原因而導致項目失敗的時候。
初創企業,大多資金有限,特別是在他們的發展早期。雖然一些初創企業可能會有一些財政援助,但是支持其整個開發過程所需要的資金還是很有限的,因為大多數風險投資者只有當你差不多能拿出成果——接近於成品的應用程序——的時候才會投給你大筆資金。
所以大多數初創企業只能選擇怎麼省錢怎麼來。但是這可能不但會是最大的錯誤,也可能是最昂貴的。因為廉價所以很有可能會導致軟件質量很差,而一個應用程序的根本在於能執行任務和操作,處理大量的請求,並且具備進一步擴展和開發的能力。
所以,如果代碼的質量太差,很有可能前面所做的一切努力都會付之東流。即便是要將項目轉移給另一個開發團隊,用在修復代碼庫上面的時間也會大大影響預算。
另一個與預算有關的失敗原因,與其說是因為缺乏資金,還不如說是因為沒有正確地管理和使用資金。哪怕一家初創企業用於開發應用程序的資金遠遠超過所需要的資金額度,如果不能妥善管理,馬上就會有捉襟見肘的困窘。
資金管理不善背後最普遍的原因是因為付款方式,通常被稱為固定投標(Fixed Bid)。順便說一句,在一個固定價格的基礎上構建自己的應用程序,那你實際上就是自己將促成項目成功最關鍵的要素給拋棄了。
這種固定投標模式會破壞客戶和開發人員之間透明和諧的溝通,原因是雙方的目標是不一樣的——開發人員想要盡快地做出產品,而客戶想要以此收穫更大的效益。
此外,這種固定投標模式也讓人很難確切掌握這些錢到底是怎麼用掉的,用到了哪裡,因為它將項目直接看做一個整體,而沒有了一個一個步驟。
延伸閱讀:想找創投資金?資深顧問告誡:簡報超過 15 張就甭來了
- 缺乏溝通和透明
擁有一個開放的溝通渠道以便於全程規劃、開發和部署的重要性,可謂是再怎麼強調也不為過,原因是因為這是一個項目失敗最直接也是最快的方式之一。眾所周知,只有客戶和開發人員緊密合作,才能保證客戶的想法和要求可以明確地傳達給開發團隊。
缺少客戶的參與可能會導致開發出來的應用程序與客戶原本的初衷全然不同。這樣一個不能滿足客戶需求的產品,又會怎麼被認可是成功的呢?
- 不能適應變化和重構
事物總是在不斷變化的,關於這一點,我想軟件開發人員最是深有體會了。在軟件開發過程中,出現變化和重構已經成為一種常態——無論是強迫的還是有意為之的。
在構建應用程序時,問題和障礙是其不可避免的組成部分,但是何嘗不是發現新捷徑的方式。變化和重構對於軟件而言並不總是負面的。條條大道通羅馬,構建軟件也有很多方式,在我們解決問題的過程中,往往會突然靈機一動想出實現目標的新思路和新方法。
一個軟件開發團隊適應項目改變的能力主要依賴於項目管理方法。在軟件開發中最常見的兩種模式是敏捷開發和瀑布開發(較為傳統)。敏捷開發方法在結構上較為靈活,允許並鼓勵軟件變化和重定向。而瀑布開發方法則是線性的,並不允許項目在開發時發生任何變化——這個階段完成後就進入下一個階段,並且不允許恢復到以前的任何階段。
(本文轉載自合作夥伴《碼農網》;譯者:小鋒;圖片來源:tec_estromberg