uml मध्ये कोणत्या प्रकारचे मॉडेल अस्तित्वात आहेत. यूएमएल भाषेची सामान्य वैशिष्ट्ये. परस्परसंवाद विहंगावलोकन आकृत्या

विंडोज फोनसाठी 14.03.2022
विंडोज फोनसाठी

UML आकृती ही एक विशेष ग्राफिकल वर्णन भाषा आहे जी विविध सॉफ्टवेअरच्या विकासामध्ये ऑब्जेक्ट मॉडेलिंगसाठी डिझाइन केलेली आहे. या भाषेचे विस्तृत प्रोफाइल आहे आणि हे एक खुले मानक आहे जे सिस्टमचे अमूर्त मॉडेल तयार करण्यासाठी विविध ग्राफिकल नोटेशन्स वापरते. सर्व प्रकारच्या सॉफ्टवेअर सिस्टमची व्याख्या, व्हिज्युअलायझेशन, दस्तऐवजीकरण आणि डिझाइन सक्षम करण्यासाठी UML तयार केले गेले. हे लक्षात घेण्यासारखे आहे की यूएमएल आकृती ही प्रोग्रामिंग भाषा नाही, परंतु ती त्यावर आधारित स्वतंत्र कोड तयार करण्याची शक्यता प्रदान करते.

तिची गरज का आहे?

UML चा वापर सर्व प्रकारच्या सॉफ्टवेअरचे मॉडेलिंग करून संपत नाही. तसेच, ही भाषा आज सक्रियपणे विविध व्यवसाय प्रक्रियांचे मॉडेलिंग, सिस्टम डिझाइन आयोजित करण्यासाठी तसेच संस्थात्मक संरचना प्रदर्शित करण्यासाठी वापरली जाते.

UML च्या मदतीने, सॉफ्टवेअर डेव्हलपर सामान्य संकल्पनांचे प्रतिनिधित्व करण्यासाठी वापरल्या जाणार्‍या ग्राफिकल नोटेशनमध्ये पूर्ण सहमती सुनिश्चित करू शकतात जसे की: घटक, सामान्यीकरण, वर्ग, वर्तन आणि एकत्रीकरण. हे आर्किटेक्चर आणि डिझाइनवर मोठ्या प्रमाणात एकाग्रता प्राप्त करते.

हे देखील लक्षात घेण्यासारखे आहे की अशा चार्टचे अनेक प्रकार आहेत.

वर्ग आकृती

यूएमएल क्लास डायग्राम हा एक स्टॅटिक स्ट्रक्चर डायग्राम आहे जो सिस्टमच्या संरचनेचे वर्णन करण्यासाठी तसेच अनेक भिन्न वर्गांमधील गुणधर्म, पद्धती आणि अवलंबन दर्शवण्यासाठी डिझाइन केलेले आहे.

हे लक्षात घेण्यासारखे आहे की अशा आकृत्यांच्या बांधकामावर अनेक दृष्टिकोन आहेत, ते कसे वापरले जातील यावर अवलंबून:

  • वैचारिक. या प्रकरणात, UML वर्ग आकृती विशिष्ट विषय क्षेत्राच्या मॉडेलचे वर्णन करते आणि ते केवळ अनुप्रयोग ऑब्जेक्ट्सचे वर्ग प्रदान करते.
  • विशिष्ट. विविध माहिती प्रणाली तयार करण्याच्या प्रक्रियेत आकृतीचा वापर केला जातो.
  • अंमलबजावणी. वर्ग आकृतीमध्ये सर्व प्रकारचे वर्ग समाविष्ट आहेत जे थेट प्रोग्राम कोडमध्ये वापरले जातात.

घटक आकृती

UML घटक आकृती पूर्णपणे स्थिर रचना आकृती आहे. विशिष्ट सॉफ्टवेअर प्रणालीचे विविध संरचनात्मक घटकांमध्ये विघटन तसेच त्यांच्यातील संबंध प्रदर्शित करण्याचा हेतू आहे. UML घटक आकृती सर्व प्रकारचे मॉडेल, लायब्ररी, फाइल्स, पॅकेजेस, एक्झिक्युटेबल आणि इतर अनेक घटक वापरू शकतात.

संमिश्र/संमिश्र रचना आकृती

UML संमिश्र/संमिश्र संरचना आकृती देखील एक स्थिर रचना आकृती आहे, परंतु त्याचा उपयोग वर्गांची अंतर्गत रचना दर्शविण्यासाठी केला जातो. शक्य असल्यास, हा आकृती वर्गाच्या अंतर्गत संरचनेत असलेल्या घटकांच्या परस्परसंवादाचे प्रदर्शन देखील करू शकतो.

यापैकी एक उपप्रजाती म्हणजे UML सहयोग आकृती, ज्याचा उपयोग सहयोगाच्या कार्यक्षेत्रातील विविध वर्गांच्या भूमिका आणि परस्परसंवाद प्रदर्शित करण्यासाठी केला जातो. जर तुम्हाला डिझाइन पॅटर्न तयार करण्याची आवश्यकता असेल तर ते अगदी सुलभ आहेत.

हे लक्षात घेण्यासारखे आहे की UML वर्ग आकृती आणि संमिश्र रचना आकृती एकाच वेळी वापरल्या जाऊ शकतात.

उपयोजन आकृती

या आकृतीचा वापर चालू नोड्स तसेच त्यांच्यावर तैनात केलेल्या सर्व प्रकारच्या कलाकृतींचे मॉडेल करण्यासाठी केला जातो. UML 2 मध्ये, कलाकृती विविध नोड्सवर तैनात केल्या जातात, तर पहिल्या आवृत्तीमध्ये फक्त घटक तैनात केले गेले होते. अशा प्रकारे, UML उपयोजन आकृती मुख्यतः दुसऱ्या आवृत्तीसाठी वापरली जाते.

आर्टिफॅक्ट आणि तो लागू केलेला घटक यांच्यामध्ये प्रकटीकरण अवलंबित्व तयार होते.

ऑब्जेक्ट डायग्राम

हे दृश्य तुम्हाला ठराविक वेळी तयार होत असलेल्या प्रणालीचा पूर्ण किंवा आंशिक स्नॅपशॉट पाहण्याची परवानगी देते. हे विशिष्ट प्रणालीच्या वर्गांची सर्व उदाहरणे पूर्णपणे प्रदर्शित करते, त्यांच्या पॅरामीटर्सची वर्तमान मूल्ये तसेच त्यांच्यातील संबंध दर्शविते.

पॅकेज आकृती

हा आराखडा स्ट्रक्चरल स्वरूपाचा आहे आणि त्याची मुख्य सामग्री सर्व प्रकारची पॅकेजेस, तसेच त्यांच्यातील संबंध आहे. या प्रकरणात, अनेक स्ट्रक्चरल आकृत्यांमध्ये कोणतेही कठोर पृथक्करण नाही, परिणामी त्यांचा वापर बहुतेकदा केवळ सोयीसाठी केला जातो आणि कोणताही अर्थपूर्ण अर्थ नसतो. हे लक्षात घेण्यासारखे आहे की भिन्न घटक इतर UML आकृती प्रदान करू शकतात (उदाहरणे: पॅकेजेस आणि पॅकेज आकृती स्वतः).

रचना सुलभ करण्यासाठी तसेच या प्रणालीच्या मॉडेलसह कार्य आयोजित करण्यासाठी विशिष्ट गुणधर्मांनुसार अनेक घटकांचे गटांमध्ये संघटन सुनिश्चित करण्यासाठी त्यांचा वापर केला जातो.

क्रियाकलाप आकृती

UML क्रियाकलाप आकृती एका विशिष्ट क्रियाकलापाचे अनेक घटक भागांमध्ये विघटन दर्शविते. या प्रकरणात, "क्रियाकलाप" ची संकल्पना समांतर स्वरूपात विशिष्ट एक्झिक्युटेबल वर्तनाचे तपशील, तसेच विविध गौण घटकांच्या समन्वित अनुक्रमिक अंमलबजावणीचा संदर्भ देते - नेस्टेड प्रकारची क्रियाकलाप आणि विविध क्रिया, ज्या प्रवाहाद्वारे एकत्रित होतात. एका विशिष्ट नोडचे आउटपुट दुसऱ्याच्या इनपुटवर.

UML क्रियाकलाप आकृतीचा वापर अनेकदा विविध व्यवसाय प्रक्रिया, समांतर आणि अनुक्रमिक संगणन करण्यासाठी केला जातो. इतर गोष्टींबरोबरच, ते सर्व प्रकारच्या तांत्रिक प्रक्रियेचे मॉडेल करतात.

ऑटोमॅटन ​​आकृती

हे दृश्य म्हणतात आणि काहीसे वेगळे - UML राज्य आकृती. यात साध्या आणि संमिश्र अवस्था तसेच संक्रमणांसह सादर केलेले राज्य मशीन आहे.

मर्यादित स्थितीचे यंत्र हे वेगवेगळ्या अवस्थेतील एका क्रमाचे विनिर्देश आहे ज्यातून एखादी विशिष्ट वस्तू जाते किंवा तिच्या जीवनातील काही घटनांच्या प्रतिसादात परस्परसंवाद, तसेच अशा घटनांना ऑब्जेक्टचा प्रतिसाद. यूएमएल स्टेट डायग्राम वापरत असलेले स्टेट मशीन मूळ घटकाशी जोडलेले असते आणि त्याच्या उदाहरणांचे वर्तन परिभाषित करण्यासाठी वापरले जाते.

तथाकथित ड्रॅगन आकृत्या अशा आकृत्यांचे analogues म्हणून वापरले जाऊ शकतात.

केस डायग्राम वापरा

UML युज केस डायग्राम कलाकारांमध्‍ये होणारे सर्व संबंध तसेच विविध वापर प्रकरणे प्रदर्शित करतो. त्याचे मुख्य कार्य एक पूर्ण साधन प्रदान करणे आहे ज्याद्वारे ग्राहक, अंतिम वापरकर्ता किंवा काही विकसक एकत्रितपणे विशिष्ट प्रणालीच्या वर्तन आणि कार्यक्षमतेवर चर्चा करू शकतात.

जर यूएमएल वापर केस डायग्राम सिस्टम मॉडेलिंग प्रक्रियेत वापरला गेला असेल, तर विश्लेषक हे करणार आहे:

  • मॉडेल केलेली प्रणाली त्याच्या वातावरणापासून स्पष्टपणे विभक्त करा.
  • कलाकार ओळखा, या प्रणालीसह त्यांच्या परस्परसंवादाचे मार्ग, तसेच त्याची अपेक्षित कार्यक्षमता.
  • या प्रणालीच्या कार्यक्षमतेच्या तपशीलवार वर्णनाशी संबंधित विविध संकल्पना विषय क्षेत्र म्हणून शब्दकोषात सेट करा.

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

कम्युनिकेशन्स

संप्रेषण आकृती, UML अनुक्रम आकृतीप्रमाणेच, संक्रमणात्मक आहे, म्हणजेच ते परस्परसंवाद व्यक्त करते, परंतु त्याच वेळी ते वेगवेगळ्या प्रकारे प्रदर्शित करते आणि आवश्यक असल्यास, आवश्यक प्रमाणात अचूकतेसह, एखाद्याचे दुसर्‍यामध्ये रूपांतर केले जाऊ शकते. .

संप्रेषण आकृती संयुक्त संरचनेच्या विविध घटकांमधील परस्परसंवाद प्रतिबिंबित करते, तसेच सहकार्याच्या भूमिका. अनुक्रम रेखाचित्रातील त्याचा मुख्य फरक असा आहे की ते अनेक घटकांमधील संबंध स्पष्टपणे दर्शवते आणि वेळ स्वतंत्र परिमाण म्हणून वापरला जात नाही.

हा प्रकार अनेक ऑब्जेक्ट्स आणि रिलेशनशिप ऑर्डर करण्याच्या पूर्णपणे विनामूल्य फॉरमॅटद्वारे ओळखला जातो ज्याप्रमाणे तो ऑब्जेक्ट डायग्राममध्ये केला जातो. या मोफत स्वरूपातील संदेशांचा क्रम राखण्याची गरज असल्यास, ते कालक्रमानुसार क्रमांकित केले जातात. या आकृतीचे वाचन प्रारंभिक संदेश 1.0 ने सुरू होते आणि त्यानंतर संदेश एका ऑब्जेक्टमधून दुसर्‍याकडे पाठवले जातात त्या दिशेने पुढे चालू राहते.

बहुतेक भागांमध्ये, अशा आकृत्या आपल्याला अनुक्रम आकृती प्रदान करते तीच माहिती दर्शवतात, परंतु माहिती सादर करण्याच्या वेगळ्या पद्धतीचा वापर करत असल्यामुळे, एका आकृतीमधील काही गोष्टी दुसऱ्या आकृतीपेक्षा निश्चित करणे खूप सोपे होते. हे देखील लक्षात घेण्यासारखे आहे की संप्रेषण आकृती प्रत्येक वैयक्तिक घटक कोणत्या घटकांशी संवाद साधतो हे अधिक स्पष्टपणे दर्शविते, तर अनुक्रम आकृती अधिक स्पष्टपणे दर्शवते की परस्परसंवाद कोणत्या क्रमाने केला जातो.

अनुक्रम रेखाचित्र

UML अनुक्रम आकृती अनेक वस्तूंमधील परस्परसंवाद दर्शविते, जे त्यांच्या घटनेच्या वेळेनुसार क्रमबद्ध केले जातात. असा आकृती अनेक वस्तूंमधील वेळ-क्रमित परस्परसंवाद दर्शवितो. विशेषतः, ते परस्परसंवादात भाग घेणार्‍या सर्व वस्तू तसेच त्यांच्याद्वारे देवाणघेवाण केलेल्या संदेशांचा संपूर्ण क्रम प्रदर्शित करते.

या प्रकरणात मुख्य घटक म्हणजे विविध वस्तूंचे पदनाम, तसेच उभ्या रेषा ज्या वेळेचा रस्ता आणि आयत प्रदर्शित करतात जे विशिष्ट ऑब्जेक्टची क्रियाकलाप किंवा त्याद्वारे काही कार्याचे कार्यप्रदर्शन दर्शवतात.

सहकार्य आकृती

या प्रकारचा आकृती आपल्याला संदेश अनुवादाच्या अनुक्रमातून सार घेऊन, अनेक ऑब्जेक्ट्समधील परस्परसंवाद दर्शवू देतो. कॉम्पॅक्ट फॉर्ममधील या प्रकारच्या आकृत्या विशिष्ट ऑब्जेक्टचे सर्व प्रसारित आणि प्राप्त संदेश तसेच या संदेशांचे स्वरूप दर्शवितात.

अनुक्रम रेखाचित्रे आणि संप्रेषण आकृती ही एकाच प्रक्रियेची फक्त भिन्न दृश्ये असल्यामुळे, रॅशनल रोझ अनुक्रम आकृतीवरून किंवा त्याउलट संप्रेषण अनुक्रम आकृती तयार करण्याची क्षमता प्रदान करते आणि ते पूर्णपणे स्वयंचलितपणे समक्रमित करते.

परस्परसंवाद विहंगावलोकन आकृत्या

हे UML आकृत्या आहेत, जे क्रियाकलाप आकृत्यांच्या प्रकाराशी संबंधित आहेत आणि अनुक्रम घटक आणि नियंत्रण प्रवाह रचना दोन्ही समाविष्ट करतात.

हे तथ्य लक्षात घेण्यासारखे आहे की हे स्वरूप सहयोग आणि अनुक्रम आकृती एकत्र करते, जे वेगवेगळ्या दृष्टिकोनातून तयार होत असलेल्या सिस्टममधील अनेक वस्तूंमधील परस्परसंवादाचा विचार करण्याची संधी प्रदान करते.

वेळेचा तक्ता

अनुक्रम आकृतीच्या पर्यायी आवृत्तीचे प्रतिनिधित्व करते, जे विशिष्ट टाइम स्केलसह लाइफलाइनवरील स्थितीतील बदल स्पष्टपणे दर्शवते. हे विविध रिअल-टाइम ऍप्लिकेशन्समध्ये खूप उपयुक्त ठरू शकते.

फायदे काय आहेत?

यूएमएल वापर आकृती आणि इतर वेगळे करणारे अनेक फायदे लक्षात घेण्यासारखे आहे:

  • भाषा ऑब्जेक्ट-ओरिएंटेड आहे, परिणामी विश्लेषण आणि डिझाइनच्या परिणामांचे वर्णन करण्यासाठी तंत्रज्ञान आधुनिक प्रकारच्या सर्व प्रकारच्या ऑब्जेक्ट-ओरिएंटेड भाषांमध्ये प्रोग्रामिंग पद्धतींच्या जवळ आहेत.
  • या भाषेचा वापर करून, प्रणालीचे वर्णन जवळजवळ कोणत्याही संभाव्य दृष्टिकोनातून केले जाऊ शकते आणि त्याच्या वर्तनाच्या विविध पैलूंचे वर्णन त्याच प्रकारे केले जाते.
  • सर्व रेखाचित्रे त्याच्या वाक्यरचनेशी तुलनेने द्रुत परिचित झाल्यानंतरही वाचणे तुलनेने सोपे आहे.
  • यूएमएल तुम्हाला विस्तारित करण्यास, तसेच तुमचे स्वतःचे ग्राफिक आणि मजकूर स्टिरिओटाइप सादर करण्यास अनुमती देते, जे केवळ सॉफ्टवेअर अभियांत्रिकीमध्येच नाही तर त्याचा वापर करण्यास योगदान देते.
  • भाषा बर्‍यापैकी व्यापक झाली आहे आणि ती सक्रियपणे विकसित होत आहे.

तोटे

यूएमएल आकृत्यांच्या बांधकामात त्याचे बरेच फायदे आहेत हे असूनही, ते सहसा खालील कमतरतांसाठी टीका करतात:

  • अतिरेक बहुसंख्य प्रकरणांमध्ये, समीक्षक म्हणतात की यूएमएल खूप मोठी आणि गुंतागुंतीची आहे आणि बहुतेकदा हे अन्यायकारक आहे. त्यात बरीच निरर्थक किंवा जवळजवळ निरुपयोगी बांधकामे आणि आकृत्यांचा समावेश आहे आणि बहुतेकदा अशी टीका पहिल्या आवृत्तीवर नाही तर दुसर्‍या आवृत्तीकडे जाते, कारण नवीन आवर्तनांमध्ये अधिक "समितीने डिझाइन केलेले" तडजोड आहेत.
  • शब्दार्थातील विविध अशुद्धता. कारण UML ची व्याख्या स्वतः, इंग्रजी आणि OCL च्या संयोगाने केली जाते, त्यामध्ये औपचारिक वर्णन तंत्रांद्वारे अचूकपणे परिभाषित केलेल्या भाषांमध्ये अंतर्निहित कडकपणाचा अभाव आहे. काही विशिष्ट परिस्थितींमध्ये, OCL, UML आणि इंग्रजीचे अमूर्त वाक्यरचना एकमेकांना विरोध करू लागतात, तर इतर प्रकरणांमध्ये ते अपूर्ण असतात. भाषेच्या वर्णनाची अयोग्यता वापरकर्ते आणि साधन प्रदाते दोघांनाही सारखेच प्रभावित करते, शेवटी भिन्न वैशिष्ट्यांचा उपचार करण्याच्या अनन्य पद्धतीमुळे साधन विसंगतता निर्माण करते.
  • अंमलबजावणी आणि अभ्यास प्रक्रियेत समस्या. वरील सर्व समस्या UML अंमलबजावणी आणि शिकण्याच्या प्रक्रियेत काही अडचणी निर्माण करतात आणि हे विशेषतः खरे आहे जेव्हा व्यवस्थापन अभियंत्यांना ते वापरण्यास भाग पाडते जेव्हा त्यांच्याकडे पूर्वीची कौशल्ये नसतात.
  • कोड कोड प्रतिबिंबित करतो. दुसरे मत असे आहे की ते सुंदर आणि आकर्षक मॉडेल्स नाहीत जे महत्वाचे आहेत, परंतु थेट कार्यरत प्रणाली आहेत, म्हणजेच कोड हा प्रकल्प आहे. या मतानुसार, सॉफ्टवेअर लिहिण्यासाठी अधिक कार्यक्षम मार्ग विकसित करण्याची गरज आहे. एक्झिक्युटेबल किंवा सोर्स कोड रीजनरेट करण्यासाठी मॉडेल्स संकलित करणार्‍या पद्धतींमध्ये UML ची किंमत आहे. परंतु प्रत्यक्षात, हे पुरेसे नसू शकते, कारण भाषेमध्ये ट्युरिंग पूर्णता गुणधर्म नसतात आणि प्रत्येक व्युत्पन्न केलेला कोड अखेरीस UML इंटरप्रीटिंग टूल काय गृहीत धरू शकतो किंवा निर्धारित करू शकतो यावर मर्यादित असेल.
  • लोड जुळत नाही. ही संज्ञा दुसर्‍याचे आउटपुट समजण्यासाठी विशिष्ट सिस्टमच्या इनपुटची अक्षमता निर्धारित करण्यासाठी सिस्टम विश्लेषणाच्या सिद्धांतातून येते. कोणत्याही मानक नोटेशन प्रमाणे, यूएमएल विशिष्ट प्रणालींचे प्रतिनिधित्व इतरांपेक्षा अधिक कार्यक्षम आणि संक्षिप्त पद्धतीने करू शकते. अशाप्रकारे, विकसक अशा सोल्यूशन्सकडे अधिक झुकतो जे यूएमएलची सर्व ताकद तसेच इतर प्रोग्रामिंग भाषा विणण्यासाठी अधिक सोयीस्कर असतात. ही समस्या अधिक स्पष्ट आहे जर विकास भाषा ऑब्जेक्ट-ओरिएंटेड ऑर्थोडॉक्स सिद्धांताच्या मुख्य तत्त्वांशी जुळत नाही, म्हणजेच, OOP च्या तत्त्वांनुसार कार्य करण्याचा प्रयत्न करत नाही.
  • अष्टपैलू होण्याचा प्रयत्न करतो. UML ही एक सामान्य-उद्देशीय मॉडेलिंग भाषा आहे जी सध्या अस्तित्वात असलेल्या कोणत्याही प्रोसेसिंग भाषेशी सुसंगत होण्याचा प्रयत्न करते. एखाद्या विशिष्ट प्रकल्पाच्या संदर्भात, डिझाइन टीमने अंतिम ध्येय साध्य करण्यासाठी, या भाषेची लागू वैशिष्ट्ये निवडणे आवश्यक आहे. याव्यतिरिक्त, एखाद्या विशिष्ट क्षेत्रात यूएमएलच्या वापराच्या व्याप्तीला मर्यादित करण्याचे संभाव्य मार्ग अशा औपचारिकतेतून जातात जे पूर्णपणे तयार केलेले नाही, परंतु स्वतःच टीकेचा विषय आहे.

अशा प्रकारे, या भाषेचा वापर सर्व परिस्थितींमध्ये संबंधित नाही.

भाष्य: या अभ्यासक्रमाचा विषय UML - युनिफाइड मॉडेलिंग लँग्वेज आहे. मागील लेक्चरमध्ये, आपण UML म्हणजे काय, त्याचा इतिहास, उद्देश, भाषा वापरण्याचे मार्ग, तिची व्याख्या, संज्ञा आणि नोटेशन याविषयी बोललो. हे नोंदवले गेले आहे की UML मॉडेल हा आकृत्यांचा संच आहे. या व्याख्यानात, आपण अशा प्रश्नांचा विचार करू: आपल्याला अनेक प्रकारच्या आकृत्यांची आवश्यकता का आहे; आकृत्यांचे प्रकार; OOP आणि अनुक्रम डायग्रामिंग

या व्याख्यानाच्या मुख्य सामग्रीच्या चर्चेकडे जाण्यापूर्वी, कोणतीही आकृती का तयार करायची याबद्दल बोलूया. कोणत्याही प्रणालीच्या मॉडेलचा विकास (केवळ सॉफ्टवेअरच नाही) नेहमी त्याच्या निर्मिती किंवा अद्यतनाच्या आधी असतो. समस्येचे निराकरण होण्याची अधिक स्पष्टपणे कल्पना करण्यासाठी किमान हे आवश्यक आहे. विकास कार्यसंघामधील परस्परसंवादासाठी आणि ग्राहकांशी परस्पर समंजसपणासाठी विचारशील मॉडेल्स खूप महत्वाचे आहेत. शेवटी, कोडमध्ये लागू होण्यापूर्वी प्रकल्प "आर्किटेक्चरली सुसंगत" आहे याची खात्री करण्याची परवानगी देते.

आम्ही जटिल प्रणालींचे मॉडेल तयार करतो कारण आम्ही त्यांचे पूर्णपणे वर्णन करू शकत नाही, "त्यांच्याकडे एका दृष्टीक्षेपात पहा". म्हणून, आम्ही केवळ विशिष्ट कार्यासाठी आवश्यक असलेल्या सिस्टमचे गुणधर्म वेगळे करतो आणि त्याचे मॉडेल तयार करतो जे या गुणधर्मांना प्रतिबिंबित करते. ऑब्जेक्ट-ओरिएंटेड विश्लेषणाची पद्धत वास्तविक जटिल प्रणालींचे सर्वात योग्य प्रकारे वर्णन करणे शक्य करते. परंतु प्रणाली अधिक जटिल होत असताना, चांगल्या सिम्युलेशन तंत्रज्ञानाची आवश्यकता आहे. आम्ही मागील व्याख्यानात म्हटल्याप्रमाणे, एक एकीकृत प्रणाली अशा "मानक" तंत्रज्ञान म्हणून वापरली जाते. मॉडेलिंग भाषा(युनिफाइड मॉडेलिंग लँग्वेज, यूएमएल), जी प्रणालीचे तपशील, व्हिज्युअलायझेशन, डिझाइन आणि दस्तऐवजीकरणासाठी ग्राफिकल भाषा आहे. UML वापरून, तुम्ही तयार होत असलेल्या प्रणालीचे तपशीलवार मॉडेल विकसित करू शकता, जे केवळ त्याची संकल्पनाच नव्हे तर विशिष्ट अंमलबजावणी वैशिष्ट्ये देखील प्रतिबिंबित करते. यूएमएल मॉडेलच्या फ्रेमवर्कमध्ये, सिस्टमबद्दलचे सर्व प्रतिनिधित्व आकृती नावाच्या विशेष ग्राफिक बांधकामांच्या स्वरूपात निश्चित केले जातात.

नोंद. आम्ही सर्वांचा विचार करणार नाही, परंतु फक्त काही तक्त्यांचा विचार करणार आहोत. उदाहरणार्थ, घटक आकृती या व्याख्यानामध्ये समाविष्ट नाही, जे फक्त आकृती प्रकारांचे संक्षिप्त विहंगावलोकन आहे. विशिष्ट अनुप्रयोग मॉडेलसाठी चार्ट प्रकारांची संख्या कोणत्याही प्रकारे मर्यादित नाही. साध्या ऍप्लिकेशन्ससाठी, अपवादाशिवाय सर्व प्रकारच्या आकृत्या तयार करण्याची आवश्यकता नाही. त्यापैकी काही फक्त गहाळ असू शकतात आणि ही वस्तुस्थिती त्रुटी मानली जाणार नाही. हे समजून घेणे महत्त्वाचे आहे की विशिष्ट प्रकारच्या आकृत्यांची उपलब्धता विशिष्ट प्रकल्पाच्या वैशिष्ट्यांवर अवलंबून असते. इतर (येथे चर्चा केलेली नाही) आकृत्यांच्या प्रकारांबद्दल माहिती UML मानकामध्ये आढळू शकते.

तुम्हाला अनेक प्रकारचे तक्ते का हवे आहेत

प्रथम, संज्ञा परिभाषित करूया. या व्याख्यानाच्या प्रस्तावनेत, आम्ही प्रणाली, मॉडेल आणि आकृती या संकल्पनांचा वारंवार वापर केला. लेखकाला खात्री आहे की आपल्यापैकी प्रत्येकाला या संकल्पनांचा अर्थ अंतर्ज्ञानाने समजला आहे, परंतु ते पूर्णपणे स्पष्ट करण्यासाठी, पुन्हा शब्दकोष पाहू आणि खालील वाचा:

प्रणाली- कार्य करण्याच्या सामान्य उद्दिष्टाद्वारे एकत्रित केलेल्या परस्परसंबंधित नियंत्रित उपप्रणालींचा संच.

होय, फार माहितीपूर्ण नाही. मग उपप्रणाली म्हणजे काय? परिस्थिती स्पष्ट करण्यासाठी, चला क्लासिक्सकडे वळूया:

प्रणालीविशिष्ट उद्दिष्ट साध्य करण्यासाठी आयोजित केलेल्या उपप्रणालींचा संच कॉल करा आणि मॉडेलचा संच वापरून वर्णन केले आहे, शक्यतो भिन्न दृष्टिकोनातून.

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

उपप्रणालीही एक प्रणाली आहे ज्याचे कार्य इतर उपप्रणालींच्या सेवांवर अवलंबून नाही. सॉफ्टवेअर प्रणाली तुलनेने स्वतंत्र उपप्रणालींच्या संचाप्रमाणे संरचित आहे. उपप्रणालींमधील परस्परसंवाद देखील परिभाषित केले जातात.

तसेच खूप स्पष्ट नाही, परंतु चांगले. "मानवी" भाषेत बोलल्यास, प्रणाली तुलनेने स्वयंपूर्ण असलेल्या सोप्या घटकांच्या संचाच्या रूपात दर्शविली जाते. प्रोग्राम विकसित करण्याच्या प्रक्रियेत, आम्ही मानक "क्यूब्स" - व्हिज्युअल घटकांपासून ग्राफिकल इंटरफेस कसा तयार करतो किंवा प्रोग्राम मजकूर स्वतः मोड्यूलमध्ये कसा विभागला जातो ज्यामध्ये सबरूटीन असतात जे फंक्शनलनुसार एकत्र केले जातात याच्याशी तुलना केली जाऊ शकते. वैशिष्ट्य, आणि ते पुढील प्रोग्राममध्ये पुन्हा वापरले जाऊ शकतात.

प्रणालीची संकल्पना समजून घ्या. डिझाइन प्रक्रियेदरम्यान, प्रणालीचा विचार केला जातो वेगवेगळ्या दृष्टिकोनातूनमॉडेल्सच्या सहाय्याने, ज्याचे विविध प्रतिनिधित्व आकृत्यांच्या स्वरूपात दिसतात. पुन्हा, वाचकाला संकल्पनांच्या अर्थाबद्दल प्रश्न असू शकतात मॉडेलआणि आकृत्या. आम्ही एक सुंदर विचार करतो, परंतु फार स्पष्ट व्याख्या नाही सिमेंटिकली बंद सिस्टम अॅब्स्ट्रॅक्शन म्हणून मॉडेलपरिस्थिती स्पष्ट करण्याची शक्यता नाही, म्हणून "आपल्या स्वतःच्या शब्दात" स्पष्ट करण्याचा प्रयत्न करूया.

मॉडेल- ही एक विशिष्ट (साहित्य किंवा नाही) ऑब्जेक्ट आहे जी या कार्यासाठी सिस्टमची केवळ सर्वात लक्षणीय वैशिष्ट्ये प्रदर्शित करते. मॉडेल भिन्न आहेत - मूर्त आणि अमूर्त, कृत्रिम आणि नैसर्गिक, सजावटीचे आणि गणिती...

चला काही उदाहरणे देऊ. आपल्या सर्वांना परिचित असलेल्या प्लॅस्टिकच्या खेळण्यांच्या गाड्या, ज्या आपण लहानपणी खूप आवडीने खेळायचो, त्याहून अधिक काही नाही. कृत्रिम सजावटीचे साहित्यवास्तविक कार मॉडेल. अर्थात, अशा "कार" मध्ये कोणतेही इंजिन नसते, आम्ही त्याची टाकी गॅसोलीनने भरत नाही, गिअरबॉक्स कार्य करत नाही (शिवाय, ते अजिबात अस्तित्वात नाही), परंतु मॉडेल म्हणून, हे खेळणी पूर्णपणे त्याचे कार्य पूर्ण करते. : हे मुलाला कारबद्दल कल्पना देते, कारण ती चार चाके, एक शरीर, दरवाजे, खिडक्या, गाडी चालविण्याची क्षमता इत्यादीची उपस्थिती ही वैशिष्ट्यपूर्ण वैशिष्ट्ये दर्शवते.

वैद्यकीय संशोधनात, प्राण्यांची चाचणी मानवांमध्ये औषधांच्या क्लिनिकल चाचण्यांपूर्वी असते. या प्रकरणात, प्राणी म्हणून कार्य करते नैसर्गिक साहित्यमानवी मॉडेल.

वर दर्शविलेले समीकरण देखील एक मॉडेल आहे, परंतु हे एक गणितीय मॉडेल आहे आणि ते गुरुत्वाकर्षणाच्या क्रियेखाली भौतिक बिंदूच्या हालचालीचे वर्णन करते.

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

परंतु सॉफ्टवेअर डिझाइनकडे परत (आणि केवळ नाही). पासून या उद्योगात आकृत्यांचा वापर करून, तुम्ही वेगवेगळ्या दृष्टिकोनातून प्रणालीची कल्पना करू शकता. आकृतींपैकी एक, उदाहरणार्थ, सिस्टमसह वापरकर्त्याच्या परस्परसंवादाचे वर्णन करू शकते, दुसरा - त्याच्या ऑपरेशन दरम्यान सिस्टमच्या स्थितीत होणारा बदल, तिसरा - सिस्टमच्या घटकांमधील परस्परसंवाद इ. एक जटिल प्रणाली लहान आणि जवळजवळ स्वतंत्र मॉडेल्सच्या संचाच्या रूपात दर्शविली जाऊ शकते - आकृत्या, आणि त्यापैकी कोणतेही सिस्टमचे वर्णन करण्यासाठी आणि त्याचे संपूर्ण चित्र मिळविण्यासाठी पुरेसे नाही, कारण त्यापैकी प्रत्येक सिस्टमच्या कार्याच्या काही विशिष्ट पैलूंवर लक्ष केंद्रित करते आणि वेगळे व्यक्त करतो अमूर्तता पातळी. दुसऱ्या शब्दांत, प्रत्येक मॉडेल डिझाइन केल्या जात असलेल्या सिस्टमवर काही विशिष्ट, विशिष्ट दृष्टिकोनाशी संबंधित आहे.

मागील परिच्छेदात आम्ही मॉडेलच्या संकल्पनेसह खूप सैल होतो हे तथ्य असूनही, हे समजले पाहिजे की वरील व्याख्यांच्या संदर्भात कोणताही एकल आकृती मॉडेल नाही. आकृत्या केवळ मॉडेलचे दृश्यमान करण्याचे एक साधन आहेत आणि दोन्ही वेगळे केले पाहिजेत. फक्त आकृत्यांचा संच सिस्टम मॉडेल बनवतोआणि त्याचे संपूर्णपणे वर्णन करते, परंतु एकही आकृती संदर्भाबाहेर काढलेली नाही.

तक्त्यांचे प्रकार

UML 1.5 परिभाषित बारा प्रकारचे तक्तेतीन गटांमध्ये विभागलेले:

  • चार प्रकारचे आकृत्या अनुप्रयोगाची स्थिर रचना दर्शवतात;
  • पाच प्रणालीच्या वर्तनात्मक पैलूंचे प्रतिनिधित्व करतात;
  • तीन प्रणाली ऑपरेशनच्या भौतिक पैलूंचे प्रतिनिधित्व करतात (अंमलबजावणी आकृती).

UML 2.1 च्या वर्तमान आवृत्तीमध्ये खूप बदल झालेले नाहीत. आकृतीचे स्वरूप थोडेसे बदलले आहे (फ्रेम आणि इतर व्हिज्युअल सुधारणा दिसू लागल्या आहेत), नोटेशन किंचित सुधारले आहे, काही आकृत्यांना नवीन नावे मिळाली आहेत.

मात्र, नेमका आकडा कॅनॉनिकल आकृत्याहे आमच्यासाठी पूर्णपणे बिनमहत्त्वाचे आहे, कारण आम्ही त्या सर्वांचा विचार करणार नाही, परंतु केवळ काही - कारण विशिष्ट अनुप्रयोगाच्या विशिष्ट मॉडेलसाठी आकृती प्रकारांची संख्या कठोरपणे निश्चित केलेली नाही. साध्या अनुप्रयोगांसाठी, अपवादाशिवाय सर्व आकृत्या तयार करण्याची आवश्यकता नाही. उदाहरणार्थ, स्थानिक अनुप्रयोगासाठी, उपयोजन आकृती तयार करणे आवश्यक नाही. हे समजून घेणे महत्त्वाचे आहे की आकृत्यांची यादी विकसित केलेल्या प्रकल्पाच्या वैशिष्ट्यांवर अवलंबून असते आणि विकासकाद्वारे स्वतः निर्धारित केली जाते. जिज्ञासू वाचकाला अजूनही सर्व UML आकृत्यांबद्दल जाणून घ्यायचे असल्यास, आम्ही त्याला UML मानक (http://www.omg.org/technology/documents/modeling_spec_catalog.htm#UML) वर संदर्भित करू. लक्षात ठेवा की या अभ्यासक्रमाचा उद्देश UML च्या सर्व शक्यतांचे वर्णन करणे हा नाही तर केवळ या भाषेचा परिचय करून देणे, या तंत्रज्ञानाची प्रारंभिक कल्पना देणे.

तर, आम्ही अशा प्रकारचे तक्ते थोडक्यात पाहू:

  • केस डायग्राम वापरा;
  • वर्ग आकृती;
  • ऑब्जेक्ट आकृती;
  • अनुक्रम आकृती;
  • परस्परसंवाद आकृती;
  • राज्य आकृती;
  • क्रियाकलाप आकृती;
  • उपयोजन आकृती.

यापैकी काही आकृत्यांबद्दल आपण पुढील व्याख्यानांमध्ये अधिक तपशीलवार चर्चा करू. यादरम्यान, आम्ही तपशीलांवर लक्ष केंद्रित करणार नाही, परंतु मुख्य प्रकारच्या आकृत्यांच्या उद्देशाची प्रारंभिक कल्पना देण्यासाठी वाचकांना किमान आकृत्यांच्या प्रकारांमध्ये दृश्यमानपणे फरक करण्यास शिकवण्याचे स्वतःचे ध्येय ठेवले आहे. . तर, चला सुरुवात करूया.

केस डायग्राम वापरा

कोणत्याही (सॉफ्टवेअरसह) सिस्टम त्यांच्या कामाच्या दरम्यान लोक वापरतील आणि / किंवा इतर सिस्टमशी संवाद साधतील हे लक्षात घेऊन डिझाइन केले आहेत. प्रणाली ज्या घटकांशी त्याच्या कामाच्या दरम्यान संवाद साधते त्यांना म्हणतात अभिनेते, आणि प्रत्येक अभिनेत्याची अपेक्षा असते की प्रणालीने काटेकोरपणे परिभाषित, अंदाज लावता येण्याजोग्या पद्धतीने वागावे. एक्टरची अधिक कठोर व्याख्या देण्याचा प्रयत्न करूया. हे करण्यासाठी, आम्ही UML साठी एक अद्भुत व्हिज्युअल शब्दसंग्रह वापरतो झिकॉम मेंटॉर:

हेक्टर (अभिनेता)- हा तार्किकदृष्ट्या संबंधित भूमिकांचा एक संच आहे जो पूर्ववर्ती किंवा घटकांशी (सिस्टम, उपप्रणाली किंवा वर्ग) संवाद साधताना केला जातो. एक अभिनेता एक व्यक्ती किंवा दुसरी प्रणाली, उपप्रणाली किंवा वर्ग असू शकतो जो अस्तित्वाच्या बाहेरील काहीतरी प्रतिनिधित्व करतो.

ग्राफिकरीत्या, वेक्टर एकतर चित्रित केले आहे " लहान माणूस", आम्ही बालपणात काढलेल्या चित्रांसारखेच, आमच्या कुटुंबातील सदस्यांचे चित्रण, किंवा संबंधित स्टिरियोटाइपसह वर्ग चिन्ह, चित्रावर दाखवल्याप्रमाणे. सादरीकरणाच्या दोन्ही प्रकारांचा समान अर्थ आहे आणि ते आकृतीमध्ये वापरले जाऊ शकतात. "स्टिरियोटाइप्ड" फॉर्म अधिक वेळा सिस्टीम अ‍ॅक्टर्सचे प्रतिनिधित्व करण्यासाठी किंवा ज्या प्रकरणांमध्ये अभिनेत्याचे गुणधर्म आहेत जे प्रदर्शित करणे आवश्यक आहे (चित्र 2.1) दर्शविण्यासाठी वापरले जाते.

लक्ष देणारा वाचक लगेच प्रश्न विचारू शकतो: हेक्टर आणि अभिनेता का नाही?? आम्ही सहमत आहोत, "एक्टर" हा शब्द रशियन व्यक्तीचे कान थोडेसे कापतो. आपण असे का म्हणतो याचे कारण सोपे आहे - ector हा शब्दापासून तयार होतो क्रिया, ज्याचा अर्थ अनुवादात आहे क्रिया. "एक्टर" शब्दाचे शाब्दिक भाषांतर - अभिनेता- खूप लांब आणि वापरण्यास अस्वस्थ. त्यामुळे आम्ही असेच म्हणत राहू.


तांदूळ. २.१.

त्याच चौकस वाचकाच्या लक्षात येईल की "पूर्ववर्ती" हा शब्द एक्टरच्या व्याख्येमध्ये चमकला आहे. हे काय आहे? आपण आता ज्याबद्दल बोलत आहोत ते लक्षात ठेवल्यास हा प्रश्न आपल्याला अधिक आवडेल केस डायग्राम वापरा. तर,

पूर्ववर्ती (वापर-केस)- वापरकर्त्याच्या दृष्टिकोनातून सिस्टम वर्तनाच्या विशिष्ट पैलूचे वर्णन (बुच).

व्याख्या अगदी समजण्याजोगी आणि सर्वसमावेशक आहे, परंतु ती वापरून ती आणखी परिष्कृत केली जाऊ शकते झिकॉम मेंटॉर"ओम:

केस वापरा- सिस्टीमद्वारे सादर केलेल्या सलग इव्हेंट्सच्या संचाचे वर्णन (व्हेरियंटसह) ज्यामुळे अभिनेत्याने पाहिलेल्या निकालाकडे नेले. एक वापर केस अभिनेते आणि प्रणाली यांच्यातील परस्परसंवादाचे वर्णन करून एखाद्या घटकाच्या वर्तनाचे प्रतिनिधित्व करते. एक उदाहरण विशिष्ट परिणाम "कसे" प्राप्त केले जाते हे दर्शवत नाही, परंतु केवळ "काय" आहे.

उदाहरणे अगदी सोप्या पद्धतीने दर्शविली आहेत - लंबवर्तुळाच्या स्वरूपात, ज्यामध्ये त्याचे नाव सूचित केले आहे. केस वापरा आणि अभिनेते ओळींनी जोडलेले आहेत. अनेकदा ओळीच्या एका टोकाला भाताचे चित्रण केले जाते. २.३

  • डिझाइन केलेल्या सिस्टमच्या वर्तनासाठी सामान्य आवश्यकतांची निर्मिती;
  • त्यानंतरच्या तपशीलासाठी सिस्टमच्या संकल्पनात्मक मॉडेलचा विकास;
  • ग्राहक आणि सिस्टमच्या वापरकर्त्यांशी संवाद साधण्यासाठी दस्तऐवजीकरण तयार करणे.
  • UML ही OO प्रणालीचे वर्णन, व्हिज्युअलायझेशन, डिझाइन आणि दस्तऐवजीकरण करण्यासाठी एक एकीकृत ग्राफिकल मॉडेलिंग भाषा आहे. UML ची रचना OO दृष्टिकोनावर आधारित PS मॉडेलिंगच्या प्रक्रियेस समर्थन देण्यासाठी, संकल्पनात्मक आणि प्रोग्राम संकल्पनांमधील संबंध व्यवस्थित करण्यासाठी आणि जटिल प्रणाली स्केलिंगच्या समस्या प्रतिबिंबित करण्यासाठी केली गेली आहे. यूएमएल मॉडेल्सचा वापर सॉफ्टवेअर लाइफ सायकलच्या सर्व टप्प्यांवर केला जातो, व्यवसाय विश्लेषणापासून ते सिस्टम मेन्टेनन्सपर्यंत. विविध संस्था त्यांच्या समस्या क्षेत्रांवर आणि वापरलेल्या तंत्रज्ञानावर अवलंबून, त्यांच्या स्वत: च्या मार्गाने UML वापरू शकतात.

    UML चा संक्षिप्त इतिहास

    1990 च्या दशकाच्या मध्यापर्यंत, विविध लेखकांनी अनेक डझनभर OO मॉडेलिंग पद्धती प्रस्तावित केल्या होत्या, ज्यापैकी प्रत्येकाने स्वतःचे ग्राफिकल नोटेशन वापरले होते. त्याच वेळी, यापैकी कोणत्याही पद्धतीची ताकद होती, परंतु "सर्व बाजूंनी", म्हणजेच सर्व आवश्यक अंदाज (लेख 1 पहा) दर्शविण्यासाठी पुरेसे पूर्ण पीएस मॉडेल तयार करण्यास परवानगी दिली नाही. याव्यतिरिक्त, OO मॉडेलिंग मानक नसल्यामुळे विकसकांना सर्वात योग्य पद्धत निवडणे कठीण झाले, ज्यामुळे सॉफ्टवेअर विकासासाठी OO दृष्टिकोनाचा व्यापक वापर प्रतिबंधित झाला.

    ऑब्जेक्ट मॅनेजमेंट ग्रुप (ओएमजी) च्या विनंतीनुसार - ऑब्जेक्ट टेक्नॉलॉजी आणि डेटाबेसच्या क्षेत्रात मानकांचा अवलंब करण्यासाठी जबाबदार एक संस्था, तीन सर्वात लोकप्रिय ओओ पद्धतींच्या लेखकांद्वारे एकीकरण आणि मानकीकरणाची तातडीची समस्या सोडवली गेली - जी. बूच , डी. रॅम्बो आणि ए. जेकबसन, ज्यांनी एकत्रित प्रयत्नांनी UML आवृत्ती 1.1 तयार केली, 1997 मध्ये OMG ने मानक म्हणून मंजूर केले.

    UML ही एक भाषा आहे

    कोणत्याही भाषेत शब्दकोष आणि अर्थपूर्ण बांधकाम करण्यासाठी शब्द एकत्र करण्याचे नियम असतात. तर, विशेषतः, प्रोग्रामिंग भाषांची व्यवस्था केली जाते, अशी यूएमएल आहे. भाषेचा शब्दसंग्रह ग्राफिक घटकांद्वारे तयार केला जातो हे त्याचे विशिष्ट वैशिष्ट्य आहे. प्रत्येक ग्राफिक चिन्हामध्ये विशिष्ट शब्दार्थ असतात, त्यामुळे एका विकसकाने तयार केलेले मॉडेल दुसऱ्याद्वारे, तसेच UML ची व्याख्या करणाऱ्या साधनाद्वारे स्पष्टपणे समजू शकते. यावरून, विशेषतः, हे खालीलप्रमाणे आहे की UML मध्ये सादर केलेले PS मॉडेल स्वयंचलितपणे OO प्रोग्रामिंग भाषेत (जसे की Java, C++, VisualBasic) भाषांतरित केले जाऊ शकते, म्हणजेच, UML ला समर्थन देणार्‍या चांगल्या व्हिज्युअल मॉडेलिंग टूलसह. मॉडेल बनवताना, आम्हाला या मॉडेलशी संबंधित प्रोग्राम कोडचा एक रिक्त देखील मिळेल.

    यूएमएल ही एक भाषा आहे, पद्धत नाही यावर जोर दिला पाहिजे. कोणत्या घटकांपासून मॉडेल तयार करायचे आणि ते कसे वाचायचे हे ते स्पष्ट करते, परंतु कोणते मॉडेल आणि कोणत्या प्रकरणांमध्ये विकसित केले जावे याबद्दल काहीही सांगत नाही. UML वर आधारित पद्धत तयार करण्यासाठी, PS विकास प्रक्रियेच्या वर्णनासह त्यास पूरक करणे आवश्यक आहे. अशा प्रक्रियेचे उदाहरण म्हणजे तर्कसंगत युनिफाइड प्रक्रिया, ज्याची नंतरच्या लेखांमध्ये चर्चा केली जाईल.

    यूएमएल शब्दसंग्रह

    मॉडेल त्यांच्यातील घटक आणि नातेसंबंधांच्या स्वरूपात दर्शविले जाते, जे आकृत्यावर दर्शविले आहे.

    सारअ‍ॅबस्ट्रॅक्शन्स हे मॉडेलचे मुख्य घटक आहेत. संस्थांचे चार प्रकार आहेत - संरचनात्मक (वर्ग, इंटरफेस, घटक, वापर केस, सहकार्य, नोड), वर्तणूक (परस्परसंवाद, स्थिती), गटबद्धता (पॅकेज) आणि भाष्य (टिप्पण्या). प्रत्येक घटक प्रकाराचे स्वतःचे ग्राफिकल प्रतिनिधित्व असते. आकृतींचा अभ्यास करताना घटकांची तपशीलवार चर्चा केली जाईल.

    संबंधसंस्थांमधील भिन्न संबंध दर्शवा. खालील प्रकारचे संबंध UML मध्ये परिभाषित केले आहेत:

    • व्यसनदोन घटकांमधील असे संबंध दर्शविते, जेव्हा त्यांच्यापैकी एकामध्ये बदल - स्वतंत्र - दुसर्याच्या अर्थशास्त्रावर परिणाम करू शकतो - अवलंबून. अवलंबित्व हे आश्रित घटकाकडून स्वतंत्र अस्तित्वाकडे निर्देशित करणाऱ्या ठिपकेदार बाणाद्वारे दर्शविले जाते.
    • असोसिएशनएक संरचनात्मक संबंध आहे हे दर्शविते की एका घटकाच्या वस्तू दुसर्‍या वस्तूंशी संबंधित आहेत. ग्राफिकदृष्ट्या, एक असोसिएशन संबंधित घटकांना जोडणारी एक ओळ म्हणून दर्शविली जाते. वस्तूंमध्ये नेव्हिगेट करण्यासाठी असोसिएशनचा वापर केला जातो. उदाहरणार्थ, "ऑर्डर" आणि "उत्पादन" या वर्गांमधील संबंध एका विशिष्ट क्रमाने निर्दिष्ट केलेली सर्व उत्पादने शोधण्यासाठी वापरला जाऊ शकतो - एकीकडे किंवा हे उत्पादन असलेल्या सर्व ऑर्डर शोधण्यासाठी - दुसरीकडे. हे स्पष्ट आहे की संबंधित कार्यक्रमांनी अशी नॅव्हिगेशन प्रदान करणारी यंत्रणा कार्यान्वित करणे आवश्यक आहे. नेव्हिगेशन फक्त एकाच दिशेने आवश्यक असल्यास, ते असोसिएशनच्या शेवटी बाणाने सूचित केले जाते. असोसिएशनची एक विशेष बाब म्हणजे एकत्रीकरण - "संपूर्ण" - "भाग" या स्वरूपाचा संबंध. ग्राफिकदृष्ट्या, ते संपूर्ण घटकाजवळच्या शेवटी समभुज चौकोनाने हायलाइट केले आहे.
    • सामान्यीकरणपालक अस्तित्व आणि मूल अस्तित्व यांच्यातील संबंध आहे. मूलत:, हा संबंध वर्ग आणि वस्तूंच्या वारशाची मालमत्ता प्रतिबिंबित करतो. सामान्यीकरण हे मूळ घटकाकडे निर्देशित करणार्‍या त्रिकोणासह समाप्त होणारी रेषा म्हणून दर्शविले आहे. मुलाला पालकांची रचना (विशेषता) आणि वागणूक (पद्धती) वारशाने मिळते, परंतु त्याच वेळी त्याच्याकडे नवीन संरचना घटक आणि नवीन पद्धती असू शकतात. जेव्हा एखादी संस्था एकापेक्षा जास्त मूळ घटकाशी संबंधित असते तेव्हा UML एकाधिक वारसास अनुमती देते.
    • अंमलबजावणी- या वर्तनाची (वर्ग, घटक) अंमलबजावणी परिभाषित करणार्‍या घटकासह वर्तनाचे तपशील (इंटरफेस) परिभाषित करणार्‍या घटकातील संबंध. हा संबंध सामान्यतः घटक मॉडेलिंगमध्ये वापरला जातो आणि पुढील लेखांमध्ये अधिक तपशीलवार वर्णन केले जाईल.

    आकृत्या. UML खालील आकृती प्रदान करते:

    • सिस्टमच्या वर्तनाचे वर्णन करणारे आकृती:
      • राज्य आकृती (राज्य रेखाचित्र),
      • क्रियाकलाप आकृत्या,
      • ऑब्जेक्ट आकृत्या,
      • अनुक्रम रेखाचित्रे,
      • सहयोग आकृती;
    • प्रणालीच्या प्रत्यक्ष अंमलबजावणीचे वर्णन करणारे आकृती:
      • घटक रेखाचित्र;
      • उपयोजन आकृत्या.

    मॉडेल नियंत्रण दृश्य. पॅकेजेस.

    आम्ही आधीच सांगितले आहे की एखाद्या व्यक्तीला मॉडेल चांगल्या प्रकारे समजण्यासाठी, पदानुक्रमाच्या प्रत्येक स्तरावर लहान संख्येने संस्था सोडून ते श्रेणीबद्धपणे आयोजित करणे आवश्यक आहे. UML मध्ये मॉडेल - पॅकेजेसचे श्रेणीबद्ध प्रतिनिधित्व आयोजित करण्याचे साधन समाविष्ट आहे. कोणत्याही मॉडेलमध्ये पॅकेजेसचा संच असतो ज्यामध्ये वर्ग, वापर प्रकरणे आणि इतर संस्था आणि आकृत्या असू शकतात. पॅकेजमध्ये इतर पॅकेजेस समाविष्ट असू शकतात, जे तुम्हाला पदानुक्रम तयार करण्यास अनुमती देतात. UML स्वतंत्र पॅकेज आकृती प्रदान करत नाही, परंतु ते इतर आकृत्यांमध्ये दिसू शकतात. पॅकेज टॅबसह आयत म्हणून प्रदर्शित केले जाते.

    UML काय प्रदान करते.

    • पॅकेजेस हायलाइट करून जटिल प्रणालीचे श्रेणीबद्ध वर्णन;
    • वापराच्या प्रकरणांचा वापर करून सिस्टमसाठी कार्यात्मक आवश्यकतांचे औपचारिकीकरण;
    • क्रियाकलाप आणि परिस्थितींचे आरेखन तयार करून प्रणालीच्या आवश्यकतांचे तपशील देणे;
    • डेटा वर्गांची निवड आणि क्लास डायग्रामच्या स्वरूपात संकल्पनात्मक डेटा मॉडेलचे बांधकाम;
    • वापरकर्ता इंटरफेसचे वर्णन करणार्‍या वर्गांची निवड आणि स्क्रीन नेव्हिगेशन योजना तयार करणे;
    • सिस्टम फंक्शन्सच्या कामगिरीमध्ये ऑब्जेक्ट्सच्या परस्परसंवादाच्या प्रक्रियेचे वर्णन;
    • क्रियाकलाप आणि अवस्थांच्या आकृत्यांच्या स्वरूपात वस्तूंच्या वर्तनाचे वर्णन;
    • सॉफ्टवेअर घटकांचे वर्णन आणि इंटरफेसद्वारे त्यांचे परस्परसंवाद;
    • सिस्टमच्या भौतिक आर्किटेक्चरचे वर्णन.

    आणि शेवटचा…

    यूएमएलची सर्व आकर्षकता असूनही, व्हिज्युअल मॉडेलिंग साधनांशिवाय वास्तविक पीएस मॉडेलिंगमध्ये ते वापरणे कठीण होईल. अशी साधने तुम्हाला डिस्प्ले स्क्रीनवर त्वरीत आकृत्या सादर करण्यास, त्यांचे दस्तऐवजीकरण करण्यास, विविध OO प्रोग्रामिंग भाषांमध्ये प्रोग्राम कोडचे रिक्त स्थान निर्माण करण्यास आणि डेटाबेस स्कीमा तयार करण्यास अनुमती देतात. त्यापैकी बहुतेकांमध्ये प्रोग्राम कोडचे पुनर्अभियांत्रिकी करण्याची शक्यता समाविष्ट आहे - प्रोग्राम्सच्या स्त्रोत कोडचे स्वयंचलितपणे विश्लेषण करून PS मॉडेलचे काही अंदाज पुनर्संचयित करणे, जे मॉडेल आणि कोड जुळत असल्याची खात्री करण्यासाठी आणि पूर्ववर्ती सिस्टमच्या कार्यक्षमतेचा वारसा असलेल्या सिस्टमची रचना करताना हे सुनिश्चित करण्यासाठी खूप महत्वाचे आहे. .

    सर्व यूएमएल आकृत्या सशर्तपणे दोन गटांमध्ये विभागल्या जाऊ शकतात, त्यापैकी पहिला सामान्य आकृत्या आहे. सामान्य आकृत्या मॉडेलिंगच्या विषयापासून व्यावहारिकदृष्ट्या स्वतंत्र असतात आणि विषय क्षेत्र, निर्णय क्षेत्र इत्यादींचा विचार न करता कोणत्याही सॉफ्टवेअर प्रकल्पात वापरली जाऊ शकतात.

    १.५.१. वापर आकृती

    वापर आकृती(केस आकृती वापरा) हे सिस्टमच्या कार्यात्मक उद्देशाचे सर्वात सामान्य प्रतिनिधित्व आहे.

    वापर आकृती मुख्य मॉडेलिंग प्रश्नाचे उत्तर देण्यासाठी आहे: प्रणाली बाह्य जगात काय करते?

    वापराच्या आकृतीमध्ये, दोन प्रकारचे मुख्य घटक वापरले जातात: केस 1 आणि अभिनेता 2 वापरा, ज्यामध्ये खालील मुख्य प्रकारचे संबंध स्थापित केले जातात:

    • अभिनेता आणि वापर प्रकरण 3 यांच्यातील संबंध;
    • अभिनेत्यांमध्ये सामान्यीकरण 4 ;
    • वापर प्रकरणांमध्ये सामान्यीकरण 5 ;
    • वापर प्रकरणांमधील अवलंबित्व (विविध प्रकारचे) 6.

    वापर आकृती, इतर कोणत्याही प्रमाणे, टिप्पण्या असू शकतात 7 . शिवाय, चार्टची वाचनीयता सुधारण्यासाठी हे करण्याची जोरदार शिफारस केली जाते.

    वापर आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक खाली दर्शविले आहेत. विभाग २.२ मध्ये तपशीलवार वर्णन दिले आहे.

    १.५.२. वर्ग आकृती

    वर्ग आकृती(वर्ग आकृती) प्रणालीच्या संरचनेचे वर्णन करण्याचा मुख्य मार्ग आहे.

    हे आश्चर्यकारक नाही, कारण यूएमएल ही मुख्यतः ऑब्जेक्ट ओरिएंटेड भाषा आहे आणि वर्ग हे मुख्य (केवळ नसल्यास) बिल्डिंग ब्लॉक आहेत.

    वर्ग आकृतीवर, एक मुख्य प्रकारचा घटक वापरला जातो: वर्ग 1 (वर्गांच्या असंख्य विशेष प्रकरणांसह: इंटरफेस, आदिम प्रकार, असोसिएशन क्लासेस आणि इतर अनेक), ज्यामध्ये खालील मुख्य प्रकारचे संबंध स्थापित केले जातात:

    • वर्ग 2 मधील संबंध (अनेक अतिरिक्त तपशीलांसह);
    • वर्ग 3 दरम्यान सामान्यीकरण;
    • वर्ग 4 आणि वर्ग आणि इंटरफेस दरम्यान अवलंबित्व (विविध प्रकारचे).

    वर्ग आकृतीमध्ये वापरलेल्या नोटेशनचे काही घटक खाली दाखवले आहेत. प्रकरण 3 मध्ये तपशीलवार वर्णन दिले आहे.

    १.५.३. ऑटोमॅटन ​​आकृती

    ऑटोमॅटन ​​आकृती(स्टेट मशीन डायग्राम) राज्यांचे स्पष्ट वाटप आणि राज्यांमधील संक्रमणांच्या वर्णनावर आधारित UML मध्ये वर्तनाचे तपशीलवार वर्णन करण्याचा एक मार्ग आहे.

    थोडक्यात, ऑटोमॅटन ​​आकृती, नावाप्रमाणेच, एक राज्य संक्रमण आलेख आहे (धडा 4 पहा), ज्यामध्ये अनेक अतिरिक्त तपशील आणि तपशील आहेत.

    ऑटोमॅटन ​​आकृतीमध्ये, एक मुख्य प्रकारचा घटक वापरला जातो - राज्ये 1 , आणि एक प्रकारचा संबंध - संक्रमणे 2 , परंतु त्या दोघांसाठी बरेच प्रकार, विशेष प्रकरणे आणि अतिरिक्त पदनाम परिभाषित केले आहेत. प्रास्ताविक पुनरावलोकनात त्या सर्वांची यादी करण्यात अर्थ नाही.

    ऑटोमॅटन ​​आकृतीच्या सर्व भिन्नतेचे तपशीलवार वर्णन विभाग 4.2 मध्ये दिले आहे आणि खालील आकृती ऑटोमॅटन ​​आकृतीवर वापरलेल्या नोटेशनचे फक्त मुख्य घटक दर्शवते.

    १.५.४. क्रियाकलाप आकृती

    क्रियाकलाप आकृती(क्रियाकलाप आकृती) - नियंत्रण प्रवाह आणि डेटा प्रवाहाच्या संकेतावर आधारित वर्तनाचे वर्णन करण्याचा एक मार्ग.

    अ‍ॅक्टिव्हिटी डायग्राम हा वर्तनाचे वर्णन करण्याचा आणखी एक मार्ग आहे जो चांगल्या जुन्या फ्लोचार्ट सारखा दिसतो. तथापि, आधुनिकीकृत नोटेशनमुळे, ऑब्जेक्ट-ओरिएंटेड दृष्टिकोनाशी सुसंगत, आणि सर्वात महत्त्वाचे म्हणजे, नवीन सिमेंटिक घटकामुळे (पेट्री नेटचे विनामूल्य व्याख्या), यूएमएल क्रियाकलाप आकृती हे सिस्टमच्या वर्तनाचे वर्णन करण्यासाठी एक शक्तिशाली साधन आहे.

    क्रियाकलाप आकृतीमध्ये, एक मुख्य प्रकारचा घटक वापरला जातो - क्रिया 1 , आणि एक प्रकारचा संबंध - संक्रमणे 2 (नियंत्रण आणि डेटाचे हस्तांतरण). काटे, विलीनीकरण, जोडणी, शाखा 3 सारखी बांधकामे देखील वापरली जातात, जी संस्थांसारखी असतात, परंतु ती खरोखर नसतात, परंतु अनेक ठिकाणच्या संबंधांची काही विशेष प्रकरणे चित्रित करण्याचा एक ग्राफिकल मार्ग आहे. क्रियाकलाप आकृती घटकांच्या शब्दार्थांची चर्चा प्रकरण 4 मध्ये तपशीलवार केली आहे. क्रियाकलाप आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक खाली दर्शविले आहेत.

    1.5.5. अनुक्रम रेखाचित्र

    अनुक्रम रेखाचित्र(अनुक्रम आकृती) प्रसारित संदेशांच्या अनुक्रमाच्या संकेतावर आधारित प्रणालीच्या वर्तनाचे वर्णन करण्याचा एक मार्ग आहे.

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

    अनुक्रम आकृतीमध्ये, एक मुख्य प्रकारचा घटक वापरला जातो - वर्गीकरण 1 (प्रामुख्याने वर्ग, घटक आणि कलाकार) परस्परसंवादाची उदाहरणे आणि एक प्रकारचा संबंध - कनेक्शन 2 ज्याद्वारे संदेशांची देवाणघेवाण केली जाते 3 . संदेश पाठवण्याचे अनेक मार्ग आहेत, जे ग्राफिकल नोटेशनमध्ये नातेसंबंधाशी संबंधित बाणाच्या स्वरूपात भिन्न असतात.

    अनुक्रम आकृतीचा एक महत्त्वाचा पैलू म्हणजे कालबाह्यतेचे स्पष्ट प्रदर्शन. इतर प्रकारच्या आकृत्यांप्रमाणे, कदाचित सिंक्रोनाइझेशन आकृत्या वगळता, अनुक्रम आकृतीमध्ये, घटकांमधील ग्राफिकल लिंक्सची उपस्थिती महत्त्वाची नाही तर आकृतीवरील घटकांची सापेक्ष स्थिती देखील महत्त्वाची आहे. बहुदा, असे मानले जाते की एक (अदृश्य) वेळ अक्ष आहे, डीफॉल्टनुसार वरपासून खालपर्यंत निर्देशित केला जातो आणि नंतर पाठवलेला संदेश खाली काढला जातो.

    वेळेचा अक्ष क्षैतिजरित्या निर्देशित केला जाऊ शकतो, अशा परिस्थितीत वेळ डावीकडून उजवीकडे वाहते असे मानले जाते.

    खालील आकृती अनुक्रम आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक दर्शविते. परस्परसंवादी ऑब्जेक्ट्स स्वतः नियुक्त करण्यासाठी, मानक नोटेशन वापरले जाते - क्लासिफायर उदाहरणाच्या नावासह एक आयत. त्यातून बाहेर पडणाऱ्या ठिपकेदार रेषेला जीवनरेषा (जीवनरेषा) 4 म्हणतात. हे मॉडेलमधील नातेसंबंधाचे पद नाही, परंतु आकृतीच्या वाचकांना योग्य दिशेने निर्देशित करण्याच्या उद्देशाने आलेखीय भाष्य आहे. जीवन रेषेवर लावलेल्या अरुंद पट्ट्यांच्या रूपातील आकृत्या देखील सिम्युलेटेड घटकांच्या प्रतिमा नाहीत. ही एक ग्राफिकल टिप्पणी आहे जी ऑब्जेक्टच्या मालकीची एक्झिक्यूशन घटना 5 किंवा दुसर्‍या शब्दात ऑब्जेक्टचे सक्रियकरण होण्याच्या कालावधी दर्शवते. कंपाऊंड परस्पर क्रिया चरण (संयुक्त तुकडा) 6 अनुक्रम आकृतीला परस्परसंवाद प्रोटोकॉलचे अल्गोरिदमिक पैलू प्रतिबिंबित करण्यास अनुमती देतात. अनुक्रम डायग्राम नोटेशनच्या अधिक तपशीलांसाठी प्रकरण 4 पहा.

    १.५.६. संप्रेषण आकृती

    संप्रेषण आकृती(संप्रेषण आकृती) - वर्तनाचे वर्णन करण्याचा एक मार्ग, शब्दार्थाने अनुक्रम आकृतीच्या समतुल्य.

    खरं तर, हे क्लासिफायर्सच्या परस्परसंवादी उदाहरणांच्या संदेश विनिमय क्रमाचे समान वर्णन आहे, केवळ इतर ग्राफिक माध्यमांद्वारे व्यक्त केले जाते. शिवाय, बहुतेक साधने आपोआप अनुक्रम आकृतीचे संप्रेषण आकृत्यांमध्ये रूपांतरित करू शकतात आणि त्याउलट.

    अशा प्रकारे, संप्रेषण आकृतीमध्ये, तसेच अनुक्रम आकृतीमध्ये, एक मुख्य प्रकारचा घटक वापरला जातो - परस्परसंवादाचे वर्गीकरण 1 आणि एक प्रकारचे संबंध - कनेक्शन 2 . तथापि, येथे जोर वेळेवर नाही, परंतु विशिष्ट उदाहरणांमधील संबंधांच्या संरचनेवर आहे.

    आकृती संप्रेषण आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक दर्शविते. परस्परसंवादी ऑब्जेक्ट्स स्वतः नियुक्त करण्यासाठी, मानक नोटेशन वापरले जाते - क्लासिफायर उदाहरणाच्या नावासह एक आयत. सहकार्याच्या आकृतीवरील घटकांची परस्पर स्थिती काही फरक पडत नाही - केवळ कनेक्शन (बहुतेकदा असोसिएशनची उदाहरणे) महत्वाची असतात, ज्यासह संदेश प्रसारित केले जातात 3 . संदेशांचा क्रम वेळेत प्रदर्शित करण्यासाठी, श्रेणीबद्ध दशांश क्रमांक वापरला जातो.

    १.५.७. घटक आकृती

    घटक आकृती(घटक आकृती) - सिम्युलेटेड सिस्टम बनविणारे मॉड्यूल (तार्किक किंवा भौतिक) यांच्यातील संबंध दर्शविते.

    घटक आकृतीमधील घटकांचा मुख्य प्रकार म्हणजे घटक स्वतः 1 , तसेच इंटरफेस 2 , ज्याद्वारे घटकांमधील संबंध दर्शविला जातो. घटक आकृतीमध्ये खालील संबंध लागू होतात:

    • घटक आणि इंटरफेस दरम्यान अंमलबजावणी (घटक इंटरफेस लागू करतो);
    • घटक आणि इंटरफेसमधील अवलंबित्व (एक घटक इंटरफेस वापरतो) 3 .

    आकृती घटक आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक दर्शविते. प्रकरण 3 मध्ये तपशीलवार वर्णन दिले आहे.

    १.५.८. प्लेसमेंट आकृती

    प्लेसमेंट आकृती(डिप्लॉयमेंट डायग्राम), सिस्टीम घटकांची रचना आणि संबंध प्रदर्शित करण्यासोबत, ते कार्यान्वित करताना संगणकीय संसाधनांवर भौतिकरित्या कसे ठेवले जातात हे दर्शविते.

    अशा प्रकारे, प्लेसमेंट आकृतीमध्ये, घटक आकृतीच्या तुलनेत, दोन प्रकारच्या संस्था जोडल्या जातात: आर्टिफॅक्ट 1 , जे घटक 2 आणि नोड 3 ची अंमलबजावणी आहे (एकतर नोड प्रकार किंवा विशिष्ट उदाहरणाचे वर्णन करणारे वर्गीकरण असू शकते), तसेच नोड्स 4 मधील संबंध संबंध, जे दर्शविते की नोड्स रनटाइममध्ये शारीरिकरित्या जोडलेले आहेत.

    आकृती प्लेसमेंट आकृतीमध्ये वापरलेल्या नोटेशनचे मुख्य घटक दर्शवते. एक घटक दुसर्‍याचा भाग आहे हे दर्शविण्यासाठी, एकतर "उपयोजित" अवलंबित्व संबंध 5 वापरला जातो किंवा एका घटकाचा आकार दुसर्‍या घटकाच्या 6 च्या आकारात ठेवला जातो. आकृतीचे तपशीलवार वर्णन प्रकरण 3 मध्ये दिले आहे.

    यूएमएल किंवा युनिफाइड मॉडेलिंग लँग्वेज ही सॉफ्टवेअर डेव्हलपमेंटच्या क्षेत्रात ऑब्जेक्ट मॉडेलिंगसाठी ग्राफिकल वर्णन भाषा आहे. परंतु यूएमएलचा वापर केवळ आयटीपुरता मर्यादित नाही, यूएमएलच्या व्यावहारिक अनुप्रयोगाचे आणखी एक मोठे क्षेत्र म्हणजे व्यवसाय प्रक्रिया मॉडेलिंग, सिस्टम डिझाइन आणि संघटनात्मक संरचनांचे मॅपिंग. यूएमएल सॉफ्टवेअर डेव्हलपरना सामान्य संकल्पनांचे प्रतिनिधित्व करण्यासाठी आणि डिझाइन आणि विकासावर लक्ष केंद्रित करण्यासाठी ग्राफिकल कन्व्हेन्शनवर सहमत होण्यास सक्षम करते.

    UML चे फायदे

    • यूएमएल मॉडेल बनवल्या जाणाऱ्या प्रणालीच्या घटकांसाठी ग्राफिकल चिन्हे वापरते आणि यूएमएल आकृत्या समजण्यास अगदी सोपे आहेत;
    • यूएमएल विविध पैलू लक्षात घेऊन जवळजवळ प्रत्येक संभाव्य दृष्टिकोनातून सिस्टमचे वर्णन करणे शक्य करते;
    • यूएमएल ऑब्जेक्ट-ओरिएंटेड आहे: त्याच्या विश्लेषण आणि बांधकाम पद्धती आधुनिक ओओपी भाषांमध्ये वापरल्या जाणार्‍या प्रोग्रामिंग पद्धतींच्या शब्दार्थाच्या जवळ आहेत;
    • UML हे खुले मानक आहे. प्रणालीचे वर्णन करण्यासाठी सर्वात आधुनिक आवश्यकता पूर्ण करून, मानक आवृत्ती ते आवृत्ती विकसित आणि विकसित होते;
    • मध्ये एक विस्तार यंत्रणा आहे जी तुम्हाला अतिरिक्त मजकूर आणि ग्राफिक प्रकार सादर करण्यास अनुमती देते, ज्यामुळे केवळ IT क्षेत्रातच UML वापरणे शक्य होते.

    UML आकृत्यांचे प्रकार

    UML मध्ये 14 आकृती प्रकार आहेत. ते 2 श्रेणींमध्ये विभागले जाऊ शकतात:

    • संरचनात्मक, माहिती संरचना प्रतिनिधित्व;
    • वर्तणूक, प्रणालीचे वर्तन आणि परस्परसंवादाच्या विविध पैलूंचे प्रतिनिधित्व करते. वर्तन आकृतीची एक वेगळी उपप्रजाती आहे परस्परसंवाद रेखाचित्रे.

    UML आकृती प्रकारांची पदानुक्रम, वर्ग आकृतीद्वारे दर्शविले जाते

    स्ट्रक्चरल आकृत्या

    1. वर्ग आकृतीऑब्जेक्ट-ओरिएंटेड मॉडेलिंगमधील मुख्य घटक आहे. या आकृतीच्या मदतीने (प्रत्यक्षात, माध्यमातून वर्ग, त्यांना विशेषता, पद्धतीआणि वर्गांमधील अवलंबित्व) डोमेन मॉडेल आणि मॉडेल केलेल्या प्रणालीच्या संरचनेचे वर्णन करते.
    2. घटक आकृतीमोठ्या ब्लॉक्समध्ये (स्ट्रक्चरल घटक) आणि शो मध्ये प्रोग्राम कोडचे विभाजन प्रदर्शित करते अवलंबित्वत्यांच्या दरम्यान. घटक पॅकेजेस, मॉड्यूल्स, लायब्ररी, फाइल्स इत्यादी असू शकतात.
    3. ऑब्जेक्ट आकृतीदिलेल्या वेळेत सिम्युलेटेड सिस्टमचा पूर्ण किंवा आंशिक कट दर्शवितो. हे वर्ग (वस्तू), त्यांची स्थिती (वर्तमान गुणधर्म मूल्ये) आणि त्यांच्यातील संबंधांची उदाहरणे दर्शवते.
    4. संमिश्र रचना आकृतीवर्गांची अंतर्गत रचना आणि शक्य असल्यास, या संरचनेच्या घटकांमधील परस्परसंवाद दर्शवते.
    5. पॅकेज आकृतीपॅकेजेस आणि त्यांच्यातील संबंध दर्शविते. विशिष्ट निकषांनुसार मॉडेल घटकांना गटांमध्ये एकत्रित करून या प्रकारचे आकृती मॉडेलची रचना सुलभ करते (आणि त्यानुसार, त्यासह कार्य करते).
    6. उपयोजन आकृतीमॉडेल्स सॉफ्टवेअर घटकांची तैनाती ( कलाकृती) संगणकीय संसाधने/हार्डवेअर घटकांवर ( नोडस्).
    7. प्रोफाइल आकृतीएका एक्स्टेंसिबिलिटी मेकॅनिझमचे वर्णन करते जे UML ला विविध विषय क्षेत्रे आणि क्रियाकलापांच्या फील्डमध्ये रुपांतरित करण्याची परवानगी देते.

    UML वर्ग आकृतीचे उदाहरण

    वर्तणूक रेखाचित्रे

    1. क्रियाकलाप आकृतीक्रिया दर्शविते ( क्रिया) त्यापैकी काही क्रियाकलाप ( क्रियाकलाप). व्यवसाय प्रक्रिया, तांत्रिक प्रक्रिया, अनुक्रमांक आणि समांतर संगणन मॉडेल करण्यासाठी क्रियाकलाप आकृत्या वापरल्या जातात.
    2. केस डायग्राम वापरा(किंवा केस डायग्राम वापरा) अभिनेते (अभिनेते) आणि सिम्युलेटेड सिस्टम (त्याच्या क्षमता) च्या वापर प्रकरणांमधील संबंधांचे वर्णन करते. आकृतीचा मुख्य उद्देश ग्राहक, विकासक आणि अंतिम वापरकर्त्यांसाठी एक सार्वत्रिक साधन आहे, ज्याच्या मदतीने सिस्टम - तिची क्षमता आणि वर्तन यावर एकत्रितपणे चर्चा करणे शक्य होईल.
    3. राज्य आकृतीएखाद्या घटकाच्या गतिशील वर्तनाचे चित्रण करते, हे दर्शविते की ही संस्था, त्याच्या वर्तमान स्थितीवर अवलंबून, विविध घटनांवर कशी प्रतिक्रिया देते. खरं तर, हे अणूंच्या सिद्धांतातील एक राज्य आकृती आहे.
    4. संप्रेषण आकृती(पूर्वीच्या आवृत्त्यांमध्ये सहकार्य आकृती) संमिश्र संरचनेचे भाग आणि सहयोगाच्या भूमिकांमधील परस्परसंवाद दर्शविते. आकृती घटक (वस्तू) यांच्यातील संबंध स्पष्टपणे दर्शवते.
    5. अनुक्रम रेखाचित्रऑब्जेक्ट परस्परसंवादाच्या क्रमाची कल्पना करण्यासाठी वापरले जाते. दिलेल्या वस्तूचे जीवनचक्र आणि काही वापरातील अभिनेत्यांचे (अभिनेते) परस्परसंवाद, ते देवाणघेवाण करत असलेल्या संदेशांचा क्रम दर्शविते.
    6. परस्परसंवाद विहंगावलोकन आकृतीअनुक्रम आकृतीचा भाग आणि नियंत्रण प्रवाह रचना समाविष्ट करते. वेगवेगळ्या दृष्टिकोनातून वस्तूंच्या परस्परसंवादाचा विचार करण्यास मदत करते.
    7. वेळेचा तक्ता- परस्परसंवाद रेखाचित्रांची एक वेगळी उपप्रजाती, वेळेत विशेष. विशिष्ट कालावधीतील वस्तूंच्या वर्तनाचा अभ्यास करण्यासाठी या प्रकारच्या आकृत्यांचा वापर केला जातो.


    आम्ही वाचण्याची शिफारस करतो

    शीर्षस्थानी