Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2010
Abstract. UML class diagrams (UCDs) are the de-facto standard formalism for the analysis and design of information systems. By adopting formal language techniques to capture constraints expressed by UCDs one can exploit automated reasoning tools to detect relevant properties, such as schema and class satisfiability and subsumption between classes.
2010
UML class diagrams (UCDs) are the de-facto standard formalism for the analysis and design of information systems. By adopting formal language techniques to capture constraints expressed by UCDs one can exploit automated reasoning tools to detect relevant properties, such as schema and class satisfiability and subsumption between classes.
Foundations of Intelligent …, 2002
In this paper we formalize UML class diagrams in terms of a logic belonging to Description Logics, which are subsets of First-Order Logic that have been thoroughly investigated in Knowledge Representation. The logic we have devised is specifically tailored towards the high expressiveness of UML information structuring mechanisms, and allows one to formally model important properties which typically can only be specified by means of qualifiers. The logic is equipped with decidable reasoning procedures which can be profitably exploited in reasoning on UML class diagrams. This makes it possible to provide computer aided support during the application design phase in order to automatically detect relevant properties, such as inconsistencies and redundancies.
2004
Abstract. Finite model reasoning in UML class diagrams, eg, checking whether a class is forced to have either zero or infinitely many objects, is of crucial importance for assessing quality of the analysis phase in software development. Despite the fact that finite model reasoning is often considered more important than unrestricted reasoning, no implementation of the former task has been attempted so far.
… , 1998. Proceedings. 2nd IEEE Workshop on, 1998
The Unified Modeling Language (UML) is likely to become an important industry standard language for modelling object-oriented systems. However, its use as a precise analysis tool is limited due to a lack of precise semantics and practical analysis techniques. This paper proposes a rigorous analysis technique for UML based on the use of diagrammatical transformations. A precise description of a subset of UML class diagrams is presented. This is then used to identify a number of deductive transformations on class diagrams. Conditions for checking the soundness of the rules are also given. Because the reasoning system is based on the manipulation of diagrams, it is proposed that they can be successfully used by practitioners without recourse to complex linguistic proof techniques.
2007
UML is now widely accepted as the standard modeling language for software construction. The Class Diagram model is its core view, providing the backbone for any modeling effort and having well formed semantics. Class diagrams are widely used for purposes such as software and language specification, database and ontology engineering, and model transformation. The central role played by class diagrams emphasizes the need for strengthening Computer Aided Software Engineering (CASE) tools with features at the level of modern integrated development environments. Such tools need to detect errors in models, identify the source of errors, reveal redundancies, and possibly suggest design improvements. These tasks require reasoning capabilities since they depend on the meaning of the constraints that occur in a diagram. This paper characterizes four essential reasoning problems in class diagram design, and surveys methods for their solution. The contribution of this paper lies in classifying ...
icstw, 1899
In the MDD and MDA approaches, models become the primary artifacts of the development process. Therefore, assessment of the correctness of such models is a key issue to ensure the quality of the final application. In that sense, this paper presents an automatic method that uses the Constraint Programming paradigm to verify UML class diagrams extended with OCL constraints. In our approach, both class diagrams and OCL constraints are translated into a Constraint Satisfaction Problem. Then, compliance of the diagram with respect to several correctness properties such as weak and strong satisfiability or absence of constraint redundancies can be formally verified.
Intelligent Tutoring Systems for Ill-Defined Domains, 2006
Abstract. For a design problem in a modeling language like UML, there is no single correct solution. Usually, there are many solutions, which satisfy a given problem specification. In principle, the solution space can be infinite. However, current approaches evaluate ...
2011
The specification of an information system must include all relevant static and dynamic aspects of the domain. The static aspects are collected in structural diagrams that are represented in UML by means of class diagrams. Dynamic aspects are usually specified by means of a behavioral schema consisting of a set of system operations (composed by actions) that the user may execute to query and/or modify the information modeled in the class diagram.
IEEE Access
Software models are core artifacts in model driven engineering (MDE) and processable by computer. They are automatically transformed into other models and in MDE, programming code is also produced by the models. The automatic transformation provides a systematic reuse of existing artifacts. However, sometimes models are developed with defects and the defects can implicitly shift into the code, which may be difficult to discover and repair. A promising solution to this problem is model verification. UML class model is a key ingredient of MDE. However, UML only offers graphical components without the support of reasoning, due to lack of the formal foundation. Therefore, the verification of formal properties, such as consistency and finite satisfiability is not possible in UML. This paper proposes an ontology-based optimized verification method for important correctness property ''finite satisfiability'' of UML class model.
International Journal of Information System Modeling and Design, 2010
UML is now widely accepted as the standard modeling language for software construction. The Class Diagram is its core view, having well formed semantics and providing the backbone for any modeling effort. Class diagrams are widely used for purposes such as software specification, database and ontology engineering, meta-modeling, and model transformation. The central role played by class diagrams emphasizes the need for strengthening UML modeling tools with features such as recognition of erroneous models and the detection of errors' sources.
2007
UML class diagrams play a central role in the design and specification of software, databases and ontologies. The model driven architecture approach emphasizes the central role that models play, towards achieving reliable software. It is important that models are correct and that problems are detected as early as possible in the software design process. However, current case tools do not support reasoning tasks about class diagrams and enable the construction of erroneous models. There is an urgent need for methods for detecting analysis and design problems. In this paper, we present a linear programming based method for reasoning about finite satisfiability of UML class diagrams with constrained generalization sets. The method is simple and efficient and can be easily added to a case tool. It improves over existing methods that require exponential resources and extends them to new elements of class diagrams.
ACM Transactions on Software Engineering and Methodology, 2013
Models lie at the heart of the emerging model-driven engineering approach. In order to guarantee precise, consistent, and correct models, there is a need for efficient powerful methods for verifying model correctness. Class diagram is the central language within UML. Its correctness problems involve issues of contradiction, namely the consistency problem, and issues of finite instantiation, namely the finite satisfiability problem. This article analyzes the problem of finite satisfiability of class diagrams with class hierarchy constraints and generalization-set constraints. The article introduces the FiniteSat algorithm for efficient detection of finite satisfiability in such class diagrams, and analyzes its limitations in terms of complex hierarchy structures. FiniteSat is strengthened in two directions. First, an algorithm for identification of the cause for a finite satisfiability problem is introduced. Second, a method for propagation of generalization-set constraints in a clas...
—Unified Modelling Language (UML) is as a standard object-oriented modelling notation that is widely accepted and used in software development industry. In general, the UML notation is informally defined in term of natural language description (English) and Object Constraint Language (OCL) which makes difficult to formally analyzed and error-prone. In this paper, we elucidate the preliminary result on an approach to formally define UML class diagram using logic-based representation formalism. We represent how to define the UML class diagram using Description Logics (DLs).
ICSEA 2011, The Sixth …, 2011
Abstract: In view of the informal semantic of UML, there is a high risk of introducing ambiguities and contradictions in the modelled software. A considerable amount of literature has been published on UML inconsistencies. These studies have demonstrated the ...
2009
Models lie at the heart of the emerging Model-driven Engineering approach. In order to guarantee precise, consistent and correct models, there is an urgent need for efficient reasoning methods for verifying model correctness. This paper extends and strengthens our previous work on efficient recognition of finite satisfiability problems in UML class diagrams with constrained generalization sets. First, algorithm FiniteSat is simplified into a single stage process, yielding a more compact linear inequality system. The main contribution of the paper is a method for propagation of disjoint constraints within complex class hierarchy structures, which meaningfully extends the scope of the FiniteSat algorithm. The method relies on a thorough analysis of the interaction between disjoint constraints and the structure of class hierarchy. It is recommended as a pre-processing stage, and being an anytime algorithm, even partial application is useful.
… of the KI'2001 Workshop on …, 2001
In this paper we study how automated reasoning systems based on Description Logics (DLs) can be used for reasoning about UML class diagrams. The ability of reasoning automatically on UML class diagrams makes it possible to provide computer aided support during the application design phase in order to automatically detect relevant properties, such as inconsistencies and redundancies. We show that UML class diagrams can be formalized as knowledge bases expressed in the DL DLR. DLR knowledge bases can be translated into knowledge bases expressed in the variants of ALCQI accepted by state-of-the-art DL-based systems. Hence, in principle, the reasoning capabilities of such systems can be used to reason on UML class diagrams. However, we report some experiments indicating that state-of-the-art systems have still difficulty in dealing with the resulting knowledge bases.
Lecture Notes in Computer Science, 2007
Finite model reasoning in UML class diagrams is an important task for assessing the quality of the analysis phase in the development of software applications in which it is assumed that the number of objects of the domain is finite. In this paper, we show how to encode finite model reasoning in UML class diagrams as a constraint satisfaction problem (CSP), exploiting techniques developed in description logics. In doing so we set up and solve an intermediate CSP problem to deal with the explosion of "class combinations" arising in the encoding. To solve the resulting CSP problems we rely on the use of off-the-shelf tools for constraint modeling and programming. As a result, we obtain, to the best of our knowledge, the first implemented system that performs finite model reasoning on UML class diagrams.
Journal of Systems and Software, 2014
Assessment of the correctness of software models is a key issue to ensure the quality of the final application. To this end, this paper presents an automatic method for the verification of UML class diagrams extended with OCL constraints. Our method checks compliance of the diagram with respect to several correctness properties including weak and strong satisfiability or absence of constraint redundancies among others. The method works by translating the UML/OCL model into a Constraint Satisfaction Problem (CSP) that is evaluated using state-of-the-art constraint solvers to determine the correctness of the initial model. Our approach is particularly relevant to current MDA and MDD methods where software models are the primary artifacts of the development process and the basis for the (semi-)automatic code-generation of the final application.
2001
Abstract. In this paper1 we formalize UML class diagrams in terms of a logic belonging to Description Logics, which are subsets of First-Order Logic that have been thoroughly investigated in Knowledge Representation. The logic we have devised is specifically tailored towards the high expressiveness of UML information structuring mechanisms, and allows one to formally model important properties which typically can only be specified by means of qualifiers.
Intelligent Automation and Soft Computing, 2021
Unified Modeling Language (UML) models are considered important artifacts of model-driven engineering (MDE). This can automatically transform models to other paradigms and programming languages. If a model has bugs, then MDE can transfer these to a new code. The class model is a key component of UML that is used in analysis and design. Without a formal foundation, UML can create only graphical diagrams, making it impossible to verify properties such as satisfiability, consistency and consequences. Different techniques have been used to verify UML class models, but these do not support some important components. This paper transforms and verifies unsupported components such as XOR association constraints and dependency relationships of a UML class model through ontology. We use various UML class models to validate the proposed ontology-based method, easy and efficient transformation and verification of unsupported elements. The results show this approach can verify large and complex models.