Specifying and implementing the operational use of constraints in object-oriented applications

  • Authors:
  • Bart Verheecke;Ragnhild Van Der Straeten

  • Affiliations:
  • Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Europe;Vrije Universiteit Brussel, Pleinlaan 2, 1050 Brussels, Europe

  • Venue:
  • CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The design of software applications largely amounts to capturing constraints, representing the domain under study. Current case-tools do not provide an unambiguous way to represent constraints and ignore most of the constraints when moving to code. In this article constraints are expressed in the Object Constraint Language (OCL) on class diagrams of the Unified Modelling Language (UML). We present a framework assisting the developer in making the transition from constraints on detailed design level to implementation. This framework defines a structure representing the issues related to turning declarative constraints into operational code. Our approach exploits the object-oriented paradigm by representing constraints as explicit classes in the implementation. The points in the code where the constraints must be checked are automatically deduced using the model and by performing path analysis on declarative constraint expressions. An improved code generator is built and integrated in the Argo/UML case-tool. This framework enables developers to exploit the high levels of information that are available in UML/OCL models.