754 research outputs found

    Modeling and analysis of real-time software systems using UML

    Get PDF
    Real-Time Systems (RTS) should not only function correctly but should also satisfy time constraints. RTS include embedded systems, which are used nowadays in a variety of applications. These are, for instance, house appliances, automotive, aeronautic/aerospace, and health monitoring systems, to mention just a few. The design of such systems is complex and challenging. In order to cope with the complexity of RTS, there is shift in their development to follow a model-driven approach, such as the Model Driven Architecture (MDA), which relies on using models of high level of abstraction. The Unified Modeling Language (UML) is the Object Management Group (OMG) standard modeling language to support MDA. UML is appropriate for software systems because it allows for a multi-view modeling approach through its multitude of diagrams covering the structure, the behavior and the deployment architecture. Moreover, UML is also used in the domain of real-time software systems. This is achieved through its profiles, including, the OMG standard profile for Schedulability, Performance and Time (UML/SPT) or the upcoming standard UML Profile for Modeling and Analysis of Real-Time and Embedded Systems (MARTE). However, UML modeling faces some challenging issues such as model consistency. This issue becomes worse in the context of real-time software systems because additional aspects should be taken into consideration, including time, concurrency and schedulability. In this thesis, we address several issues related to modeling and validation of RTS with UML. We focus in particular on the consistency of UML/SPT models. We adopt an incremental approach to check the consistency of these models by distinguishing the syntactic and semantic levels. The latter is further decomposed into behavioral, concurrency-related and time consistency. Our contributions in this thesis are fourfold. First, we leverage the extensibility mechanisms of UML to propose an extension to UML/SPT. This extension enables the modeling of multicast communications, which is required for the description of the behavior of certain real-time protocols. Second, we propose a formalization of the concurrency modeling capability in UML/SPT using timed automata. This formal semantics allows for applying well-established model checking techniques to check concurrency related consistency in UML/SPT models. Third, we propose an MDA-compliant approach to enable schedulability analysis of UML/SPT models. We present a proof of concept for this approach through a prototype implementation using the Atlas Transformation Language (ATL) and XML-based technologies. Finally, we use the schedulability analysis applied to UML/SPT models in order to check the time consistency of a system design modeled by means of a set of state machines with respect to time constraints modeled using a set of sequence diagrams annotated with UML/SPT time stereotypes. Keywords : Real-time systems, Model-driven Architecture, UML, UML/SPT, Model transformation, ATL, XML, XSLT, Consistency, Concurrency, Model Checking, Schedulability Analysis

    Combining SysML and AADL for the design, validation and implementation of critical systems

    Get PDF
    The realization of critical systems goes through multiple phases of specification, design, integration, validation, and testing. It starts from high-level sketches down to the final product. Model-Based Design has been acknowledged as a good conveyor to capture these steps. Yet, there is no universal solution to represent all activities. Two candidates are the OMG-based SysML to perform high-level modeling tasks, and the SAE AADL to perform lower-level ones, down to the implementation. The paper shares an experience on the seamless use of SysML and the AADL to model, validate/verify and implement a flight management system

    Extending UML-RT for Control System Modelling

    Get PDF
    There is a growing interest in adopting object technologies for the development of real-time control systems. Several commercial tools, currently available, provide object-oriented modeling and design support for real-time control systems. While these products provide many useful facilities, such as visualization tools and automatic code generation, they are all weak in addressing the central characteristic of real-time control systems design, i.e., providing support for a designer to reason about timeliness properties. We believe an approach that integrates the advancements in both object modeling and design methods and real-time scheduling theory is the key to successful use of object technology for real-time software. Surprisingly several past approaches to integrate the two either restrict the object models, or do not allow sophisticated schedulability analysis techniques. This study shows how schedulability analysis can be integrated with UML for Real-Time (UML-RT) to deal with timing properties in real time control systems. More specifically, we develop the schedulability and feasibility analysis modeling for the external messages that may suffer release jitter due to being dispatched by a tick driven scheduler in real-time control system and we also develop the scheduliablity modeling for sporadic activities, where messages arrive sporadically then execute periodically for some bounded time. This method can be used to cope with timing constraints in realistic and complex real-time control systems. Using this method, a designer can quickly evaluate the impact of various implementation decisions on schedulability. In conjunction with automatic code-generation, we believe that this will greatly streamline the design and development of real-time control systems software

    Integrating Schedulability Analysis with UML-RT

    Get PDF
    The use of object oriented techniques and methodologies for the design of real-time control systems appear to be necessary in order to deal with the increasing complexity of such systems. Recently many object-oriented methods have been used for the modeling and design of real-time control systems. We believe that an approach that integrates the advancements in both object modeling and design methods, and real-time scheduling theory is the key to successful use of object oriented technology for real-time software. However, past approaches to integrate the two either restrict the object models, or do not allow sophisticated schedulability analysis techniques. In this paper we show how schedulability analysis can be integrated with object-oriented design; we develop the schedulability and feasibility analysis method for the external messages that may suffer release jitter due to being dispatched by a tick driven scheduler in real-time control system, and we also develop the scheduliability method for sporadic activities, where message arrive sporadically then execute periodically for some bounded time. This method can be used to cope with timing constraints in complex real-time control systems

    UML Extensions for Real-Time Control Systems

    Get PDF
    The use of object oriented techniques and methodologies for the design of real-time control systems appears to be necessary in order to deal with the increasing complexity of such systems. Recently many object-oriented methods have been used for the modeling and design of real-time control systems. We believe that an approach that integrates the advancements in both object modeling and design methods, and real-time scheduling theory is the key to successful use of object oriented technology for real-time software. Surprisingly several past approaches to integrate the two either restrict the object models, or do not allow sophisticated schedulability analysis techniques. In this paper we show how schedulability analysis can be integrated with object-oriented design. More specifically, we develop the schedulability and feasibility analysis method for the external messages that may suffer release jitter due to being dispatched by a tick driven scheduler in real-time control system, and we also develop the scheduliability method for sporadic activities, where message arrive sporadically then execute periodically for some bounded time. This method can be used to cope with timing constraints in realistic and complex real-time control systems. Using this method, a designer can quickly evaluate the impact of various implementation decisions on schedulability. In conjunction with automatic code-generation, we believe that this will greatly streamline the design and development of real-time control system software

    A model-based approach to the development of distributed control systems

    Get PDF
    Distributed Control Systems (DCS) are a class of application with specific characteristics. This type of system is used in industrial environments to control manufacturing processes. Usually they comprise a controller, a fieldbus network, and a set of Of-The-Shelf (OTS) components, interfacing process signals with real-time QoS requirements. In this paper we present a Model Driven Development (MDD) method that targets this category of systems. This method focuses on the critical stages of DCS development. Namely, the specification of system requirements, the choice of OTS modules and fieldbus system, and the validation of the design using real-time analysis tools. This MDD method uses the Unified modelling Language (UML) as support notation, including the extensions defined in the UML Profile for Schedulability, Performance and Time Specification.Fundação para a Ciência e Tecnologia; FEDER – Project METHODES (POSI/37334/CHS/2001)

    Mapping AADL models to a repository of multiple schedulability analysis techniques

    Get PDF
    To fill the gap between the modeling of real-time systems and the scheduling analysis, we propose a framework that supports seamlessly the two aspects: 1) modeling a system using a methodology, in our case study, the Architecture Analysis and Design Language (AADL), and 2) helping to easily check temporal requirements (schedulability analysis, worst-case response time, sensitivity analysis, etc.). We introduce an intermediate framework called MoSaRT, which supports a rich semantic concerning temporal analysis. We show with a case study how the input model is transformed into a MoSaRT model, and how our framework is able to generate the proper models as inputs to several classic temporal analysis tools

    Reliability prediction in model driven development

    Get PDF
    Evaluating the implications of an architecture design early in the software development lifecycle is important in order to reduce costs of development. Reliability is an important concern with regard to the correct delivery of software system service. Recently, the UML Profile for Modeling Quality of Service has defined a set of UML extensions to represent dependability concerns (including reliability) and other non-functional requirements in early stages of the software development lifecycle. Our research has shown that these extensions are not comprehensive enough to support reliability analysis for model-driven software engineering, because the description of reliability characteristics in this profile lacks support for certain dynamic aspects that are essential in modeling reliability. In this work, we define a profile for reliability analysis by extending the UML 2.0 specification to support reliability prediction based on scenario specifications. A UML model specified using the profile is translated to a labelled transition system (LTS), which is used for automated reliability prediction and identification of implied scenarios; the results of this analysis are then fed back to the UML model. The result is a comprehensive framework for addressing software reliability modeling, including analysis and evolution of reliability predictions. We exemplify our approach using the Boiler System used in previous work and demonstrate how reliability analysis results can be integrated into UML models
    corecore