KeywordsAM3, Global Model Management, Dependencies Management , GraphML, Prefuse, Linux Overview
This use case describes how AM3 can be used to manage packages dependencies in distributions of Debian Linux based systems.
It can be divided in two parts:
The main reason for using AM3 in this kind of use cases is that it allows managing them in a homogeneous way. With this approach we can use AM3 base features (e.g.: navigation between links), and also some specific features like visualization generation that can then be used for other use cases.
Debian Package List DicovererThe aim of this discoverer is to allow the injection of a "Debian" based distribution packages lists into a model and then to an AM3 megamodel. A sample package list can be found here. An overview of this process in presented in the following figure:
Visualization GenerationThe aim of this part is to allow the visualization of the package dependencies graph. So, we choose to project the contents of the megamodel into a GraphML file. Then, this file can be used for rendering by a tool like Prefuse. To reach this aim, we use a generic transformation chain that can be used with any AM3 megamodel. This transformation chain allows the transformation of any megamodel containing entities and directed relationships into a graph. This process is shown in Figure 3.
SampleThe next figure show the result of the rendering of a megamodel containing dependencies between packages. The data used in this sample can be obtained here.
DocumentationDownload
|