10-1 Chapter 10 Site Architecture McGraw-Hill/Irwin Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
10-1
Chapter 10
Site Architecture
McGraw-Hill/Irwin Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
10-2Site ArchitectureSite Architecture Issues Issues
• Logical architecture.• Factors involved in choosing a logical
architecture?• The presentation layer.• The business logic layer.• The data layer.• Factors involved in choosing a
physical architecture.
10-3Logical vs. Physical ArchitectureLogical vs. Physical Architecture
• Logical Architecture Defines the software components and
the desired functionality of those components in a site
• Physical Architecture Defines the hardware and third-party
software needed to host and maintain a website
10-4Logical ArchitectureLogical Architecture
Four main logical models have evolved over the years:
• Mainframe: systems are built around a single, monolithic computer that is shared by all users on the system
• Client/Server: a central server is used to store information that is accessed and acted upon by any number of client machines connected to the server through a network
10-5Mainframe ArchitectureMainframe Architecture
Dumb Terminals (no CPU)
Single Mainframe Computer
10-6Client/Server ArchitectureClient/Server Architecture
PC Workstations
Single Central Server
10-7
• N-Tier: compartmentalizes different functions of a system into modules that interact with one another
• Distributed: is a system of servers, loosely coupled across a dispersed network, that work together to deliver a website
Logical ArchitectureLogical Architecture
10-8N-Tier ArchitectureN-Tier Architecture
Presentation LayerBusiness Logic Layer
Data Layer
PCs with Web Browsers
10-9Distributed ArchitectureDistributed Architecture
Three-Tier System
PCs with Web BrowsersExternal Payment
Processing
Internal Inventory System
Internal Link
External Link
10-10Choosing an ArchitectureChoosing an Architecture
• A number of factors can influence this decision, they can include: Functionality: refers to the functions that a system must
implement
Flexibility and Adaptability: refer to the ability of a system to adapt to changes in its function
Scalability: refers to the ability of a system to be extended to handle a greater load, usually as a result of an increase in the user base
Performance: is the perceived speed of a system, often measured by the user as response time
Maintenance: refers to the monitoring and updating of a system
10-11Choosing an ArchitectureChoosing an Architecture
Required Skills: refers to the skills needed to design, build, and maintain a system
Security: refers to the ability of a system to prevent illegal or inappropriate use of its data and to deter hackers
Reliability: refers to the amount of time a system can be expected to be available to users
Metrics: are the measurements and data needed by the company to understand the operation of a system
Cost: is the amount of money spent to design, build, and maintain a system
Time: refers to the number of people/hours, as well as total time period, needed to develop a system
10-12Three-Tier ArchitectureThree-Tier Architecture
Web Server
Payment User/Admin Content
Database
Presentation
Business Logic
Data
Modules
10-13The Data LayerThe Data Layer
• The main function of the data layer is to provide fast, reliable access to data needed to run a system
• Additionally, the data layer is responsible for maintaining information about the relationships between data
10-14Types of DatabasesTypes of Databases
• Flat-File: are single computer files that store all of the information for a system
• Relational: data are stored in a series of tables, each table stores a discrete piece of data for the system
• Object Oriented: encapsulates all data into different types of objects
10-15Choosing a DatabaseChoosing a Database
• To choose the right database several factors must be weighed: Load/Storage Capacity Type of Data Speed Cost Reliability
10-16The Business-Logic LayerThe Business-Logic Layer
• The business-logic layer is responsible for implementing the basic rules of the system according to the operating rules of the business
• This layer is often divided into a number of submodules, each handling different aspects of the system
10-17The Presentation LayerThe Presentation Layer
• The presentation layer is responsible for all communications with the user’s computer Renders the content from the DB
• The most common ways to present data to site users are: HTML Third-party Plug-ins Homegrown Plug-ins
10-18External SystemsExternal Systems
• Kinds of systems most often connected with a companies site include: CRM Payment Processing Shipping Fulfillment Inventory Financial Human Resources B2B Exchanges Outside Suppliers
10-19Physical ArchitecturePhysical Architecture
Hardware• When choosing hardware, a number
of factors must be considered: Platform Power Hosting
10-20Hosting AlternativesHosting Alternatives
• Free: Hosts offering free service (ex.,
geocities.yahoo.com) Good for very simple sites (personal
homepages)• Shared Server:
Many websites are placed on the same Web server
Good for small businesses looking for increased capabilities
• Dedicated Server: Website is allocated its own dedicated server Good for larger websites
10-21Hosting AlternativesHosting Alternatives
• Co-located Server: Offers companies the most control over the
hardware running the site Customer owns server and is only paying for
bandwidth and a physical space for the server• In-house:
Good for companies with adequate resources (Global 1000 companies)
Sites need 24-hr dedicated personnel, power backup, security maintenance, and redundancy
10-22Hosting for Large WebsitesHosting for Large Websites
• Most large websites are hosted by third-party facilities
• The main service offered by these companies is reliability
• Typical service offerings from third party companies include: Redundant Internet Connections Backup Power Physical Security Server Management Services Offsite backup Storage