Client/Server Task Force Report

Horizontal Rule [MAR 96]

[icon]

Charles Ma

Introduction

Client/Server computing plays a dominant role in information technology nowadays. It offers a number of advantages over traditional computing approach such as higher productivity, higher flexibility, increased user-friendliness and higher cost effectiveness. The fundamental concept of the client/server modelling is to perform data presentation and validation functions on the client PC workstations and leave the more powerful server computer to take care of the system databases. The clients send requests to the server and the server commits the clients' requests. Thus, both the clients and the server can be running under different operating systems and environments as long as they can communicate correctly via the network.

Objectives

In view of such development, our department is keen on employing this fast-growing technology. In July 1994, a task force with members selected from each section, was formed. The mission of the task force is to study the software development tools available in the market and provide recommendations on the most suitable tool. The primary objectives of the task force can be summarized as follows :

Target User Environment

With the above-mentioned goals in mind, the evaluation was carried out under the target user environment as described below :

Evaluation

The evaluation was carried out in two phases.

Phase I of the evaluation involves the selection of the comparison method and a preliminary screening of possible candidates. Eight front-end development tools with the latest version available in the market were considered. They are : Visual Basic, CDE2 Tools, PowerBuilder, FoxPro, SQLWindows, Access, Paradox and Delphi. The task force studied the comparison methods used by the independent bodies and decided to take the feature-wise comparison approach. Information about each candidate tool was gathered from reference materials including brochures, magazines and manuals. The evaluation criteria are broadly categorized into three perspectives : management, user and programmer, as described below :

A scoring scheme was devised such that each candidate tool was scored for every individual feature studied. CDE2 Tools, PowerBuilder, SQLWindows and Delphi Client/Server scored much higher marks than the other tools and were shortlisted.

In Phase II, the chosen products were carefully investigated by actually using the tools beside the theoretical study of the printed material. In order to ensure the practical usability of the tools and to accumulate more experience in using the tools, one part of the Terminal Booking System was rewritten using each tool. Some benchmark tests were performed. Taken into consideration the weightings on different perspectives, the results were summarized in the graph given in the next section.

Findings

[bar chart]

Based on the evaluation results of each tool, the order of preference is: Delphi Client/Server, PowerBuilder, SQLWindows and CDE2 Tools. However, since Delphi does not support record locking in the high level language environment, it was excluded from the list of preferred tools at the end. Naturally, PowerBuilder was chosen as it fits more to our evaluation criteria as described in the Evaluation section. Although not all the technical aspects were covered in our evaluation due to resource limitation and the actual use of the tools was by no means exhaustive, we do have reasonable confidence in the selected tool.

Conclusion

Before deploying the client/server technology, resource management is one thing not to be missed. Acquiring new equipment for the client/server computing is no problem. The minimal configuration of an end-user PC will require 486 CPU, 8MB RAM and 20 MB swap file. The PCs for programmers developing client/server applications will require more RAM (i.e. 16 MB). On the human resources side, assuming the programmer has experience in 3GL programming, knowledge of SQL and experience in the use of Windows, it will take less than one month of self-study to start programming. Of course, the person will become more skillful with the tools as time goes by. A programmer with no pre-requisite knowledge will require more training time. It is anticipated that most programmers have experience in 3GL programming. Knowledge in SQL may be acquired through short training courses. Day-to-day use of Windows will definitely help programmers to obtain fundamental understanding of Windows. Programmers can further consult reference manuals for more comprehensive design and programming considerations of Windows applications.

To ensure smooth implementation of the client/server modelling in our existing environment, the readiness of user acceptance should be given the first priority. It is recommended that writing new applications is the best starting point to employ the client/server technology. Existing applications with Oracle databases can also be converted to the client/server environment as time goes on.

Notes :[icon]

  1. The client is a process (program) that sends a message to a server process (program), requesting the server to perform a task (service). Client programs usually manage the user-interface portion of the application, validate data entered by the user, dispatch requests to server programs, and sometimes execute business logic.
  2. A server process (program) fulfils the client request by performing the task requested. Server programs generally receive requests from client programs, execute database retrieval and updates, manage data integrity and dispatch responses to client requests.
  3. An example of the reference manual is "The Windows Interface : An Application Design Guide"

The client/server task force was completed in mid-1995. As a result of this project, PowerBuilder was acquired as the standard client software development tool for CSC. Training on PowerBuilder has been arranged for our staff and a couple of projects developed in PowerBuilder are on the way. We'll keep the readers informed of the project details in the future issues. So, stay tune!

[Issue No. 6]


[u logo]
Computing Services Centre
City University of Hong Kong
ccnetcom@cityu.edu.hk

[Home Page][CSC Home][NetComp Home][Content Home][Previous Page][Next Page]