Advertisement

Aspects in Distributed Environments

  • E. Pulvermüller
  • H. Klaeren
  • A. Speck
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1799)

Abstract

We illustrate how to combine CORBA as a distributed system with aspect-oriented programming (AOP) and the resulting positive impacts. In particular, we focus on the question how AOP can be applied to a CORBA application aiming at a better separation of concerns.

The paper shows with implementation examples a practical way to package the distribution issues of a CORBA application into separated aspects (with AspectJ). This supports the distributed application design and leads to increased flexiblity.

Keywords

Distribution Issue Object Management Group Server Code Client Code Aspect Orient Program 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Batory, D., Geraci, B. J.: Composition Validation and Subjectivity in GenVoca Generators. In: IEEE Transactions on Software Engineering. Special issue on Software Reuse (1997) 67–82Google Scholar
  2. 2.
    Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture. John Wiley, Chichester, New York, Brisbane, Toronto, Singapore (1996)Google Scholar
  3. 3.
    Coulouris, G. F., Dollimore, J.: Distributed Systems: Concepts and Design. Addison-Wesley (1988)Google Scholar
  4. 4.
    Czarnecki, K., Eisenecker, U. W.: Synthesizing Objects. In: Proceedings of ECOOP’99, 13th European Conference on Object-Oriented Programming. Lecture Notes in Computer Science LNCS 1628. Springer-Verlag, June (1999) 18–42Google Scholar
  5. 5.
    Eisenecker, U. W.: Generative Programming GP with C++. In: Mössenböck, H.-P. (ed.): Proceedings of Modular Programming Languages JMLC97. Lecture Notes in Computer Science LNCS 1204. Springer-Verlag, Heidelberg, March (1997) 351–365Google Scholar
  6. 6.
    Fayad, M. E., Schmidt, D. C.: Object-Oriented Application Frameworks. In: Communications of the ACM. vol. 40, no. 10, October (1997) 32–38CrossRefGoogle Scholar
  7. 7.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Abstractions and Reuse of Object-Oriented Software. Addison-Wesley, Reading, MA (1994)Google Scholar
  8. 8.
    Gough, J., Klaeren, H.: Executable Assertions and Separate Compilation. In: Mössenböck, H.-P. (ed.): Proceedings Joint Modular Languages Conference. Lecture Notes in Computer Science LNCS 1204. Springer-Verlag, Berlin Heidelberg New York (1997) 41–52Google Scholar
  9. 9.
    Guerraoui, R., Fayad, M.: OO Distributed Programming Is Not Distributed OO Programming. In: Communications of the ACM. vol. 42, no. 4, April (1999) 101–104CrossRefGoogle Scholar
  10. 10.
    Hauck, F., Becker, U., Geier, M., Meier, E., Rastofer, U., Steckermeier, M.: AspectIX: A Middleware for Aspect-Oriented Programming. In: Object-Oriented Technology, ECOOP98 Workshop Reader. LNCS 1543. Finland. Springer-Verlag (1998) 426–427CrossRefGoogle Scholar
  11. 11.
    Kenens, P., Michiels, S., Matthijs, F., Robben, B., Truyen, E., Vanhaute, B., Joosen, W., Verbaeten, P.: An AOP Case with Static and Dynamic Aspects. In: Proceedings of the Aspect-Oriented Programming Workshop at ECOOP98. Brussels (1998)Google Scholar
  12. 12.
    Kiczales, G.: Private Communication. June, 1999Google Scholar
  13. 13.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-Oriented Programming In: Proceedings of ECOOP’97, European Conference on Object-Oriented Programming. Lecture Notes in Computer Science LNCS 1241. Springer-Verlag, June (1997)Google Scholar
  14. 14.
    Lopes, C. V., Kiczales, G.: Recent Developments in AspectJ. In: Proceedings of the Aspect-Oriented Programming Workshop at ECOOP98. Brussels (1998)Google Scholar
  15. 15.
    Lunau, C. P.: Is Composition of Metaobjects = Aspect Oriented Programming. In: Proceedings of the Aspect-Oriented Programming Workshop at ECOOP98. Brussels (1998)Google Scholar
  16. 16.
    Mowbray, T. J., Malveau, R.C.: Corba Design Patterns. John Wiley and Sons, Inc., New York, Chichester, Weinheim, Toronto, Singapore, Brisbane (1997)Google Scholar
  17. 17.
    Object Management Group: CORBAservices: Common Object Services Specification. December (1998)Google Scholar
  18. 18.
    Object Management Group: The Common Object Request Broker: Architecture and Specification. February (1998)Google Scholar
  19. 19.
    Pree, W.: Design Patterns for Object-Oriented Software Development. Addison-Wesley, Reading MA (1994)Google Scholar
  20. 20.
    Pree, W.: Komponenten basierte Softwareentwicklung mit Frameworks. dpunkt, Heidelberg (1997)Google Scholar
  21. 21.
    Purao, S., Jain, H., Nazareth, D.: Effective Distribution of Object-Oriented Applications. In: Communications of the ACM. vol. 41, no. 8, August (1998) 100–108CrossRefGoogle Scholar
  22. 22.
    Schmidt, D.C.: Experience Using Design Patterns to Develop Reusable Object-Oriented Communication Software. In: Communication of the ACM. Special Issue on Object-Oriented Experiences. vol. 38, no. 10, Brisbane, Australia (1995)Google Scholar
  23. 23.
    Schmidt, D. C.: ADAPTIVE Communication Environment: An Object-Oriented Network Programming Toolkit for Developing Communication Software. http://www.cs.wustl.edu/~schmidt/ACE.html. New Orleans (1999)
  24. 24.
    Siegel, J.: OMG Overview: CORBA and the OMA in Enterprise Computing. In: Communications of the ACM. vol. 41, no. 10, October (1998) 37–43CrossRefGoogle Scholar
  25. 25.
    Silva, A. R., Sousa, P., Marques, J. A.: Development of Distributed Applications with Separation of Concerns: In: IEEE Proceedings of the 1995 Asia-Pacific Software Engineering Conference APSEC95. Brisbane, Australia (1995)Google Scholar
  26. 26.
    Sun Microsystems: JavaIDL Documentation. http://www.java.sun.com/products/1.2/docs/guide/idl/, (1999)
  27. 27.
    University of Twente: Homepage of the TRESE Project. The Netherlands. http://www.trese.cs.utwente.nl/, http://www.trese.cs.utwente.nl/sina/cfom/index.html, (1999)
  28. 28.
    XEROX Palo Alto Research Center: Homepage of AspectJ. http://www.parc.xerox.com/aop/aspectj, (1999)

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • E. Pulvermüller
    • 1
  • H. Klaeren
    • 1
  • A. Speck
    • 1
  1. 1.Wilhelm-Schickard-Institut für InformatikUniversity of TübingenTübingen

Personalised recommendations