समग्र संरचना आरेख

एकीकृत मॉडलिंग भाषा (यूएमएल) में समग्र संरचना आरेख एक प्रकार का स्थिर संरचना आरेख है, जो एक वर्ग (कंप्यूटर विज्ञान) की आंतरिक संरचना और इस संरचना द्वारा संभव बनाए गए सहयोग को दर्शाता है।

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

अवधारणाएँ
यूएमएल 2.0 विनिर्देश में पहचानी गई प्रमुख समग्र संरचना इकाइयां संरचित क्लासिफायर, पार्ट्स, पोर्ट, कनेक्टर और सहयोग हैं।
 * भाग: एक विशिष्ट ठोस वर्ग का नाम बताएं। भाग में बहुलता कारक शामिल हो सकता है, जैसे कि चित्र में व्यूअर के लिए दिखाया गया [0..*]।
 * पोर्ट: पोर्ट एक इंटरेक्शन पॉइंट है जिसका उपयोग संरचित क्लासिफायर को उनके भागों और पर्यावरण के साथ जोड़ने के लिए किया जा सकता है। बंदरगाह वैकल्पिक रूप से उन सेवाओं को निर्दिष्ट कर सकते हैं जो वे प्रदान करते हैं और जिन सेवाओं की उन्हें सिस्टम के अन्य हिस्सों से आवश्यकता होती है। आरेख में, प्रत्येक छोटा वर्ग एक बंदरगाह है। प्रत्येक पोर्ट का एक प्रकार होता है और उसे एक नाम से लेबल किया जाता है, जैसे var, indVar1 , या आरेख में देखें। बंदरगाहों में बहुलता कारक हो सकता है, उदाहरण के लिए [3]।


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


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

उदाहरण
उदाहरण के तौर पर, फाइबोनैचि अनुक्रम के मॉडलिंग उत्पादन के एक संभावित तरीके पर विचार करें।

यह यूएमएल 2.0 समग्र संरचना आरेख निर्दिष्ट करता है कि 'फाइबोनैचि सिस्टम' वर्ग के उदाहरण कई भागों से बने होते हैं। इनमें से सबसे ऊपरी हिस्से की पहचान क्लासिफायरियर 'फाइबोनैचिफंक्शन' के रूप में की गई है। तीन भागों की पहचान फाइबोनैचि सिस्टम के उदाहरणों में उनकी भूमिका से की जाती है - NMinus2 भूमिका, NMinus1 भूमिका और N भूमिका। इसके क्लासिफायरियर व्यूअर द्वारा पहचाने गए पांचवें भाग में बहुलता विशिष्टता शामिल है। रनटाइम पर व्यूअर के 0 या अधिक उदाहरण या व्यूअर के कुछ ठोस उपवर्ग हो सकते हैं।

रनटाइम पर इन तीन भूमिकाओं को लागू करने वाले क्लास इंस्टेंस को अपने var पोर्ट के माध्यम से IVar इंटरफ़ेस द्वारा निर्दिष्ट सेवाएं प्रदान करनी होंगी। ऐसा ही एक वर्ग वेरिएबल है, जिसे आरेख पर var प्रकार के var नामक पोर्ट के साथ दिखाया गया है जो IVar इंटरफ़ेस का एहसास कराता है।

व्यू नामक पोर्ट एक गैर-सार्वजनिक पोर्ट है जिसका उपयोग व्यूअर के वैकल्पिक इंस्टेंस तक पहुंचने के लिए फाइबोनैचि सिस्टम के एक इंस्टेंस द्वारा किया जा सकता है।

बाहरी संबंध

 * General information on UML including the official UML 2.0 specification. See especially the large section on Composite Structures.
 * The Xholon open-source project maintains a set of links having to do with composite structure.
 * UML 2 Composite Structure Diagrams