|
Page 1 of 2
Client-Server Computing : Butler Model
How to Use Client Servers in the Business Environment
This article will discuss the Butler pyramid model of client-server computing in an attempt to provide a metaphor for understanding the most effective way of using client-server resources in a business environment. This five-layered model is also known as the Butler Group VAL (Value Added Layers) Model.
I will describe each of the layers and their function in an integrated client-server architecture. To expand this discussion on architecture, we will describe the four main client-server application models. We will summarize with conclusions.
Butler Pyramid Model of Client-Server Computing
The Butler pyramid model of client-server computing was developed as a metaphor with which to visualize the necessary components for effective client-server integration.
The bottom of the pyramid, the base, is infrastructure. This is Layer 1. This layer is made up of all the technological components that don’t directly perform business function but enable them passively. Operating systems, networks, user interfaces and database management systems (DBMS) are the broadest level or floor level. It encompasses the technology interacted with by most employees at all levels. It’s the layer IT managers are most familiar with.
Layer 2 is the middleware level. It is above the infrastructure layer and adds value through specialization. Middleware is the general term for programming that allows transparent communication between pre-existing applications. It provides messaging services so that applications can communicate. For example, a program can be written for one database in a way that also allows access to other databases, thereby multiplying its usefulness. The same program can provide communication between multiple databases by multiple users. The tying together of different components through middleware is known as enterprise application integration (EAI). It provides a means of mapping applications to specific resources to perform specific tasks. Middleware typically monitors and supports database connections and network connections.
Examples of different middleware applications include ones that offer database access technology, like ODBC (Open Database Connectors). Another one is Java’s database connectivity API (Application Programming Interface) or JDBC. There are also remote computation products, like ONC RPC (Open Network Computing Remote Procedure Call). Remote procedure call is a protocol by which one computer can request a service from another computer in a network without requiring full knowledge of network details. Other remote computation products are OSF RPC (Open Software Foundation Remote Procedure Call) and Java’s RMI (Remote Method Invocation). Other products include DCE (Distributed Computing Environments) products, CORBA (Common Object Request Broker Architecture), and DCOM (Distributed Component Object Model).
Layer 3 is more dense and specialized than Layer 2. Remember the layers keep decreasing in size as they increase in number. However, they keep increasing in specialization. Layer 3 contains applications. This is the layer that actively manipulates data and executes business functions. Companies usually invest a lot of money on applications. Unfortunately, some of this expense is superfluous because unneeded applications come as a part of software packages. However, in client-server models applications can be chosen from a variety of vendors to suit the company’s specific needs. Competitiveness is enhanced by this kind of in-house application development.
Layer 4 is the repository. This is the layer separating the business model or strategy from the technology that executes it. It is the location that stores and maintains multiple databases over a network. These are the networks and databases that run from the infrastructure to the top level.
The top level, Layer 5, is the business model level. It is the top of the pyramid, the point. It is independent from the technologies that execute it. But nonetheless, it structures the more technological levels underneath it. Business models represent a company’s cost-revenue-profit mechanics and the strategies it will use to reach its goals. It is essentially a company’s business design.
Business models will determine which hardware and software environments are needed. These environments may change according to the business model. However, the business model should remain constant and independent, picking and choosing technology to support its vision. Most business models are methodologically object oriented, concerned more with the manipulation of objects or data than concerned with the logic. This is a big leap from original programming, which was all about writing the logic that executed tasks.
|