E-Book, Englisch, 215 Seiten
Jorgensen Modeling Software Behavior
1. Auflage 2011
ISBN: 978-1-4200-8076-6
Verlag: Taylor & Francis
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)
A Craftsman's Approach
E-Book, Englisch, 215 Seiten
ISBN: 978-1-4200-8076-6
Verlag: Taylor & Francis
Format: PDF
Kopierschutz: Adobe DRM (»Systemvoraussetzungen)
A common problem with most texts on requirements specifications is that they emphasize structural models to the near exclusion of behavioral models—focusing on what the software is, rather than what it does. If they do cover behavioral models, the coverage is brief and usually focused on a single model. Modeling Software Behavior: A Craftsman’s Approach provides detailed treatment of various models of software behavior that support early analysis, comprehension, and model-based testing.
Based on the popular and continually evolving course on requirements specification models taught by the author at universities and corporate environments, the text covers six behavioral models—providing the background behind these models and the required mathematics. As evidence of models at work, the author introduces eleven continuing examples. Five of these examples are illustrated with the six models, allowing readers to easily compare the expressive power of the various models. The examples chosen reflect a wide variety of behavioral issues.
Providing complete coverage that includes flowcharts, decision tables, finite state machines, two variations of Petri Nets, and StateCharts, this book will help students develop the understanding of the expressive capabilities and limitations of models of system behavior needed to make informed and appropriate choices among different models when confronted with new challenges.
Zielgruppe
Upper-level undergraduate and graduate students in software and electrical engineering.
Autoren/Hrsg.
Fachgebiete
Weitere Infos & Material
Issues in Behavior Modeling
Views of Models
Models of Software
Traditional Goals
Consistemcy
Completeness
Clarity
Appropriate Goals
Executability
Provocation
Processability
Modeling Dichotomies
Analysis/Synthesis
Composition/Decomposition
Prescribed/Proscribed Behavior
Is/Does
Fundamental Elements of Modeling
Data
Actions
Events
Threads
Propositions
Other Issues
Size and Complexity
Time
Concurrency
Math Background
Graphs
Degree of a Node
Incidence Matrices
Adjacency Matrices
Connectedness
Condensation Graphs
Cyclomatic Number
Directed Graphs
Indegrees and Outdegrees
Types of Nodes
Adjacency Matrix of a Directed Graph
Paths and Semipaths
Reachability Matrix
n-Connectedness
Strong Components
Model-Based Testing
Examples
Issues in Behavior Modeling
Structured Programming Constructs
Task Management
Events
Context-Sensitive Input Events
Multiple-Context Output Events
Discrete and Continuous Events
Event Orders
Continuing Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Espresso Vending Machine (Full Version)
Espresso Vending Machine (Six-Coin Version)
Smart Fuel Pump
Saturn Windshield Wiper Controller
Examples for Readers
Windchill Factor Table
The Previous Date Function
Saturn Cruise Control
Programmable Thermostat
Railroad Crossing Gate Controller
The Pizza Robot
Issues in the Examples
Flowcharts
Definition and Notation
Technique
Continuing Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Selected Examples for Readers
Saturn Cruise Control
The Pizza Robot
Advantages and Limitations
Decision Tables
Definition and Notation
Decision Table Analysis
Decision Table Condensation
Decision Tables with Mutually Exclusive Conditions
Redundant and Inconsistent Decision Tables
Continuing Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
First Try
Second Try
Third Try
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Decision Table Engines
Advantages and Limitations
Finite State Machines
Definition and Notation
Technique
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Finite State Machine Engines
Advantages and Limitations
Petri Nets
Definition and Notation
Transition Enabling and Firing
Petri Net Conflict
The Producer–Consumer Problem
Technique
Sequence, Selection, and Repetition
Enable, Disable, and Activate
Trigger
Suspend, Resume, and Pause
Conflict and Priority
Mutual Exclusion
Synchronization
Some Consequences of Marking and Enabling
Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Petri Net Engines
Advantages and Limitations
Event-Driven Petri Nets
Definition and Notation
Transition Enabling and Firing
Context-Sensitive Input Events
Multiple-Context Output Events
Event Quiescence
Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Saturn Windshield Wiper Controller
Event-Driven Petri Net Engines
Advantages and Limitations
Statecharts
Definition and Notation
Technique
Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Statechart Engines
Advantages and Limitations
Object-Oriented Models
Notation and Technique
Use Case Diagrams
Activity Diagrams
State Machine Diagrams
Sequence Diagrams
Examples
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
Advantages and Limitations
Model Comparisons
Selecting an Appropriate Model
Simplified U.S. 1040EZ Income Tax Form
The NextDate Function
Espresso Vending Machine
Smart Fuel Pump
Saturn Windshield Wiper Controller
A Formal Consolidation of Executable Models
Modus Ponens
Casting a Decision Table into a Propositional Syllogism
Casting a Finite State Machine into a Propositional Syllogism
Casting an Event-Driven Petri Net into a Propositional Syllogism
Casting a Statechart into a Propositional Syllogism
Benefits of the Formalism
Acknowledgment