12 research outputs found

    Formal Model Merging Applied to Class Diagram Integration

    Get PDF
    AbstractThe integration of software artifacts is present in many scenarios of the Software Engineering field: object-oriented modeling, relational databases, XML schemas, ontologies, aspect-oriented programming, etc. In Model Management, software artifacts are viewed as models that can be manipulated by means of generic operators, which are specified independently of the context in which they are used. One of these operators is Merge, which enables the automated integration of models. Solutions for merging models that are achieved by applying this operator are more abstract and reusable than the ad-hoc solutions that are pervasive in many contexts of the Software Engineering field. In this paper, we present our automated approach for generic model merging from a practical standpoint, providing support for conflict resolution and traceability between software artifacts by using the QVT Relations language. We focus on the definition of our operator Merge, applying it to Class Diagrams integration

    Matching and Merging of Variant Feature Specifications

    Full text link

    A formal framework for model management

    Full text link
    El Desarrollo de Software Dirigido por Modelos es una rama de la Ingeniería del Software en la que los artefactos software se representan como modelos para incrementar la productividad, calidady eficiencia económica en el proceso de desarrollo de software, donde un modelo proporciona una representación abstracta del código final de una aplicación. En este campo, la iniciativa Model-Driven Architecture (MDA), patrocinada por la OMG, está constituida por una familia de estándares industriales, entre los que se destacan: Meta-Object Facility (MOF), Unified Modeling Language (UML), Object Constraint Language (OCL), XML Metadata Interchange (XMI), y Query/Views/Transformations (QVT). Estos estándares proporcionan unas directrices comunes para herramientas basadas en modelos y para procesos de desarrollo de software dirigidos por modelos. Su objetivo consiste en mejorar la interoperabilidad entre marcos de trabajo ejecutables, en automatizar el proceso desarrollo de software de software y en proporcionar técnicas que eviten errores durante ese proceso. El estándar MOF describe un marco de trabajo genérico que permite definir la sintaxis abstracta de lenguajes de modelado. Este estándar persigue la definición de los conceptos básicos que son utilizados en procesos de desarrollo de software dirigidos por modelos: que es un modelo, que es un metamodelo, qué es reflexión en un marco de trabajo basado en MOF, etc. Sin embargo, la mayoría de estos conceptos carecen de una semántica formal en la versión actual del estándar MOF. Además, OCL se utiliza como un lenguage de definición de restricciones que permite añadir semántica a un metamodelo MOF. Desafortunadamente, la relación entre un metamodelo y sus restricciones OCL también carece de una semántica formal. Este hecho es debido, en parte, a que los metamodelos solo pueden ser definidos como dato en un marco de trabajo basado en MOF. El estándar MOF también proporciona las llamadas facilidades de reflexión de MOF (MOF ReflectiBoronat Moll, A. (2007). A formal framework for model management [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/1964Palanci

    An algebraic framework for compositional design of autonomous and adaptive multiagent systems

    Get PDF
    Doctor of PhilosophyDepartment of Computing and Information SciencesScott A. DeLoachOrganization-based Multiagent Systems (OMAS) have been viewed as an effective paradigm for addressing the design challenges posed by today’s complex systems. In those systems, the organizational perspective is the main abstraction, which provides a clear separation between agents and systems, allowing a reduction in the complexity of the overall system. To ease the development of OMAS, several methodologies have been proposed. Unfortunately, those methodologies typically require the designer to handle system complexity alone, which tends to lead to ad-hoc designs that are not scalable and are difficult to maintain. Moreover, designing organizations for large multiagent systems is a complex and time-consuming task; design models quickly become unwieldy and thus hard to develop. To cope with theses issues, a framework for organization-based multiagent system designs based on separation of concerns and composition principles is proposed. The framework uses category theory tools to construct a formal composition framework using core models from the Organization-based Multiagent Software Engineering (O-MASE) framework. I propose a formalization of these models that are then used to establish a reusable design approach for OMAS. This approach allows designers to design large multiagent organizations by reusing smaller composable organizations that are developed separately, thus providing them with a scalable approach for designing large and complex OMAS. In this dissertation, the process of formalizing and composing multiagent organizations is discussed. In addition, I propose a service-oriented approach for building autonomous, adaptive multiagent systems. Finally, as a proof of concept, I develop two real world examples from the domain of cooperative robotics and wireless sensor networks

    DESIGN PATTERN DETECTION FOR UML INTEGRATED META-MODEL

    Get PDF

    Blending State Differences and Change Operations for Metamodel Independent Merging of Software Models

    Get PDF
    A typical model merging session: requires a great deal of knowledgeable input; does not provide rapid feedback; quickly overwhelms the user with details; fails to properly match elements; performs minimal conflict detection; offers conflict resolution choices that are inadequate and without semantics; and exhibits counter-intuitive behavior. Viewing model merging as a process, this research defines a hybrid merge workflow that blends the best of the main approaches to merging, expressing its phases as algebraic operators for performing transformations on model and relationship data types. Normalization and denormalization phases decouple models from their originating tool and metamodel. State-based phases capture model differences in the model itself, establish element correspondence using multiply matching strategies, and extract change operations. Operation-based phases then partition and order the changes prior to the detection and automatic resolution of conflicts. The work has culminated in a prototype that validates the workflow, while realizing several novel model merging ideas, which are evaluated with simple and involved test cases. Combining the hybrid merge approach with the semantic expressiveness of decision tables---open to user modification---and an interactive and batch mode of operation allows the tool, named Mirador, to successfully address, to varying degrees, all of the previously cited shortcomings

    Mise en correspondance et gestion de la cohérence de modèles hétérogènes évolutifs

    Get PDF
    To understand and manipulate a complex system, it is necessary to apply the separation of concerns and produce separate parts. In Model Driven Engineering (MDE), these parts are represented by models qualified as partial models. In this context of multi-modeling, these models are called heterogeneous when they are described in separate modeling languages dedicated to different business domains: DSML (Domain Specific Modeling Language). Global model creation requires identifying existing correspondences between the elements of the partial models. However, in practice these correspondences are either incompletely identified or not sufficiently formalized to be maintained when the partial models evolve. This restricts their use and does not allow to fully exploit them for building the global model or for treating partial models evolution. The contribution of this thesis is twofold. The first contribution deals with a process for creating a global view of the system by means of a composition based on partial models matching. Identified correspondences between models elements are based on types of relationship instantiated from a metamodel of correspondences. This latter is extensible, depending on the considered application domain, and allows supporting the concepts related to this domain. Correspondences are firstly identified between meta-elements belonging to metamodels of the respective partial models. Correspondences between model elements are then obtained by a refinement mechanism, supported by an ad hoc Semantic Expression language: SED (Semantic Expression DSL). The composition is called “virtual” since elements represented in a correspondence are only references to elements belonging to partial models. Therefore, models interconnected by this correspondences form a virtual global model. The second contribution relates the consistency of the global model. Indeed, as models evolve over time, changing one or several elements involved in a correspondence, may cause the inconsistency of the global model. To maintain its consistency, we propose a second process enabling to automatically identify the changes, classify them and treat their impacts on the involved model elements. Management of repercussions is performed semi-automatically by the expert by means of strategies and weights. This work has been implemented through a support tool named HMCS (Heterogeneous Matching and Consistency management Suite) based on the Eclipse Platform. The approach has been validated and illustrated through a case study related to the management of a Hospital Emergency Service. This work was led in collaboration with the “CHU of Montpellier”.Pour permettre la compréhension et la manipulation d’un système complexe, le découpage en parties séparées est nécessaire. En Ingénierie Dirigée par les Modèles (ou Model Driven Engineering), ces parties sont représentées par des modèles, que nous qualifions de modèles partiels, dans la mesure où ils sont focalisés sur des domaines métiers distincts. Dans ce contexte de multi-modélisation, ces modèles sont dits hétérogènes quand ils sont décrits dans des langages de modélisation distincts dédiés à différents domaines métiers : DSML (Domain Specific Modeling language). La compréhension et l’exploitation efficace des connaissances relatives à un tel système supposent la construction d’un modèle global représentant son fonctionnement. La création du modèle global requiert l’identification des correspondances existant entre les éléments des différents modèles partiels. Dans la pratique, ces correspondances sont soit incomplètement identifiées, soit insuffisamment formalisées pour être maintenues lorsque les modèles partiels évoluent. Ceci limite leur utilisation et ne permet pas de les exploiter pleinement lors de la construction du modèle global ou du traitement de l’évolution des modèles partiels. L’apport de cette thèse est double. La première contribution est celle d’un processus permettant la création d’une vue globale du système par l’intermédiaire d’une composition fondée sur la mise en correspondance des modèles partiels. Les correspondances identifiées entres les éléments des modèles se basent sur des types de relations instanciées à partir d’un métamodèle de correspondance. Ce dernier est extensible (selon les spécificités du domaine d’application considéré) et permet de supporter les concepts relatifs à ce domaine. Les correspondances sont d’abord identifiées entre les méta-éléments des métamodèles respectifs des modèles partiels. Les correspondances entre les éléments de modèles sont ensuite obtenues par un mécanisme de raffinement, supporté par un langage d’expression sémantique ad hoc : SED (Semantic Expression DSL). La composition est dite « virtuelle » dans la mesure où les éléments figurant dans une correspondance ne sont que des références aux éléments appartenant aux modèles partiels. De ce fait, les modèles interconnectés par ces correspondances forment un modèle global virtuel. La seconde contribution est relative au maintien de la cohérence des modèles partiels et du modèle global. En effet, les modèles évoluant dans le temps, le changement d’un élément ou de plusieurs éléments participant à l’expression des correspondances, peut entrainer l’incohérence du modèle global. Pour maintenir la cohérence du modèle global, nous proposons un second processus permettant tout d’abord d’identifier automatiquement les changements réalisés ainsi que leurs classifications et leurs répercussions sur les éléments de modèles concernés. Par la suite, les différents cycles sont gérés à l’aide de l’expert puis une liste de changements est générée en fonction de la stratégie choisie et des coefficients de pondération. Enfin, le traitement des changements est réalisé de façon semi-automatique. Ce travail a été concrétisé par le développement d’un outil support nommé HMCS (Heterogeneous Matching and Consistency management Suite), basé sur la plateforme Eclipse. L’approche a été validée et illustrée à travers un cas d’étude portant sur la gestion du Service d'Urgence d'un hôpital. Ce travail a été mené en collaboration avec le CHU de Montpellier
    corecore