接上文
軟體的生產方式也發生了巨大的變化。開始時是手工業生產方式,軟體的質量依賴於軟體編製者個人的技藝和才智。後來,演變為工業化的規模生產,軟體成為軟體公司一批開發人員共同協作的產品。這時,軟體產品的質量在很大程度上取決於軟體公司實施的開發過程的優化程度和具體的管理水平。現在,又進一步擴充套件為軟體生產的社會化。乙個軟體系統常常要由不同軟體專業公司生產的軟體構件產品整合而成。於是為保證軟體的質量,又要求有相關的統一標準和協議,以及按照標準進行的測試和認證。軟體質量的控制和管理技術是一門實踐的技術,它是根據軟體開發的大量實踐經驗積累而來的。這其中有很多成功的經驗,也不乏慘痛的失敗教訓,例如:
(1)在美國宇航局的"旅行者"計畫中,天王星探測器就是因為深度太空網路軟體傳送資訊遲緩和能力衰竭而處於危險之中。
(2)軟/硬體干擾問題是使一些太空梭經常推遲發射時間的主要原因。
(3)在美國國防部某項工程中,事先設計好的先進程式無一可用,從而導致afti/f-16的首航時間耽擱了一年。坦誠地講,我們國家軟體產業發展較晚,目前真正能稱得上是有一定規模的,具有大型自主軟體開發能力的軟體公司還不多,還缺乏這種規模化開發軟體的實踐經驗。因而,人們往往對軟體質量管理的重要性和必要性認識不足,理解不深。
近年來,軟體質量問題對整個軟體產業的影響日益加深,軟體質量控制工作已經成為其中不可或缺的部分。同時,進行軟體質量控制也是軟體專案中比較繁重的工作,涉及質量計畫編制、質量保證、質量控制等多個方面。
在很多軟體企業裡,軟體質量管理在內部開發產品時做的相對較好:因為產品開發通常在各個軟體企業的研發中心進行,涉及的人員以內部為主,進度壓力相對較小,可以投入時間和精力來開展軟體質量管理。對於有客戶進行參與的軟體實施專案,多數企業為了節省成本和趕進度,往往會忽略質量管理,實際上,很多企業通過iso9001、cmm、cmmi等質量認證的目的就不是為了提高質量:有的企業是為了跟風,有的企業則是為了向客戶展示證書。
在軟體開發實踐中,軟體質量管理可以依靠流程管理(如缺陷處理過程、開發文件控制管理、發布過程等),嚴格按軟體工程執行,來保證質量。如:
·通過從"使用者功能確認書"到"軟體詳細設計"過程的過程定義、控制和不斷改善,確保軟體的"功用性";
·通過測試部門的"系統測試"、"回歸測試"過程的定義、執行和不斷改善,確保軟體的"可靠性"和"可用性";
·通過測試部門的"效能測試",確保軟體的"效率";
·通過軟體架構的設計過程及開發中**、文件的實現過程,確保軟體的"可維護性";
·通過引入適當的程式設計方法、程式設計工具和設計思路,確保軟體的"可移植性"等等。
專案管理系列之 質量管理
摘自www.computerworld.com.cn 左美雲 李東 董小英等著 目前,人們對資訊系統專案提出的要求往往只強調系統必須完成的功能 應該遵循的進度計畫以及開發這個系統所花費的成本,卻很少注意在整個生命週期中資訊系統應該具備的質量標準。這種做法導致系統維護費用增加,當需要把系統移植到另外的...
專案管理系列之 質量管理
摘自www.computerworld.com.cn 左美雲 李東 董小英等著 目前,人們對資訊系統專案提出的要求往往只強調系統必須完成的功能 應該遵循的進度計畫以及開發這個系統所花費的成本,卻很少注意在整個生命週期中資訊系統應該具備的質量標準。這種做法導致系統維護費用增加,當需要把系統移植到另外的...
專案管理系列之質量管理 五
接上文 2 培訓 最重要的質量意識就是預防勝於檢查,強調一次要事情做對,強調上游工序為下游提供合格的中間產出物,儘量減少各種缺陷的洩露。很多時候質量問題並不複雜,更多是團隊成員沒有質量意識,沒有負責任的工作態度。提公升質量最關鍵有兩個方面,首先是我們都有意願和意識來提公升產品質量,其次是我們要有相應...