Deriving production rules for constraint maintenance
Proceedings of the sixteenth international conference on Very large databases
Eiffel: the language
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
The object constraint language: precise modeling with UML
The object constraint language: precise modeling with UML
The Unified Modeling Language reference manual
The Unified Modeling Language reference manual
Object-Oriented Software Construction
Object-Oriented Software Construction
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
iContract - The Java(tm) Design by Contract(tm) Tool
TOOLS '98 Proceedings of the Technology of Object-Oriented Languages and Systems
The .NET Contract Wizard: Adding Design by Contract to Languages Other than Eiffel
TOOLS '01 Proceedings of the 39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems (TOOLS39)
Adding Contracts to Java with Handshake
Adding Contracts to Java with Handshake
Middleware/application interactions to support adaptive dependability
MAI '07 Proceedings of the 1st workshop on Middleware-application interaction: in conjunction with Euro-Sys 2007
Overview and Evaluation of Constraint Validation Approaches in Java
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Journal of Systems and Software
Middleware support for adaptive dependability
Proceedings of the ACM/IFIP/USENIX 2007 International Conference on Middleware
Performance-driven interface contract enforcement for scientific components
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Middleware support for adaptive dependability
MIDDLEWARE2007 Proceedings of the 8th ACM/IFIP/USENIX international conference on Middleware
Constraint support in MDA tools: a survey
ECMDA-FA'06 Proceedings of the Second European conference on Model Driven Architecture: foundations and Applications
Hi-index | 0.00 |
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.