Formal Modelling of a Coordination System: From Practice to Theory, and Back Again

In this work, we report an experience that illustrates the interplay between formal methods and real software development. Starting from aWeb-enable Coordination Service (WCS) based on JavaSpaces technology which had been successfully used in an industrial project, we built a formal model for the system in order to study its properties; specifically, our aim was to prove that Linda semantics was preserved in several layers of complex mappings from XML documents to Java objects. Once this objective was achieved (at least in a simplified, idealistic version), we observed several possibilities of extending the coordination system at the model level. In particular, we identified that it was possible to enhance the formal model with transactional capabilities, taking advantage of the similarity of our model to rule-based systems. At present, we are working on the translation of this theoretical result to practice, in order to improve our Web Coordination Service.

[1]  Jesus A. Gonzalez,et al.  Advances in Artificial Intelligence – IBERAMIA 2004 , 2004, Lecture Notes in Computer Science.

[2]  Rocco De Nicola,et al.  A Java Middleware for Guaranteeing Privacy of Distributed Tuple Spaces , 2002, FIDJI.

[3]  Mario Bravetti,et al.  Probabilistic and Prioritized Data Retrieval in the Linda Coordination Model , 2004, COORDINATION.

[4]  Pedro Álvarez,et al.  Towards an Efficient Rule-Based Coordination of Web Services , 2004, IBERAMIA.

[5]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[6]  Pedro Álvarez,et al.  Generative Communication with Semantic Matching in Distributed Heterogeneous Environments , 2003, EUROCAST.

[7]  Steve Vinoski,et al.  Putting the "Web" into Web Services: Interaction Models, Part 2 , 2002, IEEE Internet Comput..

[8]  Pedro Álvarez,et al.  An Architectural Pattern to Extend the Interaction Model between Web-Services: The Location-Based Service Context , 2003, ICSOC.

[9]  Ewa Orlowska,et al.  Service-Oriented Computing - ICSOC 2003 , 2003, Lecture Notes in Computer Science.

[10]  Ken Arnold,et al.  JavaSpaces¿ Principles, Patterns, and Practice , 1999 .

[11]  Stefano Paraboschi,et al.  Pushing reactive services to XML repositories using active rules , 2001, WWW '01.

[12]  Stefano Bistarelli,et al.  Representing Biological Systems with Multiset Rewriting , 2003 .

[13]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[14]  Robert Valette,et al.  Software Implementation of Petri nets and compilation of rule-based systems , 1990, Applications and Theory of Petri Nets.

[15]  José A. Bañares,et al.  Knowledge representation-oriented nets for discrete event system applications , 1998, IEEE Trans. Syst. Man Cybern. Part A.

[16]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[17]  Robert Tolksdorf Workspaces: A Web-Based Workflow Management System , 2002, IEEE Internet Comput..

[18]  Javier Nogueras-Iso,et al.  A Java Coordination Tool for Web-Service Architectures: The Location-Based Service Context , 2002, FIDJI.

[19]  Farhad Arbab,et al.  Coordination Models and Languages , 1998, Adv. Comput..

[20]  Frank Buschmann,et al.  A system of patterns , 1995 .

[21]  Gustavo Alonso,et al.  Web Services: Concepts, Architectures and Applications , 2009 .

[22]  Nicolas Guelfi,et al.  Designing fault-tolerant mobile systems , 2003 .

[23]  Roberto Gorrieri,et al.  Process Calculi for Coordination: From Linda to JavaSpaces , 2000, AMAST.

[24]  Alessandro Ricci,et al.  Tuple-based coordination models in event-based scenarios , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[25]  Gordon S. Blair,et al.  L2imbo: A distributed systems platform for mobile computing , 1998, Mob. Networks Appl..

[26]  Gianluigi Zavattaro,et al.  WSSecSpaces: a secure data-driven coordination service for Web Services applications , 2004, SAC '04.

[27]  Roberto Gorrieri,et al.  A Process Algebraic View of Linda Coordination Primitives , 1998, Theor. Comput. Sci..

[28]  Amy L. Murphy,et al.  LIME: Linda meets mobility , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[29]  Kurt Jensen High-Level Petri Nets , 1982, European Workshop on Applications and Theory of Petri Nets.