Mission of the Demeter Research Group

 

Our mission is to improve on current leading-edge software development practices using ideas from programming languages and software engineering. We build on technology that has industry acceptance, we propose improvements and we build tools and write papers  to make the benefits of our improvements readily available. We strive for our technology to be self-evidently important and useful.

 

We teach the technology that we develop, after it has sufficiently matured, in graduate and advanced undergraduate courses and in tutorials at conferences. We distribute the software through the web to get feedback from external users.

 

Our focus (since 1985) is on Separation of Concerns (SOC) technology.

 

  1. The job of a SOC technology is to turn a tangled and scattered implementation of a concern into a well-modularized implementation of the concern.
  2. The job of an AOOSD  (Adaptive Object-Oriented Software Development) technology, a special case of SOC, is to turn a tangled and scattered implementation of a concern into a well-modularized implementation of the concern that frees the programmer from details of the classes or methods where the implementation is scattered. The well-modularized concern is applicable to a family of diverse classes and uses some form of succinct representation, e.g., regular expressions or traversal specifications or pointcuts.
  3. The job of an AOSD (Aspect-Oriented Software Development),a special case of SOC, is to turn a tangled and scattered implementation of a crosscutting concern into a well-modularized implementation of the concern.

 

The exact relationship between SOC, AOOSD and AOSD is still being worked out (see AOP in Demeter).

 

The mission has been successful and has lead to major adoptions of our techniques in standard software development processes (e.g., the Law of Demeter) and standard tools. Some examples: XPath (succinct navigation), JAXB, AspectJ, UML class diagrams.