The Community for Technology Leaders
RSS Icon
Issue No.02 - April-June (2009 vol.2)
pp: 94-107
Woralak Kongdenfha , University of New South Wales, Sydney
Hamid Reza Motahari-Nezhad , HP Labs, Palo Alto
Boualem Benatallah , University of New South Wales, Sydney
Fabio Casati , University of Treno, Trento
Régis Saint-Paul , CREATE-NET, Trento
Standardization in Web services simplifies integration. However, it does not remove the need for adapters due to possible heterogeneity among service interfaces and protocols. In this paper, we characterize the problem of Web services adaptation focusing on business interfaces and protocols adapters. Our study shows that many of the differences between business interfaces and protocols are recurring. We introduce mismatch patterns to capture these recurring differences and to provide solutions to resolve them. We leverage mismatch patterns for service adaptation with two approaches: by developing stand-alone adapters and via service modification. We then dig into the notion of adaptation aspects that, following aspect-oriented programming paradigm and service modification approach, allow for rapid development of adapters. We present a study showing that it is a preferable approach in many cases. The proposed approach is implemented in a proof-of-concept prototype tool, and evaluated using both qualitative and quantitative methods.
Web services adaptation, mismatch patterns, business protocols, aspect-oriented programming.
Woralak Kongdenfha, Hamid Reza Motahari-Nezhad, Boualem Benatallah, Fabio Casati, Régis Saint-Paul, "Mismatch Patterns and Adaptation Aspects: A Foundation for Rapid Development of Web Service Adapters", IEEE Transactions on Services Computing, vol.2, no. 2, pp. 94-107, April-June 2009, doi:10.1109/TSC.2009.12
[1] P. Ajalin et al., “SAP R/3 Integration to RosettaNet Processes Using Web Service interfaces,” Technical Report, SoberIT, T-86.301, 2004.
[2] G. Alonso, F. Casati, H. Kuno, and V. Machiraju, Web Services— Concepts, Architectures and Application. Springer-Verlag, 2004.
[3] S. Becker et al., “Towards an Engineering Approach to Component Adaptation,” Proc. Architecting Systems with Trustworthy Components 2004, pp. 193-215, 2006.
[4] C. Beeri, A. Eyal, S. Kamenkovich, and T. Milo, “Querying Business Processes with BP-QL,” Proc. Very Large Data Bases (VLDB '05), 2005.
[5] B. Benatallah, F. Casati, D. Grigori, H. Nezhad, and F. Toumani, “Developing Adapters for Web Services Integration,” Proc. Center for Advancement of Informal Science Education (CAiSE '05), 2005.
[6] B. Benatallah, F. Casati, and F. Toumani, “Representing, Analysing and Managing Web Service Protocols,” Data and Knowledge Eng. J., vol. 58, no. 3, pp. 327-357, 2006.
[7] A. Bracciali, A. Brogi, and C. Canal, “A Formal Approach to Component Adaptation,” J. System and Software, vol. 74, no. 1, pp.45-54, 2005.
[8] A. Brogi and R. Popescu, “Automated Generation of BPEL Adapters,” Proc. Int'l Conf. Service-Oriented Computing (ICSOC'06), pp. 27-39, 2006.
[9] C. Bussler, D. Fensel, and A. Maedche, “A Conceptual Architecture for Semantic Web Enabled Web Services,” SIGMOD Record, vol. 31, no. 4, pp. 24-29, 2002.
[10] J. Cámara, C. Canal, J. Cubo, and J.M. Murillo, “An Aspect-Oriented Adaptation Framework for Dynamic Component Evolution,” Electronic Notes in Theoretical Computer Science, vol. 189, pp.21-34, 2007.
[11] A. Charfi and M. Mezini, “Aspect-Oriented Web Service Composition with AO4BPEL,” Proc. European Conf. Web Services (ECOWS'04), pp. 168-182, 2004.
[12] A. Charfi and M. Mezini, “AO4BPEL: An Aspect-Oriented Extension to BPEL,” World Wide Web J., vol. 10, no. 3, pp. 309-344, 2007.
[13] P. Chen, M. Critchlow, A. Garg, C. van der Westhuizen, and A. van der Hoek, “Differencing and Merging within an Evolving Product Line Architecture,” Proc. Product Families Eng. (PFE '03), pp. 269-281, 2003.
[14] S. Chidamber and C. Kemerer, “A Metrics Suite for Object-Oriented Design,” IEEE Trans. Software Eng., vol. 20, no. 6, pp. 476-493, June 1994.
[15] A. Colyer, A. Clement, R. Bodkin, and J. Hugunin, “Using AspectJ for Component Integration in Middleware,” Proc. Object-Oriented Programming, Systems, Language, and Applications (OOPSLA '03), 2003.
[16] F. Akkawi, D.P. Fletcher, T. Cottenier, D.P. Duncavage, R.L. Alena, and T. Elrad, “An Executable Choreography Framework for Dynamic Service-Oriented Architectures,” Proc. IEEE Aerospace Conf. (AERO '06), pp. 13-30, 2006.
[17] C. Courbis and A. Finkelstein, “Towards Aspect Weaving Applications,” Proc. Int'l Conf. Software Eng. (ICSE '05), pp. 69-77, 2005.
[18] A. Dantas, J.W. Yoder, P. Borba, and R. Johnson, “Using Aspects to Make Adaptive Object-Models Adaptable,” Proc. Reflection, AOP and Meta-Data for Software Evolution (RAM-SE '04), pp. 9-19, 2004.
[19] X. Dong, A.Y. Halevy, J. Madhavan, E. Nemes, and J. Zhang, “Similarity Search for Web Services,” Proc. Very Large Data Bases (VLDB '04), pp. 372-383, 2004.
[20] M. Dumas, M. Spork, and K. Wang, “Adapt or Perish: Algebra and Visual Notation for Service Interface Adaptation,” Proc. Business Process Management (BPM '06), pp. 65-80, 2006.
[21] M. Abi-Antoun et al., “Differencing and Merging of Architectural Views,” Technical Report, ISRI-05-128R, Carnegie Mellon Univ., 2005.
[22] N. Loughran et al., “Survey of Aspect-Oriented Middleware Research,” Technical Report, AOSD-Europe-ULANC-10, Lancaster Univ., June 2005.
[23] E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns. Addison-Wesley, 1995.
[24] A. Garcia et al., “Modularizing Design Patterns with Aspects: A Quantitative Study,” Proc. Aspect-Oriented Software Development (AOSD '05), pp. 3-14, 2005.
[25] J. Hannemann and G. Kiczales, “Design Pattern Implementation in Java and AspectJ,” SIGPLAN Notices, vol. 37, no. 11, pp. 161-173, 2002.
[26] P. Inverardi, L. Mostarda, M. Tivoli, and M. Autili, “Synthesis of Correct and Distributed Adaptors for Component-Based Systems: An Automatic Approach,” Proc. Conf. Automated Software Eng. (ASE '05), 2005.
[27] G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. Griswold, “An Overview of AspectJ,” Proc. European Conf. Object-Oriented Programming (ECOOP '01), pp. 327-353, 2001.
[28] W. Kongdenfha, H. Motahari, R. Saint-Paul, B. Benatallah, and F. Casati, “An Aspect-Oriented Approach for Service Adaptation,” Technical Report, UNSW-CSE-TR-0920, Univ. of New South Wales, 2009.
[29] W. Kongdenfha, R. Saint-Paul, B. Benatallah, and F. Casati, “An Aspect-Oriented Framework for Service Adaptation,” Proc. Int'l Conf. Service-Oriented Computing (ICSOC '06), 2006.
[30] X. Li, Y. Fan, and F. Jiang, “A Classification of Service Composition Mismatches to Support Service Mediation,” Proc. Grid and Cooperative Computing (GCC '07), pp. 315-321, 2007.
[31] H.R.M. Nezhad, B. Benatallah, F. Casati, and F. Toumani, “Web Services Interoperability Specifications,” Computer, vol. 39, no. 5, pp. 24-32, May 2006.
[32] H.R.M. Nezhad, B. Benatallah, A. Martens, F. Curbera, and F. Casati, “Semi-Automated Adaptation of Service Interactions,” Proc. World Wide Web Conf. (WWW '07), pp. 993-1002, 2007.
[33] A. Nicoara and G. Alonso, “Dynamic AOP with PROSE,” Proc. Center for Advancement of Informal Science Education (CAiSE '05), pp.125-138, 2005.
[34] S. Ponnekanti and A. Fox, “Interoperability among Independently Evolving Web Services,” Proc. Conf. Middleware, pp. 331-351, 2004.
[35] E. Rahm and P.A. Bernstein, “A Survey of Approaches to Automatic Schema Matching,” Int'l J. Very Large Data Bases, vol. 10, no. 4, pp. 334-350, 2001.
[36] C.C. Soria, J. Pérez, and J.A. Carsí, “Dynamic Adaptation of Aspect-Oriented Components,” Proc. Component-Based Software Eng. (CBSE '07), pp. 49-65, 2007.
[37] Y. Wang and E. Stroulia, “Flexible Interface Matching for Web-Service Discovery,” Proc. Web Information Systems Eng. (WISE '03), 2003.
[38] E. Wohlstadter and K. Volder, “Doxpects: Aspects Supporting XML Transformation Interfaces,” Proc. Aspect-Oriented Software Development (AOSD '06), pp. 99-108, 2006.
[39] D.M. Yellin and R.E. Strom, “Protocol Specifications and Component Adaptors,” ACM Trans. Programming Languages and Systems, vol. 19, no. 2, pp. 292-333, 1997.
[40] A.M. Zaremski and J.M. Wing, “Signature Matching: A Tool for Using Software Libraries,” ACM Trans. Software Eng. and Methodology, vol. 4, no. 2, pp. 146-170, 1995.
[41] A.M. Zaremski and J.M. Wing, “Specification Matching of Software Components,” ACM Trans. Software Eng. and Methodology, vol. 6, no. 4, pp. 333-369, 1997.
20 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool