Towards UML-Based Formal Specifications of Component-Based Real-Time Software (original) (raw)
Related papers
Preface of “Specification and Validation of Real Time and Embedded systems in UML”
International Journal on Software Tools for Technology Transfer, 2006
The ideas of the papers in this special section have originally been presented at the first edition of the workshop on Specification and Validation of Real Time and Embedded Systems (SVERTS) that was held as a satellite workshop of the UML 2003 Conference in San Francisco.
FORMAL SPECIFICATION FOR REAL-TIME OBJECT ORIENTED SYSTEMS WITH UML DESIGN
Traditionally, real-time software system development focuses on low-level programming techniques to increase timeliness and operate within constraints; however, more recently higher-level, object-oriented methodologies are being used to create real-time software systems. This increase in object-oriented design for realtime systems is due to the improved use of active objects and concurrency in object-oriented languages. Real-time aspects have not only improved in many programming languages, but these real-time constraints are becoming more essential in general object-oriented software development. Consequently, the specification of real-time object-oriented systems is becoming important in software development processes. One of the many tools used to specify software is an executable specification language called Descartes. Descartes relates output data to input data as a function of the input data through a tree structure notation called "Hoare trees." This useful specification structure has been extended and supported for several types of systems since the language's creation in 1977. In particular, Descartes has been extended for the specification of real-time systems and for object-oriented designed systems. In spite of this, the combination of the two extensions for specification of real-time object oriented (RTOO) systems has not been tested. Thus, the main objective was to validate that the combination of the two Descartes extensions either satisfied the needed specification for RTOO systems or that the language needed to be additionally extended. To gain further verification of these united Descartes extensions, the Unified Modeling Language (UML) was used for comparison in aspects of design and effectiveness. In this research effort, UML 2.0, a widely used modeling language was used and analyzed to model security requirements along with the application requirements for real time object oriented systems. The outcome from this research effort was efficient modeling notations included to UML 2.0 modeling notations that can be used to specify security requirements in the beginning phase of software engineering, when application requirements are specified.
Science of Computer Programming, 2007
By following a methodological approach, introduced in a previous work, a correct system specification in terms of CSP+T process algebra is systematically obtained from the UML-RT model of a real-time software system. Among other contributions, this article aims at integrating collaboration diagrams into our approach to facilitate the specification of capsules in UML-RT design models. Thus, an improved systematic transformation procedure to derive a correct and complete formal system specification of real-time systems is established here. Temporal requirements integration in the design and system specification stages of a real-time system is also addressed, so that the approach now opens up the possibility to carry out scheduling and dependability analysis at the design phase of the system development life cycle for hard real-time systems. The article also discusses a practical application to present a systematic transformation from a UML-RT model of a well known manufacturing-industry paradigmatic case, the "Production Cell".
2005
UML is a collection of notations for capturing a software system specification. These notations have a specific syntax defined by the Object Management Group (OMG), but many of their constructs only present informal semantics. They are primarily graphical, with textual annotation. The inadequacies of standard UML as a vehicle for the complete specification and implementation of real-time embedded systems has led to a variety of competing and complementary proposals. The Real-Time UML profile (UML-RT), developed and standardized by OMG, defines a unified framework to express time, scheduling and performance aspects of a real-time system. This paper presents a methodological approach for specifying to real-time systems. Therefore, we combine two methods, a semi-formal one, UML-RT, which enables the visual modelling of a real-time system, and a formal one, CSP+T, based on the CSP process algebra, which is a formal specification language that enables the specification of real-time requirements. To show the applicability of the approach, the correct design of a real-time system with hard real time constraints is obtained by applying the set of mapping rules proposed here.
Formal specification of real-time systems by transformation of UML-RT design models
Proceedings of the …, 2006
We are motivated to complement our methodology by integrating collaboration diagrams to facilitate the specification of capsules in UML-RT design models. An improved systematic transformation method to derive a correct and complete formal system specification of real-time systems is established. This article aims at integrating temporal requirements in the design stage of the life cycle of a real-time system, so that scheduling and dependability analysis can be performed at this stage. The application of CSP+T process algebra to carry out a systematic transformation from a UML-RT model of a well known manufacturing-industry paradigmatic case, the "Production-Cell", is also presented.
Integrating UML and UPPAAL for designing, specifying and verifying component-based real-time systems
Innovations in Systems and Software Engineering, 2010
A new tool for integrating formal methods, particularly model checking, in the development process of component-based real-time systems specified in UML is proposed. The described tool, TANGRAM (Tool for Analysis of Diagrams), performs automatic translation from UML diagrams into timed automata, which can be verified by the UPPAAL model checker. We focus on the CORBA Component Model. We demonstrate the overall process of our approach, from system design to verification, using a simple but real application, used in train control systems. Also, a more complex case study regarding train control systems is described.
Formal specification languages for real-time systems
2010 International Symposium on Information Technology, 2010
This paper presents a survey about the formal specification languages which are used to specify Real-time systems. Real time systems are critical systems such as nuclear missile system, auto pilot system etc. A minor fault in these systems can result into serious consequences. These consequences may comprise threat to human life. Therefore it is very vital to specify the system correctly. To achieve the correct and unambiguous specification, formal languages are used. Formal languages increase the confidence on the specification and hence the overall system. This paper compares formal languages which are used to specify real-time systems such as VDM++, RTSJ, ASTRAL. A comparison criterion is established to select the best suitable specification languages for Real-Time systems. In the end a small example is mapped in to three selected specification languages which conclude that which language provides the best constructs and tools for Real-Time systems.
Associated paper: The Specification of Real-Time Systems: a Logical, Object-Oriented Approach
requirements for high quality specifications of real-time systems are stated. An approach based on the integration of logic and object-oriented formalisms is advocated and the essential features of a language-named TRIO +that exploits such an approach are described. It is also argued that the benefits of the use of rigorous approaches to the system specification phase can be highly enhanced by suitable CASE tools that support the whole process. Early experiences on the application of the TRIO + language and of its tools to industrial problems are reported.
Verification of UML-Based Real-Time System Designs by Means of cTLA
2000
The Unified Modeling Language UML is well-suited for the design of real-time systems. In particular the design of dynamic system behaviors is supported by interaction diagrams and statecharts. Real-time aspects of behaviors can be described by time constraints. The semantics of the UML, however, is non-formal. In order to enable formal design verification, we therefore propose to complement the UML based design by additional formal models which refine UML diagrams to precise formal models. We apply the formal specification technique cTLA which is based on L. Lamport's Temporal Logic of Actions, TLA. In particular cTLA supports modular definitions of process types and the composition of systems from coupled process instances. Since process composition has superposition character each process system has all of the relevant properties of its constituting processes. Therefore mostly small subsystems are sufficient for the verification of system properties and it is not necessary to use complete and complex formal system models. We present this approach by means of an example and also exemplify the formal verification of its hard real-time properties