Generic Methodology for Formal Verification of UML Models

Keywords: Formal verification, Computational tree logic, Linear temporal logic, Property specification, State chart diagram, UML modelling

Abstract

This paper discusses a Unified Modelling Language (UML) based formal verification methodology for early error detection in the model-based software development cycle. Our approach proposes a UML-based formal verification process utilising functional and behavioural modelling artifacts of UML. It reinforces these artifacts with formal model transition and property verification. The main contribution is a UML to Labelled Transition System (LTS) Translator application that automatically converts UML Statecharts to formal models. Property specifications are derived from system requirements and corresponding Computational Tree Logic (CTL)/Linear Temporal Logic (LTL) model checking procedure verifies property entailment in LTS. With its ability to verify CTL and LTL specifications, the methodology becomes generic for verifying all types of embedded system behaviours. The steep learning curve associated with formal methods is avoided through the automatic formal model generation and thus reduces the reluctance of using formal methods in software development projects. A case study of an embedded controller used in military applications validates the methodology. It establishes how the methodology finds its use in verifying the correctness and consistency of UML models before implementation.

Published
2022-01-05
How to Cite
Kochaleema, K., & Kumar, G. S. (2022). Generic Methodology for Formal Verification of UML Models. Defence Science Journal, 72(1), 40-48. https://doi.org/10.14429/dsj.72.17228
Section
Computers & Systems Studies