Skip to main content

Stateful Aspects in JAsCo

  • Conference paper

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

Abstract

Aspects that trigger on a sequence of join points instead of on a single join point are not explicitly supported in current Aspect-Oriented approaches. Explicit protocols are however frequently employed in Component-Based Software Development and business processes and are as such valid targets for aspect application. In this paper, we propose an extension of the JAsCo aspect-oriented programming language for declaratively specifying a protocol fragment. The proposed pointcut language is equivalent to a finite state machine. Advices can be attached to every transition specified in the pointcut protocol. Furthermore, the complement of a protocol can also be used for triggering aspects. The JAsCo tools support the stateful aspects language and implement it very efficiently by employing the JAsCo run-time weaver. As a validation of the approach, we present a case study in the context of reaction business rules.

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. Andrews, T., et al.: Business Process Execution Language for Web Services Specification (May 2003), http://www.ibm.com/developerworks/library/ws-bpel/

  2. Aycock, J., Horspool, N.: Schrodinger’s token. Software Practice and Experience 31(8) (2001)

    Google Scholar 

  3. Brichau, J., De Meuter, W., De Volder, K.: Jumping Aspects. In: Workshop on Aspects and Dimensions of Concerns (ECOOP 2000) (June 2000)

    Google Scholar 

  4. Cibrán, M.A., D’Hondt, M., Jonckers, V.: Aspect-Oriented Programming for Connecting Business Rules. In: Proceedings of BIS International Conference, Colorado Springs, USA (June 2003)

    Google Scholar 

  5. Date, C.: What not How: The Business Rules Approach to Application Development, 1st edn. Addison-Wesley, Reading (2000)

    Google Scholar 

  6. Douence, R., Fradet, P., Südholt, M.: A framework for the detection and resolution of aspect interactions. In: Proceedings of the ACM SIGPLAN/SIGSOFT Conference on Generative Programming and Component Engineering, Pittsburgh, USA (October 2002)

    Google Scholar 

  7. Douence, R., Fradet, P., Südholt, M.: Composition, Reuse and Interaction Analysis of Stateful Aspects. In: Proceedings of the 3rd International Conference on Aspect-Oriented Software Development, Lancaster, UK (March 2004)

    Google Scholar 

  8. Douence, R., Fradet, P., Südholt, M.: Trace-based Aspects. Aspect-Oriented Software Development (2004)

    Google Scholar 

  9. Douence, R., Südholt, M.: A model and a tool for event-based aspect-oriented programming (EAOP). Technical Report 02/11/INFO, Ecole des Mines de Nantes (2002)

    Google Scholar 

  10. Farias, A., Südholt, M.: On components with explicit protocols satisfying a notion of correctness by construction. In: Distributed Objects and Applications 2002, Irvine, USA (October 2002)

    Google Scholar 

  11. Von Halle, B.: Business Rules Applied, 1st edn. Wiley, Chichester (2001)

    Google Scholar 

  12. Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, 2nd edn. Addison-Wesley, Reading (2001)

    MATH  Google Scholar 

  13. JAsCo. JAsCo Run-Time Weaver, http://ssel.vub.ac.be/jasco/documentation:ruw

  14. JAsCo. JAsCo website, http://ssel.vub.ac.be/jasco/

  15. Kiczales, G., Hilsdale, E., Hugunin, J., Kersen, M., Palm, J., Griswold, G.W.: An overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, p. 327. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  16. Kiczales, G., Lamping, J., Menhdhekar, 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 

  17. Ross, R.G.: Principles of the Business Rule Approach, 1st edn. Addison-Wesley, Reading (2003)

    Google Scholar 

  18. 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, Boston, USA (March 2003)

    Google Scholar 

  19. Tanenbaum, A.S.: Computer Networks. Prentice Hall Professional Technical Reference, 4th edn. (2002)

    Google Scholar 

  20. Vanderperren, W., Suvée, D.: Optimizing JAsCo dynamic AOP through HotSwap and Jutta. In: Proceedings of Dynamic Aspects Workshop, Lancaster, UK (March 2004)

    Google Scholar 

  21. Vanderperren, W., Suvée, D., Jonckers, V.: Combining AOSD and CBSD in PacoSuite through Invasive Composition Adapters and JAsCo. In: Proceedings of Node 2003 International Conference, Erfurt, Germany (September 2003)

    Google Scholar 

  22. Walker, R.J., Viggers, K.: Implementing Protocols via Declarative Event Patterns. In: Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering, Newport Beach, USA (November 2004)

    Google Scholar 

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

    Google Scholar 

  24. Wydaeghe, B., Vanderperren, W., Pijpons, T., Westerhuis, F.: Adapsis: Adaptation of IP Services Based on Profiles. In: SSEL Technical Report (May 2002)

    Google Scholar 

  25. Yellin, D., Strom, R.: Protocol Specifications and Component Adaptors. ACM Transactions on Programming Languages and Systems 19(2), 292–333 (1997)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 IFIP International Federation for Information Processing

About this paper

Cite this paper

Vanderperren, W., Suvée, D., Cibrán, M.A., De Fraine, B. (2005). Stateful Aspects in JAsCo. In: Gschwind, T., Aßmann, U., Nierstrasz, O. (eds) Software Composition. SC 2005. Lecture Notes in Computer Science, vol 3628. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11550679_13

Download citation

  • DOI: https://doi.org/10.1007/11550679_13

  • Publisher Name: Springer, Berlin, Heidelberg

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics