Język transformacji ATLAS - ATLAS Transformation Language
Deweloper (y) | OBEO, INRIA Społeczność wolnego oprogramowania |
---|---|
Wersja stabilna | 4.3.0 / 22 lutego 2021 r .
|
System operacyjny | Wieloplatformowy |
Licencja | Licencja publiczna Eclipse |
Stronie internetowej | www |
ATL ( ATLAS Transformation Language ) to modelowy język transformacji i zestaw narzędzi opracowany i utrzymywany przez OBEO i AtlanMod. Został zainicjowany przez zespół AtlanMod (wcześniej nazywany ATLAS Group). W dziedzinie inżynierii opartej na modelach (MDE) ATL zapewnia sposoby tworzenia zestawu modeli docelowych z zestawu modeli źródłowych.
Wydany na warunkach Licencji Publicznej Eclipse , ATL jest komponentem M2M (Eclipse), wchodzącym w skład Eclipse Modeling Project (EMP).
Przegląd
ATL to model transformacji języka (MTL) opracowany przez OBEO i INRIA w celu udzielenia odpowiedzi na zapytanie ofertowe QVT . QVT to standard Object Management Group służący do przeprowadzania transformacji modeli . Może być używany do tłumaczenia składniowego lub semantycznego . ATL jest zbudowany w oparciu o maszynę wirtualną do transformacji modelu .
ATL jest odpowiedzią grupy badawczej ATLAS INRIA & LINA na zapytanie ofertowe OMG MOF / QVT. Jest to język transformacji modelu określony zarówno jako metamodel, jak i jako tekstowa składnia konkretna. Jest to hybryda deklaratywnego i imperatywnego. Preferowanym stylem pisania transformacji jest deklaratywny, co oznacza, że proste odwzorowania można wyrazić w prosty sposób. Jednak konieczne są konstrukcje, dzięki czemu nadal można określić niektóre mapowania zbyt złożone, aby można je było obsługiwać deklaratywnie. Program transformacji ATL składa się z reguł, które definiują sposób dopasowywania elementów modelu źródłowego i nawigacji w celu tworzenia i inicjowania elementów modeli docelowych.
Architektura
Zdefiniowano i zaimplementowano maszynę wirtualną zorientowaną na transformację modelu, aby zapewnić obsługę wykonywania ATL przy zachowaniu pewnego poziomu elastyczności. W rzeczywistości ATL staje się wykonywalny po prostu dlatego, że istnieje określona transformacja z jego metamodelu do kodu bajtowego maszyny wirtualnej. Rozszerzenie ATL polega więc głównie na sprecyzowaniu semantyki wykonywania funkcji nowego języka w kategoriach prostych instrukcji: podstawowych działań na modelach (tworzenie elementów i przypisywanie właściwości).
Przykład
Program ATL ( tutaj T1.atl ) przyjmie model Ma.xmi jako wejście i wyprodukuje model Mb.xmi jako wyjście. Oba modele można wyrazić w standardzie OMG XMI . W modelu Ma jest zgodna z metamodel MMa.km3 . Model Mb jest zgodny z metamodelem MMb.km3 . KM3 zapis jest prosty i neutralny opis Metamodel języka.
Sam program ATL ( tutaj T1.atl ) również jest modelem, więc jest zgodny z metamodelem (metamodelem ATL), którego tutaj nie przedstawiono.
Program ATL składa się z nagłówka, zestawu funkcji wolnych od skutków ubocznych zwanych pomocnikami oraz zestawu reguł .
Wdrożenia
Istnieje powiązana wtyczka ATL Development Toolkit dostępna w otwartym kodzie źródłowym z projektu ATL Eclipse Modeling Project (EMP), która implementuje język transformacji ATL, który jest inspirowany językiem zapytań / widoku / transformacji MOF QVT . Dostępna jest duża biblioteka przekształceń. MOF QVT to język specyficzny dla domeny do transformacji modelu. Obsługuje modele zgodne z Ecore, EMOF, KM3 (specyficzny język domeny dla specyfikacji metamodelu) itp. ATL działa również w MDR / NetBeans .
Zobacz też
- Inżynieria oparta na modelach (MDE)
- Modelowanie specyficzne dla domeny (DSM)
- Język transformacji modelu (MTL)
- Zapytania / widoki / transformacje MOF (QVT)
Bibliografia
- Manifest MDA dostępny w MDA Journal
- Model Driven Architecture: Applying MDA to Enterprise Computing , David S. Frankel , John Wiley & Sons, ISBN 0-471-31920-1 , książka
- O zgodności architektonicznej ATL i QVT. Frederic Jouault , Ivan Kurtev w: Proceedings of ACM Symposium on Applied Computing (SAC 06), Model Transformation Track, Dijon, Bourgogne, Francja, (kwiecień 2006), papier pdf .
Dalsza lektura
- Bohlen, M: QVT i transformacja wielu metamodeli w MDA . Opublikowane w sieci Web .pdf (en) , (ger)
- Wagelaar, D: MDE Case Study: Using Model Transformations for UML and DSLs . Opublikowane w sieci Web .pdf
- Czarnecki, K. i Helsen, S: Klasyfikacja podejść do transformacji modelu. W: Proceedings of the OOPSLA'03 Workshop on the Generative Techniques in Context Of Model-Driven Architecture. Anaheim (Kalifornia, USA). Opublikowane w sieci Web .pdf
- ModelBaset.net. Narzędzia MDA . Stronie internetowej
- SoftwareMag.com. Narzędzia MDA . Opublikowane w sieci Web .html
- Artykuły
- Architektura oparta na modelach : wizja, standardy i nowe technologie w OMG.org
- Wprowadzenie do architektury opartej na modelu w witrynie IBM.com
- Od kompozycji obiektów do transformacji modelu z MDA na OMG.org
- ATL na Eclipsepedii
- Jouault, F i Kurtev, I: On the Architectural Alignment of ATL and QVT . W: Materiały ACM Symposium on Applied Computing (SAC 06), Model Transformation Track. Dijon (Bourgogne, FRA), kwiecień 2006. Publikacja internetowa .pdf
- Język transformacji modelu ATL Atlas
- Grupa dyskusyjna Eclipse / M2M: grupa dyskusyjna ATL .
- Jouault, F i Kurtev, I: On the Architectural Alignment of ATL and QVT . W: Materiały ACM Symposium on Applied Computing (SAC 06), Model Transformation Track. Dijon (Bourgogne, FRA), kwiecień 2006. Publikacja internetowa .pdf
- Eclipse: M2M / ATL jest częścią nowego projektu modelowania najwyższego poziomu [1]
- Narzędzie do transformacji modelu UMT UML
- Grønmo, R., i Oldevik, J: An Empirical Study of the UML Model Transformation Tool (UMT) . W: INTEROP-ESA'05, luty 2005. Publikacja internetowa .pdf
- Powiązane podejścia programistyczne oparte na modelach
- Voelter, M: Rozwój oprogramowania oparty na modelu . Opublikowane w sieci Web .pdf
- MDA witryny portalu i transformacja modelu : dostęp do witryny