Page 341 -
P. 341
312 PART THREE CONVENTIONAL METHODS FOR SOFTWARE ENGINEERING
and output to each refinement must remain the same. This concept, sometimes called
balancing, is essential for the development of consistent models. Further refinement
of f depicts detail in the form of transforms f 41 to f . Again, the input (X, Y) and out-
4
45
Although information
flow continuity must put (Z) remain unchanged.
be maintained, The basic notation used to develop a DFD is not in itself sufficient to describe
recognize that a data requirements for software. For example, an arrow shown in a DFD represents a data
item represented at object that is input to or output from a process. A data store represents some orga-
one level may be
refined into its nized collection of data. But what is the content of the data implied by the arrow or
constituent parts at the depicted by the store? If the arrow (or the store) represents a collection of objects,
next level. what are they? These questions are answered by applying another component of the
basic notation for structured analysis—the data dictionary. The use of the data dic-
tionary is discussed later in this chapter.
DFD graphical notation must be augmented with descriptive text. A process spec-
ification (PSPEC) can be used to specify the processing details implied by a bubble
within a DFD. The process specification describes the input to a function, the algo-
rithm that is applied to transform the input, and the output that is produced. In addi-
tion, the PSPEC indicates restrictions and limitations imposed on the process (function),
performance characteristics that are relevant to the process, and design constraints
that may influence the way in which the process will be implemented.
12.4.2 Extensions for Real-Time Systems
Many software applications are time dependent and process as much or more con-
trol-oriented information as data. A real-time system must interact with the real world
in a time frame dictated by the real world. Aircraft avionics, manufacturing process
control, consumer products, and industrial instrumentation are but a few of hundreds
of real-time software applications.
To accommodate the analysis of real-time software, a number of extensions to the
basic notation for structured analysis have been defined. These extensions, devel-
oped by Ward and Mellor [WAR85] and Hatley and Pirbhai [HAT87] and illustrated in
the sections that follow, enable the analyst to represent control flow and control pro-
cessing as well as data flow and processing.
12.4.3 Ward and Mellor Extensions
Ward and Mellor [WAR85] extend basic structured analysis notation to accommodate
the following demands imposed by a real-time system:
• Information flow is gathered or produced on a time-continuous basis.
• Control information is passed throughout the system and associated control
processing.

