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

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

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

इंटरफेस
नीचे दिए गए उदाहरण में दो प्रकार के कॉम्पोनेंट इंटरफेस दिखाए गए हैं:
दप्रदान किया गया इंटरफेसअंत में पूरी तरह से गोल वाले प्रतीक के साथ इंटरफेस को दर्शाता है जो कॉम्पोनेंट प्रदान करता है—“लॉलीपॉप” प्रतीक एक इंटरफेस क्लासिफायर के कार्यान्वयन संबंध के लिए एक संक्षिप्त नोटेशन है।
दआवश्यक इंटरफेसअंत में आधा वृत्त (जिसे सॉकेट भी कहा जाता है) के साथ प्रतीक के साथ इंटरफेस को दर्शाता है जो कॉम्पोनेंट की आवश्यकता होती है (दोनों मामलों में, इंटरफेस का नाम प्रतीक के निकट रखा जाता है)।

कॉम्पोनेंट डायग्राम उदाहरण – इंटरफेस का उपयोग करके (ऑर्डरिंग सिस्टम)

उप-प्रणालियाँ
एक उप-प्रणाली वर्गीकरण एक कॉम्पोनेंट वर्गीकरण की विशिष्ट रूपांतर है। इसलिए, उप-प्रणाली नोटेशन तत्व को कॉम्पोनेंट नोटेशन के सभी नियमों का उत्तरदायित्व मिलता है। एकमात्र अंतर यह है कि उप-प्रणाली सिंबल तत्व “कॉम्पोनेंट” के बजाय “उप-प्रणाली” शब्द का उपयोग करता है।

पोर्ट्स
पोर्ट्स को एक घटक या प्रणाली के किनारे पर वर्गों द्वारा दर्शाया जाता है। इनका उपयोग आमतौर पर घटक के आवश्यक और प्रदान किए गए इंटरफेस को प्रकट करने के लिए किया जाता है।

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

घटक आरेख उदाहरण – संस्करण के साथ सी++ कोड

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

भौतिक डेटाबेस मॉडलिंग
- मॉडल में वे क्लासेस की पहचान करें जो तार्किक डेटाबेस स्कीमा का प्रतिनिधित्व करते हैं।
- इन क्लासेस को तालिकाओं में मैप करने के लिए रणनीति चुनें। आपको डेटाबेस के भौतिक वितरण को भी ध्यान में रखना होगा। आपकी मैपिंग रणनीति इस बात पर प्रभावित होगी कि आप डेटा को डेप्लॉय की गई प्रणाली में कहाँ स्थिर रखना चाहते हैं।
- मैपिंग को दृश्य रूप से दिखाने, निर्दिष्ट करने, निर्माण करने और दस्तावेज़ीकरण करने के लिए, तालिकाओं के रूप में निर्मित घटकों वाला एक घटक आरेख बनाएं।
- जहां संभव हो, तार्किक डिज़ाइन को भौतिक डिज़ाइन में बदलने में आपकी मदद करने के लिए उपकरणों का उपयोग करें।
अभी एक UML घटक आरेख बनाने की कोशिश करें
आपने अब जान लिया है कि घटक आरेख क्या है और इसे कैसे बनाया जाता है। अब अपना खुद का बनाने का समय है। प्राप्त करें विज़ुअल पैराडाइम कम्युनिटी संस्करण, एक मुफ्त UML उपकरण, और मुफ्त का उपयोग करें घटक आरेख उपकरण के लिए अपना खुद का बनाएं। इसका उपयोग करना आसान है और स्वाभाविक है।
संबंधित लिंक
- यूनिफाइड मॉडलिंग भाषा क्या है?
- प्रोफेशनल UML उपकरण
- विजुअल पैराडाइग्म। (n.d.)। एक कंपोनेंट डायग्राम कैसे बनाएं? विजुअल पैराडाइग्म।https://www.visual-paradigm.com/support/documents/vpuserguide/94/2581/7292_drawingcompo.html 42.
- विजुअल पैराडाइग्म। (2018, 11 मई)। एक कंपोनेंट डायग्राम क्या है? विजुअल पैराडाइग्म।https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-component-diagram/ 43.
- विजुअल पैराडाइग्म। (n.d.)। UML में एक कंपोनेंट डायग्राम कैसे बनाएं? विजुअल पैराडाइग्म।https://www.visual-paradigm.com/tutorials/how-to-draw-component-diagram-in-uml/ 44.
- विजुअल पैराडाइग्म। (n.d.)। कंपोनेंट डायग्राम – UML 2 डायग्राम – UML मॉडलिंग टूल। विजुअल पैराडाइग्म।https://www.visual-paradigm.com/VPGallery/diagrams/Component.html 45.
- विजुअल पैराडाइग्म। (n.d.)। विजुअल पैराडाइग्म में कंपोनेंट डायग्राम। विजुअल पैराडाइग्म।https://www.visual-paradigm.com/support/documents/vpuserguide/94/2581_componentdia.html 46.
- विजुअल पैराडाइग्म कम्युनिटी सर्कल। (2018, 11 मई)। 7। कंपोनेंट डायग्राम। विजुअल पैराडाइग्म।https://circle.visual-paradigm.com/docs/uml-and-sysml/component-diagram/ 47.
- विजुअल पैराडाइग्म ऑनलाइन। (n.d.)। मुफ्त कंपोनेंट डायग्राम टूल। विजुअल पैराडाइग्म।https://online.visual-paradigm.com/diagrams/solutions/free-component-diagram-tool/ 48.
- विजुअल पैराडाइग्म ऑनलाइन। (n.d.)। कंपोनेंट डायग्राम ट्यूटोरियल। विजुअल पैराडाइग्म।https://online.visual-paradigm.com/tutorials/component-diagram-tutorial/ 49.
- विजुअल पैराडाइग्म। (2022, 2 सितंबर)। UML क्लास डायग्राम ट्यूटोरियल। विजुअल पैराडाइग्म।https://www.visual-paradigm.com/guide/uml-unified-modeling-language/uml-class-diagram-tutorial/ 50.
- विजुअल पैराडाइग्म ऑनलाइन। (n.d.)। ऑनलाइन UML डायग्राम टूल। विजुअल पैराडाइग्म।https://online.visual-paradigm.com/diagrams/features/uml-tool/ 51.





