在我個人看來,在眾多公司的項目中,項目的進度估計雖然具有一定的依據(jù),也參照了一定的依據(jù),包括經(jīng)驗,也遵循了一定的流程,但是還是存在許多不足之處。除了用戶方的原因(在此不做討論),在我看來主要問題出于以下幾點:
1 軟件開發(fā)計劃制定中的幾個問題
1.1 詳細設(shè)計不徹底
詳細設(shè)計的不徹底,導(dǎo)致開發(fā)計劃制定后執(zhí)行的空洞,從而無法真正實現(xiàn)計劃的實現(xiàn)和監(jiān)控,大多的情況是在不斷的彌補,或者進度的追趕,從導(dǎo)致代碼的質(zhì)量無法保證,甚至亦無法保證功能的實現(xiàn)。
1.1.1 詳細的設(shè)計的不足
很多開發(fā)人員在接到開發(fā)任務(wù)后,擔(dān)心不能及時完成任務(wù),在匆忙做完了概要設(shè)計(其實此時的概要設(shè)計可能根本不能滿足需要),以沒有時間為借口,直接進入到編碼階段,沒有對軟件系統(tǒng)進行更為詳細的設(shè)計,從而導(dǎo)致了對開發(fā)中出現(xiàn)的問題沒有做出相應(yīng)的應(yīng)對措施。而且在出現(xiàn)問題后,對問題認識的不足(包括擔(dān)心問題的出現(xiàn)會使自己的技能被別人否定等),和解決方法的缺乏,從而導(dǎo)致了問題的堆積和時間的流失,到最后使得項目的進度不得不發(fā)生了延遲。眾多公司的項目和產(chǎn)品中普遍存在這個問題。
1.1.2 詳細設(shè)計應(yīng)該達到的地步
詳細設(shè)計應(yīng)該能夠達到一個這樣的地步,比如,在一個模塊所需要實現(xiàn)的功能基礎(chǔ)上,對此模塊再次進行的詳細設(shè)計,以至不可再分,甚至可以細化到可以實現(xiàn)的某一個具體的函數(shù)、類、屬性等之上。而且不遺漏細節(jié)! 比如頁面設(shè)計 可以以頁面為單位進行詳細設(shè)計,從而細化到每個頁面大概需要實現(xiàn)的基本要素,包括多少個按鈕、列表框、輸入框等,以及每個頁面中的功能點,包括需要連接的數(shù)據(jù)庫等。這樣每個頁面的具體時間就能準(zhǔn)確的確定,并被執(zhí)行。且需要做出一個網(wǎng)頁的設(shè)計圖樣,共項目評審使用。 比如圖形制作可以以每幅圖為單位進行詳細設(shè)計,從而可以細化到每個可能需要實現(xiàn)的基本要素,包括道路等各項圖形要素,以及功能點等。這樣每副圖形制作的具體時間就能準(zhǔn)確的確定,并被執(zhí)行。亦可以做評審使用。
1.1.3 重物的稱量
試想,我們需要稱量一個重物,如果沒有磅秤,只有彈簧稱,那么我們只能將此重物進行分割,方能知道此重物的重量,而且需要保證在分割的過程中沒有損耗。否則就需要進行一個定量的、適度的估算,比如百分比等,以彌補分割過程的損耗。
在這個比喻中,我們把重物看成是個項目,分割重物的人是項目經(jīng)理或系統(tǒng)分析人員,稱量的人則是實施開發(fā)的人員,分割過程則是項目開發(fā)過程。
如果在分割重物的人,沒有具備分割的能力,重物的重量將會遠遠偏離其實際目標(biāo)。
如果稱量重物的人,沒有具備稱量的能力,重物的重量也會偏離其實際目標(biāo),只不過相對于分割重物的人的不稱職,離目標(biāo)可能會近些。 項目管理者聯(lián)盟文章,深入探討。
1.1.4 西瓜籽的計算
有時候我們開發(fā)項目的過程也像一個計算西瓜籽的過程。
看下面的過程,根據(jù)西瓜向陽一面多籽的特性,確立西瓜的中心線,然后將西瓜籽分解成陽面、陰面的兩部分,再根據(jù)中心線與陽面、陰面的距離,將西瓜進行多次分塊,直到我們能夠較容易得數(shù)出西瓜中的西瓜籽。這樣我們可以對所有的西瓜塊進行分類,這樣就能夠很快的得出西瓜籽的數(shù)量。如果我們對西瓜的結(jié)構(gòu)很是了解,那么即使有些誤差,但也會相差無幾。
在這里,西瓜是我們需要建立的系統(tǒng),西瓜籽是我們所需要實現(xiàn)的功能,西瓜籽的數(shù)目則是我們的時間,對西瓜的分塊和分類則是我們的進度安排。而我們只有采用科學(xué)的方法,才能快捷的獲得一個較為準(zhǔn)確的項目進度計劃。
另外,還有一個含義,就是如果想要知道西瓜籽的數(shù)量,我們必須切開西瓜,才能知道。
而且分得越細越準(zhǔn)確。具體所需要分的塊數(shù)也取決于西瓜的大小和切西瓜的人的經(jīng)驗。
1.2 開發(fā)技能的估計不足
開發(fā)技能的不足也經(jīng)常阻止了計劃的順利執(zhí)行。
1.2.1 非項目小組成員
在很多項目進行開發(fā)之前,項目組成員采納項目評審小組意見的時候,非項目小組成員并非真正、徹底的了解該項目的實際內(nèi)容,或者了解不徹底,因此他們的經(jīng)驗和意見使得項目組在決定項目將要使用到的開發(fā)工具和技術(shù)的時候容易估計不足,也可能導(dǎo)致項目的進度延期。
1.2.2 掌握的新技術(shù)和技能
在項目中,項目組成員如果不能滿足對工具的熟練程度,那么項目的開發(fā)計劃是需要及時跟進的。如果進度不能如期進行,或者開發(fā)人員在額定的時間內(nèi),掌握的新技術(shù)和技能不能滿足要求,需要重新且及時的進行分析。
1.2.3 開發(fā)人員技能匯報
如果不及時跟進開發(fā)人員技能的掌握程度,而且直接開發(fā)人員也不及時進行匯報,將會導(dǎo)致項目進度延期的無法抗拒。
不僅僅技能不滿足要求時溝通不夠,也有其他方面的溝通不足,也會導(dǎo)致項目的進度也可能受到影響。
1.3 關(guān)鍵技術(shù)分析不透徹
在一個項目中,如果對關(guān)鍵技術(shù)分析不夠透徹,用一種模糊的觀點,抱著試試看的心態(tài),也可能導(dǎo)致項目計劃執(zhí)行難度較大。
這個與“詳細設(shè)計不徹底”有些相通之處,但不完全相同。
比如,yyyyy項目,它就存在一個對關(guān)鍵技術(shù)分析不透徹的問題,也存在“詳細設(shè)計不徹底”的問題。因此,擬定的計劃是模糊的,不可執(zhí)行的。開發(fā)人員憑著自己的經(jīng)驗和智慧,解決開發(fā)當(dāng)中遇到的問題。
1.4 開發(fā)經(jīng)驗總結(jié)不足
對于同樣的一個項目,同樣的一個功能,在進行多次的復(fù)用后,其技術(shù)應(yīng)該已經(jīng)較為成熟,其功能的實現(xiàn)也應(yīng)該較為容易,出錯率也應(yīng)該較低,我們進度應(yīng)該比較有把握,但事實情況并非如此!
那我想,也許是我們對開發(fā)的經(jīng)驗總結(jié)不夠!
我們是否可以做一個這樣的統(tǒng)計:
在一個我們現(xiàn)有的項目開發(fā)過程中,我們進行了多長時間的編碼工作,其中沒有任何修改操作的時間為多長,因為用戶需求的更改而導(dǎo)致的代碼修改時間為多長,因為設(shè)計的修改而導(dǎo)致的代碼修改時間為多長,因為功能實現(xiàn)的錯誤而進行的代碼修改時間為多長。
所有時間的綜合 在沒有進行修改的情況下項目所花費的時間 引起代碼修改的原因 用戶需求更改的情況下項目所花費的時間 設(shè)計發(fā)生修改的情況下項目所花費的時間 功能實現(xiàn)的錯誤的情況下項目所花費的時間 測試發(fā)現(xiàn)錯誤的情況下項目所花費的時間花費的時間也可以做出圖表。
從這樣一些統(tǒng)計和總結(jié)中,也許我們可以看出,我們進度的延期最主要的因素是什么;除了客戶因素之外,我們還可以做那些努力;我們不可忽略的因素是什么。
2 軟件過程調(diào)整
根據(jù)以上的分析,我們可以對軟件過程進行適當(dāng)調(diào)整,尤其是針對開發(fā)中采用C/A/S結(jié)構(gòu)的系統(tǒng),從而來改變我們增強需求獲取的目的性,而且需求獲取也會變得較為明顯和容易。
對公司已經(jīng)經(jīng)歷過的軟件過程進行分析從而決定在下一個項目中將要采用的軟件過程。例如,對采用B/A/S結(jié)構(gòu)的系統(tǒng)可以采用直接從界面和數(shù)據(jù)進行概要設(shè)計的方式,并以此來計算頁面設(shè)計時間和數(shù)據(jù)庫設(shè)計時間。而對于其中所需要實現(xiàn)的其他的功能,則在每個界面當(dāng)中進行詳細設(shè)計,此時對每一個功能實現(xiàn)所需要的時間進行估算,這樣就能夠計算出整個項目的一個較為可靠的時間,根據(jù)用戶的需要和需求功能實現(xiàn)的關(guān)聯(lián)就能對項目進度有一個適度的安排。
這樣在概要設(shè)計中,主要對界面和數(shù)據(jù)庫設(shè)計進行評估;而在詳細設(shè)計中對功能的設(shè)計和實現(xiàn)進行評估。
3 市場人員交流的技巧
我并不知道市場人員在交流的時候使用了什么樣的技巧,但是市場人員的營銷技巧和交流技巧確實對我們在爭取項目的主動權(quán)上有著至關(guān)重要的作用。
如果能夠充分掌握開發(fā)人員的相關(guān)因素和公司現(xiàn)狀,那么在前期獲得客戶溝通、需求獲取、和項目的時間把握等上,后期的產(chǎn)品交付、驗收等問題上,都可以獲得一定的余地!
在這兒要需要說明!
不管你是公司的技術(shù)人員,還是市場人員,與用戶交流的時候,你就是一個與用戶在進行交流的市場人員,同理,不管是懂技術(shù)的客戶,還是不懂技術(shù)的客戶,他都是提供用戶需求的客戶!
市場人員交流是需要一定的技巧的,而掌握這些技巧就需要市場人員掌握相關(guān)技能。對于技能和技巧的掌握,沒有人天生就會,只有不停的進行鍛煉,并經(jīng)過相關(guān)的培訓(xùn)和實踐。
思考以下幾個問題:
為什么用戶需求總是在發(fā)生變化?是我們不理解用戶的需求嗎?還是我們低估了用戶?還是我們分析不到位?
如果用戶的需求超出了我們的期望值,我們處理好了嗎?我們是在敷衍,還是繼續(xù)努力,讓用戶理解我們?
我們獲得的與開發(fā)人員所需要的需求差別在哪里?我們了解我們的開發(fā)人員及其所擁有的技能?
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學(xué)生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學(xué)員考試保駕護航。面授、直播&錄播,多種班型靈活學(xué)習(xí),滿足不同學(xué)員考證需求,降低課程學(xué)習(xí)難度,使學(xué)習(xí)效果事半功倍。
發(fā)表評論 查看完整評論 | |