SAFIRE is a design metholology for designing finite state machines (FSMs). Although SAFIRE incorporates powerful design techniques, it
uses the simplest, useful set of modelling concepts. There are two
main concepts to start with:
-- FSMs and their connections are presented as labeled blocks and lines
-- The internal behavior of an FSM is presented symbolically as a
flow diagram

A key (and unique) consideration behind SAFIRE is for all
information to be suitable for fully automated graphical formatting
and are fully editable in graphical form. The backbone of designs is
represented as a tree allowing quick navigation to all information
defined in a project.
Also, because of the way the SAFIRE methodology has been designed,
the valid choices at any point can be presented to the user,
preventing false information from being entered from the start. For
instance, if the user chooses to send a signal, a list of signals
defined in the scope of the current FSM is offered.
This section describes the basic modelling concepts, including the
data types, and explains the symbols used in the graphical representation.