7 research outputs found

    Category Theory and Model-Driven Engineering: From Formal Semantics to Design Patterns and Beyond

    Full text link
    There is a hidden intrigue in the title. CT is one of the most abstract mathematical disciplines, sometimes nicknamed "abstract nonsense". MDE is a recent trend in software development, industrially supported by standards, tools, and the status of a new "silver bullet". Surprisingly, categorical patterns turn out to be directly applicable to mathematical modeling of structures appearing in everyday MDE practice. Model merging, transformation, synchronization, and other important model management scenarios can be seen as executions of categorical specifications. Moreover, the paper aims to elucidate a claim that relationships between CT and MDE are more complex and richer than is normally assumed for "applied mathematics". CT provides a toolbox of design patterns and structural principles of real practical value for MDE. We will present examples of how an elementary categorical arrangement of a model management scenario reveals deficiencies in the architecture of modern tools automating the scenario.Comment: In Proceedings ACCAT 2012, arXiv:1208.430

    Towards a Multi Metamodelling Approach for Developing Distributed Healthcare Applications

    Get PDF
    Model Driven Engineering (MDE) uses formal methods to build mathematically rigorous models of complex systems. Metamodelling plays an important role in MDE as it is used to specify domain specific modelling languages. However, the potential of metamodelling has not been fully explored. Current approaches of MDE are often at a low level of abstraction and lack domain concepts for specifying behavior. In previous work, we proposed a multi metamodelling approach that captures the complexity of systems by using a metamodelling hierarchy, built from individually defined metamodels, each capturing different aspects of a healthcare domain. In this paper, we focus on modelling distributed healthcare applications and present an example from the healthcare domain. We address certain modelling aspects related to distributed applications such as process modelling, using message passing communication, and coordination of processes and resources

    From BPMN Models to Labelled Property Graphs

    Get PDF
    There\u27s a growing interest in leveraging the structured and formal nature of business process modeling languages in order to make them available not only for human analysis but also to machine-readable knowledge representation. Standard serializations of the past were predominantly XML based, with some of them seemingly discontinued, e.g., XPDL after the dissolution of the Workflow Management Coalition. Recent research has been investigating the interplay between knowledge representation and business process modeling, with the focus typically placed on standards such as RDF and OWL. In this paper we introduce a converter that translates the standards-compliant BPMN XML format to Neo4J labelled property graphs (LPG) thus providing an alternative to both traditional XML-based serialization and to more recent experimental RDF solutions, while ensuring conceptual alignment with the standard serialization of BPMN 2.0. A demonstrator was built to highlight the benefits of having such a parser and the completeness of coverage for BPMN models. The proposal facilitates graph-based processing of business process models in a knowledge intensive context, where procedural knowledge available as BPMN diagrams must be exposed to machines and LPG-driven applications

    A formalisation of deep metamodelling

    Full text link
    The final publication is available at Springer via http://dx.doi.org/10.1007/s00165-014-0307-xMetamodelling is one of the pillars of model-driven engineering, used for language engineering and domain modelling. Even though metamodelling is traditionally based on a two-metalevel approach, several researchers have pointed out limitations of this solution and proposed an alternative deep (also called multi-level) approach to obtain simpler system specifications. However, this approach currently lacks a formalisation that can be used to explain fundamental concepts such as deep characterisation, double linguistic/ontological typing and linguistic extension. This paper provides such a formalisation based on the Diagram Predicate Framework, and discusses its practical realisation in the metaDepth tool.This work was partially funded by the SpanishMinistry of Economy and Competitiveness (project “Go Lite” TIN2011- 24139)

    Modeling and Analysis of Software Product Line Variability in Clafer

    Get PDF
    Both feature and class modeling are used in Software Product Line (SPL) engineering to model variability. Feature models are used primarily to represent user-visible characteristics (i.e., features) of products; whereas class models are often used to model types of components and connectors in a product-line architecture. Previous works have explored the approach of using a single language to express both configurations of features and components. Their goal was to simplify the definition and analysis of feature-to-component mappings and to allow modeling component options as features. A prominent example of this approach is cardinality-based feature modeling, which extends feature models with multiple instantiation and references to express component-like, replicated features. Another example is to support feature modeling in a class modeling language, such as UML or MOF, using their profiling mechanisms and a stylized use of composition. Both examples have notable drawbacks: cardinality-based feature modeling lacks a constraint language and a well-defined semantics; encoding feature models as class models and their evolution bring extra complexity. This dissertation presents Clafer (class, feature, reference), a class modeling language with first-class support for feature modeling. Clafer can express rich structural models augmented with complex constraints, i.e., domain, variability, component models, and meta-models. Clafer supports: (i) class-based meta-models, (ii) object models (with uncertainty, if needed), (iii) feature models with attributes and multiple instantiation, (iv) configurations of feature models, (v) mixtures of meta- and feature models and model templates, and (vi) first-order logic constraints. Clafer also makes it possible to arrange models into multiple specialization and extension layers via constraints and inheritance. On the other hand, in designing Clafer we wanted to create a language that builds upon as few concepts as possible, and is easy to learn. The language is supported by tools for SPL verification and optimization. We propose to unify basic modeling constructs into a single concept, called clafer. In other words, Clafer is not a hybrid language. We identify several key mechanisms allowing a class modeling language to express feature models concisely. We provide Clafer with a formal semantics built in a novel, structurally explicit way. As Clafer subsumes cardinality-based feature modeling with attributes, references, and constraints, we are the first to precisely define semantics of such models. We also explore the notion of partial instantiation that allows for modeling with uncertainty and variability. We show that Object-Oriented Modeling (OOM) languages with no direct support for partial instances can support them via class modeling, using subclassing and strengthening multiplicity constraints. We make the encoding of partial instances via subclassing precise and general. Clafer uses this encoding and pushes the idea even further: it provides a syntactic unification of types and (partial) instances via subclassing and redefinition. We evaluate Clafer analytically and experimentally. The analytical evaluation shows that Clafer can concisely express feature and meta-models via a uniform syntax and unified semantics. The experimental evaluation shows that: 1) Clafer can express a variety of realistic rich structural models with complex constraints, such as variability models, meta-models, model templates, and domain models; and 2) that useful analyses can be performed within seconds

    Universal arrow foundations for visual modeling

    No full text
    Abstract. The goal of the paper is to explicate some common formal logic underlying various notational systems used in visual modeling. The idea is to treat the notational diversity as the diversity of visualizations of the same basic specificational format. It is argued that the task can be well approached in the arrow-diagram logic framework where specifications are directed graphs carrying a structure of diagram predicates and operations.

    Universal Arrow Foundations for Visual Modeling

    No full text
    corecore