ELDAMeth Official Website

Event-driven Lightweight Distilled StateCharts-based Agents Methodology

Downloads

Latest stable version can be downloaded here. Source code is available for free download at our GitHub Project.
Info about the ELDAMeth license.

Get involved

We welcome contributions from all users, including bug reports and fixing, suggestions, and sub-projects of ELDAMeth.
Proposals for new sub-projects should be sent via e-mail to: 'g(dot)fortino(at)unical(dot)it' by specifying a short workplan with a description of the new functionalities, the impact on existing code, and the expected time for the first stable release.

ELDAMeth at a Glance

ELDAMeth (Event-driven Lightweight Distilled StateCharts-based Agents Methodology) is a methodology specifically designed for the simulation-based prototyping of DAS. It is based on the ELDA agent model and related frameworks and tools, and on an iterative development process covering modeling, simulation and implementation phases of DAS. ELDAMeth can be used both stand-alone and in conjunction/integration with other agent-oriented methodologies which support the analysis and (high-level) design phases. In the following figure, the development process of ELDAMeth is represented which consists of the following three phases:

  • The Modeling phase produces an ELDA-based MAS design object that is a specification of a MAS fully compliant with the ELDA MAS meta-model. The design object can be produced either by (i) the ELDA-based modeler which uses the ELDA MAS meta-model and the ELDATool, a CASE tool supporting the development phases of ELDA-based MAS, or by (ii) translation and refinement of design objects produced by other agent-oriented methodologies such as PASSI, GAIA, MCP, and others. In particular, while the translation process centers on (semi)automatic model transformations based on the MAS meta-model of the employed methodology and the ELDA MAS meta-model, the refinement process is usually carried out manually by the ELDA-based Modeler by using the ELDATool. The defined design objects can be automatically translated, through the ELDATool, into ELDA-based MAS code objects according to the ELDAFramework, which is a set of Java classes formalizing all the modeling abstractions of the ELDA MAS meta-model. The code objects are then used in the Simulation phase.
  • The Simulation phase produces the Simulation Results in terms of MAS execution traces and performance indices that must be carefully evaluated with respect to the identified functional and non-functional requirements. Such evaluation can lead to a further iteration step which starts from a new (re)modeling activity. In particular, the Simulation Results come from the execution of the ELDA-based MAS simulation object carried out through ELDASim, a Java-based event-driven simulation framework for ELDA agents. The simulation object is obtained by synthesizing the ELDA-based MAS code object with the simulation parameters and performance indices, defined on the basis of the requirements, by means of ELDASim.
  • The Implementation & Deployment phase produces code for the JADE framework which can be then deployed and executed on a distributed JADE platform. Starting from the ELDA-based MAS design object, the code production is supported by the JADE-based DistilledStateChartBehaviour framework, the JADE framework and the ELDATool. Of course, the execution results can be evaluated against the functional and non functional requirements and, possibly, trigger a new iteration.

About the ELDAMeth License

ELDAMeth is a free software and it is distributed in open source under the terms of the LGPL (GNU Lesser General Public License, version 2.1).

The LGPL license keeps all contributors to the same level relative to each other and it respects and protects both the users and the authors. In the following you can have a fast and rough idea of rights and duties of this license but, please, refer to the official LICENSE file for more details and legally precise information.
In particular, LGPL assures right to:
- make and distribute copies of ELDAMeth;
- have access to the software source code;
- make improvements to the program;
- incorporate ELDAMeth into a proprietary program.

The LGPL mandates also some duties, in particular:
- to not keep modifications private;
- to not change the license of ELDAMeth and its modifications.