Evaluating FuseJ as a Web service composition language

With the increasing popularity of Web services, a number of technologies have emerged that target the integration and composition of Web services as lightweight components. However, a number of problems have been identified in these approaches, for example regarding an overly static integration and lacking support for the modularization of crosscutting concerns. In this paper, we evaluate FuseJ, an architectural description language for unifying aspects and components, as an approach for the composition of Web services. We outline how FuseJ can be used to this end and present an evaluation that compares FuseJ to four other Web service composition approaches according to criteria such as the organization and flexibility of the composition and the support for aspect-oriented software development (AOSD). Although FuseJ does not allow describing complete business processes, we find that it excels at selective and dynamic composition and that it supports advanced separation of concerns without the need to introduce additional constructs.

[1]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[2]  Wim Vanderperren,et al.  JAsCo: an aspect-oriented approach tailored for component based software development , 2003, AOSD '03.

[3]  Gustavo Alonso,et al.  Web Services: Concepts, Architectures and Applications , 2009 .

[4]  Matjaz B. Juric,et al.  Business process execution language for web services , 2004 .

[5]  Wim Vanderperren,et al.  FuseJ : An architectural description language for unifying aspects and components , 2005 .

[6]  Olivier Motelet,et al.  A Formal Definition of Crosscuts , 2001, Reflection.

[7]  Satoshi Matsuoka,et al.  Metalevel Architectures and Separation of Crosscutting Concerns , 2001, Lecture Notes in Computer Science.

[8]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[9]  Mira Mezini,et al.  Aspect-Oriented Web Service Composition with AO4BPEL , 2004, ECOWS.

[10]  Peri L. Tarr,et al.  Web Services: Promises and Compromises , 2003, ACM Queue.

[11]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[12]  Laurence Duchien,et al.  JAC: A Flexible Solution for Aspect-Oriented Programming in Java , 2001, Reflection.

[13]  Viviane Jonckers,et al.  Aspect-Oriented Programming for Dynamic Web Service Monitoring and Selection , 2004, ECOWS.

[14]  Wim Vanderperren,et al.  AOP for Dynamic Configuration and Management of Web Services , 2004, Int. J. Web Serv. Res..

[15]  Peter Norvig,et al.  Applying Aspect-Oriented Programming to Intelligent Synthesis , 2000 .

[16]  Clemens A. Szyperski Objectively: Components versus Web Services , 2002, ECOOP.

[17]  Tzilla Elrad,et al.  Dynamic and Decentralized Service Composition: With Contextual Aspect-Sensitive Services , 2005, WEBIST.

[18]  Mary Shaw,et al.  An Introduction to Software Architecture , 1993, Advances in Software Engineering and Knowledge Engineering.