根據現代軟件工程對眾多失敗項目的調查,發現管理是項目失敗的主要原因。這個事實的重要性在于說明了 “要保證項目不失敗,我們應當更加關注管理”,注意這個事實沒有說明另外一個問題“良好的管理可以保證項目的成功”,F在很多人基于一種粗糙的邏輯,從一個事實反推到的這個結論,在邏輯上是錯誤的,這種錯誤形成了更加錯誤的做法,這點在SQA的理解上是體現較深。
如果我們考證一下歷史的沿革,應當更加容易理解 CMM的本質。CMM首先是作為一個“評估標準”出現的,主要評估的是美國國防部供應商保證質量的能力。CMM關注的軟件生產有如下特點:
(1)質量重要
(2)規模較大
這是 CMM產生的原因。它引入了“全面質量管理”的思想,尤其側重了“全面質量管理”中的“過程方法”,并且引入了“統計過程控制”的方法?梢哉f這兩個思想是CMM背后的基礎。
上面這些內容形成了我對軟件過程地位、價值的基本理解;在這個基礎上我們可以引申討論 SQA。
2、生產線的隱喻
如果將一個軟件生產類比于一個工廠的生產。那么生產線就是過程,產品按照生產線的規定過程進行生產。 SQA的職責就是保證過程的執行,也就是保證生產線的正常執行。
抽象出管理體系模型的如下,這個模型說明了一個過程體系至少應當包含 “決策、執行、反饋”三個重要方面。
QA的職責就是確保過程的有效執行,監督項目按照過程進行項目活動;它不負責監管產品的質量,不負責向管理層提供項目的情況,不負責代表管理層進行管理,只是代表管理層來保證過程的執行。
3、SQA和其他工作的組合
在很多企業中,將 SQA的工作和QC、SEPG、組織級的項目管理者的工作混合在一起了,有時甚至更加注重其他方面的工作而沒有做好SQA的本職工作。
根據 hjhza 的意見“中國現在基本有三種QA(按照工作重點不同來分):一是過程改進型,一是配置管理型,一是測試型”。我個人認為是因為SQA工作和其他不同工作組合在一起形成的。
下面根據本人經驗對它們之間的關系進行一個說明。
文章來源于領測軟件測試網 http://www.kjueaiud.com/