Page 348 -
P. 348

CHAPTER 12  ANALYSIS MODELING                                      319

                      12.6    THE MECHANICS OF STRUCTURED ANALYSIS

                              In the previous section, we discussed basic and extended notation for structured
                              analysis. To be used effectively in software requirements analysis, this notation must
               The analysis model  be combined with a set of heuristics that enable a software engineer to derive a good
               allows a reviewer to  analysis model. To illustrate the use of these heuristics, an adapted version of the
               examine software
               requirements from  Hatley and Pirbhai [HAT87] extensions to the basic structured analysis notation will
               three different points  be used throughout the remainder of this chapter.
               of view. Therefore, be  In the sections that follow, we examine each of the steps that should be applied
               certain to use ERDs,  to develop complete and accurate models using structured analysis. Through this dis-
               DFDs, and STDs when
               you build the model.  cussion, the notation introduced in Section 12.4 will be used, and other notational
                              forms, alluded to earlier, will be presented in some detail.

                              12.6.1 Creating an Entity/Relationship Diagram
                              The entity/relationship diagram enables a software engineer to fully specify the data
                              objects that are input and output from a system, the attributes that define the prop-
                              erties of these objects, and their relationships. Like most elements of the analysis
                              model, the ERD is constructed in an iterative manner. The following approach is
                              taken:

                ?  What steps  1. During requirements elicitation, customers are asked to list the “things” that
                   are required
                                   the application or business process addresses. These “things” evolve into a
                to build an ERD?   list of input and output data objects as well as external entities that produce
                                   or consume information.
                               2. Taking the objects one at a time, the analyst and customer define whether or
                                   not a connection (unnamed at this stage) exists between the data object and
                                   other objects.
                               3. Wherever a connection exists, the analyst and the customer create one or
                                   more object/relationship pairs.
                               4. For each object/relationship pair, cardinality and modality are explored.
                               5. Steps 2 through 4 are continued iteratively until all object/relationships have
                                   been defined. It is common to discover omissions as this process continues.
                                   New objects and relationships will invariably be added as the number of iter-
                                   ations grows.
                               6. The attributes of each entity are defined.
                               7. An entity relationship diagram is formalized and reviewed.
                               8. Steps 1 through 7 are repeated until data modeling is complete.

                                To illustrate the use of these basic guidelines, the SafeHome security system exam-
                              ple, discussed in Chapter 11, will be used. Referring back to the processing narrative
   343   344   345   346   347   348   349   350   351   352   353