AOSD Conference  
Program Overview
Technical Program
Industry Track
Student Extravaganza
Conference Venue
Chicago Photos
Chicago History
Student Volunteers
AOSD-Europe Sponsorships


Exhibition 1: AspectWerkz Aspect Container

Alexandre Vasseur, BEA Systems
Jonas Bonér, BEA Systems

AspectWerkz is a pure Java, lightweight and high-performant AOP framework for Java. AspectWerkz has been innovating in several fields since its inception, with annotation and XML defined aspects, annotation driven AOP, atomic hot- deployment/undeployment of aspects, application server integration etc. It has been successfully implementing recent AOSD research ideas like runtime and load time weaving, and "just in time" compilation of join points. AspectWerkz is available under an open source license and is backed by BEA Systems.

This exhibition gives the attendees an opportunity to see AspectWerkz in action and discuss with AspectWerkz leads about the internals of their choice. The features presented aims at giving the practitioner a deep view on AspectWerkz programming model based on Java annotations, weaving capabilities (post compilation, load time and runtime) and application server integration.

Simple samples will provide an entry point to understand AspectWerkz plain Java aspects programming model, while more complex samples based on a broad scope of Java/J2EE technologies will illustrate how to unleash AOP in real world Java and J2EE applications.

A specific emphasis will be put on annotation-driven AOP that latest Java 5 enables in a standardized way, in which Java annotations can raise the abstraction level of the pointcut language and in which AOP allows adding behavior to the static metadata provided by the annotations.

Exhibition 2: AspectC++ Add-In for Microsoft® Visual Studio®

Danilo Beuche, pure-systems

On the AOSD exhibition pure systems presents the new version of its AspectC++ Add-In for Microsoft® Visual Studio®, now bundled with AspectC++ 1.0. The pure-systems AspectC++ Add-In is the first integrated solution for aspect-oriented software development with C++, the most widely used programming language in the world. As an Add-In it was specially designed for Microsoft® Visual Studio®, the world most popular integrated development environment.

pure-systems provides services and creates tools for aspect-oriented programming and software product line development. The company puts a special focus on the introduction of those technologies into the development of embedded software.

Exhibition 3: AspectJ and AJDT

Adrian Colyer, IBM UK

Come and meet the developers of the AspectJ language and compiler, and the AJDT (AspectJ Development Tools) for Eclipse. We'll be on hand to discuss the latest features in AspectJ 5 and in AJDT, and to demonstrate the tools. Learn about AspectJ's support for generics and annotations, see AJDTs deeper integration into the Java tools suite, and catch some of the latest demos.

AspectJ is a seamless aspect-oriented extension to the Java programming language that is Java platform compatible and designed to be easy to learn and use. AspectJ is also an open source project hosted at AJDT provides integration of the AspectJ compiler and language into the Eclipse IDE. It provides syntax highlighting, code assist, integrated building, structure views, crosscutting views and more. AJDT is also an open-source project on You can find out more at

Exhibition 4: AspectMentor

Gregor Kiczales, founder
Ron Bodkin
Mik Kersten
Ramnivas Laddad
Nicholas Lesiecki
Mira Mezini

AspectMentor is a group of experts in aspect-oriented programming (AOP) and aspect-oriented software development. We help organizations adopt and use aspect-oriented technologies with services including training, mentoring, project planning and strategy development.

We'll be available in the exhibition to talk about adopting AOSD, our services, and to demonstrate our work. We will be showing training materials from our courses, code from projects we've worked on, and signing books that we've written.

Exhibition 5: Spring

Rod Johnson, CEO Interface21, Founder Spring Framework
Rob Harrop, Lead Architect Cake Solutions, Spring Framework committer

Exhibition 6: Introducing AOPHP (Aspect-Oriented PHP)

John W. Stamey, Jr., Coastal Carolina University
Bryan T. Saunders, Coastal Carolina University
Don Yessick, Coastal Carolina University
Matthew Cameron, SOI, Inc.

A platform that has not yet enjoyed a successful implementation of aspect- oriented programming (AOP) is PHP. With recent improvements in PHP's Object- Oriented functionality, implemented in PHP 5.0, this popular middleware is an ideal platform in which to implement AOP. Previous approaches for implementing aspects in PHP using C extensions have yet to be successful. A design implementing aspects using pre-processing has yielded a successful solution for implementing aspects in PHP.

We present our approach for implementing aspect-oriented PHP, along with some discussion about features to be available in the upcoming release of AOPHP V2.0. Released under the GNU General Public License in December 2004, AOPHP may be found on the World-Wide Web at

Exhibition 7: Persistence as an Aspect in Oracle TopLink

Shaun Smith, Principal Product Manager, Oracle TopLink
Merrick Schincariol, Senior Engineer, Oracle AS Containers for J2EE, Oracle Corp
Jim Clark, OracleAS Solution Architect, Oracle Corp

Oracle TopLink is the leading Java object-to-relational persistence framework which provides a highly flexible and productive mechanism for storing Java objects and Enterprise Java Beans (EJBs) in relational database tables. TopLink offers developers excellent performance and choice, working with any database, any application server, any development toolset and process, and any J2EE architecture.

In the past, TopLink has achieved a high level of transparency in its persistence by relying exclusively on reflection. However, AOP offers new ways to achieve the same or better level of transparency while opening up opportunities for even better performance. We will show how persistence mapping meta-data can be combined with AOP to simplify the development and improve the performance of applications using object-relational mapping. We will demonstrate how meta-data can be used to identify join points that can be enhanced with persistence advice to implement lazy loading and change tracking, how persistence semantics (e.g., read-only/read-write) can be enforced in persistent objects, and how factoring out persistence as an aspect results in a simpler programming model for developers.

Edited by the AOSD Conference Committee.  Send comments to: