為何軟體開發的實際週期總是比預期的要長兩三倍?
聽過行百里者半九十吧。這句話在程式設計師的工作中同樣適用,到底是為何呢?Matija用一個精巧的比喻揭示了箇中道理。
其實這就好比在高峰期從郊外開車回市中心。前80%的路程很順,高速嘛,可能兩小時就走完了,但是到了城裡,就走不動了,紅綠燈,人行道,各種環線和菜鳥司機,可能兩個小時還不夠用的。
程式設計也是如此。最開始你要設計框架,給整個專案打基礎,然後開始開發,幾周或者幾月之後,你完成了整個專案80%的工作,各種關鍵模組開始起作用了。
但是好戲才剛剛開始,當你準備好好打磨這款產品時,就會發現許多奇怪的bug冒出來了。比如:“喂,你知道這個程式在讀取檔案時拔掉USB線會崩潰麼?”,“看起來是程式不想下載檔名裡有感嘆號的檔案...”
這個時候,如果管理層下令要儘快搞定這剩下的20%的話,開發團隊就得棄掉汽車,徒步越過最後幾個障礙,只求按期到達地點,把車丟那不管了。也許能夠按期完工,但是這種辦法並不明智。
這篇文章被貼到HN上之後,引發了眾網友的熱烈討論,大家紛紛表示感同身受。有一位朋友貼出了Quora上一個很精彩的問答:“為何軟體開發的實際週期總是比預期的要長兩三倍?”排位第一的回答真心機智幽默。
簡單的說是這樣的,軟體開發同徒步旅遊一樣,可能你最初是計劃在10天內走完500公里,但真走起來,你會發現路上碰到的問題層出不窮,每天走的里程數都在遞減,團隊士氣也不太穩定,延期很多時候都是無可避免的。
其實何止是軟體開發,做任何一款產品的歷程大都如此。硬體專案也是做出原型簡單,真正量產時會碰到各種問題,需要你耐下性子一個個解決,有時還得不斷返工。魔鬼在細節中潛藏,要想達到盡善盡美,就得花額外的精力去雕琢那最後10%的部分。
相關文章
- 趣文:為什麼軟體開發週期通常是預期的兩三倍?
- 為什麼軟體開發的週期總是預估的2-3倍
- 安全的軟體開發生命週期
- Ixia為開發者重塑軟體開發生命週期
- 軟體開發的生命週期過程
- 1、為什麼軟體開發週期總是預估的2~3倍? 2、什麼是分而治之? 3、瞭解WBS
- 開發方法---軟體生命週期
- 使用 Dapr 縮短軟體開發週期
- 安全軟體開發生命週期簡介
- 軟體開發週期估算及探討(轉)
- 軟體生存週期
- 何為軟體開發的難?
- 軟體安全開發生命週期讀書筆記筆記
- 為什麼SAST在軟體開發生命週期(SDLC)中很重要?AST
- 軟體工程生命週期軟體工程
- 【2】軟體生命週期
- 軟體測試---BUG的生命週期
- 軟體測試--軟體生命週期
- 軟體開發,如何快速有效縮短專案週期
- 軟體測試生命週期
- 【再談軟體生存週期】
- 軟體工程----生命週期模型軟體工程模型
- 為什麼你買到的遊戲總是與預期不符--營銷下帶來的預期過高遊戲
- iOS開發-生命週期iOS
- Linux軟體包與預期的不符Linux
- activity的生命週期(總結)
- 以終為始:如何讓你的開發符合預期
- python開發都學什麼?python學習週期是多長?Python
- 敏捷與軟體的長期危機 - logicmag敏捷
- golang常用軟體包(長期更新)Golang
- iOS開發之UIView與UIViewController的生命週期總結iOSUIViewController
- 企業安全開發建設 | 軟體開發流程是主線,管控需貫穿全生命週期
- 軟體開發就像長跑,最佳狀態要留給最重要的比賽
- Q1營收超預期,滿幫為何贏得逆風增長?營收
- 軟體開發週期估算及探討-程式碼例項講解
- Java開發學習(五)----bean的生命週期JavaBean
- 軟體開發專案管理經驗分享:專案全生命週期管理專案管理
- 時鐘週期,機器週期,指令週期