12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Published byModified over 4 years ago
Presentation on theme: "12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel."— Presentation transcript:
12 Chapter 12 Client/Server Systems Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel
12 What Is Client/Server Computing? 4Client/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. 4The key to client/server power is where the requested processing takes place. u In mainframe systems, all processing takes place on the mainframe, and the terminal is used to display the data screens. u The client/server environment provides a clear separation of server and client processes.
12 A Basic Client/Server Computing Model Figure 12.1
12 The Forces That Drive C/S Systems 4The Changing Business Environment u Global market dynamics and competitive pressure u Need for fast, efficient, and widespread data access 4The Need for Enterprise Data Access u Need for fast, on-demand data access by decision makers through easy-to-use interfaces u Rapidly increasing Internet enabled access to external data through the Internet’s inherent client/server structure 4End User Productivity Gains Based on the Use of Data Resources u End user demand for better ad hoc data access and data manipulation, better user interfaces, and better computer integration
12 The Forces That Drive C/S Systems 4Technological Advances u Microprocessor Technology u Data Communication and the Internet u Database Systems u Operating Systems and Graphical User Interfaces (GUIs) u Sophisticated PC-Based End User Application Software 4Cost/Performance Advantages of the PC-Based Platform u Widespread use of business applications such as word processing, spreadsheets, DBMS, and desktop publishing u New application development languages such as Java u Internet (Web)-based application development
12 The Evolution of Client/Server IS 4Mainframes in the 1970s u Complex, proprietary OS u Dumb terminals u Restricted access u Hardware and software dictated IS u Centralized, complex MIS department bureaucracy 4Microcomputers in the 1980s u Easy-to-use software (e.g., spreadsheet) u Micro-based database systems u Data still in mainframes u “Manual download”
12 The Evolution of Client/Server IS 4Intelligent Terminals u PCs connected to the mainframe u Electronic download u Proliferation of snapshot versions of corporate DB u Islands of information u Sneaker net 4Local Area Network u Network operating systems (NOS) u Powerful PCs u Common platform for both end users and MIS specialists
12 The Evolution of Client/Server IS 4Computer Landscape of the 1990s u Networks tie large numbers of heterogeneous computers u PC as the common end user station and the point of access to the entire corporate database u Advanced applications for direct data access u The Internet - Network of networks
12 Figure 12.2 The Evolution Of The Computing Environment
12 Table 12.1 Contrasting Mainframe and Client/Server Information Systems
12 Managerial Expectations of C/S Systems 4Client/Server Benefits u Platform-independent system development u Optimized distribution of processing activities among different platforms u Use of user friendly, cost effective, and compatible techniques, methodologies, and specialized tools 4Observations u Client/Server computing is a tool, not the goal. u Client/Server computing is not the answer to all data management problems. u Client/Server computing has its own set of management problems.
12 4MIS Expectations of Client/Server Benefits u Reduced development and implementation costs u Reduced development time and increased programmer productivity u Extended system life cycle through scalability and portability u Reduced system operational cost u Change of MIS function from development to end user support u Enhanced information deployment Managerial Expectations of C/S Systems
12 4Organizational Expectations of Client/Server Benefits u Flexibility and adaptability u Improved employee productivity u Improved company work flow and a way to reengineer business operations u New opportunities to provide competitive advantages u Increased customer service satisfaction Managerial Expectations of C/S Systems
12 Client/Server Architecture 4Three Components of Client/Server Architecture u The client is any computer process that requests services from the server. It is also known as the front- end application. u The server is any computer process providing services to the clients. The server is also known as the back-end application. u The communication middleware is any computer process(es) through which clients and servers communicate. It is also known as middleware or communications layer.
12 How Client And Server Components Interact Figure 12.3
12 An Example Of Client/Server Architecture Figure 12.4
12 Client/Server Architecture 4Client/Server Principles u Hardware independence u Software independence l Operating systems l Network systems l Applications u Open access to services u Process distribution l Process autonomy l Maximization of local resources l Scalability and flexibility l Interoperability and integration u Standards
12 Client/Server Architecture 4Client Components u Powerful hardware u An operating system capable of multitasking u A graphical user interface (GUI) u Communications capability
12 Client/Server Architecture 4Characteristics of Server Hardware u Fast CPU u Fault-tolerant capabilities u Expandability of CPU, memory, disk, and peripherals u Bus support for multiple add-on boards u Multiple communications options 4Server Process Benefits from the Client/Server Architectural Principles u Location independence u Resource optimization u Scalability u Interoperability and integration
12 Client/Server Architecture 4Communications Middleware Components u The use of database middleware yields l Network independence l Database server independence u Two levels of communications middleware l The physical level deals with the communications between client and server computers (computer to computer). l The logical level deals with the communications between client and server processes (process to process).
12 Client/Server Architecture 4Network Protocols u Transmission Control Protocol/Internet Protocol (TCP/IP) l Official communication protocol of the Internet u Internetwork Packet Exchange/ Sequenced Packet Exchange (IPX/SPX) l Developed by Novell for LAN communications l Supported by the majority of client/server network applications and major PC operating systems u Network Basic Input Output System (NetBIOS) l Developed by IBM for PC applications communications l Supported by the majority of PC operating systems and applications u Application Program to Program Communications (APPC) l Used in IBM mainframe Systems Network Architecture (SNA) environments
12 Client/Server Architecture 4Database Middleware Components u Application programming interface (API) interfaces with the client application. u The database translator translates the SQL requests into the specific database server syntax. u The network translator manages the network communications protocols. 4Three Main Benefits of Using Middleware u Access multiple databases u Database server-independent u Network protocol-independent
Client/Server Architecture 4Middleware Classifications u Messaging-oriented middleware (MOM) u Remote-procedure-call-based (RPC-based) middle ware u Object-based middleware
12 The Quest for Standards 4Standard-Setting Organizations u IEEE (Institute of Electrical and Electronics Engineers) l Network and hardware u ANSI (American National Standards Institute) l Programming languages (e.g., COBOL, SQL) u ISO (International Standards Organization) l OSI (Open Systems Interconnection) reference
12 The Quest for Standards 4Competing Standards u Client operating systems l Microsoft Windows 96/98/2000 -- De facto standard l OS/2, Apple’s Mac OS 8.5, Unix including Linux u Client graphical user interfaces l Microsoft Windows 96/98/2000 -- De facto standard l OS/2 Presentation Manager, Macintosh, UNIX (e.g., Notif, OpenLook) u Server operating systems and network protocols l Database servers: Unix, OS/2, Windows NT Server/2000 Server l Printer and file servers: Novel Netware l LAN protocols: TCP/IP, IPX/SPX, NetBIOS u Middleware l ODBC, IDAPI, DRDA, Q+E
12 Client/Server Databases 4Functions of the Client/Server Database u Provide transparent data access to multiple and heterogeneous clients regardless of the hardware, software, and network platform. u Allow client requests to the database server over the network. u Process client data requests at the local server. u Send only the SQL results to the clients over the network.
12 Client/Server Databases 4Characteristics of Distributed Client/Server Database Systems u The location of data is transparent to the user. u Data can be accessed and manipulated by the end user at any time and in many ways. u The processing of data is distributed among multiple computers.
12 Client/Server Architectural Styles 4Two Key Questions for the Client/Server Architecture u How is the division made? u Where in the system should the results of that division be placed? 4Three Application Logic Components u Input/Output (I/O) u Processing l I/O processing logic l Application or business logic l Data management logic u Storage
12 Client/Server Architectural Styles 4Typical Logic Component Placement u The presentation logic is always placed on the client side. u The I/O processing logic may be placed on the client side or on the server side, but more commonly on the client side. u The business logic can also go either to the client or the server, but usually on the client side. u 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. u The data manipulation logic is most commonly located on the server side.
12 Functional Logic Splitting In Four Client/Server Architectural Styles Figure 12.16
12 Client/Server Architectural Styles 4Notes on Figure 12.16 u 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. u The data management logic is split between the client and the server computers in the database server architectural style. u The transaction server architectural style permits the sharing of transaction details between the client and the server. u 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.
12 Client/Server Implementation Issues 4Client/Server versus Traditional Data Processing u Major changes brought by client/server computing l From proprietary to open systems l From maintenance-oriented coding to analysis, design, and service l From data collection to data deployment l From a centralized to a more distributed style of data management l From vertical, inflexible to more horizontal, flexible organizational style
12 Client/Server Implementation Issues 4Changes in the DP Environment Brought by Client/Server Computing Hardware Single-vendor-dependent Integration of different hardware platforms Software Mainframe, 3GL GUI, networks, communications Data Centralized, single repository Distributed, multiple formats Procedures Centralized, rigid, complex Flexible, decentralized u People Requires support and training for new skills and technology
12 Client/Server Implementation Issues 4Managerial Considerations u Management and support of communications infrastructure u Management and support of applications u Controlling escalating and hidden costs u Managing people and cultural changes u Managing multiple vendor relationships
12 Client/Server Implementation Issues 4Client/Server Development Tools u GUI-based development u A GUI builder that supports multiple interfaces u Object-oriented development with support for code reusability u Data dictionary with a central repository for data and applications u Support for multiple databases u Data access regardless of data model u Seamless access to multiple databases
12 u Complete SDLC support from planning to implementation and maintenance u Team development support u Support for third-party development tools u Prototyping and rapid application development (RAD) capabilities u Support for multiple platforms u Support for middleware protocols u Multiple network support Client/Server Implementation Issues
12 Client/Server Implementation Issues 4An Integrated Approach u 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