The INGENIAS meta-model

developed by

Version:1.1 (31-01-2005)
[Get the metamodel in a
zip file]
What is this for?
INGENIAS is a metodology for the development of multi-agent systems (MAS). This
methodology is supported by an integrated set of tools, the INGENIAS
Development Kit or IDK.
These tools include an editor to create and modify MAS models, and a set
of modules for code generation and verificiation of properties from these
models. All the components of the IDK (the editor and the modules) are based on
a meta-model, which defines the elements that can be used to create a MAS with
INGENIAS. The meta-model presents relationships, entities, and diagrams, which
are the elements to build MAS models). The INGENIAS meta-model is specified using
MOF (OMG Meta-Object Facility) and its semantics is implemented by the IDK (i.e.
how to instantiate an entity, relationship, or diagram) and interpreted by IDK
modules (which navigate through the models for producing executable code or verifying
properties).
Browsing Instructions
- Click on one model description. Model descriptions appear at the top frame.
- Inside each model description, you will find (1) a SVG version of the entities
and relationships allowed in a diagram, (2) a PNG version of the same diagram,
and (3) details of each relationship in the diagram.
- SVG may not be visible if you have not the proper plugins in your navigator.
If you find troubles, please, download Adobe SVG viewer at http://www.adobe.com/svg/main.html
and install it. This plugin is recommended for IE browsers. Others do
not work properly. If you can recommend other browsers for embedded SVG,
suggestions will be welcomed (we have tested Mozilla browser with SVG
but it does not seem to work properly, but we plan to check this more
deeply).
- SVG pictures show some links, but they do not work, so do not try them.
- Move your mouse over different entities and click the left mouse button
to obtain a brief description of the entity, different representations that
you can find in the IDK, and recommendations of use.
- The left frame shows all entities and for each one there are four links:
(1) a detailed view of the entity, (2) a return to the main view, (3) the
selected entity with defined packages, and (4) the main view with packages.
About the diagrams
- Relationships are specified with OCL. If you are not familiar with OCL,
you can check at http://www.omg.org and http://www.klasse.nl/ocl.
Code shown was checked in part with Octopus OCL plugin for Eclipse.
- Elements appearing in diagrams are stereotyped with MOF names to show their
intended semantics, and not as a reminder of what MOF primitives are being
used for. For instance, elements stereotyped as AssociationEnd refer
to elements obtained through MOF Class primitive, whose purpose is
to act as extreme of an association. This is a non standard use of MOF, but
it helps to clarify the diagrams. Again, if you have difficulties reading
these diagrams, we recommend you to read MOF documents and UML documents at
http://www.omg.org.
- A difference with respect to UML is that we need to be able to associate
in one extreme of an association different possible actors. There is no possible
solution with pure MOF (enumeration primitive data type is not appropriate).
However, combining MOF, multiple inheritance, and OCL, we came to a plausible
way of expressing this.
What's new
- It adds packages to the conventional description.
- Diagrams now show aggregation relationships.
- To better inspect different entities, now there are four different views
of the meta-model.
- There are explicit representation of the different views.
- Diagrams have been generated using UMLGraph,
a tool for automatic diagram generation.
To be done
- Include information about the relationships.
- Add example diagrams to illustrate the use of different entities and relationships.
POWERED With
Comments or more information: email to jjgomez@sip.ucm.es