सेवा उन्मुख संरचना

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

सेवा उन्मुखीकरण सेवाओं और सेवा-आधारित विकास और सेवाओं के परिणामों के संदर्भ में सोचने की एक विधि है।

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

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

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

अवधारणाओं को परिभाषित करना
संबंधित मूलमंत्र सेवा-उन्मुखीकरण सेवाओं के बीच अल्प युग्मन को बढ़ावा देता है। एसओए कार्यों को विशिष्ट इकाइयों, या सेवाओं में अलग करता है, जो विकासक एक नेटवर्क पर पहुंच योग्य बनाते हैं ताकि उपयोगकर्ताओं को एप्लीकेशनों के उत्पादन में उन्हें गठबंधन और पुन: उपयोग करने की अनुमति मिल सके। ये सेवाएं और उनके संबंधित उपभोक्ता एक ठीक रूप से परिभाषित, साझा प्रारूप में डेटा पास करके या दो या दो से अधिक सेवाओं के बीच एक गतिविधि का समन्वय करके एक दूसरे के साथ संवाद करते हैं।

अक्टूबर, 2009 में सेवा-उन्मुख संरचना के लिए एक घोषणापत्र प्रकाशित किया गया था। यह छह मूल मूल्यों के साथ आया था जो इस प्रकार सूचीबद्ध हैं:

रेफरी>
 * 1) तकनीकी रणनीति की तुलना में व्यावसायिक मूल्य को अधिक महत्व दिया जाता है।
 * 2) परियोजना-विशिष्ट लाभों की तुलना में रणनीतिक लक्ष्यों को अधिक महत्व दिया जाता है।
 * 3) कस्टम एकीकरण की तुलना में अंतस्थ अंतरप्रचालनीयता को अधिक महत्व दिया जाता है।
 * 4) विशिष्ट-उद्देश्य कार्यान्वयन की तुलना में साझा सेवाओं को अधिक महत्व दिया जाता है।
 * 5) अनुकूलन से अधिक नम्यता को महत्व दिया जाता है।
 * 6) प्रारंभिक पूर्णता की खोज की तुलना में विकासवादी शोधन को अधिक महत्व दिया जाता है।

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

सिद्धांत
सेवा-उन्मुख संरचना की यथार्थ संरचना से संबंधित कोई उद्योग मानक नहीं हैं, यद्यपि कई उद्योग स्रोतों ने अपने सिद्धांतों को प्रकाशित किया है। इनमें से कुछ में निम्नलिखित सम्मिलित हैं:
 * मानकीकृत सेवा अनुबंध
 * सेवाएं एक मानक संचार समझौते का पालन करती हैं, जैसा कि सेवाओं के दिए गए समूह के भीतर एक या अधिक सेवा-विवरण लेखों द्वारा सामूहिक रूप से परिभाषित किया गया है।


 * सेवा संदर्भ स्वायत्तता (अल्प युग्मन का एक रूप)
 * सेवाओं के बीच संबंध को इस स्तर तक कम कर दिया जाता है कि वे मात्र अपने अस्तित्व के विषय में जानते हैं।


 * सेवा स्थान पारदर्शिता (अल्प युग्मन का एक रूप)
 * सेवाओं को नेटवर्क के भीतर कहीं से भी कॉल किया जा सकता है कि यह स्थित है चाहे वह कहीं भी स्थित हो।


 * सेवा दीर्घायु
 * सेवाओं को लंबे समय तक रहने के लिए डिज़ाइन किया जाना चाहिए। जहां संभव हो सेवाओं को उपभोक्ताओं को बदलने के लिए बाध्य करने से बचना चाहिए यदि उन्हें नवीन सुविधाओं की आवश्यकता नहीं है, यदि आप आज किसी सेवा को कॉल करते हैं तो आप कल उसी सेवा को कॉल करने में सक्षम होंगे।


 * सेवा अमूर्त
 * सेवाएं काले कोष्ठ के रूप में कार्य करती हैं, अर्थात उनका आंतरिक तर्क उपभोक्ताओं से छिपा होता है।


 * सेवा स्वायत्तता सिद्धांत
 * सेवाएँ स्वतंत्र होती हैं और डिज़ाइन-अवधि और कार्य अवधि के दृष्टिकोण से उनके द्वारा संपुटित की जाने वाली कार्यक्षमता को नियंत्रित करती हैं।


 * सेवा अराष्टिकता सिद्धांत
 * सेवाएँ राज्यविहीन हैं, जो या तो अनुरोधित मान लौटाती हैं या एक अपवाद देती हैं इसलिए संसाधन उपयोग को कम करती हैं।


 * सेवा कमिकार्ययता सिद्धांत
 * यह सुनिश्चित करने का सिद्धांत कि सेवाओं का पर्याप्त आकार और कार्यक्षेत्र हो। उपयोगकर्ता को सेवा द्वारा प्रदान की जाने वाली कार्यक्षमता प्रासंगिक होनी चाहिए।


 * सेवा सामान्यीकरण
 * अतिरेक को कम करने के लिए सेवाओं को विघटित या समेकित (सामान्यीकृत) किया जाता है। कुछ में, यह नहीं किया जा सकता है। ये ऐसी स्थिति हैं जहां निष्पादन अनुकूलन, पहुंच और एकत्रीकरण की आवश्यकता होती है।


 * सेवा रचना सिद्धांत
 * सेवाओं का उपयोग अन्य सेवाओं की रचना के लिए किया जा सकता है।


 * सेवा खोज
 * सेवाओं को संचारी मेटा डेटा के साथ पूरक किया जाता है जिसके द्वारा उन्हें प्रभावी रूप से खोजा और समझा जा सकता है।


 * सेवा पुन: प्रयोज्य सिद्धांत
 * कोड के पुन: उपयोग को बढ़ावा देने के लिए तर्क को विभिन्न सेवाओं में विभाजित किया गया है।


 * सेवा संपुटीकरण (कंप्यूटर विज्ञान)
 * कई सेवाएँ जो प्रारंभ में एसओए के अंतर्गत योजनाबद्ध नहीं थीं, संक्षिप्त हो सकती हैं या एसओए का भाग बन सकती हैं।

प्रतिरूप
प्रत्येक एसओए रचक खंड तीन में से कोई भी भूमिका निभा सकता है:


 * सेवा प्रदाता
 * यह एक वेब सेवा बनाता है और इसकी सूचना सेवा पंजीकरण को प्रदान करता है। प्रत्येक प्रदाता इस बात पर चर्चा करता है कि कैसे और क्यों जैसे किस सेवा को प्रदर्शित करना है, किसे अधिक महत्व देना है: सुरक्षा या सरल उपलब्धता, किस मूल्य पर सेवा की प्रस्तुति की जाए और बहुत कुछ। प्रदाता को यह भी निर्धारित करना होगा कि दी गई मध्यस्थ सेवा के लिए सेवा को किस श्रेणी में सूचीबद्ध किया जाना चाहिए और सेवा का उपयोग करने के लिए किस प्रकार के व्यापारिक भागीदार अनुबंधों की आवश्यकता है।


 * सेवा मध्यस्थ, सेवा पंजीकरण या सेवा कोष
 * इसकी मुख्य कार्यक्षमता किसी भी संभावित अनुरोधकर्ता को वेब सेवा से संबंधित सूचना उपलब्ध कराना है। जो भी मध्यस्थ को लागू करता है वह मध्यस्थ का कार्यक्षेत्र निर्धारित करता है। सार्वजनिक मध्यस्थ कहीं भी और प्रत्येक स्थान पर उपलब्ध हैं, परन्तु व्यक्तिगत मध्यस्थ मात्र सीमित मात्रा में जनता के लिए उपलब्ध हैं। यूडीडीआई एक प्रारंभिक, अब सक्रिय रूप से समर्थित प्रयत्न नहीं था, वेब सेवा खोज प्रदान करने का प्रयत्न था।


 * सेवा निवेदक/उपभोक्ता
 * यह विभिन्न खोज कार्यों का उपयोग करके मध्यस्थ पंजीकरण में प्रविष्टियों का पता लगाता है और फिर सेवा प्रदाता को अपनी वेब सेवाओं में से एक का आह्वान करने के लिए बाध्य करता है। सेवा-उपभोक्ताओं को जिस भी सेवा की आवश्यकता होती है, उसे मध्यस्थों में लेना होता है, उसे संबंधित सेवा से जोड़ना होता है और फिर उसका उपयोग करना होता है। यदि सेवा एकाधिक सेवाएं प्रदान करती है तो वे एकाधिक सेवाओं तक पहुंच सकते हैं।

सेवा उपभोक्ता-प्रदाता संबंध एक मानकीकृत सेवा अनुबंध द्वारा नियंत्रित होता है, जिसमें एक व्यावसायिक भाग, एक कार्यात्मक भाग और एक तकनीकी भाग होता है।

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

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

कार्यान्वयनकर्ता सामान्यतः वेब सेवा मानकों का उपयोग करके एसओए का निर्माण करते हैं। एक उदाहरण एसओएपी है, जिसने 2003 में डब्ल्यू3सी के संस्करण 1.2 की संस्तुति के बाद व्यापक उद्योग स्वीकृति प्राप्त की है ( विश्व व्यापी वेब संघ )। ये मानक (वेब ​​सेवा विनिर्देशों की सूची के रूप में भी संदर्भित) अधिक अंतर-क्षमता और अभिबद्ध से सांपातिक विक्रेता सॉफ़्टवेयर के लिए कुछ सुरक्षा प्रदान करते हैं। यद्यपि, कोई अन्य सेवा-आधारित तकनीक, जैसे जिनि, कोरबा, इंटरनेट संचार इंजन, प्रतिनिधित्ववादी स्थिति में स्थानांतरण या जीआरपीसी का उपयोग करके भी एसओए को लागू कर सकता है।

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

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

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

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

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

संगठनात्मक लाभ
कुछ उद्यम वास्तुकारों का मानना ​​है कि एसओए व्यवसायों को बाजार की स्थितियों को बदलने के लिए अधिक तीव्रता से और अधिक लागत प्रभावी रूप से प्रतिक्रिया करने में सहायता कर सकता है। संरचना की यह शैली सूक्ष्म (कक्षाओं) स्तर के अतिरिक्त समष्टि (सेवा) स्तर पर पुन: उपयोग को बढ़ावा देती है। यह वर्तमान आईटी (धरोहर) गुण के साथ-और उनके उपयोग को भी सरल बना सकता है।

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

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

एक सेवा में मात्र सुव्यवस्थित रूप से परिभाषित अंतराफलक के माध्यम से उपलब्ध कार्यक्षमता की एक स्टैंड-अलोन इकाई सम्मिलित होती है। सेवाएँ कुछ प्रकार के नैनो-उद्यम हो सकती हैं जिनका उत्पादन और सुधार करना सरल है। अधीनस्थ सेवाओं के समन्वित कार्य के रूप में निर्मित मेगा-कॉरपोरेशन भी सेवाएँ हो सकती हैं।

सेवाओं के कार्यान्वयन को बड़ी परियोजनाओं से अलग परियोजनाओं के रूप में मानने के कारणों में सम्मिलित हैं:
 * 1) पृथक्करण व्यवसाय की अवधारणा को बढ़ावा देता है कि संगठन में सामान्यतः बड़ी और धीमी गति से चलने वाली परियोजनाओं से सेवाओं को शीघ्रता और स्वतंत्र रूप से वितरित किया जा सकता है। व्यवसाय सेवाओं पर कॉल करने वाले प्रणाली और सरलीकृत उपयोगकर्ता अंतराफलक को समझना शुरू करता है। यह चपलता की वकालत करता है। कहने का तात्पर्य यह है कि यह व्यावसायिक नवाचारों को बढ़ावा देता है और समय-समय पर बाजार को गति देता है।
 * 2) पृथक्करण उपभोग करने वाली परियोजनाओं से सेवाओं को अलग करने को बढ़ावा देता है। यह ठीक डिज़ाइन को प्रोत्साहित करता है क्योंकि सेवा को यह जाने बिना डिज़ाइन किया गया है कि इसके उपभोक्ता कौन हैं।
 * 3) सेवा के लेख़ीकरण और परीक्षण कलाकृतियों को बड़ी परियोजना के विवरण में एम्बेड नहीं किया गया है। यह महत्वपूर्ण है जब सेवा को बाद में पुन: उपयोग करने की आवश्यकता हो।

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

किसी सेवा को उस स्तर तक प्रलेखित करने में सहायता के लिए उदाहरण उपयोगी साबित हो सकते हैं जहां वह उपयोगी हो जाती है। जावा कम्युनिटी प्रोसेस के भीतर कुछ एपीआई के लेख ठीक उदाहरण प्रदान करते हैं। चूंकि ये संपूर्ण हैं, कर्मचारी सामान्यतः मात्र महत्वपूर्ण उपसमुच्चय का उपयोग करेंगे। जावा Platform, Standard Edition|JSR-89 के भीतर 'ossjsa.pdf' फ़ाइल ऐसी फ़ाइल का उदाहरण है।

आलोचना
एसओए को वेब सेवाओं के साथ मिला दिया गया है; यद्यपि, एसओए शैली को सम्मिलित करने वाले प्रतिरूप को लागू करने के लिए वेब सेवाएँ मात्र एक विकल्प हैं। दूरस्थ प्रक्रिया कॉल (RPC) के देशी या बाइनरी रूपों की अनुपस्थिति में, एप्लीकेशन अधिक धीमी गति से चल सकते हैं और अधिक प्रसंस्करण शक्ति की आवश्यकता होती है, बढ़ती लागत। अधिकांश कार्यान्वयन इन ओवरहेड्स को लागू करते हैं, परन्तु एसओए को प्रौद्योगिकियों (उदाहरण के लिए, जावा बिजनेस एकीकरण (JBI), विंडोज कम्युनिकेशन संस्थान (WCF) और डेटा वितरण सेवा (DDS)) का उपयोग करके लागू किया जा सकता है, जो दूरस्थ प्रक्रिया कॉल या अनुवाद पर निर्भर नहीं होते हैं। एक्सएमएल या जेएसओएन। इसी समय, उभरती ओपन-सोर्स एक्सएमएल पार्सिंग टेक्नोलॉजीज (जैसे वीटीडी-एचएमएल ) और विभिन्न एक्सएमएल-संगत बाइनरी प्रारूपों ने एसओए निष्पादन में काफी सुधार करने का वादा किया है। स्टेटफुल सेवाओं के लिए उपभोक्ता और प्रदाता दोनों को समान उपभोक्ता-विशिष्ट संदर्भ साझा करने की आवश्यकता होती है, जो या तो प्रदाता और उपभोक्ता के बीच आदान-प्रदान संदेशों में सम्मिलित या संदर्भित होता है। इस बाधा में यह कमी है कि यदि सेवा प्रदाता को प्रत्येक उपभोक्ता के लिए साझा संदर्भ बनाए रखने की आवश्यकता होती है तो यह सेवा प्रदाता की समग्र मापनीयता को कम कर सकता है। यह एक सेवा प्रदाता और एक उपभोक्ता के बीच युग्मन को भी बढ़ाता है और सेवा प्रदाताओं को बदलने को और अधिक कठिन बना देता है। अंतत:, कुछ आलोचकों का मानना ​​है कि एसओए सेवाएं अभी भी उन एप्लीकेशनों द्वारा सीमित हैं जिनका वे प्रतिनिधित्व करते हैं। सेवा-उन्मुख संरचना द्वारा सामना की जाने वाली प्राथमिक चुनौती मेटाडेटा का प्रबंधन है। एसओए पर आधारित वातावरण में कई सेवाएँ सम्मिलित हैं जो कार्य करने के लिए एक दूसरे के बीच संचार करती हैं। इस तथ्य के कारण कि डिज़ाइन में संयोजन में कार्य करने वाली कई सेवाएँ सम्मिलित हो सकती हैं, एक एप्लिकेशन लाखों संदेश उत्पन्न कर सकता है। आगे की सेवाएं विभिन्न संगठनों या यहां तक ​​कि प्रतिस्पर्धी फर्मों से संबंधित हो सकती हैं जो एक विशाल भरोसे का स्थिति बना रही हैं। इस प्रकार एसओए शासन चीजों की योजना में आता है। एसओए द्वारा सामना की जाने वाली एक और बड़ी समस्या एक समान परीक्षण ढांचे की कमी है। ऐसे कोई उपकरण नहीं हैं जो सेवा-उन्मुख संरचना में इन सेवाओं के परीक्षण के लिए आवश्यक सुविधाएँ प्रदान करते हों। कठिनाई के प्रमुख कारण हैं:
 * विषमता और हल की जटिलता।
 * स्वायत्त सेवाओं के एकीकरण के कारण परीक्षण संयोजनों का विशाल समूह।
 * विभिन्न और प्रतिस्पर्धी विक्रेताओं से सेवाओं का समावेश।
 * नवीन सुविधाओं और सेवाओं की उपलब्धता के कारण एक सेवा के रूप में प्लेटफॉर्म लगातार बदल रहा है।

एप्लिकेशन प्रोग्रामन अंतराफलक
एप्लिकेशन प्रोग्रामन अंतराफलक (एपीआई) ऐसे ढांचे हैं जिनके माध्यम से विकासक वेब एप्लिकेशन के साथ बातचीत कर सकते हैं।

वेब 2.0
टिम ओ'रेली ने वेब 2.0 शब्द को वेब-आधारित एप्लीकेशनों के कथित, तीव्रता से बढ़ते समूह का वर्णन करने के लिए गढ़ा। एक विषय जिसने व्यापक कवरेज का अनुभव किया है, उसमें वेब 2.0 और सेवा-उन्मुख संरचना के बीच संबंध सम्मिलित है।

एसओए समान रूप से परिभाषित अंतराफलक के साथ सेवाओं में एप्लिकेशन लॉजिक को संपुटित करने और डिस्कवरी मैकेनिज्म के माध्यम से इन्हें सार्वजनिक रूप से उपलब्ध कराने का दर्शन है। जटिलता-छिपाने और पुन: उपयोग की धारणा, परन्तु शिथिल युग्मन सेवाओं की अवधारणा ने भी शोधकर्ताओं को दो दर्शन, एसओए और वेब 2.0, और उनके संबंधित एप्लीकेशनों के बीच समानता पर विस्तार करने के लिए प्रेरित किया है। कुछ लोगों का तर्क है कि वेब 2.0 और एसओए में महत्वपूर्ण रूप से भिन्न तत्व हैं और इस प्रकार समानांतर दर्शन नहीं माना जा सकता है, जबकि अन्य दो अवधारणाओं को पूरक मानते हैं और वेब 2.0 को वैश्विक एसओए मानते हैं। वेब 2.0 और एसओए के दर्शन अलग-अलग उपयोगकर्ता की जरूरतों को पूरा करते हैं और इस प्रकार डिजाइन और वास्तविक दुनिया के एप्लीकेशनों में उपयोग की जाने वाली तकनीकों के संबंध में मतभेदों को प्रदर्शित करते हैं। यद्यपि,, उपयोग-स्थितियों ने वेब 2.0 और एसओए दोनों की तकनीकों और सिद्धांतों के संयोजन की क्षमता का निष्पादन किया।

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

इंटरैक्टिव एप्लीकेशनों के लिए सेवा-उन्मुख संरचना
वास्तविक समय प्रतिक्रिया समय की आवश्यकता वाले इंटरएक्टिव एप्लिकेशन, उदाहरण के लिए कम-विलंबता इंटरैक्टिव 3डी एप्लिकेशन, इस प्रकार के एप्लीकेशनों की विशिष्ट आवश्यकताओं को संबोधित करने वाले विशिष्ट सेवा उन्मुख संरचना का उपयोग कर रहे हैं। इनमें निम्न-विलंबता अनुकूलित वितरित संगणना और संचार के साथ-साथ संसाधन और उदाहरण प्रबंधन सम्मिलित हैं।

यह भी देखें

 * अप्लिकेशन प्रोग्रामन अंतरफलक
 * लूस युग्मन
 * ओएसिस एसओए संदर्भ मॉडल
 * सेवा कमिकार्ययता सिद्धांत
 * एसओए शासन
 * सॉफ़्टवेयर वास्तुशिल्प
 * सेवा उन्मुख संचार (एसओसी)
 * एप्लीकेशनों का सेवा-उन्मुख विकास
 * सेवा-उन्मुख वितरित एप्लीकेशन
 * वेब एप्लिकेशन विवरण भाषा