iiwas99b-iki
TRANSCRIPT
-
8/2/2019 iiwas99b-iki
1/12
The Feasibility of Web-Based Client/Server Information System:
A Case Study
F. Soesiantoand Ismail K. Ibrahim
Department of Electrical EngineeringGadjah Mada University, Indonesia
{fsoes, ismail}@te.ugm.ac.id
Abstract
The web-based client/server computing has become the model for a newinformation architecture that will take enterprise-wide computing into the 21
stcentury.
It promises many things to many people; to end-users, ease access to corporate and
external data; to managers, dramatically lower costs for processing; to programmers,reduced maintenance; to developers, an infrastructure that enables business processesto be reengineered for strategic benefits. However, the subject of web-based
client/server seems to be still shrouded in mystery for most people.Is the web-based client/server computing really new? What has propelled it to the
information systems forefront? Should the decision to move to web-based client/servercomputing be made on the basis of cost or on the productivity gains as well? Is there a
hidden downside? Is it a new technology or a new methodology?The purpose of this paper is to answer all these questions through introducing the
concept of integrated web-based client/server architecture and to discuss a number ofcomplex issues surrounding the implementation and management of this architecture.
1. Introduction
Theadvent of the Internet and the growth of commerce on the Word Wide Webare changing the client/server landscape dramatically. As the demand for information
and resource sharing between remote locations continues to escalate, vendors arebeginning to web-enable their desktop application solutions.
A web based client/server system is typically a variation on the standard three-tier client/server system architecture. It is designed to take full advantages of
cooperative processing and distributed computing, using the Internet or an intra-company WAN as the network infrastructure.
It is important to determine if a web-based client/server solution is the rightsolution for an organization. The answer to this question depends on a number of
variables. However, a primary determinant for evaluating the feasibility of adopting aclient/server solution has to be chosen. The focus will be on the fitness of the current
information system. Is the current information system infrastructure a help or ahindrance to the business activity? Once this question is answered, the decision to
-
8/2/2019 iiwas99b-iki
2/12
adopt a client/server solution can be evaluated in the light of issues such as
implementation cost, staffing requirement, overall impact on business operations, and
the potential benefits to be realized from making a change.The purpose of the paper is to provide a framework to determine the state andfeasibility of adopting a web-based client/server solutions for an organization.
The approach followed in this research is the proof-of-concept implementationapproach to a container terminal operation information system, which is documented in
Ibrahim (1998). See also Soesianto (1999) and Siong (1996), upon which the work ofIbrahim was based.
2. Background
Client/server architecture is a complex, involved, and often misunderstood
subject. The amount of information related to this subject is tremendous and covers awide range of functions, services, and other aspects of the distributed environment(Berson 1996). This research is intended to contribute to the evolution of todays
client/server technology by determining and evaluating the state and feasibility ofadopting a web-based client/server solution for an organization based on the theoretical
foundations of the distributed co-operative processing models. It will introduce theconcept of client/server systems development methodology, which provide a consistent
approach in the analysis and investigation of all the issues surrounding theimplementation and management of client/server systems (Orifaldi 1996). A real world
case of study has been chosen to apply these concepts.The term client/server was first used in the 1980s in reference to personal
computers (PCs) on a network. The actual client/server model started gainingacceptance in the late 1980s. The client/server software architecture is a versatile,
message-based and modular infrastructure that is intended to improve usability,flexibility, interoperability, and scalability as compared to centralized, mainframe, and
time sharing computing (for instance, see Berson 1996).There are a variety of definitions for the term client/server. For the purpose of
this research the systems point of view is taken. In other words, the client/server systemis defined in terms of individual pieces that work together as a whole and viewed as a
system that integrates hardware, software, and networking. This integration oftechnology is specifically designed to share resources, in support of one or morebusiness functions, in multiple locations simultaneously. As an example is the Internet
itself is the worlds largest client/server system. This client/server system is comprisedof thousands of clients and servers transferring information and supporting millions of
business functions across a network that spansthe globe.Every client/server systems consists of at least one of each of the following:
A client that requests information; A server that supplies information; A network that transfer information between the client and the server;
-
8/2/2019 iiwas99b-iki
3/12
The client component of the client/server system can be either hardware or
software. In the hardware context, a client is the personal computer functioning as a
workstation. This client workstation is capable of stand-alone information processing,which distinguishes it from its mainframe predecessor, the dumb terminal. In thesoftware context, a client is the software that allows to interact with the information
residing on the server. Web browsers are examples of software clients, as are emailprograms (Orifaldi 1996).
The server component can also considered both hardware and software. Ashardware, the server is typically a personal computer or workstation with enhanced
storage capacity. Often, it resides in the same location as the business activity it isrequired to support. As software, servers have a variety of incarnations, depending on
the operational function. For example, windows NT Server acts as a secure server,allowing users to share files and printers over a network. Web servers like Microsofts
Information Server provides access to and delivery of information over the World WideWeb (Martin 1997).
In a client/server system, the network is the glue that binds the various pieces ofhardware and allows the sharing of data and information. Networks are generally
considered hardware, as they provide a physical link between clients, servers, printers,and other shared resources. In addition, in cases where networks are required to link
and facilitates interaction between varying vendor-specific resources, middleware mayplay a role in supporting network functionality.
Middleware, as the name implies, is the piece of hardware or software placedbetween two different technologies to allow the two technologies to interact with each
other. In the context of client/server systems, middleware has a variety of incarnations;however, the two most common are:
Network Middleware, which handles message routing between different platforms; Database Middleware, which handles the translation of data request into database
commands.Client/server information systems architecture must serve three purposes:
Respond to the organizations need for easy information access, flexibility, smoothadministration, reliability, security and proficient application development;
Utilize current installations of hardware, software and networks, which often runmission-critical applications that cannot be compromised;
Anticipate future demands on information systems and networks; Client/Server computing systems come under the broad category of system
architectures known as Open Systems Architecture. In an open systemsenvironment, hardware and software from different vendors are interchangeable
and can be combined into an integrated working environment. Two importantconcepts in open systems are Interoperability and Interconnectivity. Interoperability
means that open systems can exchange information meaningfully with each othereven when they are from different vendors. For example, manufacturing relies on
VAX/VMS, Accounting runs of the IBM 3090 mainframe, sales and marketing useOS/2 server running Netware (Network Operating System) on a Token Ring
-
8/2/2019 iiwas99b-iki
4/12
network and top management and corporate planning need real time data from all
three on their PCs and Macintoshes. Interoperability is at the software application
level.Interconnectivity, refering to the ability to connect computers from possiblydifferent vendors, is an integral part of interoperability. Interconnectivity is at the
hardware level.Most client-server systems have the following distinguishing characteristics (see
also Watterson 1995):1. Service: client-server is primarily a relationship between processes running on
separate machines. The server process is the provider of services. The client is aconsumer of services. In essence, client-server provides a clean separation of
function based on the idea of service.2. Shared resources: a server can service many clients at the same time and regulate
their access to shared resources.3. Asymmetrical protocols: there is a one-to-one relationship between clients andservers. Clients always initiate the dialog by requesting a service. Servers arepassively waiting on requests from the clients.
4. Transparency of location: the server is a process, which can reside on the samemachine as the client or on different machine across the network. Client-server
software usually masks the location of the server from the clients by redirecting theservice calls when needed.
5. Mix and match: the ideal client-server software is independent of hardware oroperating system software platform. One should be able to mix and match client
and server platforms.6. Message-based exchanges: clients and servers are loosely coupled systems which
interact through message passing mechanism. The message is the deliverymechanism for the service requests and replies.
7. Encapsulation of services: the server is a specialist. A message tells a server whatservice is requested and it is up to the server to determine how to get the job done.
Servers can be upgraded without affecting the clients as long as the puplishedmessage interface is not changing.
8. Scalability: client-server systems can be scaled horizontally or vertically.Horizontal scaling means adding or removing client workstations with only a slight
performance impact. Vertical scaling means migrating to a larger and faster servermachine or multi-servers.
9. Integrity: the server code and client code is centrally maintained, which results incheaper maintenance and the guarding of shared data integrity. At the same time,
the clients remain personal and independent.
Client/server systems can be configured in a variety of ways, depending on what isgoing to be accomplished. These different configurations are called client/server
system architectures, the most common of which is the two-tier and three-tier
-
8/2/2019 iiwas99b-iki
5/12
architectures. To better understand the difference between the two, Client/server
systems should be broken up into three functional layers (Berson 1996):
1.
The presentation or user interface layerPresentation is directly related to end-user I/O and include such items asscreen/window management, dialog control, function key mapping, field validation,
range checking, context-sensitive help, data capture and security.2. The function or application processing layerFunction includes programs responsible for business logic. It includes programmedaccess to user data and end-user I/O or issuing DML statements.
3. The data management layerData management represents the functions related to executing data manipulation
language (DML) e.g., disk I/O, buffer management, index maintenance, lockmanagement. A DBMS or file management system usually performs these functions.
In a two-tier architecture, the client generally handles the responsibilities of boththe presentation and business logic layers, and the data access layer is managed by the
server. Because the client performs the processing requirements of both thepresentation and business logic in the two-tier architecture, it is also known as a fat-
client architecture Martin 1997).Over time, it was found that two-tier architectures didnt scale very well. In
addition, so much client processing required installing, updating, and maintaining large,platform specific applications on each client, which could be very expensive. For these
reasons, there has been a move toward the three-tier architecture. With the three-tierarchitecture, each functional layer is isolated into three distinct (logical) components.
In this architecture, clients are responsible for the presentation layer, servers for thebusiness logic layer, and servers for the data access layer. Because clients are then only
responsible for handling presentation logic, this architecture is also known as thin-client architecture.
In three-tier architecture, applications reside on the server, rather than from theclient, so they are platform-independent, and many clients on multiple platforms can
use the same application. In the example of a corporate Intranet, applications can resideon a Web server. Thin clients, such as a PC or a network computer, can access these
applications from anywhere in the Intranet. Organizations that adopt the three-tierclient/server architecture can realize benefits in reduced maintenance cost and system
flexibility.
3. Web-based Client/Server Architecture
A web based client/server system is typically a variation on the standard three-tier client/server system architecture. It is designed to take full advantages of
cooperative processing and distributed computing, using the Internet or an intra-company WAN as the network infrastructure.
-
8/2/2019 iiwas99b-iki
6/12
The presentation logic in a Web-based client/server system consists of a Web
browser as the primary application interface. Generally, some of the processing logic is
built into the Web-browser to interpret HTML pages with embedded scriptinglanguages like JavaScript or VBScript, because Web-based applications are constructedby embedding component objects developed using Java or ActiveX technology into the
HTML, the business logic layer of a Web-based client/server system generally resideson a remote Web server. And as usual, the supporting data would reside on a database
server, which, under the Web-based paradigm, is also remote.Functionally, web-based applications support many of the same business
processes as their desktop counterparts. In fact, many vendors are Internet-enablingtheir popular desktop applications to conform to the web-based client/server paradigm.
For example, a popular client/server based financial system, built for a two tierarchitecture, is now offered as a web-based solution. Under the new web-based
configuration, the product is offered for a three-tier architecture. Consequently, thestandard GUI, traditionally resident on the client PC, has given way to Netscape or
Internet Explorer. the application, which would typically reside on a LAN server, cannow be hosted on a WAN server in a separate geographic location, as can the database
used to support the system.It is important to determine if a client/server solution is the right solution for an
organization. The answer to this question depends on a number of variables. However,a primary determinant for evaluating the feasibility of adopting a client/server solution
had to be chosen. The focus will be on the fitness of the current information system. Isthe current information system infrastructure is a help or a hindrance to the business
activity? Once this question is answered, the decision to adopt a client/server solutioncan be evaluated in light of issues such as implementation cost, staffing requirement,
overall impact on business operations, and the potential benefits to be realized frommaking such a change, and that is what expected to be the main benefits of such a
research.
4. Client/Server Systems Methodology
Microcomputers have been termed power tools or mind-tools for an information
age, where the key to success is in acquiring and using knowledge.In the client/server systems, the end-user should be involved in the design of the
system, and should help the systems people design the new requirements expected from
the system. End users should also help with testing, as they will be using the newsystem.
In order to develop an effective client/server system, the system development lifecycle should be viewed from the client/server business model point of view and a
clearly defined cycle of phases had to be designed.
-
8/2/2019 iiwas99b-iki
7/12
The client/server systems development methodology is an ongoing process, since
all client/server systems are constantly in development and revision. The development
of a client/server systems never really stops.The system development life cycle using a client/server business model is a five-step process that is constantly in effect on any given information system. The five steps
should be followed carefully to ensure an effective system and to reduce the chance offailure.
Figure 1 details these five stages and the different activities involved in them
-
8/2/2019 iiwas99b-iki
8/12
Figure 1 Stages and Activities of Client/Server Development
Stage Goal Activities Deliverables
System
Investigation
Determine whethera business problemor opportunity exits
Determine whethera new or improved
C/S is a feasible
solution
Gather data Identify current situation Describe existing system Define requirements Analyze applications and
data architectures Analyze technology
platforms
Prepare implementationplan
Information
Technology
Profile on the
Feasibility of a
Web based
Client/Server
solution
System
Analysis
Analyze theinformation needsof end users, the
organizational
environment, and
presently usedsystems
Develop thefunctional
requirements of a
system that meetthe needs.
Gather data Expand the requirements to
the next level of detail
Define information systemrequirements
Prepare external systemdesign
Functionalrequirements
Organizationalanalysis
Present systemanalysis
Functionalrequirement
analysis
System Design
Develop specifications
for H/W, S/W, people
and data resources and
the information
products that will
satisfy the functionalrequirements of the
proposed system
Determine possibleimprovement goals
Architecture definition Identify systems
development environment.
Perform preliminary design Perform detailed design Design system test
System
specifications
User interface Database Software Hardware Personnel
System
Implementation Implement the ISsolution
Acquire H/W & S/W Test the system Train people Convert to the new system
Operational system
implementation
Direct Parallel Phased Pilot
Monitor, evaluate,
modify the system
asneeded
Support H/W, S/W,
and communication
configuration
Post Implementation
Review
System Evaluation
& Maintenance
-
8/2/2019 iiwas99b-iki
9/12
5. Client/Server Business Model
The client/server business model is an approach that helps define environmentalattributes that might be enhanced by client/server implementation. This approach not
only provides a basis for the business case that supports such a recommendation, it alsolays a foundation for performing Business Process Reengineering.
Business Process Reengineering is the process of analyzing the functional andoperational procedures in an organization for efficiency. This analysis is directed at
identifying processes that may be redundant across organizations, or obsolete in theirapplication. The ultimate intent is to define the optimum flow of work for an
organization, and then determine how the optimized process might be enhancedthrough the implementation of automated solutions.
The focus of this research is to determine whether a web-based client/server
solution is the right solution for an organization. The answer to this question dependson a number of variables. However, a primary determinant for evaluating the feasibilityof adopting such a solution had to be chosen. The focus will be on the fitness of the
current information system. Is the current information system infrastructure is a help ora hindrance to the business activity? Once this question is answered, the decision to
adopt a client/server solution can be evaluated in light of issues such as implementationcost, staffing requirement, overall impact on business operations, and the potential
benefits to be realized from making a change.The web-based client/server business model, developed for the purposes of this
research can be used to identify general areas about the business activities of the casestudy considering a client/server solution which include the following:
1. Needs: A clear statement of the case of studys information processing needs to beenabled by sharing information among all of its business units in a fast, costeffective manner.
2. End user roles and responsibilities: A perspective on the case of study roles andresponsibilities of end users to determine the resource sharing requirements amongbusiness units.
3. Information flow: An understanding of how information flows throughout theorganization, in other words, what information goes into the organization and what
comes out.4. Standards and procedures: Insight into the existing information management
standards, policies, and/or procedures of the case of study. This insight helps
understand what governs the way that information is handled in the organization.5. Education and training: An understanding of case of studys education and
training processes related to the system.6. System configuration: An inventory of the existing information processing system
configuration.
-
8/2/2019 iiwas99b-iki
10/12
7. Risk: Managements budget and risk tolerance thresholds. This informationestablishes limits for how much an organization willing to spend in relation to the
capabilities received.8. Problems and issues: A perspective on known problems and/or issues with theorganizations existing information processing infrastructure.
9. Metrics: A perspective on measurements that might be collected to objectivelyevaluate proposed capability enhancements.
6. Results
After developing the client/server business model, the research began to make
assessments related to the feasibility and potential benefits of a client/server solutionfor one of the Indonesian port container terminal operations which resulted in the
decision to downsize the existing mainframe system to an integrated web basedclient/server system.
The study conducted to determine the state and feasibility of a client/serversolution was called the information technology profile on the feasibility of a web-based
client/server solution. The objective of this study is to describe the:1. Existing business environment2. Approach taken regarding assessments of client/server solution feasibility including
organizational, economic, technical and operational considerations
3. Conclusions and recommendations regarding the feasibility of a client/serversolution.
The implementation method applied is the proof-ofthe-concept implementationwhich is an experimental approach to determine the state and feasibility of adopting a
client/server solution that can be developed to be any one of the other implementationmethods.
The potential benefits associated with such a decision include, but are not limitedto, the following list:
1. Improved Graphical User Interface.2. Easy data access.3. Access to application development tools.4. Multi platform integration.5. Improved business operations.6. Distributed application processing.7. Lower system-operating costs.
7. Conclusion
The client/server business model makes the enterprise available at the desk. It
provides access to data that the previous architectures did not. Standards have beendefined for client/server computing. If these standards are understood and used in
-
8/2/2019 iiwas99b-iki
11/12
developing web-based applications, organizations can reasonably expect to buy
solutions today that can grow with their business needs without the constant need to
revise the solutions. Architectures based on open systems standards can beimplemented throughout the world, as global systems become the norm for largeorganizations. While a supportable common platform on a global scale is far from
standardized, it certainly is becoming much easier to accomplish. From the desktop,enterprise-wide applications are indistinguishable from workgroup and personal
applications. Powerful enabling technologies with built-in conformance to opensystems standards are evolving rapidly. Examples include object-oriented development,
relational and object-oriented databases, multimedia, imaging, expert systems,geographic information systems (GIS), voice recognition and voice response, and text
management. These technologies provide the opportunity to integrate their genericcapabilitieswith the particular requirements of an organizationto create a cost-
effective and customized business solution. The web-based client/server modelprovides the ideal platform with which to integrate these enabling technologies. Well-
defined interface standards enable integration of products from several vendors toprovide the right application solution.
REFERENCES
Berson, A. (1996): Client/Server Architecture, McGraw-Hill, New York.
Ibrahim, Ismail Khalil (1998), Developing a Web-based Management Information
System, MSc Thesis, Gadjah Mada University.
Martin, Richard J. and Weadock (1997): Bulletproofing Client/Server SystemComputing, McGraw-Hill, New York.
OBrien, James A (1996): Management Information Systems: Managing
Information Technology in the Networked Enterprise, 3rd
Edition,
IRWIN, New York.
Orifali, Robert et al(1996): The Essential Client/server Survival Guide, John Wiley
& Sons, New York.
Siong, N.B (1996): Exploiting Information Technology for BusinessCompetitiveness, Addison Wesley, Singapore.
Soesianto, F (1999): "Rencana Induk Pengembangan SIM: Realisasi Atas Misi Untuk
Sebuah Visi", Jurnal Teknologi Industri, vol 3 no 3, pp 197- 208 (July1999).
-
8/2/2019 iiwas99b-iki
12/12
Watterson, Karen (1995): Client/Server for Managers, Addison-Wesley, New York.