Michael Fagan公司總裁 IBM T.J.Watson研究中心高階技術研究員 IBM質量協會創辦人 獲IBM公司傑出貢獻獎 馬里蘭大學訪問教授

正規檢視屬於同行評審,它和技術評審以及走查一起組成了同行評審。

Michael Fagan對於如何去實施評審,如何把對工作的檢查做好提出了完整的可行的解決方案。

Michael Fagan本來是做硬體的。 我們知道硬體在設計完成後會進行開模和生產,如果設計上出現小的問題,會導致大批生產出來的硬體集體報廢,會帶來極大的浪費和大大增加成本,而這種問題在當時尤為突出。

Michael Fagan於是開始考慮如何來儘量避免這種問題的出現,他開始組織他手下的硬體工程師在硬體測試完成後、開模生產前對設計進行更徹底更充分的檢查,希望能找出測試遺漏的問題。效果是顯著的,大量測試遺漏的問題被發現,生產出的硬體質量得到大大提高。

在1971年,Michael Fagan聽從他好友的建議,轉到了軟體開發上。在當時來看無論是開發還是測試都是相對比較原始和簡單的,軟體的研發陷入深深的軟體危機中:研發出的軟體交到客戶手中後,客戶會反饋大量問題,結果導致軟體不斷返工,無論是開發人員還是公司還是客戶都感到了無助。Michael Fagan於是又開始思考如何儘量避免這種現象的出現,他想到了他以前在進行硬體開發時的經驗:通過組織大家對設計進行檢查能大大提高產品的質量,他於是開始考慮在軟體開發中也採用類似的方式(看來有不少軟體方面的技術都是從硬體方面借鑑過來的,另一個比較典型的是冒煙測試)。

隨著Michael Fagan和他的專案組成員不斷使用檢視、改進檢視,他們發現工作越來越有序,很多問題通過檢視發現了出來,大家都體會到了檢視給他們帶來的好處。

由於正規檢視在Michael Fagan所負責的專案組獲得了成功,Michael Fagan所在的公司IBM決定在其它專案組也引入正規檢視這種方法,在當時Michael Fagan已經為這種方式制定了嚴格的7個步驟,真正讓它可以實施可以移植到別的專案。可以說正是由於Michael Fagan的堅持、不斷地實踐總結改進再實踐,才形成了比較完善的正規檢視技術,因此正規檢視也叫做fagan檢視。

正規檢視技術評審以及走查之間是有區別的: 從流程上講,正規檢視流程要嚴格的多,因此它主要用在一些階段性的軟體產品上,比如需求、概要設計、詳細設計等,作為這些階段一個很重要的結束標準。 技術評審和走查更多侷限在一些具體的軟體產品或者軟體產品的部分,用於發現問題和改進軟體產品,和階段是否結束沒有什麼關係。

正規檢視是由Michael Fagan提出的,同時他也不斷的在完善和擴充這種技術。離開IBM後,Michael Fagan建立了自己的公司,提供和評審過程相關的諮詢、培訓等業務。

他在正規檢視的基礎上提出了fagan零缺陷過程,該過程包含3個部分: 1.正規過程定義 2.檢視過程 3.持續過程改進。

這三個部分中檢視過程還是核心其餘兩個部分更好的進行正規檢視提供幫助。 通過實施fagan零缺陷過程,Michael Fagan的不少客戶實現了:

    1、減少50%的開發週期

    2、客戶報告的問題減少10到20倍

    3、會議時間和維護預算增加50%

    4、生產率提高2倍

    5、客戶滿意度增加40%到60%

大家如果想進一步瞭解Michael Fagan和正規檢視,可以看一下下面的文章:

A History of Software Inspections

The Best Influences on Software Engineering

“Design and code inspections to reduce errors in program development,” by Michael Fagan