您的位置:軟件測(cè)試 > 軟件項(xiàng)目管理 > 進(jìn)度管理 >
項(xiàng)目進(jìn)度慢思考--提高整體開發(fā)效率
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/8/2 14:57:06 ] 推薦標(biāo)簽:

  我們都是軟件行業(yè)是世界所有的行業(yè)中,失敗率高的。進(jìn)度沒有辦法度量的,通常會(huì)拖,一拖再拖,而且人員都撲上去了,可是還是慢。

  為什么?

  多少年,多少人,更有很多的專業(yè)公司都在分析這里面的原因。為什么我們的人員都在加班了,沒有人偷懶,都很努力,效率卻上不去?

  據(jù)我分析和思考,認(rèn)為可以從下面兩個(gè)角度看這個(gè)問題:業(yè)務(wù)和技術(shù)。究其原因的話,有下面幾個(gè)常見的原因:

  業(yè)務(wù)混亂。業(yè)務(wù)是軟件的基礎(chǔ),軟件是為業(yè)務(wù)服務(wù)的,這尤其在應(yīng)用軟件開發(fā)中是常見的?墒呛芏鄷r(shí)候我們太急于出界面了,忽略了業(yè)務(wù)的分析和梳理。往往有個(gè)需求,要求盡快開始開發(fā)工作,盡快的完成功能,盡快的見到界面,可以操作,可以進(jìn)行測(cè)試。其實(shí),這時(shí)候的業(yè)務(wù)流程往往由于沒有梳理清楚,存在很多的漏洞,看起來整體是沒有問題的,是流暢的?墒,里面的細(xì)節(jié),摳一下的話,會(huì)發(fā)現(xiàn)僅是絆子,到處都是陷阱。這樣的業(yè)務(wù)作出的設(shè)計(jì),寫出來的代碼,后面很有可能會(huì)需要推倒重來。這時(shí)候開發(fā)人員的開發(fā)體驗(yàn)很不好,情緒受到很大的影響,效率自然也搞不到哪里去?反而,由于屢次的推到,很有可能會(huì)降下來。
      技術(shù)基本功不足。算是業(yè)務(wù)分析清楚了,也梳理好了,也畫了很多的圖,表述也達(dá)到了統(tǒng)一的程度。還是有點(diǎn)慢呢?還是沒有達(dá)到預(yù)期的速率呢?那是業(yè)務(wù)分析人員完成了他們工作,架構(gòu)師設(shè)計(jì)了軟件架構(gòu),該到程序員開始編碼了?墒,每個(gè)程序員的水平是不一致的,有的時(shí)候會(huì)在一些技術(shù)點(diǎn)遇到問題,導(dǎo)致了開發(fā)時(shí)間超出預(yù)期范圍;竟Πǎ盒〉椒椒ǖ脑O(shè)計(jì),參數(shù)的設(shè)計(jì),算法的應(yīng)用,大到類的設(shè)計(jì),設(shè)計(jì)模式的應(yīng)用,對(duì)架構(gòu)師給出的軟件架構(gòu)的理解,都存在各方面的問題。

  對(duì)于第一個(gè)原因,業(yè)務(wù)的原因。我認(rèn)為需要從業(yè)務(wù)的角度解決,需要在分析業(yè)務(wù)的時(shí)候,深入的思考,深入到業(yè)務(wù)的細(xì)節(jié)部分。對(duì)整個(gè)流程中的細(xì)節(jié)好有梳理,每一步分析梳理都要有結(jié)果,文字和圖例。不要草率的開工,不要只是分析一點(diǎn)點(diǎn)可以了?梢詤⒖汲绦虻臉I(yè)務(wù)流程,分析適合自己的業(yè)務(wù)流程。

  還有是需要領(lǐng)導(dǎo)在這個(gè)問題上有正確的認(rèn)識(shí),不要基于要求開工,技術(shù)人員這時(shí)候可以做一些技術(shù)的積累和基礎(chǔ)工作。例如公共類庫的整理和編寫,架構(gòu)師可以進(jìn)行系統(tǒng)的架構(gòu),是否要分布式,是否需要物理分層,是否有可以用的類庫。還有一些cross-cutting的關(guān)注點(diǎn),這時(shí)候都可以進(jìn)行開發(fā)和設(shè)計(jì),進(jìn)行技術(shù)的探討也是不錯(cuò)的。對(duì)于后期的開發(fā)也是很有幫助的。

  對(duì)于第二個(gè)原因,需要企業(yè)和開發(fā)人員兩者都要有深入的認(rèn)識(shí)。

  首先,企業(yè)方面要有公司的類庫,有自己的積累。對(duì)于一些公共的類庫,一些非功能的模塊,例如:日志、異常處理、數(shù)據(jù)合法性驗(yàn)證、用戶驗(yàn)證、數(shù)據(jù)訪問、緩存等等。

  其次,公司要有統(tǒng)一的開發(fā)標(biāo)準(zhǔn),開發(fā)規(guī)范,這樣的話,大家可以互相幫忙,例如在一個(gè)人較慢的情況下,有人可以幫助他編寫一部分的功能,加快整體的速度。因?yàn)榇蠹业臉?biāo)準(zhǔn)的一樣的,所以接手起來也不會(huì)太困難,否則接手很困難的話,對(duì)整體進(jìn)度沒有幫助了。

  再次,對(duì)于開發(fā)人員需要有培訓(xùn),培訓(xùn)每個(gè)人的基本功。尤其是關(guān)注那些新人,提升大家的基本功。使得大家在進(jìn)行模塊設(shè)計(jì)和開發(fā)的時(shí)候不至于牽絆太多,可以順利進(jìn)行。而且做出來的東西,從質(zhì)量角度來講也可以更高,減少返工的幾率。這方面園子里面也有人提出了很多不錯(cuò)的建議面向?qū)ο笏枷氲念^腦風(fēng)暴(一)   面向?qū)ο笏枷氲念^腦風(fēng)暴(二)—— 詳解繼承與組合的優(yōu)缺點(diǎn)  面向?qū)ο笏枷氲念^腦風(fēng)暴(三)-使用接口進(jìn)行解耦  等。其實(shí)是提高我們的面向?qū)ο竽芰,因(yàn)槲覀兇蠖嗍褂玫氖敲嫦驅(qū)ο蟮木幊陶Z言,但是開發(fā)的時(shí)候我們除了寫了類,什么都沒有了。這方面可以用頭腦風(fēng)暴的方式,花一個(gè)下午或者是,大家一起針對(duì)一個(gè)問題進(jìn)行分析、設(shè)計(jì)、編寫,讓新人參與進(jìn)來,可以學(xué)習(xí)成熟的代碼編寫方式和技術(shù),可以統(tǒng)一大家的認(rèn)識(shí)高度。雖然不可能通過幾次的培訓(xùn)和做幾個(gè)小題有實(shí)質(zhì)性的提高,但是可以鍛煉思考能力,終的提高還是要靠個(gè)人在實(shí)戰(zhàn)的開發(fā)中總結(jié)和應(yīng)用,還有是多花工夫思考和聯(lián)系。師傅領(lǐng)進(jìn)門,修行靠個(gè)人。<!--end: searchItemTitle -->

  后,技術(shù)上面要有人來把控。至少有一個(gè)人是具有豐富經(jīng)驗(yàn)的,可以把握整體的方向,整體的風(fēng)格,可以對(duì)新人進(jìn)行培訓(xùn)。而且公司也可以充分授權(quán)這個(gè)人,充分這個(gè)人,也可以較為放心的進(jìn)行開發(fā)管理。

  個(gè)人觀點(diǎn),難免偏頗。歡迎大家一起討論。

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