SOA का कार्यान्वयन सोफ्टवेयर सेवाओं के जाल पर निर्भर करता है। सेवाओं में क्रियाशीलता की असंबंधित, ढीली युग्मित इकाईयां शामिल हैं जो उनमें एक दूसरे को कॉल एबम्बेडेड नहीं रखती. हर सेवा एक क्रिया को कार्यान्वित करती है, जैसे एक अकाउंट के लिए एक ऑनलाइन आवेदन को भरना, या एक ऑनलाइन बैंक-स्टेटमेंट को देखना, या ऑनलाइन बुकिंग करना या एयरलाइन टिकट का ऑर्डर करना. अपने स्रोत कोड में एक दूसरे के लिए कॉल से युक्त सेवाओं के बजाय वे परिभाषित प्रोटोकॉल का उपयोग करते हैं, जो मेटाडेटा विवरण का उपयोग करते हुए, कैसे सेवाएं संदेशों को पास (प्रवाहित) और पार्स करती हैं यह चित्रित करता है।

SOA विकासकर्ता आर्केस्ट्रेशन (orchestration) का उपयोग करके व्यक्तिगत SOA ओब्जेक्ट्स का सहयोग करते हैं। आर्केस्ट्रेशन (orchestration) की प्रक्रिया में विकासकर्ता सोफ्टवेयर की क्रियाशीलता (सेवाओं) को एक गैर-पदानुक्रमित व्यवस्था में (वर्ग पदानुक्रम के विपरीत) सम्बंधित करता है। इसके लिए वह एक ऐसे सोफ्टवेयर टूल (उपकरण) का उपयोग करता है जिसमें सभी उपलब्ध सेवाओं की एक पूरी सूचि, उनकी विशेषताएं शामिल होती है और साथ ही इन स्रोतों को उपयोग करने के अनुप्रयोग (एप्लिकेशन) के निर्माण के साधन भी शामिल होते हैं।

इन सब को अन्तर्निहित और सक्रिय करने के लिए पर्याप्त विवरण से युक्त मेटाडेटा की आवश्यकता होती है, जो न केवल इन सेवाओं के लाक्षणिक गुणों का वर्णन करता है, बल्कि उन्हें ड्राइव करने वाले डेटा का भी वर्णन करता है। प्रोग्रामर्स ने उस डेटा की सरंचना के लिए SOA में XML का व्यापक उपयोग किया है, जिसे वे लगभग एक विस्तृत वर्णन-कंटेनर में रखते हैं। इसी के अनुरूप, वेब सर्विसिज डिस्क्रिप्शन लेंग्वेज (WSDL) प्रारूपिक रूप से खुद सेवाओं का वर्णन करती है, जबकि SOAP प्रोटोकोल संचरण प्रोटोकोल का वर्णन करता है। क्या ये विवरण भाषाएं (description languages) जॉब के लिए सबसे श्रेष्ठ विकल्प हैं और क्या ये भविष्य में पसंदीदा बनेगीं/बनी रहेंगी, इस पर सार्वजनिक चर्चा बनी हुई हैं। SOA उन डेटा और सेवाओं पर निर्भर करता है जिसका विवरण मेटाडेटा के द्वारा किया जाता है, जिसे निम्न दो मानदंडों पर खरा उतरना चाहिए:


लगभग पूरी तरह से मौजूदा सोफ्टवेयर सेवाओं से बनाए जाते "तदर्थ" अनुप्रयोगों (एप्लिकेशन) बनाने के लिए, क्रियाशीलता के काफी बड़े हिस्से को एक साथ शृंखला में रखने के लिए वपराशकर्ताओं को समर्थ बनाना - यह SOA का उद्देश्य है। ये हिस्से जितने बड़े होते हैं, किसी क्रियाशीलता के सेट को कार्यान्वित करने के आवश्यक इंटरफेस बिंदु उतने ही कम होते हैं; हालांकि, क्रियाशीलता के बहुत बड़े हिस्से, आसान पुनरुपयोग के लिए पर्याप्त दानेदार साबित नहीं भी हो सकते. प्रत्येक इंटरफेस अपने साथ प्रोसेसिंग ऑवरहेड का कुछ हिस्सा लाता है, इसलिए सेवाओं की ग्रेन्युलारिटी के चुनाव में प्रदर्शन पर विचार किया जाता है। SOA की विकास संभावनाएं सूचित करती हैं कि n-th अनुप्रयोग (एप्लिकेशन) के निर्माण की सीमांत लागत कम है, क्यों कि आवश्यक सभीं सोफ्टवेयर, अन्य अनुप्रयोगों (एप्लिकेशन) की आवश्यकता को संतुष्ट करने के हेतु, पहले से मौजूद होते हैं। आदर्श रूप में, एक नए अनुप्रयोग के निर्माण के लिए अब केवल ओर्केस्टेशन की आवश्यकता रहती है।

इसे ओपरेट करने के लिए, हिस्सों (chunks) के भीतर या निर्दिष्ट हिस्सों (chunks) के बीच कोई पारस्परिक क्रिया मौजूद नहीं होनी चाहिए. इसके बजाय, मनुष्य सापेक्ष "तदर्थ" तरीके में नव अप्रत्याशित आवश्यकताओं से प्रेरित हो कर, सेवाओं (ये सभी असंबंधित सहयोगी हैं) की अंतःक्रिया को निर्दिष्ट करते हैं। इस प्रकार से पारंपरिक कार्यों या वर्गों की तुलना में क्रियाशीलता की बड़ी इकाईयों के रूप में सेवाओं की जरूरतें ज्यादा होती हैं, नहीं तो ऐसे हजारों ग्रेन्युलर ओब्जेक्ट्स की अत्यधिक जटिलता अनुप्रयोग (एप्लिकेशन) डिजाइनर को बोज़ से परस्त कर देती है। प्रोग्रामर्स जावा, C, C++, C# या COBOL जैसी पारंपरिक भाषाओँ का उपयोग करके खुद सेवाओं का विकास करते हैं।

ढीला संयोजन SOA सेवाओं की एक विशेषता है, यह उन क्रियाओं के विपरीत हैं जिन्हें एक निष्पादन योग्य, गतिक रूप से लिंक लायब्रेरी या एक असेम्बली के निर्माण के लिए, लिंकर एक साथ बांधता हैं। SOA सेवाएं "सुरक्षित" आवरण (जैसे जावा या .NET) और मेमोरी के आवंटन एवं सुधार का प्रबंधन करनेवाली, "तदर्थ" और जुटने में देरी को अनुमति देनेवाली और कुछ अंश तक मध्यस्थ डेटा टाइपिंग उपलब्ध कराती अन्य प्रोग्रामिंग भाषाओं में भी चलती हैं।

2008 में, काफ़ी थर्ड पार्टी सोफ्टवेयर कंपनियां शुल्क के लिए सोफ्टवेयर सेवाएं पेश करने लगीं. भविष्य में, SOA सिस्टम में ऐसी थर्ड पार्टी सेवाएं शामिल होने की संभावना है, जो इन-हाउस निर्मित अन्य सेवाओं के साथ संयोजित होंगी. इसमें कई ग्राहकों और ग्राहक उपयोगों के लिए लागत के प्रसार की क्षमता है और यह उद्योगों के अंदर और उनके बीच, दोनों ही रूप में मानकीकरण को बढ़ावा देता है। विशेष रूप से, अब यात्रा उद्योग में सेवाओं और डेटा दोनों के पूर्ण रूप से परिभाषित और दस्तावेजीकृत समुच्चय उपलब्ध हैं, जो ऑफ़-द-शेल्फ सोफ्टवेयर सेवाओं का उपयोग करते हुए, किसी भी सक्षम सोफ्टवेयर इंजिनियर को ट्रेवल एजेंसी सोफ्टवेयर के निर्माण के लिए पर्याप्त हैं।
अन्य उद्योग, जैसे कि वित्त उद्योगने भी इस दिशा में महत्वपूर्ण प्रगति करना शुरू कर दिया है।

एक आर्किटेक्चर के रूप में SOA अपने मूल डिजाइन-तत्त्व के रूप में सर्विस ओरिएंटेशन पर निर्भर करता है। यदि सर्विस एक साधारण इंटरफेस पेश करे जो इसमें अन्तर्निहित जटिलता को अलग रखता हो, तो उपयोगकर्ता सेवा के प्लेटफोर्म कार्यान्वयन के ज्ञान के बिना स्वतंत्र सेवाओं का उपयोग कर सकते हैं।

SOA एसे इंटरफेस के जरिए अपनी कार्यक्षमता को दर्शाने वाली सेवाओं पर निर्भर करता है जो अन्य अनुप्रयोग (एप्लिकेशन) और सेवाएं पढ़ कर इन सेवाओं का उपयोग कैसे किया जाये वह समझ सकती हैं।

कार्यों के प्रतिरूपकता के माध्यम से या वर्ग नामक पूर्वनिर्धारित क्रिया समूहों के उपयोग के द्वारा सोफ्टवेयर पुनरुपयोग को बढ़ावा देने के पूर्व प्रयासों की विशिष्ट प्रथाओं के सापेक्ष, SOA ओब्जेक्ट्स अक्सर 100 से 1000 गुना तक बड़े होते हैं।

SOA और नेटवर्क प्रबंधन आर्किटेक्चर
SOA की आलोचना
परिचय
विवरण