21
Jim Janson

Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Embed Size (px)

Citation preview

Page 1: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Jim Janson

Page 2: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

AgendaEvolution of software architectures3-tierUser interfacesApplication serversDatabases

Page 3: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

In the beginning, there were mainframes…

Page 4: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Mainframe ArchitectureAdvantages

Simple deploymentSecure

DisadvantagesDumb terminals limited user interfaceAll work performed on server

Page 5: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Client-Server Architecture

Page 6: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Client-server ArchitectureAdvantages

Richer user interfacesProcessing off loaded to PCs

DisadvantagesMultiple copies of software; updates a problemOnly so much horse power on a PC

Page 7: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

3-Tier Architecture

Page 8: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

3-Tier ArchitectureTier 1: the client contains the presentation

logic “thin client”

Tier 2: application server provides the business processes logic and the data access.

Tier 3: the data server provides the business data.

Page 9: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

3-Tier ArchitectureEasier to modify or replace any tier without

affecting the other tiers.

Separating the application and database functionality means better load balancing.

Adequate security policies can be enforced within the server tiers without hindering the clients.

Page 10: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Thin Client = Web BrowserUser interface displayed in a web browserTop web browsers:

Internet Explorer Firefox Safari Opera

Page 11: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Web BrowsersAll browsers interpret HTML and Javascript

Page 12: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Tools for Building Web PagesDreamweaverMicrosoft Expression WebPlus many free sites and tools

Page 13: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Extending the browserActive X Controls/Plug-insAbility to support more than just

HTML/JavascriptPopular extensions:

FlashJavaSilverlight

Some sites to look at:http://www.2advanced.comhttp://demo.northkingdom.com/ihuvudetpatoyota/in

dex_en.htmlhttp://www.stat.sc.edu/~west/javahtml/Histogram.h

tml

Page 14: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Middle tierTies client to dataWeb server

Serves web pages to browserBusiness logic Database access

Page 15: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Database ServerSeparate computer running database

softwarePopular databases

OracleSQL ServerMySQLPostgresSQL

What’s SQL?

Page 16: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

DatabasesConsist of tables Each table has columns and rows (records)Each column has different attributes

UserId FirstName LastName Street City

1 Abby Wentworth 3 Park Place

Boston, MA

2 Pete Pierce 34 Glass Ave

Berlin, NH

3 Sam Adams 17 First St Fargo, ND

Page 17: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

SQL create table USERS ( userid number(19,0) not null,

firstname varchar(30) , lastname varchar(30), street varchar(100), city varchar(40));

Page 18: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Storing InformationA table can store millions of records Don’t want to duplicate informationUse multiple tablesCommon information in a table

Page 19: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

ScenarioTrack purchases at a web siteUser must create an accountUser logs in with account to purchase

Page 20: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Users Table

Purchases

UserId FirstName

LastName

Street City

1 Abby Wentworth

3 Park Place

Boston, MA

2 Pete Pierce 34 Glass Ave

Berlin, NH

3 Sam Adams 17 First St Fargo, ND

PurchaseId

Date Item Price UserId

4234 07/11/2009 Book 19.95 1

4235 09/04/2009 Wii 249.95 3

4236 10/21/2009 Rock Band 49.95 3

Page 21: Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases

Data miningData mining is the process of extracting

patterns from data.Predict trends and behaviorsDiscover unknown patterns

Use in sales Google flu trends

http://www.google.org/flutrends/intl/en_us/