假如你沒有采用靈敏的方式,那你就落后了。這是最近SD Best PRactices 2004會議上的標語。靈敏的方法就象XP和Scrum正在世界的軟件發展中,變得越來越普遍了。靈敏是一個巨大的改變,讓軟件開發者把重心轉移到質量和速度上。這對已經被比喻成面向對象設計的軟件開發有很大的影響。但是,這種影響的一些方面已經放慢了:GUI的開發,自從大多數軟件包含了一些類型的GUI,而且比較多的軟件開發的百分比是去完成以GUI為中心的,應用靈敏的優勢去開發GUI就是要害問題了。
什么在阻止人們用靈敏的方法來開發GUI呢?不論他們的應用是基于web的或是桌面應用,大多數開發者不做用戶界面user interface的測試驅動開發test-driven development (TDD)。這都因為一個簡單的原因:單元測試GUI是很困難的。測試GUI是很乏味沉悶而且輕易出錯的,包含了模擬用戶事件的復雜代碼,在事件傳播和控制重繪的時候等待,然后在他顯示給用戶之前,嘗試著檢測狀態。靈敏依靠于測試驅動開發,但是為GUI的特定行為來寫有效的測試代碼是困難的。在cube farm(辦公農莊,用隔斷間隔成很多小工作間的辦公室? 商務英語)的GUI方面上,質量和設計從靈敏方法中受益已經被完全熟悉到。