Model-driven development of multiagent systems: a survey and evaluation (original) (raw)
Related papers
Model-driven engineering techniques for the development of multi-agent systems
Engineering Applications of Artificial Intelligence, 2012
Model-driven engineering (MDE), implicitly based upon meta-model principles, is gaining more and more attention in software systems due to its inherent benefits. Its use normally improves the quality of the developed systems in terms of productivity, portability, inter-operability and maintenance. Therefore, its exploitation for the development of multi-agent systems (MAS) emerges in a natural way. In this paper, agent-oriented software development (AOSD) and MDE paradigms are fully integrated for the development of MAS. Meta-modeling techniques are explicitly used to speed up several phases of the process. The Prometheus methodology is used for the purpose of validating the proposal. The metaobject facility (MOF) architecture is used as a guideline for developing a MAS editor according to the language provided by Prometheus methodology. Firstly, an Ecore meta-model for Prometheus language is developed. Ecore is a powerful tool for designing model-driven architectures (MDA). Next, facilities provided by the Graphical Modeling Framework (GMF) are used to generate the graphical editor. It offers support to develop agent models conform to the meta-model specified. Afterwards, it is also described how an agent code generator can be developed. In this way, code is automatically generated using as input the model specified with the graphical editor. A case of study validates the method put in practice for the development of a multi-agent surveillance system.
FAML: A Generic Metamodel for MAS Development
IEEE Transactions on Software Engineering, 2009
In some areas of software engineering research, there are several metamodels claiming to capture the main issues. Though it is profitable to have variety at the beginning of a research field, after some time, the diversity of metamodels becomes an obstacle, for instance to the sharing of results between research groups. To reach consensus and unification of existing metamodels, metamodel-driven software language engineering can be applied. This paper illustrates an application of software language engineering in the agent-oriented software engineering research domain. Here, we introduce a relatively generic agent-oriented metamodel whose suitability for supporting modeling language development is demonstrated by evaluating it with respect to several existing methodology-specific metamodels. First, the metamodel is constructed by a combination of bottom-up and top-down analysis and best practice. The concepts thus obtained and their relationships are then evaluated by mapping to two agent-oriented metamodels: TAO and Islander. We then refine the metamodel by extending the comparisons with the metamodels implicit or explicit within five more extant agent-oriented approaches: Adelfe, PASSI, Gaia, INGENIAS, and Tropos. The resultant FAML metamodel is a potential candidate for future standardization as an important component for engineering an agent modeling language.
MISTRAL: A Language for Model Transformations in the MOF Metamodeling Architecture
2004
In the Meta Object Facility (MOF) meta-modeling architecture a number of model transformation scenarios can be identified. It could be expected that a meta-modeling architecture will be accompanied by a transformation technology supporting the model transformation scenarios in a uniform way. Despite the fact that current transformation languages have similarities they are usually focused only on a particular scenario. In this paper we analyze the problems that prevent the usage of a single language for different transformation scenarios. The problems are rooted in the current organization of the MOF architecture and especially in its inability to define explicitly the mechanisms of instantiation and generalization found in different modeling languages. This causes a coupling between a transformation language and the instantiation mechanism specific for a given modeling language. We propose an organization of the MOF architecture based on a simple and uniform representation of all model elements no matter at which level they are defined. In this framework, different instantiation and generalization mechanisms are represented as a set of functions. We present a transformation language named MISTRAL acting in this framework. Transformation language is separated from the instantiation and generalization mechanisms specific for a given modeling language.
A Metamodel-Driven MDA Process and its Tools
2003
A domain-specific refinement of MDA, called DS-MDA is introduced, and a practical manifestation of it called MIC (for Model-Integrated Computing) is described. MIC extends MDA in the direction of domain-specific modeling languages. The MIC tools are metaprogrammable, i.e. are tailored for specific domains using meta-models. Meta-models capture the domain's and the target platform's general properties, as well as the transformation between the two. The paper introduces the tools and process that supports single domains, and proposes an extension towards multi-model processes.
A MOF-Based Metamodeling Environment
Journal of Universal Computer Science, 2004
The Meta Object Facility (MOF) forms one of the core standards of the Object Management Group's Model Driven Architecture. It has several use-cases, including as a repository service for storing abstract models used in distributed objectoriented software development, a development environment for generating CORBA IDL, and a metamodeling language for the rapid specification, construction, and management of domain-specific technology-neutral modeling languages. This paper will focus on the use of MOF as a metamodeling language and describe our latest work on changing the MIC metamodeling environment from UML/OCL to MOF. We have implemented a functional graphical metamodeling environment based on the MOF v1.4 standard using GME and GReAT. This implementation serves as a testament to the power of formally well-defined metamodeling and metamodel-based model transformation approaches.Furthermore, our work gave us an opportunity to evaluate sevaral important features of MOF v1.4 as a metamodeling language:
Towards Agent-Oriented Model Driven Engineering
This work gathers the experience of two different research groups that developed the agent-oriented methodologies INGENIAS and ADELFE. The particular features of the agent paradigm makes that the application of MDE approaches to it has to consider certain issues that are not common in mainstream Software Engineering. In particular, MAS methodologies usually consider several abstraction levels and perspectives, producing a richer modelling than for instance object-oriented approaches. Besides, the agent research is still object of important evolution with changing and growing conceptual frameworks. The view of these MAS research groups is promoting model transformations to bridge these gaps between perspectives in modelling, and to support the change in the modelling languages and their corresponding tools. This focus on transformations should also allow taking advantage of the semantic richness of MAS concepts in code generation, producing software that is closer to the final product since the meaning of the concept and its related behaviour are more precise.
An Evaluation Framework for MAS Modeling Languages Based on Metamodel Metrics
Lecture Notes in Computer Science, 2009
Using meta-modeling techniques for defining the abstract syntax of MAS modeling languages(MLs) is a common practice today. This paper presents a framework for evaluating the abstract syntax of MLs. This framework is made of a set of metrics for measuring the metamodels. These metrics help in quantifying three features of the language: specificity, availability, and expressiveness. The specificity and availability metrics are focused on the measurement of the abstract syntax of the final ML products. On the other hand, the specificity metric is focused on the measurement of the abstract syntax of the MLs in its creation and evolution phases. The application of the specificity and availability metrics is exemplified with a study on five agent-oriented MLs. The application of the expressiveness metric is exemplified with the measurement of certain evolution phases of a particular agent-oriented ML.
Integrated formal methods, 2002
The Object Management Group's (OMG) Model Driven Architecture (MDA) strategy envisages a world where models play a more direct role in software production, being amenable to manipulation and transformation by machine. Model Driven Engineering (MDE) is wider in scope than MDA. MDE combines process and analysis with architecture. This article sets out a framework for model driven engineering, which can be used as a point of reference for activity in this area. It proposes an organisation of the modelling 'space' and how to locate models in that space. It discusses different kinds of mappings between models. It explains why process and architecture are tightly connected. It discusses the importance and nature of tools. It identifies the need for defining families of languages and transformations, and for developing techniques for generating/configuring tools from such definitions. It concludes with a call to align metamodelling with formal language engineering techniques.
Specification of model transformations based on meta templates
methods, 2002
MDA (Model Driven Architecture) attempts to solve some common problems of current software architectures to reduce the complexity of software development: i) separation of technology dependent concepts from the independent concepts, ii) automate the software development process, and iii) separation of domain, technology and technological concerns to avoid the confusions because of the combination of different types of concepts. MDA introduces two basic solutions to solve these problems: i) description of specialized modeling languages and ii) model transformations and mappings. Currently, the first concept (description of specialized modeling language) has been widely studied and there are general solutions and standards (Profiles [5] and MOF [12]). But the second solution has not been well studied yet and practical solutions depend on specific script languages, and the standards that include some kind of mapping proposal make an informal description of the mappings. We are going to introduce some solutions to express complex transformations where the source and target modeling structures are not limited to simple modeling elements.