UML class diagrams

Top PDF UML class diagrams:

Recommender systems for UML class diagrams.

Recommender systems for UML class diagrams.

7.1 Limitations After running the experiment we found that some features were not detected by the auto- matic processing of the diagrams. This is related to mistakes in the manual cleanup and fix of the XMI files, but we believe that the errors are not large enough to change our conclu- sions. The size and the quality of the UML database are also points to be considered. The limited number of subjects and the lack of UML specialists to evaluate the system are also limitations, we just had non-experienced volunteers and we could not discover what users really interested in UML class diagrams think about the study. We also could not evaluate the UML diagrams in some context of use, and we just recommended them in a static way, disregarding their context of use. These observations preclude us to generalize the results to real world contexts.
Show more

145 Read more

Mutation Operators for UML Class Diagrams

Mutation Operators for UML Class Diagrams

3 Universitat Politècnica de València, PROS Research Centre,Valencia, Spain {fgranda, tvos, opastor}@pros.upv.es Abstract. Mutation Testing is a well-established technique for assessing the quality of test cases by checking how well they detect faults injected into a software artefact (mutant). Using this technique, the most critical activity is the adequate design of mutation operators so that they reflect typical defects of the artefact under test. This paper presents the design of a set of mutation operators for Conceptual Schemas (CS) based on UML Class Diagrams (CD). In this paper, the operators are defined in accordance with an existing defects classification for UML CS and relevant elements identified from the UML-CD meta-model. The operators are subsequently used to generate first order mutants for a CS under test. Finally, in order to analyse the usefulness of the mutation operators, we measure some basic characteristics of mutation operators with three different CSs under test.
Show more

15 Read more

Evaluating the complexity of UML class diagrams

Evaluating the complexity of UML class diagrams

Among the 14 different types of diagrams used in UML, half of them employed to display structural information, and the other half represents general type of behavior four of which allocated to different aspects of interactions. 2 UML not only has the capability to be exploited for forward engineering, but also beneficial on reverse engineering. This ability comes from its graphical representation of a software system (Ben-Abdallah et al., 2004). One of basic uses of UML class diagrams is to illuminate the structure of a software system that mostly leads to an appropriate understanding of it. UML class diagrams model the classes and their various relationships, such as generalization (inheritance), association (aggregation and composition), and other dependencies.
Show more

25 Read more

An Experimental Comparison of ER and UML Class Diagrams

An Experimental Comparison of ER and UML Class Diagrams

Abstract A data model is a set of concepts that can be used to describe the structure and operations of the database. It represents as a diagram that illustrates all the possible relationships between data elements. Many models are used to represent data. The most famous of these models are ER model and UML class diagrams. Each model has many uses and features different from the other model. The database designers when choosing the right model to represent their data is a hard task for them. In this paper, we have applied an experiment to compare the ER model with UML class diagram. The task of experiment is to determine the strengths and weaknesses points of each model. It is based on matching a given textual specification for a simple application domain against collection of diagrams. The results indicate that ER model is generally better in relationship name and participation representation than the UML class diagram. On the other hand, UML class diagrams provide a better representation for the cardinality relationship compared with ER diagrams.
Show more

10 Read more

Mapping UML Class Diagrams into Object-Relational Schemas

Mapping UML Class Diagrams into Object-Relational Schemas

Abstract. Recently, the SQL:2003 standard has been completed by introducing corrections and new capabilities to the SQL:1999. With databases complying with the two standards more complex applications can be developed. For database design, in the literature it is possible to find articles about the mapping steps from an entity-relationship model and from UML class diagrams to relational schemas, with less frequency can be found also some efforts for transforming UML class diagrams into object-relational schemas, but they are focused in a portion of the whole problem. In this article we present several mappings functions from UML class diagrams into objects of the object- relational schema approach related to the SQL:2003 standard, and from these objects into tables where the objects persist. The main objective of this paper is to provide a formalization of the steps involved in the design of object- relational schemas by starting with an UML class diagram.
Show more

16 Read more

Finite Satisfiability of UML class diagrams by Constraint Programming

Finite Satisfiability of UML class diagrams by Constraint Programming

calvanese@inf.unibz.it Abstract. Finite model reasoning in UML class diagrams, e.g., check- ing 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 soft- ware development. Despite the fact that finite model reasoning is often considered more important than unrestricted reasoning, no implementa- tion of the former task has been attempted so far. The main result of this paper is that it is possible to use off-the-shelf tools for constraint model- ing and programming for obtaining a finite model reasoner. In particular, exploiting appropriate reasoning techniques, we propose an encoding as a CSP of UML class diagram satisfiability. Moreover, we show also how CP can be used to actually return a finite model of a class diagram. A description of our system, which accepts as input class diagrams in the MOF syntax, and the results of the experimentation performed on the CIM knowledge base are given.
Show more

15 Read more

UML Class Diagrams (1.8.7) 9/2/2009

UML Class Diagrams (1.8.7) 9/2/2009

8 UML Class Diagrams Java programs usually involve multiple classes, and there can be many dependencies among these classes. To fully understand a multiple class program, it is necessary to understand the interclass dependencies. Although this can be done mentally for small programs, it is usually helpful to see these dependencies in a class diagram. jGRASP automatically generates a class diagram based on the Unified Modeling Language (UML). In addition to providing an architectural view of your program, the UML class diagram is also the basis for the Object Workbench which is described in a separate section.
Show more

12 Read more

Translating alloy apecifications to UML class diagrams annotated with OCL

Translating alloy apecifications to UML class diagrams annotated with OCL

It prescribes the development of software by successively transforming models from abstract (specifications) to more concrete ones (code). Alloy is an increasingly popular lightweight formal specification language that supports automatic verification. Unfortunately, its widespread industrial adoption is hampered by the lack of an ecosystem of MDE tools, namely code generators. This paper presents a model transformation between Alloy and UML Class Diagrams annotated with OCL. The proposed transformation enables current UML-based tools to also be applied to Alloy specifications, thus unleashing its potential for MDE.
Show more

16 Read more

Towards an Automatic Evaluation of UML Class Diagrams by Graph Transformation

Towards an Automatic Evaluation of UML Class Diagrams by Graph Transformation

Then we focus on how UML class diagrams can be represented as graphs in particular to be saved and analyzed by computer systems. We will start with some basic definitions and notations on graphs that we will use later in this paper. Indeed, the graphs are often used to model objects in various scientific and engineering fields such as the treatment and recognition of images, information search and text documents, the representation of scientific data [7]. The purpose of these representations is to have an easier formalism to handle the initial representation of the object.
Show more

6 Read more

Generating natural language specifications from UML class diagrams

Generating natural language specifications from UML class diagrams

6 Conclusion and Future Developments In this paper, we presented the GeNLangUML system that generates NL specifica- tions from UML class diagrams. We studied 45 class diagrams, all academic and taken from text books, to understand the most commonly used rules and conventions used by software developers when naming various components of a class diagram. A set of rules based on the syntactic structures of the string names has been developed taking into account statistical information. These rules were used to understand and disambiguate the names given to classes, relationships, attributes and operations in a UML class diagram. We used WordNet for the syntactic analysis of the input names and the verification of sentences generated. The system was evaluated using an inde- pendent case study. The results obtained so far are encouraging and the implemented prototype demonstrated its feasibility. If fully implemented, such a system will unde- niably help software engineers in generating NL specifications from class and other UML diagrams to use for communicating with those stakeholders who cannot under- stand UML models. These can also be used as a way of integrating users in the consis- tency checking process when changes are made to the design or implementation. As mentioned earlier, tools such as Rational Rose [61] can reverse engineer code to UML diagrams and systems such as GeNLangUML will help the generation of NL specifi- cations from UML diagrams.
Show more

32 Read more

Tahuti: A Geometrical Sketch Recognition System for UML Class Diagrams

Tahuti: A Geometrical Sketch Recognition System for UML Class Diagrams

The domain of UML class diagrams is a node and link domain. Another system based on a node and link domain is Denim (Lin et al. 2001), which recognizes boxes and two link types to allow users to sketch and design web pages. However, in Denim, the link types are differentiated not by the geometrical properties of the drawn links, but rather by what the links connect. UML class diagrams are a subset of the software de- sign domain. Other work has been done in the area of software design sketch recognition. Eric Lecolinet (Lecolinet 1998) has created a system to design GUIs based on modal interaction where the user is required to select an appropriate drawing tool. His system is quite different from the system that we are designing in that it does not allow free hand drawing and thus does not perform sketch recognition, but it does display an in- teresting use of sketch gestures.
Show more

8 Read more

Constraint-based collaborative environment for learning UML class diagrams

Constraint-based collaborative environment for learning UML class diagrams

This paper describes an Intelligent Tutoring System (ITS) that uses Constraint- Based Modeling (CBM) approach to support both problem-solving and collaborative learning. CBM has been used successfully in several tutors supporting individual learning [20]. We have developed COLLECT- UML [2, 3], a single-user version of a constraint-based ITS, that teaches UML class diagrams. In this paper, we describe extensions to this tutor, which support multiple students solving problems collaboratively. We start with a brief overview of related work in Section 2. Section 3 then presents COLLECT- UML and the evaluation study conducted with second- year university students taking a course in Introduction to Software Engineering. Section 4 describes the design and implementation of the collaborative interface as well as the system’s architecture. Section 5 presents the collaborative model, which has been implemented as a set of meta-constraints. Conclusions are given in the last section.
Show more

10 Read more

Preserving the Spatial Information of Accessible UML Class Diagrams for the Visually Impaired

Preserving the Spatial Information of Accessible UML Class Diagrams for the Visually Impaired

As discussed in introduction, there is a need for making UML diagrams accessi- ble; and there is a need to understand the best way the UML information will be analyzed, represented and communicated in a way that factual and important in- formation will not be lost. The main objective of this research is to find the effect of keeping the spatial information of class diagrams, and its effect on programmers with visual impairments and their ability to build a cognitive map of the diagram using the provided information. And whether this cognitive map is helping them to read the diagram in a better way. We are exploring the new technique of how to navigate accessible UML class diagrams for software engineering/programming students or engineers. Also we try to find what strong points are in the design; and how the design could be enhanced, taking suggestions from real possible users in the future. The study tries to explore the satisfaction of the participant with suggested methodology, and the understandability of the alternative text given, and whether the user can build a cognitive map of the diagram.
Show more

68 Read more

Translating between Alloy specifications and UML class diagrams annotated with OCL

Translating between Alloy specifications and UML class diagrams annotated with OCL

Received: date / Accepted: date Abstract Model-Driven Engineering (MDE) is a Soft- ware Engineering approach based on model transfor- mations at di↵erent abstraction levels. It prescribes the development of software by successively transforming models from abstract (specifications) to more concrete ones (code). Alloy is an increasingly popular lightweight formal specification language that supports automatic verification. Unfortunately, its widespread industrial a- doption is hampered by the lack of an ecosystem of MDE tools, namely code generators. This paper pre- sents a model transformation from Alloy to UML Class Diagrams annotated with OCL (UML+OCL), and shows how an existing transformation from UML+OCL to Al- loy can be improved to handle dynamic issues. The pro- posed bidirectional transformation enables a smooth in- tegration of Alloy in current MDE contexts, by allowing UML+OCL specifications to be transformed to Alloy for validation and verification, to correct and possibly refine them inside Alloy, and to translate them back to UML+OCL for sharing with stakeholders or to reuse current Model-Driven Architecture (MDA) tools to re- fine them towards code.
Show more

22 Read more

Rule-Based Generation of XML DTDs from UML Class Diagrams

Rule-Based Generation of XML DTDs from UML Class Diagrams

There are only a few publications on the automatic generation of XML document sche- mas from conceptual models. Conrad et al. [2] propose a set of transformation rules for UML class diagrams into XML DTDs. In this paper, UML associations are only trans- lated into XLinks and there is no complete algorithm available. Another approach is to extract semantic information from the relational database schema as it is proposed in [3]. The authors ignore many semantic issues like cardinality or key constraints. In [4] the authors propose an algorithm for the automatic generation of XML DTDs from an (Extended) Entity Relationship Diagram. They intend an implementation by recon- structing the ER schema from a relational database schema. Another interesting ap- proach is presented in [5] that describes a mapping of UML class diagrams into XML Schema definitions using the 3-level design approach. They represent the logical design level by UML class diagrams, which are enhanced by stereotypes to express the XML Schema facilities. EER schemas and UML class diagrams have much in common, which makes it possible to adapt mapping procedures from both source models for the generation of DTDs. On one hand, there is a variety of mapping strategies for the logical XML database design. On the other hand, there are almost no reports on working im- plementations. This paper contributes a mapping algorithm for the automatic generation of DTDs using stylesheets to represent the transformation rules. Our approach is open since the algorithm is adaptable by changing rules. In the same way, the rules can be applied to the generation of another target schema, such as XML Schema or even a re- lational schema.
Show more

15 Read more

Interactive scalable condensation of reverse engineered UML class diagrams for software comprehension

Interactive scalable condensation of reverse engineered UML class diagrams for software comprehension

Normally, to understand a software system, a software developer needs both source code and design. When new software developers want to join a development group; they need a starting point in order to understand the whole project before they are able to modify. It is important for a software developer to have an overview of the system before they started the software maintenance activity. Tools that support during maintenance, re-engineering or re-architecting activities have become important to decrease the time software personnel spend on manual source code analysis and help to focus attention on important program understanding issues [22]. In Chapter 3, we have demonstrated that the forward design class diagrams constructed by the developers in the open source software development community typically consist of critical or key classes in the system. These classes are considered as the required relevant classes to understand the system. For this reason, this study specifically aims at simplifying UML class diagrams by leaving out unnecessary information without affecting the developer’s understanding of the entire software. To this end, we have conducted a survey to gather information from software developers about what type of information should not be included in a class diagram and what type of information they focus on.
Show more

246 Read more

MaxUSE: A Tool for Finding Achievable Constraints and Conflicts for Inconsistent UML Class Diagrams

MaxUSE: A Tool for Finding Achievable Constraints and Conflicts for Inconsistent UML Class Diagrams

Solver. In order to solve this weighted MaxSMT problem, we implement a wrapper that iteratively calls the Z3 SMT solver until we find the optimal value. To reduce the number of calls to the solver, this wrapper uses a binary-search based algorithm to find the optimal value. Once an optimal values is found, we enumerate all possible ways of achieving this value by blocking all previous suc- cessful assignments until no more assignments can be found. Each assignment found by the solver is a weighted MaxSMT solution. Finally, we map each solu- tion back to a corresponding model feature and generate a report. To find all constraint conflicts, we formalise the set of weighted MaxSMT solutions into the set cover problem and solve it using the algorithm described in [5]. Therefore, MaxUSE uses an SMT solver for computing both sets of achievable constraints and conflicts for inconsistent UML class diagrams.
Show more

9 Read more

Introduction to ERD modelling using UML Class diagrams with Magicdraw (ver 17)

Introduction to ERD modelling using UML Class diagrams with Magicdraw (ver 17)

3. Why Use a UML Class diagram to represent a ERD diagram? In the past I have introduced ERD diagramming tools then moved onto UML diagramming tools, which invariably has led to confusion and the inability of some students to move onto the more complex aspects of UML. In an attempt to avoid this I have decided to introduce a simplified UML class drawing technique to allow the drawing of a ERD roughly semantically equivalent as a way of demonstrating how ERDs can be created using a UML mindset and also highlight the relationship between ERD‟s and UML class diagrams.
Show more

19 Read more

An Experimental Comparison of ER and UML Class Diagrams for Data Modelling - Experimental Material -

An Experimental Comparison of ER and UML Class Diagrams for Data Modelling - Experimental Material -

2 Maintenance Tasks: questionnaire and artefacts This section describes the two tasks used to analyse the maintainability of ER and UML class diagrams. In order to evaluate it we adopted a similar approach as the assessment of the comprehension level. In particular, we asked the subjects to answer a questionnaire consisting of 5 multiple choice questions, but in this case each question has only one correct answers. It is important to note that the number of answers was the same for each question (i.e., three answers). In each question we present a change request and ask to the subjects to select which are the correct changes to perform on the data model to satisfy the request.
Show more

17 Read more

Detecting Design Level Anti-patterns; Structure and Semantics in UML Class Diagrams

Detecting Design Level Anti-patterns; Structure and Semantics in UML Class Diagrams

* Corresponding author. Email: emankaran10@azhar.edu.eg Manuscript submitted June 10, 2017; accepted August 8, 2017. doi: 10.17706/jcp.13.6.638-654 Abstract: Nowadays generation of reliable patterns is a challenge in the software engineering field, so determination of the anti-patterns becomes an effective and objective concept to evaluate any design. This paper proposes a general method to detect anti-patterns; structure and semantics in case of UML(Unified modeling language) class diagram. The proposed method is classified as a hybrid between mathematical and meta-model approaches. Its four phases merge between OWL(Web Ontology Language) Ontology- based and event B for detection many anti-patterns; semantic and structure in UML class diagram components (attributes, classes, operations, and associations). The paper proves the proposed method in two ways; the first way is theoretical by coupling UML components with OWL and Event-B. The second way is experimental by applying the method on a sample of nine famous UML class diagrams used as templates.
Show more

17 Read more

Show all 10000 documents...