Mission critical applications and legacy systems may be difficult to revise and rebuild, and yet it is sometimes desirable to retrofit their user interfaces with new collaborative features without modifying and recompiling the original code. We describe the use of Aspect-Oriented Programming as a lightweight technique to accomplish this, present an example of incorporating presence awareness deeply into an application’s user interface, and discuss the implications of this technique for developing CSCW software. Categories and Subject Descriptors D.2.13 [Software Engineering]: Reusable Software – reuse models; H.5.3 [Information Interfaces and Presentation]: Group and Organization Interfaces – Computer-supported cooperative work, collaborative computing General Terms Design, Human Factors, Languages, Theory. Keywords CSCW, groupware, aspect-oriented programming, application retrofitting, user interface components.
Li-Te Cheng, Steven L. Rohall, John F. Patterson,