How to Deal with Non-functional Properties in Web Service Development

  • Guadalupe Ortiz
  • Juan Hernández
  • Pedro J. Clemente
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3579)


Web Service technologies offer a successful way for interoperability among web applications. However, current approaches do not propose an acceptable method to decouple non-functional properties from Web Service implementations, leaving as a result a large amount of code scattered and tangled all over the application, thus raising problems at design, implementation, maintenance and evolution. It is the aim of this paper to describe how aspect-oriented techniques allow these properties to be easily modularized and reused. We will also analyse how information about properties can be added in the WSDL file, in order to keep clients informed of the characteristics of the service they are going to use. Finally, we will demonstrate how the client will be able to choose which optional properties have to be applied in his invocation in a transparent way, automatically generating the necessary changes in his code in a modularized and decoupled way.


Average Response Time Soap Message Real Time Property Outgoing Message WSDL File 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Bonér, J.: What are the key issues for commercial AOP use: how does AspectWerkz address them? In: Proc. 3rd Int. Conf. AOSD. ACM Press, Lancaster (2004)Google Scholar
  2. 2.
    Charfi, A., Mezini, M.: Aspect-Oriented Web Service Composition. In (LJ) Zhang, L.-J., Jeckle, M. (eds.) ECOWS 2004. LNCS, vol. 3250, pp. 168–182. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Duclos, F., Estublier, J., Morat, P.: Describing and using non functional aspects in component based applications. In: Proc 1st Int. Conf. AOSD. ACM Press, Enschede (2002)Google Scholar
  4. 4.
    Elrad, T., Aksit, M., Kitzales, G., Lieberherr, K., Ossher, H.: Discussing Aspects of AOP. Communications of the ACM 44(10) (October 2001)Google Scholar
  5. 5.
    Göbel, S.: The COMQUAD Component Model: Enabling Dynamic Selection of Implementations by Weaving Non-functional Aspects. In: Proc. 3rd Int. Conf. AOSD. ACM Press, Lancaster (2004)Google Scholar
  6. 6.
    Kiczales, G.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  7. 7.
    Ortiz, G., Hernández, J., Clemente, P.J.: Web Service Orchestration and Interaction Pat- terns: an Aspect-Oriented Approach. In: Proc. 2nd. ICSOC, New York, USA (November 2004)Google Scholar
  8. 8.
    Szyperski, C.: Component Software. Beyond Object-Oriented Programming. Addison-Wesley, Reading (1997)Google Scholar
  9. 9.
    Cohen, T., Gil, J(Y.): AspectJ2EE=AOP+J2EE: Towards an Aspect Based, Programmable and Extensible Middleware FrameWork. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol. 3086, pp. 221–245. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Verheecke, B., Cibrán, M.A.: AOP for Dynamic Configuration and Management of Web Services. In: Jeckle, M. (LJ) Zhang, L.-J. (eds.) ICWS-Europe 2003. LNCS, vol. 2853, pp. 137–151. Springer, Heidelberg (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Guadalupe Ortiz
    • 1
  • Juan Hernández
    • 1
  • Pedro J. Clemente
    • 1
  1. 1.Quercus Software Engineering GroupUniversity of Extremadura 

Personalised recommendations