Page 317 -
P. 317

288           PART THREE  CONVENTIONAL METHODS FOR SOFTWARE ENGINEERING


         FIGURE 11.5                        SafeHome software
         Vertical
         partitioning of
         SafeHome
         function       Configure system      Monitor sensors      Interact with user



                                       Poll for           Activate
                                      sensor event      alarm functions




                        Read     Identify  Activate/  Activate       Dial
                       sensor    event    deactivate   audible      phone
                        status    type     sensor      alarm        number



                       11.3.4  Essential and Implementation Views 7

                       An essential view of software requirements presents the functions to be accomplished
                       and information to be processed without regard to implementation details. For exam-
                       ple, the essential view of the SafeHome function read sensor status does not concern
         Avoid the temptation
         to move directly to the  itself with the physical form of the data or the type of sensor that is used. In fact, it
         implementation view,  could be argued that read status would be a more appropriate name for this func-
         assuming that the  tion, since it disregards details about the input mechanism altogether. Similarly, an
         essence of the  essential data model of the data item phone number (implied by the function dial
         problem is obvious.
         Specifying    phone number) can be represented at this stage without regard to the underlying data
         implementation detail  structure (if any) used to implement the data item. By focusing attention on the essence
         too quickly reduces  of the problem at early stages of requirements engineering, we leave our options
         your options and  open to specify implementation details during later stages of requirements specifi-
         increases risk.
                       cation and software design.
                          The implementation view of software requirements presents the real world mani-
                       festation of processing functions and information structures. In some cases, a phys-
                       ical representation is developed as the first step in software design. However, most
                       computer-based systems are specified in a manner that dictates accommodation of
                       certain implementation details. A SafeHome input device is a perimeter sensor (not
                       a watch dog, a human guard, or a booby trap). The sensor detects illegal entry by
                       sensing a break in an electronic circuit. The general characteristics of the sensor
                       should be noted as part of a software requirements specification. The analyst must
                       recognize the constraints imposed by predefined system elements (the sensor) and
                       consider the implementation view of function and information when such a view is
                       appropriate.

                       7  Many people use the terms logical and physical views to connote the same concept.
   312   313   314   315   316   317   318   319   320   321   322