WADL का उद्देश्य एक अनुबंध को परिभाषित करना है । अनुबंध निर्दिष्ट करता है कि एक पार्टी दूसरे को कैसे बुला सकती है।
जब आप स्क्रैच से वेब एप्लिकेशन बनाते हैं, तो आपको अनुबंध और WADL की आवश्यकता नहीं होती है ।
जब आप अपने सिस्टम को अन्य सिस्टम के साथ एकीकृत करते हैं और आप उनकी विकास टीम के साथ स्पष्ट रूप से संवाद कर सकते हैं, तो आपको अनुबंध और WADL की आवश्यकता नहीं है (क्योंकि आप चीजों को स्पष्ट करने के लिए फोन कॉल कर सकते हैं)।
हालाँकि जब आप कई अन्य कंपनियों (या संघीय संस्थानों) द्वारा बनाए गए कई अन्य जटिल उद्यम प्रणालियों के साथ एक जटिल उद्यम प्रणाली को एकीकृत करते हैं, तो मुझे विश्वास है कि आप संचार अनुबंध को यथासंभव सख्ती से परिभाषित करना चाहते हैं। फिर आपको WADL या ओपन स्पेसिफिकेशन की जरूरत है। बुरी तरह से जरूरत है ।
कमजोर उद्यम पृष्ठभूमि वाले लोग पूरे आईटी को स्वतंत्र रूप से विकसित अलग वेब अनुप्रयोगों के संग्रह के रूप में देखते हैं। लेकिन उद्यम वास्तविकता कभी-कभी कठिन होती है। कभी-कभी आप उस एप्लिकेशन को भी कॉल या लिख नहीं सकते हैं जो आपके द्वारा एकीकृत किए जाने वाले एप्लिकेशन को विकसित कर रहा है। कभी-कभी आप एक विरासत अनुप्रयोग के साथ संवाद करते हैं जिसे अब बनाए नहीं रखा जाता है - यह बस चलता है और आपको यह पता लगाने की आवश्यकता है कि इसके साथ ठीक से कैसे संवाद करें। ऐसी स्थितियों में आपको एक अनुबंध की आवश्यकता होती है क्योंकि यह आपके गधे को बचाता है ।
दरअसल क्लाइंट जेनरेशन कॉन्ट्रैक्ट डेफिनिशन की मामूली विशेषता है। यह सिर्फ एक खिलौना है। अनुबंध खराब संचारकों को एकीकरण नियमों को स्पष्ट रूप से संप्रेषित करने में सक्षम बनाता है। यह WADL या ओपन स्पेसिफिकेशन या जो भी हो उसका उपयोग करने का मुख्य कारण है।