UML क्या है?
यूनिफाइड मॉडलिंग लैंग्वेज एक खुला मानक ग्राफिकल नोटेशन है जो सिस्टम विकास के लिए प्रस्तावित ऑब्जेक्ट मैनेजमेंट ग्रुप द्वारा दिया गया है। नोटेशन बूच, रुम्बॉग और जैकोबसन के कार्य पर आधारित है। UML एक मॉडलिंग भाषा है जो दस्तावेजों, सॉफ्टवेयर को व्यक्त करने और डिज़ाइन करने के लिए उपयोगी है, विशेष रूप से ऑब्जेक्ट-ओरिएंटेड डिज़ाइन के लिए। भाषा का उपयोग सामान्य प्रारंभिक डिज़ाइन से लेकर बहुत विस्तृत विस्तृत डिज़ाइन तक पूरे सॉफ्टवेयर विकास चक्र में किया जा सकता है। UML की परिभाषा निम्नलिखित के रूप में परिभाषित की गई है:
- यूनिफाइड मॉडलिंग लैंग्वेज ( UML ) सॉफ्टवेयर सिस्टम के मॉडलिंग और विकास के लिए एक ग्राफिकल भाषा है। UML डायग्राम विकासकर्ता द्वारा सॉफ्टवेयर विकास के सभी चरणों के बारे में चर्चा करने के लिए एक सामान्य कार्य उत्पाद बन जाते हैं, जिसमें आवश्यकता विश्लेषण, डिज़ाइन और कार्यान्वयन शामिल हैं। यहाँ लक्ष्य इस सॉफ्टवेयर सिस्टम को बनाने से पहले इसका मॉडल बनाना है।
- उद्धरण: “यूनिफाइड मॉडलिंग लैंग्वेज (UML) एक ग्राफिकल नोटेशन का परिवार है, जो एक एकल मेटा-मॉडल द्वारा समर्थित है, जो सॉफ्टवेयर सिस्टम का वर्णन और डिज़ाइन करने में मदद करता है, विशेष रूप से ऑब्जेक्ट-ओरिएंटेड (OO) शैली का उपयोग करके बनाए गए सॉफ्टवेयर सिस्टम के लिए।” [मार्टिन फाउलर – UML Distilled] पृष्ठ 1।
UML क्यों?
जैसे-जैसे सॉफ्टवेयर आर्किटेक्चर का आकार और जटिलता बढ़ती है, सॉफ्टवेयर मॉडल की आवश्यकता भी बढ़ती है। UML सॉफ्टवेयर उद्योग की प्रमुख मॉडलिंग भाषा है। यह वर्तमान में विश्व के सबसे बड़े सॉफ्टवेयर संघ, ऑब्जेक्ट मैनेजमेंट ग्रुप द्वारा अपनाई गई एक डी फैक्टो मानक है। ऐसे सॉफ्टवेयर प्रोजेक्ट को ढूंढना मुश्किल है जिसमें 10 से अधिक विकासकर्ता हों और जो अपनी आर्किटेक्चर को निर्दिष्ट करने के लिए UML का किसी भी तरीके से उपयोग न करें।
हमारे सॉफ्टवेयर विकास प्रक्रिया में UML के उपयोग के लिए कुछ और तथ्य यहाँ दिए गए हैं:
- सॉफ्टवेयर बढ़ते-बढ़ते अधिक जटिल हो रहा है: विंडोज एक्सपी का एक बहुत पुराना संस्करण > 40 मिलियन लाइन कोड।
- एक एकल प्रोग्रामर इस मात्रा में कोड को पूरी तरह से प्रबंधित नहीं कर सकता है।
- कोड उन विकासकर्ताओं के लिए आसानी से समझ में नहीं आता है जिन्होंने इसे नहीं लिखा है।
- हमें जटिल प्रणालियों के लिए सरल प्रतिनिधित्व की आवश्यकता है: मॉडलिंग जटिलता से निपटने का एक तरीका है।
मॉडल क्या है?
- एक मॉडल वास्तविक चीज का एक अमूल्य रूप है, जिसमें विवरण छोड़ दिए जाते हैं।
- “आपके सिस्टम का वर्णन करने वाले सभी तत्वों का संग्रह, जिसमें उनके एक दूसरे से जुड़े होने के तरीके भी शामिल हैं, आपके मॉडल का गठन करते हैं।” (रस और हैमिल्टन 12).
जब हम UML का उपयोग सॉफ्टवेयर को कोड करने से पहले विकासाधीन प्रणाली के मॉडल बनाने के लिए करते हैं, तो वे समस्या को सरल तरीके से प्रस्तुत करते हैं। वे समस्या के समाधान के लिए एक संरचना प्रदान करते हैं। वे समस्या के साथ कैसे आगे बढ़ा जा सकता है, इसे समझने में मदद करते हैं। वे विभिन्न समाधानों के प्रयोग की अनुमति भी देते हैं। चूंकि मॉडल वास्तविक प्रणाली के विकास से पहले बनाए जाते हैं, इसलिए हम विभिन्न संभावनाओं, समस्याओं, विकल्पों आदि को समझ सकते हैं। इससे विकास लागत में कमी आती है। चूंकि समय अनुकूलन और त्रुटियों में बर्बाद नहीं होता है, उत्पाद कम समय में तैयार हो जाता है। मॉडल समस्या की जटिलता को प्रबंधित करने में भी मदद करते हैं, जिससे विकास की योजना बनाना, मशीनों, प्रोग्रामरों, परीक्षकों जैसे संसाधनों के आवंटन करना आसान हो जाता है।
UML क्या नहीं है?
- UML एक नोटेशन नहीं है, लेकिन यह एक भाषा है।
- UML किसी के पास नहीं है। इसका उपयोग करना चाहने वाले हर किसी के लिए खुला है। यह स्वामित्व वाला नहीं है।
- UML प्रक्रिया या एक विधि नहीं है।
- UML ऑब्जेक्ट-ओरिएंटेड तकनीकों और आवर्ती सॉफ्टवेयर विकास चक्रों के उपयोग को प्रोत्साहित करता है।
- UML कठिन नहीं है। यह बड़ा है, लेकिन इसे पूरी तरह से जानने की आवश्यकता नहीं है। साथ ही इसके हर छोटे-छोटे बात को उपयोग या समझने की आवश्यकता नहीं है।
- UML समय लेने वाला नहीं है। यदि सही तरीके से उपयोग किया जाए, तो UML के उपयोग से विकास लागत कम हो जाती है। इसी समय इसके लाभ आसान समझ और संचार, बढ़ी हुई उत्पादकता और बेहतर गुणवत्ता होते हैं।
- UML सीमित नहीं है। यह पर्याप्त लचीला है ताकि एक विशिष्ट क्षेत्र के लिए आवश्यक नए शब्दावली (अवधारणाएं, शब्द और शब्दावली), गुण (शब्दों के बारे में अतिरिक्त जानकारी) और अर्थ (भाषा नियमों) को अनुमति दे सके।
UML का उद्देश्य
- एक दृश्य मॉडलिंग भाषा और दृश्य प्रोग्रामिंग भाषा नहीं। हालांकि कुछ मॉडलिंग टूल्स में कोड जनरेटर होते हैं और कुछ कोड से मॉडल को वापस डिज़ाइन कर सकते हैं।
- इसका उद्देश्य सॉफ्टवेयर विकास प्रक्रिया के समर्थन करने वाले डायग्राम बनाना है, हालांकि UML सॉफ्टवेयर विकास प्रक्रिया या विकास विधि नहीं है। इसलिए UML प्रक्रिया स्वतंत्र है।
- सॉफ्टवेयर ब्लूप्रिंट बनाने के लिए एक मानक भाषा।
- एक संचार उपकरण।
- आवश्यकताओं, संरचना, परीक्षण, परियोजना योजना, आदि के दस्तावेज़ीकरण के लिए एक भाषा…
- यह सॉफ्टवेयर प्रणालियों के लिए तैयार है, लेकिन अन्य प्रणालियों के मॉडलिंग के लिए भी उपयोग किया जा सकता है।
- यह वस्तु-आधारित विकास प्रक्रिया के समर्थन के लिए तैयार है।
- यह प्रणाली की निर्माण और गतिशील व्यवहार दोनों को कैप्चर कर सकता है।
- UML आरेख स्टेकहोल्डर्स को आवश्यकताओं को समझने, चर्चा करने और सहमति बनाने में मदद कर सकते हैं।
- UML आरेख जटिल प्रक्रियाओं को एक ऐसे स्तर पर सरल बनाने में मदद कर सकते हैं जिसे समझना आसान हो।
- UML आरेख समस्या समाधान को सुगम बनाने में मदद करते हैं।
मॉडलिंग भाषा क्या प्रदान करती है?
- मॉडल तत्व: अवधारणाएँ और अर्थ
- प्रतीक प्रणाली: मॉडल तत्वों का दृश्य प्रस्तुतीकरण
- निर्देशिकाएँ: प्रतीक प्रणाली में तत्वों के उपयोग के लिए सुझाव और टिप्पणियाँ
संक्षिप्त इतिहास
80 के दशक के अंत में, जब हमने मॉडलिंग शुरू की, तब बहुत सारी अलग-अलग विधियाँ थीं। और प्रत्येक विधि की अपनी अलग प्रतीक प्रणाली थी। समस्या यह थी कि अगर अलग-अलग लोग अलग-अलग प्रतीक प्रणाली का उपयोग कर रहे थे, तो किसी भी समय किसी को अनुवाद करना पड़ता था। बहुत बार एक ही प्रतीक एक प्रतीक प्रणाली में एक चीज का अर्थ रखता था, और दूसरी प्रतीक प्रणाली में पूरी तरह अलग चीज का अर्थ रखता था। 1991 में, सभी ने पुस्तकें लिखनी शुरू कर दीं। ग्रेडी बूच ने अपनी पहली संस्करण लिखी। आइवर जैकबसन ने अपनी लिखी, और जिम रुमबॉग ने अपनी OMT विधि लिखी। प्रत्येक पुस्तक के अपने बल और कमजोरियाँ थीं। OMT विश्लेषण में बहुत मजबूत थी, लेकिन डिज़ाइन में कमजोर थी। बूच विधि डिज़ाइन में मजबूत थी, लेकिन विश्लेषण में कमजोर थी। और आइवर जैकबसन की Objectory उपयोगकर्ता अनुभव में बहुत अच्छी थी, जिसे उस समय न तो बूच और न ही OMT ने विचार में लिया था। 1994 में बूच और जैकबसन ने दोनों विधियों को मिलाया और 1995 में रुमबॉग ने शामिल हो गए। UML 1.1 का विकास 1997 में OMG द्वारा किया गया, जिसमें अन्य लोगों के योगदान जैसे यौरडेन भी शामिल थे। UML v2.x सबसे वर्तमान संस्करण है।
रिलीज़ तिथियाँ
- 1995 – UML 0.8
- 1996 – UML 0.9 – तीन दोस्त
- 1997 – OMG ने ले लिया।
- 1997 – OMG UML 1.1
- 1998 – OMG UML 1.2
- 1999 – OMG UML 1.3
- 2001 – OMG UML 1.4
- 2003 – OMG UML 1.5
- 2003 – OMG UML 2.0 – अपनी गई
- 2005 – OMG UML 2.0 – अंतिम
- 2006 – OMG UML 2.1
- UML2.1.2 (11/04/07 ) – वर्तमान संस्करण 05/27/08 तक
“तीन अमेगोस” द्वारा विधि संघनन का प्रेरणा
- व्यक्तिगत विधियों के एक दूसरे की ओर स्वतंत्र रूप से विकास की तथ्य
- OO डिज़ाइन बाजार में स्थिरता लाने के लिए अर्थविज्ञान और प्रतीकात्मक चिह्नों का संघनन
- संघनन की उम्मीद कि पहले की व्यक्तिगत विधियों में सुधार होगा
UML साझेदार
- रेशनल सॉफ्टवेयर कॉर्पोरेशन
- IBM
- हेवलेट-पैकर्ड
- आई-लॉजिक्स
- आईकॉन कंप्यूटिंग
- इंटेलिकॉर्प
- एमसीआई सिस्टमहाउस
- माइक्रोसॉफ्ट
- ऑब्जेकटाइम
- ओरेकल
- प्लैटिनम तकनीक
- टास्कन
- टेक्सास इंस्ट्रूमेंट्स/स्टर्लिंग सॉफ्टवेयर
- यूनिसिस
संघनन से पहले विभिन्न विधियों के लिए UML प्रतीकात्मक चिह्न इनपुट
UML बूच, OMT और ऑब्जेक्टोरी प्रतीकात्मक चिह्नों के संघनन का प्रतिनिधित्व करता है, जैसा कि नीचे दिए गए चित्र में दिखाया गया है, और कई अन्य विधि विशेषज्ञों के सर्वोत्तम विचारों का भी। इन वस्तु-आधारित विधियों द्वारा उपयोग किए जाने वाले प्रतीकात्मक चिह्नों के संघनन से, संघनित मॉडलिंग भाषा वस्तु-आधारित विश्लेषण और डिज़ाइन के क्षेत्र में उपयोगकर्ता अनुभव के व्यापक आधार पर एक वास्तविक मानक के आधार का निर्माण करती है।
प्रतीकात्मक चिह्न की भूमिका
प्रतीकात्मक चिह्न किसी भी मॉडल में एक महत्वपूर्ण भूमिका निभाता है ”यह प्रक्रिया को एक साथ रखने वाला चिपकाव है। “प्रतीकात्मक चिह्न की तीन भूमिकाएं हैं:
- यह उन निर्णयों के संचार के लिए भाषा के रूप में कार्य करता है जो स्पष्ट नहीं हैं या कोड से स्वयं निर्वचन नहीं किए जा सकते हैं।
- यह ऐसे अर्थविज्ञान प्रदान करता है जो पर्याप्त रूप से समृद्ध हैं ताकि सभी महत्वपूर्ण रणनीतिक और रणनीतिक निर्णयों को दर्ज किया जा सके।
- यह एक ऐसा रूप प्रदान करता है जो मानवों के लिए तर्क करने और उपकरणों के लिए संचालित करने के लिए पर्याप्त ठोस है।
संघनित मॉडलिंग भाषा (UML) एक बहुत मजबूत प्रतीकात्मक चिह्न प्रदान करती है, जो विश्लेषण से डिज़ाइन में विकसित होती है। प्रतीकात्मक चिह्न के कुछ तत्व (उदाहरण के लिए, कक्षाएं, संबंध, एग्रीगेशन, विरासत) विश्लेषण के दौरान लाए जाते हैं। प्रतीकात्मक चिह्न के अन्य तत्व (उदाहरण के लिए, समावेशन के लिए कार्यान्वयन संकेतक और गुण) डिज़ाइन के दौरान लाए जाते हैं।
UML के लाभ
UML का उपयोग विविध क्षेत्रों में किया जा सकता हैएप्लिकेशन डोमेन (उदाहरण के लिए, बैंकिंग, वित्त, इंटरनेट, एयरोस्पेस, स्वास्थ्य सेवा, आदि) यह सभी प्रमुख ऑब्जेक्ट और कंपोनेंट के साथ उपयोग किया जा सकता है सॉफ्टवेयर विकास विधियाँ और विभिन्न के लिए कार्यान्वयन प्लेटफॉर्म।
- आपको पता है कि आपको क्या मिल रहा है
- आपके विकास लागत कम होंगी
- आपका सॉफ्टवेयर आपकी अपेक्षा के अनुसार व्यवहार करेगा। कम अप्रत्याशित घटनाएँ
- आपको खराब लिखे गए कोड दिए जाने से पहले सही निर्णय लिए जाते हैं। कुल लागत कम होती है
- हम अधिक मेमोरी और प्रोसेसर कुशल प्रणालियों का विकास कर सकते हैं
- प्रणाली रखरखाव लागत कम होगी। कम पुनर्शिक्षण होता है
- एक नए डेवलपर के साथ काम करना आसान होगा।
- प्रोग्रामर्स और बाहरी ठेकेदारों के साथ संचार अधिक कुशल होगा।
UML 4 + 1 दृष्टिकोण
UML विकासाधीन प्रणाली के निम्नलिखित चार दृष्टिकोणों से मिलकर बनता है (देखें चित्र 3) [Eriksson & Penker, 1998; Kruchten, 2000]:
- उपयोग केस दृष्टिकोण: बाहरी एक्टर्स द्वारा ग्रहण किए गए प्रणाली के कार्यक्षमता को दर्शाता है; इसे उपयोग केस आरेखों और कभी-कभी क्रियाकलाप आरेखों में वर्णित किया जाता है।
- तार्किक दृष्टिकोण: यह दिखाता है कि इस कार्यक्षमता को प्रणाली के भीतर कैसे डिज़ाइन किया गया है, प्रणाली की स्थिर संरचना और गतिशील व्यवहार के संदर्भ में; इसे क्लास और ऑब्जेक्ट आरेखों (स्थिर मॉडल) और अवस्था संक्रमण, अनुक्रम, सहयोग और क्रियाकलाप आरेखों (गतिशील मॉडल) में वर्णित किया जाता है
- कंपोनेंट दृष्टिकोण: सॉफ्टवेयर कंपोनेंट्स की संगठन को दर्शाता है; इसे कंपोनेंट आरेखों में वर्णित किया जाता है।
- डिप्लॉयमेंट दृष्टिकोण: कंप्यूटर और उपकरणों के भीतर रन-टाइम प्रोसेसिंग नोड्स की भौतिक व्यवस्था (डिप्लॉयमेंट) और उन पर रहने वाले कंपोनेंट्स, प्रक्रियाओं और ऑब्जेक्ट्स को दर्शाता है; इसे डिप्लॉयमेंट आरेखों में वर्णित किया जाता है।
- प्रक्रिया दृष्टिकोण: रन-टाइम पर प्रणाली के समानांतर पहलू को दर्शाता है, जैसे कार्य, थ्रेड्स, प्रक्रियाएँ और अंतरक्रियाएँ और इन थ्रेड्स के संचार और समन्वय के समस्याओं को संबोधित करता है; इसे गतिशील आरेखों (अवस्था संक्रमण, अनुक्रम, सहयोग और क्रियाकलाप आरेख) और कार्यान्वयन आरेखों (कंपोनेंट और डिप्लॉयमेंट आरेख) में वर्णित किया जाता है।

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

संरचनात्मक आरेख
- क्लास आरेख – सिस्टम की क्लासेज़ और इंटरफेस की स्थिर संरचना और उनके संबंध या संबंध (जिसमें विरासत, एग्रीगेशन और संबंध शामिल हैं) और क्लासेज़ के ऑपरेशन और गुणों को दर्शाने वाला आरेख। प्रस्तुति के तरीके हैं: संबंध, विरासत, निर्भरता। यह UML में एक बहुत ही सामान्य आरेख है।
- ऑब्जेक्ट आरेख – एक विशिष्ट समय या स्थिति (स्नैपशॉट) पर सिस्टम की स्थिर संरचना का आरेख है जो सिस्टम में संबंध को दर्शाता है।
- कंपोनेंट आरेख – वह आरेख है जो सिस्टम के भीतर कंपोनेंट्स की संगठन और निर्भरताओं का वर्णन करता है।
- कॉम्पोज़िट स्ट्रक्चर आरेख – वह आरेख है जो आपस में जुड़े हुए उदाहरणों के रन-टाइम उदाहरणों का अध्ययन करता है जो संचार लिंक्स के माध्यम से सहयोग करते हैं।
- पैकेज आरेख – वह आरेख है जो दिखाता है कि सिस्टम को तार्किक समूहों में कैसे विभाजित किया गया है और इन समूहों के बीच कौन-कौन से निर्भरताएँ हो सकती हैं।
- डेप्लॉयमेंट आरेख – वह आरेख है जो वर्णन करता है कि वितरित भौतिक इकाइयाँ (वितरित करने योग्य सॉफ्टवेयर कंपोनेंट्स, एप्लिकेशन, सर्वर, एप्लिकेशन, हार्डवेयर आदि) वितरित सिस्टम आर्किटेक्चर को कैसे बनाती हैं।
व्यवहार आरेख
- उपयोग के मामले आरेख – उपयोग के मामलों (सॉफ्टवेयर फंक्शन/सेवाओं) और एक्टर्स (उपयोगकर्ता – दोनों मानव या प्रणालियाँ) की भूमिका का आरेख। यह आरेख उपयोगकर्ता के दृष्टिकोण से है।
- गतिविधि आरेख – गतिशील प्रकृति के एक प्रणाली का आरेख जो गतिविधि से गतिविधि तक नियंत्रण के प्रवाह के मॉडलिंग द्वारा बनाया जाता है। एक प्रणाली (उदाहरण: वस्तु/वर्ग) आंतरिक घटना के प्रति कैसे प्रतिक्रिया करती है, इसका आरेख बनाएं। (नोट: बाहरी घटनाओं का वर्णन एक अवस्था आरेख द्वारा किया जाता है)। व्यापार प्रक्रिया मॉडलिंग के लिए आप इस आरेख का उपयोग उपयोग के मामले या व्यापार नियम के तर्क को मॉडल करने के लिए कर सकते हैं।
- अवस्था आरेख (जिसे अवस्था चार्ट आरेख, अवस्था मशीन आरेख भी कहा जाता है) – एक प्रणाली (उदाहरण: वस्तु/वर्ग) बाहरी घटना के प्रति कैसे प्रतिक्रिया करती है, इसका आरेख है। (नोट: आंतरिक घटनाओं का वर्णन गतिविधि आरेख द्वारा किया जाता है)।
अंतरक्रिया प्रकार के आरेख– मॉडल के संगठनात्मक भागों की अंतरक्रिया।
- अनुक्रम आरेख – वस्तुओं के बीच संदेशों की अंतरक्रिया और प्रवाह और संदेशों के सापेक्ष समय क्रम का आरेख है
- संचार आरेख(जिसे भी कहा जाता है UML1 के सहयोग आरेख) – एक आरेख जो यह दिखाता है कि प्रणालियाँ एक कार्य को पूरा करने के लिए कैसे सहयोग करती हैं और प्रणालियों के बीच कौन-से संबंध होने चाहिए। सहयोग आरेख अनुक्रम आरेख को लेकर उसकी वर्ग आरेख के साथ अंतरक्रिया का वर्णन करने के परिणामस्वरूप बनाया जाता है। सारांश में, यह आरेख वस्तुओं के बीच संदेश प्रवाह और वर्गों के बीच मूलभूत संबंध (संबंध) दिखाता है
- समय आरेख – एक आरेख जो एक या एक से अधिक वस्तुओं के दिए गए समयावधि के दौरान व्यवहार का अन्वेषण करता है।
- अंतरक्रिया समीक्षा आरेख – अंतरक्रिया आरेखों (अनुक्रम आरेख, संचार आरेख, समय आरेख, अंतरक्रिया समीक्षा आरेख) के बीच अंतरक्रिया और प्रवाह नियंत्रण का आरेख है।
UML प्रोफाइल
UML प्रोफाइल एक आरेख नहीं है, लेकिन UML के विस्तारों और उपसमुच्चयों का वर्णन करने के लिए एक प्रोफाइल है। उपसमुच्चयों का वर्णन वस्तु सीमा भाषा (OCL) का उपयोग करके किया जाता है। विस्तारों को स्टेरियोटाइप को परिभाषित करके बनाया जाता है, जो किसी भी मॉडल तत्व को सजाने वाले टैग होते हैं। उदाहरण के लिए, हम एक वर्ग को “स्थायी” टैग कर सकते हैं और टैग का उपयोग करके एक वर्ग की पहचान कर सकते हैं जिसके उदाहरण प्रणाली के रन-टाइम के जीवनकाल के बाद भी संग्रहीत रहते हैं। अनौपचारिक रूप से — और यह आदर्श रूप से अस्वीकार्य है — एक प्रोफाइल UML के किसी भी विस्तार और उपसमुच्चय का सेट है, चाहे इन तकनीकों का उपयोग करके लिखा गया हो या नहीं। औपचारिक रूप से, एक प्रोफाइल OCL और स्टेरियोटाइप परिभाषाएँ हैं जो नियमों का वर्णन करती हैं, जो UML 2 में एक पैकेज में निरूपित होते हैं।
सॉफ्टवेयर विकास के लिए संबंधित आरेख
OOAD विधियों के अंतर और UML मानकों के विकास के बीच आरेखों के नाम और उनके कार्यों में समय के साथ बदलाव आ सकता है। यहाँ कुछ आरेखों और/या कार्य उत्पादों के उदाहरण हैं जो UML1 या UML2 के हिस्से हो सकते हैं या नहीं, लेकिन OOAD विधियों में उपयोग किए जा सकते हैं:
- प्रणाली संदर्भ आरेख
- एंटिटी संबंध आरेख (वर्ग आरेख के समान) संकल्पनात्मक, तार्किक और भौतिक ERD के साथ
- दृढ़ता विश्लेषण
निष्कर्ष
हमने UML के उद्गम और परिभाषा का अध्ययन किया है ताकि इसके बारे में सरल समझ प्राप्त की जा सके, और यह जाना जा सके कि UML हमें क्या प्रदान कर सकता है। हमने अपने अगले विकास परियोजना में इसके उपयोग से कैसे लाभ उठाया जा सकता है, और UML 2 में उपलब्ध आर्किटेक्चरल दृष्टिकोण, मॉडल और आरेख प्रकार का संक्षिप्त अध्ययन किया है। UML एक प्रक्रिया नहीं है, लेकिन सॉफ्टवेयर आधारित प्रणाली विकास के लिए एक खुला मानक दृश्य मॉडलिंग नोटेशन है। एक सफल परियोजना के लिए आवश्यक घटकों में तीन पहलू होते हैं: एक नोटेशन, एक प्रक्रिया और एक उपकरण:
नोटेशन केवल – आप एक सीख सकते हैंनोटेशन (उदाहरण: UML), लेकिन अगर आप इसका उपयोग कैसे करना है, इसे नहीं जानते हैं (प्रक्रिया), आपके फेल होने की संभावना है।
केवल प्रक्रिया – आपके पास एक बहुत अच्छा हो सकता हैप्रक्रिया, लेकिन अगर आप प्रक्रिया को संचार नहीं कर सकते (प्रतीकात्मक चिह्न), आपके फेल होने की संभावना है। और अंत में
कोई उपकरण समर्थन नहीं – अगर आप अपने कार्य के कलाकृतियों को प्रभावी ढंग से दस्तावेज़ नहीं कर सकते (उपकरण), आप बहुत समय बर्बाद कर देंगे और अंततः फेल हो जाएंगे।
स्वचालित UML उपकरण
विजुअल पैराडाइग्म एक स्वचालित उपकरण है जो आपके सॉफ्टवेयर परियोजनाओं में सफलता सुनिश्चित करता है:
- प्रतीकात्मक चिह्नों को याद रखने की आवश्यकता को कम करने के लिए आसान सिंटैक्स संपादन
- लोकप्रिय और सबसे आसान एजाइल स्क्रम सॉफ्टवेयर विकास प्रक्रिया और उपकरण सेट का समर्थन
- किसी भी आकार के परियोजना और उत्पाद रिपोर्ट और कलाकृति को तुरंत स्ट्रीमलाइन करने के लिए स्वचालित
UML संसाधन
- 14 UML आरेख प्रकार के लिए व्यापक मार्गदर्शिका – साइबरमीडियन
- यह मार्गदर्शिका विजुअल पैराडाइग्म कम्युनिटी संस्करण द्वारा समर्थित 14 UML आरेख प्रकार के एक समीक्षा प्रदान करती है। यह बताती है कि UML आरेख सॉफ्टवेयर-गतिशील प्रणालियों को दृश्यमान बनाने में कैसे मदद करते हैं और प्रत्येक प्रकार के आरेख द्वारा प्रदान की गई कार्यक्षमता का वर्णन करती है। मार्गदर्शिका विजुअल पैराडाइग्म की विविधता को भी उजागर करती है जो विभिन्न मॉडलिंग आवश्यकताओं के लिए विभिन्न UML आरेखों का समर्थन करती है11.
- सर्वोत्तम UML मुफ्त उपकरणों (दोनों ऑनलाइन और डेस्कटॉप फ्रीवेयर) के साथ UML मॉडलिंग सीखें – साइबरमीडियन
- यह लेख UML मॉडलिंग के लिए विजुअल पैराडाइग्म के उपयोग के लाभों पर चर्चा करता है, जिसमें नवीनतम UML 2.x मानक के समर्थन और आरेख प्रकार के विस्तृत सीमा पर जोर दिया गया है। इसमें उपकरण के लोकप्रिय विकास प्लेटफॉर्म के साथ एकीकरण क्षमता और शैक्षणिक और उद्योग में इसके व्यापक उपयोग का भी उल्लेख किया गया है12.
- उदाहरण द्वारा सीखें: UML स्टेट मशीन आरेख – साइबरमीडियन
- यह संसाधन UML स्टेट मशीन आरेख पर केंद्रित है और इन आरेखों को बनाने के लिए विजुअल पैराडाइग्म को एक आदर्श उपकरण के रूप में सिफारिश करता है। यह स्टेट मशीन आरेखों के डायनामिक सिस्टम व्यवहार को मॉडल करने के तरीके के बारे में गहन जानकारी प्रदान करता है और विजुअल पैराडाइग्म के विकास उपकरणों और प्लेटफॉर्म के साथ एकीकरण को उजागर करता है13.
- यूएमएल आरेख: एक व्यापक गाइड – साइबरमेडियन
- यह व्यापक गाइड यूएमएल आरेखों के महत्व को सॉफ्टवेयर विकास में समझाता है और विजुअल पैराडाइग्म द्वारा विभिन्न प्रकार के यूएमएल आरेखों के समर्थन के बारे में बताता है। यह संरचनात्मक, व्यवहारात्मक और अंतरक्रिया आरेखों को कवर करता है, और विजुअल पैराडाइग्म के उपयोग के बारे में जानकारी प्रदान करता है जिससे प्रभावी यूएमएल मॉडल बनाए जा सकें14.
- मुफ्त ऑनलाइन यूएमएल टूल – साइबरमेडियन
- यह लेख विजुअल पैराडाइग्म ऑनलाइन (वीपी ऑनलाइन) एक्सप्रेस संस्करण का परिचय देता है, जो यूएमएल आरेख बनाने के लिए एक मुफ्त ऑनलाइन ड्रॉइंग टूल है। इसमें टूल की उपयोग में आसानी, सीमाओं का अभाव और विभिन्न वेब ब्राउज़रों के साथ अनुकूलता को उजागर किया गया है, जिससे यह व्यक्तिगत और गैर वाणिज्यिक यूएमएल आरेख बनाने के लिए एक सुलभ विकल्प बन जाता है15.
- यूएमएल टाइमिंग आरेखों को समझना: एक व्यापक गाइड – साइबरमेडियन
- यह गाइड यूएमएल टाइमिंग आरेखों और उनके रियल-टाइम सिस्टम में महत्व को समझाता है। इसमें विजुअल पैराडाइग्म के उपयोग के बारे में चर्चा की गई है जिससे इन आरेखों को बनाया जा सके, जिसमें सिस्टम के भीतर समय और अवधि सीमाओं के दृश्य प्रस्तुतीकरण पर ध्यान केंद्रित किया गया है16.
- यूएमएल 2.5 आरेखों के लिए व्यापक गाइड – साइबरमेडियन
- यह गाइड यूएमएल 2.5 आरेखों के बारे में एक समीक्षा प्रदान करता है और विजुअल पैराडाइग्म को व्यापक मॉडलिंग के लिए शीर्ष विकल्प के रूप में उजागर करता है। इसमें टूल की लचीलेपन, उपयोगकर्ता-अनुकूल इंटरफेस और मजबूत कोड उत्पादन क्षमताओं के बारे में चर्चा की गई है, जिससे यह विभिन्न उद्योगों के पेशेवरों के लिए उपयुक्त बन जाता है17.
- यूएमएल क्लास आरेख के लिए एक व्यापक गाइड – साइबरमेडियन
- यह गाइड यूएमएल क्लास आरेखों पर केंद्रित है और विजुअल पैराडाइग्म द्वारा उनके निर्माण के समर्थन के बारे में बताता है। इसमें टूल के शैक्षणिक क्षेत्र में व्यापक स्वीकृति और सिस्टम और डेटाबेस डिज़ाइन और विश्लेषण में उपयोग के बारे में चर्चा की गई है। गाइड में यूएमएल मॉडलिंग के साथ त्वरित शुरुआत के लिए उदाहरणों और टेम्पलेट की उपलब्धता का भी उल्लेख किया गया है18.
- विजुअल पैराडाइग्म का उपयोग करके यूएमएल पैकेज आरेख ट्यूटोरियल – साइबरमेडियन
- यह ट्यूटोरियल विजुअल पैराडाइग्म का उपयोग करके यूएमएल पैकेज आरेख बनाने के चरणों को चलता है। इसमें बड़े सिस्टम को व्यवस्थित करने में पैकेज आरेखों के महत्व को समझाया गया है और विजुअल पैराडाइग्म का उपयोग करके उन्हें बनाने के लिए चरण-दर-चरण गाइड प्रदान किया गया है19.
- एजाइल सॉफ्टवेयर विकास के लिए विजुअल मॉडलिंग के लिए व्यापक गाइड – साइबरमेडियन
- यह गाइड एजाइल सॉफ्टवेयर विकास में यूएमएल टूल्स की भूमिका पर चर्चा करता है और विजुअल पैराडाइग्म को एक लोकप्रिय विकल्प के रूप में उजागर करता है। इसमें विजुअल पैराडाइग्म द्वारा उपयोगकर्ता-अनुकूल इंटरफेस और वैधता, कोड उत्पादन और रिवर्स इंजीनियरिंग जैसी विशेषताओं के माध्यम से मॉडलिंग प्रक्रिया को बढ़ावा देने के तरीके को समझाया गया है20.


