الملخّص
UML and OCL are largely adopted as a standard to describe the static and the dynamic aspects of systems and to specify their properties. Model driven engineering (MDE) techniques can be used to automatically generate code from such models. For critical systems, formal methods are frequently used together with UML/OCL models in order to analyse and check model properties. In this paper, we propose a combination of UML/OCL and FoCaLiZe, an object-oriented development environment using a proof-based formal approach. More specifically, we propose a formal transformation of UML state machines conditioned with OCL constraints into FoCaLiZe specifications that can be refined to generate executable code. The proposed transformation supports communication between a class structure and its state machine. Thanks to Zenon, the automatic theorem prover of FoCaLiZe, errors of the original UML/OCL model, if any, are automatically detected. We illustrate our translation with a concrete case study.
التفاصيل
| اللغة الأصلية | English |
|---|---|
| المجلّة | International Journal of Information and Communication Technology |
| المجلّد | 13 |
| العدد | 1 |
| الصفحات | 34 |
| الناشر | Inderscience Publishers |
| ISSN | 1466-6642 · 1741-8070 |
| DOI | 10.1504/ijict.2018.090429 |
| حالة النشر | منشور — 1 جانفي 2018 |
الكلمات المفتاحية
البصمة
- Model-Driven Software Engineering Techniques
- Formal Methods in Verification
- Logic, programming, and type systems
- UML state machines
- OCL constraints
- formal transformation
- model-driven engineering
- model refinement
- executable code generation
- formal verification
- automated theorem proving
- Software
- Computational Theory and Mathematics
- Artificial Intelligence
- Computer Science