Guidelines for Distributing Application Subsystems

28.1.3 Guidelines for Distributing Application Subsystems

While no absolute rules cover the distribution of application subsystems between the client and server, the following guidelines are generally followed:

The presentation/interaction subsystem is generally placed on the

client. The availability of PC-based, Windows-based environments and the computing power required for a graphical user interface makes this approach

“Some analysts view client/server

cost effective. computing as the

If the database is to be shared by multiple users connected by the LAN,

fourth wave of [change in the

it is typically located on the server. The database management system and history of]

the database access capability are also located on the server together with the computing.”

physical database.

Bernard Boar Static data that are used for reference should be allocated to the client.

This places the data closest to the users that require them and minimizes unnec- essary network traffic and loading on the server.

The balance of the application subsystem is distributed between the client and server based on the distribution that optimizes the server and client configurations and the network that connects them. For example, the implementation of a mutually exclusive relationship typically involves a search of the database to determine if there is a record that matches the parameters for a search pattern. If no match is found, an alternate search pattern is used. If the application that controls this search pattern is

Although distribution contained fully on the server, network traffic is minimized. The first network trans- guidelines are

worthwhile, every mission from the client to the server would contain the parameters for both the pri- system must be

mary and secondary search patterns. Application logic on the server would determine considered on its own

if the secondary search is required. The response message to the client would con- merits. For every

tain the record found as a result of either the primary or the secondary search. The benefit derived from,

say, a fat client, the alternate approach of placing on the client the logic to determine if a second search designer must contend

is required would involve a message for the first record retrieval, a response over the with an equal set of

network if the record is not found, a second message containing the parameters for negatives.

the second search, and a final response with the retrieved record. If the second search is required 50 percent of the time, placing the logic on the server to evaluate the first search and initiate the second search, if necessary, would reduce network traffic by

33 percent. The final decision on subsystem distribution should be based not only on the indi- vidual application but on the mix of applications operating on the system. For exam- ple, an installation might contain some applications that require extensive GUI processing and little central database processing. This would lead to the use of pow- erful workstations on the client side, and a bare bones server. With this configura- tion in place, other applications would favor the fat client approach so that the capabilities of the server do not need to be upgraded.

As the use of the client/server architecture has matured, the trend is to place volatile application logic on the server. This simplifies deployment of software updates as changes are made to the application logic [PAU95].