An extended data flow diagram notation for specification of real-time systems

Abstract

The rapid demand for industrial automation has resulted in the development of very large systems. The development costs for such systems have highlighted the importance of a staged methodical approach to system development. One of the starting stages is the derivation and expression of system specification. Because it takes place very early in the development cycle, the techniques used to aid in deriving a specification should not only help system developers in recognising and resolving system requirements errors, they should also help in presenting those requirements clearly. This thesis is concerned with the specification of a specific class of systems: real-time systems. After elaborating on what the terms “specification” and “real-time system” mean in the context of the thesis, it is proposed that the communication power of the notation used for specification plays a central role. General diagrammatic representation of engineering plans are then identified as one of the most desirable and communicable forms of such plans. A popular notation, used in the specification of data processing systems, is then briefly discussed, in order to identify its limitations for real-time system specification. Despite those limitations, its popularity is a strong incentive for extending the notation instead of inventing a new one. Two of the currently used extensions to this notation are then presented, and their main shortcomings are highlighted. An alternative extension is then proposed, which attempts to overcome these shortcomings. It does so by separating the data and control inter-faces of a system into complementary diagrams. Because real-time system behaviour is control dominated, the notation concentrates on this particular system feature by breaking it down into two categories: control over groups of system components, i.e. the conditions under which each group is enabled and disabled to perform its overall task, and control over individual system components, i.e. the condition under which each component is activated to carry out its (sub)task. The notation’s constructs allow both types of control to be specified, without hindering the specifier, and in a fashion which highlights both low level concurrency (among individual components) and high level concurrency (among component groups). Special attention is also paid to the importance of synchronisation and temporal events by providing notational means for specifying both. These extensions are illustrated through a specification exercise before discussing issues related to the notation. Some comparisons are then made with four other approaches to system specification, before highlighting the more novel features of the notation and outlining possible future extensions to the work presented here

    Similar works