On the verification of UML/OCL class diagrams using constraint programming
نویسندگان
چکیده
Assessment of the correctness of software models is a key issue to ensure the quality of the final application. To this end, this paper presents an automatic method for the verification of UML class diagrams extended with OCL constraints. Our method checks compliance of the diagram with respect to several correctness properties including weak and strong satisfiability or absence of constraint redundancies among others. The method works by translating the UML/OCL model into a Constraint Satisfaction Problem (CSP) that is evaluated using state-of-the-art constraint solvers to determine the correctness of the initial model. Our approach is particularly relevant to current MDA and MDD methods where software models are the primary artifacts of the development process and the basis for the (semi-)automatic code-generation of the final application.
منابع مشابه
Employing the Object Constraint Language in Model-Based Engineering
MBE (Model-Based Engineering) proposes to develop software by taking advantage of models, in contrast to traditional codecentric development approaches. If models play a central role in development, model properties must be formulated and checked early on the modeling level, not late on the implementation level. We discuss how to validate and verify model properties in the context of modeling l...
متن کاملOCL Component Invariants
The “Object Constraint Language” (OCL) offers a formal notation for constraining model elements in UML diagrams. OCL consists of a navigational expression language which, for instance, can be used to state invariants and preand post-conditions in class diagrams. We discuss some problems in ensuring non-local, navigating OCL class invariants, as for bidirectional associations, in programming lan...
متن کاملSpecifying Component Invariants with OCL
The “Object Constraint Language” (OCL) offers a formal notation for constraining model elements in UML diagrams. OCL consists of a navigational expression language which, for instance, can be used to state invariants and preand post-conditions in class diagrams. We discuss some problems in ensuring non-local, navigating OCL class invariants, as for bidirectional associations, in programming lan...
متن کاملSynchronizing Refactored UML Class Diagrams and OCL Constraints
UML class diagrams are usually annotated with OCL expressions that constrain their possible instantiation. In our work we have investigated how OCL annotations can be automatically updated each time the underlying diagram is refactored. All our refactoring rules are formally specified using a QVT-based graphical formalism and have been implemented in our tool ROCLET. I. REFACTORING CLASS DIAGRA...
متن کاملEquational Specification of UML+OCL Static Class Diagrams
In this paper we propose an equational specification of UML+OCL static class diagrams that provides a formal foundation for automatically validating UML object diagrams with respect to OCL constraints. Basically, class and object UML diagrams are specified as membership equational theories, and OCL expressions are represented as terms over extensions of those theories. Then, validating object d...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Journal of Systems and Software
دوره 93 شماره
صفحات -
تاریخ انتشار 2014