45 research outputs found

    Analyzing Semantic Properties of OCL Operations by Uncovering Interoperational Relationships

    Get PDF
    The OCL (Object Constraint Language) as part of the UML (Unified Modeling Language) is a rich language with different collection kinds (sets, multi-sets, sequences) and a large variety of operations defined thereon. Without negating the strong correlation between both fields we can say that these operations have their origin partly in logic (like the operations forAll and exists) and partly in computer science, in particular database systems (like the operation select). Some of these operations may be expressed in terms of other operations. This paper presents a systematic study of relationships which hold between OCL features like the mentioned operations. Apart from presenting the relationships between operations in a conceptual way, the relationships are described by a formal metamodel allowing systematic and computer supported access to the operation relationships by querying an underlying formal description

    Problems and Enhancements of the Embedding of OCL into QVT ImperativeOCL

    Get PDF
    MOF QVT introduces ImperativeOCL as an imperative language for operational descriptions of model transformations (QVT operational mappings). ImperativeOCL extends conventional OCL by expressions with side-effects. A couple of semantical problems arise from the way OCL is embedded into ImperativeOCL -- imperative expressions are modelled as a subtype of OCL expressions. This paper points out these semantical problems and proposes a change to the operational mappings language of QVT that resolves these problems, following an approach that reuses OCL by composition rather than by inheritance in the abstract syntax of ImperativeOCL. The proposed change reduces the complexity of the imperative language, removes undefinedness, and leaves OCL conformant to its original definition

    OCL-based Runtime Monitoring of JVM hosted Applications

    Get PDF
    In this paper we present an approach that enables users to monitor and verify the behavior of an application running on a virtual machine at the model level. Concrete implementations of object-oriented software usually contain a lot of technical classes. Thus, the central parts of an application, e.g., the business rules, may be hidden among peripheral functionality like user-interface classes or classes managing persistency. Our approach makes use of modern virtual machines and allows the devloper to profile an application in order to achieve an abstract monitoring and verification of central application components. We represent virtual machine bytecode in form of a so-called platform-aligned model (PAM) comprising OCL invariants and pre- and postconditions. In contrast to related work, our approach uses the original source or bytecode of the monitored application as it stands and does not require any changes. We show a prototype implementation as an extension of the UML and OCL tool USE. Also, we investigate the impact of our approach to the execution time of a monitored system

    Optimierte Suche von Modellinstanzen UML/OCL-Beschreibungen in USE

    Get PDF
    National audienceKonzeptuelle Modelle sind ein wichtiges Element modellgetriebener Softwareentwicklung, sowohl in der Beschreibung von Systemen als auch in der Metamodellierung domänenspezifischer Sprachen. Zu ihrer Beschreibung haben sich UML und OCL (und angelehnte Sprachen) als ein de facto Standard durchgesetzt. Validierung und Verifikation der Modelle sind hierbei wichtige Instrumente zur Sicherstellung der Modellqualität. Die Sprache ASSL (A Snapshot Sequence Language) bietet die Möglichkeit durch imperative Programmierung auf Modellebene und Backtracking konforme Instanzen systematisch zu erzeugen. Der White-Box-Ansatz ASSL ergänzt Black-Box-Ansätze, welche die Modellinstanziierung durch Abbildung auf (bspw.) ein Problem der relationalen Logik lösen. Dieser Beitrag beschreibt, wie die durch ASSL-Programme aufgespannten Suchräume durch Ausnutzung der Modellabdeckung der OCL-Constraints und der Modellstruktur erheblich verkleinert werden können und gibt einen Ausblick darauf, wie bestehende Black-Box-Ansätze in ASSL integriert werden können, um innerhalb eines imperativen Rahmens Teilinstanziierungen deklarativ beschreiben zu können

    Abstract runtime monitoring with USE

    Get PDF
    Adsorption and photodecomposition of formic acid on rutile TiO2 (110) have been investigated with infrared reflection–absorption spectroscopy (IRRAS) employing p- and s-polarized light along the [001] and [ 11⎯⎯0 ] crystal directions. The single crystal surfaces were prepared either by sputtering and annealing in ultrahigh vacuum (UHV) to obtain a reduced surface (r-TiO2), or by sputtering without annealing to create a rough, highly defective surface (sp-TiO2). Results are compared with corresponding measurements on rutile nanocrystals performed in synthetic air. IRRAS spectra obtained on r-TiO2 and rutile nanocrystals are very similar, and show that in both cases formic acid dissociates and is predominately adsorbed as a bridging bidentate formate species, and that the formate adsorption structure on the nanocrystals is dominated by interactions with majority (110) surfaces. In contrast, the IRRAS spectra on sp-TiO2 are different, with only minor spectral features associated with (110) surfaces and lost azimuthal symmetry, both of which imply changed adsorption geometry due to bonding to low-coordinated Ti atoms with lower valences. The UV-induced rate of formate photodecomposition is about 30 times higher on rutile nanocrystals in synthetic air compared with sp-TiO2 under UHV conditions, and even larger than on r-TiO2. These differences are explained by the lack of oxygen and limited hydroxyl coverage under UHV conditions. The difference in reactivity between the r-TiO2 and sp-TiO2 surfaces is attributed to a high concentration of strongly bonded bridging bidentate formate species on the (110) surface, which lowers its reactivity. The results point to a pressure gap where the availability of molecular oxygen and the hydroxyl concentration limit the photoreactivity in UHV leading to an almost 20-fold decrease of the formate degradation rate in UHV. In contrast, the structure represented by the single crystal (110) surface is shown to capture the essential structural properties, which dictates the formic acid adsorption and adsorption structure of rutile nanocrystals

    Modeling and Validating Mondex Scenarios Described in UML and OCL with USE

    No full text
    This paper describes the Mondex case study with UML class diagrams and restricting OCL constraints. The constraints have been formulated either as OCL class invariants or as OCL pre- and postconditions. The proposed two models include UML class diagrams and OCL constraints which have been checked by the UML and OCL tool USE (UML-based Specification Environment). USE allows validation of a model by testing it with scenarios. The Mondex case study has been validated by positive and negative test cases. The test cases allow the validity of the various constraints to be traced and checked. Validation results are presented as textual protocols or as UML sequence diagrams where starting, intermediate, and resulting system states are represented by UML object diagrams. UML sequence diagrams, UML object diagrams, and textual protocols are shown with varying degrees of detail for the attributes, constraints, and executed commands. 1

    Evaluating and Debugging OCL Expressions in UML Models

    No full text
    Abstract. This paper discusses the relationship between tests and proofs with focus on a tool for UML and OCL models. Tests are thought of as UML object diagrams and theorems or properties which are to be checked are represented as OCL constraints, i.e., class invariants or operation pre- and postconditions. The paper shows for the UML and OCL tool USE (UML-based Specification Environment) how to trace and debug the validity of an expected theorem (an OCL constraint) within a given test case (a state model in the form of a UML object diagram).
    corecore