Constraint checking in UML modeling

Modeling aims to represent a system in a given formalism. As representations based on high level modeling languages can be interpreted in many ways, constraints are introduced to restrict the field of the possible. On the other hand, language semantics is defined using constraints as well. Within the context of the UML, a classification is proposed to clarify the nature of the constraints that must be fulfilled to ensure model correctness. Constraint violations are only warnings while others are serious. Depending on the kind and the context of the violation, help and advice can be supplied, and improvements may be conditionally done. In the UML, constraints are assertions described in a side-effect free language (OCL), while actions are not supplied. To extend capabilities, the constraints are translated intowell-using modeling rules that form the knowledge base of an expert system in modeling. This modeling companion is briefly outlined.

[1]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

[2]  Luis Mandel,et al.  On the expressive power of the Object Constraint Language OCL , 1999, FM 1999.

[3]  Andy Evans,et al.  Rigorous Development in UML , 1999, FASE.

[4]  Richard C. Waters,et al.  The Requirements Apprentice: Automated Assistance for Requirements Acquisition , 1991, IEEE Trans. Software Eng..

[5]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[6]  Luis Mandel,et al.  On the Expressive Power of OCL , 1999, World Congress on Formal Methods.

[7]  Martin Gogolla,et al.  Validating UML Models and OCL Constraints , 2000, UML.

[8]  Andy Evans,et al.  Core Meta-Modelling Semantics of UML: The pUML Approach , 1999, UML.

[9]  Stuart Kent,et al.  Constraint diagrams: visualizing invariants in object-oriented models , 1997, OOPSLA '97.

[10]  Ileana Ober More meaningful UML models , 2000, Proceedings 37th International Conference on Technology of Object-Oriented Languages and Systems. TOOLS-Pacific 2000.

[11]  Jean-Louis Sourrouille A Knowledge-Based Framework of Object-Oriented Software Development Environments , 1994, Int. J. Softw. Eng. Knowl. Eng..

[12]  Martin Gogolla,et al.  OCL: Syntax, Semantics, and Tools , 2002, Object Modeling with the OCL.

[13]  Jean-Louis Sourrouille,et al.  UML Behavior: Inheritance and Implementation in Current Object-Oriented Languages , 1999, UML.

[14]  Bernhard Rumpe,et al.  Modeling Languages: Syntax, Semantics and All That Stuff, Part I: The Basic Stuff , 2000 .

[15]  Stuart Kent,et al.  Visualising Action Contracts in OO Modelling , 1998 .

[16]  Robert Balzer,et al.  Report on a knowledge-based software assistant , 1986 .

[17]  Wilhelm Schäfer,et al.  A Knowledge-Based Software Development Environment Supporting Cooperative Work , 1992, Int. J. Softw. Eng. Knowl. Eng..