Specification and Development of Interactive Systems Focus on Streams, Interfaces, and Refinement

This book presents a fundamental mathematical and logical approach to soft­ ware and systems engineering. Considering the large number of books de­ scribing mathematical approaches to program development, it is important to explain what we consider to be the specific contribution of our book, to ide...

Full description

Bibliographic Details
Main Authors: Broy, Manfred, Stølen, Ketil (Author)
Format: eBook
Language:English
Published: New York, NY Springer New York 2001, 2001
Edition:1st ed. 2001
Series:Monographs in Computer Science
Subjects:
Online Access:
Collection: Springer Book Archives -2004 - Collection details see MPG.ReNa
Table of Contents:
  • 13.1 Black-Box Description
  • 13.2 Distributed Implementation
  • 14. Refinement
  • 14.1 Behavioral Refinement
  • 14.2 Interface Refinement
  • 14.3 Conditional Refinement
  • 14.4 Verification
  • 14.5 Glass-Box Refinement
  • 14.6 Development Method
  • 15. Behavioral Refinement
  • 15.1 Definition
  • 15.2 Simple Examples
  • 15.3 Logical Properties
  • 15.4 More Examples
  • 15.5 Synchronizing the Communication
  • 16. Interface Refinement
  • 16.1 Definition
  • 16.2 A Priming Convention for Channel Identifiers
  • 16.3 Simple Examples
  • 16.4 Methodological Issues
  • 16.5 Logical Properties
  • 16.6 More Examples
  • 16.7 Generalizing Interface Refinement
  • 17. Conditional Refinement
  • 17.1 Definition
  • 17.2 Simple Examples
  • 17.3 Logical Properties
  • 17.4 More Examples
  • 18. Final Remarks
  • 18.1 How Our Approach Generalizes
  • 18.2 What We Did Not Cover
  • A. Operators for Stream Tuples
  • A.l Generalized Operators
  • A.2 Tuple Filtering Operator
  • A.3 Timed Filtering Operator
  • 1. Introduction
  • 1.1 Systems
  • 1.2 Specifications
  • 1.3 Refinement
  • 1.4 Application Domains
  • 1.5 Development Process and Methodology
  • 1.6 Rationale of Focus
  • 1.7 Overview of the Book
  • 1.8 How the Book Should Be Read
  • 2. A Guided Tour
  • 2.1 Plan for the Tour
  • 2.2 Station 1: Unbounded Buffer
  • 2.3 Station 2: Unbounded Lossy Buffer
  • 2.4 Station 3: Driver
  • 2.5 Station 4: Composite Specifications
  • 2.6 Station 5: Time-Sensitive Buffer
  • 2.7 Station 6: Timed Lossy Buffer
  • 2.8 Station 7: Timed Driver
  • 2.9 Station 8: Timed Composite Specification
  • 3. Basics
  • 3.1 Sets
  • 3.2 Tuples
  • 3.3 Functions
  • 3.4 Types
  • 3.5 Logic
  • 4. Streams
  • 4.1 Formal Definition of Streams
  • 4.2 Basic Operators on Streams
  • 4.3 Additional Operators on Streams
  • 4.4 Formal Definition of Timed Streams
  • 4.5 Operators on Timed Streams
  • 5. Specifications
  • 5.1 Classification of Specifications
  • 5.2 Elementary Specifications
  • 5.3 Composite Specifications
  • 5.4 Black-Box and Glass-Box Views
  • 5.5 Parameterized Specifications
  • 5.6 Sheafs and Replications
  • 6. Examples
  • 6.1 Alternating Bit Protocol
  • 6.2 Steam Boiler
  • 6.3 Memory Components
  • 7. Properties of Specifications
  • 7.1 Safety and Liveness Properties
  • 7.2 Realizability
  • 7.3 Causality for Specifications
  • 8. Equational Specification of State Transitions
  • 8.1 I/O Transitions
  • 8.2 Local States
  • 8.3 Control States
  • 8.4 Oracles
  • 9. Access Control System
  • 9.1 System Architecture
  • 9.2 Functional Properties of the Controllers
  • 9.3 Introducing Exception Handling
  • 9.4 Imposing Timing Constraints
  • 10. Tables and Diagrams
  • 10.1 State Transition Tables
  • 10.2 State Transition Diagrams
  • 10.3 Semantics of State Transition Tables and Diagrams
  • 11. Abracadabra Protocol
  • 11.1 Informal Specification
  • 11.2 Formalization
  • 12. A/G Specifications
  • 12.1 Simple Examples
  • 12.2 Semantics
  • 12.3 More Examples
  • 13. Memory with Locking
  • B. Glossary of Terms
  • B.l Sets
  • B.2 Tuples
  • B.3 Functions
  • B.4 Types
  • B.5 Logic
  • B.6 Arithmetics
  • B.7 Streams
  • B.8 Tuples of Streams
  • B.9 Specifications
  • B.10 Strategies