Implementing Services by Partial State Machines

  • Authors:
  • Walter Dosch;Annette Stümpel

  • Affiliations:
  • Institute of Software Technology and Programming Languages, University of Lübeck, Lübeck, Germany;Institute of Software Technology and Programming Languages, University of Lübeck, Lübeck, Germany

  • Venue:
  • SOFSEM '09 Proceedings of the 35th Conference on Current Trends in Theory and Practice of Computer Science
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In the service-oriented approach to software engineering, interactive components offer contracted services through public interfaces. Over time a component receives a stream of service requests and generates a stream of responses. In general, a component is only prepared to serve a subset of possible requests in each situation -- services are partial behaviours. On the specification level, we model services by stream functions defined on a restricted service domain. For the state-based implementation of services we introduce partial state machines. We present a transformation how to systematically implement a service by a partial state machine. The transformation exploits history abstractions to relate service histories with machine states. We illustrate the formal method with three characteristic applications, viz. an interactive stack, a bounded buffer and a server with registration.