39 research outputs found

    Modeling and Generating Tailored Distribution Middleware for Embedded Real-Time Systems

    Get PDF
    International audienceDistributed real-time embedded (DRE) systems are becoming increasingly complex. They have to meet more and more stringent requirements, either functional or non-functional. Because of this, DRE systems development makes use of formal methods for verification; and, in some cases, generation of proven code. The distribution aspects are typically handled by a middleware, which must meet the system constraints. In this article, we describe our approach to model and generate middleware-based distributed systems for DRE applications. Our methodology is a three-step approach. First, we model the high-level inter-component interactions using connectors. We then use the Architecture Analysis and Design Language (AADL) as a pre-implementation description language to capture all the non-functional aspects of the system. Finally, we generate actual application code and the appropriate middleware from the AADL description. In order to demonstrate the feasibility of our approach, we created an application generator, Gaia. It is part of the Ocarina AADL tool suite and generates application source code for use with the PolyORB middleware

    Architecting integrated internet of things systems

    Get PDF
    IoT (Internet of Things) enables anytime and anyplace connectivity for anything by linking the objects of the real world with the virtual world. In the near future, it is predicted that more than 50 billion of things will be connected to the internet. This will lead to many different IoT- based systems that will have a huge impact on the society. Often, these IoT systems will not be standalone but will be composed with other different systems to create additional value. Hence, with the heterogeneity and the integration of IoT-based systems with other IoT-based or non-IoT-based systems has become an important challenge. In this thesis, the main objective is to analyze, design and integrate IoT-based systems and to answer the following research questions: RQ1. What are the characteristic features of IoT systems? RQ2. How to design the architecture for an IoT-based system? RQ3. What are the identified obstacles of the data distribution (DDS) middleware? RQ4. What are the solution directions for the identified obstacles of DDS? RQ5. What are the approaches for integrating multiple IoT-based systems? RQ6. How to design a DDS-based IoT system? RQ7. How to derive feasible deployment alternatives for DDS-based systems? In order to answer these research questions, three different research methodologies were used: Systematic Literature Review, Design Science Research, and Case Study Research. In chapter 2, we have applied a feature driven domain analysis of IoT systems. We have presented the reference architecture for IoT and discussed the corresponding layers. Among these layers, we have focused on the session layer of the IoT. The protocols in this layer are related with the communication sessions of the IoT systems and hence determine the communication characteristics of the IoT systems. We have presented the common and variant features of the most commonly used session layer protocols, namely AMQP, CoAP, DDS, MQTT, and XMPP which are used for communication between M2M (machine-to- machine), M2S (machine-to-server), and S2S (server-to-server). Further, we have provided an evaluation framework to compare session layer communication protocols. Among these protocols, we focused on the DDS that is mainly used for M2M communication in Industrial Internet of Things (IIoT). In chapter 3, we have described an architecture design method for architecting IoT systems for the Farm Management Information Systems (FMIS) domain. Hereby, we have also developed a family feature diagram to represent the common and variant features of IoT- based FMIS. In order to illustrate our approach, we have performed a systematic case study approach including the IoT-based wheat and tomato production with IoT-based FMIS. The case study research showed that the approach was both effective and practical. In chapter 4, we have presented the method for designing integrated IoT systems. We showed that integration of IoT-based systems can be at different layers including session layer, cloud layer and application layer. Further we have shown that the integration is typically carried out based on well-defined patterns, that is, generic solutions structures for recurring problems. We have systematically compiled and structured the 15 different integration patterns which can be used in different combinations and likewise supporting the composition of different IoT systems. We have illustrated the use of example patterns in a smart city case study and have shown that the systematic structuring of the integration patterns is useful for integrating IoT systems. A systematic research methodology has been applied in chapter 5 to identify the current obstacles to adopt DDS and their solution directions. We have selected 34 primary studies among the 468 identified papers since the introduction of DDS in 2003. We identified 11 basic categories of problems including complexity of DDS configuration, performance prediction, measurement and optimization, implementing DDS, DDS integration over WAN, DDS using wireless networks and mobile computing, interoperability among DDS vendor implementations, data consistency in DDS, reliability in DDS, scalability in DDS, security, and integration with event-based systems. We have adopted feature diagrams to summarize and provide an overview of the identified problem and their solutions defined in the primary studies. DDS based architecture design for IoT systems is presented in chapter 6. DDS is considered to be a potential middleware for IoT because of its focus on event-driven communication in which quality of service is also explicitly defined. We provide a systematic approach to model the architecture for DDS-based IoT in which we adopted architecture viewpoints for modeling DDS, IoT and DDS-based IoT systems. We have integrated and represented the architecture models that can be used to model DDS-based IoT systems for various application domains. When designing DDS-based systems typically multiple different alternatives can be derived. Chapter 7 presents an approach for deriving feasible DDS configuration alternatives. For this we have provided a systematic approach for extending the DDS UML profile and developed an extensible tool framework Deploy-DDS to derive feasible deployment alternatives given the application model, the physical resources, and the execution configurations. The tool framework Deploy-DDS implements a set of predefined algorithms and can be easily extended with new algorithms to support the system architect. We have evaluated the approach and the tool framework for a relevant IoT case study on smart city engineering. Chapter 8 concludes the thesis by summarizing the contributions.</p

    Self-describing and data propagation model for data distribution service

    Get PDF
    Abstract. To realize real-time information sharing in generic platforms, it is especially important to support dynamic message structure changes. For the case of IDL, it is necessary to rewrite applications to change data sample structures. In this paper, we propose a dynamic reconfiguration scheme of data sample structures for DDS. Instead of using IDL, which is the static data sample structure model of DDS, we use a self describing model using data sample schema, as a dynamic data sample structure model to support dynamic reconfiguration of data sample structures. We also propose a data propagation model to provide data persistency in distributed environments. We guarantee persistency by transferring data samples through relay nodes to the receiving nodes, which have not participated in the data distribution network at the data sample distribution time. The proposed schemes can be utilized to support data sample structure changes during operation time and to provide data persistency in various environments, such as real-time enterprise environments and connection-less internet environments

    Service-based Fault Tolerance for Cyber-Physical Systems: A Systems Engineering Approach

    Get PDF
    Cyber-physical systems (CPSs) comprise networked computing units that monitor and control physical processes in feedback loops. CPSs have potential to change the ways people and computers interact with the physical world by enabling new ways to control and optimize systems through improved connectivity and computing capabilities. Compared to classical control theory, these systems involve greater unpredictability which may affect the stability and dynamics of the physical subsystems. Further uncertainty is introduced by the dynamic and open computing environments with rapidly changing connections and system configurations. However, due to interactions with the physical world, the dependable operation and tolerance of failures in both cyber and physical components are essential requirements for these systems.The problem of achieving dependable operations for open and networked control systems is approached using a systems engineering process to gain an understanding of the problem domain, since fault tolerance cannot be solved only as a software problem due to the nature of CPSs, which includes close coordination among hardware, software and physical objects. The research methodology consists of developing a concept design, implementing prototypes, and empirically testing the prototypes. Even though modularity has been acknowledged as a key element of fault tolerance, the fault tolerance of highly modular service-oriented architectures (SOAs) has been sparsely researched, especially in distributed real-time systems. This thesis proposes and implements an approach based on using loosely coupled real-time SOA to implement fault tolerance for a teleoperation system.Based on empirical experiments, modularity on a service level can be used to support fault tolerance (i.e., the isolation and recovery of faults). Fault recovery can be achieved for certain categories of faults (i.e., non-deterministic and aging-related) based on loose coupling and diverse operation modes. The proposed architecture also supports the straightforward integration of fault tolerance patterns, such as FAIL-SAFE, HEARTBEAT, ESCALATION and SERVICE MANAGER, which are used in the prototype systems to support dependability requirements. For service failures, systems rely on fail-safe behaviours, diverse modes of operation and fault escalation to backup services. Instead of using time-bounded reconfiguration, services operate in best-effort capabilities, providing resilience for the system. This enables, for example, on-the-fly service changes, smooth recoveries from service failures and adaptations to new computing environments, which are essential requirements for CPSs.The results are combined into a systems engineering approach to dependability, which includes an analysis of the role of safety-critical requirements for control system software architecture design, architectural design, a dependability-case development approach for CPSs and domain-specific fault taxonomies, which support dependability case development and system reliability analyses. Other contributions of this work include three new patterns for fault tolerance in CPSs: DATA-CENTRIC ARCHITECTURE, LET IT CRASH and SERVICE MANAGER. These are presented together with a pattern language that shows how they relate to other patterns available for the domain

    Plataforma de gesti贸n para aplicaciones IIoT con requisitos de calidad de servicio

    Get PDF
    El contenido de los cap铆tulos 3, 4, 5 y 6 est谩 sujeto a confidencialidad. 82 p.La Internet Industrial de las Cosas (IIoT) plantea una serie de retos tecnol贸gicos que suponen la motivaci贸n de esta tesis. Por una parte es necesario gestionar aplicaciones geogr谩ficamente distribuidas y muy heterog茅neas en cuanto a plataformas hardware, redes y protocolos de comunicaci贸n. Por otra parte, la naturaleza de las aplicaciones es intr铆nsecamente din谩mica, y por tanto requiere de soporte para la reconfiguraci贸n din谩mica y aut贸noma de los sistemas. Finalmente, existen una serie de requisitos no funcionales que son claves desde un enfoque industrial y que contemplan aspectos tales como la calidad de servicio, la tolerancia a fallos o la seguridad funcional.En este contexto, desde la perspectiva de la ingenier铆a del software y con el objetivo de facilitar el desarrollo y soporte de aplicaciones IIoT, se ha concebido una plataforma de gesti贸n de aplicaciones distribuidas basadas en componentes, que soporta la reconfiguraci贸n din谩mica y aut贸noma de las mismas en base a criterios de optimizaci贸n de los recursos y de calidad de servicio. La plataforma soporta una serie de paradigmas de comunicaci贸n y modelos de ejecuci贸n que abarcan una amplia tipolog铆a de aplicaciones. Para su validaci贸n, se ha dise帽ado y desarrollado un demostrador en el campo de los almacenes automatizados
    corecore