AOSD Conference  
Program Overview
Technical Program
Student Extravaganza
Social Events
Technical Papers
Practitioner Reports
Student Extravaganza
Places to Eat
Internet Access
Lancaster & Lake District Photos

T7: Enterprise Aspect-Oriented Programming with AspectJ

Date Thursday, March 25, 2004, mid-day (half day)
Presenters Ron Bodkin, New Aspects of Software
Andy Clement, IBM UK
Level Intermediate: Attendees should have experience doing object-oriented design and enterprise Java development, and should have some previous exposure to aspect-oriented programming (at least a tutorial). Previous experience with AspectJ is beneficial but not required.


Aspect-oriented programming (AOP) has become a hot topic for enterprise development, with recent news of support by IBM, JBoss, BEA, Oracle, Eclipse, and IntelliJ. Behind the news headlines, however, are critical questions:

  • How real is AOP for the enterprise?
  • What problems can it solve today?
  • How does it apply to enterprise applications?
  • How can one make an informed decision about trying to use AOP?
  • What is the best adoption strategy?
  • What are the long term possibilities for AOP in the enterprise?

This tutorial will tackle these questions and give developers, architects, and technical managers an introduction to AOP for enterprise Java application development. We will provide both a conceptual road map and tangible examples of how AOP works and where it can be beneficial, as well as discussing anti-patterns (i.e., how not to use AOP). Over the course of the tutorial, we will demonstrate the use of AOP for security, error handling, policy enforcement, testing with JUnit, systems management with JMX, and more. The examples will be implemented in the AspectJ programming language (a popular and seamless aspect-oriented extension to Java) and will incorporate major J2EE technologies such as servlets, JSPs, and EJBs.

At the end of the tutorial, participants will have an understanding of both the potential and the pitfalls for applying AOP in a J2EE context. The tools used in the tutorial are all freely available as open source software, so participants will be able to use the techniques shown in their own projects. AspectJ is available at


Ron Bodkin is the founder of New Aspects of Software, which provides consulting and training on application development with an emphasis on aspect-oriented programming and security. Ron is also a member of AspectMentor, a consortium of AOP experts. Previously, Ron led the first implementation projects and training for customers for the AspectJ group at Xerox PARC. Prior to that, Ron was a founder and the CTO of C-bridge, a consultancy that delivered enterprise applications using frameworks for Java, XML, and other Internet technologies. C-bridge grew to 900 employees and a successful IPO in December of 1999.

Andy Clement is a software developer at IBM Hursley Park. He has almost ten years of experience in transaction processing and enterprise middleware development. He is one of the founders of the AspectJ Development Tools (AJDT) for Eclipse project and is currently involved in the use of aspects in J2EE middleware.

Edited by the AOSD Conference Committee.  Send comments to: