10 research outputs found

    Improving the OCL Semantics Definition by Applying Dynamic Meta Modeling and Design Patterns

    Get PDF
    OCL is a standard specification language, which will probably be supported by most software modeling tools in the near future. Hence, it is important for OCL to have a solid formal foundation, for its syntax and its semantic definition. Currently, OCL is being formalized by metamodels expressed in MOF, complemented by well formedness rules written in the own OCL. This recursive definition not only brings about formal problems, but also puts obstacles in language understanding. On the other hand, the OCL semantics metamodel presents quality weaknesses due to the fact that certain object-oriented design rules (patterns) were not obeyed in their construction. The aim of the proposal presented in this article is to improve the definition for the OCL semantics metamodel by applying GoF patterns and the dynamic metamodeling technique. Such proposal avoids circularity in OCL definition and increases its extensibility, legibility and accuracy

    Extending Graph Query Languages by Reduction

    Get PDF
    Graph grammars are a well-founded technology for visually specifying computations or the processing of complex data structures. Up to now, numerous languages and tools for graph transformations exist, whilst new ones are proposed regularly. However, these tools have no technical basis such as an execution framework or data storage in common. Instead, graph transformation machineries are usually implemented anew each time. The DRAGOS graph database is especially well-suited for building graph transformation systems, as it is able to store complex graph structures directly. Besides its storage functionality, the database also provides a Query & Transformation Mechanism which is able to handle complex queries upon the stored graphs, and to modify them accordingly. Being designed as a basis for graph and model transformation tools, this mechanism is required to allow a flexible adaptation and extension according to the respective applications' needs. The present paper discusses how this requirement is covered by the proposed Query & Transformation Mechanism

    Herramienta para automatizar la transformación UML/OCL a Object-Z

    Get PDF
    En el proceso de construcción de software, el análisis y diseño son una tarea muy importante. UML (Unified Modeling Language, [OMG]) ha sido desarrollado para modelar sistemas Orientado a Objetos integrando lenguajes predecesores tales como la notación de Booch, OMT, etc. Este lenguaje ha sido aceptado como un estándar por OMG (Object Management Group) en el año 1997 [OMG]. Los principales diagramas provistos por UML son: diagramas de casos de usos, diagramas de clases, diagramas de estados, diagramas de secuencias. UML también provee un lenguaje textual, OCL (Object Constraint Language), fácil de leer y de escribir, que permite especificar características adicionales sobre los modelos en una forma similar a lógica de predicados. OCL es un lenguaje semi formal, su sintaxis está precisamente definida pero su semántica aún presenta ambigüedad, imprecisión e inconsistencia. Las expresiones OCL no tienen efectos laterales, es decir que su evaluación no puede alterar el estado del sistema correspondiente. Su evaluación solamente retorna un valor. En este trabajo presentamos una traducción de UML/OCL en lógica de predicados de primer orden. El objetivo es verificar propiedades de los diagramas UML y verificar la validez de las expresiones OCL que acompañan a dichos diagramas. Para ello se define una sintaxis y semántica para OCL. El beneficio de esta formalización es permitir la evaluación de expresiones OCL en un modelo UML.Facultad de Informátic

    Herramienta para automatizar la transformación UML/OCL a Object-Z

    Get PDF
    En el proceso de construcción de software, el análisis y diseño son una tarea muy importante. UML (Unified Modeling Language, [OMG]) ha sido desarrollado para modelar sistemas Orientado a Objetos integrando lenguajes predecesores tales como la notación de Booch, OMT, etc. Este lenguaje ha sido aceptado como un estándar por OMG (Object Management Group) en el año 1997 [OMG]. Los principales diagramas provistos por UML son: diagramas de casos de usos, diagramas de clases, diagramas de estados, diagramas de secuencias. UML también provee un lenguaje textual, OCL (Object Constraint Language), fácil de leer y de escribir, que permite especificar características adicionales sobre los modelos en una forma similar a lógica de predicados. OCL es un lenguaje semi formal, su sintaxis está precisamente definida pero su semántica aún presenta ambigüedad, imprecisión e inconsistencia. Las expresiones OCL no tienen efectos laterales, es decir que su evaluación no puede alterar el estado del sistema correspondiente. Su evaluación solamente retorna un valor. En este trabajo presentamos una traducción de UML/OCL en lógica de predicados de primer orden. El objetivo es verificar propiedades de los diagramas UML y verificar la validez de las expresiones OCL que acompañan a dichos diagramas. Para ello se define una sintaxis y semántica para OCL. El beneficio de esta formalización es permitir la evaluación de expresiones OCL en un modelo UML.Facultad de Informátic

    A Proposal for a Formal OCL Semantics in Isabelle/HOL

    No full text
    We present a formal semantics as a conservative shallow embedding of the Object Constraint Language (OCL). OCL is currently under development within an open standardization process within the OMG; our work is an attempt to accompany this process by a proposal solving open questions in a consistent way and exploring alternatives of the language design. Moreover, our encoding gives the foundation for tool supported reasoning over OCL specifications, for example as basis for test case generation

    Transforming OCL to PVS: Using Theorem Proving Support for Analysing Model Constraints

    Get PDF
    The Unified Modelling Language (UML) is a de facto standard language for describing software systems. UML models are often supplemented with Object Constraint Language (OCL) constraints, to capture detailed properties of components and systems. Sophisticated tools exist for analysing UML models, e.g., to check that well-formedness rules have been satisfied. As well, tools are becoming available to analyse and reason about OCL constraints. Previous work has been done on analysing OCL constraints by translating them to formal languages and then analysing the translated constraints with tools such as theorem provers. This project contributes a transformation from OCL to the specification language of the Prototype Verification System (PVS). PVS can be used to analyse and reason about translated OCL constraints. A particular novelty of this project is that it carries out the transformation of OCL to PVS by using model transformation, as exemplified by the OMG's Model-Driven Architecture. The project implements and automates model transformations from OCL to PVS using the Epsilon Transformation Language (ETL) and tests the results using the Epsilon Comparison Language (ECL )

    A Semantic Framework for Declarative and Procedural Knowledge

    Get PDF
    In any scientic domain, the full set of data and programs has reached an-ome status, i.e. it has grown massively. The original article on the Semantic Web describes the evolution of a Web of actionable information, i.e.\ud information derived from data through a semantic theory for interpreting the symbols. In a Semantic Web, methodologies are studied for describing, managing and analyzing both resources (domain knowledge) and applications (operational knowledge) - without any restriction on what and where they\ud are respectively suitable and available in the Web - as well as for realizing automatic and semantic-driven work\ud ows of Web applications elaborating Web resources.\ud This thesis attempts to provide a synthesis among Semantic Web technologies, Ontology Research, Knowledge and Work\ud ow Management. Such a synthesis is represented by Resourceome, a Web-based framework consisting of two components which strictly interact with each other: an ontology-based and domain-independent knowledge manager system (Resourceome KMS) - relying on a knowledge model where resource and operational knowledge are contextualized in any domain - and a semantic-driven work ow editor, manager and agent-based execution system (Resourceome WMS).\ud The Resourceome KMS and the Resourceome WMS are exploited in order to realize semantic-driven formulations of work\ud ows, where activities are semantically linked to any involved resource. In the whole, combining the use of domain ontologies and work ow techniques, Resourceome provides a exible domain and operational knowledge organization, a powerful engine for semantic-driven work\ud ow composition, and a distributed, automatic and\ud transparent environment for work ow execution

    Modélisation et vérification du flux d'information pour les systèmes orientés objets

    Get PDF
    RÉSUMÉ Afin d'assurer la protection de la confidentialité et l'intégrité des systèmes orientés objet, cet article propose une modèle d'étiquettes décentralisées (méfiance mutuelle et sécurité décentralisée) pour le contrôle des flux d'information dans des modèles UML et son intégration dans UML. Le document présente la syntaxe et la sémantique formelle des modèles UML (les diagrammes de classes, diagrammes d'objets et diagrammes d'états) étendus avec des fonctionnalités supplémentaires qui prennent en charge le contrôle des flux d'information. Il prend en charge la vérification du flux d'information à l'exécution et permet de s'assurer que le système n'admet que des flux d'information légaux. Ainsi des politiques de sécurité flexibles sont définies sur des diagrammes UML juste en les étiquetant. Le contrôle du flot de données et des canaux de transmission est effectué au niveau des diagrammes de classes, diagrammes d'objets et diagrammes d'états. Cela permet de définir le flux d'information lorsque le comportement des objets changent.----------ABSTRACT For protection of the confidentiality and integrity of object-oriented systems, this paper proposes a decentralized label model for control of information flow in UML system models with mutual distrust and decentralized security and its integration into UML. The paper introduces UML (class diagrams, object and statecharts) syntax and formal semantics extensions with additional features that support information flow control. It supports run-time verification of information flow so that the system model can be certified to permit only admissible information flows. Using this, flexible security policies can be easily defined through UML diagrams just by labelling them. The control of data flows and transmitting channels is performed at the level of Class diagrams, Object diagrams and Statechart diagrams. This allows to define information flow when the behaviour of objects change

    The Meaning of UML Models

    No full text
    The Unified Modelling Language (UML) is intended to express complex ideas in an intuitive and easily understood way. It is important because it is widely used in software engineering and other disciplines. Although an official definition document exists, there is much debate over the precise meaning of UML models. ¶ In response, the academic community have put forward many different proposals for formalising UML, but it is not at all obvious how to decide between them. Indeed, given that UML practitioners are inclined to reject formalisms as non-intuitive, it is not even obvious that the definition should be “formal” at all. Rather than searching for yet another formalisation of UML, our main aim is to determine what would constitute a good definition of UML. ¶ The first chapter sets the UML definition problem in a broad context, relating it to work in logic and the philosophy of science. ..
    corecore