तर्क

मैं सॉफ्टवेयर इंजीनियरिंग का अध्ययन कर रहा हूं, और मैं "मॉडल संचालित इंजीनियरिंग" पाठ्यक्रम स्लाइड पर हूं।

जाहिर है, इस स्लाइड का मुख्य विषय मॉडल है।

मॉडल की सामान्य अवधारणा की परिभाषा है:

एक मॉडल एक प्रणाली का एक सार प्रतिनिधित्व है, जो इसे एक निश्चित दृष्टिकोण से दर्शाता है

फिर मेटा-मॉडल अवधारणा को परिभाषित करना जारी रखता है:

एक मेटा-मॉडल एक मॉडल है जिसका उपयोग मॉडल बनाने और समझने के लिए किया जाता है। प्रत्येक मॉडल को मेटा-मॉडल के अनुरूप होना चाहिए

मेरे पाठ्यक्रम की स्लाइड्स सबवे के मानचित्र (मॉडल) और यह किंवदंती (मेटा-मॉडल) का उदाहरण बनाती हैं।

ठीक है, अब तक बहुत अच्छा।

फिर यह मेटा-मेटामॉडल परिभाषा के साथ रुकता नहीं और जारी रहता है

मेटा-मेटामॉडल एक मॉडल है जिसका उपयोग मेटा-मॉडल को बनाने और समझने के लिए किया जाता है। प्रत्येक मेटा-मॉडल को मेटा-मेटामॉडल के अनुरूप होना चाहिए।

संदेह

अब मैं सोच रहा हूं कि एक सामान्य समस्या के विश्लेषण में एक डिजाइनर क्या करता है।

उदाहरण

एक चिड़ियाघर की जानकारी रखने की समस्या चुनें, जिसमें ये हैं:

  • जानवर
  • पिंजरा (जिसमें जानवरों को रखा जाता है)
  • श्रमिक (जो जानवरों को खिलाते हैं)

अब, मेरे विचार में इस "डोमेन" का एक मॉडल है: image

और इस मॉडल का एक मेटा-मॉडल है: image

ठीक है, अब मेटा-मेटामॉडल कौन/क्या है?

2
artas 4 सितंबर 2019, 19:08
ध्यान दें कि आपका मेटा-मॉडल केवल बाइनरी एसोसिएशन को परिभाषित करता है, जो सामान्य रूप से (यूएमएल में) कोई दिशा नहीं है, इसलिए उनके पास स्रोत और गंतव्य नहीं है, लेकिन इसमें भाग लेने वाले केवल दो वर्ग हैं।
 – 
Gerd Wagner
4 सितंबर 2019, 22:36
हाँ, मुझे खेद है, मुझे पता है कि मेरा प्रश्न वास्तव में भ्रमित करने वाला है। लेकिन यूएमएल में भी एसोसिएशन की सामान्य अवधारणा में दिशा नहीं है, (मेरी गलती सामान्य मॉडल का प्रतिनिधित्व करने के लिए यूएमएल के ठोस वाक्यविन्यास का उपयोग कर रही है) इस मेटा-मॉडल में मैं इस तथ्य का प्रतिनिधित्व करना चाहता हूं कि प्रत्येक एसोसिएशन का स्रोत और गंतव्य होता है। क्या यह मेटा-मॉडल का उद्देश्य नहीं है? एक मॉडलिंग भाषा के "अर्थपूर्ण अर्थ" (सार वाक्य रचना) का प्रतिनिधित्व करते हैं? मैं इसका बेहतर प्रतिनिधित्व करने के लिए अपना प्रश्न संपादित करूंगा। उत्तर के लिए धन्यवाद!
 – 
artas
5 सितंबर 2019, 18:57
मैं सिर्फ यह बताने जा रहा था कि यूएमएल में, संघों के पास "स्रोत" और "गंतव्य" नहीं होता है। लेकिन, निश्चित रूप से, आप उन्हें इस तरह परिभाषित करने के लिए स्वतंत्र हैं। हालांकि, आपको "स्रोत" और "गंतव्य" का उपयोग संबद्धता नामों के रूप में नहीं करना चाहिए, बल्कि संबंधित एसोसिएशन समाप्त के नामों के रूप में करना चाहिए।
 – 
Gerd Wagner
6 सितंबर 2019, 16:03

2 जवाब

मेटा-मॉडल मॉडलिंग भाषा का मॉडल है। वास्तव में, यह एक मॉडलिंग भाषा (के सार वाक्य रचना) को परिभाषित करता है।

मेटा-मेटामॉडल एक मॉडलिंग भाषाओं को परिभाषित करने के लिए एक भाषा का मॉडल है, जो एक मॉडलिंग भाषा परिभाषा भाषा को परिभाषित करता है।

आपके मेटा-मॉडल उदाहरण में आप मॉडलिंग भाषा तत्वों "कक्षाओं" और (बाइनरी निर्देशित) "संघों" को परिभाषित करते हैं। लेकिन आपको एसोसिएशन के अंतिम नामों के रूप में "स्रोत" और "गंतव्य" का बेहतर उपयोग करना चाहिए।

आपके उदाहरण के लिए मेटा-मेटामॉडल को कक्षाओं के रूप में "वर्ग" और (बाइनरी निर्देशित) "संघों" को परिभाषित करने के लिए भाषा तत्वों को शामिल करने की आवश्यकता होगी और "स्रोत" और "गंतव्य" को संघों के रूप में शामिल करना होगा। इस प्रकार, आपके उदाहरण के लिए मेटा-मेटामॉडल में केवल दो वर्ग Class और Association शामिल हो सकते हैं।

1
Gerd Wagner 4 सितंबर 2019, 22:49

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

अब मेटा-मेटा मॉडल क्या है? यह अमूर्तता में एक कदम आगे है। आपको विभिन्न चिड़ियाघर बनाने की आवश्यकता हो सकती है (आंतरिक रूप से मेटा मॉडल द्वारा नियंत्रित)। फिर बाहर से ऐसी आवश्यकताएं पैदा होंगी जो ऊपर जाती हैं। जैसे आप सफारी पार्क, या पानी के चिड़ियाघर आदि चाहते हैं। यह एक प्याज मॉडल की तरह है और आप एक और मेटा ^ 3 मॉडल संलग्न कर सकते हैं। बेशक, व्यवहार में आप लोगों को मेटा मॉडल बनाते हुए पाएंगे। वे आमतौर पर अपने कोड को सीधे एक कीबोर्ड में हैक कर लेते हैं (सिर्फ मजाक कर रहे हैं)। लेकिन एक मेटा-मॉडल से अधिक की जरूरत केवल अकादमिक हलकों में ही है।

0
qwerty_so 4 सितंबर 2019, 19:47
क्या आप चिड़ियाघर डोमेन समस्या के मॉडल, मेटामॉडल और मेटा-मेटामॉडल का ग्राफिकल उदाहरण बना सकते हैं?
 – 
artas
4 सितंबर 2019, 19:58
1
हम्म। यह थोड़ा दूर हो सकता है। एक मेटा-मॉडल बनाना कुछ ऐसा है जिसमें हफ्तों और महीनों का समय लगता है जब तक कि आप इसे उत्पादन में उपयोग नहीं कर सकते (और यह कभी भी वास्तविक अंत तक नहीं आता है)। उपर्युक्त व्यावसायिक वस्तुएं एक बहुत लंबी सूची बन जाएंगी और इसमें संभावित संबंध, गणना और ऐसी चीजें भी शामिल हैं।
 – 
qwerty_so
4 सितंबर 2019, 22:34
यदि आप वास्तव में रुचि रखते हैं तो आप मुझे पीएम कर सकते हैं और मैं आपको ईए में बना एक मेटामॉडल भेज सकता हूं जिसे मैंने अपनी एक पुस्तक के लिए बनाया है।
 – 
qwerty_so
4 सितंबर 2019, 22:38
अरे हाँ अब मेरे पास स्थिति और स्पष्ट है। मॉडल और मेटामॉडल और यूएमएल मॉडल और मेटा-मॉडल की सामान्य अवधारणा थी जिसने मुझे भ्रमित किया। धन्यवाद!
 – 
artas
5 सितंबर 2019, 18:59