
Intelligent Manufacturing January 1995 Vol. 1
No. 1
"I'm just trying to run a business here! Why is client/server so
important?" This is a standard lament throughout manufacturing
operations, and the fact is, it's difficult to say how important
client/server is. One of the problems is that the term
"client/server" covers too many issues and more new areas all the
time; you can't just say "client/server" and assume that people
understand what you're talking about. Some think client/server is
using PC spreadsheets to manipulate files created by a host computer
report writer. Others define it as several mainframes and/or midrange
machines (possibly acting as servers) and multiple PCs (possibly
acting as clients) with varying amounts of manufacturing system
application code and databases on both levels.
For many of today's manufacturers, a client/server implementation is
merely a different look and feel through a GUI interface; this is the
ability to perform transactions in Windows type applications with the
"same" software that is used to control manufacturing operations.
Certainly the technical strategy is more complex than this. But to
the user in these environments, client/server is really seeing a
different, easier-to-use presentation interface. A logical next step
is to allow the importation of data from a server into a PC
application like a spreadsheet.
The ultimate situation is to be able to have not only presentation
interfaces, but application code and databases on the PC client as
business needs dictate. This can get very complicated, however, and
may not warrant the cost or the headache. These levels of
client/server are sometimes hard to envision. Let's go through some
basic ways to define client/server.
Client/Server Alternatives
Manufacturing systems have traditionally been implemented on one
computer with the following three aspects of application and database
software all bundled into one package:
Most of you have dealt with this type of environment. It is easy
to control, usually uses a character cell user interface (dumb
terminal), and is very cost-efficient.
Imagine taking a step into the future from this simple controlled
environment and begin using a new GUI user interface on a PC. The
application logic may stay on the original computer (server). A
little more complexity has been added because you now have two
interfaces: the dumb terminal and the PC with a GUI interface. If
these are very different, additional training may be required. The
information systems (IS) community has to pay attention to a
multitude of PCs that are now interfacing with the system.
Take another step forward by allowing the manufacturing system
application logic to function on the PC-client as well as the server.
This may require a rewrite of the software by the software provider
using a tool (4GL language or other) that is different from that used
to write the original application. If so, you will now have multiple
sets of application software to maintain. If the same tool is used
across both client and server environments, tre-mendous maintenance
and security efficiencies result.
The database, which up to now has been comfortably on the original
computer (server), could exist on one or more PCs to allow for more
efficient use of that data by the user. This capability to distribute
databases is where many claim the real value of client/server occurs.
Different database software systems could be required to operate
together with the same application software.
Is Client/Server Important to You?
Having many database software systems from different vendors in a
client/server environment may not be important to you. But the vision
that businesses should be able to configure and distribute their
applications and databases to suit business requirements is
important. Companies in a position to take advantage of the
application and database technology that will be unveiled over the
next couple of years will reap tremendous rewards.
Most client/server implementations are in their infancy, merely
offering the user a GUI along with easier access to data for
traditional PC applications. However, it is shortsighted to acquire
technology that does not have the capability to go beyond such an
"infant" solution. Consider the following implementations:
One well known manufacturing company may never implement a
distributed database model but may be satisfied with a single "host"
server controlling all database functions. This company will require
that the application logic operate on both the server and the client
to help reduce server processing.
Another company with remote processing plants is considering doing
all inventory control in those plants on a PC with both application
logic and the database on that PC; a download process would update a
central server. This example is arguably not client/server at all but
merely a process where information is "stored and forwarded" to the
server.
Still another company is considering placing many small supply
facilities closer to customers; they are planning on a full
implementation of client/server, including application logic
partitioning and database distribution for all distribution,
manufacturing and inventory functions.
As you can see, there is a minimum technology level that needs to be
achieved and it is highly dependent on what your vision of
client/server is. Typically a company will, at minimum, acquire
technology with software that has application logic on both the
server and the client. As stated before, the ideal situation would be
to have the same development tool for both client and server
software; however, it is viable to have different tools in place,
especially for the user interface-presentation piece.
Nearly everyone agrees that the way to implement more complex
versions of client/server is in "baby steps" - taking one business
process at a time and proving out the cost effectiveness of each.
This approach will help determine the degree to which your company
should implement a client/server environment and how important
client/server is to your business.
Bob Turek (805-268-8808) is a senior consultant based in Los
Angeles for Visibility, a developer of business information systems
for the agile manufacturer.