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.