Adaptive Object-Oriented Software Technology is loaded with Ph.D. thesis topics. My book (see below) gives an introduction to this improved OO technology. Seven theses have already been written on this topic. Here is a partial list of possible topics: Aspect-Oriented Programming with crosscutting class graphs Each aspect is formulated with respect to a class graph. Multiple aspects that crosscut each other. Distributed Adaptive Programming Mechansisms to Specify the Range of Applicability of Adaptive Programs Develop further Aspects besides Structure, Synchronization and Remote Invocation. Real-time Adaptive Software Specification and Correctness Proofs for Adaptive Programs when is an adaptive program correct? Type Theory for Adaptive Programming Complexity Theory of Adaptive Programming what is the running time of a program parameterized by a class graph? General purpose AO languages improve on AspectJ and Aspectual Collaborations http://www.ccs.neu.edu/research/demeter/biblio/aspectual-comps.html Dynamic Aspectual Collaborations allow collaborations and adapters to be added and removed at run-time Partially evaluate DJ programs DJ programs are slow. Partially evaluate them when class graphs and strategies and visitors are fixed. TRAVERSAL EQUIVALENCE PROBLEM: Given two strategy/class graph pairs (S1,G1) and (S2,G2) such that Common = Objects(G1) intersect Objects(G2) is not empty, determine whether they define the same traversals for all objects in Common. (Also treat the case where the question is whether one is always a subtraversal of the other.) If the traversals are different for some objects, give an object where the traversals are different. Motivation: during the evolution of adaptive programs and class graphs, we need to know how traversals change. etc. AP AND TRANSLATOR GENERATION How can we view an adaptive program as a generator of translators for objects? Given an adaptive program p and two class graphs C1 and C2 with which p works, how can we produce a generator that translates C1-objects to C2-objects? Some of those topics are addressed in my book. ====== BOOK INFORMATION Title: Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns Author: Karl Lieberherr Publisher: PWS Publishing Company ISBN: 0-534-94602-X Year: 1996 For more information, including the foreword by Gregor Kiczales and John Lamping from Xerox PARC plus some sample chapters, see URL: http://www.ccs.neu.edu/research/demeter/ The Demeter Tools are a useful addition to the book. They are freely available in object form. See URL: ftp://ftp.ccs.neu.edu/pub/people/lieber/DemeterTools.txt