軟件項目的失敗可能歸咎于各種各樣的原因。一些項目因糟糕的需求而失敗,另一些則由于錢和時間超支了,還有少數(shù)單純是因為糟糕的管理所致。如果我們探究其根本原因,是否會發(fā)現(xiàn)所有項目失敗的罪魁禍首是糟糕的代碼呢?全都是這樣嗎?鄭州軟件開發(fā)!
Bob大叔堅信糟糕的代碼所帶來的成本之大足夠讓一個項目失敗。他提到:
我知道許多項目都敗在代碼問題上。更有甚者,許多公司因為代碼問題而失敗。
Bob覺得原因其實很簡單。若維護代碼所需的成本超出項目預算,項目就會失?。蝗舫杀境龉绢A算,公司就得關門。再看另外一個極端,Bob認為,如果代碼成本近乎為零,也就沒有項目會失敗了。
項目為什么會因為糟糕的需求、糟糕的管理、不合理的計劃和預算而失敗呢?其實它們的失敗是由于錯誤成本太龐大。為什么錯誤成本會如此龐大呢?因為代碼的成本大得驚人。如果產(chǎn)出代碼沒有花費,錯誤成本將幾近為零。
然而,不是所有人都同意這一觀點。
當這個問題被貼在twitter上,大多數(shù)人認為商業(yè)運營問題才是導致項目失敗的原因。Alex Chaffee認為,糟糕的管理和需求根本無法通過優(yōu)質(zhì)的代碼來彌補。
如果你的需求很爛、管理差勁,即使是免費的即時代碼(instant code)依然拯救不了你的業(yè)務。如果你馬上發(fā)布一個完美無瑕,但沒人想要的、毫無價值的產(chǎn)品,并且為這個蹩腳的產(chǎn)品不斷迭代,發(fā)布更多恐怖的版本,那么最終你還是會花光所有的錢和時間,甚至聲譽,你的項目以至于生意仍舊以失敗告終。
同樣地,James Iry提出,糟糕的代碼只是項目可能失敗的原因之一. 他認為:
免費的代碼當然會使公司有能力交付更多、更頻繁的迭代,但如果迭代只是基于糟糕的想法、或者聽上去不錯但不適合市場需求也賣不出去的想法、又抑或賣得出去,但在設備或維護或其他什么方面成本過高的想法,那么公司最終還是會失敗的。
Michael Dubakov認為,如果公司不能提供正確的解決方案,項目就會失敗。他提到,如果代碼整潔,那么對其進行重構(gòu),從而獲得正確的解決方案就會比較容易,但這并不意味著好的代碼就等于好的解決方案。Michael提議:
在這個世界上,你可以創(chuàng)建一個擁有最整潔代碼的完美架構(gòu)。你可以達成100%的測試覆蓋率,不用布爾參數(shù)就將關注點、層次結(jié)構(gòu)和方法完全分離。你可以在每個技術(shù)方面都做到完美,然而如果程序不能有效地解決用戶的問題,最終依然難逃失敗。
Michael Norton補充道 幾乎所有項目失敗的根本原因都會歸咎于人。他認為:
如果一個項目由于解決的是錯誤的問題而失敗了,這個項目就是由于參與的人錯誤地理解了問題而失敗的。如果一個項目由于代碼(或其它什么)質(zhì)量不好而失敗了,它就是由于參與的人相應寫的代碼太爛而失敗的。
如此說來,雖然沒人會輕視整潔代碼的重要性,但也不是每個人都認同糟糕的代碼是項目失敗罪魁禍首的論調(diào)。你的想法如何呢?
不平凡軟件,鄭州軟件開發(fā)公司,鄭州軟件開發(fā),鄭州軟件定制,鄭州微信開發(fā),鄭州進銷存定制開發(fā),鄭州OA系統(tǒng)開發(fā),鄭州軟件開發(fā)公司