Skip to main content

A Model for Developing Component-Based and Aspect-Oriented Systems

  • Conference paper
Software Composition (SC 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4089))

Included in the following conference series:

Abstract

Aspect-Oriented Programming (AOP) and Component- Based Software Engineering (CBSE) offer solutions to improve the separation of concerns and to enhance a program structure. If the integration of AOP into CBSE has already been proposed, none of these solutions focus on the application of CBSE principles to AOP. In this paper we propose a twofold integration of AOP and CBSE. We introduce a general model for components and aspects, named Fractal Aspect Component (FAC). FAC decomposes a software system into regular components and aspect components (ACs), where an AC is a regular component that embodies a crosscutting concern. We reify the aspect domain of an AC and the relationship between an AC and a component, called an aspect binding, as first-class runtime entities. This clarifies the architecture of a system where components and aspects coexist. The system can evolve from the design to the execution by adding or removing components, aspects or bindings.

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. Aksit, M., Bergmans, L., Vural, S.: An object-oriented language-database integration model: The composition-filters approach. In: Lehrmann Madsen, O. (ed.) ECOOP 1992. LNCS, vol. 615, pp. 372–395. Springer, Heidelberg (1992)

    Chapter  Google Scholar 

  2. Aldrich, J., Chambers, C., Notkin, D.: ArchJava: Connecting software architecture to implementation. In: ICSE 2002: Proc. of the International Conference on Software Engineering, Orlando, FL, USA (May 2002)

    Google Scholar 

  3. Bracha, G., Cook, W.: Mixin-based inheritance. In: Meyrowitz, N. (ed.) Proceedings of the Conference on Object-Oriented Programming: Systems, Languages, and Applications / Proceedings of the European Conference on Object-Oriented Programming, Ottawa, Canada, pp. 303–311. ACM Press, New York (1990)

    Chapter  Google Scholar 

  4. Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.-B.: An open component model and its support in Java. In: Proceedings of the International Symposium on Component-based Software Engineering, Edinburgh, Scotland (May 2004)

    Google Scholar 

  5. Burke, B., et al.: JBoss-AOP, http://www.jboss.org/developers/projects/jboss/aop

  6. Clarke, M., Blair, G., Coulson, G., Parlavantzas, N.: An efficient component model for the construction of adaptive middleware. In: Guerraoui, R. (ed.) Middleware 2001. LNCS, vol. 2218, p. 160. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Dowling, J., Cahill, V.: The k-component architecture meta-model for self-adaptive software. In: Yonezawa, A., Matsuoka, S. (eds.) Reflection 2001. LNCS, vol. 2192, pp. 81–88. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  8. Duclos, F., Estublier, J., Morat, P.: Describing and using non functional aspects in component based applications. In: AOSD 2002: Proceedings of the 1st international conference on Aspect-oriented software development, pp. 65–75. ACM Press, New York (2002)

    Chapter  Google Scholar 

  9. Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.: Getting started with AspectJ. Communications of the ACM 44(10), 59–65 (2001)

    Article  Google Scholar 

  10. Lagaisse, B., Joosen, W.: Component-based open middleware supporting aspect-oriented software composition. In: Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds.) CBSE 2005. LNCS, vol. 3489, pp. 139–154. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  11. Lieberherr, K., Lorenz, D., Mezini, M.: Programming with Aspectual Components. Technical Report NU-CCS-99-01, College of Computer Science, Northeastern University, Boston, MA (March 1999)

    Google Scholar 

  12. Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transaction on Software Engineering 26(1), 70–93 (2000)

    Article  Google Scholar 

  13. Mezini, M., Ostermann, K.: Conquering Aspects with Caesar. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development (AOSD 2003), pp. 90–100. ACM Press, New York (2003)

    Chapter  Google Scholar 

  14. OMG. CORBA Components, v3.0 (full specification), Document formal/02-06-65 (June 2002)

    Google Scholar 

  15. Pawlak, R., Seinturier, L., Duchien, L., Florin, G., Legond-Aubry, F., Martelli, L.: JAC: An aspect-based distributed dynamic framework. Software Practise and Experience (SPE) 34(12), 1119–1148 (2004)

    Article  Google Scholar 

  16. Pessemier, N., Barais, O., Seinturier, L., Coupaye, T., Duchien, L.: A three level framework for adapting component-based systems. In: Second International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT 2005), Glasgow, Scotland (July 2005)

    Google Scholar 

  17. Seinturier, L., Pessemier, N., Duchien, L., Coupaye, T.: A component model engineered with components and aspects. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 139–153. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  18. Suvée, D.: FuseJ web site, http://ssel.vub.ac.be/fusej/

  19. 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 2003), pp. 21–29. ACM Press, New York (2003)

    Chapter  Google Scholar 

  20. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley Longman Publishing Co., Inc., Amsterdam (2002)

    Google Scholar 

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

Pessemier, N., Seinturier, L., Coupaye, T., Duchien, L. (2006). A Model for Developing Component-Based and Aspect-Oriented Systems. In: Löwe, W., Südholt, M. (eds) Software Composition. SC 2006. Lecture Notes in Computer Science, vol 4089. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11821946_17

Download citation

  • DOI: https://doi.org/10.1007/11821946_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-37657-6

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics