+ All Categories
Home > Documents > Client Server Systems

Client Server Systems

Date post: 21-Jul-2016
Category:
Upload: crresoso957
View: 28 times
Download: 3 times
Share this document with a friend
52
Client/Server Systems Rosemarie N. Paglicawan Albert Macapugay Ricky Palmeda MSIT
Transcript
Page 1: Client Server Systems

Client/Server Systems

Rosemarie N. PaglicawanAlbert Macapugay

Ricky PalmedaMSIT

Page 2: Client Server Systems

What Is Client/Server Computing? Client/server is a term used to describe a computing model for

the development of computerized systems. This model is based on the distribution of functions between two types of independent and autonomous processes; servers and clients.A client is any process that requests specific services from server processes. A server is a process that provides requested services for clients. Both clients and servers can reside in the same computer or in different computers connected by a network.

The key to client/server power is where the requested processing takes place. In mainframe systems, all processing takes place on the

mainframe, and the terminal is used to display the data screens.

The client/server environment provides a clear separation of server and client processes.

Page 3: Client Server Systems

A Basic Client/Server Computing Model

Page 4: Client Server Systems

The Forces That Drive C/S Systems

The Changing Business Environment Global market dynamics and competitive pressure Need for fast, efficient, and widespread data access

The Need for Enterprise Data Access Need for fast, on-demand data access by decision makers

through easy-to-use interfaces Rapidly increasing Internet enabled access to external data

through the Internet’s inherent client/server structure

End User Productivity Gains Based on the Use of Data Resources End user demand for better ad hoc data access and data

manipulation, better user interfaces, and better computer integration

Page 5: Client Server Systems

The Forces That Drive C/S Systems

Technological Advances Microprocessor Technology Data Communication and the Internet Database Systems Operating Systems and Graphical User Interfaces (GUIs) Sophisticated PC-Based End User Application Software

Cost/Performance Advantages of the PC-Based Platform Widespread use of business applications such as word

processing, spreadsheets, DBMS, and desktop publishing New application development languages such as Java Internet (Web)-based application development

Page 6: Client Server Systems

The Evolution of Client/Server IS Mainframes in the 1970s

Complex, proprietary OS Dumb terminals Restricted access Hardware and software dictated IS Centralized, complex MIS department bureaucracy

Microcomputers in the 1980s Easy-to-use software (e.g., spreadsheet) Micro-based database systems Data still in mainframes “Manual download”

Page 7: Client Server Systems

The Evolution of Client/Server IS Intelligent Terminals

PCs connected to the mainframe Electronic download Proliferation of snapshot versions of corporate DB Islands of information Sneaker net

Local Area Network Network operating systems (NOS) Powerful PCs Common platform for both end users and MIS specialists

Page 8: Client Server Systems

The Evolution of Client/Server IS Computer Landscape of the 1990s

Networks tie large numbers of heterogeneous computers

PC as the common end user station and the point of access to the entire corporate database

Advanced applications for direct data access The Internet - Network of networks

Page 9: Client Server Systems

The Evolution Of The Computing Environment

Page 10: Client Server Systems

Contrasting Mainframe and Client/Server Information Systems

Page 11: Client Server Systems

Managerial Expectations of C/S Systems

Client/Server Benefits Platform-independent system development Optimized distribution of processing activities among

different platforms Use of user friendly, cost effective, and compatible

techniques, methodologies, and specialized tools

Observations Client/Server computing is a tool, not the goal. Client/Server computing is not the answer to all data

management problems. Client/Server computing has its own set of management

problems.

Page 12: Client Server Systems

Managerial Expectations of C/S Systems

MIS Expectations of Client/Server Benefits Reduced development and implementation costs

Reduced development time and increased programmer productivity

Extended system life cycle through scalability and portability

Reduced system operational cost

Change of MIS function from development to end user support

Enhanced information deployment

Page 13: Client Server Systems

Managerial Expectations of C/S Systems

Organizational Expectations of Client/Server Benefits Flexibility and adaptability

Improved employee productivity

Improved company work flow and a way to reengineer business operations

New opportunities to provide competitive advantages

Increased customer service satisfaction

Page 14: Client Server Systems

Client/Server Architecture Three Components of Client/Server

Architecture The client is any computer process that requests services

from the server. It is also known as the front-end application.

The server is any computer process providing services to the clients. The server is also known as the back-end application.

The communication middleware is any computer process(es) through which clients and servers communicate. It is also known as middleware or communications layer.

Page 15: Client Server Systems

How Client And Server Components Interact

Page 16: Client Server Systems

An Example Of Client/Server Architecture

Page 17: Client Server Systems

Client/Server Architecture Client/Server Principles

Hardware independence

Software independence○ Operating systems○ Network systems○ Applications

Open access to services

Process distribution○ Process autonomy○ Maximization of local resources○ Scalability and flexibility○ Interoperability and integration

Standards

Page 18: Client Server Systems

Client/Server Architecture Client Components

Powerful hardware

An operating system capable of multitasking A graphical user interface (GUI)

Communications capability

Page 19: Client Server Systems

Client Components

Page 20: Client Server Systems

Client/Server Architecture Server Components

File services

Print services Fax services

Communications services

Database services Transaction services

Miscellaneous services

Page 21: Client Server Systems

Server Components

Page 22: Client Server Systems

Client/Server Architecture Characteristics of Server Hardware

Fast CPU Fault-tolerant capabilities Expandability of CPU, memory, disk, and peripherals Bus support for multiple add-on boards Multiple communications options

Server Process Benefits from the Client/Server Architectural Principles Location independence Resource optimization Scalability Interoperability and integration

Page 23: Client Server Systems

Client/Server Architecture Communications Middleware Components

The use of database middleware yields○ Network independence○ Database server independence

Two levels of communications middleware○ The physical level deals with the communications

between client and server computers (computer to computer).

○ The logical level deals with the communications between client and server processes (process to process).

Page 24: Client Server Systems

The OSI Network Reference Model

Page 25: Client Server Systems

Information Flow Through The OSI Model

Page 26: Client Server Systems

Transport Process ID

Page 27: Client Server Systems

Client/Server Architecture Network Protocols

Transmission Control Protocol/Internet Protocol (TCP/IP)○ Official communication protocol of the Internet

Internetwork Packet Exchange/ Sequenced Packet Exchange (IPX/SPX)○ Developed by Novell for LAN communications○ Supported by the majority of client/server network

applications and major PC operating systems Network Basic Input Output System (NetBIOS)

○ Developed by IBM for PC applications communications

○ Supported by the majority of PC operating systems and applications

Application Program to Program Communications (APPC)○ Used in IBM mainframe Systems Network

Architecture (SNA) environments

Page 28: Client Server Systems

Client/Server Architecture Database Middleware Components

Application programming interface (API) interfaces with the client application.

The database translator translates the SQL requests into the specific database server syntax.

The network translator manages the network communications protocols.

Three Main Benefits of Using Middleware Access multiple databases Database server-independent Network protocol-independent

Page 29: Client Server Systems

Database Middleware Components

Page 30: Client Server Systems

Interaction Between Client/Server Middleware Components

Page 31: Client Server Systems

Middleware Accessing Multiple Database Servers

Page 32: Client Server Systems
Page 33: Client Server Systems

Client/Server Architecture Middleware Classifications

Messaging-oriented middleware (MOM)

Remote-procedure-call-based (RPC-based) middle ware

Object-based middleware

Page 34: Client Server Systems

The Quest for Standards Standard-Setting Organizations

IEEE (Institute of Electrical and Electronics Engineers)○ Network and hardware

ANSI (American National Standards Institute)○ Programming languages (e.g., COBOL, SQL)

ISO (International Standards Organization)○ OSI (Open Systems Interconnection) reference

Page 35: Client Server Systems

The Quest for Standards Competing Standards

Client operating systems○ Microsoft Windows 96/98/2000 -- De facto standard○ OS/2, Apple’s Mac OS 8.5, Unix including Linux

Client graphical user interfaces○ Microsoft Windows 96/98/2000 -- De facto standard ○ OS/2 Presentation Manager, Macintosh, UNIX (e.g.,

Notif, OpenLook) Server operating systems and network protocols

○ Database servers: Unix, OS/2, Windows NT Server/2000 Server

○ Printer and file servers: Novel Netware○ LAN protocols: TCP/IP, IPX/SPX, NetBIOS

Middleware○ ODBC, IDAPI, DRDA, Q+E

Page 36: Client Server Systems

Client/Server Options

Page 37: Client Server Systems

Client/Server Databases Functions of the Client/Server Database

Provide transparent data access to multiple and heterogeneous clients regardless of the hardware, software, and network platform.

Allow client requests to the database server over the network.

Process client data requests at the local server.

Send only the SQL results to the clients over the network.

Page 38: Client Server Systems

Client/Server Databases Characteristics of Distributed Client/Server

Database Systems The location of data is transparent to the user.

Data can be accessed and manipulated by the end user at any time and in many ways.

The processing of data is distributed among multiple computers.

Page 39: Client Server Systems

Client/Server Architectural Styles Two Key Questions for the Client/Server

Architecture How is the division made? Where in the system should the results of that division be placed?

Three Application Logic Components Input/Output (I/O) Processing

○ I/O processing logic○ Application or business logic○ Data management logic

Storage

Page 40: Client Server Systems

Application Logic Components

Page 41: Client Server Systems

Client/Server Architectural Styles Five Functional Logic Components

Presentation logic

I/O processing logic Application of business logic

Data management logic

Data manipulation logic

Page 42: Client Server Systems

Application Functional Logic Components

Page 43: Client Server Systems

Client/Server Architectural Styles Typical Logic Component Placement

The presentation logic is always placed on the client side.

The I/O processing logic may be placed on the client side or on the server side, but more commonly on the client side.

The business logic can also go either to the client or the server, but usually on the client side.

The data management logic can also be placed on either the client or the server side, but normally on the client side as part of the application code.

The data manipulation logic is most commonly located on the server side.

Page 44: Client Server Systems

Functional Logic Splitting In Four Client/Server Architectural Styles

Page 45: Client Server Systems

Client/Server Architectural Styles Notes on Figure 12.16

The file server architectural style reflects a setup in which the client does most of the processing, whereas the server side only manages the data storage and retrieval.

The data management logic is split between the client and the server computers in the database server architectural style.

The transaction server architectural style permits the sharing of transaction details between the client and the server.

The application server architecture makes it possible to enjoy the benefits of client/server computing even when the client computers are not powerful enough to run some of the client/server applications.

Page 46: Client Server Systems

Client/Server Implementation Issues

Client/Server versus Traditional Data Processing Major changes brought by client/server computing

○ From proprietary to open systems

○ From maintenance-oriented coding to analysis, design, and service

○ From data collection to data deployment

○ From a centralized to a more distributed style of data management

○ From vertical, inflexible to more horizontal, flexible organizational style

Page 47: Client Server Systems

Client/Server Implementation Issues

Changes in the DP Environment Brought by Client/Server Computing Hardware

Single-vendor-dependent Integration of different hardware platforms

SoftwareMainframe, 3GL GUI, networks, communications

DataCentralized, single repository Distributed, multiple formats

ProceduresCentralized, rigid, complex Flexible, decentralized

PeopleRequires support and training for new skills and technology

Page 48: Client Server Systems

Client/Server Implementation Issues Managerial Considerations

Management and support of communications infrastructure

Management and support of applications

Controlling escalating and hidden costs

Managing people and cultural changes Managing multiple vendor relationships

Page 49: Client Server Systems

Client/Server Implementation Issues Client/Server Development Tools

GUI-based development A GUI builder that supports multiple interfaces Object-oriented development with support for code

reusability Data dictionary with a central repository for data and

applications Support for multiple databases Data access regardless of data model Seamless access to multiple databases

Page 50: Client Server Systems

Client/Server Implementation Issues

Complete SDLC support from planning to implementation and maintenance

Team development support

Support for third-party development tools

Prototyping and rapid application development (RAD) capabilities

Support for multiple platforms

Support for middleware protocols Multiple network support

Page 51: Client Server Systems

Client/Server Implementation Issues An Integrated Approach

Six Phases of Client/Server Decision

1. Information systems infrastructure self-study

2. Client/Server infrastructure definition

3. Selecting a window of opportunity

4. Management commitment

5. Implementation

6. Review and evaluation

Page 52: Client Server Systems

Recommended