Aspect-Oriented Subprogram Synthesizes UML Sequence Diagrams
The Rational Sequence computer program described in the immediately preceding article includes a subprogram that utilizes the capability for aspect-oriented programming when that capability is present. This subprogram is denoted the Rational Sequence (AspectJ) component because it uses AspectJ, which is an extension of the Java programming language that introduces aspect-oriented programming techniques into the language. The Rational Sequence (AspectJ) component is compiled with a target Java application program on an AspectJ compiler. The user then starts the Java application program. Thereafter, the Rational Sequence (AspectJ) component publishes every visible method call to a Universal Modeling Language (UML) sequence diagram. When the Java application program ends, a sequencer proceeds to generate a UML model that contains packages, classes, and all method calls that occurred during the execution of the program. The user can control the way the UML model is generated by specifying, via the aspect source code, packages and/or classes to be included in the diagrams. Like the rest of Rational Sequence, the AspectJ component complies with the UML specification.
This program was written by Matthew R. Barry and Richard N. Osborne of United Space Alliance for Johnson Space Center. For further information, contact the Johnson Technology Transfer Office at (281) 483- 3809. MSC-23655