## Formal Methods For The Re-Engineering of Computing Systems (1997)

Venue: | In Proceedings of The 21st IEEE International Conference on Computer Software and Application (COMPSAC'97 |

Citations: | 3 - 1 self |

### BibTeX

@INPROCEEDINGS{Liu97formalmethods,

author = {X. Liu and H. Yang and H. Zedan},

title = {Formal Methods For The Re-Engineering of Computing Systems},

booktitle = {In Proceedings of The 21st IEEE International Conference on Computer Software and Application (COMPSAC'97},

year = {1997},

pages = {409--141},

publisher = {IEEE Computer Society}

}

### OpenURL

### Abstract

We present a short review of formal methods and their use in the re-engineering of computing systems. The paper considers five classes of formal notations and theories, namely state/model-based, logic-based, algebraic-based, process algebra and net-based formalisms together with combined formalisms. Keywords : formal methods, re-engineering, wide spectrum language, real-time systems, refinement, reverse engineering, logic. Contents 1 INTRODUCTION 2 2 CLASSIFICATION OF FORMAL METHODS 4 2.1 Model-based Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Logic-based Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3 Algebraic Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.4 Process Algebra Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.5 Net-Based Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3 CRITERIA AND RESULTS 17 4 DISCUSS...

### Citations

3682 | Communicating Sequential Processes
- Hoare
- 1978
(Show Context)
Citation Context ...this approach, explicit representation of concurrent processes is allowed. System behaviour is represented by constraints on all allowable observable communication between processes. Examples ffl CSP =-=[29]-=- [28]. The Communicating Sequential Processes (CSP) formal specification notation for concurrent systems was first introduced in [29]. Since this original proposal did not include a proof method, a co... |

3463 |
Communication and Concurrency
- Milner
- 1989
(Show Context)
Citation Context ...formal specification notation for concurrent systems was first introduced in [29]. Since this original proposal did not include a proof method, a complete version of CSP was proposed in [28]. ffl CCS =-=[45]-=-. Calculus of Communicating Systems (CCS) was proposed by Milner in 1989. It is a formalism similar to CSP. CCS is also suitable for distributed and concurrent systems. At present, several variations ... |

807 |
Petri Net Theory and the Modeling of Systems
- Peterson
- 1981
(Show Context)
Citation Context ...ssible to non-specialists. In this approach, graphical languages with a formal semantics are used, which bring special advantages in system development and re-engineering. Examples ffl Petri Net [55] =-=[52]-=-. Petri Net theory is one of the first formalisms to deal with concurrency, nondeterminism and causal connections between events. According to [44] it was the first unified theory, with levels of abst... |

680 |
Systematic Software Development using VDM
- Jones
- 1986
(Show Context)
Citation Context ...y. A Z specification is written in terms of "schemas", each of which contains a signature part which declares items of interest and a predicate part which places a logical constraint on them=-=. ffl VDM [35]-=- [9] [34]. VDM (the Vienna Development Method) is a formal method for rigorous computing system development. It is similar to Z in most aspects, although not as popular as Z. VDM support model composi... |

611 |
Petri Nets: an Introduction
- Reisig
- 1985
(Show Context)
Citation Context ... accessible to non-specialists. In this approach, graphical languages with a formal semantics are used, which bring special advantages in system development and re-engineering. Examples ffl Petri Net =-=[55]-=- [52]. Petri Net theory is one of the first formalisms to deal with concurrency, nondeterminism and causal connections between events. According to [44] it was the first unified theory, with levels of... |

443 |
D.,: â€śAutomata for modeling real-time systems
- Alur, Dill
- 1990
(Show Context)
Citation Context ... ffl Statecharts [31]. Statecharts [31] provides an abstraction mechanism based on finite state machine. It represents an improved version of the structured methods. A graphic tool called "Statem=-=ate" [2]-=- exists to implement the formalism. Methods similar to that of Statecharts may be found in [23]. Statecharts have been proved to be at least as expressive as state machines, and the succinct justifica... |

389 | Process Algebra for Synchronous Communication
- Bergstra, Klop
- 1984
(Show Context)
Citation Context ...terministic concurrency and its resulting equivalences. CCS is not a real-time formalism either. Some extensions of CCS with real-time feature have been developed, such TCCS, SCCS, and TPCCS. ffl ACP =-=[6]-=- [3]. Algebra of Communicating Processes (ACP) was proposed by J.A. Bergstra in 1984. Until now, a rather large variety of ACP has been proposed, such as Real Time ACP(ACP ae ), Discrete Time ACP. ACP... |

323 | editors. Larch: Languages and Tools for Formal Specification
- Guttag, Horning
- 1993
(Show Context)
Citation Context ...is rigorously based on equational logic. This semantics basis supports a declarative, specificational style, facilitates program verification, and allows OBJ to be used as a theorem prover. ffl LARCH =-=[26]-=-. The Larch family of algebraic specification languages was developed at MIT and Xerox PARC to support the productive use of formal specifications in programming. One of its goals is to support a vari... |

279 |
Modelling and verification of time dependent systems using time Petri nets
- Berthomieu, Diaz
- 1991
(Show Context)
Citation Context ...l now, a large amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net [43] [21] =-=[7]-=- [8] [38] [53]. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri Nets [43... |

256 |
A calculus of durations
- Chaochen, Hoare, et al.
- 1991
(Show Context)
Citation Context ...d on intervals of time, thought of as representing finite chunks of system behaviour. An interval may be divided into two contiguous subintervals, thus leading to chop operator. ffl Duration Calculus =-=[12]-=- [13]. Duration Calculus was introduced in [12] as a logic to specify and reason about requirements for real-time systems. It is an extension of Interval Temporal Logic where one can reason about inte... |

230 |
Safety analysis of timing properties in real-time systems
- Jahanian, Mok
- 1986
(Show Context)
Citation Context ..."cleaner" specifications. No special development method is proposed in RTTL or required by RTTL. If applied to reverse engineering area, RTTL has a flexibility to fit different methodologies=-=. ffl RTL [33]-=-. RTL [33] is a real-time logic with four basic concepts: actions which may be composite or primitive, state predicates which provide assertions regarding the physical system state, events which are m... |

163 | Time Pro- cess Algebra
- Baeten, Bergstra, et al.
- 1990
(Show Context)
Citation Context ...inistic concurrency and its resulting equivalences. CCS is not a real-time formalism either. Some extensions of CCS with real-time feature have been developed, such TCCS, SCCS, and TPCCS. ffl ACP [6] =-=[3]-=-. Algebra of Communicating Processes (ACP) was proposed by J.A. Bergstra in 1984. Until now, a rather large variety of ACP has been proposed, such as Real Time ACP(ACP ae ), Discrete Time ACP. ACP is ... |

159 |
A temporal logic for multilevel reasoning about hardware
- Moszkowski
- 1985
(Show Context)
Citation Context ...anguage Z [1] [60]has been integrated with the structured method known as SSADM and ffl extend some formal methods allowing the treatment of non-functional requirements such as timing and probability =-=[10,11,27,46,47,58]-=-. We take the view that a formal method should consist of some essential components: a semantic model, a specification language (notation), a verification system/refinement calculus, development guide... |

157 | Executing temporal logic programs
- Moszkowski
- 1985
(Show Context)
Citation Context ...anguage Z [1] [60]has been integrated with the structured method known as SSADM and ffl extend some formal methods allowing the treatment of non-functional requirements such as timing and probability =-=[10,11,27,46,47,58]-=-. We take the view that a formal method should consist of some essential components: a semantic model, a specification language (notation), a verification system/refinement calculus, development guide... |

154 |
Time and Probability in Formal Design of Distributed Systems
- Hansson
- 1991
(Show Context)
Citation Context ...anguage Z [1] [60]has been integrated with the structured method known as SSADM and ffl extend some formal methods allowing the treatment of non-functional requirements such as timing and probability =-=[10,11,27,46,47,58]-=-. We take the view that a formal method should consist of some essential components: a semantic model, a specification language (notation), a verification system/refinement calculus, development guide... |

108 |
Temporal Logic for Real-Time Systems
- Ostroff
- 1989
(Show Context)
Citation Context ...iodicity, real-time response (deadline), and delays. Early approaches to real-time temporal logics were reported in [51] [5]. Since then, real-time logics have been explored in great detail. ffl RTTL =-=[49]-=- [50]. RTTL (Real-Time Temporal Logic) uses a distinguished temporal domain, the ESM (Extended State Machine) state variables, and the set of ESM transitions to form temporal formula. These are then p... |

99 |
Software Development: A Rigorous Approach
- Jones
- 1980
(Show Context)
Citation Context ...ecification is written in terms of "schemas", each of which contains a signature part which declares items of interest and a predicate part which places a logical constraint on them. ffl VDM=-= [35] [9] [34]-=-. VDM (the Vienna Development Method) is a formal method for rigorous computing system development. It is similar to Z in most aspects, although not as popular as Z. VDM support model composition and ... |

71 |
Specification and Compositional Verification of Real-Time Systems
- Hooman
- 1991
(Show Context)
Citation Context ...ng tool AutoSpec [14] [24]. There is no real-time feature in Hoare Logic. Some extension can be added to make Hoare Logic more suitable for real-time domain. A Real-time Hoare Logic has been proposed =-=[30]-=-. Hoare Logic is one of the mathematical pillars for program verification and formal methods. Hoare Logic and its variants are used in numerous formal methods tools. ffl WP-Calculus [18]. Weakest Prec... |

67 |
Safety analysis using Petri Nets
- Leveson, Stolzy
- 1987
(Show Context)
Citation Context ... large amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net [43] [21] [7] [8] =-=[38]-=- [53]. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri Nets [43]. Both h... |

63 |
A Discipline of Programming, Prentice-Hall
- DIJKSTRA
- 1976
(Show Context)
Citation Context ...been proposed [30]. Hoare Logic is one of the mathematical pillars for program verification and formal methods. Hoare Logic and its variants are used in numerous formal methods tools. ffl WP-Calculus =-=[18]-=-. Weakest Precondition Calculus was first proposed by E. W. Dijkstra in 1976. A precondition describes the initial state of a program, and a postcondition describes the final state. By using the seman... |

52 |
The B Language and Method : A Guide to Practical Formal Development. FACIT
- Lano
- 1996
(Show Context)
Citation Context ...ime domain, novel features have to be added to VDM. VDM also keeps developing: VDM ++ , as a new version of VDM integrated with object-oriented idea, is a rather mature product now. ffl B-Method [36] =-=[37]-=- [62]. The B-method uses the Abstract Machine Notation to support the description of the target systems. The most eminent success of B method is that it already has a strong and quite mature tool B To... |

52 | A case-study in timed refinement: A mine pump
- Mahony, Hayes
- 1992
(Show Context)
Citation Context ...n trying to apply Z to real-time domain, novel features have to be added to Z. However, because of the rich expressibility of Z, Z has been used in a number of real-time applications, such as timed Z =-=[40]-=-. The main users of Z are found in UK and other European countries. Generally speaking, Z has been applied to a large amount of applications, some of which are rather large-scaled. It is one of the fe... |

52 |
Understanding Z
- Spivey
- 1988
(Show Context)
Citation Context ...ification of systems structure. However, recently, there has been a substantial research activities to ffl integrate formal and structured methods, for example the formal specification language Z [1] =-=[60]-=-has been integrated with the structured method known as SSADM and ffl extend some formal methods allowing the treatment of non-functional requirements such as timing and probability [10,11,27,46,47,58... |

43 |
Deciding properties of Timed Transition Models
- Ostroff
- 1990
(Show Context)
Citation Context ...ity, real-time response (deadline), and delays. Early approaches to real-time temporal logics were reported in [51] [5]. Since then, real-time logics have been explored in great detail. ffl RTTL [49] =-=[50]-=-. RTTL (Real-Time Temporal Logic) uses a distinguished temporal domain, the ESM (Extended State Machine) state variables, and the set of ESM transitions to form temporal formula. These are then proven... |

42 |
The Formal Description Technique LOTOS
- Eijk, Diaz
- 1989
(Show Context)
Citation Context ...mantics, it is possible to implement these semantics in an interpreter. LOTOS has "a number of" various support tools, which are although not mature or narrow-aspected, do have some successf=-=ul points [20]-=-. LOTOS does not support real-time specifications. Although a Timed LOTOS has been proposed, it is not proven a suitable formalism for real-time systems. LOTOS has problems in specifying distributed s... |

40 |
Recoverability of communication protocolsâ€“implications of a theoretical study
- Merlin, Farber
- 1976
(Show Context)
Citation Context ...iour. Until now, a large amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net =-=[43]-=- [21] [7] [8] [38] [53]. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri... |

33 |
PROTEAN: A high-level petri net tool for the specification and verification of communication protocols
- Billington, Wheeler, et al.
- 1988
(Show Context)
Citation Context ...w, a large amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net [43] [21] [7] =-=[8]-=- [38] [53]. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri Nets [43]. B... |

27 |
Software Engineering with B
- Wordsworth
- 1996
(Show Context)
Citation Context ...omain, novel features have to be added to VDM. VDM also keeps developing: VDM ++ , as a new version of VDM integrated with object-oriented idea, is a rather mature product now. ffl B-Method [36] [37] =-=[62]-=-. The B-method uses the Abstract Machine Notation to support the description of the target systems. The most eminent success of B method is that it already has a strong and quite mature tool B Toolkit... |

25 |
Proving Real-time Properties of Programs with Temporal Logic
- Bernstein, Harter
- 1981
(Show Context)
Citation Context ...time temporal logics, quantitative properties can also be expressed such as periodicity, real-time response (deadline), and delays. Early approaches to real-time temporal logics were reported in [51] =-=[5]-=-. Since then, real-time logics have been explored in great detail. ffl RTTL [49] [50]. RTTL (Real-Time Temporal Logic) uses a distinguished temporal domain, the ESM (Extended State Machine) state vari... |

22 |
An introduction to OBJ: A language for writing and testing software specifications
- Goguen, Tardo
- 1985
(Show Context)
Citation Context ...ition of operations is given by relating the behaviour of different operations without defining states. Similar to the model-vased approach, no explicit representation of concurrency. Examples ffl OBJ=-=[25]-=-. OBJ is a wide spectrum first-order functional language that is rigorously based on equational logic. This semantics basis supports a declarative, specificational style, facilitates program verificat... |

21 |
A specification-oriented semantics for the refinement of realtime systems
- Scholefield, Zedan, et al.
- 1994
(Show Context)
Citation Context ...he proposed formal re-engineering of existing computing systems, particularly real-time systems. Our extensive experience with the design and use of the Wide Spectrum Language (WSL) [4,16,63] and TAM =-=[10,59,64] have illu-=-strated the practical use of such an approach. In our next research stage, we therefore aim to: 1. develop a single "wide-spectrum" language in which both abstract specifications written in ... |

15 | Refining Interval Temporal Logic Specifications
- Cau, Zedan
- 1997
(Show Context)
Citation Context |

15 |
A Refinement Calculus for Real-Time Systems
- Scholefield
- 1992
(Show Context)
Citation Context ...wn as wide-spectrum formalism. The development of systems in this case is achieved by a set of correctness preserving refinement steps. Examples of these form are TAM [58] and the Refinement Calculus =-=[57]-=-. Examples ffl ITL [11] [47] [46] [10]. ITL (Interval Temporal Logic) has been developed in [11] [48]. This kind of logic is based on intervals of time, thought of as representing finite chunks of sys... |

14 |
Formal Methods for Concurrency
- Fencott
- 1995
(Show Context)
Citation Context ... is also suitable for distributed and concurrent systems. At present, several variations of CCS has been developed, which forms a CCS family. CCS family includes CCS, CCS+, CCS*, SCCS, TCCS and TPCCS =-=[22]-=-. Two underlying concepts of CCS are agents and actions. A CCS model consists of a set of communicating processes (agents in CCS terminology). CCS adopts operational semantics. CCS is a successful for... |

11 |
MW: State-based specification of complex real-time systems
- Gabrielian, Franklin
- 1988
(Show Context)
Citation Context ...e machine. It represents an improved version of the structured methods. A graphic tool called "Statemate" [2] exists to implement the formalism. Methods similar to that of Statecharts may be=-= found in [23]. Statecha-=-rts have been proved to be at least as expressive as state machines, and the succinct justification for them is provided by the following "equation": Statecharts = state-transitions + depth ... |

10 |
Constructing formal specifications from program code
- Cheng, Gannod
- 1991
(Show Context)
Citation Context ...e of reverse engineering, i.e. from source code program to an abstraction at very low level. Some research has been done in this area, such as the development of the reverse engineering tool AutoSpec =-=[14]-=- [24]. There is no real-time feature in Hoare Logic. Some extension can be added to make Hoare Logic more suitable for real-time domain. A Real-time Hoare Logic has been proposed [30]. Hoare Logic is ... |

10 |
The Temporal Logic of Reactive and
- Manna, Pnueli
- 1992
(Show Context)
Citation Context ...opology of time. Various types of semantics can be given to the temporal operators depending on whether time is linear, parallel or branching. Another aspect is whether time is discrete or continuous =-=[41]-=-. Temporal logic is state-based. A structure of states is the key concept that makes temporal logic suitable for system specification. Mainly, the types of temporal semantics include interval semantic... |

9 | Using ITL and Tempura for large scale specification and simulation
- Cau, Zedan, et al.
- 1996
(Show Context)
Citation Context |

9 |
Constraint-Driven Development
- Lano
(Show Context)
Citation Context ...eal-time domain, novel features have to be added to VDM. VDM also keeps developing: VDM ++ , as a new version of VDM integrated with object-oriented idea, is a rather mature product now. ffl B-Method =-=[36]-=- [37] [62]. The B-method uses the Abstract Machine Notation to support the description of the target systems. The most eminent success of B method is that it already has a strong and quite mature tool... |

9 |
TAM: A formal framework for the development of distributed real-time systems
- Scholefield, Zedan
- 1992
(Show Context)
Citation Context |

8 |
A Transformation System for Maintenance --- Turning Theory into Practice
- Bennett, Bull, et al.
- 1992
(Show Context)
Citation Context ...uage approach to the proposed formal re-engineering of existing computing systems, particularly real-time systems. Our extensive experience with the design and use of the Wide Spectrum Language (WSL) =-=[4,16,63] and TAM [-=-10,59,64] have illustrated the practical use of such an approach. In our next research stage, we therefore aim to: 1. develop a single "wide-spectrum" language in which both abstract specifi... |

6 |
Performance Analysis of Timed Petri Nets
- Razouk, Phelps
- 1984
(Show Context)
Citation Context ...e amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net [43] [21] [7] [8] [38] =-=[53]-=-. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri Nets [43]. Both have b... |

5 |
Specification of real-time systems in real-time temporal interval logic
- Narayana, Aaby
- 1988
(Show Context)
Citation Context ...tness preserving refinement steps. Examples of these form are TAM [58] and the Refinement Calculus [57]. Examples ffl ITL [11] [47] [46] [10]. ITL (Interval Temporal Logic) has been developed in [11] =-=[48]-=-. This kind of logic is based on intervals of time, thought of as representing finite chunks of system behaviour. An interval may be divided into two contiguous subintervals, thus leading to chop oper... |

4 |
Rule-Based Design Methodology for Solving Control Problems
- Etessami, Hura
- 1991
(Show Context)
Citation Context ... Until now, a large amount of vanities of Petri Net Theory has been proposed. Generally, petri nets can be classified into ordinary (classic) petri nets and timed petri nets. ffl Timed Petri Net [43] =-=[21]-=- [7] [8] [38] [53]. Petri Net theory was the first concurrent formalisms to deal with real-time. Two basic timed versions of Petri nets have been introduced: Timed petri Nets [124] and Time Petri Nets... |

4 | Wors. The algebraic specification language lotos: an industrial experience
- Logrippo, Melanchuk, et al.
- 1990
(Show Context)
Citation Context ...aph semantics, and adopts bisimulation proof system. ACP allows a variety of communication paradigms, including ternary communication, through the choice of the communication function. ffl LOTOS [32] =-=[39]-=-. LOTOS (Language Of Temporal Ordering Specification) was developed to define implementation-independent formal standards of OSI services and protocols. LOTOS has two very clearly separated parts. The... |

4 | An executable specification language for fast prototyping parallel responsive systems
- HEPING, H
- 1996
(Show Context)
Citation Context ...he proposed formal re-engineering of existing computing systems, particularly real-time systems. Our extensive experience with the design and use of the Wide Spectrum Language (WSL) [4,16,63] and TAM =-=[10,59,64] have illu-=-strated the practical use of such an approach. In our next research stage, we therefore aim to: 1. develop a single "wide-spectrum" language in which both abstract specifications written in ... |

3 |
Strongest Postcondition Semantics as a Basis for Reverse Engineering
- Gannod, Cheng
- 1995
(Show Context)
Citation Context ...reverse engineering, i.e. from source code program to an abstraction at very low level. Some research has been done in this area, such as the development of the reverse engineering tool AutoSpec [14] =-=[24]-=-. There is no real-time feature in Hoare Logic. Some extension can be added to make Hoare Logic more suitable for real-time domain. A Real-time Hoare Logic has been proposed [30]. Hoare Logic is one o... |

3 |
A Compositional Semantics for Statecharts
- Hooman, Ramesh, et al.
- 1989
(Show Context)
Citation Context ... with each transition in a TPN. A state in the reachability graph is a tuple consisting of a marking, and a vector of possible firing intervals of enabled transitions in that marking. ffl Statecharts =-=[31]. Statecha-=-rts [31] provides an abstraction mechanism based on finite state machine. It represents an improved version of the structured methods. A graphic tool called "Statemate" [2] exists to impleme... |

3 |
Aquairing Entity-Relationship Attribute Diagrams from Code and Data through Program Transformation
- Yang, Bennett
- 1995
(Show Context)
Citation Context ...uage approach to the proposed formal re-engineering of existing computing systems, particularly real-time systems. Our extensive experience with the design and use of the Wide Spectrum Language (WSL) =-=[4,16,63] and TAM [-=-10,59,64] have illustrated the practical use of such an approach. In our next research stage, we therefore aim to: 1. develop a single "wide-spectrum" language in which both abstract specifi... |

2 |
Modal Logic: An Introduction
- Chllas
- 1980
(Show Context)
Citation Context ...e logic and other suitable formal logics, WP-Calculus has been proven to be a formalism suitable for reverse engineering of source code, especially at the low abstraction levels. ffl Modal Logic [42] =-=[15]-=-. Modal logic is the study of context-dependent properties such as necessity and possibility. In modal logic, the meaning of expressions depends on an implicit context, abstracted away from the object... |