मेटामॉडलिंग

एक मेटामॉडल या सरोगेट मॉडल एक मॉडल का एक मॉडल है, और मेटामॉडलिंग ऐसे मेटामॉडल बनाने की प्रक्रिया है। इस प्रकार मेटामॉडलिंग या मेटा-मॉडलिंग समस्याओं के एक पूर्वनिर्धारित वर्ग के वैज्ञानिक मॉडलिंग के लिए लागू और उपयोगी फ्रेम, नियमों, बाधाओं, मॉडल और सिद्धांतों का विश्लेषण, निर्माण और विकास है। जैसा कि इसके नाम से पता चलता है, यह अवधारणा सॉफ्टवेयर इंजीनियरिंग और प्रणाली अभियांत्रिकी  में मेटा- और मॉडलिंग की धारणाओं को लागू करती है। मेटामॉडल कई प्रकार के होते हैं और इनके विविध अनुप्रयोग होते हैं।

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

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

मेटामॉडलिंग के मेटा कैरेक्टर के कारण, प्रैक्सिस (प्रक्रिया) और मेटामॉडल्स के सिद्धांत दोनों ही विकट के लिए प्रासंगिक हैं: मेटासाइंस, मेटा दर्शन, मेटाथ्योरी और सिस्टमिक्स, और मेटा-चेतना। अवधारणा गणित में उपयोगी हो सकती है, और कंप्यूटर विज्ञान और कंप्यूटर इंजीनियरिंग/सॉफ्टवेयर इंजीनियरिंग में व्यावहारिक अनुप्रयोग हैं। उत्तरार्द्ध इस लेख का मुख्य फोकस हैं।

परिभाषा
सॉफ्टवेयर इंजीनियरिंग में, मॉडल (सार) का उपयोग अधिक सामान्य कोड-आधारित विकास तकनीकों का एक विकल्प है। एक मॉडल हमेशा एक अद्वितीय मेटामॉडल के अनुरूप होता है। मॉडल संचालित इंजीनियरिंग की वर्तमान में सबसे सक्रिय शाखा में से एक है, लक्ष्य प्रबंधन समूह  द्वारा प्रस्तावित मॉडल संचालित वास्तुकला नामक दृष्टिकोण। यह दृष्टिकोण मेटा-ऑब्जेक्ट सुविधा नामक मेटामॉडल लिखने के लिए भाषा के उपयोग पर आधारित है। ऑब्जेक्ट मैनेजमेंट ग्रुप द्वारा प्रस्तावित विशिष्ट मेटामॉडल  एकीकृत मॉडलिंग भाषा, SysML, SPEM या CWM हैं। मानकीकरण के लिए अंतर्राष्ट्रीय संगठन ने भी मानक मेटामॉडल ISO/IEC 24744 प्रकाशित किया है। नीचे प्रस्तुत सभी भाषाओं को MOF मेटामॉडल के रूप में परिभाषित किया जा सकता है।

मेटा[[मॉडलिंग की दिनांक]]
मेटाडेटा मॉडलिंग एक प्रकार का मेटामॉडलिंग है जिसका उपयोग सॉफ्टवेयर इंजीनियरिंग और सिस्टम इंजीनियरिंग में कुछ पूर्वनिर्धारित वर्ग की समस्याओं के लिए लागू और उपयोगी मॉडल के विश्लेषण और निर्माण के लिए किया जाता है। (यह भी देखें: डेटा मॉडलिंग)।

एमटी ([[मॉडल परिवर्तन भाषा)]] मॉडल संचालित इंजीनियरिंग में एक महत्वपूर्ण कदम मॉडल रूपांतरण भाषाओं का व्यवस्थित उपयोग है। OMG ने इसके लिए प्रश्नों/दृश्यों/रूपांतरणों के लिए QVT नामक एक मानक प्रस्तावित किया है। QVT मेटा-ऑब्जेक्ट सुविधा (MOF) पर आधारित है। कई अन्य मॉडल ट्रांसफ़ॉर्मेशन लैंग्वेज (MTLs) में, इस मानक के कार्यान्वयन के कुछ उदाहरण हैं AndroMDA, VIATRA, Tefkat, MT (मॉडल ट्रांसफ़ॉर्मेशन लैंग्वेज), कई कई डिजाइन पोर्टोफिनो

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

मेटामॉडल्स के प्रकार
सॉफ्टवेयर इंजीनियरिंग के लिए, कई प्रकार के मॉडल (और उनके संबंधित मॉडलिंग गतिविधियों) को प्रतिष्ठित किया जा सकता है:
 * मेटाडेटा मॉडलिंग (मेटाडेटा मॉडल)
 * मेटा-प्रोसेस मॉडलिंग (मेटाप्रोसेस मॉडल)
 * निष्पादन योग्य मेटा-मॉडलिंग (उपर्युक्त दोनों को मिलाकर और भी बहुत कुछ, जैसा कि सामान्य प्रयोजन उपकरण धन्यवाद में है)
 * मॉडल रूपांतरण भाषा (नीचे देखें)
 * बहुपद मेटामॉडल्स
 * तंत्रिका नेटवर्क मेटामॉडल
 * क्रिंगिंग मेटामॉडल्स
 * टुकड़ेवार बहुपद (स्पलाइन) मेटामॉडल
 * ढाल-वर्धित सिंचाई (GEK)

मेटामॉडल्स के चिड़ियाघर
समान मेटामॉडल्स के एक पुस्तकालय को मेटामॉडल्स का चिड़ियाघर कहा गया है। कई प्रकार के मेटा-मॉडल चिड़ियाघर हैं। कुछ ईकोर में व्यक्त किए गए हैं। अन्य मेटा-ऑब्जेक्ट सुविधा 1.4 - XML ​​मेटाडेटा इंटरचेंज 1.2 में लिखे गए हैं। यूनिफाइड मॉडलिंग लैंग्वेज-XML मेटाडेटा इंटरचेंज1.2 में व्यक्त किए गए मेटामॉडल्स को यूएमएल के लिए पोसीडॉन में अपलोड किया जा सकता है, जो यूनिफाइड मॉडलिंग लैंग्वेज कंप्यूटर एडेड सॉफ्टवेयर इंजीनियरिंग  टूल है।

यह भी देखें

 * व्यापार संदर्भ मॉडल
 * सामग्री संचालन
 * मॉडल-संचालित इंजीनियरिंग (MDE)
 * मॉडल-संचालित आर्किटेक्चर (एमडीए)
 * डोमेन विशिष्ट भाषा (डीएसएल)
 * डोमेन-विशिष्ट मॉडलिंग (DSM)
 * सामान्य ग्रहण मॉडलिंग सिस्टम (जीईएमएस)
 * केरमेटा (कर्नेल मेटा-मॉडलिंग)
 * मेटाडाटा
 * मेटाकेस टूल (कंप्यूटर एडेड सॉफ्टवेयर इंजीनियरिंग टूल्स के लिए टूल बनाने के लिए टूल)
 * विधि इंजीनियरिंग
 * MODAF मेटा-मॉडल
 * क्यूवीटी | एमओएफ प्रश्न / विचार / परिवर्तन (एमओएफ क्यूवीटी)
 * वस्तु प्रक्रिया पद्धति
 * आवश्यकताओं के विश्लेषण
 * अंतरिक्ष मानचित्रण
 * सरोगेट मॉडल
 * परिवर्तन भाषा
 * वियात्रा (वियात्रा)
 * एक्सएमएल परिवर्तन भाषा (एक्सएमएल टीएल)

अग्रिम पठन

 * Booch, G., Rumbaugh, J., Jacobson, I. (1999), The Unified Modeling Language User Guide, Redwood City, CA: Addison Wesley Longman Publishing Co., Inc.
 * J. P. van Gigch, System Design Modeling and Metamodeling, Plenum Press, New York, 1991
 * Gopi Bulusu, hamara.in, 2004 Model Driven Transformation
 * P. C. Smolik, Mambo Metamodeling Environment, Doctoral Thesis, Brno University of Technology. 2006
 * Gonzalez-Perez, C. and B. Henderson-Sellers, 2008. Metamodelling for Software Engineering. Chichester (UK): Wiley. 210 p. ISBN 978-0-470-03036-3
 * M.A. Jeusfeld, M. Jarke, and J. Mylopoulos, 2009. Metamodeling for Method Engineering. Cambridge (USA): The MIT Press. 424 p. ISBN 978-0-262-10108-0, Open access via http://conceptbase.sourceforge.net/2021_Metamodeling_for_Method_Engineering.pdf
 * G. Caplat Modèles & Métamodèles, 2008  -  ISBN 978-2-88074-749-7
 * Fill, H.-G., Karagiannis, D., 2013. On the Conceptualisation of Modelling Methods Using the ADOxx Meta Modelling Platform, Enterprise Modelling and Information Systems Architectures, Vol. 8, Issue 1, 4-25.
 * Fill, H.-G., Karagiannis, D., 2013. On the Conceptualisation of Modelling Methods Using the ADOxx Meta Modelling Platform, Enterprise Modelling and Information Systems Architectures, Vol. 8, Issue 1, 4-25.