Skip to main content

A Framework for Policy Driven Auto-adaptive Systems Using Dynamic Framed Aspects

  • Conference paper
Transactions on Aspect-Oriented Software Development II

Part of the book series: Lecture Notes in Computer Science ((TAOSD,volume 4242))

Abstract

This paper describes and evaluates a framework that allows adaptive behaviour to be applied to systems by using a combination of dynamic Aspect-Oriented Programming (AOP), parameterisation and policies. Our approach allows the operator to create policies to define adaptive behaviour based on Event-Condition-Action rules. The combination of dynamic AOP with parameterisation aids reuse and allows aspects to be generated to suit the current system conditions; these aspects can then be woven at run time to adapt the application behaviour. This approach is evaluated in two ways; firstly performance measurements are presented to show that such behaviour does not add a substantial overhead to the target system. Secondly, Aspect-Oriented software metrics are applied to the adaptations applied to illustrate their reusability and flexibility.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Longtier, J.-M., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  2. Gupta, D.: A Formal Framework for On-Line Software Version Change. IEEE Transaction on Software Engineering 22(2), 120–131 (1996)

    Article  Google Scholar 

  3. Duzan, G., Loyall, J., Schantz, R., Shapiro, R., Zinky, J.: Building Adaptive Distributed Applications with Middleware and Aspects. In: 3rd International Conference on Aspect-Oriented Software Development, pp. 66–73. ACM Press, Lancaster (2004)

    Chapter  Google Scholar 

  4. Falcarin, P., Alonso, G.: Software Architecture Evolution through Dynamic AOP. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 57–73. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Greenwood, P., Blair, L.: Policies for an AOP Based Auto-Adaptive Framework. In: NODe Conference in conjunction with Net.ObjectDays, Erfurt, Germany. Lecture Notes in Informatics (LNI), pp. 76–93 (2005)

    Google Scholar 

  6. Hirschfeld, R., Kawamura, K.: Dynamic Service Adaptation. In: ICDCSW, vol. 2, pp. 290–297 (2004)

    Google Scholar 

  7. Popovici, A., Gross, T., Alonso, G.: A Proactive Middleware Platform for Mobile Computing. In: ACM/IFIP/USENIX International Middleware Conference, Rio de Janeiro, Brazil, pp. 455–473. ACM, New York (2003b)

    Google Scholar 

  8. Warren, I.: A Model for Dynamic Configuration which Preserves Application Integrity. In: Computing 2000. Lancaster University, Lancaster (2000)

    Google Scholar 

  9. Popovici, A., Gross, T., Alonso, G.: Dynamic Weaving for Aspect-Oriented Programming. In: 1st International Conference on Aspect-Oriented Software Development, Enschede, The Netherlands, pp. 141–147. ACM, New York (2002)

    Chapter  Google Scholar 

  10. Lupu, E.C., Sloman, M.: Conflicts in Policy Based Distributed Systems Management. IEEE Transaction on Software Engineering 25(6), 852–869 (1999)

    Article  Google Scholar 

  11. Basset, P.: Framing Software Reuse - Lessons from Real World. Yourdon Press/Prentice Hall (1997)

    Google Scholar 

  12. Demers, F.-N., Malenfant, J.: Reflection in logic, functional and object-oriented programming: a short comparative study. In: Proceedings of the IJCAI 1995 Workshop on Reflection and Metalevel Architectures and their Applications in AI, pp. 29–38 (1995)

    Google Scholar 

  13. Hillman, J., Warren, I.: An Open Framework for Dynamic Adaptation. In: 6th International Conference on Software Engineering (ICSE 2004), Edinburgh, Scotland, pp. 594–603. IEEE Computer Society, Los Alamitos (2004)

    Google Scholar 

  14. Moreira, R.S., Blair, G.S., Carra, E.: Supporting Adaptable Distributed Systems with FORMAware. In: 4th International Workshop on Distributed Auto-adaptive Reconfigurable Systems (DARES 2004) - ICDCS 2004, Tokyo, Japan, pp. 320–325 (2004)

    Google Scholar 

  15. Duran-Limon, H., Blair, G.S., Coulson, G.: Adaptive Resource Management in Middleware: A Survey. IEEE Distributed Systems Online 5(7), 1 (2004)

    Article  Google Scholar 

  16. Falacarin, P., Alonso, G.: Software Architecture Evolution through Dynamic AOP. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 57–73. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  17. Blair, G., Coulson, G., Blair, L., Duran-Limon, H., Grace, P., Moreira, R., Parlavantzas, N.: Reflection, Self-Awareness and Self-Healing in OpenORB. In: Proceedings of the first workshop on Self-healing systems, Charleston, South Carolina, pp. 9–14. ACM, New York (2002)

    Chapter  Google Scholar 

  18. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley, Reading (1998)

    Google Scholar 

  19. David, P., Ledoux, T.: Towards a Framework for Self-adaptive Component-Based Applications. In: Stefani, J.-B., Demeure, I., Hagimont, D. (eds.) DAIS 2003. LNCS, vol. 2893, pp. 1–14. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  20. Yang, Z.e.a.: An Aspect-Oriented Approach to Dynamic Adaptation. In: Proceedings of the first workshop on Self-healing systems, Charleston, South Carolina, pp. 85–92. ACM, New York (2002)

    Chapter  Google Scholar 

  21. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.: An Overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  22. Keeney, J., Cahill, V.: Chisel: A Policy-Driven, Context-Aware, Dynamic Adaptation Framework. In: Workshop on Policies for Distributed Systems and Networks, pp. 3–14. IEEE Computer Society, Los Alamitos (2003)

    Google Scholar 

  23. Diaz, O., Jaime, A.: EXACT: An Extensible Approach to Active Object-Oriented Databases. VLDB 6(4), 282–295 (1997)

    Article  Google Scholar 

  24. Filman, R., Elrad, T., Clarke, S., Aksit, M.: Aspect-Oriented Software Development. Addison-Wesley, Reading (2004)

    Google Scholar 

  25. Douence, R., Muller, G., Sudholt, M.: A Framework for the Detection and Resolution of Aspect Interactions. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, pp. 173–188. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  26. Van Gurp, J., Bosch, J.: Design Erosion: Problems and Causes. Journal of Systems and Software 61(2), 105–119 (2002)

    Article  Google Scholar 

  27. Loughran, N., Rashid, A.: Framed Aspects: Supporting Variability and Configurability for AOP. In: Bosch, J., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 127–140. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  28. XVCL. XVCL Homepage (Web Site, 2005) (cited 2005), Available from: http://fxvcl.sourceforge.net

  29. Hilsdale, E., Hugunin, J.: Advice Weaving in AspectJ. In: 3rd International Conference on Aspect-Oriented Software Development (AOSD), Lancaster, UK, pp. 26–35 (2004)

    Google Scholar 

  30. Vasseur, A.: Java Dynamic AOP and Runtime Weaving - How Does AspectWerkz Address It? In: Dynamic Aspects Workshop held in conjunction with AOSD 2004, Lancaster, UK, pp. 135–145 (2004)

    Google Scholar 

  31. Coulson, G., Grace, P., Blair, G., Mathy, L., Duce, D., Cooprt, C., Yeung, W.K., Cai, W.: Towards a Component-Based Middleware Framework for Configurable and Reconfigurable Grid Computing. In: Proceedings of the 13th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, pp. 291–296. IEEE Computer Society, Los Alamitos (2004)

    Chapter  Google Scholar 

  32. Pawlak, R., Seinturier, L., Duchien, L., Florin, G.: JAC: A Flexible Solution for Aspect-Oriented Programming in Java. In: Yonezawa, A., Matsuoka, S. (eds.) Reflection 2001. LNCS, vol. 2192, pp. 1–24. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  33. Burke, B.: JBoss Tutorial. In: 3rd International Conference on Aspect-Oriented Software Development, Lancaster, UK, p. 1 (2004)

    Google Scholar 

  34. Greenwood, P., Blair, L.: Using Dynamic AOP to Implement an Autonomic System. In: Dynamic Aspects Workshop, Lancaster, UK, pp. 76–88 (2004)

    Google Scholar 

  35. Maes, P.: Concepts and Experiments in Computational Reflection. In: Conference proceedings on Object-oriented programming systems, languages and applications, Orlando, USA, pp. 146–155. ACM, New York (1987)

    Google Scholar 

  36. Dmitriev, M.: Safe Class and Data Evolution in Large and Longed-Live Java Applications, Glasgow (2001)

    Google Scholar 

  37. Cheverst, K., Davies, N., Mitchell, K., Friday, A., Efstratiou, C.: Developing a Context-aware Electronic Tourist Guide: Some Issues and Experiences. In: Proceedings of CHI 2000, Netherlands, pp. 17–24 (2000)

    Google Scholar 

  38. Pang, J., Blair, L.: An Adaptive Run Time Manager for the Dynamic Integration and Interaction Resolution of Feature. In: 22nd International Conference on Distributed Computing Systems Workshops, Vienna, Austria, pp. 445–450. IEEE Computer Society, Los Alamitos (2002)

    Google Scholar 

  39. Sanen, F., Truyen, E., De Win, B., Joosen, W., Loughran, N., Coulson, G., Rashid, A., Nedos, A., Jackson, A., Clarke, S.: Study On Interaction Issues, Katholieke Universiteit Leuven, Leuven, Belgium (2006)

    Google Scholar 

  40. AWBench. AWBench: AOP Benchmark (Web Site) (2004) (cited, April 2005), Available from: http://docs.codehaus.org/display/AW/AOP+Benchmark

  41. Chidamber, S., Kemerer, C.: A Metrics Suite for Object-Oriented Design. IEE Transactions on Software Engineering 20(6), 476–493 (1994)

    Article  Google Scholar 

  42. Fenton, N., Pfleeger, S.: Software Metrics: A Rigorous and Practical Approach. PWS, London (1997)

    Google Scholar 

  43. Garcia, A.F., Kuleska, U., Sant’Anna, S., Chavez, C., Lucena, C.: Aspects in Agent-Oriented Software Engineering: Lessons Learned. In: Müller, J.P., Zambonelli, F. (eds.) AOSE 2005. LNCS, vol. 3950, pp. 231–247. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  44. Hannemann, J., Kiczales, G.: Design Pattern Implementation in Java and AspectJ. In: Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, Seattle, Washington, USA, pp. 161–173. ACM, New York (2002)

    Chapter  Google Scholar 

  45. Garcia, A.F.: From Objects to Agents: An Aspect-Oriented Approach. Computer Science Department, p. 319. Rio de Janeiro, PUC-Rio (2004)

    Google Scholar 

  46. Sant’ Anna, C., Garcia, A., Chavez, C., Lucena, C., von Staa, A.: On the Reuse and Maintenance of Aspect-Oriented Software: An Assessment Framework. In: Brazilian Symposium on Software Engineering, Manaus, Brazil, pp. 19–34 (2003)

    Google Scholar 

  47. Garcia, A., Sant’Anna, S., Figueiredo, E., Kuleska, U., Lucena, C., Von Staa, A.: Modularizing Design Patterns with Aspects: A Quantative Study. In: 4th International Conference on Aspect-Oriented Software Development (AOSD), Chicago, USA, pp. 3–14 (2005)

    Google Scholar 

  48. Dashofy, E.: A Highly-Extensible XML Based Architecture Description Language. In: WICSA, pp. 103–112 (2001)

    Google Scholar 

  49. Frei, A., Alonso, G.: A Dynamic Lightweight Platform for Ad-Hoc Infrastructures. In: Third IEEE International Conference on Pervasive Computing and Communications, Kauai Island, Hawaii, pp. 373–382 (2005)

    Google Scholar 

  50. Nanning. Nanning AOP (2005) (cited, April 2005), Available from: http://nanning.codehaus.org/

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Greenwood, P., Blair, L. (2006). A Framework for Policy Driven Auto-adaptive Systems Using Dynamic Framed Aspects. In: Rashid, A., Aksit, M. (eds) Transactions on Aspect-Oriented Software Development II. Lecture Notes in Computer Science, vol 4242. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11922827_2

Download citation

  • DOI: https://doi.org/10.1007/11922827_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-48890-3

  • Online ISBN: 978-3-540-48891-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics