9 research outputs found

    Especificación de Componentes MDA para Patrones de Diseño

    Get PDF
    The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable components and applications. The concepts of metamodels and metamodel-based model transformations are critical in MDA. In this paper, we analyze how to specify reusable components for design patterns in a way that fit MDA very closely. To define families of reusable components we describe a “megamodel” that refers to metamodels and model transformations organized into an architectural framework. We propose an integration of formal and semiformal specifications to specify MDA mega-components. Our formalization focuses on interoperability of formal languages in Model Driven Development (MDD).La Arquitectura Model Driven (MDA) promueve el uso de modelos y transformaciones de modelos para desarrollar sistemas de software. La idea central de MDA es manejar la evolución de modelos independientes de la plataforma a modelos específicos a la plataforma que pueden ser usados para generar componentes ejecutables y aplicaciones. En el contexto MDA los metamodelos y las transformaciones basadas en metamodelos son esenciales. En este artículo describimos como especificar componentes para patrones de diseño alineados a MDA. Para definir familias de componentes reusables presentamos un “megamodelo” que integra metamodelos y refinamientos organizados en un framework arquitectural. Proponemos integrar especificaciones semiformales y formales para especificar mega-componentes MDA. Nuestra formalización se centra en la interoperabilidad de lenguajes formales en el desarrollo Model Driven (MDD)

    MDA-Based Reverse Engineering

    Get PDF

    Especificación de Componentes MDA para Patrones de Diseño

    Get PDF
    La Arquitectura Model Driven (MDA) promueve el uso de modelos y transformaciones de modelos para desarrollar sistemas de software. La idea central de MDA es manejar la evolución de modelos independientes de la plataforma a modelos específicos a la plataforma que pueden ser usados para generar componentes ejecutables y aplicaciones. En el contexto MDA los metamodelos y las transformaciones basadas en metamodelos son esenciales. En este artículo describimos como especificar componentes para patrones de diseño alineados a MDA. Para definir familias de componentes reusables presentamos un “megamodelo” que integra metamodelos y refinamientos organizados en un framework arquitectural. Proponemos integrar especificaciones semiformales y formales para especificar mega-componentes MDA. Nuestra formalización se centra en la interoperabilidad de lenguajes formales en el desarrollo Model Driven (MDD).The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable components and applications. The concepts of metamodels and metamodel-based model transformations are critical in MDA. In this paper, we analyze how to specify reusable components for design patterns in a way that fit MDA very closely. To define families of reusable components we describe a “megamodel” that refers to metamodels and model transformations organized into an architectural framework. We propose an integration of formal and semiformal specifications to specify MDA mega-components. Our formalization focuses on interoperability of formal languages in Model Driven Development (MDD).Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Especificación de Componentes MDA para Patrones de Diseño

    Get PDF
    La Arquitectura Model Driven (MDA) promueve el uso de modelos y transformaciones de modelos para desarrollar sistemas de software. La idea central de MDA es manejar la evolución de modelos independientes de la plataforma a modelos específicos a la plataforma que pueden ser usados para generar componentes ejecutables y aplicaciones. En el contexto MDA los metamodelos y las transformaciones basadas en metamodelos son esenciales. En este artículo describimos como especificar componentes para patrones de diseño alineados a MDA. Para definir familias de componentes reusables presentamos un “megamodelo” que integra metamodelos y refinamientos organizados en un framework arquitectural. Proponemos integrar especificaciones semiformales y formales para especificar mega-componentes MDA. Nuestra formalización se centra en la interoperabilidad de lenguajes formales en el desarrollo Model Driven (MDD).The Model Driven Architecture (MDA) promotes the use of models and model transformations for developing software systems. The idea behind MDA is to manage the evolution from Platform Independent Models to Platform Specific Models that can be used to generate executable components and applications. The concepts of metamodels and metamodel-based model transformations are critical in MDA. In this paper, we analyze how to specify reusable components for design patterns in a way that fit MDA very closely. To define families of reusable components we describe a “megamodel” that refers to metamodels and model transformations organized into an architectural framework. We propose an integration of formal and semiformal specifications to specify MDA mega-components. Our formalization focuses on interoperability of formal languages in Model Driven Development (MDD).Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Refactorings en el Contexto de MDA

    Get PDF
    The Model Driven Architecture (MDA) is an initiative proposed by the Object Management Group (OMG) to model centric software development. It is based on the concepts of models, metamodels and automatic transformation from abstract models to executable components or applications. The outstanding ideas behind MDA are the different kinds of models, the separation of the specification of the system functionality from its implementation on specific platforms and the control of the model evolution. Refactorings play a fundamental role in the perfective evolution of the models. In this paper, we propose refactoring specification based on metamodeling techniques. The refactoring rules are specified in the Object Constraint Language (OCL) as contracts between metamodels. We propose a uniform treatment of MDA-refactorings at different abstraction levels. We describe foundations for MDA-based refactoring that enable extending the functionality of the existing CASE tools in order to improve the MDA-based process qualityLa arquitectura model-driven (MDA) es una iniciativa propuesta por el Object Management Group (OMG) para la especificación de sistemas basada en el uso de modelos. Los elementos básicos en esta arquitectura son los modelos, metamodelos y transformaciones automáticas desde modelos abstractos a componentes ejecutables o aplicaciones. Las ideas centrales son la clasificación de modelos en distintos niveles de abstracción, la independencia entre la especificación de la funcionalidad del sistema y su implementación sobre una plataforma en una tecnología específica y el control de la evolución de los modelos. Los refactorings tienen un rol fundamental en la evolución perfectiva de los modelos. En este artículo se propone una especificación de refactorings basados en MDA utilizando una técnica de metamodelado, especificándolos en el Object Constraint Language (OCL) como contratos entre metamodelos. Se presenta un tratamiento uniforme de los refactorings para los distintos modelos propuestos por la arquitectura MDA. La incorporación de esta propuesta a la funcionalidad de las herramientas CASE existentes permitiría mejorar la calidad de los procesos basados en MDA.Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Refactorings en el Contexto de MDA

    Get PDF
    The Model Driven Architecture (MDA) is an initiative proposed by the Object Management Group (OMG) to model centric software development. It is based on the concepts of models, metamodels and automatic transformation from abstract models to executable components or applications. The outstanding ideas behind MDA are the different kinds of models, the separation of the specification of the system functionality from its implementation on specific platforms and the control of the model evolution. Refactorings play a fundamental role in the perfective evolution of the models. In this paper, we propose refactoring specification based on metamodeling techniques. The refactoring rules are specified in the Object Constraint Language (OCL) as contracts between metamodels. We propose a uniform treatment of MDA-refactorings at different abstraction levels. We describe foundations for MDA-based refactoring that enable extending the functionality of the existing CASE tools in order to improve the MDA-based process qualityLa arquitectura model-driven (MDA) es una iniciativa propuesta por el Object Management Group (OMG) para la especificación de sistemas basada en el uso de modelos. Los elementos básicos en esta arquitectura son los modelos, metamodelos y transformaciones automáticas desde modelos abstractos a componentes ejecutables o aplicaciones. Las ideas centrales son la clasificación de modelos en distintos niveles de abstracción, la independencia entre la especificación de la funcionalidad del sistema y su implementación sobre una plataforma en una tecnología específica y el control de la evolución de los modelos. Los refactorings tienen un rol fundamental en la evolución perfectiva de los modelos. En este artículo se propone una especificación de refactorings basados en MDA utilizando una técnica de metamodelado, especificándolos en el Object Constraint Language (OCL) como contratos entre metamodelos. Se presenta un tratamiento uniforme de los refactorings para los distintos modelos propuestos por la arquitectura MDA. La incorporación de esta propuesta a la funcionalidad de las herramientas CASE existentes permitiría mejorar la calidad de los procesos basados en MDA.Workshop de Ingeniería de Software y Bases de Datos (WISBD)Red de Universidades con Carreras en Informática (RedUNCI

    Componentes MDA para patrones de diseño

    Get PDF
    La arquitectura Model-Driven (Model-Driven Architecture o MDA) es un framework para el desarrollo de software definido por el Object Management Group (OMG) (MDA, 2007). Su propuesta es elevar el nivel de abstracción en el que se desarrollan sistemas complejos separando la especificación de la funcionalidad de un sistema de su implementación en una plataforma tecnológica específica. MDA promueve el uso de modelos y transformaciones de modelos para el desarrollo de sistemas de software. El proceso de desarrollo MDA distingue cuatro clases de modelos: - Modelo independiente de la computación (Computation Independent Model o CIM): describe los requerimientos del sistema y los procesos de negocio que debe resolver sin tener en cuenta aspectos computacionales. - Modelo independiente de la plataforma (Platform Independent Model o PIM): es un modelo computacional independiente de las características específicas a una plataforma de desarrollo, como por ejemplo .NET, J2EE o relacional. - Modelo específico a la plataforma (Platform Specific Model o PSM): describe un sistema en términos de una plataforma de implementación particular. - Modelo específico a la implementación (Implementation Specific Model o ISM): se refiere a componentes y aplicaciones que usan lenguajes de programación específicos. Los elementos esenciales de MDA son los modelos, los metamodelos y las transformaciones. Un modelo es una descripción o especificación de un sistema y su ambiente para algún cierto propósito. Dentro de MDA un modelo debe estar escrito en un lenguaje de forma tal de ser interpretado por una computadora. Dentro del contexto de MDA, los metamodelos son expresados usando MOF (Meta Object Facility) que define una forma común de capturar todos los estándares y construcciones de intercambio (MOF, 2006). Los metamodelos MOF se basan en los conceptos de entidades, interrelaciones y sistemas y se expresan como una combinación de diagramas de clases UML y restricciones OCL (UML-Infrastructure, 2007; UML-Superstructure, 2007; OCL, 2006). La transformación de modelo a modelo es el proceso de convertir un modelo en otro modelo del mismo sistema. Para expresar las transformaciones, OMG está trabajando en la definición del QVT (Query\View\Transformation) para expresar transformaciones como una extensión de MOF (QVT, 2007). El proceso de desarrollo Model-Driven (MDD) en el contexto de MDA es llevado a cabo como una secuencia de transformaciones de modelos que incluye al menos los siguientes pasos: construir un PIM, transformar el PIM en uno o más PSMs, y construir componentes ejecutables y aplicaciones directamente a partir de un PSM. Un alto grado de automatización de PIMs a PSMs, y de PSMs a ISMs es esencial en el proceso de desarrollo de MDA. Las herramientas que llevan a cabo la automatización se basan en la definición de las transformaciones, las cuales describen como generar un modelo a partir de otro. El éxito de esta propuesta depende de la definición de las transformaciones entre modelos y de librerías de componentes que tengan un impacto significativo sobre las herramientas que proveen soporte a MDA. Entre los posibles componentes MDA se pensó en definir componentes para patrones de diseño (Gamma y otros, 1995) dada su amplia difusión, aceptación y uso, debido a que describen soluciones a problemas de diseño recurrentes. Arnaut (2004) analiza los patrones de diseño de Gamma y otros (1995) para identificar cuales de ellos pueden ser transformados en componentes reusables en una librería Eiffel. Su hipótesis de trabajo es que “los patrones de diseño son buenos, pero los componentes son mejores”. En este caso en particular la reusabilidad está dada en términos de código, pero nos inspiró a pensar en los patrones de diseño en términos de componentes MDA.Facultad de Informátic

    Vérification formelle de diagrammes UML : une approche basée sur la logique de réécriture

    Get PDF

    Formalización de refactorings en el contexto de MDA

    Get PDF
    El objetivo principal de esta tesis es presentar una técnica de especificación de refactorings alineados con MDA aplicables a sus diferentes tipos de modelos de diseño UML, es decir, a modelos independientes de la computación, modelos dependientes de una plataforma y modelos dependientes de la implementación. En particular, en este trabajo, se muestra la técnica de especificación de refactorings aplicados a modelos de diagramas de clases UML enriquecidos con anotaciones OCL en los distintos niveles de abstracción. Los refactorings se especifican como contratos OCL utilizando la técnica de metamodelado. Los metamodelos son expresados usando Meta Object Facility (MOF). Asimismo, en esta tesis, se analiza la integración de la especificación de los refactorings con técnicas formales. Se detalla la traducción de los contratos OCL de refactorings y los metamodelos MOF al lenguaje de especificación formal NEREUS.Facultad de Informátic
    corecore