<?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);
?>
