Dear John: here is the information you requested. -- Karl PROJECT ID -- PI/ORGANIZATION/TITLE D8860101 -- Karl Lieberher/Northeastern University/Evolutionary Software via Adaptive Programming MAIN CONTRIBUTION (WHAT ARE THEY PRODUCING): This project will provide an implementation of Adaptive Programming (AP), along with the underlying theory, to facilitate the evolution of Java software. The overall goal of the project is to avoid code tangling and to bring programs closer to designs. Traversals and visitors untangle structure and behavior and COOL untangles synchronization issues from behavior and RIDL untangles remote invocation issues from behavior and structure. Adaptive Programming is a special case of Aspect-Oriented Programming (AOP) where one of the aspects is expressible in terms of graphs and the other aspects or components follow 'traversal strategies' to control and interpret references to these graphs. The software is called Demeter/Java and AP Studio. Key innovations are a theory of strategic traversal automata with visitors and adjusters. PROGRESS TO DATE: The technology has been taught in a nationally televised NTU class (Fall 97) which has lead to technology tranfer to several companies. Some of them used Demeter/Java in commercial projects. We continue to implement the COOL and RIDL languages together with a generic weaver tool which can be used to implement many other aspects as well. AP Studio is the graphical user interface which allows visual development of adaptive programs. It continues to be refined based on use of the GUI in projects. INTERNAL EDCS "TECHNICAL" USERS: 1. Don Batory's Jakarta project at the University of Texas at Austin. 2. We have been talking with Dean Allemang (Synquiry) about the FAMILIAR project. INTERNAL EDCS "INTEGRATOR' USERS: Maybe Andres Rudmik at SPS. EXTERNAL USERS / NOTABLE ACCOMPLISHMENTS: Within the SIGS project at GTE Laboratories, the EDCS sponsored Adaptive Programming (AP) Technology was applied to mapping the high-level language EEL for validation rules into C++ code that fits a validation engine framework. The project was a sound success. The EEL compiler was completed by one software engineer in about 2 weeks, including the time required to install and learn how to use the Demeter/Java tools which provide an implementation of AP for Java. The EEL compiler produces substantially more complex code than an earlier version of the compiler done in C++ which took about 5 man months to complete by two software engineers who left the project. The success is attributed to using novel architectural abstraction, called strategy graphs, to model software. Strategy graphs use well-known finite automata and formal language theory to express succinctly and process efficently path sets in architectural graphs (e.g. UML class diagrams). http://www.ccs.neu.edu/research/demeter/evaluation/gte-labs/ for more information Motorola uses Demeter/Java for implementing a design pattern code generator. For more information: http://www.ccs.neu.edu/research/demeter/course/f97/projects/motorola/html/project.html