On the modeling of dynamic reconfiguration of embedded service oriented applications A. Armentia*, E. Estévez*, I. Sarachaga*, M. Marcos* *Departamento de Ingeniería de Sistemas y Automática, ETSI de Bilbao, Universidad del Pais Vasco (UPV/EHU), España (e-mail:{ aintzane.armentia, elisabet.estevez, isabel.sarachaga, marga.marcos }@ ehu.es) Abstract Service Oriented architectures are becoming very popular to meet the requirements of complex current applications demanding distribution and heterogeneity in open environments. The loose coupling provides reusability and interoperability, avoiding platform dependencies and saving time and development costs. The iLAND-ARTEMIS project goes a step further aiming at the development of a service-based middleware framework capable of supporting deterministic dynamic functional composition and reconfiguration of networked embedded applications. In this context, this paper proposes a Model Driven Approach to support the composition and dynamic reconfiguration of networked embedded service oriented applications. 1. Introduction Over the last years software architectures are getting more and more complex demanding the development of more adaptable applications. As traditional architectures do not seem to be capable of dealing with these new requirements (distributed embedded systems in open and heterogeneous environments), the service-oriented architecture approach is becoming widely adopted, mainly in applications running on varied technologies and platforms that have to communicate with each other. The service-based paradigm allows developing software applications as collections of loosely coupled services that interact [1]. It is more flexible than other traditional approaches for software design, providing reusability and interoperability, avoiding platform dependencies and saving cost and time during the development of the application [2]. Although it is an emerging paradigm, composition of services has received much interest to support business-to-business (B2B) or enterprise applications integration. Two are the main approaches that have been developed: Web and Semantic Web Services. In [3] an overview of existing service composition languages for both approaches is compared against the requirements that a service composition language should support to facilitate business processes composition. The work described in this paper is based on the use of the service-based paradigm in networked embedded systems aiming at supporting dynamic reconfiguration. This approach has been proposed in the context of the ILAND (mIddLewAre for deterministic dynamically reconfigurable NetworkeD embedded systems) project [4]. The main objective of the project consists of developing a component- based middleware framework capable of supporting deterministic dynamic functional composition and reconfiguration of distributed applications [5][6]. As a result, an improvement on system flexibility, scalability, and composability are achieved. Also, spontaneous reconfiguration of the system is also supported; hence, the maintainability is improved. It enables dynamic functionality reconfiguration, e.g. node activation, removal of crashed or damaged nodes and reallocation of functionality. The iLAND middleware components need to manage information in order to provide support to composition and reconfiguration of SOAs (Service Oriented Applications). Therefore, modeling languages that allow system description and definition before construction must be used. They also guide the definition, composition and reconfiguration of a set of SOAs. The Model Driven Architecture (MDA) standard proposed by OMG [7] separates the system specification (Platform Independent Model, PIM) from the implementation issues (Platform Specific Model, PSM). MDA is being widely applied to SOA architectures [8], [9] and [10]. The Model Driven Development (MDD) goes a step further. It relies on the use of models to represent the system elements of the domain and their relationships [11]. The Model Driven Approach has been applied for designing and implementing (code generation) of