Modeling and Verification Using UML Statecharts: A Working Guide to Reactive System Design, Runtime Monitoring and Execution-based Model Checking

Doron Drusinsky

  • 出版商: Newnes
  • 出版日期: 2006-04-03
  • 售價: $2,240
  • 貴賓價: 9.5$2,128
  • 語言: 英文
  • 頁數: 400
  • 裝訂: Hardcover
  • ISBN: 0750679492
  • ISBN-13: 9780750679497
  • 相關分類: UML
  • 立即出貨 (庫存=1)




As systems being developed by industry and government grow larger and more complex, the need for superior specification and verification approaches and tools becomes increasingly vital. The developer and customer must have complete confidence that the design produced is correct, and that it meets forma development and verification standards. In this text, UML expert author Dr. Doron Drusinsky compiles all the latest information on the application of UML (Universal Modeling Language) statecharts, temporal logic, automata, and other advanced tools for run-time monitoring and verification. This is the first book that deals specifically with UML verification techniques. This important information is introduced within the context of real-life examples and solutions, particularly focusing on national defense applications. A practical text, as opposed to a high-level theoretical one, it emphasizes getting the system developer up-to-speed on using the tools necessary for daily practice.


Table of Contents

Chapter 1: Formal Requirements and Finite Automata Overview 1.1. Terms 1.2. Finite Automata: The Basics 1.3 Regular Expressions 1.4. Deterministic Finite Automata and Finite State Diagrams 1.5. Nondeterministic Finite Automata 1.6. Other Forms of FA 1.7. FA Conversions and Lower Bounds 1.8. Operations on Regular Requirements 1.9. Succinctness of FA 1.10. Specifications as Zipped Requirements 1.11. Finite State Machines 1.12. Normal Form and Minimization of FA and FSMs Chapter 2: Statecharts 2.1. Transformational vs. Reactive Components 2.2. Statecharts in Brief 2.3. A Related Tool 2.4. Basic Elements of Statecharts 2.5. Code Generation and Scheduling 2.6. Event-Driven Statecharts, Procedural Statecharts and Mixed Flowcharts and Statecharts 2.7. Flowcharts inside Statecharts: Workflow within Event-Driven Controllers 2.8. Nonstandard Elements of Statecharts 2.9. Passing Data to a Statechart Controller 2.10. JUnit Testing of Statechart Objects 2.11. Statecharts vs. Message Sequence Charts and Scenarios 2.12. Probabilistic Statecharts Chapter 3: Academic Specification Languages for Reactive Systems 3.1. Natural Language Specifications 3.2. Using Specification Languages for Runtime Monitoring 3.3. Linear-time Temporal Logic (LTL) 3.4. Other Formal Specification Languages for Reactive Systems Chapter 4: Using Statechart Assertions for Formal Specification 4.1. Statechart Specification Assertions 4.2. Nondeterministic Statechart Assertions 4.3. Operations on Assertions 4.4. Quantified Distributed Assertions 4.5. Runtime Recovery for Assertion Violations 4.6. The Language Dog-Fight: Statechart Assertions vs. LTL and ERE 4.7. Succinctness of Pure Statechart Assertions 4.8. Temporal Assertions vs. JML and Java Assertions 4.9. Commonly Used Assertions Chapter 5: Creating and Using Temporal Statechart Assertions 5.1. Motivation, or Why Use Temporal Assertions? 5.2. Applying Assertions: Three Uses 5.3. Writing Assertions 5.4. Runtime Execution Monitoring?Runtime Verification 5.5. Runtime Recovery from Requirement Violations 5.6. Automatic Test Generation 5.7. Execution-Based Model Checking Chapter 6: Application of Formal Specifications and Runtime Monitoring to the Ballistic Missile Defense Project 6.1. Abstract 6.2. Context 6.3. Formal Specification and Verification Approach. 6.4. Overall Value 6.5. Challenges Appendix: TLCharts: Syntax and Semantics A.1. About TLCharts A.2. Syntax A.3. Semantics without Temporal Conditions A.4. Semantics with Temporal Conditions A.5. TLCharts with Overlapping States Bibliographical Notes Index