80 likes | 231 Views
3 Project Objectives. Aspectual Collaborations (AC) for the Connection Aspect Metric: Does the restructuring of the UAV code with AC reduce the tangling in the code? Adding Traversals to AspectJ to provide for structure-shy DRE applications
E N D
3 Project Objectives • Aspectual Collaborations (AC) for the Connection Aspect • Metric: Does the restructuring of the UAV code with AC reduce the tangling in the code? • Adding Traversals to AspectJ to provide for structure-shy DRE applications • Metric: Demonstrate on a DRE Java application that the improved AspectJ reduces tangling in the code.
4 Technical Approach: AC • Refactor UAV code to allow for a smaller interface between collaborations making the collaborations more reusable.
4 Technical Approach: AspectJ extension • Extend AspectJ with traversal declarations that are put into separate .java file. • Without modifying AspectJ compiler but by using novel software composition techniques made available by AspectJ and useful to several other projects, implement the AspectJ extension.
7 Project Tasks: AC • Reorganize UAV code looking for collaborations with low coupling and high cohesion. Done June 2002; requires BBN involvement. • Reformulate in terms of AC and improve AC if needed. Done July 2002. • Develop an AspectJ-based implementation of AC to demonstrate approach on DRE examples. Design done June 2002. Implementation may be Dec. 2002.
This project makes extensive use of DARPA funded software: The AP Library and AspectJ 7 Project Tasks: AspectJ extension • Write back-end to produce class graph for base program. Done June 2002. • Write front-end to generate AspectJ introductions for traversals. Done August 2002. • Write middleware that processes traversal specifications. Done September 2002. • Add visitor interfaces to traversal specifications and generate AspectJ code. Done December 2002.
8 Next Milestones • See project tasks
9 Collaboration • We have collaborated with the AspectJ team and produced an alpha version of AspectJ + traversals. • To gain experience with AspectJ and prepare us for the project, we have successfully used AspectJ as implementation language in a graduate course on Aspect-Oriented Software Development.
10 Technology Transfer to Verizon • A mission-critical application at Verizon. • Invited presentation at AOSD 2002 by Verizon employee Luis Blando. • After four years, the system developed and maintained using DemeterJ is still running 24x7, processing large volumes of electronic orders. • http://www.ccs.neu.edu/research/demeter/evaluation/gte-labs/