Page 243 -
P. 243

210     Part 3  •  the analysis Process

                                         The Data Dictionary

                                         A data dictionary is a specialized application of the kinds of dictionaries used as references
                                         in everyday life. A data dictionary is a reference work of data about data (that is, metadata).
                                         Systems analysts compile data dictionaries to guide them through analysis and design. A data
                                         dictionary is a document that collects and coordinates specific data terms, and it confirms what
                                         each term means to different people in the organization. The data flow diagrams covered in
                                         Chapter 7 are an excellent starting point for collecting data dictionary entries.
                                             One important reason for maintaining a data dictionary is to keep clean data. This means
                                         that data must be consistent. If you store data about a man’s sex as “M” in one record, “Male” in
                                         a second record, and as the number “1” in a third record, the data are not clean. Keeping a data
                                         dictionary will help in this regard.
                                             Automated data dictionaries (part of the CASE tools mentioned earlier) are valuable for their
                                         capacity to cross-reference data items, thereby allowing necessary program changes to all programs
                                         that share a common element. This feature supplants changing programs on a haphazard basis, and
                                         it prevents waiting until the program won’t run because a change has not been implemented across
                                         all programs sharing the updated item. Clearly, automated data dictionaries are important for large
                                         systems that produce several thousand data elements requiring cataloging and cross-referencing.

                                         Need for Understanding the Data Dictionary
                                         Many database management systems now come equipped with an automated data dictionary.
                                         These dictionaries can be either elaborate or simple. Some computerized data dictionaries auto-
                                         matically catalog data items when programming is done; others simply provide a template to
                                         prompt the person filling in the dictionary to do so in a uniform manner for every entry.
                                             Despite the existence of automated data dictionaries, a systems analyst should understand
                                         what data compose a data dictionary, the conventions used in data dictionaries, and how a data
                                         dictionary is developed. Understanding the process of compiling a data dictionary can aid a sys-
                                         tems analyst in conceptualizing the system and how it works. The upcoming sections allow the
                                         systems analyst to see the rationale behind what exists in automated data dictionaries.
                                             In addition to providing documentation and eliminating redundancy, a data dictionary may
                                         be used to:
                                           1. Validate the data flow diagram for completeness and accuracy.
                                           2. Provide a starting point for developing screens and reports.
                                           3. Determine the contents of data stored in files.
                                           4. Develop the logic for data flow diagram processes.
                                           5. Create XML (Extensible Markup Language).


                                         The Data Repository

                                         Whereas a data dictionary contains information about data and procedures, a larger collection of
                                         project information is called a repository. One of the benefits of using a CASE tool to develop
                                         the data dictionary is the ability to develop a repository, or a shared collection of project informa-
                                         tion and team contributions. The repository may contain the following:
                                           1. Information about the data maintained by the system, including data flows, data stores,
                                             record structures, elements, entities, and messages
                                           2. Procedural logic and use cases
                                           3. Screen and report design
                                           4. Data relationships, such as how one data structure is linked to another
                                           5. Project requirements and final system deliverables
                                           6. Project management information, such as delivery schedules, achievements, issues that
                                             need resolving, and project users
                                         The data dictionary is created by examining and describing the contents of the data flows, data
                                         stores, and processes, as illustrated in Figure 8.1. Each data store and data flow should be defined
                                         and then expanded to include the details of the elements it contains. The logic of each process
                                         should be described using the data flowing into or out of the process. Omissions and other design
                                         errors should be noted and resolved.
   238   239   240   241   242   243   244   245   246   247   248