Кіріспе

VIATRA – Eclipse Modeling Framework (EMF) негізінде құрылған және Eclipse Foundation ұйымдастырған ашық бастапқы кодты модельді трансформациялау аясы. VIATRA модельді трансформациялауды дамытуды қолдайды, ерекше назар оқиғаға негізделген, реактивті трансформацияларға, яғни модельдегі белгілі бір сыртқы өзгерістерге жауап ретінде болатын ережелерге негізделген сценарийлерге беріледі. Модельдегі үлгілерді және өзгерістерді табуға арналған ұсымды сұрауларды қолдауға сүйене отырып, VIATRA трансформацияларды анықтау үшін тілді (VIATRA Query Language, VQL) және негізгі модельдегі өзгерістерге байланысты белгілі бір трансформацияларды орындау үшін реактивті трансформация қозғалтқышын ұсынады.

Шығуы мен тарихы

Қазіргі VIATRA жобасы – бұрынғы VIATRA2 аясының толыққанды қайта жазылуы болып табылады, толық үйлесімділікпен және EMF модельдерін толық қолдайды. Жобада әртүрлі нұсқалар арасындағы негізгі айырмашылықтарды сипаттайтын тарих вики-беті бар. VIATRA2 аясының алдыңғы қолданыстарына келетін болсақ, ол DECOS еуропалық жобасының сенімді кіріктірілген жүйелер саласындағы модельдік трансформация қозғалтқышы ретінде қызмет етті. Бұдан бөлек, VIATRA2 үшін дәстүрлі қолдану саласы – 1998 жылдан бастап – әртүрлі салалардан алынған жүйелік модельдерді талдауды қолдау болды (қауіпсіздікке маңызды және/немесе кіріктірілген жүйелер, берік бизнес-қосымшалар, делдалдық бағдарламалар, қызметке бағытталған архитектуралар) әртүрлі модельдеу тілдерін (SysML, UML, BPMN және т.б.) пайдалана отырып сипатталған модельдік жүйелерді жасау процесінде. Мұндай модельді талдау әдетте тексеру және растау, сынақтан өткізу, қауіпсіздік және қорғаныш талдауы, сондай-ақ жобаланып жатқан жүйенің функционалдық емес сипаттамаларын (сенімділік, қолжетімділік, жауап беру жылдамдығы, өткізу қабілеті сияқты) ерте бағалауды қамтиды. Бұл қолдану жағдайлары мен салалар VIATRA үшін маңызды бағыттарды құрайды және көбінесе IncQuery Suite пайдаланушы интерфейсі ретінде қолданылады.

Қадамдасу

Нақты модельге негізделген жүйелерді әзірлеу VIATRA-ның басты қолданыс саласы болғандықтан, (i) модель түрлендірулері математикалық тұжырымдамамен нақты берілуі және (ii) осы түрлендірулер автоматтандырылуы керек, соның арқасында мақсатты математикалық модельдер толық автоматты түрде туындырылуы мүмкін. Бұл мақсатқа жету үшін VIATRA математикалық тұжырымдамаға негізделген ережелер жинағынан тұратын спецификация формализміне, атап айтқанда, граф түрлендіруге (GT) сүйенеді. VIATRA көрінбейтін формальды әдістерге ұмтылады: мұнда формальды егжей-тегжейлі мәліметтер автоматтандырылған модель түрлендірулері арқылы жасырылады, олар жүйелік модельдерді әртүрлі математикалық салаларға (және, мүмкіндігінше, керісінше) проекциялайды. VIATRA-да модель түрлендірулерін анықтаудың негізгі түсінігі – (граф) үлгі болып табылады. Үлгі – модель элементтерінің жиынтығы, олар белгілі бір құрылымға орналастырылып, қосымша шектеулерді орындайды (атрибут шарттарымен немесе басқа үлгілермен анықталғандай). Үлгілер белгілі бір модель мысалдарымен сәйкес келуі мүмкін, ал үлгіні сәтті сәйкестендіру кезінде элементарлық модельді өзгерту граф түрлендіру ережелерімен анықталады. OCL сияқты, граф түрлендіру ережелері түрлендірудің алғы және кейінгі шарттарын сипаттайды, бірақ граф түрлендіру ережелерінің орындалуы кепілдендіріледі, бұл – басты тұжырымдамалық айырмашылық. Атап айтқанда, VIATRA қазіргі кезде реактивті, оқиғаларға негізделген түрлендірулерге баса назар береді, сондықтан VIATRA-да ережелерді орындау механизмі бар, ол модельдегі өзгерістерді (оқиғалар ретінде түсіндіріледі) қадағалайды және егер өзгеріс сол ереженің алғышартының орындалуына әкелсе (немесе басқа да бақылау шарттары орындалса), сол ережені іске қосады.