Fifth Edition
Learning Objectives
Define the key terms client/server architecture, local area network LAN, distributed database, and middleware. Distinguish between file server and client/server environments and contrast how each is used in a LAN. Describe alternative designs for distributed systems and their trade-offs. Describe how standards shape the design of Internet-based systems.
2008 by Prentice Hall 2
Chapter 14
Describe options for ensuring Internet design consistency. Describe how site management issues can influence customer loyalty and trustworthiness as well as system security. Discuss issues related to managing online data, including context development, online transaction processing (OLTP), online analytical processing (OLAP), and data warehousing.
2008 by Prentice Hall 3
Chapter 14
Chapter 14
Similar to designing single-location systems. Due to multi-location deployment, numerous design issues must be considered. Main issues involve ensuring reliability, availability, survivability, performance. More opportunity for failure due to number of components (more processors, networks, locations, data, etc.). To create effective design, there is a need to understand the characteristics of the architecture commonly used to support the systems
2008 by Prentice Hall 5
Chapter 14
of each site (physical location, building and location infrastructure issues). Description of data usage for each site (use, create, update, destroy). Description of business process for each site. Contrasts of alternative IS architectures for site, data and processing needs of each site.
Chapter 14
Chapter 14
systems use:
LAN-based
Chapter 14
LAN: the cabling, hardware, and software used to connect workstations, computers, and file servers located in a confined geographical area. Typically within one building or campus.
LAN supports a network of personnel computers , each computer is able to share common devices and software attached to LAN. Usually one computer on the LAN is designed as a File Server.
Chapter 14
The LAN module of a DBMS add Concurrent access controls Extra security features Query or transaction queuing management to support concurrent access from multiple users of a shared database
10
Chapter 14
File Servers
File server: a device that manages file operations and is shared by each client PC attached to a LAN. Acts as an additional hard disk for each client PC.
For
example, a PC might recognize a logical F:drive, which is actually a disk volume stored on a file server on LAN
11
Chapter 14
File Servers
When using a DBMS on a file server, each client is authorized to use the DBMS application program on that PC. Thus, there is one database on the file server and many concurrently running copies of the DBMS on each active PC client.
Chapter 14
12
File Servers
All data manipulation is performed at the client PC, not at the file server. Software at the file server only queues access request. The file server acts simply as a data storage device and is an extension of a typical PC. File servers also provide additional resources (e.g. disk drives, shared printing), collaborative applications (e.g. email) and shared data.
Chapter 14
13
File Servers
If a client PC wants to view a single customer account record in a database stored on the server: The file containing all customer account records will be sent over the network to the client Once at PC , the file will be searched to find the desired record Data security checks and file and record locking are done at the client PCs
Chapter 14
14
File Servers
Chapter 14
15
Entire data tables must be transferred instead of individual records. Thus, the network is transferring large block of data and that creates a high network traffic load. Each client workstation must devote memory to a full DBMS. Each client must be powerful to provide a suitable response time. The DBMS copy in each workstation must manage the shared data base integrity Each application program must recognize locks on data and initiate the proper lock Need to program each application with the proper concurrency control, recovery, and security control.
2008 by Prentice Hall 16
Chapter 14
Client/server architecture: a LAN-based computing environment in which central database server or engine performs all database commands sent to it from client workstations, and application programs on each client concentrate on user interface functions.
Chapter 14
17
Application processing is divided between client and server. Client manages the user interface (presenting data). Database server is responsible for data storage and query processing. It also responsible for database recovery, security and concurrent access management
2008 by Prentice Hall 18
Chapter 14
Chapter 14
19
Database engine: the (back-end) portion of the client/server database system running on the server that provides database processing and shared access functions. The server must be more powerful than the server in a file server environment
Chapter 14
20
Client: the (front-end) portion of the client/server database system that provides the user interface and data manipulation functions.
Chapter 14
21
Client environment decouple from server environment Clients can consist of multiple types (e.g. different computers, operating systems and application program) client can be running any application system (VB or any fourth generation language) that can generate the proper commands (SQL) to request data from the server The database engine might be DB2, MYSQL, Sybase or Oracle running of variety of platforms Application program has an API for the database engine
2008 by Prentice Hall 22
Chapter 14
Application program interface (API): software building blocks that are used to ensure that common system capabilities, such as user interfaces and printing, as well as modules are standardized to facilitate data exchange between clients and servers. An API calls library routines that transparently route SQL commands from the front-end client application to the database server Common API interface can be used by any kind of DBMS (MySQL, Sybase, or Oracle).
Chapter 14
23
Advantages
Leverages
of open systems.
Chapter 14
24
Cautions
Difficult
migration from file server to client/server due to compatibility issues (data types, query optimization, distributed databases, data administration of distributed data, CASE tool code generation, crossoperating system integration, etc.). Limited system design and performance monitoring tools. As versions of different front and back end tools change, problems may arise with compatibility, until the API evolves
Chapter 14
25
Chapter 14
26
Client/server architecture represent the way different application system function can be distributed between client and server computer
Data management: these functions manage all interaction between software and file and database, including data retrieval/querying, updating, security, concurrency control and recovery Data processing: these functions manage just the interface between system users and the software, including the display and printing of forms and reports and possibly validating system input Data analysis: these functions transform inputs into outputs, including simple summarization to complex mathematical modeling such as regression analysis.
Chapter 14
27
Different client/server architecture distribute or partition each of these functions to one or both of the client or server computer or into a third computer, referred to application server Application server: a computing server where data analysis functions primarily reside. Three-tiered client/server: advanced client/server architectures in which there are three logical and distinct applications data management, presentation, and analysis that are combined to create a single information system.
2008 by Prentice Hall 28
Chapter 14
Middleware: a combination of hardware, software, and communication technologies that bring data management, presentation, and analysis together into a three-tiered client/server environment.
Open Database Connectivity (ODBC) is a Microsoft standard for database middleware ODBC driver resides in both client and server, allow, for example, an Access query to retrieve data stored in an Oracle database
Chapter 14
29
Applications can be partitioned in a way that best fits the organizational computing need. Easier customization: application code resides on application server, so change done only in one place. Easier maintenance: data analysis is separate from user interface, so changing one can be done independently of the other.
30
Chapter 14
Given the flexibility of placing data management, presentation and analysis on two or more separate machines, six architectures are possible
Distributed Presentation
This architecture is used to fresh up the deliver of existing server-based applications to distributed clients. Technologies called screen scarpers work on client to simply reformat mainframe screen data
Chapter 14
31
Remote Presentation
This architecture places all data presentation functions on the client machine so that the client has total responsibility for formatting data Provide greater flexibility since the presentation on the client will not be constrained by having to be compatible with applications on server
Chapter 14
32
architecture places all software on the client except for the data management functions
Chapter 14
33
This architecture splits analysis functions between the client and server, leaving all presentation on the client and all data management on the server. This is very difficult environment in which to develop, test and maintain software due to the potential for considerable coordination between analysis functions on both client and server.
Chapter 14
34
Distributed Database
This architecture places all functionality on the client, except data storage and management that is divided between client and server Very unstable architecture since it requires considerable compatibility and communication between software on the client and server.
Chapter 14
35
This architecture combines the best features of distributed function and distributed database by splitting both of these across client and server, with presentation functions under the responsibility of the client machine. This permits greater flexibility since analysis functions and data both can be located wherever it makes the most sense
Chapter 14
36
Most new system development focuses on Internet-base applications (for internal processing, business-to-business, and businessto-consumer).
This is motivated by:
The
desire to take advantage of the global computing infrastructure of the Internet. The comprehensive set of tools and standards that has been developed.
Chapter 14
37
There are numerous choices for designing an internet application. The design choice can greatly influence the ease of development and the future maintainability Main design issues: standards, separating content from display, future evolution, site consistency, site management and online data management.
Chapter 14
38
Internet design is simpler than client/server due to the use of standards. Types of Standards:
Domain
naming (BIND): a method for translating domain names into Internet Protocol (IP) addresses.
B refers to Berkeley, Ca. where first developed. Domain name www.wsu.edu translates to 134.121.1.61
Chapter 14
39
Transfer Protocol (HTTP): a communication protocol for exchanging information on the Internet.
It defines how messages are formatted and transmitted as well as how web servers and browsers respond to commands. For example, when you enter a URL into your browser, an HTTP command is sent to the appropriate Web server requesting the desired Web page.
Chapter 14
40
Markup Language (HTML): the standard language for representing content on the Web via command tags.
(b./b) to bold text (table../table) to create tables Very easy language to learn
Chapter 14
41
standardized naming (BIND), translating (HTTP) and formatting (HTML) enables designers to quickly craft systems because much of the complexity of the design and implementation is removed.
standards also free the designer from much of the worry of delivering applications over a broad range of computing devices and platforms.
42
The
Chapter 14
HTML limitations
Tags
are formatting oriented, making it difficult to distinguish data from formatting information Wireless internet phones cannot display HTML due to limited screen space Has fixed set of tags
To address these problems, new language are being developed to separate content (data) from its display.
43
Chapter 14
eXtensible MarkupLanguage (XML): an Internet-authoring language that allows designers to create customized tags, enabling the definition, transmission, validation, and interpretation of data between applications.
Designed
to separate content from display XML tags define what the data mean and do not contain an formatting information
Chapter 14
44
45
HTML will remain a popular tool for developing personal Web pages XML will become the tool of choice for commercial internet application
Chapter 14
46
Future Evolution
Thin client: a client device designed so that most processing and data storage occur on the server.
Thin clients (such as network PCs, handheld computers, wireless phones) are being designed to operate as clients in internet-based environments Thin client are appropriate for doing a minimal amount of clientside processing
Fat client: a workstation that can provide significant amounts of client-side storage and processing
Chapter 14
47
Future Evolution
HTTP and HTML standards support the delivery of internet content to desktop PCs Other standard architectures are needed for delivering internet applications to wireless mobile devices Use of wireless mobile devices Wireless Application Protocol (WAP): a wireless version of HTTP. Wireless Markup Language (WML): a wireless version of HTML.
WML is an XML-based markup language that was designed specifically to describe how WAP content is presented on a wireless terminal
Chapter 14
48
Site Consistency
A well designed system will isolate the content presentation from the business logic and data This to allow any internet capable device to become a part of overall distributed system.
There are many techniques to ensure the consistency of the sites appearance for any type of device
Chapter 14
49
Site Consistency
Professionalism requires a consistent look-and-feel across all pages of a Web site. It is a poor design decision to not to enforce a standard look to entire site
Development and maintenance can become a nightmare when implementing changes to colors, fonts across thousands of web pages within a site.
Cascading Style Sheets (CSSs): a set of style rules that tells a Web browser how to present a document.
CSSs simplify site maintenance and ensure that pages are consistent
50
Chapter 14
Site Consistency
A style sheet may be embedded within each page in the document Head element: <HEAD> <TITLE>CSS Example</TITLE> <STYLE TYPE="text/css"> H1 { font-size: x-large; color: red } H2 { font-size: large; color: blue } </STYLE> </HEAD>
This method is not the best method for implementing CSSs because each page will have to be changed if a single change is made to a sites style.
2008 by Prentice Hall 51
Chapter 14
Site Consistency
An external style sheet may be linked to an HTML document through HTML's LINK element: <LINK REL=StyleSheet HREF="style.css" TYPE="text/css" MEDIA=screen> <LINK REL=StyleSheet HREF="color-8b.css" TYPE="text/css" TITLE="8-bit Color Style" MEDIA="screen, print">
Using HTML LINK element, only a single file needs to be updated when changing style elements across an entire site.
52
Chapter 14
Extensible Style Language (XSL): a specification for separating style from content when generating HTML documents. This separation standardizes a sites look and feel without having to customize to the capabilities of individual devices. XSL provides designers with specification that allows XML content to be displayed on various client device.
Chapter 14
for transforming XML documents into a generic comprehensive form. Methods for formatting the generic comprehensive form into a device-specific form.
For example XML content queried from a remote data source is formatted based on rules within an associated XSL style sheet. This content is then translated to a device-specific format and displayed to the user.
Chapter 14
54
55
Two key issues should be considered (page titles): Use unique titles. Give each page a unique identity that represents its purpose and assists user navigation Choose words carefully. Given that titles are used for summarizing page content, choose words that assist users. Eliminate the use of articles such as an, a or the at the beginning of the title. Do not use title such as Welcome to My company but use My company Home Page Major problem is users do not know where they are going when they follow a hyperlink.
2008 by Prentice Hall 56
Chapter 14
In order to the web site to become the preferred method for the customers to interact with, they must feel that the site and their data are secure.
Designers
Design quality: a professional appearance and clear navigation Up-front disclosure: immediately inform users of all aspects of the customer relationship (e.g. shipping charge, data privacy policy) Comprehensive, correct, and current content. Connected to the rest of the Web.
Chapter 14
57
Customization:
Internet sites that allow users to customize the content and look of the site based on their personal preferences.
Chapter 14
58
Customer Bookmarks: because customers may bookmark any page on your site, you cannot remove a page without running the risk of losing customers Links from Other Sites:
Search Engine Referrals. Old Content Adds Value: old content can remain useful to users because of historic interest for recent events
Chapter 14
59
In a distributed system, security and ease of use are in conflict with each other A secure system is much less user friendly whereas an easy-touse system is often less secure For designing an internet-based system, successful sites strike an appropriate balance between security and ease of use Remember my password: this feature will make a users experience at a site much more convenient and smooth but it also results in a less secure environment
Use of cookies: store user information in client or server side cookies rather than requiring users to reenter information each time they visit the site
2008 by Prentice Hall 60
Chapter 14
Context development : a method that helps analysts to better understand how a system fits within the existing business activities and data.
This
is necessary to ensure that data can be effectively collected, stored, and managed.
metrics integration depth and organizational breath can be used to define a systems context.
2008 by Prentice Hall 61
Two
Chapter 14
Integration depth: a measurement of how far into the existing technology infrastructure a system penetrates.
Deep
integration: the system both retrieves data from and sends data directly into the existing system. Shallow integration: will have minimal real-time coexistence with existing data sources.
Chapter 14
62
Organizational breadth: a measurement that tracks the core business functions affected by a system. A wide breadth reflects a situation in which many distinct organizational area have some type of interaction with the system. A narrow breadth reflects a situation in which very few departments use or access the system.
2008 by Prentice Hall 63
Chapter 14
Chapter 14
64
Chapter 14
65
The
speed at which the DBMS can process transactions. Data organization. Technology chosen to process the transactions.
Chapter 14
66
Chapter 14
67
OLAP tools enable users to analyze different dimensions of data, beyond data summaries and aggregation of normal database queries.
Good
for time series and trend analysis. Enables user to drill-down into the data. Has the ability to answer what if and why questions.
68
Chapter 14
Operational systems: systems that are used to interact with customers and run a business in real time (e.g. sales order processing, reservation systems).
Purpose: run the business on a current basis Primary users: online customers, clerks, salespersons
Informational systems: systems designed to support decision making based on stable point-in-time or historical data.
Data are consolidated into a comprehensive data warehouse from which OLAP tools can be used to extract the greatest and broadest understanding from the data. Purpose: support managerial decision making Primary users: mangers, business analysts, customer(checking status, history)
Chapter 14
69
Data Warehousing
Data warehouse: a subject-oriented, integrated, time-variant, nonvolatile collection of data used in support of management decision making.
Chapter 14
70
Key features:
Subject-oriented:
organized around key subjects of the enterprise (e.g. customers, patients, students or products). Integrated: data are collected from many operational systems within the organization and from external data sources and made to conform to standards (e.g. consistent naming conventions, formats, encoding, structure and related characteristics).
Chapter 14
71
data contains a time dimension so that they may be used as historical records pertaining to the business. Nonvolatile: data in the data warehouse are loaded and refreshed from operational systems, but cannot be updated by users.
Chapter 14
72
Data warehouses contain a broad range of data that, if analyzed appropriately, can provide a broad and coherent picture of business conditions at a single point in time.
Chapter 14
73
Extract data from various source system files and databases. The data from the various source systems are transform and integrate before being load in to data warehouse. Data warehouse is a read-only database organized for decision support. It contains both detailed and summary data. Users access the data warehouse via query languages and analytical tools.
2008 by Prentice Hall 74
Chapter 14
Chapter 14
75
well in small to medium sized companies with a limited number of hardware and software platforms and a relatively homogenous computing environment. with a large number of data sources and a heterogeneous computing environment, the two level architecture leads to problems in maintaining data quality and managing the data extraction process
Chapter 14
76
Data Warehousing
Three-level architecture: Operational systems and data. An enterprise data warehouse. Data marts.
Chapter 14
77
Data Warehousing
A centralized control point ensures the quality and integrity of data before they are made available to end users The single data source provides an accurate, consolidated historical record of business for time-sensitive data For large organizations, the EDW is too large and too complex for users to navigate for most decision support applications.
Chapter 14
78
Data mart: a data warehouse that is limited in scope: its data are obtained by selecting and (where appropriate) summarizing data from the enterprise data warehouse.
Contain selected information from the EDW such that each data mart is customized for the decision support applications of a particular end-user group For example an organization may have several data marts such as marketing data mart or finance data mart
Chapter 14
79
Content management system (CMS): a special type of software application for collecting, organizing, and publishing Web site content from multiple organizational data sources such as data warehouses, personal databases, inventories. The content is stored in a single repository along with templates for formatting any type of Web pages within the organization's Web site.
Chapter 14
80
Because content and formatting is separated by CMS, the same underlying content can be presented differently to different audiences- customers, employees, or suppliers- as well as for different devices. CMS allows content developers and sources to provide updated information for a Web site without having to know any thing about HTML
A personnel manager could author a new job description and post it on the CMS server using WP The CMS server merge the job posting text with a standard template which automatically formats it into a standard Web page.
Chapter 14
81
Electronic Commerce Application: Designing a Distributed Advertisement Server for PVFs WebStore
to increase revenue generated from the WebStore. Potential to create cross-promotions and alliances with other online commerce systems. Potential to provide customers with improved service when looking for additional products that accessorize PVFs product line.
Chapter 14
82
must be served quickly so that site performance is not affected. Advertisement must be uniform in size and resolution, so as not to disrupt the site layout. Advertisement links must not redirect the users browser away from the WebStore.
Chapter 14
83
which advertisements apply, based on where the user is in the WebStore. Personalize the advertisement if the identity of user and preferences are known. Check for any seasonal or promotional advertisements. Log the transaction.
Chapter 14
84
many women, when shopping for desks, clicked on an advertisement for lamps? How many advertisements were served to shoppers looking at filing cabinets?
Chapter 14
85
many people clicked on the first advertisement they saw? How many people clicked on an advertisement and then purchased something from the WebStore?
Chapter 14
86
Summary
In this chapter you learned how to: Define the key terms client/server architecture, local area network LAN, distributed database, and middleware. Distinguish between file server and client/server environments and contrast how each is used in a LAN. Describe alternative designs for distributed systems and their trade-offs. Describe how standards shape the design of Internet-based systems.
2008 by Prentice Hall 87
Chapter 14
Summary (Cont.)
Describe options for ensuring Internet design consistency. Describe how site management issues can influence customer loyalty and trustworthiness as well as system security. Discuss issues related to managing online data, including context development, online transaction processing (OLTP), online analytical processing (OLAP), and data warehousing.
2008 by Prentice Hall 88
Chapter 14