客戶的新思想
使用傳統的軟件開發方法的客戶期望在開發工作中有最小的投資。他們想預先指出所有的需求,確定一個固定的價格,然后等待最終系統的交付。經常的,會產生在期望值和實際交付系統之間的非常大的差距 — 解決方案并沒有滿足客戶真實的業務需要。
通過轉向迭代開發,改變客戶和開發 團隊之間的交互模式,客戶和開發團隊都可以避免大量的痛苦。在一個迭代開發的項目中,客戶應該是構建應用團隊中的不可缺少的一部分?蛻襞c開發團隊的其他成員協同工作以確保最終交付的 應用系統滿足被需要的業務價值?蛻舻慕M織應該盡可能的保持與開發團隊之間交互的興趣,以確保開發團隊可以理解他們應該構建什么和項目中具有什么樣的 風險和問題。如果客戶沒有幫助指導開發的工作,開發團隊可能會開發出錯誤的應用 — 每個人都會蒙受損失。
在迭代開發的模式中,客戶不能僅僅指出他們所預期的然后就等待系統交付。不論他們怎么清晰的定義,所有的需求都從屬于眾多的說明和可能的實現。對開發團隊來說,與其生成更加詳細的需求,還不如投入時間更加頻繁和有效的與項目的關鍵投資人(包括客戶)進行 溝通。那么,當客戶查看演進的應用時,他們將獲得應用應該做什么的更好的理解,并可以提供有建設性的建議以改進系統。同時,如果在項目中業務要求發生快速的變化,需求也需要隨之發生改變。