1,070 research outputs found

    A Framework for Model-Driven Scientific Workflow Engineering

    Get PDF
    So-called scientific workflows are one important means in the context of data-intensive science for reliable and efficient scientific data processing in distributed computing infrastructures such as Grids. Scientific Workflow Management Systems (SWfMS) help scientists model and run scientific workflows, whereas a domain-specific layer for workflow modeling by a scientist and a technical layer for automated workflow execution can be distinguished. Initially, many SWfMS were developed from scratch using custom workflow technologies languages without application of already existing and established business workflow technologies. Among the reasons were different life cycles for scientific and business workflows as well as incompatible interfaces and communication protocols of the respective execution infrastructures. Meanwhile, several business IT infrastructures have evolved to serviceoriented architectures (SOAs), for which many Web service standards and technologies have been developed. The Web Services Business Process Execution Language (BPEL), for example, is a well-accepted standard for the implementation and execution of business workflows in SOAs. The SOA architecture pattern has been adopted in scientific IT infrastructures by so-called Service Grids based on existing standards and technologies. Due to this development, BPEL is also suitable for the execution of scientific workflows at the technical layer, which has been elaborated on in many publications and projects. However, BPEL is a workflow language for IT experts and is originally not suited for scientific workflow modeling by a scientist at the domain-specific layer. A domain-specific abstraction of BPEL is therefore required that can be specifically tailored for scientific workflow modeling as well as a corresponding mapping to the technical layer. These challenges of the domain-specific abstraction and the mapping are addressed in this thesis with the help of the Business Process Model and Notation (BPMN) standard and technologies from Model-Driven Software Development (MDSD). Therefore, the MoDFlow approach for Model-Driven Scientific WorkFlow Engineering is presented to map domain-specific scientific workflow models via a BPMN-based intermediate layer to an executable workflow model. The intermediate layer is specified by MoDFlow.BPMN, which is a BPMN metamodel subset with custom extensions for the scientific domain. MoDFlow.BPMN2BPEL defines three consecutive transformation steps to map MoDFlow.BPMN to BPEL for workflow execution. Furthermore, different methods to utilize and extend MoDFlow.BPMN and MoDFlow.BPMN2BPEL are described in the MoDFlow approach, in which the definition of so-called domain-specific languages (DSLs) for the modeling of scientific workflows at the domain-specific layer is focused. The MoDFlow framework is an implementation of the MoDFlow approach, which is based on the Eclipse Modeling Framework (EMF). The MoDFlow framework is evaluated in three application scenarios, in which different utilization and extension mechanisms are examined. The first two application scenarios investigate the technical feasibility of the approach and support scientific workflows with parameter sweeps that are executed on a Grid infrastructure. The third application scenario has been conducted in collaboration with the PubFlow project, which aims to create an infrastructure to model and execute data publication workflows. Based on the Xtext framework, a textual DSL and a corresponding language infrastructure is defined for this purpose that supports developers in creating data publication workflows. This scenario aims to illustrate the practicability of the MoDFlow framework. PubFlow currently plans to implement an additional graphical DSL based on the BPMN notation and a corresponding workflow editor for scientists

    Model-Driven Methodology for Rapid Deployment of Smart Spaces based on Resource-Oriented Architectures

    Get PDF
    Advances in electronics nowadays facilitate the design of smart spaces based on physical mash-ups of sensor and actuator devices. At the same time, software paradigms such as Internet of Things (IoT) and Web of Things (WoT) are motivating the creation of technology to support the development and deployment of web-enabled embedded sensor and actuator devices with two major objectives: (i) to integrate sensing and actuating functionalities into everyday objects, and (ii) to easily allow a diversity of devices to plug into the Internet. Currently, developers who are applying this Internet-oriented approach need to have solid understanding about specific platforms and web technologies. In order to alleviate this development process, this research proposes a Resource-Oriented and Ontology-Driven Development (ROOD) methodology based on the Model Driven Architecture (MDA). This methodology aims at enabling the development of smart spaces through a set of modeling tools and semantic technologies that support the definition of the smart space and the automatic generation of code at hardware level. ROOD feasibility is demonstrated by building an adaptive health monitoring service for a Smart Gym

    Achieving non-intrusive interoperability between models for involving users in modeling tasks

    Full text link
    [EN] Model-Driven Development (MDD) promotes models as the cornerstone in the software development process, thereby displacing source code as the development process's main feature. Although this model-centric schema claims advantages over traditional software development (e.g., the code could be automatically generated from the models), it does not have the level of adoption that has been expected. The literature review reveals a broad agreement in the fact that end-users may develop and adapt systems themselves but the complexity in modeling standards and the lack of modeling skills prevents their active involvement in modeling tasks of existing MDD processes. To overcome this, end-users should be provided with different modeling languages that use concepts, which fit their particular skills, context and needs. This challenge is the main goal of this thesis, which is addressed by combining the End-user Development and the Model-Driven Development fields. This work starts with the involvement of end-users into the modeling tasks using a tool-supported visual modeling language that allows end-users to select and customize system features of pervasive systems using closer concepts for them. Afterwards, this thesis shows the necessity of enriching existing MDD processes for supporting the development of a new generation of software systems (e.g., smart health) that require expertise in a variety of domains. Consequently, different types of users (e.g., scientists, engineers and end-users) must actively participate in the description of model fragments that depend on their expertise using a different modeling language. Thus, users are able to collaborate to obtain a unified system description. At this point, it becomes necessary to provide mechanisms that transforms models fragments from one modeling language to another, delimits which model fragments are described by a different user, and integrates those model fragments. To provide this, the presented approach encompasses variability management in a novel way to enable collaborative modeling by supporting both the selection of model fragments of the system that may be described using a different modeling language, and the integration of those model fragments once they are described. Furthermore, interoperability mechanisms bridge two different modeling languages in a non-intrusive way with the structure of models by transforming the description of gaps. Thus, our proposal could enrich models of existing MDD processes with model fragments that have been described using a different modeling language, which could make users feel confident to adopt models for describing domain-specific content and could help to adopt MDD processes. The proposal has been validated in three case studies from different levels of complexity and domains: smart home systems, web information systems, and biomechanical protocols. The results have proven the applicability and feasibility of our approach to actively involve different types of users (end- users with software professionals, domain experts with software development experts, and doctors with biomedical engineers, respectively) in model descriptions of existing MDD processes using a different modeling language.[ES] En el Desarrollo de Software Dirigido por Modelos (DSDM) los modelos son la piedra angular del proceso de desarrollo de software, desplazando así al código fuente como artefacto principal. Aunque este enfoque centrado en modelos ofrece ventajas sobre el desarrollo de software tradicional (por ejemplo, la generación de código de forma automática a partir de los modelos) no tiene el nivel de adopción esperado. La literatura científica revela un amplio acuerdo en el hecho de que los usuarios finales puedan ellos mismos desarrollar y adaptar los sistemas pero la complejidad de los estándares de modelado y la carencia de habilidades de modelado impide su participación activa en procesos DSDM existentes. Para lograrlo, los usuarios finales deben disponer de lenguajes de modelado diferentes con conceptos adaptados a sus habilidades, contexto y necesidades. Este desafío es el objetivo principal de esta tesis que se aborda combinando las ideas del desarrollo orientado al usuario final y el DSDM. Este trabajo comienza involucrando usuarios finales en tareas de modelado con una herramienta que les proporciona un lenguaje de modelado visual para seleccionar y personalizar características de un sistema pervasivo utilizando conceptos familiares para ellos. Después, esta tesis motiva la necesidad de enriquecer procesos de DSDM existentes para soportar el desarrollo de una nueva generación de sistemas software (por ejemplo, salud inteligente) que requieren conocimientos especializados en una variedad de dominios. Consecuentemente, diferentes tipos de usuarios (por ejemplo, científicos, ingenieros y usuarios finales) deben participar activamente en la descripción de fragmentos de modelos que dependen de su experiencia utilizando un lenguaje de modelado diferente. De este modo, los usuarios pueden colaborar para obtener una descripción del sistema unificada. En este punto, es necesario proporcionar mecanismos que transformen e integren los fragmentos de un lenguaje de modelado a otro y delimiten qué fragmentos se describen por un usuario diferente. Para proporcionar esto, la propuesta presentada utiliza la gestión de variabilidad de forma novedosa para permitir modelado colaborativo seleccionando fragmentos de un modelo del sistema que pueden ser descritos utilizando un lenguaje de modelado diferente y, la integración de esos fragmentos una vez que hayan sido descritos. Además, la propuesta utiliza mecanismos de interoperabilidad para conectar dos lenguajes de modelado diferentes transformando la descripción de los fragmentos de una manera no invasiva con su estructura. Por tanto, nuestra propuesta puede enriquecer los modelos de procesos DSDM existentes con fragmentos de modelos que han sido descritos con un lenguaje diferente y esto, podría hacer que los usuarios se sientan seguros al adoptar modelos para describir contenido de dominio específico y podría ayudar a adoptar procesos DSDM. La propuesta ha sido validada en tres casos de estudio con diferentes niveles de complejidad y dominios: sistemas para el hogar inteligente, sistemas de información web y protocolos biomecánicos. Los resultados han demostrado la aplicabilidad y viabilidad de nuestra propuesta para involucrar diferentes tipos de usuarios (usuarios finales con profesionales de software, expertos en el dominio con expertos en desarrollo de software y, médicos con ingenieros biomédicos, respectivamente) en descripciones de modelos de procesos DSDM existentes utilizando un lenguaje de modelado diferente.[CA] En el Desenvolupament de Programari Dirigit per Models (DPDM) els models són la pedra angular del procés de desenvolupament de programari, desplaçant així al codi font com a artefacte principal. Encara que aquest enfocament centrat en models ofereix avantatges sobre el desenvolupament de programari tradicional (per exemple, la generació de codi de forma automàtica a partir dels models) no té el nivell d'adopció esperat. La literatura científica revela un ampli acord en el fet que els usuaris finals puguen ells mateixos desenvolupar i adaptar els sistemes però la complexitat dels estàndards de modelatge i la falta d'habilitats de modelatge impedeix la seua participació activa en processos DPDM existents. Per a aconseguir-ho, els usuaris finals han de disposar de llenguatges de modelatge diferents amb conceptes adaptats a les seues habilitats, context i necessitats. Aquest desafiament és l'objectiu principal d'aquesta tesi que s'aborda combinant les idees del desenvolupament orientat a l'usuari final i el DPDM. Aquest treball comença involucrant usuaris finals en tasques de modelatge amb una eina que els proporciona un llenguatge de modelatge visual que permet als usuaris finals seleccionar i personalitzar característiques d'un sistema pervasiu utilitzant conceptes familiars per a ells. Després, aquesta tesi motiva la necessitat d'enriquir processos de DPDM existents per a suportar el desenvolupament d'una nova generació de sistemes programari (per exemple, salut intel¿ligent) que requereixen coneixements especialitzats en una varietat de dominis. Conseqüentment, diferents tipus d'usuaris (per exemple, científics, enginyers i usuaris finals) han de participar activament en la descripció de fragments de models que depenen de la seua experiència utilitzant un llenguatge de modelatge diferent. D'aquesta manera, els usuaris poden col¿laborar per a obtenir una descripció del sistema unificada. En aquest punt, és necessari proporcionar mecanismes que transformen i integren els fragments d'un llenguatge de modelatge a un altre i delimiten quins fragments es descriuen per un usuari diferent. Per a proporcionar açò, la proposta presentada utilitza la gestió de variabilitat de forma nova per a permetre modelatge col.laboratiu seleccionant fragments d'un model del sistema que poden ser descrits utilitzant un llenguatge de modelatge diferent i, la integració d'aqueixos fragments una vegada que hagen sigut descrits. A més, la proposta utilitza mecanismes d'interoperabilitat per a connectar dos llenguatges de modelatge diferents transformant la descripció dels fragments d'una manera no invasiva amb la seua estructura. Per tant, la nostra proposta pot enriquir els models de processos DPDM existents amb fragments de models que han sigut descrits amb un llenguatge diferent i açò, podria fer que els usuaris se senten segurs en adoptar models per a descriure contingut de domini específic i podria ajudar a adoptar processos DPDM. La proposta ha sigut validada en tres casos d'estudi amb diferents nivells de complexitat i dominis: sistemes per a la llar intel¿ligent, sistemes d'informació web i protocols biomecànics. Els resultats han demostrat l'aplicabilitat i viabilitat de la nostra proposta per a involucrar diferents tipus d'usuaris (usuaris finals amb professionals de programari, experts en el domini amb experts en desenvolupament de programari i, metges amb enginyers biomèdics, respectivament) en descripcions de models de processos DPDM existents utilitzant un llenguatge de modelatge diferent.Pérez Pérez, MF. (2015). Achieving non-intrusive interoperability between models for involving users in modeling tasks [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/58429TESI

    Supporting a Multi-formalism Model Driven Development Process with Model Transformation, a TOPCASED implementation

    Get PDF
    International audienceThe ASSERT (Automated proof based System and Software Engineering for Real-Time Applications) European Integrated Project (IST-FP6-004033, http://www.assert-project.net/) defined and experimented a multi formalism Model Driven Engineering (MDE) process, enforcing an approach with separated specification and refinement of functional and non-functional properties.• Functional specification, design and development is based on UML profiles to support AADL concepts [2] and behavioural specification.• Real time Architecture properties are based on extensions targeting Ravenscar Computing execution Model (RCM see [6]) constraints upon component interface and ports.• Model transformation is supporting correctness preserving rules towards a Virtual Machine execution environment or a verification dedicated environment.A tool chain called IDEA (Integrated Development Environment for ASSERT) supporting the process was developed by the CS ASSERT team on top of the Eclipse/TOPCASED environment allowing:• Integrated use of several formalisms in a development life-cycle (UML, AADL, IF[4]) .• Model transformation from UML to IF, AADL to RCM and RCM to Ada• Automated code generationThe approach experimented allows combined use of best suited formalisms and features for MDE developments. The TOPCASED tool proved to be a unique integrated toolset for prototyping UML and meta models supporting tools.The main feedback gained from applying the notations and approach on small to medium case studies is that UML profiling is not scalable, and that use of several Domain Specific Languages (DSL) seems far more suitable. Semantic clashes can be limited by raising the abstraction level, and by partitioning properties for verification

    Applying Model Driven Engineering Techniques and Tools to the Planets Game Learning Scenario

    Get PDF
    24 pagesInternational audienceCPM (Cooperative Problem-Based learning Metamodel) is a visual language for the instructional design of Problem-Based Learning (PBL) situations. This language is a UML profile implemented on top of the Objecteering UML Case tool. In this article, we first present the way we used CPM language to bring about the pedagogical transposition of the planets game learning scenario. Then, we propose some related works conducted to improve CPM usability: on the one hand, we outline a MOF solution and an Eclipse GMF solution instead of the UML profile approach. On the other hand, we propose some explanations about transforming CPM models into LMS compliant data, and tool functionality

    A framework for variable content document generation with multiple actors

    Get PDF
    “NOTICE: this is the author’s version of a work that was accepted for publication in Information and Software Technology. Changes resulting from the publishing process, such as peer review, editing, corrections, structural formatting, and other quality control mechanisms may not be reflected in this document. Changes may have been made to this work since it was submitted for publication. A definitive version was subsequently published in Information and Software Technology, Volume 56, Issue 9, September 2014, Pages 1101–1121 DOI10.1016/j.infsof.2013.12.006Context - Advances in customization have highlighted the need for tools supporting variable content document management and generation in many domains. Current tools allow the generation of highly customized documents that are variable in both content and layout. However, most frameworks are technology-oriented, and their use requires advanced skills in implementation-related tools, which means their use by end users (i.e. document designers) is severely limited. Objective - Starting from past and current trends for customized document authoring, our goal is to provide a document generation alternative in which variants are specified at a high level of abstraction and content reuse can be maximized in high variability scenarios. Method Based on our experience in Document Engineering, we identified areas in the variable content document management and generation field open to further improvement. We first classified the primary sources of variability in document composition processes and then developed a methodology, which we called DPL based on Software Product Lines principles to support document generation in high variability scenarios. Results - In order to validate the applicability of our methodology we implemented a tool DPLfw to carry out DPL processes. After using this in different scenarios, we compared our proposal with other state-of-the-art tools for variable content document management and generation. Conclusion - The DPLfw showed a good capacity for the automatic generation of variable content documents equal to or in some cases surpassing other currently available approaches. To the best of our knowledge, DPLfw is the only framework that combines variable content and document workflow facilities, easing the generation of variable content documents in which multiple actors play different roles.This work has been partially funded by the Spanish Ministerio de Economia y Competitividad under Grant TIPEx (TIN2010-19859-C03-03).Gómez Llana, A.; Penadés Gramage, MC.; Canos Cerda, JH.; Borges, MR.; Llavador Campos, M. (2014). A framework for variable content document generation with multiple actors. Information and Software Technology. 56(9):1101-1121. https://doi.org/10.1016/j.infsof.2013.12.006S1101112156

    A Toolkit for ADM-based Migration: Moving from PHP Code to KDM Model in the Context of CMS-based Web Applications

    Get PDF
    In the last few years, many organizations have based their Web applications on Content Management Systems (CMS) because of the advantages they provide to manage their huge amount of digital content. The objectives of these organizations change, for this reason they may see the necessity of migrating their CMS-based Web applications to other CMS platforms meeting better their needs. Thus, we propose a method based on Architecture-Driven Modernization (ADM) to automate this migration process. In this paper we present the toolkit supporting this ADM-based migration method. For space restrictions, we focus on the implementation of two modules of this ADM-based toolkit: i) the ASTM_PHP DSL, a modeling language which allows to model the code of a system implemented in PHP (ASTM_PHP models) and ii) the model-to-model transformation rules which allow to generate KDM models from the information captured in the ASTM_PHP models. To show its usability, we present a case study where a widget listing online users of a CMS-based Web application is migrated from Drupal to Wordpress

    Model-Driven Development for Spring Boot Microservices

    Get PDF
    As microservices become more and more common, there is more interest in optimizing their development, making it faster, reducing the complexity and making it less error and bug prone. This work aims to explore how Model-driven Engineering (MDE) can be used to aid microservices’ development, especially Java microservices using Spring Boot. Firstly, this work starts by presenting its context, with a brief introduction to MDE and microservices, and how MDE can be used to facilitate microservices’ development. Then the State of the Art presents MDE base technologies and MDE-based solutions that can be used to develop microservices. Furthermore, a value analysis was also done, to explore the benefits of using MDE, and to define its value proposition. Lastly, a case study was elaborated following three different approaches, traditional development, DSL-based approach, and MDE-based tool approach, which were then compared by code quality and time required for development of the microservices. This work is especially interesting for someone who wants to develop Java microservices and wants to explore the different approaches and technologies to do so, namely by using MDE.À medida que os microserviços se tornam cada vez mais comuns, há mais interesse em otimizar seu desenvolvimento, otimizando o tempo de desenvolvimento, reduzindo a complexidade e tornando-o menos sujeito a erros e bugs. Este trabalho tem como objetivo explorar como é que Model-driven Engineering (MDE) pode ser usado para auxiliar o desenvolvimento de microserviços, especialmente microserviços Java usando Spring Boot. Em primeiro lugar, este trabalho começa apresentando seu contexto, com uma breve introdução ao MDE e microserviços, e explicando como é que MDE pode ser usado para facilitar o desenvolvimento de microserviços. Em seguida é apresentado o Estado da Arte, que apresenta tecnologias base de MDE e soluções baseadas em MDE (ferramentas), que podem ser utilizadas para desenvolver microserviços. Além disso, também foi feita uma análise de valor para explorar os benefícios do uso de MDE, e para definir sua proposta de valor. Por fim, foi elaborado um caso de estudo através de três abordagens diferentes, desenvolvimento tradicional, abordagem baseada em DSL, e abordagem utilizando uma ferramenta baseada em MDE, que foram então comparadas através da qualidade do código e pelo tempo necessário para o desenvolvimento dos microserviços. Este trabalho é especialmente interessante para quem quer desenvolver microsserviços Java e quer explorar as diferentes abordagens e tecnologias para o fazer, nomeadamente através da utilização de MDE

    Onto2DB: towards an eclipse plugin for automated database design from an ontology

    Get PDF
    Ontologies are spreading more and more in the field of information technologies as a privileged solution allowing the formalization of knowledge. The theoretical model of ontologies is most promising. They are increasingly ubiquitous given the benefits they present. Despite the proliferation of research proposing approaches dedicated to the design of a database from an ontology, the tools to design a database from an ontology are rare or inaccessible. Thus, in this contribution, we present our approach for the development of an Eclipse Plug-in, in order to automatically generate a conceptual model of a relational database from an ontology. To evaluate the usefulness of our approach, we used our resulting Eclipse Plug-in to automatically generate a conceptual model of a relational database from an ontology, customize it, and automatically generate the corresponding SQL script for Data Definition. The results of this experiment showed that our Plug-in constitutes a concretization of our approach and a means of automatic translation from the ontological model to the relational model
    • …
    corecore