軟體測試缺乏配置管理的問題解決方法

myattitude發表於2008-08-21
 由於缺乏必要的配置管理流程和工具,很多軟體企業在日常的開發工作中都會或多或少的遇到如下的問題:組織的知識和過程財富流失現代的社會競爭激烈,人員流動頻繁,如果由於沒有必要的配置管理流程和工具,大量的文件和程式碼等知識財富必然缺乏統一的管理,可能隨意地儲存在專案經理和軟體工程師各自的機器裡,往往會因為硬碟的故障或人員的離職而永遠的消失,軟體組織的數字財富就這樣因為缺乏必要的配置管理而白白的流失。
 
  不能及時瞭解專案的進展狀況現代軟體工程思想認為越早發現缺陷和風險,採取相應措施的代價越小。CMM 的一個重要作用就是要提高軟體開發過程中的可視性,使得問題能夠被及時的發現。然而由於缺乏配置管理的流程和工具的支援,部門主管無法確切得知專案的進展情況,即便是專案經理也不知道各個開發人員的具體工作,專案進展隨意性很大。所有的問題往往都會集中到專案里程碑時一起出現,這必然會造成巨大的開銷,其結果往往是容忍部分缺陷存在或者延誤開發週期。所有問題只能寄希望於最終實施時再解決,專案的實施工作因此變成了無法彙報、無法理清、無休止的維護。
 
  缺乏實現並行開發的手段

        在日常的開發工作中,經常會出現並行開發的需求,比如:對於一個專案可能要在開發新版本的同時繼續對先前的版本進行必要的維護,或者針對某個特定的版本需要針對不同的客戶同時進行客戶化的修改等等。在並行模式下,不同開發人員可以同時編輯修改某一檔案,並行開發有可能產生衝突,但是卻能夠提高開發效率。如果沒有配置管理工具的支援,進行並行開發將十分困難,單單通過人工操作,往往會造成修改過的bug 重複出現或者幾個人進行相同的工作,產生不必要的浪費。

  軟體複用率低下

       軟體複用是現代軟體工程中的重要思想,是提高軟體產品生產效率和質量的重要手段。軟體產品是一個公司的寶貴財富,程式碼的可重用性是相當高的,如何建好知識庫,用好知識庫將對公司優質高效開發產品產生重大的影響。但如果沒有良好的配置管理流程,軟體複用的效率將大打折扣,比如對於複用的程式碼進行了必要的修改或改進,卻只能通過手工的方式將發生的變更傳遞給所有複用該軟體的專案,效率如何可想而知。另外由於缺乏進行溝通的必要手段,各個開發人員各自為政,編寫的程式碼不僅風格迥異,而且編碼和設計脫節,往往會導致開發大量重複的難以維護的程式碼。
 
  無法開展規範化的測試工作

        在傳統的開發方式中,由於缺乏必要的配置管理和變更控制,測試工作只是人們的一種主觀願望,根本無法提出具體的測試要求,加之開發人員的遮醜,測試工作往往是走走過場,測試結果既無法考核又無法量化,當然就無法對以後的開發工作起指導作用。
 
  對軟體版本的釋出

       缺乏有效的管理因為缺乏有效的管理手段,往往會在產品釋出時卻無法確定該版本所有的元件,或者向使用者提供了錯誤的版本。對於特定客戶出現的問題,無法重現其使用的版本,只能到使用者的現場才能進行相應的除錯工作。由於應用軟體的特點,各個不同的客戶會有不同的要求,開發人員要手工地保持多份不同的拷貝,即使是相同的問題,但由於在不同 地方提出,由不同人解決,其做法也不盡相同,程式的可維護性越來越差。這些都會延長實施的週期,同時意味著人力物力的浪費。

 缺乏歷史資料的積累,沒有軟體開發的歷史資料缺乏軟體開發的歷史資料是大多數軟體專案失敗的關鍵所在,這樣的結論也許使很多人感到吃驚,但事實就是如此。因為軟體開發的歷史資料是反映軟體開發隊伍的能力的標尺,沒有了這個標尺,就無法對軟體的開發過程有一個清醒的認識。而良好的配置管理正是收集軟體開發歷史資料的重要來源。
 
  無法有效的管理和跟蹤變更軟體的一個顯著特點就是易於改變,沒有配置管理將無法對軟體的變更進行有效的記錄、跟蹤和控制。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14780914/viewspace-431654/,如需轉載,請註明出處,否則將追究法律責任。

相關文章