MDD-based agent-oriented software engineering for ubiquitous deployment Jorge Aguero, Miguel Rebollo, Carlos Carrascosa,Vicente Julian Departamento de Sistemas Informaticos y Computaci6n Universidad Politecnica de Valencia Camino de Vera SIN 46022 Valencia (Spain) Email: {jaguero.mrebollo.carrasco.vinglada}@dsic.upv.es A. Using MDD to develop embedded agents The proposed design of embedded agents for mobile or, more generally, ubiquitous environments follows the approach offered by the MDD technology. The design process starts trying to modelize the agents using the abstract concepts and relationships established in the agent meta-model. The unified agent meta-models proposed in this work is called agent-it, agent-Platform Independent (detailed in Aguero et al [1]). Next, the process continues transforming agent meta-models (PIM) into an agent model that depends of the chosen target to concentrate the development of the application from an unified agent model and to apply different transformations to get implementations for different platforms. Currently, most common methodologies for multi-agent systems have identified a set of models that specify their characteristics. This abstraction level is known as Computation Independent Model (CIM). These models can be adjusted as MDD models that specifies the concepts of the MAS, as roles, behaviors, tasks, interactions or protocols. The models can be used to model a MAS without focus on platform-specific details and requirements, as a Platform Independent Model (PIM), which represents the system functionalities without consider the final implementation platform. After that, it is possible to transform PIM models into Platform Specific Models (PSM). Figure 1 shows possible relationships between the concepts of different MDD models and their transformations [2]. Abstract-This work presents a Model Driven Development (MOD) approach to agent-oriented software engineering in order to design and deploy application prototypes in a fast and simple way. This approach is specifically addressed to systems including agents that must be executed on mobile or embedded devices. The user will design the system for different platforms by means of unified agent models (UML-Iike). There will exist different automatic transformations to obtain the specific code for different target platforms from these unified models. On this way, the deployment process of mobile/embedded agent-based applications is simplified. Index Terms-Multi-Agent Systems, Agent-Oriented Software Engineering. I. INTRODUCTION MDD is a technique allowing to obtain code for different execution platforms from models by means of consecutive transformations. Currently, this approach is being adopted in several software developing areas such as Multi-Agent Systems (MAS), to improve not only the development process, but also the quality of the software based on agents. This work presents a method to obtain embedded agents code to be executed in different mobile platforms. That is, to design ubiquitous applications with agents using models or abstract concepts forgetting the implementation details and any platform detail (using a set of visual components generated for the tools supporting the MDD). After that, the specific embedded agent for the platform where it must be executed is generated by transformations. In this way, a non-expert programmer will be able to develop systems with ubiquitous agents, reducing the gap between design and implementation. This document is structured as follows. Section II shows how to apply the MDD approach to develop ubiquitous agents according to the approach of the present work. Finally, some conclusions are presented in section III. II. MDD FOR MAS The purpose of MDD is to create models legible by com- puters that can be understood by automatic tools to generate templates, proof models and even code, integrating them in multiple platforms [4]. From the viewpoint of the design of agent oriented systems, applications development consists in the obtaining of the agent code that could be executed in many platforms. That is, Digital Object Identifier: 10.4108I/CST.MOBIQUITOUS2009.6980 http://dx.doi.orgI10.41081ICST.MOBIQUITOUS2009.6980 Agent methodology Agent Meta-models JADE:!e ap Code Fig. 1. MDD for MAS Key 1 Abstract concepts and relationship .... I Vertica l , Transformation Agent platform Agent code