An MDE methodology for the development of high-integrity real-time systems

S. Mazzini, S. Puri, T. Vardanega
2009 2009 Design, Automation & Test in Europe Conference & Exhibition  
This paper reports on experience gained and lessons learned from an intensive investigation of model-driven engineering methodology and technology for application to high-integrity systems. Favourable experimental context was provided for by ASSERT, a 40-month project partly funded by the EC as part of the 6th Framework Program. The goodness of fit of the MDE paradigm for the industrial domain of interest was critically assessed on a small number of candidate solutions. One of the main axes of
more » ... nvestigation concerned HRT-UML/RCM, an advanced method and integrated tool for the model-driven development of embedded real-time software systems. HRT-UML/RCM vastly leveraged on version 2 of the OMG UML standard and combined it with the development of a domain-specific metamodel in the quest to attain correctness-by-construction from the ground up. The prototype tool developed in the project supported: (1) the separation of functional (sequential) design from the specification of real-time and concurrency requirements and properties to be preserved at run time; and (2) the exploitation of a fully generative approach to the development, equipped with support for model-based feasibility analysis and round-trip engineering. I. CONTRIBUTION HRT-UML/RCM, an integrated method and infrastructure for the development of embedded real-time software systems, whose acronym stands for "Hard Real-Time UML for the Ravenscar Computational Model", was one of the major results of the ASSERT (Automated proof based System and Software Engineering for Real-Time Applications) project [1] partly funded by the EC in the 6th Framework Program. In this paper we first review the conceptual basis of the work that led to HRT-UML/RCM and introduce the main principles of the development approach that the method promotes. We discuss the core methodological aspects of the methodology, using accompanying examples, and relate our approach to MARTE, the new UML profile for the modeling of realtime and embedded systems, recently adopted by OMG. We comment on the results of the pilot experiments made to evaluate the goodness of the tool prototype and conclude by outlining the future directions of this line of work. II. INTRODUCTION A. Background HRT-UML/RCM builds on conceptual and technical grounds laid down in [2], [3], [4], from a definition initiated by Intecs with research projects co-funded by the Italian Space Agency in 2001-4. The definition projects aimed at providing a comprehensive solution to the modeling of hard real-time and dependable systems, by upgrading the principles of HRT-HOOD [5] from object basedness to true (though constrained) object orientation and by incorporating them into version 1 of the UML [6] . HRT-HOOD was deemed a valuable conceptual basis, proven by years of successful use in European space industry. UML instead was chosen as the host infrastructure in view of its acknowledged stance in industrial practice as a de facto standard. The initial methodology was consolidated under a contract with the European Space Agency, targeted to the development of the real-time software systems for on-board applications in the space domain. With further EC funding from the 5th Framework Program, Intecs augmented the resulting concept with support for addressing control engineering aspects, by integrating Simulink functional design, as well as by addressing verification needs, ranging from combined simulation of the plant and the controller, to schedulability analysis and scheduling simulation [7]. B. The Model-Driven Engineering Approach Model-driven development is a novel engineering paradigm that facilitates the definition, composition and integration of complex software systems. Model evolution through refinements, transformations and code generation, possibly automated by tool support, form the basis of model-driven engineering (MDE). In the MDE vision, software models are elevated to a central and governing role in the development by reaching for a higher level of abstraction than is possible with current third-generation programming languages [8] A popular variant of MDE is the Model Driven Architecture (MDA), a major initiative of OMG to achieve a cohesive set of model-driven technology specifications [9] that use version 2 of the OMG general-purpose UML language [10] and/or specific profiles of it. The main goal of MDA is to: (1) separate business and application logic from the underlying execution platform technology; (2) focus developers on the production of models of the application and of the relevant business logic; and (3) support the generation of platform-specific models and code by means of engineered, and possibly automated, transformations. HRT-UML/RCM applies the MDA approach to provide an architectural framework where: (i) the designer may define platform-independent models; (ii) platform-specific models are automatically produced from platform-independent specifications using proven model-to-model transformations; (iii) 978-3-9810801-5-5/DATE09
doi:10.1109/date.2009.5090837 dblp:conf/date/MazziniPV09 fatcat:g6bbytghbbbatbt5iaqsexayyq