| <?php require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); $App = new App(); $Nav = new Nav(); $Menu = new Menu(); include($App->getProjectCommon()); # All on the same line to unclutter the user's desktop' |
| |
| #***************************************************************************** |
| # |
| # template.php |
| # |
| # Author: Freddy Allilaire |
| # Date: 2005-12-07 |
| # |
| # Description: Type your page comments here - these are not sent to the browser |
| # |
| # |
| #**************************************************************************** |
| |
| # |
| # Begin: page-specific settings. Change these. |
| $pageTitle = "AMW Use Cases"; |
| $pageKeywords = "AMW, model weaving, use cases, traceability, interoperability, matching, comparison"; |
| $pageAuthor = "Marcos Didonet Del Fabro"; |
| |
| # End: page-specific settings |
| # |
| |
| |
| # Paste your HTML content between the EOHTML markers! |
| $html = <<<EOHTML |
| |
| <!-- Main part --> |
| <div id="midcolumn"> |
| <h1><font color='#280882'>AMW</font> Use Cases</h1> |
| |
| <a name="goals"></a> |
| <img align="right" src="../resources/amwLogoSmall.png" valign="top" style="padding-left: 10px;" alt="AMW Logo" /> |
| |
| |
| Weaving models may be used in several application scenarios, such as <b>metamodel comparison, traceability, |
| model matching, model annotation, tool interoperability</b>. <br/> |
| This is because it is often necessary to establish relationships between elements of different |
| models. |
| <p/> |
| These use cases are implemented using AMW. AMW supports such a variety of application scenarios because it has an adaptive interface |
| that handles different metamodel extensions (AMW is fully implemented using the reflective API of EMF). |
| <br/> |
| The plug-in also provides a set of extensions points that enables to add new functionalities when necessary. |
| <p/> |
| This section describes a set of key use cases of AMW. The use cases are illustrated with a general overview. |
| Some of them provide more precise documentation, as well as fully implemented examples. |
| <p/> |
| |
| <hr class="clearer"/> |
| |
| <div class="homeitem3col" > |
| <h3>List of use cases</h3> |
| <ul> |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%" valign="middle"> |
| <h2> <a href="compare/">Metamodel comparison and model migration</a> </h2> |
| </td> |
| <td width="60%" align="justify"> |
| This use case shows how we use weaving models to compare two versions of a metamodel. |
| The domain of the metamodel is the development of embedded software in the avionics industry. |
| The weaving model is used to produce a transformation between the models conforming to these metamodels. |
| </td> |
| </tr> |
| </table> |
| </li> |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%" valign="middle"> |
| <h2><a href="traceability/">Traceability of model transformations</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Traceability is used in different applications. This use case considers an ATL transformation<!--from |
| a Book metamodel to a Publication metamodel -->. We need to keep track of the elements |
| of the source model that were used to produce one target model element. |
| Weaving models define links to save this traceability information. |
| </td> |
| </tr> |
| </table> |
| </li> |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%" valign="middle"> |
| <h2><a href="matching/">Model matching</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Matching is the process of creating weaving models. |
| The matching process is the basis for several other use cases of weaving models. |
| <br/> |
| This use case gives a general overview of this process and how AMW is integrated with ATL to be able to |
| execute different matching heuristics. |
| </td> |
| |
| </tr> |
| </table> |
| </li> |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%"> |
| <h2 align><a href="interoperability/">Tool interoperability</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Nowadays, there are a large number of tools that can be used to solve similar problems. However, the tools |
| typically have heterogeneous data format and semantics. |
| This use case shows how weaving models and model transformations are used to handle tool interoperability |
| issues between two well-known bug tracking tools, |
| <a href="http://www.mantisbt.org/">Mantis</a> and <a href="http://www.bugzilla.org/">Bugzilla</a>. |
| </td> |
| </tr> |
| </table> |
| </li> |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%"> |
| <h2 align><a href="annotation/">Model annotations in Java 1.4</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Models are annotated to add extra information that are not relevant to be defined in the metamodel. |
| For instance, a model can be annotated with preprocessing informations, comments, etc. |
| This use case shows how weaving models are used to annotate Java 1.4 metamodels. |
| </td> |
| |
| </tr> |
| </table> |
| </li> |
| |
| <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%"> |
| <h2 align><a href="modelgen/">Bridge between SQL and KM3</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| This use case shows how weaving models and model transformations are used to translate SQL-DDL (Data Definition |
| Language) into KM3 (modeling technical space). The use case presents the complete bridging process: the injection of the |
| SQL file, the weaving model, the transformations, and finally the extraction into a KM3 file. |
| </td> |
| </tr> |
| </table> |
| </li> |
| |
| <!-- <li style="list-style:none"> |
| <table width="100%"> |
| <tr> |
| <td width="20%"> |
| <h2 align><a href="RDBMSXML/">Database to XML</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Models are annotated to add extra information that are not relevant to be defined in the metamodel. |
| For instance, a model can be annotated with preprocessing informations, comments, etc. |
| This use case shows how weaving models are used to annotate Java 1.4 metamodels. |
| </td> |
| |
| </tr> |
| </table> |
| </li> |
| --> |
| |
| |
| <li style="list-style-image:none;list-style:none" > |
| <table width="100%"> |
| <tr> |
| <td width="20%" valign="middle"> |
| <h2><a href="AOM/">Aspect oriented modeling</a></h2> |
| </td> |
| <td width="60%" align="justify"> |
| Aspect oriented modeling aims at weaving business models and cross cutting models in a single model. |
| This use case demonstrates how AMW is used as an aspect oriented modeling solution to weave |
| a generic communication protocol with specific communication types. |
| </td> |
| |
| </tr> |
| </table> |
| </li> |
| |
| <!-- |
| <li style="list-style-image:none;list-style:none" > |
| <table width="100%"> |
| <tr> |
| <td width="20%" valign="middle"> |
| <h2>Model alignment</h2> |
| </td> |
| <td width="60%" align="justify"> |
| A model alignement consists of a set of links between the model elements. |
| An alignment is used to create an integrated view of two models. |
| The alignment may be used as an input to merge algorithms. |
| <br/> |
| </td> |
| <td align="center"> |
| <a href="http://www.inria.fr/recherche/equipes/atlas.en.html">INRIA ATLAS</a> |
| </td> |
| </tr> |
| </table> |
| </li> |
| --> |
| |
| </ul> |
| </div> |
| <hr class="clearer" /> |
| </div> |
| |
| <div id="rightcolumn"> |
| |
| </div> |
| |
| EOHTML; |
| |
| |
| # Generate the web page |
| $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html); |
| ?> |