{'fraction_non_alphanumeric': 0.013605442176870748, 'fraction_numerical': 0.0, 'mean_word_length': 5.35251798561151, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Framework for Specifying and Analyzing Temporal Properties of UML Class Models

Software designers widely use UML Class Models to specify the static structure of object-oriented systems. Temporal properties of class models can be expressed using the TOCL, an extension of OCL with elements of a linear temporal logic. Specification and verification of temporal properties expressed in TOCL is non-trivial and no automated tools exist that aid such verification. Existing approaches rely on transforming the UML models to other languages that have automated analysis support. Such transformation is complex and can introduce errors. Towards this end, this paper proposes a framework for specifying and directly analyzing temporal properties expressed in TOCL. The framework was validated using two demonstration case studies and in both cases, the approach uncovered design faults.