Skip to main content

A Component Model Engineered with Components and Aspects

  • Conference paper

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

Abstract

This paper presents AOKell, a framework for engineering component-based systems. This framework implements the Fractal model, a hierarchical and dynamic component model. The novelty of this paper lies in the presentation of AOKell, an implementation of the Fractal model with aspects. Two dimensions can be isolated with Fractal: the functional dimension, which is concerned with the definition of application components, and the control dimension, which is concerned with the technical services (e.g. lifecycle, binding, persistence, etc.) that manage components. The originality of AOKell is, first, to provide an aspect-oriented approach to integrate these two dimensions, and second, to apply a component-based approach for engineering the control dimension. Hence, AOKell is a reflective component framework where application components are managed by other, so-called, control components and where aspects glue together application components and control components.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bodoff, S., Armstrong, E., Ball, J., Carson, D.: The J2EE Tutorial, 2nd edn. Addison-Wesley, Reading (2004), http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html

    Google Scholar 

  2. Siegel, J.: CORBA 3 Fundamentals and Programming, 2nd edn. Wiley, Chichester (2000)

    Google Scholar 

  3. OSGi Alliance: OSGi Technical Whitepaper, Revision 3.0 (2004), http://www.osgi.org

  4. Aldrich, J., Chambers, C., Notkin, D.: ArchJava: Connecting software architecture to implementation. In: Proceedings of the 24th International Conference on Software Engineering (ICSE 2002), pp. 187–197. ACM Press, New York (2002)

    Chapter  Google Scholar 

  5. Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.B.: An open component model and its support in Java. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 7–22. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  6. Suvée, D., Vanderperren, W., Jonckers, V.: FuseJ: An architectural description language for unifying aspects and components. In: Workshop Software-Engineering Properties of Languages and Aspect Technologies (SPLAT) at AOSD 2005 (2005), http://ssel.vub.ac.be/Members/dsuvee/papers/splatsuvee2.pdf

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

    Chapter  Google Scholar 

  8. Clarke, M., Blair, G., Coulson, G., Parlavantzas, N.: An efficient component model for the construction of adaptive middleware. In: Proceedings of Middleware 2001 (2001)

    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. Escoffier, C., Donsez, D.: FractNet: An implementation of the Fractal component model for .NET. In: 2ème Journée Francophone sur Développement de Logiciels par Aspects (JFDLPA 2005) (2005), www-adele.imag.fr/fractnet/

  11. Baude, F., Caromel, D., Morel, M.: From distributed objects to hierarchical grid components. In: Meersman, R., Tari, Z., Schmidt, D.C. (eds.) CoopIS 2003, DOA 2003, and ODBASE 2003. LNCS, vol. 2888, pp. 1226–1242. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  12. Fassino, J.P., Stefani, J.B., Lawall, J., Muller, G.: Think: A software framework for component-based operating system kernels. In: Proceedings of the USENIX Annual Technical Conference, pp. 73–86 (2002)

    Google Scholar 

  13. Rouvoy, R., Merle, P.: Abstraction of transaction demarcation in component-oriented platforms. In: Endler, M., Schmidt, D.C. (eds.) Middleware 2003. LNCS, vol. 2672, pp. 305–323. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  14. ObjectWeb: JORAM: Java open reliable asynchronous messaging (2002), http://joram.objectweb.org

  15. Sun Microsystems: Java Message Service Specification Final Release 1.1 (2002), http://java.sun.com/jms

  16. Alia, M., Chassande-Barrioz, S., Déchamboux, P., Hamon, C., Lefebvre, A.: A middleware framework for the persistence and querying of java objects. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol. 3086, pp. 292–316. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  17. Sun Microsystems: Java Data Objects (2002), http://java.sun.com/products/jdo/

  18. Bruneton, E., Coupaye, T., Stefani, J.B.: The Fractal Component Model. ObjectWeb, Version 2.0.3 (2004), http://fractal.objectweb.org/specification/index.html

  19. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, 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 

  20. Burke, B.: It’s the aspects. Java’s Developer’s Journal (2003), http://www.sys-con.com/story/?storyid=38104&DE=1

  21. Bonér, J., Dahlstedt, J., Vasseur, A.: AspectWerkz 2: An extensible aspect container. TheServerSide.com (2004), http://www.theserverside.com/articles/article.tss?l=AspectWerkzP1

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

    Article  Google Scholar 

  23. 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 

  24. Sun Microsystems: Enterprise Java Beans (1997), http://www.javasoft.com/products/ejb

  25. Fleury, M., Reverbel, F.: The JBoss extensible server. In: Endler, M., Schmidt, D.C. (eds.) Middleware 2003. LNCS, vol. 2672, pp. 344–373. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  26. Seinturier, L., Pessemier, N., Coupaye, T.: AOKell: An aspect-oriented implementation of the Fractal specifications. In: Objectweb Fractal Workshop, Grenoble, France (2005)

    Google Scholar 

  27. Szyperski, C.: Component Software - Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley, Reading (2002)

    Google Scholar 

  28. Leclercq, M., Quema, V., Stefani, J.B.: DREAM: a component framework for the construction of resource-aware, configurable middleware. IEEE Distributed Systems Online 6(9) (2005)

    Google Scholar 

  29. Gil, T., Evain, J.B.: AspectDNG. DotNetGuru (2005), http://www.dotnetguru.biz/aspectdng/

  30. Bruneton, E., Lenglet, R., Coupaye, T.: ASM: A code manipulation tool to implement adaptable systems. In: Journées Composants 2002 (JC 2002) (2002), http://asm.objectweb.org/current/asm-eng.pdf

  31. Coulson, G., Blair, G., Grace, P., Joolia, A., Lee, K., Uyema, J.: A component model for building systems software. In: Proceedings of the IASTED Software Engineering and Applications (SEA 2004) (2004)

    Google Scholar 

  32. Mencl, V., Bures, T.: Microcomponent-based component controllers: A foundation for component aspects. In: Proceedings of the 12th Asia-Pacific Software Engineering Conference (APSEC 2005) (2005)

    Google Scholar 

  33. Pessemier, N., Seinturier, L., Duchien, L., Coupaye, T.: A model for developing component-based and aspect-oriented systems. In: Löwe, W., Südholt, M. (eds.) SC 2006. LNCS, vol. 4089, pp. 259–274. Springer, Heidelberg (2006)

    Chapter  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

Seinturier, L., Pessemier, N., Duchien, L., Coupaye, T. (2006). A Component Model Engineered with Components and Aspects. In: Gorton, I., et al. Component-Based Software Engineering. CBSE 2006. Lecture Notes in Computer Science, vol 4063. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11783565_10

Download citation

  • DOI: https://doi.org/10.1007/11783565_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-35628-8

  • Online ISBN: 978-3-540-35629-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics