A practical approach to formal design of real-time systems (original) (raw)
Related papers
A formal method for specification and refinement of real-time systems
Proc. 8'th EuroMicro Workshop on Real Time Systems, 1996
A new formal method for the specification, of real-time system requirements and their refinement to a design architecture is set out here. This integrated method is derived from a recently developed formal semantics, logic and refinement calculus for the IEEE standard hardware specification language VHDL. The specification format consists of three-phase “before, during and after” logical schemas, and comes with a combinatorial schema calculus and a refinement theory. The look and feel is reminiscent of Z and VDM and is intended to present an “upgrade path” to real-time for users with specification skills in these languages
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.
Real-Time concepts for a formal specification language for software/hardware systems
Increasingly complex systems are being designed that consist of concurrently operating and communicating processes, often combining both hardware and software. A methodology for high level specification and design of software/ hardware systems (SHE [1]) has been designed to cope with this increasing complexity. SHE incorporates a formal specification language named POOSL. Many systems today can be characterised as real-time. The timing properties of such a realtime system determine the correctness of an implementation. This paper describes the extension of the language POOSL with a notion of time and with real-time primitives, which enable it to specify and model timing properties. Concepts and aspects related to timing and concurrency are discussed and options for introducing time and adding temporal meaning to existing elements of the language are investigated. The language POOSL and its formal semantics have been extended with a notion of time and a new primitive has been added. It is shown that this extension enables the expression of typical forms of temporal behaviour such as execution time, time-out behaviour, etcetera. POOSL can thus be used as a formal basis for specifying and designing real-time systems within the SHE methodology.
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.
Fomal Specification Languages for Real-Time Systems
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.
Specification of Realtime Systems
1997
ASTRAL is a formal specification language for realtime systems. It is intended to support formal software development and, therefore, has been formally defined. The structuring mechanisms in ASTRAL allow one to build modularized specifications of complex systems with layering. A realtime system is modeled by a collection of state machine specifications and a single global specification. This paper discusses the rationale of ASTRAL's design. ASTRAL's specification style is illustrated by discussing a telephony example. Composability of one or more ASTRAL system specifications is also discussed by the introduction of a composition section, which provides the needed information to combine two or more ASTRAL system specifications.
Languages and methods for specifying real-time systems
2002
The specification of complex systems, such as software, requires welldefined languages and methods. In the case of real-time systems, where temporal correctness must be achieved in addition to functional, descriptions of time dependant behaviour must be expressable within the specification language.
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.
Formal Modelling Languages to Specify Real-Time Systems: A Survey
International Journal of Future Computer and Communication, 2013
Real-time systems demand functional as well as temporal correctness. Complex interactions with the environment and strict adherence to time bounds are main characteristics of these systems. The use of formal methods is a natural choice for real-time system development. Formal models are more rigorous in nature and ensure completeness. If a system is highly sensitive to time delays, time behaviour of real-time system must be specified through formal languages. Petri nets, state charts and UML can be used to represent time behaviour, but these techniques are lesser effective than formal languages. The strength of formal languages depends upon completeness and possibility of partial mathematical verification. In order to study time behaviour, we have surveyed existing formal languages used to model real-time systems. We have selected typical languages that are supposed to represent entire set of real-time formal languages. Some parameters are defined to critically evaluate these languages. We have analysed and compared formal languages for real-time systems using our defined evaluation criteria. As a result of our analysis, we conclude that all languages incorporate special constructs to capture time behaviour. Effectiveness of these constructs can be compared on the basis of the capability of the languages to specify time domain. We also conclude that there is an ardent need to standardise formal languages used to specify real-time systems.
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".