AM3/Use Cases/PetStore Navigability
< To: MoDisco
This AM3 use case titled Pet Store Navigability has been implemented by Guillaume Doux and initially published in May 2009.
AM3, Global Model Management, Megamodeling, DSL, PetStore, Navigability
This complete use case presents a concrete use of the generic and extensible inter-model navigability facilities offered by AM3. It shows how a snapshot taken during a software development process can be represented by a megamodel and how global model management can be used to manage and navigate the different development artifacts. The sample application considered in this use case is the standard PetStore online application. The different models and metamodels available from this use case have been developed to figure out the situation at a given time within the software development process.
This use case is provided by INRIA AtlanMod and its development has been supported by the french IDM++ project (ANR-07-TLOG-IdM++) and by the IST European MODELPLEX project (MODELing solution for comPLEX software systems, FP6-IP 34081).
Considering inter-model navigabiliy, two kinds of navigation are necessary: between models and between model elements. The next figure provides examples of the two underlying kinds of link.
Navigation Between Software Development Models
The model-level links (normal lines) are stored within the megamodel and are directly navigable.
The model element-level links (dotted lines) are considered as a refinement of the model-level links and are stored in separate weaving models. A different weaving model is required for detailing each model-level link. The navigation of the model element-level links is realized thanks to the combined use of the megamodel and the corresponding weaving models.
The next figures provide two screenshots showing how AM3 is actually used in order to navigate at both model-level and model element-level.
Model element-level Navigation View
- Use Case - PetStore Navigability - Description: General description of the use case, its objectives, its architecture and overall process, the different metamodels and models used, etc.
- Use Case - PetStore Navigability - Installation & Execution Guide: How to install and use the navigator and the use case's projects.
- First complete version of the PetStore Navigability use case. Note that all the sources contained in the archive are also available from the AM3 SVN: you must install the org.eclipse.gmt.am3.platform.extension.am3navigability plug-in for this use case to work properly.