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.
   336   337   338   339   340   341   342   343   344   345   346