Organizing Information in Databases
Given the bulk of information associated with construction projects, formal organization of the information is essential so as to avoid chaos. Virtually all major firms in the arena of project management have computer based organization of cost accounts and other data. With the advent of micro-computer database managers, it is possible to develop formal, computerized databases for even small organizations and projects. In this section, we will discuss the characteristics of such formal databases. Equivalent organization of information for manual manipulation is possible but tedious. Computer based information systems also have the significant advantage of rapid retrieval for immediate use and, in most instances, lower overall costs. For example, computerized specifications writing systems have resulted in well documented savings. These systems have records of common specification phrases or paragraphs which can be tailored to specific project applications.
Formally, a database is a collection of stored operational information used by the management and application systems of some particular enterprise. This stored information has explicit associations or relationships depending upon the content and definition of the stored data, and these associations may themselves be considered to be part of the database. Figure 5-1 illustrates some of the typical elements of a database. The internal model is the actual location and representation of the stored data. At some level of detail, it consists of the strings of "bits" which are stored in a computer's memory, on the tracks of a recording disk, on a tape, or on some other storage device.
A manager need not be concerned with the details of data storage since this internal representation and manipulation is regulated by the Database Manager Program (DBM). The DBM is the software program that directs the storage, maintenance, manipulation and retrieval of data. Users retrieve or store data by issuing specific requests to the DBM. The objective of introducing a DBM is to free the user from the detail of exactly how data are stored and manipulated. At the same time, many different users with a wide variety of needs can use the same database by calling on the DBM. Usually the DBM will be available to a user by means of a special query language. For example, a manager might ask a DBM to report on all project tasks which are scheduled to be underway on a particular date. The desirable properties of a DBM include the ability to provide the user with ready access to the stored data and to maintain the integrity and security of the data. Numerous commercial DBM exist which provide these capabilities and can be readily adopted to project management applications.
While the actual storage of the information in a database will depend upon the particular machine and storage media employed, a Conceptual Data Model exists which provides the user with an idea or abstract representation of the data organization. (More formally, the overall configuration of the information in the database is called the conceptual schema.) For example, a piece of data might be viewed as a particular value within a record of a datafile. In this conceptual model, a datafile for an application system consists of a series of records with pre-defined variables within each record. A record is simply a sequence of variable values, which may be text characters or numerals. This datafile model is one of the earliest and most important data organization structures. But other views of data organization exist and can be exceedingly useful. The next section describes one such general model, called the relational model.
Continuing with the elements in Figure 5-1, the data dictionary contains the definitions of the information in the database. In some systems, data dictionaries are limited to descriptions of the items in the database. More general systems employ the data dictionary as the information source for anything dealing with the database systems. It documents the design of the database: what data are stored, how the data is related, what are the allowable values for data items, etc. The data dictionary may also contain user authorizations specifying who may have access to particular pieces of information. Another important element of the data dictionary is a specification of allowable ranges for pieces of data; by prohibiting the input of erroneous data, the accuracy of the database improves.
External models are the means by which the users view the database. Of all the information in the database, one particular user's view may be just a subset of the total. A particular view may also require specific translation or manipulation of the information in the database. For example, the external model for a paycheck writing program might consist solely of a list of employee names and salary totals, even if the underlying database would include employee hours and hourly pay rates. As far as that program is concerned, no other data exists in the database. The DBM provides a means of translating particular external models or views into the overall data model. Different users can view the data in quite distinct fashions, yet the data itself can be centrally stored and need not be copied separately for each user. External models provide the format by which any specific information needed is retrieved. Database "users" can be human operators or other application programs such as the paycheck writing program mentioned above.
Finally, the Database Administrator is an individual or group charged with the maintenance and design of the database, including approving access to the stored information. The assignment of the database administrator should not be taken lightly. Especially in large organizations with many users, the database administrator is vital to the success of the database system. For small projects, the database administrator might be an assistant project manager or even the project manager.