कॉम्पोनेंट डायग्राम क्या है?

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

Component Diagram Hierarchy

कॉम्पोनेंट डायग्राम्स का ओवरव्यू

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

कॉम्पोनेंट डायग्राम्स की मूल अवधारणाएं

एक कॉम्पोनेंट सिस्टम के एक मॉड्यूलर हिस्से का प्रतिनिधित्व करता है, जो अपनी सामग्री को एनकैप्सुलेट करता है और जिसका व्यवहार अपने वातावरण में प्रतिस्थापित किया जा सकता है। यूएमएल 2 में, एक कॉम्पोनेंट को एक ऊर्ध्वाधर रूप से लगाए गए वैकल्पिक कॉम्पार्टमेंट के साथ एक आयत के रूप में बनाया जाता है। यूएमएल 2 में एक कॉम्पोनेंट के उच्च स्तरीय अमूर्त दृश्य को निम्नलिखित तरीके से मॉडल किया जा सकता है:
  1. कॉम्पोनेंट नाम के साथ एक आयत
  2. कॉम्पोनेंट आइकन के साथ एक आयत
  3. स्टेरियोटाइप पाठ और/या आइकन के साथ एक आयत
Appearance of a Component

इंटरफेस

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

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

Component Diagram Example with Interfaces

उप-प्रणालियाँ

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

पोर्ट्स

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

संबंध

ग्राफिकल रूप से, एक घटक आरेख निर्देशांक और चापों का समूह होता है, जिसमें आमतौर पर घटक, इंटरफेस और निर्भरता, एग्रीगेशन, सीमा, सामान्यीकरण, संबंध और वास्तविकी जैसे संबंध शामिल होते हैं। इसमें नोट्स और सीमाएं भी शामिल हो सकती हैं।
संबंध प्रतीक
संबंध:

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

Component Diagram: Association




संघटन:

  • संघटन एग्रीगेशन का एक मजबूत रूप है, जिसमें एक उदाहरण को अधिकतम एक संघटित में शामिल होना आवश्यक है।
  • यदि संघटित को हटा दिया जाता है, तो इसके भाग आमतौर पर हटा दिए जाते हैं।

Component Diagram: Composition




एग्रीगेशन:

  • एक संबंध का रूप जहां एक छोर को साझा एग्रीगेशन के रूप में चिह्नित किया गया है, जिसका अर्थ है कि इसमें साझा एग्रीगेशन है।

Component Diagram: Aggregation




सीमा:

  • एक तत्व के कुछ अर्थों की घोषणा करने के लिए प्राकृतिक भाषा के पाठ या मशीन-पठनीय भाषा में व्यक्त एक शर्त या सीमा।

Component Diagram: Constraint




निर्भरता:

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

Component Diagram: Dependency




सामान्यीकरण:

  • एक अधिक सामान्य वर्गीकरण और एक अधिक विशिष्ट वर्गीकरण के बीच एक वर्गीकरण संबंध।
  • विशिष्ट वर्गीकरण का प्रत्येक उदाहरण एक अप्रत्यक्ष उदाहरण भी है सामान्य वर्गीकरण का।
  • इसलिए, विशिष्ट वर्गीकरण अधिक सामान्य वर्गीकरण से विशेषताएं विरासत में प्राप्त करता है।

Component Diagram: Generalization




स्रोत कोड मॉडलिंग

  • आगे या पीछे के इंजीनियरिंग के माध्यम से रुचि के स्रोत कोड फ़ाइलों के सेट की पहचान करें, और उन्हें फ़ाइलों के रूप में निर्मित घटकों के रूप में मॉडल करें।
  • बड़े प्रणाली के लिए, स्रोत कोड फ़ाइलों के समूहों को प्रदर्शित करने के लिए पैकेज का उपयोग करें।
  • स्रोत कोड फ़ाइल के संस्करण संख्या, लेखक और अंतिम संशोधित तिथि जैसी जानकारी का प्रतिनिधित्व करने के लिए टैग किए गए मान शामिल करने के बारे में सोचें। इन टैग किए गए मानों के मूल्यों को प्रबंधित करने के लिए उपकरणों का उपयोग करें।
  • इन फ़ाइलों के बीच संकलन निर्भरता को मॉडल करने के लिए निर्भरताओं का उपयोग करें। इसी तरह, इन निर्भरताओं को उत्पन्न और प्रबंधित करने में मदद करने के लिए उपकरणों का उपयोग करें।
घटक उदाहरण – जावा स्रोत कोड
Component Diagram Example: Java Source Code
घटक आरेख उदाहरण – संस्करण के साथ सी++ कोड
Component Diagram Example: C++ Code with Versioning

कार्यान्वित रिलीज़ का मॉडलिंग

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

भौतिक डेटाबेस मॉडलिंग

  • मॉडल में वे क्लासेस की पहचान करें जो तार्किक डेटाबेस स्कीमा का प्रतिनिधित्व करते हैं।
  • इन क्लासेस को तालिकाओं में मैप करने के लिए रणनीति चुनें। आपको डेटाबेस के भौतिक वितरण को भी ध्यान में रखना होगा। आपकी मैपिंग रणनीति इस बात पर प्रभावित होगी कि आप डेटा को डेप्लॉय की गई प्रणाली में कहाँ स्थिर रखना चाहते हैं।
  • मैपिंग को दृश्य रूप से दिखाने, निर्दिष्ट करने, निर्माण करने और दस्तावेज़ीकरण करने के लिए, तालिकाओं के रूप में निर्मित घटकों वाला एक घटक आरेख बनाएं।
  • जहां संभव हो, तार्किक डिज़ाइन को भौतिक डिज़ाइन में बदलने में आपकी मदद करने के लिए उपकरणों का उपयोग करें।
Component Diagram for Modeling Physical Database


अभी एक UML घटक आरेख बनाने की कोशिश करें

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

Leave a Reply