iiwas99b-iki

Upload: hassan-mohamed

Post on 05-Apr-2018

216 views

Category:

Documents


0 download

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.