您的位置:軟件測(cè)試 > 軟件項(xiàng)目管理 > 開(kāi)發(fā)管理 >
編程開(kāi)發(fā)中浪費(fèi)時(shí)間和資源的7個(gè)錯(cuò)誤
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2014/8/18 14:20:55 ] 推薦標(biāo)簽:編程 開(kāi)發(fā) 資源

  我在當(dāng)?shù)貛准夜緭?dān)任過(guò)項(xiàng)目經(jīng)理,項(xiàng)目主要關(guān)于一些用PHP制作的中小型網(wǎng)頁(yè)。在那段歷程中,我見(jiàn)識(shí)了很多公司常常會(huì)犯這樣或那樣的錯(cuò)誤,既浪費(fèi)時(shí)間又浪費(fèi)資源。下面我具體談?wù)勗谶@些錯(cuò)誤中不可饒恕的7個(gè):

   1.不問(wèn)客戶究竟想要什么

  一般而言,在簽署合同階段都會(huì)有一份關(guān)于原始需求的標(biāo)準(zhǔn)性文件。而我們常常會(huì)犯的大的錯(cuò)誤之一是想當(dāng)然地認(rèn)為,這是客戶的想法。我的建議是,和客戶那邊所有的核心員工開(kāi)個(gè)咨詢會(huì)議,確?蛻羲械男枨蠖寄艹芍裨谛亍

  后期如果想要添加關(guān)鍵功能到幾乎已經(jīng)完成的產(chǎn)品中將需要支付大量額外成本,而這原本是可以避免的。

  我記得有一次,只是因?yàn)樵诔跗陔A段沒(méi)有考慮一項(xiàng)功能而已,我們的團(tuán)隊(duì)不得不重新設(shè)計(jì)數(shù)據(jù)庫(kù)模型。往事不堪回首啊。

  2.沒(méi)有全局性的章程

  早前我在一家小公司工作的時(shí)候,因?yàn)橘Y源有限,我們的老板總是催我們盡早寫(xiě)代碼。通常我們不得不一簽好合同立馬開(kāi)工(有時(shí)候甚至更早)。我們常常對(duì)客戶需求懵懵懂懂一知半解,不過(guò)即使我們知道客戶究竟想要什么,我們的老板也不會(huì)讓我們騰出時(shí)間為程序員和設(shè)計(jì)師寫(xiě)需求說(shuō)明。正因如此,重寫(xiě)代碼成了家常便飯。因?yàn)闆](méi)有全局性的章程,所以項(xiàng)目經(jīng)理給出的解決方案往往沒(méi)有包括所有的需求功能。

  3.不寫(xiě)文檔

  我還在讀大學(xué)的時(shí)候,常常聽(tīng)別人說(shuō)“寫(xiě)文檔很重要”。事實(shí)也是如此,這一點(diǎn)不言而喻,我不多說(shuō)了。但是,假設(shè)你突然分配到一個(gè)時(shí)間緊迫、人員和成本有限,甚至管理層還不同意額外支付加班費(fèi)用的項(xiàng)目,不寫(xiě)文檔這個(gè)錯(cuò)誤會(huì)給你當(dāng)頭一棒:如果在項(xiàng)目進(jìn)行過(guò)程中發(fā)生人員更迭或者后期添加人員跟進(jìn)項(xiàng)目,這都將會(huì)耗費(fèi)公司大量的成本。

  從另一個(gè)人手里接手源代碼而沒(méi)有任何文檔,再也沒(méi)有比這個(gè)更讓人吐血的了。

  這種情況不僅僅是發(fā)生在開(kāi)發(fā)人員身上。我曾經(jīng)做過(guò)一個(gè)項(xiàng)目,客戶的需求總是變來(lái)變?nèi)ヒ灾掠诤蟮男枨笳f(shuō)明和原始版本大相徑庭,除了都是Web應(yīng)用,我找不出其他相同之處。雖然我們的討論一絲不漏地保存于郵件之中,并且也有了后的產(chǎn)品也照著客戶要求做出來(lái)了,但是要是我想知道具體什么時(shí)候我們做了什么這樣的細(xì)節(jié),無(wú)從著手了,這變成了一個(gè)不可能的任務(wù)。所以,在文檔中跟蹤項(xiàng)目的流程和變化這一點(diǎn)也很重要,它將防止混亂和計(jì)費(fèi)錯(cuò)誤。

  4.團(tuán)隊(duì)中的溝通問(wèn)題

  小公司經(jīng)常會(huì)聘請(qǐng)一些兼職程序員來(lái)做項(xiàng)目。此時(shí)如果還包括遠(yuǎn)程工作人員,那么一個(gè)合適的溝通渠道顯得更為重要。我曾經(jīng)不止一遍地向員工強(qiáng)調(diào),溝通是成功合作的關(guān)鍵。有的程序員落后于原定進(jìn)度時(shí),不告知其他人,從而導(dǎo)致團(tuán)隊(duì)相關(guān)人員只能坐等他出結(jié)果,方可繼續(xù)工作,這中間浪費(fèi)的資源可想可知了。

  5.工作流程不起作用或者不設(shè)置工作流程

  如果你曾經(jīng)參與過(guò)有很多開(kāi)發(fā)人員攜手合作的項(xiàng)目,那么對(duì)于制定一個(gè)良好的工作流程是成功的關(guān)鍵這一說(shuō)法的重要性不會(huì)質(zhì)疑。但是在很多小項(xiàng)目中,管理層往往會(huì)認(rèn)為設(shè)置工作流程是沒(méi)有必要的,然后團(tuán)隊(duì)效率的低下會(huì)讓這些家伙自釀苦果:耗費(fèi)大量的資金和資源。此外,設(shè)置以下的規(guī)章流程也很重要:內(nèi)部的溝通、職責(zé)和任務(wù)的歸屬、緊急情況響應(yīng)等等。

  舉個(gè)例子,有一個(gè)非常實(shí)用的任務(wù)管理工具,Trello。它不但能跟蹤任務(wù),還可以定義處理程序(如根據(jù)說(shuō)明準(zhǔn)備應(yīng)用軟件貫穿于整個(gè)編碼和測(cè)試產(chǎn)品過(guò)程)。如果需要使用聊天工具(Hipchat、Slack等),Trello還提供相關(guān)整合工具。如此一來(lái),只需要一個(gè)交流渠道,能傳遞所有信息,這將大大減少浪費(fèi)在團(tuán)隊(duì)溝通中的成本。

  6.不做源代碼管理

  有一種大錯(cuò)特錯(cuò)的觀點(diǎn)是源代碼管理是沒(méi)有必要的。事實(shí)上,即便我們只有一兩個(gè)開(kāi)發(fā)人員,如果不使用源代碼控制系統(tǒng),我們很可能會(huì)深陷麻煩之中。

  還是我的親身經(jīng)歷,在一個(gè)項(xiàng)目中,我們開(kāi)發(fā)的一個(gè)版本既能用于開(kāi)發(fā)新功能也能修正補(bǔ)丁,但是我們沒(méi)有運(yùn)用版本控制。所以,當(dāng)某一個(gè)開(kāi)發(fā)人員需要更新產(chǎn)品時(shí),他得先做一個(gè)手動(dòng)備份的還原點(diǎn)。這是一個(gè)非常重要的應(yīng)用,每天的訪問(wèn)量成千上萬(wàn)。所以有一次在發(fā)現(xiàn)bug、發(fā)布修正補(bǔ)丁之后,卻發(fā)現(xiàn)這個(gè)補(bǔ)丁中竟然有未完成的工作,這是一場(chǎng)悲劇,這導(dǎo)致了數(shù)據(jù)災(zāi)難, 嚴(yán)重影響了公司聲譽(yù)。

  沒(méi)有適宜的源代碼管理像是在玩火——從字面上看是:你在燒錢!

  7.權(quán)力過(guò)于集中、無(wú)替代人員

  談?wù)勎以?jīng)的一份工作,那個(gè)老板人非常和善、活力十足、喜歡親力親為。他深信,所有郵件都必須由他親自批復(fù)。不得不坦言,因?yàn)闄?quán)力過(guò)于集中,所有流程都需要從他那邊走,使之成為了企業(yè)薄弱的環(huán)節(jié)。而且,一旦有緊急情況發(fā)生,甚至沒(méi)有臨時(shí)替代人員。

  很明顯,這位“可敬又可笑“的老板成為了項(xiàng)目的瓶頸。我們總是在等待他處理消息。的確,這對(duì)于掌控下屬,督促他們好好工作很有好處,但是作為一個(gè),也應(yīng)該學(xué)會(huì)信任下屬、權(quán)力下放。

  可以分而治之。掌控所有事是不可能的,特別是在像開(kāi)發(fā)軟件項(xiàng)目這類大工程中。

  上述這些錯(cuò)誤亦有其共同之處:是犯錯(cuò)誤的人缺乏高瞻遠(yuǎn)矚的戰(zhàn)略性眼光。如果我們不能將時(shí)間投入到正確的事情上去,雖然能立馬看到削減開(kāi)支的效果,并對(duì)此沾沾自喜,但是不可忽略的是,后我們所能創(chuàng)造的利潤(rùn)也減少了。做任何事情都應(yīng)該都大局出發(fā)。正確的處事原則有助于建立良好的習(xí)慣,而良好的習(xí)慣則能讓我們圓滿地完成任務(wù)。這才是一個(gè)公司和它的員工真正發(fā)展成長(zhǎng)之道。否則,一家企業(yè)終將只會(huì)落得曇花一現(xiàn)的結(jié)局。

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd