程式設計開發中最浪費時間和資源的7個錯誤

edithfang發表於2014-08-16


1.不問客戶究竟想要什麼

一般而言,在簽署合同階段都會有一份關於原始需求的標準性檔案。而我們常常會犯的最大的錯誤之一就是想當然地認為,這就是客戶的想法。我的建議是,和客戶那邊所有的核心員工開個諮詢會議,確保客戶所有的需求都能成竹在胸。

後期如果想要新增關鍵功能到幾乎已經完成的產品中將需要支付大量額外成本,而這原本是可以避免的。

我記得有一次,只是因為在初期階段沒有考慮一項功能而已,我們的團隊就不得不重新設計資料庫模型。往事不堪回首啊。

2.沒有全域性性的章程

早前我在一家小公司工作的時候,因為資源有限,我們的老闆總是催我們儘早寫程式碼。通常我們不得不一簽好合同就立馬開工(有時候甚至更早)。我們常常對客戶需求懵懵懂懂一知半解,不過即使我們知道客戶究竟想要什麼,我們的老闆也不會讓我們騰出時間為程式設計師和設計師寫需求說明。正因如此,重寫程式碼成了家常便飯。因為沒有全域性性的章程,所以專案經理給出的解決方案往往沒有包括所有的需求功能。

3.不寫文件

我還在讀大學的時候,就常常聽別人說“寫文件很重要”。事實也是如此,這一點不言而喻,我就不多說了。但是,假設你突然分配到一個時間緊迫、人員和成本有限,甚至管理層還不同意額外支付加班費用的專案,不寫文件這個錯誤絕對會給你當頭一棒:如果在專案進行過程中發生人員更迭或者後期新增人員跟進專案,這都將會耗費公司大量的成本。

從另一個人手裡接手原始碼而沒有任何文件,再也沒有比這個更讓人吐血的了。

這種情況不僅僅是發生在開發人員身上。我曾經做過一個專案,客戶的需求總是變來變去以致於最後的需求說明和原始版本大相徑庭,除了都是Web應用,我找不出其他相同之處。雖然我們的討論一絲不漏地儲存於郵件之中,並且也有了最後的產品也照著客戶要求做出來了,但是要是我想知道具體什麼時候我們做了什麼這樣的細節,就無從著手了,這變成了一個不可能的任務。所以,在文件中跟蹤專案的流程和變化這一點也很重要,它將防止混亂和計費錯誤。

4.團隊中的溝通問題

小公司經常會聘請一些兼職程式設計師來做專案。此時如果還包括遠端工作人員,那麼一個合適的溝通渠道就顯得更為重要。我曾經不止一遍地向員工強調,溝通是成功合作的關鍵。有的程式設計師落後於原定進度時,不告知其他人,從而導致團隊相關人員只能坐等他出結果,方可繼續工作,這中間浪費的資源可想可知了。

5.工作流程不起作用或者就不設定工作流程

如果你曾經參與過有很多開發人員攜手合作的專案,那麼對於制定一個良好的工作流程是成功的關鍵這一說法的重要性就不會質疑。但是在很多小專案中,管理層往往會認為設定工作流程是沒有必要的,然後團隊效率的低下會讓這些傢伙自釀苦果:耗費大量的資金和資源。此外,設定以下的規章流程也很重要:內部的溝通、職責和任務的歸屬、緊急情況響應等等。

舉個例子,有一個非常實用的任務管理工具,Trello。它不但能跟蹤任務,還可以定義處理程式(如根據說明準備應用軟體貫穿於整個編碼和測試產品過程)。如果需要使用聊天工具(Hipchat、Slack等),Trello還提供相關整合工具。如此一來,只需要一個交流渠道,就能傳遞所有資訊,這將大大減少浪費在團隊溝通中的成本。

6.不做原始碼管理

有一種大錯特錯的觀點是原始碼管理是沒有必要的。事實上,即便我們只有一兩個開發人員,如果不使用原始碼控制系統,我們很可能會深陷麻煩之中。

還是我的親身經歷,在一個專案中,我們開發的一個版本既能用於開發新功能也能修正補丁,但是我們沒有運用版本控制。所以,當某一個開發人員需要更新產品時,他得先做一個手動備份的還原點。這是一個非常重要的應用,每天的訪問量成千上萬。所以有一次在發現bug、釋出修正補丁之後,卻發現這個補丁中竟然有未完成的工作,這是一場悲劇,這導致了資料災難, 嚴重影響了公司聲譽。

沒有適宜的原始碼管理就像是在玩火——從字面上看就是:你在燒錢!

7.權力過於集中、無替代人員

談談我曾經的一份工作,那個老闆人非常和善、活力十足、喜歡親力親為。他深信,所有郵件都必須由他親自批覆。不得不坦言,就因為權力過於集中,所有流程都需要從他那邊走,使之成為了企業最薄弱的環節。而且,一旦有緊急情況發生,甚至沒有臨時替代人員。

很明顯,這位“可敬又可笑“的老闆成為了專案的瓶頸。我們總是在等待他處理訊息。的確,這對於掌控下屬,督促他們好好工作很有好處,但是作為一個領導者,也應該學會信任下屬、權力下放。

可以分而治之。掌控所有事是不可能的,特別是在像開發軟體專案這類大工程中。

上述這些錯誤亦有其共同之處:就是犯錯誤的人缺乏高瞻遠矚的戰略性眼光。如果我們不能將時間投入到正確的事情上去,雖然能立馬看到削減開支的效果,並對此沾沾自喜,但是不可忽略的是,最後我們所能創造的利潤也減少了。做任何事情都應該都大局出發。正確的處事原則有助於建立良好的習慣,而良好的習慣則能讓我們圓滿地完成任務。這才是一個公司和它的員工真正發展成長之道。否則,一家企業終將只會落得曇花一現的結局。

英文原文:The worst 7 mistakes that cost money and resources on softwaredevelopment projects

翻譯作者:碼農網 – 小峰
相關閱讀
評論(2)

相關文章