31 |
Toward Preservation of Extra-Functional Properties for Model-Driven Component-Based Software Engineering of Embedded SystemsCiccozzi, Federico January 2012 (has links)
Model-driven and component-based software engineering have been widely recognized as promising paradigms for development of a wide range of systems. Moreover, in the embedded real-time domain, their combination is believed to be helpful in handling the ever-increasing complexity of such systems design.However, in order for these paradigms and their combination to definitely break through at an industrial level for development of embedded real-time systems, both functional and extra-functional properties need to be addressed at each level of abstraction. This research focuses on the preservation of extra-functional properties. More specifically, the aim is to provide support for easing such preservation throughout the entire development process at different abstraction levels.The main outcome of the research work is a round-trip engineering approach aiding the preservation of extra-functional properties by providing code generators, supporting monitoring and analysis of code execution, and then enabling back-propagation of the results to modelling level. In this way, properties that can only be roughly estimated statically are evaluated against runtime values and this consequently allows to optimize the design models for ensuring preservation of analysed extra-functional properties. Moreover, a solution for managing evolution of computational context in which extra-functional properties are defined by means of validity analysis is provided. Such solution introduces a new language for the description of the computational context in which a given property is provided and/or computed by some analysis, enables detection of changes performed to the context description, and analyses the possible impacts on the extra-functional property values based on a precise representation of differences between previous and current version of the model.
|
32 |
Enterprise Architecture for Model-Driven Clinical Operations Management in Value-Based HospitalsMouttham, Alain January 2016 (has links)
Value-based hospital is a concept that is causing a major transformation of hospitals and their information systems. Currently, hospitals are organized by medical units and by specialties that tend to operate as separate silos, without much communication between them. The transitions of care are not optimal for the patients, thus negatively impacting patient outcomes. Value-based hospitals focus on groups of patients with similar conditions, and end-to-end care pathways like Hip & Knee Replacement. They organize service lines that provide end-to-end care for these patient groups through the Emergency Department, Diagnostic Imaging, Lab tests, the surgical procedure in the Operating Room, the stay in the Surgery unit, Rehabilitation, and then discharge from the hospital. To enact such a transformation, hospitals have to redesign their Clinical Operations Management (care processes and organization) and the supporting information systems.
Enterprise Architecture is the discipline, defined by international standards bodies, which concerns itself with transformational change of large complex organizations supported by information technology. Model-Driven Engineering is an approach to designing and generating information systems based on models. This thesis proposes an Enterprise Architecture for Model-Driven Clinical Operations Management (COM) to address the required transformation and improvement of clinical information systems to support value-based hospitals.
The first thesis contribution is an Enterprise Architecture for Model-Driven COM in value-based hospitals, including COM Models, UML/BPMN/DMN Models, an Architecture and Design for a Clinical Operations Support System (COSS) for COM, and four COM Diagrams and Templates. The COM Models are the Business Architecture of the Enterprise Architecture; they are the foundation of our model-driven transformation approach. The UML/BPMN/DMN Models are derived from the COM Models, and are the Information System Architecture of the Enterprise Architecture. The COSS for COM, generated from the above models, is the Technology Architecture of the Enterprise Architecture. Finally, the COM Diagrams and Templates enable to better communicate the Enterprise Architecture; they are the COM Functions Table, the COM Enterprise Architecture Diagram, the COM Service Line Template, and the COSS Architecture Diagram.
A second thesis contribution is the design of two domain-specific model-driven tools, based on the Eclipse environment, which support the design and generation of information systems support of COM in a value-based hospital. The COMP Tools include a Modeling Tool for COM based on a COM Functions Table for Hospitals, a Domain-Specific Modeling Language for COM (COMP: the COM Profile), and its Meta Model. The COSBench software development workbench provides support to the Model-Driven Engineering of information systems for COM.
Finally, a third contribution is examples of COM Models for Joint Replacement service line and for Cardiac Procedures service line, used in our case studies to illustrate and validate the approach. There are also examples of COSS Decision Support Systems for patient flow management, operational business intelligence, full-capacity protocol, demand management, and capacity management.
|
33 |
Integrating Formal Methods with Model-Driven EngineeringAdesina, Opeyemi January 2017 (has links)
This thesis presents our method to integrate formal methods with model-driven engineering. Although a large amount of literature exists with the goal of facilitating the adoption of formal methods for educational and industrial practice, yet the adoption of formal methods in academia and industry is poor. The goal of this research is to improve the adoption of formal methods by automating the generation of formal methods code while maintaining scalability and bridging the gaps between formal analysis and actual implementation of the complete system.
Our approach is based on generating formal representations of software abstractions expressed in a textual language, called Umple, which is derived from UML. Software abstractions of interest include class models and state machines. For state machines, we address concerns such as composite and concurrent states separately. The resulting systems are analyzable by back-end analysis engines such as Alloy and nuXmv or NuSMV for model checking.
To ensure correctness of our approach, we have adopted simulation, empirical studies and rigorous test-driven development (TDD) methodologies. To guarantee correctness of state machine systems under analysis (SSUAs), we present methods to automatically generate specifications to analyze domain-independent properties such as non-determinism and reachability analysis. We apply these methods in various case studies; certify their conformance with sets of requirements and uncover certain flaws.
Our contributions include a) The overall approach, involving having the developer write the system in Umple and generating both the formal system for analysis and the final code from the same model; b) a novel approach to encode SSUAs even in the presence of and-cross transitions; c) a fully automated approach to certify an SSUA to be free from nondeterminism even in the presence of unbounded domains and multiple and-cross transitions within the same enclosing orthogonal state; d) an empirical study of the impact of abstraction on some performance parameters; and e) a translator from Umple to Alloy and SMV.
|
34 |
Managing Assurance Cases in Model Based Software SystemsKokaly, Sahar 14 June 2019 (has links)
Software has emerged as a significant part of many domains, including financial service platforms, social networks, medical devices and vehicle control. In critical domains, standards organizations have responded to this by creating regulations to address issues such as safety, security and privacy. In this context, compliance of software with standards has emerged as a key issue. For companies, compliance is a complex and costly goal to achieve and is often accomplished by producing so-called assurance cases, which demonstrate that the system indeed satisfies the property imposed by a standard (e.g., safety, security, privacy) by linking evidence to support claims made about the system. However, as systems undergo evolution for a variety of reasons, including fixing bugs, adding functionality or improving system quality, maintaining assurance cases multiplies the effort. Increasingly, models and model-driven engineering are being used as a means to facilitate communication and collaboration between the stakeholders in the compliance value chain and, further, to introduce automation into regulatory compliance tasks. A complexity problem also exists with the proliferation of software models in model-based software development, and the field of Model Management has emerged to address this challenge. Model Management focuses on a high-level view in which entire models and their relationships (i.e., mappings between models) can be manipulated using specialized operators to achieve useful outcomes. In this thesis, we exploit this connection
between model driven engineering and regulatory compliance, and explore how to use Model Management techniques to address software compliance management issues, focusing on assurance case change impact assessment, evolution and reuse. We support the presented approach with tooling and a case study. Although the main contributions of this thesis are not domain specific, for validation, we ground our approaches in the automotive domain and the ISO 26262 standard for functional safety of road vehicles. / Thesis / Doctor of Philosophy (PhD)
|
35 |
Automating the development of Physical Mobile Workflows. A Model Driven Engineering approachGiner Blasco, Pau 17 May 2010 (has links)
La visión de la "Internet de las Cosas", hace énfasis en la integración entre elementos del mundo real y los Sistemas de Información. Gracias a tecnologías de Identificación Automática (Auto-ID) cómo RFID, los sistemas pueden percibir objetos del mundo físico. Cuando éstos participan de manera activa en los procesos de negocio, se evita el uso de los seres humanos como transportadores de información. Por tanto, el número de errores se reduce y la eficiencia de los procesos aumenta.
Aunque actualmente ya es posible el desarrollo de estos sistemas, la heterogeneidad tecnológica en Auto-ID y los requisitos cambiantes de los procesos de negocio dificultan su construcción, mantenimiento y evolución. Por lo tanto, es necesaria la definición de soluciones que afronten la construcción de estos sistemas mediante métodos sólidos de desarrollo para garantizar la calidad final del producto.
Partiendo de las bases de la Ingeniería Dirigida por Modelos (MDE), esta tesis presenta un proceso de desarrollo para la construcción de este tipo de sistemas. Este proceso cubre desde la especificación del sistema hasta su implementación, centrándose en los requisitos particulares del enlace entre los mundos físico y virtual.
Para la especificación de los sistemas se ha definido un Lenguaje de modelado adaptado a los requisitos de la "Internet de las Cosas". A partir de esta especificación se puede obtener una solución software de manera sistemática.
Como validación de la propuesta, ésta se ha aplicado en la práctica con usuarios finales. Pese a que el proceso de desarrollo no ofrece una automatización completa, las guías ofrecidas y la formalización de los conceptos implicados ha demostrado ser útil a la hora de elevar el nivel de abstracción en el desarrollo, evitando el esfuerzo de enfrentarse a detalles tecnológicos. / Giner Blasco, P. (2010). Automating the development of Physical Mobile Workflows. A Model Driven Engineering approach [Tesis doctoral]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/8272
|
36 |
An Application Framework for a Power-Aware Processor ArchitectureMandlekar, Anup Shrikant 31 August 2012 (has links)
The instruction-set based general purpose processors are not energy-efficient for event-driven applications. The E-textiles group at Virginia Tech proposed a novel data-flow processor architecture design to bridge the gap between event-driven applications and the target architecture. The architecture, although promising in terms of performance and energy-efficiency, was explored for limited number of applications. This thesis presents a model-driven approach for the design of an application framework, facilitating rapid development of software applications to test the architecture performance. The application framework is integrated with the prior automation framework bringing software applications at the right level of abstraction. The processor architecture design is made flexible and scalable, making it suitable for a wide range of applications. Additionally, an embedded flash memory based architecture design for reduction in the static power consumption is proposed. This thesis estimates significant reduction in overall power consumption with the incorporation of flash memory. / Master of Science
|
37 |
UM PROCESSO INTEGRADO PARA QUALIDADE EM MODEL-DRIVEN ENGINEERING / AN INTEGRATED PROCESS FOR QUALITY IN MODEL DRIVEN ENGINEERINGCopetti, Marco Antonio 11 July 2012 (has links)
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Model-Driven Engineering a new software development paradigm concept. The paradigm predicts that software development core artifact ceases to be the code and becomes the models and software architecture. The concept does not come without impacts to the supporting structures of development. The way the software development process is seen, executed and structured is obliterated. Software engineering has been expanding the its boundaries, creating and tailoring settings, methods and structures to the new paradigm. Software quality is one of the boundaries of software engineering that is expanded, as well as the software development process. This paper presents a study on the evolution of software quality and on the MDE process. Based on this, we propose a process framework for software development in Model-Driven Engineering, integrating quality concepts that were investigated and giving a holistic view to MDE process. The framework was subject to a conceptual evaluation and had its use illustrated. The framework evaluation showed that the proposed framework is adequate, covering all constructs suggested for a good software development process. The framework ultimately aims to integrate and create synergy between the parties participating in model-driven development. / Model-Driven Engineering é o conceito de um novo paradigma de desenvolvimento de software. Esse paradigma prevê que o desenvolvimento de software deixe de ter como artefato central o código e que os modelos e a arquitetura de software tomem esse papel. O conceito não surge sem impactos às estruturas de suporte de desenvolvimento. O modo como o processo de desenvolvimento de software é visto e executado e as organizações relacionadas a ele são obliteradas. A engenharia de software tem se preocupado em expandir os limites da área, criando e adaptando definições, métodos e estruturas para o novo paradigma. A qualidade de software é um dos conceitos de engenharia de software que precisa ser revisto, assim como o processo de desenvolvimento de software. Este trabalho apresenta um estudo sobre os avanços de qualidade de software e do funcionamento do processo de MDE. A partir disso, propõe-se um framework de processo de desenvolvimento de software para desenvolvimento em Model-Driven Engineering, que integra os conceitos de qualidade investigados e dá visão holística ao desenvolvimento em MDE. O processo foi submetido a uma avaliação conceitual e uma ilustração de uso. Na avaliação o framework mostrou abranger os construtos importantes de processo de software. O framework objetiva ultimamente integrar e criar sinergia entre as partes participantes do desenvolvimento orientado a modelos.
|
38 |
A model-based approach for extracting business rules out of legacy information systems / Une approche dirigée par les modéles pour l’extraction de règles métier à partir des systèmes d’informations héritésCosentino, Valerio 18 December 2013 (has links)
Le monde des affaires d’aujourd’hui est très dynamique, donc les organisations doivent rapidement adapter leurs politiques commerciales afin de suivre les évolutions du marché. Ces ajustements doivent être propagés à la logique métier présente dans les systèmes d’informations des organisations, qui sont souvent des applications héritées non conçues pour représenter et opérationnaliser la logique métier indépendamment des aspects techniques du langage de programmation utilisé. Par conséquent, la logique métier intégrée au sein du système doit être identifiée et comprise avant d’être modifiée. Malheureusement, ces activités ralentissent la mise à jour du système vers de nouvelles exigences établies dans les politiques de l’organisation et menacent la cohérence des activités commerciales de celle-ci. Afin de simplifier ces activités, nous offrons une approche basée sur les modèles pour extraire et représenter la logique métier, exprimée comme un ensemble de règles de gestion, à partir des parties comportementales et structurelles des systèmes d’information. Nous mettons en œuvre cette approche pour les systèmes écrits en Java et COBOL ainsi que pour les systèmes de gestion de bases de données relationnelles. L’approche proposée est basée sur l’Ingénierie Dirigée par les Modèles, qui fournit une solution générique et modulaire adaptable à différents langages en offrant une représentation abstraite et homogène du système. / Today’s business world is very dynamic and organizations have to quickly adjust their internal policies to follow the market changes. Such adjustments must be propagated to the business logic embedded in the organization’s information systems, that are often legacy applications not designed to represent and operationalize the business logic independently from the technical aspects of the programming language employed. Consequently, the business logic buried in the system must be discovered and understood before being modified. Unfortunately, such activities slow down the modification of the system to new requirements settled in the organization policies and threaten the consistency and coherency of the organization business. In order to simplify these activities, we provide amodel-based approach to extract and represent the business logic, expressed as a set of business rules, from the behavioral and structural parts of information systems. We implement such approach for Java, COBOL and relational database management systems. The proposed approach is based on Model Driven Engineering,that provides a generic and modular solution adaptable to different languages by offering an abstract and homogeneous representation of the system.
|
39 |
Gestion de la variabilité et automatisation des processus de développement logiciel / Variability management and automation of software development processesRouillé, Emmanuelle 01 April 2014 (has links)
De nombreux outils existent afin de faire face à la complexité des logiciels et des projets de développement logiciel. Leur utilisation est cependant à l'origine de tâches manuelles répétitives, sources d'erreurs et coûteuses en temps. L'automatisation de ces tâches permet de gagner en productivité. Mais la difficulté est de déterminer quand une automatisation de tâche manuelle répétitive doit être réutilisée, ainsi que de créer des automatisations réutilisables à travers leurs différents cas d'utilisation. Nous proposons donc une approche outillée pilotant la réutilisation des automatisations de tâches manuelles répétitives par les processus de développement logiciel, où un processus de développement logiciel décrit les étapes à réaliser pour mener à bien un projet de développement logiciel. Cette approche consiste à capitaliser sur un ensemble de processus et à réutiliser des processus de cet ensemble en fonction des exigences des projets, indépendamment du formalisme utilisé pour définir les processus. Des automatisations de tâches manuelles répétitives sont liées aux étapes des processus qu'elles automatisent. Ce lien permet de savoir quelles automatisations utiliser pour un projet donné et quand. Il permet également d'expliciter les différents cas d'utilisation de chaque automatisation. Cette information est utilisée afin de créer des automatisations réutilisables à travers leurs différents cas d'utilisation. L'approche ainsi que l'outillage associé ont été appliqués sur une famille de processus industriels de développement Java ainsi que sur une famille de processus consistant à définir et outiller un langage de modélisation. / Many tools have been developped in order to manage the complexity of the software and of the software development projects. However, using these tools is the source of manual recurrent tasks that are error prone and time consuming. Automating these tasks enables to improve the productivity. But the difficulties are i) to determine when the automation of a manual recurrent task must be used, and ii) to create automations that are reusable across their different use cases. We propose a tool-supported approach that drives the reuse of the automations of the manual recurrent tasks by software processes. A software process defines the sequence of steps to perform in order to realize a software engineering project. This approche consists of capitalizing on a set of software processes and of reusing processes from this set according to projects' requirements and independently of the formalism used to define the processes. The automations of the manual recurrent tasks are bound to the processes' steps they automate. This binding enables to know which automations to reuse for a specific project and when to reuse these automations during the project. This binding also enables to explicit the different use cases of each automation. We use this information to create automations that are reusable across their different use cases. We applied this tool-supported approach on a family of Java development processes coming from the industry as well as on a family of processes consisting of designing and implementing a modeling language.
|
40 |
Uma proposta de formalismo como arcabouço teórico para engenharia dirigida por modelos e aplicações. / A proposal of a formalism as a theoretical framework for Model Driven Engineering and Applications.Canovas, Sergio Roberto de Mello 02 September 2016 (has links)
Engenharia Dirigida por Modelos, ou Model Driven Engineering (MDE), é uma abordagem para desenvolvimento de software a partir de modelos. Código-fonte ou artefatos executáveis são gerados de forma automática, total ou parcialmente, a partir de transformações descritas por funções de mapeamento. Com isso, obtém-se as vantagens de desenvolver software em nível de abstração maior em relação às linguagens de programação tradicionais e da possibilidade de gerar implementações do mesmo sistema para diversas plataformas a partir do mesmo modelo. Uma das áreas de pesquisa da MDE é a formalização de teorias e conceitos relacionados a essa abordagem, tais como modelos, metamodelos, relação de conformidade, operações sobre metamodelos, etc. Embora existam na literatura propostas de formalização, observam-se lacunas e falta de consenso geral, o que leva autores a introduzir suas próprias definições quando desejam apresentar desenvolvimentos ou deduções, as quais nem sempre se encaixam entre si. Alguns autores consideram que, enquanto uma completa formalização de conceitos e relações da MDE não for estabelecida, seus potenciais podem não ser plenamente atingidos. A partir de estudos de proposições existentes na literatura, identificação de lacunas e necessidades, este trabalho apresenta uma proposta de arcabouço teórico para MDE, baseada nas teorias de conjuntos e linguagens, e em lógica de primeira ordem. Conceitos e operações relacionados à MDE são definidos sobre uma base comum e, a partir dela, algumas formulações originais são desenvolvidas, tais como a função de mesclagem de metamodelos e uma definição de modelos executáveis, que podem servir como base para a construção de motores de execução de modelos, consolidando e ampliando o conhecimento da área teórica da MDE. Do ponto de vista de aplicabilidade prática, a proposta é validada por meio de uma ferramenta de prova de conceito, criada também como parte desta pesquisa, e pela apresentação de exemplos de aplicações. / Model Driven Engineering (MDE) is a software development approach in which models are essential artifacts to build software systems. Source code or executable artifacts are automatically generated, completely or partially, by transformations described by mapping functions. Two main advantages can be obtained: software development in a higher level of abstraction than that of traditional programming languages and the possibility of generating implementations of the same system for multiple platforms from the same source model. One of the research fields of MDE is the formalization of theories and concepts related to this approach, such as models, metamodels, conformity relationship, operations over metamodels, etc. Although there are proposals of formalization in the literature, some gaps and a lack of general consensus can be identified, which leads some authors to introduce their own definitions when they want to present their work. These definitions not always fit to each other. Some authors claim that unless a complete formalization of MDE concepts and relations is given, the potentials of this approach may not be fully unfolded. Starting from studies on existing proposals, gaps and requirements, this work proposes a theoretical framework for MDE based on the set theory, language theory and first order logic. Concepts and operations related to MDE are defined over a common basis and some original formulations are developed, such as the metamodel merging function and definitions about executable models, which can be used as a foundation to build model execution engines, consolidating and expanding the theoretical field of MDE. From the applicability point of view, the proposal is validated by a proof-of-concept tool, created as part of this research, and by examples of applications.
|
Page generated in 0.0339 seconds