250166701.Pdf
Total Page:16
File Type:pdf, Size:1020Kb
Tampereen teknillinen yliopisto. Julkaisu 1224 Tampere University of Technology. Publication 1224 Juha Puttonen A Semantically Enhanced Approach for Orchestration of Web Services in Factory Automation Systems Thesis for the degree of Doctor of Science in Technology to be presented with due permission for public examination and criticism in Festia Building, Auditorium Pieni Sali 1, at Tampere University of Technology, on the 15th of August 2014, at 12 noon. Tampereen teknillinen yliopisto - Tampere University of Technology Tampere 2014 ISBN 978-952-15-3315-0 (printed) ISBN 978-952-15-3339-6 (PDF) ISSN 1459-2045 I Puttonen, Juha: A Semantically Enhanced Approach for Orchestra- tion of Web Services in Factory Automation Sys- tems Tampere University of Technology, Department of Mechanical Engineering and Industrial Systems, Finland, 2014 Keywords: SEMANTIC WEB SERVICES, SERVICE ORCHES- TRATION, FACTORY AUTOMATION, WEB SER- VICES, CLOUD COMPUTING Abstract The Service-oriented Architecture (SOA) paradigm makes it possible to build sys- tems from several independent components. Most typically, web services are chosen as the building blocks of such a system. A web service is essentially a passive soft- ware entity, which listens for request messages sent to it over the network, possibly reacts to the requests by performing some operations, and finally sends response messages to the request senders. The traditional application domain of web services belongs to the so-called IT do- main. While opening new horizons in software development life-cycles, web services have been adopted in various new application domains, including the domain of factory automation (software development for factory automation). Indeed, recent research projects have experimented with controlling production system equipment through web service interfaces. When migrated from pure software to the physical realm involving industrial equipment, web services set additional demands for the application domains. For example, since the domains involve operations with phys- ical effects, roll-back or application recovery procedures become challenging. This research work targets the orchestration of factory automation systems encapsulated as web services and presents various techniques for overcoming the difficulties. Orchestrating web services to accomplish a complicated production task can be dif- ficult due to the transitoriness of both production equipment states and the set of available web services. Nevertheless, the selection of appropriate web services can be facilitated by augmenting each service with semantic information describing its conditions and effects. Web services augmented with such descriptions are termed semantic web services. While Web Ontology Language, OWL, is ideal for describ- ing application domain concepts and property relationships, the OWL-S ontology, which is based on OWL, has been specifically developed for describing web services. Once the semantic service descriptions have been analyzed to find the appropri- II ate web services, the selected services can be invoked using their syntactic WSDL descriptions. In addition to automated web service selection, semantic descriptions allow the com- position of web services to achieve production tasks. Service composition involves first analyzing the descriptions to determine the appropriate service invocation pro- cess for achieving the desired goal and then executing the process. This dissertation presents an approach in which the production equipment and their states are rep- resented using an ontology, and the model is dynamically used in decision-making. In particular, the devices in the considered production systems provide web service interfaces through which they can be controlled, while semantic web service descrip- tions formulated in OWL-S make it possible to determine the conditions and effects of invoking the web services. The approach presented in this research work addition- ally involves a set of specialized web services that co-operate to achieve production goals using the domain web services. One of the services maintains a semantic model of the current system state, while another uses the model to compose the domain web services so that they jointly achieve the desired goals. The semantic model of the system is automatically updated based on event notifications sent by the domain services. Software agents controlling production devices must maintain an up-to-date view of the physical world state in order to efficiently reason and plan their actions. Espe- cially in a factory automation system, the world state undergoes rapid evolution, and the world view must remain synchronized with the changes. This research dis- cusses two approaches to updating the world view based on event notifications sent by web services representing production devices in a manufacturing system. One of the approaches is based on separately specified update rules, and one automatically uses semantic web service descriptions formulated in OWL-S. While all of the ex- amples presented in this research work specifically focus on the factory automation domain, the presented approaches are applicable to all domains involving semantic web services. Semantic Web Service descriptions facilitate the automated discovery and compo- sition of web services. Particularly in the production system domain, the service condition and effect descriptions are essential in selecting the appropriate service or service composition for a given task. OWL-S is one of the most popular se- mantic web service description languages, and due to its XML syntax, OWL-S can be effortlessly incorporated into service WSDL descriptions. However, developing OWL-S documents for each service instance is laborious. This dissertation presents an approach to automatically generating executable OWL-S descriptions from se- III mantically annotated service WSDL files. Computing clouds facilitate rapid and effortless resource allocation. Cloud con- sumers can generally be ignorant of the physical computing resources used or their geographical location, as the resources are abstracted into a commodity that can be dynamically leased from the cloud provider. In particular, Infrastructure-as- a-Service clouds allow clients to dynamically lease virtual machines that behave similarly to physical servers. However, executing an application by directly using computing cloud resources is complicated and typically involves similar steps as in- stalling and executing an application on a physical machine. Moreover, starting numerous application instances on a single virtual machine may result in poor per- formance. Thus, this dissertation considers the development of a web service that facilitates the use of cloud resources by abstracting them. When the web service is used, an application can be effortlessly started in a computing cloud by invoking simple web service operations. Furthermore, when multiple applications are started, the workload can be automatically distributed between several virtual machines, re- sulting in higher performance. To conclude, the results presented in this research work demonstrate that semantic web service descriptions can indeed facilitate automatic web service composition and invocation. However, the effort of developing semantic web service descriptions can partly undermine the benefits achieved through their application. Therefore, new tools and methods should be developed to minimize the effort of developing such descriptions. IV Acknowledgements I would like to thank Professor José L. Martinez Lastra for supervising this research work and my doctoral studies. José also provided invaluable guidance in composing this dissertation. I am very grateful to Dr. Andrei Lobov for supervising my research work. Andrei has provided the concepts for several of the software tools presented in this dissertation. This research was made possible by all of the FAST Lab. members, who made the working environment comfortable as well as motivated me through their interest in the developed software tools and several useful improvement suggestions. Further- more, the experiments with the production line devices were possible only because of the abundant support from my co-workers. In addition, my co-workers provided me descriptions of the production systems, and I have incorporated some of the images into the figures in Chapter 5. Finally, I want to thank my parents and brother for all of the support and advice they have provided. Pori, July 2014 Juha Puttonen V FOREWORD The research presented in this dissertation was partly carried out in the context of the SOCRADES and eSONIA projects. SOCRADES1, contract number IST-5-034116, is part of the Information Society Technologies (IST) initiative of the 6th Framework Programme of the European Union. eSONIA2 was funded by ARTEMIS Joint Undertaking3, and the project was carried out by a consortium of 14 partner organizations. 1 http://www.socrades.eu/ 2 http://esonia.eu/ 3 http://www.artemis-ju.eu/ VI CONTENTS List of Figures . IX List of Tables . XII 1. Introduction . 1 1.1 Motivation and Justification . 1 1.2 Problem Statement . 4 1.3 Research Objectives and Initial Hypotheses . 4 1.4 Contributions . 5 1.5 Thesis Outline . 6 2. State of the Art . 7 2.1 Graphical BPEL Tools . 7 2.1.1 NetBeans . 7 2.1.2 ActiveBPEL . 8 2.1.3 Eclipse . 9 2.1.4 Other Tools . 10 2.2 Semantic Web Service Technologies . 10 2.2.1 Semantic Service Description Languages . 10 2.2.2 Semantic Web Service Orchestration . 15 2.2.3 Automatic Web Service Composition