2023/07/17

赫特伯定律 Hutber's Law

Patrick Hutber 於 1970 年代提出 Hutber's Law

Improvement means deterioration.

改善等同於惡化。任何改善的細節中,都隱藏著可能的惡化因子。對於系統的某個部份的功能改進,可能會影響到其他部分,導致其他功能發生問題。

在對軟體進行改版,修改功能的時候,常會發生 side effect 副作用,有可能是功能本身定義的問題,因為該功能的定義修改,而造成其他功能的條件設定跟原本的不同了。也有可能是因為共用程式碼的關係,某個部份的修改,在另一個部分重用的時候,造成條件不符的問題。

但這種問題,常常很難在第一時間就被發現。

Test Driven 軟體開發方法,就是在開發時,要寫足夠多的測試程式碼,這些測試程式就可以用來預先發生這些可能的未知問題。用大量自動化的測試,來提醒開發人員無法預先知道的問題。

但在使用者介面測試這個部分,目前還比較不容易做自動化,目前是有自動化 UI 測試的工具,但要維護 UI Test 的成本太高,有些問題也無法用自動化測試察覺。

References

Hutber's law - Wikipedia

Hutber’s Law Explained - YouTube

沒有留言:

張貼留言