UML4COP: UML-based DSML for context-aware systems

Context-awareness plays an important role in developing flexible and adaptive systems. However, it is not easy to design and implement such a context-aware system, because its system configuration can be dynamically changed. This paper proposes UML4COP, a UML-based design method for COP (Context-Oriented Programming). UML4COP is a DSML(Domain-Specific Modeling Language) for designing context-aware systems. In UML4COP, each context is modeled separately and a system design model at a certain period of time is composed by merging associated contexts.

[1]  Michael Haupt,et al.  Event-Specific Software Composition in Context-Oriented Programming , 2010, SC@TOOLS.

[2]  Michael Haupt,et al.  ContextJ: Context-oriented Programming with Java , 2011 .

[3]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[4]  Jeff Magee,et al.  Self-Managed Systems: an Architectural Challenge , 2007, Future of Software Engineering (FOSE '07).

[5]  Michael Haupt,et al.  A comparison of context-oriented programming languages , 2009, COP@ECOOP.

[6]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[7]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[8]  Naoyasu Ubayashi,et al.  CJAdviser: SMT-based debugging support for ContextJ , 2011, COP@ECOOP.

[9]  Oscar Nierstrasz,et al.  Context-oriented Programming , 2008, J. Object Technol..

[10]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[11]  Toby Walsh,et al.  Handbook of satisfiability , 2009 .