Automated Analysis of Unified Modeling Language (UML) Specifications

Loading...
Thumbnail Image

Date

2001

Authors

Tanuan, Meyer C.

Advisor

Journal Title

Journal ISSN

Volume Title

Publisher

University of Waterloo

Abstract

The Unified Modeling Language (UML) is a standard language adopted by the Object Management Group (OMG) for writing object-oriented (OO) descriptions of software systems. UML allows the analyst to add class-level and system-level constraints. However, UML does not describe how to check the correctness of these constraints. Recent studies have shown that Symbolic Model Checking can effectively verify large software specifications. In this thesis, we investigate how to use model checking to verify constraints of UML specifications. We describe the process of specifying, translating and verifying UML specifications for an elevator example. We use the Cadence Symbolic Model Verifier (SMV) to verify the system properties. We demonstrate how to write a UML specification that can be easily translated to SMV. We propose a set of rules and guidelines to translate UML specifications to SMV, and then use these to translate a non-trivial UML elevator specification to SMV. We look at errors detected throughout the specification, translation and verification process, to see how well they reveal errors, ambiguities and omissions in the user requirements.

Description

Keywords

Computer Science, Object-Oriented Software Specification, UML, Model Checking, SMV

LC Keywords

Citation