Skip to main content
Log in

Aspect-oriented Programming for Dynamic Web Service Selection, Integration and Management

  • Published:
World Wide Web Aims and scope Submit manuscript

Abstract

In service-oriented computing, applications are often created by integrating third-party Web Services. Current integration approaches, however, require client applications to hardcode references to specific Web Services, thereby affecting adaptability and robustness. Moreover, support for client-side management is rarely provided. To enable the development of more flexible and robust applications, we propose to insert a new layer between the client applications and the Web Services: the Web Services Management Layer (WSML). This layer decouples Web Services from client applications and enables hot-swapping between semantically equivalent Web Services based on availability. This mechanism allows for dynamic switching between Web Services based on selection policies that encapsulate changing business requirements. In addition, with WSML, client-side management concerns (e.g., caching, billing and logging) can be decoupled from the applications. In this paper, we identify a list of requirements for WSML to realize dynamic integration and client-side service management, and provide support for service criteria to govern the selection, integration and composition of Web Services. We also show that dynamic Aspect-Oriented Programming (AOP) is well suited to implement the core functionality of WSML.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Andrews, T., Curbera, F., Dholakia, H., et al.: Business process execution language for web services (WS-BPEL), Specification 1.1, May 2003. Available at: http://www.siebel.com/bpel

  2. Ankolenkar, A., Burstein, M., Hobbs, J.R., et al.: DAML-S: Web service description for the semantic web. In: Proceedings of the 1st International Semantic Web Conference (ISWC), pp. 348–363. Sardinia, Italia (2002) June

  3. Apache.: Apache Axis 1.1. Available at: http://ws.apache.org/axis

  4. Appnel, T.: An introduction to WSIL, the web services inspection language, October 2002. Available at: http://www.onjava.com/pub/a/onjava/2002/10/16/wsil.html

  5. Arsanjani, A., Hailpern, B., Martin, J., et al.: Web services promises and compromises. ACM Queue 1(1), (2003) March

  6. Atkinson, B., Della-Libera, G., Hada, S., et al.: Web services security (WS-Security) v1.0, IBM Developer Works, April 2002. Available at: http://www-128.ibm.com/developerworks/webservices/library/ws-secure/

  7. Bajaj, S., Box, D., Chappell, D., et al.: Web services policy framework specification v1.0 (WS-Policy), IBM Developer Works, September 2004. Available at: http://www-128.ibm.com/developerworks/library/specification/ws-polfram/

  8. BEA.: BEA WebLogic Framework 8.1. Available at: http://www.bea.com/

  9. Bechhofer, S., van Harmelen, F., Hendler, J., et al.: OWL web ontology language reference. W3C Recommendation, February 2004. Available at: http://www.w3.org/TR/owl-ref/

  10. Bergmans, L., Aksit, M.: Composing crosscutting concerns using composition filters. Commun. ACM 44(10), 51–57 (2001) October

    Article  Google Scholar 

  11. Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web. Sci. Am. 284(5), 34–43 (2001) May

    Article  Google Scholar 

  12. Bonér, J.: What are the key issues for commercial AOP use––how does AspectWerkz address them. In: Proceedings of the 3rd International Conference on Aspect-Oriented Software Development (AOSD). Lancaster, UK (2004) March

  13. Cabrera, L.F., Copeland, G., Feingold, M., et al.: Web services coordination (WS-Coordination) v1.0, IBM Developer Works, August 2005. Available at: http://www-128.ibm.com/developerworks/library/specification/ws-tx/

  14. Chinnici, R., Moreau, J.-J., Ryman, A., et al.: Web service description language (WSDL) v2.0, W3C, August 2005. Available at: http://www.w3.org/TR/wsdl20

  15. Cibrán, M.A., D’Hondt, M., Jonckers, V.: Aspect-oriented programming for connecting business rules. In: Proceedings of the 6th International Conference on Business Information Systems (BIS). Colorado Springs, CO, USA (2003) June

  16. Cibrán, M.A., D’Hondt, M., Suvée, D., et al.: Linking business rules to object-oriented software using JAsCo. In: Journal of Computational Methods in Sciences and Engineering vol. 5(1), pp. 13–27. IOS (2005)

  17. Cibrán, M.A., Verheecke, B., Jonckers, V.: Modularizing client-side web service management aspects. In: Proceedings of the 2nd Nordic Conference on Web Services (NCWS). Växjö, Sweden (2003) November

  18. Clement, L., Hately, A., von Riegen, C., et al.: UDDI specification version 3.0.2, OASIS, October 2004. Available at: http://uddi.org/pubs/uddi_v3.htm

  19. D’Hondt, M., Jonckers, V.: Hybrid aspects for weaving object-oriented functionality and rule-based knowledge. In: Proceedings of the 3rd International Conference on Aspect-Oriented Software Development (AOSD). Lancaster, UK (2004) March

  20. De Fraine, B., Vanderperren, W., Suvée, D., et al.: Jumping aspects revisited. In: Proceedings of the 4th Dynamic Aspects Workshop (DAW) at the 4th International Conference on Aspect-Oriented Software Development (AOSD). Chicago, USA (2005) March

  21. De Win, B., Vanhaute, B., De Decker, B.: How aspect-oriented programming can help to build secure software. Informatica 26(2), 141–149 (2002)

    MATH  Google Scholar 

  22. Duftler, M.J., Mukhi, N.K., Slominski, A., et al.: Web services invocation framework (WSIF). August 2001. Available at: http://www.research.ibm.com/people/b/bth/OOWS2001/duftler.pdf

  23. Eberhart, A.: Towards universal web service clients. In: Proceedings of the 2nd Euroweb Conference. Oxford, UK (2002) December

  24. Elrad, T., Filman, R.E., Bader, A. (eds.): Special issue on aspect-oriented software development. Commun. ACM 41(10), (2001) October

  25. Filman, R.E., Barrett, S., Lee, D., et al.: Inserting ilities by controlling communications. Commun. ACM 45(1), 116–122 (2002) January

    Article  Google Scholar 

  26. Fleury, M., Reverbel, F.: The JBoss extensible server. In: Proceedings of the 4th Middleware International Conference. Rio de Janeiro, Brazil, LNCS 2672, Springer (2003) January

  27. Gamma, E., Helm, R., Johnson, R., et al.: Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley, Reading, MA (1995)

  28. Gudgin, M., Hadley, M., Mendelsohn, N., et al.: Simple object access protocol (SOAP) v1.2. W3C Recommendation, June 2003. Available at: http://www.w3.org/TR/soap12-part1/

  29. JAsCo version 0.7. Available at: http://ssel.vub.ac.be/jasco/

  30. Johnson, R., Hoeller, J., Arendsen, A., et al.: Spring: Java/J2EE application framework v1.2.3. August 2005. Available at: http://static.springframework.org/spring/docs/1.2.x/spring-reference.pdf

  31. Kiczales, G., Hilsdale, E., Hugunin, J., et al.: An overview of aspectJ. In: Proceedings of the 15th European Conference on Object-Oriented Programming (ECOOP). Budapest, Hungary (2001) June

  32. Kiczales, G., Lamping, J., Mendhekar, A., et al.: Aspect-oriented programming. In: Proceedings of the 14th European Conference on Object-Oriented Programming (ECOOP). Jyväskylä, Finland (2000) June

  33. Kreger, H., Bumpus, W.: Web services distributed management v1.0. OASIS, March 2005. Available at: http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsdm

  34. Lieberherr, K., Orleans, D., Ovlinger, J.: Aspect-oriented programming with adaptive methods. Commun. ACM 44(10), 39–41 (2001) October

    Google Scholar 

  35. Malhotra, J.: Challenges in Developing Web Services-based E-business Applications. Whitepaper, InterKeel (2001)

  36. Martin-Flatin, J.P., Doffoel, P.A., Jeckle, M.: Web services for integrated management: A case study. In: Proceedings of the 2nd European Conference on Web Services (ECOWS). Erfurt, Germany, LNCS 3250, Springer (2004) September

  37. Maximilien, E.M., Singh, M.P.: Agent-based architecture for autonomic web service selection. In: Proceedings of the AAMAS workshop on Web Services and Agent-Based Engineering (WSABE). Melbourne, Australia (2003) July

  38. McGuinness, D.L., Fikes, R., Hendler, J., et al.: DAML+OIL: An ontology language for the semantic web. IEEE Intell. Syst. 17(5), 72–80 (2002) September

    Article  Google Scholar 

  39. McGuinness, D.L., van Harmelen, F.: OWL Web ontology language: Overview. W3C. Available at: http://www.w3.org/TR/2004/REC-owl-features-20040210/

  40. Mezini, M., Ostermann, K.: Conquering aspects with Caesar. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development (AOSD). Boston, MA, USA (2003) March

  41. Microsoft.: Microsoft Visual Studio.NET 2003. Available at: http://msdn.microsoft.com/vstudio/previous/2003/

  42. OMG. Common object request broker architecture (CORBA/IIOP) v3.0.3. OMG, January 2003. Available at: http://www.omg.org/docs/formal/04-03-01.pdf

  43. Ossher, H., Tarr, P.: Using multidimensional separation of concerns to (Re)shape evolving software. Commun. ACM 44(10), 43–50 (2001) October

    Article  Google Scholar 

  44. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972) May

    Article  Google Scholar 

  45. Pulvermüller, E., Speck, A., Coplien, J.O., et al.: Proceedings of the 1st Workshop on Feature Interaction in Composed Systems at the 15th European Conference on Object-Oriented Programming (ECOOP). Budapest, Hungary (2001) June

  46. Ross, R.G.: Principles of the Business Rule Approach. Addison-Wesley, Reading, MA (2003)

  47. Sivashanmugam, K., Verma, K., Shethet, A., et al.: Adding semantics to web services standards. In: Proceedings of the 1st International Conference on Web Services (ICWS). Las Vegas, USA (2003) June

  48. Sun.: JavaOne. Available at: http://java.sun.com/javaone/

  49. Sun.: Java API for XML-Based RPC (JAX-RPC) Specification 2.0. July 2004. Available at: http://java.sun.com/xml/downloads/jaxrpc.html

  50. Suvée, D., Vanderperren, W., Jonckers, V.: JAsCo: An aspect-oriented approach tailored for component based software development. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development (AOSD). Boston, MA, USA (2003) March

  51. Szyperski, C.: Component Software: Beyond Object-oriented Programming. Addison-Wesley, Reading, MA (1998)

  52. Szyperski, C.: Components and web services. Beyond objects column. Softw. Dev. 9(8), (2001) August

  53. Tarr, P., Ossher, H., Harrison, W., et al.: N degrees of separation: Multi-dimensional separation of concerns. In: Proceedings of the 21st International Conference on Software Engineering (ICSE). Los Angeles, CA, USA (1999) May

  54. Tosic, V., Pagurek, B., Patel, K.: WSOL––a language for the formal specification of classes of service for web services. In: Proceedings of the 1st International Conference on Web Services (ICWS). Las Vegas, CA, USA (2003) June

  55. Vanderperren, W.: Combining Aspect-Oriented and Component-based Software Engineering. Ph.D. Thesis, Vrije Universiteit Brussel, Belgium (2004)

  56. Vanderperren, W., Suvée, D.: Optimizing JAsCo dynamic AOP through HotSwap and Jutta. In: Proceedings of the 3rd Dynamic Aspects Workshop (DAW) at the 4th International Conference on Aspect-Oriented Software Development (AOSD). Lancaster, UK (2004) March

  57. Vanderperren, W., Suvée, D., De Fraine, B., Jonckers, V.: Aspect-oriented programming in JAsCo. SSEL Technical Report, Available at: http://ssel.vub.ac.be/jasco/

  58. Vanderperren, W., Suvée, D., Jonckers, V.: Combining AOSD and CBSD in PacoSuite through invasive composition adapters and JAsCo. In: Proceedings of the 2003 Net.ObjectDays International Conference (NODe). Erfurt, Germany (2003) September

  59. Verheecke, B., Cibrán, M.A., Jonckers, V.: AOP for dynamic configuration and management of web services. In: Proceedings of the 1st International Conference on Web Services-Europe (ICWS-Europe). Erfurt, Germany, LNCS 2853, Springer (2003) September

  60. Verheecke, B., Cibrán, M.A., Jonckers, V.: Aspect-oriented programming for dynamic web service monitoring and selection. In: Proceedings of the 2nd European Conference on Web Services (ECOWS). Erfurt, Germany, LNCS 3250, Springer (2004) September

  61. Verspecht, D., Vanderperren, W., Suvée, D., Jonckers, V.: JAsCo.NET: Capturing crosscutting concerns in .NET web services. In: Proceedings of the 2nd Nordic Conference on Web Services (NCWS). Växjö, Sweden (2003) November

  62. Von Halle, B.: Business Rules Applied. Wiley, New York (2001)

  63. Web Services Interoperability Organization (WS-I). Home page: http://www.ws-i.org/

  64. Web Services Management Layer (WSML) version 0.5.0. Available at: http://ssel.vub.ac.be/wsml/

  65. Weiss, G.: Multi-agent Systems, a Modern Approach to Distributed Artificial Intelligence. MIT, Cambridge, MA (1999)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to María Agustina Cibrán.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Cibrán, M.A., Verheecke, B., Vanderperren, W. et al. Aspect-oriented Programming for Dynamic Web Service Selection, Integration and Management. World Wide Web 10, 211–242 (2007). https://doi.org/10.1007/s11280-006-0017-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11280-006-0017-2

Keywords

Navigation