只要我們想想Web服務,就很明確了。把我們現有的一些應用暴露其業務功能為Web服務是一個很好的主意。實際上,確有一些IT公司在初涉SOA領域時首先做的就是這件事。他們創建起Web服務庫。而只要你選擇正確的業務構件,就會馬上見效。
但是你如何測試這些Web服務,知道它們就是在做你想要它們做的事情呢?要知道原來的應用可能根本沒有預想到自己會被做成一些構件的。程序代碼可能是意大利面式的。想象一下某個相當簡單的東西,比如管理用戶數據庫。假設,我們的Order Processing應用就這么干,因此我們需要把用戶更新功能(即添加、修改和刪除用戶)作為web服務暴露出來。我們了解此應用,因此我們知道其程序邏輯做了我們想要它做的事情。但它還做了別的什么事情嗎?這就是潛在的問題。