1,088 research outputs found

    Solving the Petri-Nets to Statecharts Transformation Case with UML-RSDS

    Full text link
    This paper provides a solution to the Petri-Nets to statecharts case using UML-RSDS. We show how a highly declarative solution which is confluent and invertible can be given using this approach.Comment: In Proceedings TTC 2013, arXiv:1311.753

    Automatic code generation from UML diagrams: the state-of-the-art

    Get PDF
    The emergence of the Unified Modeling Language (UML) as the de-facto standard for modeling software systems has encouraged the development of automated software tools that facilitate automatic code generation. UML diagrams are used to diagrammatically model and specify the static structure as well as the dynamic behavior of object-oriented systems and the software tools then go ahead and automatically produce code from the given diagrams. In the last two decades substantial work has been done in this area of automatic code generation. This paper is aimed at identifying and classifying this work pertaining to automatic code generation from UML diagrams, restricting the search neither to a specific context nor to a particular programming language. A Systematic literature review (SLR) using the keywords “automatic code generation”, “MDE”, “code generation” and “UML” is used to identify 40 research papers published during the years 2000–2016 which are broadly classified into three groups: Approaches, Frameworks and Tools. For each paper, an analysis is made of the achievements and the gaps, the UML diagrams used the programming languages and the platform. This analysis helps to answer the main questions that the paper addresses including what techniques or implementation methods have been used for automatic code generation from UML Diagrams, what are the achievements and gaps in the field of automatic code generation from UML diagrams, which UML diagram is most used for automatic code generation from UML diagrams, which programming language source code is mostly automatically generated from the design models and which is the most used target platform? The answers provided in this paper will assist researchers, practitioners and developers to know the current state-of-the-art in automatic code generation from UML diagrams.Keywords: Automatic Code Generation (ACG); Unified Modeling Language (UML); Model Driven Engineering (MDE

    Synthesis of behavioral models from scenarios

    No full text

    Semantic mutation testing

    Get PDF
    This is the Pre-print version of the Article. The official published version can be obtained from the link below - Copyright @ 2011 ElsevierMutation testing is a powerful and flexible test technique. Traditional mutation testing makes a small change to the syntax of a description (usually a program) in order to create a mutant. A test suite is considered to be good if it distinguishes between the original description and all of the (functionally non-equivalent) mutants. These mutants can be seen as representing potential small slips and thus mutation testing aims to produce a test suite that is good at finding such slips. It has also been argued that a test suite that finds such small changes is likely to find larger changes. This paper describes a new approach to mutation testing, called semantic mutation testing. Rather than mutate the description, semantic mutation testing mutates the semantics of the language in which the description is written. The mutations of the semantics of the language represent possible misunderstandings of the description language and thus capture a different class of faults. Since the likely misunderstandings are highly context dependent, this context should be used to determine which semantic mutants should be produced. The approach is illustrated through examples with statecharts and C code. The paper also describes a semantic mutation testing tool for C and the results of experiments that investigated the nature of some semantic mutation operators for C

    Towards the Correctness of Software Behavior in UML: A Model Checking Approach Based on Slicing

    Get PDF
    Embedded systems are systems which have ongoing interactions with their environments, accepting requests and producing responses. Such systems are increasingly used in applications where failure is unacceptable: traffic control systems, avionics, automobiles, etc. Correct and highly dependable construction of such systems is particularly important and challenging. A very promising and increasingly attractive method for achieving this goal is using the approach of formal verification. A formal verification method consists of three major components: a model for describing the behavior of the system, a specification language to embody correctness requirements, and an analysis method to verify the behavior against the correctness requirements. This Ph.D. addresses the correctness of the behavioral design of embedded systems, using model checking as the verification technology. More precisely, we present an UML-based verification method that checks whether the conditions on the evolution of the embedded system are met by the model. Unfortunately, model checking is limited to medium size systems because of its high space requirements. To overcome this problem, this Ph.D. suggests the integration of the slicing (reduction) technique
    • …
    corecore