473 research outputs found

    Correctly defined concrete syntax

    Get PDF
    Due to their complexity, the syntax of modern modeling languages is preferably defined in two steps. The abstract syntax identifies all modeling concepts whereas the concrete syntax should clarify how these concepts are rendered by graphical and/or textual elements. While the abstract syntax is often defined in form of a metamodel, there does not exist such standard format yet for concrete syntax definitions. The diversity of definition formats—ranging from EBNF grammars to informal text—is becoming a major obstacle for advances in modeling language engineering, including the automatic generation of editors. In this paper, we propose a uniform format for concrete syntax definitions. Our approach captures both textual and graphical model representations and even allows to assign more than one rendering to the same modeling concept. Consequently, following our approach, a model can have multiple, fully equivalent representations, but—in order to avoid ambiguities when reading a model representation—two different models should always have distinguishable representations. We call a syntax definition correct, if all well-formed models are represented in a non-ambiguous way. As the main contribution of this paper, we present a rigorous analysis technique to check the correctness of concrete syntax definition

    On the Need of User-defined Libraries in OCL

    Get PDF
    Reuse is a fundamental concept of efficient software development. Object-oriented implementation languages offer reuse on different levels of granularity: method, class, library. While encapsulation of implementation code within methods and classes enables reuse within a project, user-defined libraries are widely used to share implementation code among different projects. The specification language OCL offers language concepts like defined attributes and defined operations to enable reuse within a project. However, reuse among different projects is not possible since OCL does not support the concept of user-defined libraries. There is no standardized way to import user-defined OCL constraints into another project. In this paper, we argue on the need of a standardized mechanism to make reuse of OCL specifications within a different context possible

    Refactoring OCL annotated UML class diagrams

    Get PDF
    Refactoring of UML class diagrams is an emerging research topic and heavily inspired by refactoring of program code written in object-oriented implementation languages. Current class diagram refactoring techniques concentrate on the diagrammatic part but neglect OCL constraints that might become syntactically incorrect by changing the underlying class diagram. This paper formalizes the most important refactoring rules for class diagrams and classifies them with respect to their impact on attached OCL constraints. For refactoring rules that have an impact on OCL constraints, we formalize the necessary changes of the attached constraints. Our refactoring rules are specified in a graph-grammar inspired formalism. They have been implemented as QVT transformation rules. We finally discuss for our refactoring rules the problem of syntax preservation and show, by using the KeY-system, how this can be resolve

    Semantics of OCL specified with QVT

    Get PDF
    The Object Constraint Language (OCL) has been for many years formalized both in its syntax and semantics in the language standard. While the official definition of OCL's syntax is already widely accepted and strictly supported by most OCL tools, there is no such agreement on OCL's semantics, yet. In this paper, we propose an approach based on metamodeling and model transformations for formalizing the semantics of OCL. Similarly to OCL's official semantics, our semantics formalizes the semantic domain of OCL, i.e. the possible values to which OCL expressions can evaluate, by a metamodel. Contrary to OCL's official semantics, the evaluation of OCL expressions is formalized in our approach by model transformations written in QVT. Thanks to the chosen format, our semantics definition for OCL can be automatically transformed into a tool, which evaluates OCL expressions in a given context. Our work on the formalization of OCL's semantics resulted also in the identification and better understanding of important semantic concepts, on which OCL relies. These insights are of great help when OCL has to be tailored as a constraint language of a given DSL. We show on an example, how the semantics of OCL has to be redefined in order to become a constraint language in a database domai

    Proceedings of the MoDELS'05 Workshop on Tool Support for OCL and Related Formalisms -- Needs and Trends

    Get PDF
    This Technical Report comprises the final versions of the technical papers presented at the workshop 'Tool Support for OCL and Related Formalisms -- Needs and Trends' held in Montego Bay (Jamaica), October 4, 2005. The workshop was co-located with the ACM/IEEE 8th International Conference on Model Driven Engineering Languages and Systems (MoDELS)

    Correctly defined concrete syntax

    Get PDF
    Due to their complexity, the syntax of modern modeling languages is preferably defined in two steps. The abstract syntax identifies all modeling concepts whereas the concrete syntax should clarify how these concepts are rendered by graphical and/or textual elements. While the abstract syntax is often defined in form of a metamodel, there does not exist such standard format yet for concrete syntax definitions. The diversity of definition formats-ranging from EBNF grammars to informal text-is becoming a major obstacle for advances in modeling language engineering, including the automatic generation of editors. In this paper, we propose a uniform format for concrete syntax definitions. Our approach captures both textual and graphical model representations and even allows to assign more than one rendering to the same modeling concept. Consequently, following our approach, a model can have multiple, fully equivalent representations, but-in order to avoid ambiguities when reading a model representation-two different models should always have distinguishable representations. We call a syntax definition correct, if all well-formed models are represented in a non-ambiguous way. As the main contribution of this paper, we present a rigorous analysis technique to check the correctness of concrete syntax definitions

    CeCar: A platform for research, development and education on autonomous and cooperative driving

    Get PDF
    International audienceIn this paper, we introduce CeCar as an affordable model-car based platform supporting research, development and education in the field of autonomous and cooperative driving. We present the application-oriented use cases and key platform requirements , and explain the logical and technical architecture of the CeCar platform, alongside with details on the underlying mod-ularity concept. Subsequently, we introduce CeCar application scenarios for the areas research, development and education, and provide relevant application examples. Further, we discuss the CeCar platform concept in comparison with other model-car based education and research platforms, and outline planned future work on the CeCar platform

    The Ontario Court of Appeal and Speedy Justice

    Get PDF
    The authors use a data sample collected from the Ontario Court of Appeal minute books between 1983 and 1987 to analyze how appeals move through the province\u27s highest court. Criminal and, chiefly, sentence appeals dominate the Court\u27s agenda. Hearing times-the duration of argument and rendering of judgment-are shorter than commonly believed, most often lasting less than twenty minutes. Elapsed times-the period between end of trial and beginning of hearing-are, on average, 77 per cent longer for civil than criminal appeals, 52 per cent longer for defendant than crown appeals, and 23 per cent longer for fall than spring appeals. Elapsed times are also compared with data on United States appeal courts, and the use of appellate case-flow management is considered
    corecore