WEAVING ASPECTS TO SUPPORT HIGH RELIABLE SYSTEMS: DEVELOPPING A BLOOD PLASMA ANALYSIS AUTOMATON Valérie MONFORT, Muhammad Usman BHATTI, Assia AIT ALI SLIMANE Université Paris 1 Panthéon Sorbonne Centre de Recherche en Informatique 90 rue de Tolbiac 75013 Paris, France Valerie.monfort@univ-paris1.fr ; muhammad.bhatti@malix.univ-paris1.fr ; assia.ait-ali-slimane@malix.univ-paris1.fr ; Abstract Among current architectures, Service Oriented Architectures aim to easily develop more adaptable Information Systems. Most often, Web Service is the fitted technical solution which provides the required loose coupling to achieve such architectures. However there is still much to be done in order to obtain a genuinely flawless Web Service, and current market implementations still do not provide adaptable Web Service behavior depending on the service contract. Therefore, our approach considers Aspect Oriented Programming (AOP) as a new design solution for Web Services. Based on both Web Service Description Language (WSDL) and Policy contracts, this solution aims to allow better flexibility on both the client and server side. In this paper, we aim to develop an automaton to analyze blood plasma; Web Services are used for software part of the automaton. Faced by the lacks of Web Services, we propose a concrete solution based on aspects. Key Words Web Services, Interoperability, Security, Aspects 1. INTRODUCTION Companies have to communicate with distant IS, such as, suppliers, partners … they use to exchange data through workflows in heterogeneous contexts. The company for which we are working aims to develop automatons to analyze blood plasma, which means patient data information has to be highly reliable and correct. We are involved in the architecture definition and implementation of one of its automaton. In order to support consequent evolution and successive reutilization of the machines, this company decided to define and promote flexible and adaptable architecture according to the new emerging requirements. In this context, Web Service technology is asked to handle the same features as components from the DCOM, J2EE or CORBA worlds already handle. These features, such as security, reliability, or transactional mechanisms, can be considered as non-functional aspects. Obviously these aspects are crucial for business purposes and one cannot build any genuine Information System (IS) without consideration for them. However, managing these aspects is likely to involve a great loss in interoperability and flexibility. This effect has already been experienced with various middleware technologies. Mostly, middleware delegates these tasks to the underlying platform, hiding these advanced mechanisms from the developer, and then establishing a solid bond between the application and the platform. Thus, a great deal of work is required to make Web Service fully adapted for the industry. Especially, mechanisms in charge of handling non-functional tasks must preserve seamless interoperability. In this article, we introduce the industrial context and technical choices for applications integration with Web Services. From the limitations of this solution, we propose a solution based on aspects and we explain how to apply this solution with a concrete implementation. 2. INDUSTRIAL CONTEXT 2.1. Description of the Automaton Figure 1 shows some high level functional domains supported by the automaton, including software and firmware: arrows represent the communication flow. Application displays specific Human Machine Interface (HMI) according to profile and maturity level of the user. Access is allowed or denied according to user profile and protected from unauthenticated usage. However, it is possible to ask for analysis and to receive result with different media as mobile phone, PDA, and Web with specific passwords reserved for laboratory managers and doctors. Non functional services, such as security, reliability, persistency, archiving, multi tasking, and supervision, have to be