The key to understanding client/server architecture and client/server systems
is the distinction of where the presentation, presentation logic, application
logic, data manipulation, and data layers are distributed among the client PC
and one or more servers. The key to understanding Internet-based computer
architectures and network computing systems is grasping the use of multi-tier
solutions. Internet-based computer architectures distribute the five layers
(mentioned previously) amongst web, application, and database servers. Because
the client PC does not implement any of these layers (the Web browser implements
the presentation and presentation logic layers downloaded from a Web server), it
can be considered that network computing is NOT a form of client/server. Knowing
the headaches that can arise with software installations and client/server
architecture, Internet-based computer architecture and open-source Internet
technology is said to deliver inter-operational efficiency and plug-and-play
convenience.
Client/server systems are defined as a "solution which the presentation,
presentation logic, application logic, data manipulation, and data layers are
distributed between the client PC and one or more servers" (Whitten,
Bentley, Dittman, 2001). Clients are classified as either being "thin"
or "fat". "Thin" clients act as terminals and only present
the interface to the user (typically, these clients do not have hard drives).
"Fat" clients are personal or notebook computers with powerful
processors, memory, and storage capacity. Servers are classified as database
(for shared databases and command/services execution), transaction (for ensuring
business transactions either succeed or fail), application (hosts application
logic/services), messaging (email/workgroup), and Web (hosts Internet or
intranet Web sites).
There are three distinct classes of client/server architectures - distributed
presentation, distributed data, and distributed data and application.
Distributed presentation is typical of older legacy systems using character user
interface where it is desired to present a graphical user interface to run on a
PC. The server handles the application logic, data manipulation, and data
layers. The client handles the presentation and presentation logic layers.
Distributed data is known as "two-tiered" client/server computing
because there is a server (i.e. Oracle or Microsoft SQL Server) that handles the
data and data manipulation layers and the client handles the application logic,
presentation, and presentation logic layers). Distributed data and application
client/server systems are known as "three-tiered" client/server
computer because there are two servers (one that handles application logic and
one that handles data and data manipulation) and the client handles the
presentation and presentation logic layers.
Internet-based computing architectures consist of network computing systems.
Network computing systems are considered "multi-tiered" because there
are three types of servers that enable the client to implement a client-side Web
browser that uses content downloaded from a Web server. The Web server handles
the presentation and presentation layers implemented in the client-side Web
browser. There is also an application server for application logic and a
database server for data and data manipulation. Network computing systems can be
utilized for Internet, intranet (secure internal network for integrating
desktop, work group, and enterprise computing), and extranet (external systems
connecting to internal company information) services.
References:
Kersnar, Scott. (2001, March). Web Versus Windows: Does the mortgage industry
need to jump from client-server to Internet technology? Or is the ASP solution
not everyone's solution?. Mortgage Technology.
Whitten, Jeffrey; Bentley, Lonnie; Dittman, Kevin. (2001). Systems
Analysis and Design Methods. New York, NY. McGraw-Hill Companies, Inc.