Specification and Development of Interactive Systems

Focus on Streams, Interfaces, and Refinement
 Paperback

60,10 €*

Alle Preise inkl. MwSt.|Versandkostenfrei
ISBN-13:
9781461265184
Veröffentl:
2012
Einband:
Paperback
Erscheinungsdatum:
17.10.2012
Seiten:
368
Autor:
Ketil Stølen
Gewicht:
557 g
Format:
235x155x20 mm
Serie:
Monographs in Computer Science
Sprache:
Englisch
Beschreibung:

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 identify our goals, and to characterize our intended target audience. Most books dealing with the mathematics and logics of programming and system development are mainly devoted to programming in the small. This is in contrast to our book where the emphasis is on modular system development with the help of component specifications with precisely identified interfaces and refinement concepts. Our book aims at systems development carried out in a systematic way, based on a clear mathematical theory. We do not claim that this book presents a full-blown engineering method. In fact, this is certainly not a book for the application-driven software engi­ neer looking for a practical method for system development in an industrial context. It is much rather a book for the computer scientist and the scientifi­ cally interested engineer who looks for basic principles of system development and, moreover, its mathematical foundations. It is also a book for method builders interested in a proper mathematical foundation on which they can build a practical development method and industrial-strength support tools.
This book presents a mathematical and logical approach to program and software development suitable for large, distributed systems. The emphasis is on modular system development, and systems engineering, and it explains how software systems can be developed in a systematic way based on mathematical and scientific principles and using well defined interfaces. An essential resource for all researchers and professionals in computer science, software systems engineering and computer engineering.
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.- 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.- 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.

Kunden Rezensionen

Zu diesem Artikel ist noch keine Rezension vorhanden.
Helfen sie anderen Besuchern und verfassen Sie selbst eine Rezension.

Google Plus
Powered by Inooga