An enhanced UML consistency checker using logical approach - Ibrahim, Noraini (2013)
In developing an information system, software specification is one of the common activities to any system development methodologies. A software model is among the ways to specify software functionalities and constraints. It is constructed as a way to understand the software prior to actually building or modifying it, and it can help in reducing defect density in the software design. In an object oriented based development, Unified Modeling Language (UML) is a famous language used for visualising, capturing and documenting software requirements. Currently, UML has a set of fourteen (14) diagrams that permits modellers to describe different aspects of a system. Each diagram comprises of graphical notations that adhered to UML elements. These situations rendered UML model vulnerable to consistency problems where two or more overlapping elements of different diagrams are not jointly satisfiable. Even though the research in consistency between UML diagrams is rapidly increased, there is still lack of researches of consistency based on use case in use case diagram. UML consistency management is becoming a difficult task because UML itself lacks of formal syntax and semantics and current approaches using simplified version of UML make their approaches hard to implement in CASE (Computer-aided Software Engineering) tool environment. Due to those problems, this research introduces formal syntactical rules to UML elements of four (4) most popular UML diagrams used by UML practitioners: use case diagram, activity diagram, sequence diagram and class diagram. Referring to the formal syntactical rules for UML elements, formal horizontal consistency rules based on use case are also specified. The formal specifications introduced in this research are using logical approach. Based on the syntactical and horizontal consistency rules, UML Checker is implemented in the CASE tool environment. Then, the UML Checker is validated by using UML model of Lecture Assessment System (LAS) as a case study. It shows that the UML Checker can detect inconsistencies between four (4) UML diagrams in the UML model and guide software modeller to correct them.