掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
這個問題是我最常碰到的一個,也是我最難回答的一個。對這種問題最好的回答方式是用全職員工來推算天數(shù)。這非常容易,你只需要找出有多少個不重疊的功能特征,然后每個人負責一個。一旦各個功能塊被分成了不能再分的任務,你計算需要多少人天,這就是你的答案。你無論如何都不可能用比這更少的時間開發(fā)完這個項目。

創(chuàng)新互聯(lián)是網(wǎng)站建設專家,致力于互聯(lián)網(wǎng)品牌建設與網(wǎng)絡營銷,專業(yè)領域包括成都做網(wǎng)站、網(wǎng)站建設、電商網(wǎng)站制作開發(fā)、小程序開發(fā)、微信營銷、系統(tǒng)平臺開發(fā),與其他網(wǎng)站設計及系統(tǒng)開發(fā)公司不同,我們的整合解決方案結合了恒基網(wǎng)絡品牌建設經(jīng)驗和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結合,且不斷評估并優(yōu)化我們的方案,為客戶提供全方位的互聯(lián)網(wǎng)品牌整合方案!
| “一個女人生一個孩子要10個月,不論你再增加多少個女人來做這事,都不會縮短這個時間” “只有當一個任務的完成可以分配多人,并且不需要他們之間相互交流合作的情況下能完成時,人和月才能互相替換。” “往一個已經(jīng)延遲的項目里添加程序員只會使項目進一步延遲”(因為項目中現(xiàn)有的人需要培訓新來的人) -《人月神話》去
|
不幸的是,大部分人只想知道一個項目需要多少時間完成。這實際是個偽命題,因為90%軟件成本的產(chǎn)生是發(fā)生在軟件發(fā)布之后。這些費用會產(chǎn)生于修復bug、增加欠缺的功能、性能的改進、對新平臺進行支持(安卓就是一個大債主)或重寫質量差的老代碼來減少技術債務。即使是項目發(fā)布前,對于如何合適的處理每一種報錯情況,這也是無法預先估計全的。從某種程度上,你就是被別人問了這樣一個問題:“我有一個問題,我想解決它,但我無法說清問題是什么。請問解決這個問題需要多少時間?”
盡管預估很難,但程序員最終要找到一種預估的方法。雖然無法知道一個確切的答案,但我有3種方法能大致估計出一個軟件項目要花多少時間:
對于大型的、獨特的項目,程序員幾乎無法知道它需要多少時間開發(fā)。它就是像在問“需要花多少時間能找到治療癌癥的方法?”然而,大部分的管理部門都拒絕接受這種答案,于是,程序員只好玩一些花招,先弄清楚老板們希望聽到的時間,然后加入一些余地。還能有什么辦法?通常都是超近路,這都是因為要去追趕那個本不應該設置的最后期限。你需要明白,預估是困難的,需要運行計劃上的變更。除非你的程序員能將任務拆分小于一個月的子任務,千萬不要在軟件發(fā)布時間上做任何市場活動計劃。
這最后一件需要注意的事是,當你在一個現(xiàn)有的軟件(比如2.0版,3.0版….)上增加新功能時,你需要追加20%用來對現(xiàn)有代碼進行重寫的時間(程序員稱之為重構)。這是為了償還技術債務,或為未來的行動鋪路。人們以為Google是拿出20%的時間用來創(chuàng)新,但我敢打賭,其實這大部分是來償還技術債務的。
估計一件事情要花多少事情是非常難的,通常也是不可能的。雖然你曾在一些小項目上有成功的預測,但隨著項目的發(fā)展你會感覺到越來越難。一個好的方法是給程序員留足額外的時間。很多年輕的程序員通常沒有這方面的經(jīng)驗,所以,項目經(jīng)理必須把他們估計出的時間乘以4。
英文原文:How long would this project take?
譯文鏈接:http://www.vaikan.com/how-long-would-this-project-take/

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流