1.2.3 開發人員技能匯報
如果不及時跟進開發人員技能的掌握程度,而且直接開發人員也不及時進行匯報,將會導致項目進度延期的無法抗拒。
不僅僅技能不滿足要求時溝通不夠,也有其他方面的溝通不足,也會導致項目的進度也可能受到影響。
1.3 關鍵技術分析不透徹
在一個項目中,如果對關鍵技術分析不夠透徹,用一種模糊的觀點,抱著試試看的心態,也可能導致項目計劃執行難度較大。
這個與“詳細設計不徹底”有些相通之處,但不完全相同。
比如,yyyyy項目,它存在一個對關鍵技術分析不透徹的問題,也存在“詳細設計不徹底”的問題。因此,擬定的計劃是模糊的,不可執行的。開發人員憑著自己的經驗和智慧,解決開發當中遇到的問題。
1.4 開發經驗總結不足
對于同樣的一個項目,同樣的一個功能,在進行多次的復用后,其技術應該已經較為成熟,其功能的實現也應該較為容易,出錯率也應該較低,我們進度應該比較有把握,但事實情況并非如此!
那我想,也許是我們對開發的經驗總結不夠!
我們是否可以做一個這樣的統計:
在一個我們現有的項目開發過程中,我們進行了多長時間的編碼工作,其中沒有任何修改操作的時間為多長,因為用戶需求的更改而導致的代碼修改時間為多長,因為設計的修改而導致的代碼修改時間為多長,因為功能實現的錯誤而進行的代碼修改時間為多長。
所有時間的綜合 在沒有進行修改的情況下項目所花費的時間 引起代碼修改的原因 用戶需求更改的情況下項目所花費的時間 設計發生修改的情況下項目所花費的時間 功能實現的錯誤的情況下項目所花費的時間 測試發現錯誤的情況下項目所花費的時間花費的時間也可以做出圖表。
從這樣一些統計和總結中,也許我們可以看出,我們進度的延期主要的因素是什么;除了客戶因素之外,我們還可以做那些努力;我們不可忽略的因素是什么。
2 軟件過程調整
根據以上的分析,我們可以對軟件過程進行適當調整,尤其是針對開發中采用C/A/S結構的系統,從而來改變我們增強需求獲取的目的性,而且需求獲取也會變得較為明顯和容易。
對公司已經經歷過的軟件過程進行分析從而決定在下一個項目中將要采用的軟件過程。例如,對采用B/A/S結構的系統可以采用直接從界面和數據進行概要設計的方式,并以此來計算頁面設計時間和數據庫設計時間。而對于其中所需要實現的其他的功能,則在每個界面當中進行詳細設計,此時對每一個功能實現所需要的時間進行估算,這樣能夠計算出整個項目的一個較為可靠的時間,根據用戶的需要和需求功能實現的關聯能對項目進度有一個適度的安排。
這樣在概要設計中,主要對界面和數據庫設計進行評估;而在詳細設計中對功能的設計和實現進行評估。
3 市場人員交流的技巧
我并不知道市場人員在交流的時候使用了什么樣的技巧,但是市場人員的營銷技巧和交流技巧確實對我們在爭取項目的主動權上有著至關重要的作用。
如果能夠充分掌握開發人員的相關因素和公司現狀,那么在前期獲得客戶溝通、需求獲取、和項目的時間把握等上,后期的產品交付、驗收等問題上,都可以獲得一定的余地!
在這兒要需要說明:
不管你是公司的技術人員,還是市場人員,與用戶交流的時候,你是一個與用戶在進行交流的市場人員,同理,不管是懂技術的客戶,還是不懂技術的客戶,他都是提供用戶需求的客戶!
市場人員交流是需要一定的技巧的,而掌握這些技巧需要市場人員掌握相關技能。對于技能和技巧的掌握,沒有人天生會,只有不停的進行鍛煉,并經過相關的培訓和實踐。
思考以下幾個問題:
為什么用戶需求總是在發生變化?是我們不理解用戶的需求嗎?還是我們低估了用戶?還是我們分析不到位?
如果用戶的需求超出了我們的期望值,我們處理好了嗎?我們是在敷衍,還是繼續努力,讓用戶理解我們?
我們獲得的與開發人員所需要的需求差別在哪里?我們了解我們的開發人員及其所擁有的技能?