TAO: A testbed for Aspect Oriented Software Development

Summary:

The links below contain the code for each version of the Java implementation of the Health Watcher system.

Implementation:

Version 1 (Base - no extensions applied)

Version 2 (Command pattern applied to remove Servlet dependency)

Version 3 (State pattern applied to ensure Complaints cannot be updated after the status is set to closed)

Version 4 (Observer pattern applied to isolate calls to the Update method)

Version 5 (Adapter pattern applied to encapsulate the distribution behaviour - only affects the Java version)

Version 6 (Abstract Factory pattern applied to ease the creation of repositories and associated data structures)

Version 7 (Adapter pattern applied to remove the dependency on Servlet Request and Response objects)

Version 8 (Abstract Factory pattern applied to generalise the distribution type used)

Version 9 (New functionality added)

Version 10 (Exception handling improved to add to new recovery mechanisms)