Speaker: Azzam Maraee, Ben Gurion University

Title: UML Class Diagrams -- Decision, Identification and Repair of Correctness and Quality Problems

Abstract:
Model-driven Engineering requires efficient powerful methods for verifying model correctness and quality.  Class Diagram is the central language within UML. Its main problems involve correctness problems, which include the consistency and the finite satisfiability problems, and quality problems, which include the redundancy and incomplete design problems.

In this talk I will present efficient methods we have developed for analysis of correctness and quality problems in UML class diagrams. The ultimate goal is to have a rich support for static analysis of models, so to enable the development of advanced model level IDEs. First is the FiniteSat algorithm, an efficient detection method for finite satisfiability problems in UML class diagrams.  Next, I will present identification methods which points to the causes for finite satisfiability problems and an algorithm for tightening multiplicity constraints that cannot be realized. The last part of the talk relates to the human factor in modeling. We describe a catalog of anti-patterns that characterize correctness and quality problems in class diagrams. Formalization of the anti-patterns involves a template-oriented extension of the class diagram language. The catalog role was tested in a series of experiments. The novelty of the research lies in the integration of formal and educational methods for improving model design quality in class diagrams. Our methods are implemented in our FiniteSatUSE tool and its associated catalog of correctness anti-patterns. 

Joint work with Prof. Mira Balaban