5th International ICST Conference on COMmunication System softWAre and middlewaRE

Research Article

Contract-Based Synchronization of IP Telecommunication Services: A Case Study

  • @INPROCEEDINGS{10.1145/2016551.2016556,
        author={Laura Dillon and Yi Huang and R. E. K. Stirewalt},
        title={Contract-Based Synchronization of IP Telecommunication Services: A Case Study},
        proceedings={5th International ICST Conference on COMmunication System softWAre and middlewaRE},
        publisher={ACM},
        proceedings_a={COMSWARE},
        year={2012},
        month={3},
        keywords={ip telecommunications services container architectures sip servlets synchronization contracts concurrency middleware framework case study},
        doi={10.1145/2016551.2016556}
    }
    
  • Laura Dillon
    Yi Huang
    R. E. K. Stirewalt
    Year: 2012
    Contract-Based Synchronization of IP Telecommunication Services: A Case Study
    COMSWARE
    ACM
    DOI: 10.1145/2016551.2016556
Laura Dillon1,*, Yi Huang1, R. E. K. Stirewalt2
  • 1: Michigan State University
  • 2: LogicBlox, Inc.
*Contact email: ldillon@cse.msu.edu

Abstract

Communication middleware, like J2EE and OCCAS, facilitates development and deployment of IP telecommunication services by automating various cross-cutting concerns, such as those related to messaging and security. This middleware is highly concurrent, with threads executing methods that an application programmer writes to carry out the service logic. While the middleware manages lifecycle concerns of threads, the problem of synchronizing them is left to the application programmer. Unfortunately, this synchronization code can be complex and prone to error. Moreover, it can easily obscure the service logic.

Our prior work proposed solving these problems using a middleware framework to automatically synchronize concurrent service executions based on declarative synchronization contracts. This paper describes an implementation of our synchronization framework and a case study using it. The case study demonstrates the extent to which contract-based synchronization facilitates refinement of a finite-state design to code and improves design transparency. It also examines the impact on performance of the subject application. A conclusion of the case study is that contract-based synchronization could provide a foundation for automatic generation of IPT services from finite-state designs.