假設我們都贊成測試是必要的,那么我們接下來必須回答這些問題:我們如何進行測試?實際上都包括哪些內容?我們如何保證已經進行了有效的工作,并且真正地改善了應用程序的質量?
答案很簡單:制定計劃。
本文是系列文章中的第一篇,該系列文章將評審在軟件生命周期中制定測試計劃的作用,以及有效制定測試計劃的有關概念。在本文中,我們要討論為什么進行測試,尤其是自動化測試,是必需的。然后,我們將介紹制定計劃的概念:為什么制定計劃是如此的重要?在隨后的文章中,我們將分解測試計劃中的不同因素,并且研究如何進行制定計劃的過程才能最大程度地增加成功的機會。
為什么花費精力制定計劃?
現在看來,沒有怎么制定測試計劃而造成的后果比以前更加明顯了。失敗的案例有很多--看看報紙或者雜志就知道了。還有一些明顯的低質量軟件的案例,它們包括:
AT&T-一個軟件交換系統,系統崩潰造成了美國幾乎24小時的長距離通信中斷。僅僅修改了一行源代碼就解決了問題。
Denvor機場--軟件的缺陷延誤了機場的開放幾乎長達9個月之久,據估算,每天花費納稅人大概$500,000。
Ashton-Tate--在80年代,Ashton-Tate的DBASE軟件是基于PC的數據庫應用程序的實際標準。版本中的缺陷導致了利潤的減少,最終造成了Ashton-Tate(和DBASE)的轉讓。Ashton-Tate最后被Borland(擁有極具競爭力的數據庫管理應用程序,Paradox)收購。
當然,這些都是知名度很高的公司和項目。這些問題不會出現在您的公司中,對嗎?
錯誤!我們都要面對軟件的缺陷,在我們的組織中與外界都是一樣,這些問題都是關鍵的,也是很明顯的。這里有一些低質量軟件的更加共同的癥狀:
生產力損失
系統性能
缺少功能/特性
沒有滿足用戶需求--無法銷售
用戶挫折感
強迫用戶以不直觀的方式執行任務
循環工作
延遲
原文轉自:http://www.anti-gravitydesign.com