UNDERSTANDING DATA-STRUCTURES IN A SYSTEMS ANALYSIS AND DESIGN COURSE Mohammad A. Rob, University of Houston-Clear Lake rob@cl.uh.edu ABSTRACT Understanding the role of data structures in the data flow diagram is important in designing the essential components of an information system. Most Systems Analysis and Design textbooks describe data structures in the data dictionary, and often fail to clarify how data structures are associated with the various components of a data flow diagram. The purpose of this paper is to present some illustrations that would not only enhance the understanding of data structures associated with the data flow diagram, but would also clarify the role of data structure in the design of the input, output, program modules, and data storage components of an information system. INTRODUCTION Systems Analysis and Design (SAD) is a course that provides an understanding of the concepts, skills, methodologies, techniques, and tools necessary to develop an information system. Almost all SAD texts(Shelly, Cashman, & Rosenblatt, 2001; Kendall and Kendall, 2001; Dennis and Wixom, 2000) outline a systems development life cycle (SDLC), which is a series of steps or activities that are performed in order to develop an information system. These activities are organized into several phases, and most SAD texts are devoted to explain the activities of the systems analysis and systems design phases of the SDLC. The heart of a system is its data, which is entered through a system’s input, and is subsequently stored in files or databases. Data is typically entered into a system through a set of inter-related data, termed as data-structure or record. The input data structures are processed and often broken into several sub-data structures, and subsequently, saved into appropriate files or database tables. When creating an output, several data structures from various files or database tables may be combined. The data flow diagramming technique (Gane & Sarson, 1979) is commonly used in the systems analysis phase of an SDLC to understand the business processes of a system. Once the business processes are understood through various levels of data-flow diagrams, a data dictionary is created that describes all data flows, data stores, processes, and external entities of the data-flow diagrams. The data-flows and data stores in the data dictionary are further expanded to describe the data structure associated with each of these components. Each data structure is further expanded to describe each data element that comprises the data structure. An understanding of data-structure and its flow through a system is important in designing the inputs, programs, data storage, and output components of a system. Although the 1 data structures associated with these components are described in the data dictionary, the design activities are based on the information contained in the data flow diagram. Furthermore, the data flow diagram does not clarify how data-structures associated with several data-flows are combined to form a data store, or how data structures from several data stores are combined to form a data flow. Thus, most students in a SAD course fail to understand the role of data structures with the input, data storage, program modules, and output design of a system. Shelly et al. (2001) graphically illustrated the process of creation of data dictionary for the four components of a data flow diagram. Kendall and Kendall (2001) used a similar diagram to relate data dictionary with the data flow and data store components of a data flow diagram. The later also presented a description of data structure using algebraic notations. However, both texts fail to clarify the complex relationship of data structures associated with the data flow and data store components of a data flow diagram. In this paper, we present some graphical illustrations that can enhance the understanding of data structures associated with the data flow diagram. They would also clarify the role of data structures in the input, output, program modules, and data storage design of a system. THE DATA FLOW DIAGRAM AND THE SYSTEM COMPONENTS The data flow diagram uses several symbols to illustrate the flow of data through various business processes. It is considered to be the essential tool of a systems development activities, because it outlines the relationship between the business processes with the input, output, and data storage components of an information system. Figure 1 illustrates a skeleton data flow diagram that uses four traditional symbols, namely the external entity, the data flow, the process, and the data storage. It also shows how various components of the data flow diagram are conceptually related to the four components of a system. As shown, the input data flows are related to the input components, the output data flows are related to the output components, the processes are related to the program modules, and the data stores are related to the data storage component of the information system. THE DATA STRUCTURE AND THE DATA FLOW DIAGRAM As it was mentioned before, the design of the system components is based on the data structures associated with the various components of the data flow diagram. These data structures are not visible in the data flow diagram, but they are typically described in a data dictionary. This causes a complex relationship between the design aspects of a system to the data flow diagram. Shelly et al. (2001) presented a chapter entitled “Transition to Systems Design,” but it does not contain any discussion on the relationship between the analysis and design activities. Dennis and Wixom (2000) presents a brief discussion on balancing the entity relationship diagrams with the data flow diagrams, but it does not include all components of the data flow diagram. In a data flow diagram, each data flow and each data store typically carry a data structure. In order to illustrate the role of the data structures in the data flow diagram, we present in Figure2, two sections of a data flow diagram of an order processing system. Part (a) illustrates 2 two data flows (Customer Information and Customer Order) and their associated data structures originated from an external entity named customer. As shown, each data structure is consisted of several data elements such as CustomerNumber, CustomerName, CustomerAddress, City, State, and ZipCode. As can be seen from Figure 1, these data structures are used to design the data entry and update forms for the Customer Information and Customer Order. Figure 2(b) illustrates the data structure associated with the data flow, Sales Report. Again the data structure is consisted of several data elements such as Date, CustomerName, ItemNumber, NoOfOrder, and Amount. The illustrations presented in figure 2 extends the traditional data flow diagram to include the data structures associated with the input and output data flows from and to the external entities, respectively. These illustrations could be extended to include data structures associated with other data flows and data store components of the data flow diagram. These data structures are related to the design of the program modules and data storage components of the system. CONCLUSION In conclusion, we have presented some illustrations that can provide a better understanding of the data structures associated with the various components of a data flow diagram. We have also illustrated how the data structures are related to the design of the input, output, program modules, and data storage components of an information system. These tools can be considered as extensions to the traditional data flow diagram that is used to model a business system. REFERENCES Shelly, G., Cashman, T., and Rosenblatt, H. (2001). Systems Analysis and Design. Boston, MA: Course Technology. Kendall, K., and Kendall, J. (2001). Systems Analysis and Design, (5th Ed.). Upper Saddle River, NJ: Prentice Hall. Dennis, A. and Wixom, B. H. (2000). Systems Analysis and Design: An Applied Approach. New York, NY: John Wiley and Sons. Gane, C. and Sarson, T. (1979). Structured Systems Analysis: Tools and Techniques. Englewood Cliffs, NJ: Prentice-Hall. 3 4 5