Formal Aspects of Procedures
Formal Aspects of Procedures
Michael Shafto
NASA Ames Research Center, Moffett Field, CA.
Mshafto@mail.arc.nasa.gov
In complex human-machine systems, successful airline’s abnormal procedure for coping with asymmetrical-
operations depend on an elaborate set of procedures provided flap-extension (which can have a significant effect on lateral
to the human operator. These procedures specify a detailed control of the aircraft) had to be rewritten when it was found to
step-by-step process for configuring the machine during be inaccurate. The problem? The power supply for activating
normal, abnormal, and emergency situations. The adequacy of the flaps following asymmetrical flap extension, was different
these procedures is vitally important for the safe and efficient from the standard configuration for this model aircraft. The
operation of any complex system. In high-risk endeavors such airline that originally specified the non-standard power supply
as aircraft operations, maritime, space flight, nuclear power configuration failed to modify the procedure accordingly.
production, and military operations, it is essential that these (The inaccurate procedure was in effect for some five years
procedures be flawless, as the price of error may be before it was detected).
unacceptable. When operating procedures are inadequate for Based on our survey of several U.S. airlines, we have
the task, not only will the system’s overall efficiency be noted that the process of designing a procedure is
thwarted, but there may also be tragic human and material accomplished informally. That is, a Flight Manager and/or
consequences (Degani and Wiener, 1993). several experienced pilots discuss and then (re)-design the
In commercial aviation, for example, crew interaction procedure based on their knowledge, experience, and intuition.
with the aircraft is specified through a set of Standard Once the procedure is reviewed by the regulating agency’s
Operating Procedures (SOPs) (Federal Aviation (e.g., FAA’s) inspector, the procedure is approved, accepted,
Administration, 1995). In the event of a normal task (e.g., and provided to all flight crews. Other industries that we
configuration of the aircraft before takeoff), an abnormal surveyed, such as nuclear power, maritime, and space, use
condition (e.g., high engine temperature on start-up), or an similar procedural design processes.
emergency situation (e.g., engine fire), procedures are set in We believe that current procedural design processes
place to support the crew in managing the situation. should be augmented with an in-depth evaluation of the
Procedures assist the crew along a path of pre-defined procedure in terms of its [1] sequential correctness, [2] ability
sequences of actions; the objective is to quickly “drive” the to deal with out-of-norm configurations, [3] compatibility with
system to some safe, yet still efficient, configuration. It must the user interface, [4] vulnerability to human error, [5]
be recognized, however, that an unpredictable constellation of capability of meeting the demands from the operational
circumstances including machine (e.g., component failure), environment, and [6] consistency with other procedures and
human (e.g., making a mistake), and environmental factors policies. In this paper we suggest an approach for describing
(e.g., low ambient temperature) can interfere with operations and analyzing procedures in terms of sequential correctness.
and lead to a sub-optimal configuration (see Mosier, Palmer,
and Degani, 1992, for one example). APPROACH AND LANGUAGE
From the organization’s point of view, a procedure Procedures constitute sequential execution trees (i.e.,
represents a collective agreement on the “best” way to achieve conditional instruction sequences) of user interaction with the
both safe and efficient operations (Wieringa, Moore, and machine. Their aim is to guide the user in operating the
Barnes, 1992). Nevertheless, there are many documented machine correctly and reliably, so as to achieve well-defined
cases in which the procedures provided to the crews are not task goals and specifications. It is quite clear that in order to
the “best” (Degani and Wiener, 1997). For example, one U.S. formulate a correct and efficient operational procedure, the
procedure designer must have a clear and unambiguous so-called AND state, separated by a dotted line (Figure 1b).
understanding of the machine’s behavior under all (relevant) The resulting super-state S is an abstraction of the two
operating conditions. concurrent processes X and E. Process X is made up of two
The approach proposed in the present paper is aimed at sub-states Y and Z, and process E is identical to the process in
enhancing current practice by augmenting it with a formal Figure 1a. The question as to which sub-state is initially
mathematical methodology that provides a systematic method occupied when entering super-state S is resolved by the small
for procedure “synthesis.” Two elements must be in place to default arrows ( ), which point to states Y and A.
perform such synthesis: [1] a formal model of the machine’s
behavior and [2] a formal representation of the procedure's S
task goals. Such a model can be based on any one of several X E
existing or emerging modeling formalisms for (untimed) D
discrete-event systems or (timed) hybrid-systems (Ramadge h
and Wonham, 1987; Heymann, Lin and Meyer, 1997). g
Our objective is to develop formal approaches for Y
designing and evaluating procedures (see Degani and FALSE
f [P] C1 A
Heymann, 1999, for a similar approach for evaluating u
interfaces). The focus of this paper is on the sequential v/g
TRUE
correctness problem. From a theoretical standpoint, we strive
for an approach that describes the human-machine- Z e
environment system and its many embedded interactions in a B
clear (e.g., mathematical) language that allows for a detailed
description, synthesis, and analysis. From a practical
standpoint, we seek an approach that provides a reliable design Figure 1b. Concurrency and broadcast.
process, e.g., such that fixing one procedural deficiency will
not generate another deficiency somewhere else—a well- The real subtlety with which Statecharts models
known and common problem in procedure development. concurrency is in its treatment of output events, or actions.
Language Here the machine can generate actions to change its own
configuration. Consider process X in Figure 1b: When event v
The foundation of our approach is a formal description of occurs and the transition labeled v/g is taken, the action g (an
the human-machine system in terms of its behavior. We use output event, denoted with a hat) is immediately activated.
the Finite-State-Machine theory to model system behavior. This event is broadcast to the entire network, and perhaps
The following is a brief description of two graphical causes further transitions in other processes. And indeed, in
representations of this theory: the State Transition Diagrams process E, action g will cause a transition out of state D (into
and the more modern Statecharts formalism (Harel, 1987). A or B depending on how condition C1 is evaluated).
In Figure 1a we have three states A, B, and D (depicted as The ability to arrange processes in a concurrent manner
rounded squares) and several transitions (depicted as arcs). and to broadcast information among processes sums up two
important features of the Statecharts language. These features
of Statecharts allows us to describe the behavior of a system in
D a clear and concise way. Below, we will use the Statecharts
h language to describe one human-machine system.
g
EVALUATION
FALSE A To illustrate our approach we evaluate an abnormal
f [P] C1
procedure used in commercial aviation. In evaluating this
TRUE human-machine-environment system, we [1] describe the
machine and procedure, [2] model the system, [3] define the
e
task goals and specifications, and [4] analyze the necessary
B sequence of events to execute this procedure.
Figure 1a. State-transition-diagram. Machine and Procedure
Normal engine start in the Boeing B-757 aircraft follows
The symbols e, f, g, and h stand for events that trigger this sequence of actions: engagement of the engine starter,
transitions among the machine’s states. The bracketed [P] is a opening of the fuel control switch once the engine is at the
condition, such that the transition from state B to D takes place appropriate speed, and automatic cut-out of the engine starter
when event f occurs and condition P is TRUE (at the same once the engine is running on its own. In the case of abnormal
time). C1 is also a condition such that when g occurs and C1 is start events–such as when the engine is not starting after starter
evaluated FALSE, the machine transitions to A; if C1 is engagement and application of fuel, a high engine temperature
evaluated TRUE, the machine transitions to B. on start-up, or pneumatic or electrical supply interruption–the
The first Statecharts enrichment is concurrency of pilots are instructed to follow a prescribed procedure. The
processes. Two related processes can be placed together in a procedure, the IRREGULAR ENGINE START for aircraft,
specifies the sequence of immediate actions that must be Fuel Control Sw itch
performed by the crew to avoid further damage to the engine Engine
HIG H clo se
T EM P ROT ATI NG
and to shut it down properly. Figure 2 is a copy of the
OFF
procedure as it appears in the pilots’ manual.
run /op en
cu t-o ff/cl ose
gro un d-starte r
ON
IMMEDIATE ACTION
Engin e Start Se lecto r {(t >= 30 sec.).and.
(temp < 1 80) } .a nd. OFF
gn d/g rou nd -sta rter
FUEL CONTROL SWITCH . . . . . . . . . . . . . . . CUTOFF o pe n
ENGINE START SELECTOR. . . . . . . . . . . . . . . . GND AUTO OFF MO TORING I DLE
Motor for 30 seconds or until EGT is below 180, whichever is GND C ONT o pe n gro un d-sta rte r
longer (unless no oil pressure).
FLT
NO RM AL
NOTE cl ose