Modeling Software with Finite State Machines: A Practical Approach, 1st Edition (Hardback) book cover

Modeling Software with Finite State Machines

A Practical Approach, 1st Edition

By Ferdinand Wagner, Ruedi Schmuki, Thomas Wagner, Peter Wolstenholme

Auerbach Publications

390 pages | 195 B/W Illus.

Purchasing Options:$ = USD
Hardback: 9780849380860
pub: 2006-05-15
eBook (VitalSource) : 9780429121371
pub: 2006-05-15
from $28.98

FREE Standard Shipping!


Modeling Software with Finite State Machines: A Practical Approach explains how to apply finite state machines to software development. It provides a critical analysis of using finite state machines as a foundation for executable specifications to reduce software development effort and improve quality. This book discusses the design of a state machine and of a system of state machines. It also presents a detailed analysis of development issues relating to behavior modeling with design examples and design rules for using finite state machines.

This volume describes a coherent and well-tested framework for generating reliable software for even the most complex tasks. The authors demonstrate that the established practice of using a specification as a basis for coding is wrong. Divided into three parts, this book opens by delivering the authors' expert opinions on software, covering the evolution of development as well as costs, methods, programmers, and the development cycle. The remaining two parts encourage the use of state machines: promoting the virtual finite state machine (Vfsm) method and the StateWORKS development tools.

Table of Contents

The Problems of Software

Evolution of Software Development

The Price of Weakness

Software as Engineering?

Finite State Machines

Introduction, Definitions, and Notation

Hardware Applications

Software Specific

Misunderstandings about FSM

Designing a State Machine

Systems of State Machines

StateWORKS: Principles and Practice


Digital Input and Output

Other Inputs

Other Outputs


VFSM and Its Interfaces

Debugging Vfsm

What Is StateWORKS?


Case Studies

Microwave Oven Control - Use of StateWORKS Development Tools

Gas Control - Hierarchical System of State Machines

Dining Philosophers Problem

Going Beyond the Limitations of IEC 61131-3

Traffic Light Control - Design of the Hardware Solution

Coding Finite State Machine - Vending Machine Counter Example

IOD File of the StandardUnit

StateWORKS Projects

Vending Machine Counter Project

Pedestrian Traffic Light Project

Pumps Supervision Project

Output Function CalcLimits( )

Traffic Light Project

DI_DO Project

Other_Inputs Project

Other_Outputs Project

Counters Project

Attributes of RTDB Objects

StateWORKS Tools and Components

Subject Categories

BISAC Subject Codes/Headings:
COMPUTERS / Software Development & Engineering / General