<?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 Case - Metamodel Comparison";
	$pageKeywords	= "";
	$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 Case - Metamodel comparison and model migration</h1>

		<a name="goals"></a>
		<img align="right" src="../../resources/amwLogoSmall.png" valign="top" style="padding-left: 10px;" alt="AMW Logo" />
		<blockquote>
			<ul>
				<li><a href="#overview"><b>Overview</b></a></li>
				<li><a href="#download"><b>Download and examples</b></a></li>
				<li><a href="#related"><b>Related use cases</b></a></li>
				<!--<li><a href="#documentation"><b>Documentation</b></a></li>-->
			</ul>
		</blockquote>

		<hr class="clearer" />

		<div id="container>
		<table>
			<COLGROUP>
				<COL width="2%">
				<COL width="98%">
		<tr>
			<td></td>
			<td>

		Metamodels need to be compared for several reasons. Two important reasons are: <br/>
		1) to migrate the models conforming to different versions of a metamodel;<br/>
		2) to represent the differences between two similar metamodels. 
		<p/>The objective of this use case is to demonstrate
		how weaving models created with the help of the AMW plugin are used to compare different models.  The weaving model is
		used to produce  model transformations between the models conforming to these metamodels.
		
		<h4 STYLE="font-size: 10pt; padding: 0; border-bottom: 2px solid #49457C; background-position: top left; background-repeat; repeat-x;">
		<a name="overview">Overview</a></h4>
		
		<p align="justify">
	    
	    This use case compares two different versions of the same metamodel, <i>Scade(v1)</i> and <i>Scade(v2)</i>. The different versions 
	    have been developed by two different persons, based on a formal specification. <a href="http://www.esterel-technologies.com/products/scade-suite/">Scade</a> is a standard for 
	    development of embedded software for the Avionics Industry.
	    	    
	    The goal is to produce a transformation that transforms the source model conforming to <i>Scade(v1)</i> into the target model conforming 
	    to <i>Scade(v2)</i>.
	    To be able to correclty transform the equivalent elements, it is necessary to compare the elements from both metamodels.
	    <p/>
	    The first step is to create a weaving model containing equivalence links between the model elements. This is done by
	    executing matching transformations and by refining the weaving model in the AMW prototype. 
	    These transformations assign a similarity value between the elements of both metamodels. For instance, we assign high similarity values
	    for elements that have the same name and type. A high similarity value means
	    the element have a good probability to the equivalent. <p/>
	    This weaving model is a declarative representation of the links between the metamodels. The weaving model is used to produce
	    a model transformation. This model transformation is responsible to translate the source model into the target model.
    	</p>
	  	<p align="center">
	  		<img src="../resources/compare_scade.png"/>
	  		<br /><br />
			<b>"Metamodel comparison" Use Case's Overview</b>
		</p>
		<p align="justify">
			The comparison weaving model conforms to a weaving metamodel that is an extension of the <a href="http://www.eclipse.org/gmt/amw/zoo/#AMW%20core">core weaving metamodel</a>.
			The metamodel extension contains an <i>Equivalent</i> link. This link contains a <i>similarity</i> attribute that saves the similarity
			estimation between a <i>left</i> and a <i>right</i> element.
			This link is extended by different kinds of links, depending on the type of elements that are being compared, for example <i>AttributeEqual</i> and
			<i>ReferenceEqual</i>. The relations between <i>ElementEqual</i> and <i>AttributeEqual</i> links are created according to the containment
			relations between Classes and Attributes. For the elements that have similarity value lower than a given threshold, 
			the <i>Equivalent</i> links are rewritten into <i>NotEquivalent</i> links.
	  	</p>
	  	  	<p align="center">
	  		<img src="../resources/comparison_metamodel.png"/>
	  		<br /><br />
			<b>Metamodel extension for comparison (excerpt)</b>
		</p>
			The weaving model is used to produce a transformation from the source model into the target model. 
			A rule from this transformation is shown below.
			<p align="center">
	  		<img src="../resources/compare_transformation.png"/>
	  		<br /><br />
			<b>Transformation rule automatically generated</b>
		<br>
		
		<h4 STYLE="font-size: 10pt; padding: 0; border-bottom: 2px solid #49457C; 
							background-position: top left; background-repeat; repeat-x;">
		<a name="download">Download and examples</a></h4>

		<table>
			<COLGROUP>

				<COL width="25%">
				<COL width="75%">
		<tr>

		<td align="center">
			<h3><a href="../../download/">Metamodel<br/>Comparison</a></h3><!--</a>-->
		</td>
		<td>
			The Atlas Model Weaver plugin has an integrated environment that enables to easily compare two models. 
			Go to the <a href="../../download/">download page</a>. AMW also produces a model transformation based on 
			a weaving model. These functionalities are available on the weaving panel context menu. <p/>
			The accuracy of the weaving model depends on the proximity of the models that are compared.			
		</td>		
		</tr>
		<td align="center">
			<h3><a href="../../examples/Scade/ScadeSimple.zip">Scade simple</a></h3><!--</a>-->
		</td>
		<td>
			This example uses two simplified versions of the Scade metamodels (arround 30 classes) to easily illustrate 
			the metamodel comparison use case.
		</td>		
		</tr>

		<td align="center">
			<h3><a href="../../examples/Scade/ScadeFull.zip">Scade complete</a></h3><!--</a>-->
		</td>
		<td>
			This example is a full version of the Scade metamodels, with arround 400 elements each. It contains
			the weaving models and the transformation that was generated.
		</td>		
		</tr>
		<td align="center">
			<h3><a href="../../examples/Scade/Scade_doc.php">Example HowTo</a></h3><!--</a>-->
		</td>
		<td>
			This document is a step-by-step <b>HowTo</b> that explains how to execute the examples.
		</td>		
		</tr>
		</table>
		<h4 STYLE="font-size: 10pt; padding: 0; border-bottom: 2px solid #49457C; 
							background-position: top left; background-repeat; repeat-x;">
		
		<a name="related">Related use cases</a></h4>
		
		<table>
			<COLGROUP>
				<COL width="25%">
				<COL width="68%">
		<tr>
				
		<td align="center">
			<a href="../matching/"><h3>Matching</h3></a>
		</td>
		<td>
			Matching is the generic process that creates weaving models.
			This use case gives a general overview of the matching process, and how it is handled by AMW and ATL.			
		</td>		
		</tr>		
	    <tr>
		<td align="center">
			<a href="../interoperability/"><h3>Tool interoperability</h3></a>
		</td>
		<td>
			This use case shows how weaving models are used to capture the semantic heterogeneities between different tools' 
			metamodels. We use two well known bug tracking tools, Mantis and Bugzilla.
		</td>		
		</tr>
		<tr>		
		<td align="center">
			<a href="../modelgen/"><h3>Bridge between SQL and KM3</h3></a>
		</td>
		<td>
			This use case shows how weaving models and model transformations are used to translate SQL-DDL (Data Definition Language) into 
			KM3 (a modeling technical space) and to translate KM3 into SQL.
		</td>		
		</tr>						
		
		</table>		
		

		
		</table>		
		
		
		</div>
	</div>
	
	
EOHTML;


	# Generate the web page
	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>