Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
|
pl:miw:2009:miw09_mof_desc:presentation [2009/10/02 08:59] jsi08 |
pl:miw:2009:miw09_mof_desc:presentation [2019/06/27 15:50] (aktualna) |
| |
===== Definicja MOF'a. ===== | ===== Definicja MOF'a. ===== |
| |
* Meta Object Facility jest standardem Object Management Group (OMG) dla inżynierii opartej na modelowaniu | |
\\ | \\ |
| * Meta Object Facility jest standardem Object Management Group (OMG) dla inżynierii opartej na modelowaniu |
* Celem OMG było ustandaryzowanie systemów zorientowanych obiektowo | * Celem OMG było ustandaryzowanie systemów zorientowanych obiektowo |
* MOF został stworzony za pomocą UML'a oraz definiuje UML'a | * MOF został stworzony za pomocą UML'a oraz definiuje UML'a |
| * MOF może być używany do definiowania metamodeli zorientowanych obiektowo takich jak UML jak również niezorientowanych obiektowo jak sieci Petriego czy web serwisy. |
| |
| ===== Pakiety EMOF i CMOF ===== |
| \\ |
| * EMOF: podstawowy MOF |
| * CMOF: rozszerzenie uzupełniające dla języka MOF |
| \\ |
| {{ pl:miw:2009:miw09_mof_desc:files:mof_structure.png }} |
| |
| ===== Pakiety EMOF i CMOF ===== |
| \\ |
| \\ |
| |
| MOF definiuje cele obu pakietów jako: //"Podstawowym celem pakietu EMOF jest możliwość budowania prostych metamodeli przy użyciu prostych koncepcji oraz wspieranie rozszerzeń (poprzez mechanizm rozszerzenia klas) dla bardziej skomplikowanych metamodeli przy użyciu CMOF"//. |
| |
| ===== Struktura czterowarstwowa MOF'a ===== |
| \\ |
| \\ |
| MOF składa się z architektury 4-warstowej, zapewnia warstwę metamodelu oraz górną warstwę zwaną warstwą M3 i poza tą warstwą opisuje zasady tworzenia i manipulowania modelami i metamodelami przez zdefiniowanie interfejsu COBRA (Common Object Requesting Broker Architecture) do opisu tych operacji. |
| |
| ===== Struktura czterowarstwowa MOF'a ===== |
| \\ |
| - **warstwa M3**: w tej warstwie istnieje model M3 który definiuje język używany przez MOF do budowania metamodeli zwanych modelami M2. |
| - **warstwa M2**: tutaj występuje model M2 który opisuje elementy warstwy M1 i jej modeli M1, te modele mogą być opisane np. za pomocąUML'a. |
| - **warstwa M1**: tutaj występują modele M1 którymi dla przykładu może być model UML'a. |
| - **warstwa M0**: ta warstwa jest ostatnią warstwą zwaną warstwą danych i jest używana do opisu obiektów świata rzerzywistego. |
| |
| |
| ===== Struktura czterowarstwowa MOF'a ===== |
| |
| {{ pl:miw:2009:miw09_mof_desc:files:mof_layers.png?350x438 }} |
| |
| |
| ===== Jak używać MOF'a ===== |
| \\ |
| Chcemy opisać nasz system za pomocą języka MOF: |
| \\ |
| 1. Powinniśmy zapewnić podstawowy zakres UML'a który zapewni bogaty "język" do opisu takich typów systemów jak: |
| * referencje, |
| * operacje, |
| * wyjątki, |
| * klasy i dziedziczenie, |
| * klasy abstrakcyjne, |
| |
| ===== Jak używać MOF'a ===== |
| \\ |
| * różnorodność, |
| * agregację, |
| * kompozycje. |
| \\ |
| 2. Powinniśmy opisać klasy oraz asocjacje: |
| * Klasy powinny opisywać koncepty dla danego typu systemu. |
| * Asocjacje powinny opisywać relacje między pojęciami w systemie. |
| |
| ===== Narzędzia - MOFLON ===== |
| \\ |
| MOFLON jest darmowym narzędziem do modelowania przy użyciu języka jakim jest MOF. Jest to narzędzie w którym możemy modelować w łatwy sposób za pomocą edytora graficznego. Interfejs programu przedstawiony jest na rysunku poniżej. |
| |
| {{ pl:miw:2009:miw09_mof_desc:files:moflon.jpg?360x216 }} |
| |
| ===== Przykład struktury modelu w MOFLONIE ===== |
| \\ |
| {{ pl:miw:2009:miw09_mof_desc:files:xttdiagrams.jpg }} |
| |
| |
| ===== Materiały ===== |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:scriptie_overbeek.pdf|Meta Object Facility (MOF) Book]] |
| * [[http://www.omg.org/technology/documents/modeling_spec_catalog.htm|Catalog of OMG Modeling and Metadata Specifications]] |
| * [[http://www.omg.org/docs/html/06-01-01/Output/06-01-01.htm|Meta Object Facility (MOF) Core Specification]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:tutorial_on_mof.ppt|A Tutorial on:Metamodel Standardization & MOF]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:mof-xmi-exposed.pdf|MOF/XMI Exposed]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:swese2006.pdf|A MOF-based Metamodel and UML Syntax for Networked Ontologies]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:metamodeling.ppt|MOF Meta-Models and UML Profiles]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:staxtutorial.pdf|MOFLON Tutorial]] |
| * [[https://ai.ia.agh.edu.pl/wiki/_media/pl:miw:2009:miw09_mof_desc:files:xmip.pdf|Report of MOF/XMI]] |
| |