Chapter

Service-Oriented Computing – ICSOC 2007

Volume 4749 of the series Lecture Notes in Computer Science pp 1-12

Pattern Based SOA Deployment

  • William ArnoldAffiliated withIBM T.J. Watson Research Center, Hawthorne, NY
  • , Tamar EilamAffiliated withIBM T.J. Watson Research Center, Hawthorne, NY
  • , Michael KalantarAffiliated withIBM T.J. Watson Research Center, Hawthorne, NY
  • , Alexander V. KonstantinouAffiliated withIBM T.J. Watson Research Center, Hawthorne, NY
  • , Alexander A. TotokAffiliated withIBM T.J. Watson Research Center, Hawthorne, NY

* Final gross prices may vary according to local VAT.

Get Access

Abstract

A key function of a Service Oriented Architecture is the separation between business logic and the platform of its implementation and deployment. Much of the focus in SOA research has been on service design, implementation, composition, and placement. In this paper we address the challenge of configuring the hosting infrastructure for SOA service deployment. The functional and non-functional requirements of services impose constraints on the configuration of their containers at different levels. Presently, such requirements are captured in informal documents, making service deployment a slow, expensive, and error-prone process. In this paper, we introduce a novel approach to formally capturing service deployment best-practices as model-based patterns. Deployment patterns capture the structure of a solution, without bindings to specific resource instances. They can be defined at different levels of abstraction supporting reuse, and role-based iterative refinement and composition. We show how we extended an existing model driven deployment platform to support pattern based deployment. We formally define pattern semantics, validation, and refinement. We also present an algorithm for automatically instantiating such patterns on multiple distributed service environments. Our approach has been verified in a large prototype that has been used to capture a variety of functional and non-functional deployment constraints, and demonstrate their end-to-end maintenance and realization.