15 research outputs found

    ConceptBase.cc User Manual Version 7.3

    Get PDF

    From types to type requirements: Genericity for model-driven engineering

    Full text link
    The final publication is available at Springer via http://dx.doi.org/10.1007/s10270-011-0221-0Model-driven engineering (MDE) is a software engineering paradigm that proposes an active use of models during the development process. This paradigm is inherently type-centric, in the sense that models and their manipulation are defined over the types of specific meta-models. This fact hinders the reuse of existing MDE artefacts with other meta-models in new contexts, even if all these meta-models share common characteristics. To increase the reuse opportunities of MDE artefacts, we propose a paradigm shift from type-centric to requirement-centric specifications by bringing genericity into models, meta-models and model management operations. For this purpose, we introduce so-called concepts gathering structural and behavioural requirements for models and meta-models. In this way, model management operations are defined over concepts, enabling the application of the operations to any meta-model satisfying the requirements imposed by the concept. Model templates rely on concepts to define suitable interfaces, hence enabling the definition of reusable model components. Finally, similar to mixin layers, templates can be defined at the meta-model level as well, to define languages in a modular way, as well as layers of functionality to be plugged-in into other meta-models. These ideas have been implemented in MetaDepth, a multi-level meta-modelling tool that integrates action languages from the Epsilon family for model management and code generation.This work has been sponsored by the Spanish Ministry of Science and Innovation with projects METEORIC (TIN2008-02081) and Go Lite (TIN2011-24139), and by the R&D program of the Community of Madrid with project “e-Madrid” (S2009/TIC-1650)

    MATrA: meta-modelling approach to traceability for avionics

    Get PDF
    PhD ThesisTraceability is the common term for mechanisms to record and navigate relationships between artifacts produced by development and assessment processes. Effective management of these relationships is critical to the success of projects involving the development of complex aerospace products. Practitioners use a range of notations to model aerospace products (often as part of a defined technique or methodology). Those appropriate to electrical and electronic systems (avionics) include Use Cases for requirements, Ada for development and Fault Trees for assessment (others such as PERT networks support product management). Most notations used within the industry have tool support, although a lack of well-defined approaches to integration leads to inconsistencies and limits traceability between their respective data sets (internal models). Conceptually, the artifacts produced using such notations populate four traceability dimensions. Of these, three record links between project artifacts (describing the same product), while the fourth relates artifacts across different projects (and hence products), and across product families within the same project. The scope of this thesis is to define a meta-framework that characterises traceability dimensions for aerospace projects, and then to propose a concrete framework capturing the syntax and semantics of notations used in developing avionics for such projects which enables traceability across the four dimensions. The concrete framework is achieved by exporting information from the internal models of tools supporting these notations to an integrated environment consisting of. i) a Workspace comprising a set of structures or meta-models (models describing models) expressed in a common modelling language representing selected notations (including appropriate extensions reflecting the application domain); ii) well-formedness constraints over these structures capturing properties of the notations (and again, reflecting the domain); and iii) associations between the structures. To maintain consistency and identify conflicts, elements of the structures are verified against a system model that defines common building blocks underlying the various notations. The approach is evaluated by (partial) tool implementation of the structures which are populated using case study material derived from actual commercial specifications and industry standards

    Open meta-modelling frameworks via meta-object protocols

    Full text link
    Meta-modelling is central to Model-Driven Engineering. Many meta-modelling notations, approaches and tools have been proposed along the years, which widely vary regarding their supported modelling features. However, current approaches tend to be closed and rigid with respect to the supported concepts and semantics. Moreover, extending the environment with features beyond those natively supported requires highly technical knowledge. This situation hampers flexibility and interoperability of meta-modelling environments. In order to alleviate this situation, we propose open meta-modelling frameworks, which can be extended and configured via meta-object protocols (MOPs). Such environments offer extension points on events like element instantiation, model loading or property access, and enable selecting particular model elements over which the extensions are to be executed. We show how MOP-based mechanisms permit extending meta-modelling frameworks in a flexible way, and allow describing a wide range of meta-modelling concepts. As a proof of concept, we show and compare an implementation in the MetaDepth tool and an aspect-based implementation atop the Eclipse Modelling Framework (EMF). We have evaluated our approach by extending EMF and MetaDepth with modelling services not foreseen initially when they were created. The evaluation shows that MOP-based mechanisms permit extending meta-modelling frameworks in a flexible way, and are powerful enough to support the specification of a broad variety of meta-modelling featuresWork partially funded by projects RECOM and FLEXOR (Spanish MINECO,TIN2015-73968-JIN (AEI/FEDER/UE) and TIN2014-52129-R) and the R&D programme of the Madrid Region (S2013/ICE-3006

    A Conceptual Modelling Approach to Software Variability

    Get PDF
    Variability is the ability of a system to be efficiently extended, changed, customised or configured for use in a particular context. Increasing amounts of variability are required of software systems. The number of possible variants of a software system may become very large, essentially infinite. Efficient methods for modelling and reasoning about software variability are needed and numerous such languages have been developed. Most of these languages either lack a solid conceptual foundation or a rigorous formal semantics, or both. In this dissertation, three novel software variability modelling languages, KOALISH, FORFAMEL and KUMBANG, which synthesises KOALISH and FORFAMEL, are developed. The languages are based on concepts found relevant to modelling software variability in scientific literature and practice, namely features and software architecture. They synthesise and clarify the concepts defined in a number of previous languages. Ideas first developed in product configuration research for modelling variability in non-software products are elaborated and integrated into the languages. A formal semantics is given for the languages by translation to weight constraint rule language (WCRL). One of the goals of this dissertation is to enable the representation of software variability knowledge at different levels of abstraction in a uniform manner, preferably using an existing conceptual modelling language with a formal semantics. Unfortunately, it turns out that no existing language meets these requirements. Consequently, a novel conceptual modelling language, NIVEL, with the necessary capabilities is developed in this dissertation. The modelling concepts of NIVEL are not based on software variability. Consequently, NIVEL can be applied in domains other than software variability and is hence generic and contributes to the theory of conceptual modelling. A formal semantics enabling automated, decidable reasoning is given for NIVEL by translation to WCRL. NIVEL is used to give an alternative definition of KUMBANG. The alternative definition is more compact and easily understandable than the original one. Major parts of the semantics of KUMBANG are captured by the semantics of NIVEL. The definition of KUMBANG in terms of a generic modelling language also brings software variability modelling closer to other forms of modelling, thus making software variability modelling less of an isolated discipline

    Multi-Level Design of Process-Oriented Enterprise Information Systems:Essential Guidelines and two Case Studies based on the FMMLx and the XModelerML

    Get PDF
    This paper presents prototypical multi-level models of two uses cases. They comprise models of business processes and models that represent the context required to execute a business process. On the one hand, the context consists of the organizational units that are responsible for the execution of processes. They are represented by a model of organizational structures. On the other hand, the context includes the artifacts that are needed or manipulated by processes. The models serve to demonstrate the specific power of multi-level modeling. First, they integrate models on higher levels, which correspond to domain-specific modeling languages, with those on lower levels. Second, models are supplemented with objects on L0 to demonstrate how these can be integrated. Third, the models are executable without the need to generate code, since models and corresponding program code share the same representation, thus demonstrating the possibility of advanced application system architectures, which allow users to navigate a comprehensive representation of the system they work with at runtime. The presentation of the models is supplemented with a general evaluation of multi-level concepts. The design of the models was inspired by the EMISA process challenge. Therefore, they are evaluated against the requirements defined with the challenge. In addition, a challenge is discussed that goes beyond the challenge, that is, the design of multi-level models of behavior

    International Workshop on Description Logics : Bonn, May 28/29, 1994

    Get PDF
    This collection of papers forms the permanent record of the 1994 Description Logic Workshop, that was held at the Gustav Stresemann Institut in Bonn, Germany on 28 and 29 May 1994, immediately after the Fourth International Conference on Principles of Knowledge Representation and Reasoning. The workshop was set up to be as informal as possible, so this collection cannot hope to capture the discussions associated with the workshop. However, we hope that it will serve to remind participants of their discussion at the workshop, and provide non-participants with indications of the topics that were discussed at the workshop. The workshop consisted of seven regular sessions and one panel session. Each regular session had about four short presentations on a single theme, but also had considerable time reserved for discussion. The themes of the sessions were Foundations of Description Logics, Architecture of Description Logics and Description Logic Systems, Language Extensions, Expanding Description Logics, General Applications of Description Logics, Natural Language Applications of Description Logics, Connections between Description Logics and Databases, and the Future of Description Logics and Description Logic Systems. The session on Foundations of Description Logics concentrated on computational properties of description logics, correspondences between description logics and other formalisms, and on semantics of description logics, Similarly, there is discussion on how to develop tractable desription logics, for some notion of tractable, and whether it is useful to worry about achieving tractability at all. Several of the participants argued in favour of a very expressive description logic. This obviously precludes tractability or even decidability of complete reasoning. Klaus Schild proposed that for some purposes one could employ "model checking" (i .e., a closed world assumption) instead of "theorem proving," and has shown that this is still tractable for very large languages. Maurizio Lenzerini's opinion was that it is important to have decidable languages. Tractability cannot be achieved in several application areas because there one needs very expressive constructs: e.g., axioms, complex role constructors, and cycles with fixed-point semantics. For Bob MacGregor, not even decidability is an issue since he claims that Loom's incomplete reasoner is sufficient for his applications. The discussion addressed the question of whether there is still need for foundations, and whether the work on foundation done until now really solved the problems that the designers of early DL systems had. Both questions were mostly answered in the affirmative, with the caveat that new research on foundations should make sure that it is concerned with "real" problems, and not just generates new problems. In the session on Architecture of Description Logics and Description Logic Systems the participants considered different ways of putting together description logics and description logic systems. One way of doing this is to have a different kind of inference strategy for description logics, such as one based on intuitionistic logics or one based directly on rules of inference-thus allowing variant systems. Another way of modifying description logic systems is to divide them up in different ways, such as making a terminology consist of a schema portion and a view portion. Some discussion in this session concerned whether architectures should be influenced by application areas, or even by particular applications. There was considerable discussion at the workshop on how Description Logics should be extended or expanded to make them more useful. There are several methods to do this. The first is to extend the language of descriptions, e.g ., to represent n-ary relations, temporal information, or whole-part relationships, all of which were discussed at the workshop. The second is to add in another kind of reasoning, such as default reasoning, while still keeping the general framework of description logic reasoning. The third is to incorporate descriptions or description-like constructs in a larger reasoner, such as a first order reasoner. This was the approach taken in OMEGA and is the approach being taken in the Loom project. There have been many extensions of the first two kinds proposed for description logics, including several presented at the workshop. One quest ion discussed at the workshop was whether these extensions fit in well with the philosophy of description logic. Another question was whether the presence of many proposals for extensions means that description logics are easy to expand, or that description logics are inadequate representation formalisms? The general consensus was that description logics adequately capture a certain kind of core reasoning and that they lend themselves to incorporation with other kinds of reasoning. Care must be taken, however, to keep the extended versions true to the goals of description logics. The sessions on Applications of Description Logics had presentations on applications of description logics in various areas, including configuration, tutoring, natural language processing, and domain modeling. Most of these applications are research applications, funded by government research programs. There was discussion of what is needed to have more fielded applications of description logics. The session on Connections between Description Logics and Databases considered three kinds of connections between Description Logics and Databases: 1. using Description Logics for expressing database schemas, including local schemas, integrated schemas, and views, integrity constraints, and queries; 2. using Description Logic reasoning for various database-related reasoning, including schema integration and validation, and query optimization, and query validation and organization; and 3. making Description Logic reasoners more like Database Mangagement Systems via optimization. All three of these connections are being actively investigated by the description logic community. The panel session on the Future of Description Logics and Description Logic Systems discussed where the future of description logics will lie. There seems to be a consensus that description logics must forge tighter connections with other formalisms, such as databases or object-oriented systems. In this way, perhaps, description logics will find more real applications
    corecore