Advanced client-service compatibility assessment via analysis of references to service-side FSMs

In a service oriented environment, service contracts play an important role to provide interoperation between clients and services. As contracts are the de facto insulation layer between clients and services, we argue that contracts should not only present specifications of method formats, but also pre and post-conditions that could provide more sophisticated client-service interactions. We have proposed that service contracts should contain specifications of service-side finite state machines (FSM). The immediate benefits of pre and post-conditions in distributed services are less defensive source codes in both sides, and avoidance to execute remote service with invalid parameters, which translates into rationalization of resources. But we argue that FSMs can also be used to provide client-service synchronization and advanced compatibility assessment, if the client source code is specially prepared to support these features. In other words, if the client source code contains constructs that are specific to deal with distributed services that follow this format. In this paper, we provide a framework for such extensions and present details about our implementation.

[1]  John Zic,et al.  An Approach to Checking Compatibility of Service Contracts in Service-Oriented Applications , 2009, Int. J. Web Serv. Res..

[2]  Stephan Aier,et al.  Implementing Non-functional Service Descriptions in SOAs , 2006, TEAA.

[3]  M. Petró‐Turza,et al.  The International Organization for Standardization. , 2003 .

[4]  Werner Vogels,et al.  Web Services Are Not Distributed Objects , 2003, Int. CMG Conference.

[5]  John Zic,et al.  Compatibility of Service Contracts in Service-Oriented Ap , 2006, 2006 IEEE International Conference on Services Computing (SCC'06).

[6]  Dirk Draheim,et al.  A Versioning Model for Enterprise Services , 2007, 21st International Conference on Advanced Information Networking and Applications Workshops (AINAW'07).

[7]  G. Richards The more things change... , 1986, The American journal of nursing.

[8]  Schahram Dustdar,et al.  End-to-End Versioning Support for Web Services , 2008, 2008 IEEE International Conference on Services Computing.

[9]  Craig Chambers,et al.  HydroJ: object-oriented pattern matching for evolvable distributed systems , 2003, OOPSLA.

[10]  Armando Fox,et al.  Interoperability Among Independently Evolving Web Services , 2004, Middleware.