4.2 Hardware, networks, and software

This section is very brief because the particular needs of each organization are so different. Other handbooks in the series will cover much of the diagram below.

Figure 4.2.1: Decision tree for database and network architecture

If an organization has offices in more than one physical location in which they want to have simultaneous database access, the database and computer hardware design is more complicated and more expensive.

If more than one user are going to work with the data simultaneously, as is almost always the case, the system will run far more smoothly if the data entry staffs' computers can be connected in a local area network (LAN). In a LAN, the data entry staff can be using the same data files simultaneously. This eliminates the need to integrate information from disparate data entry machines into a single main database from which analysis will be run.

There are two ways that different users can share the same information. If there is a relatively small number of data entry staff (approximately fifteen or fewer), they can all use the same files on the LAN server. This is called filesharing. The server's hard disk is accessed simultaneously by all the users; from the programmer's point of view, and from the users' point of view, the server hard disk is part of each user's computer. The principal advantage is that software to run filesharing systems is relatively inexpensive. The disadvantage is that the simultaneous usage of the same files can slow the server considerably by forcing the server's operating system to adjudicate between users' competing demands.

With more users, a client/server model becomes more appropriate. In this model, programs running on the data entry staffs' computers (clients) request bits of data from a program running on the server. The difference from the filesharing model is that the programs running on the client machines know that they are talking to a program on the server -- they don't treat the server as if it were simply another hard disk. The server program can adjudicate between different users making simultaneous requests, and it can package the requested data neatly so that the network does not become overloaded so quickly.

The client/server model also scales well. If the organization has offices in several locations, even with relatively slow connections between each office, all the data entry staff in all the offices can have simultaneous access to the data. Each office will still need its own LAN on which that offices's local database server will reside. The principal disadvantage of the client/server model is that a) the client software must be developed from scratch, and b) the software required to run the server can be expensive. For a truly large-scale project, however, a client/server model is indispensable.


| go to next page, Chapter 4.3: Some perspective | jump ahead to Chapter 5: Conclusion |

| go to top of this page | go to previous page, Chapter 4.1.4: Output and supervision |

| return to Table of Contents |