ISM 50 - Business Information Systems Lecture 7

advertisement
ISM 50 - Business Information Systems
Lecture 10
Instructor: John Musacchio
UC Santa Cruz
October 27, 2009
Class announcements

Midterm Thursday

Office Hours modified for today


2-2:50 , 4:15-5:15
Room E2 557
Student Presentation

Edward Udarbe
Data and information
by
David G. Messerschmitt
Copyright notice
©Copyright David G. Messerschmitt, 2000.
This material may be used, copied, and
distributed freely for educational
purposes as long as this copyright notice
remains attached. It cannot be used for
any commercial purpose without the
written permission of the author.
Key concept
The key commodity manipulated by
information technology is information
To be manipulated in a computing/networking
environment, information must be
represented by data
What is information?
Information
From a user (human) perspective…
….recognizable patterns that influence you in
some way
(perspective, understanding, behavior…)
In the computing infrastructure, information
has a somewhat different connotation as
structure and interpretation added to data
Data
A bit is “0” or “1” — the atom of the
information economy
Data is a collection of bits, like



“0101110111010110”
“0000011”
“111011101011010110101111011011010”
Note: the terms data and information are
not always used consistently!
Representation



Take the place of the original
Equivalent to, in the sense that the original
can be reconstructed from its
representation
Often the original can only be
approximately reconstructed, although it
may be indistinguishable to the user

e.g. audio or video
ASCII
Alphabet
<7>
<8>
<9>
<:>
<;>
<<>
<=>
</>>
<?>
<At>
<A>
<B>
<C>
<D>
Hex
/x37
/x38
/x39
/x3A
/x3B
/x3C
/x3D
/x3E
/x3F
/x40
/x41
/x42
/x43
/x44
Binary
00110111
00111000
00111001
00111010
00111011
00111100
00111101
00111110
00111111
01000000
01000001
01000010
01000011
01000100
Interpretation
Note that this representation is
not unique…
….this one happens to be a standard
(ANSI X3.110-1983)
Structure
A picture
This picture conveys
information
This information is represented in this computer, but how?
Representation of picture:
image
An
approximation!
Expanding a small portion of the
picture, we see that it is represented
by square pixels….
Structure
….300 tall by 200 wide…..
Interpretation
….with a range of 256 intensities
per pixel
300 • 200 • 8 bits = 480,000 bits (but it can be compressed)
Color picture
A color picture can be
represented by three
monochrome images…
At the expense of three
times as many bits
Terminology
Information
Information
Representation
Data
Data
processing
Communicate data to
another user or organization
Data
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Representation needs to be
standardized
Information
Information
If the representation
is not standardized, the
information is garbled!
Data
Communicate data to
another user or organization
Data
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Regeneration




Make a precise copy of the data (copy bit
by bit)
If you know the representation, this is
equivalent to making a precise copy of the
information
Each such precise copy is called a
generation
process is called regeneration
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Replication of information
0101011010111
1010110110100
1011000000110
1010111101110
1010101110101
0101011010111
1010110110100
1011000000110
1010112101110
1010101110101
0101011010111
1010110110100
1011000000110
1010111101110
1010101110101
0101011010111
1010110110100
0101011010111
1011000000110
1010110110100
1010112101110
1011000000110
1010101110101
1010111101110
1010101110101
0101011010111
1010110110100
1011000000110
0101011010111
1010112101110
1010110110100
1010101110101
1011000000110
1010111101110
1010101110101
0101011010111
1010110110100
1011000000110
1010112101110
1010101110101
Anything that can be
regenerated can be replicated
any number of times This is a blessing and a
curse
Analog information cannot be
regenerated
Analog information
can be copied, but not
regenerated
We will never know
exactly what the
original of this
Rembrandt looked
like
Discrete information can be
regenerated
Regeneration can
preserve data (but not its
original physical form)
Regeneration is possible for
information represented
digitally (which is tolerant of
physical deterioration)
0 + noise  0
1 + noise  1
Replication of information requires
knowledge of representation
Information
Information
Replication of information
also presumes knowledge of
its representation
Replication
Data
Data
Replication preserves the integrity
of the data, but that is not sufficient
Every .xxx
DOS file is
a representation
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Implications
Digitally represented information can be
preserved over time or distance in its
precise original form by occasional
regeneration


digital library
digital telephony
Replication of data is easy and cheap
Implications (con’t)

Replication of information requires
knowledge of the structure and
interpretation




Standardization or some other means
Extreme supply economies of scale
You can give away or sell and still retain
Unauthorized replication or piracy
relatively easy
Architecture
by
David G. Messerschmitt
Copyright notice
©Copyright David G. Messerschmitt, 2000.
This material may be used, copied, and
distributed freely for educational
purposes as long as this copyright notice
remains attached. It cannot be used for
any commercial purpose without the
written permission of the author.
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
What is Architecture?
How do you architect a solution?
Three-tier client/server
Application
server
Client
Enterprise
data server
System integration
Architecture
->subsystem implementation
-> system integration
Bring together subsystems and make them
cooperate properly to achieve desired system
functionality
 Always requires testing
 May require modifications to architecture
and/or subsystem implementation
Emergence
Subsystems are more specialized and simpler
functionality
Higher-level system functionality arises
from the interaction of subsystems
Emergence includes capabilities that arise
purely from that interaction (desired or
not)

e.g. airplane flies, but subsystems can’t
Why system decomposition?




Divide and conquer approach to containing
complexity
Reuse
Consonant with industry structure (unless
system is to be supplied by one company)
Others?
Networked computing
infrastructure
by
David G. Messerschmitt
Layering
Elaboration or specialization
Services
Existing layers
Example of Layering: networking
Application
Messages
Transport
Packets
Network
Frames
Link
Bits
Physical
Signals
Software Layering
Application
Middleware
Operating System
Operating system functions




Graphical user interface (client only)
Hide details of equipment from the
application
Multitasking
Resource management


Processing, memory, storage, etc
etc
Middleware Functions

Capabilities that can be shared by many
applications, but that is not part of OS


Hide details of OS from application


Example: Database Management System
(DBMS)
Java Virtual Machine
More purposes we’ll talk about later.
What’s a database?
Database


File with specified structure
Example: relational table
A Database
Year
2002
2002
2002
2002
2002
2002
2002
2002
2002
2003
2003
2003
2003
2003
2003
2003
2003
2003
City
Oakley
Oakley
Oakland
Oakland
Berkeley
Berkeley
Berkeley
Albany
Albany
Oakley
Oakley
Oakland
Oakland
Berkeley
Berkeley
Berkeley
Albany
Albany
Accommodation
Bed&Breakfast
Resort
Bed&Breakfast
Resort
Camping
Bed&Breakfast
Resort
Camping
Bed&Breakfast
Bed&Breakfast
Resort
Bed&Breakfast
Resort
Camping
Bed&Breakfast
Resort
Camping
Bed&Breakfast
Tourists
14
190
340
230
120000
3450
390800
8790
3240
55
320
280
210
115800
4560
419000
7650
6750
Storage Middleware example:
DBMS

Database Management System (DBMS)



Manage Multiple databases
Allow multiple applications to access common
databases
Implement standard data “lookup” (query)
functions.
The Internet
by
David G. Messerschmitt
Intranet
Private internet
intranet
Often connected to
Internet

Global
Internet
Firewall creates a
protected enclave
Firewall
Extranet
An Extranet is composed of
Intranets connected through an unprotected domain
(typically the Internet)

Encryption and other security technologies
used to



protect proprietary information
prevent imposters, vandals, etc
What is the Internet?

An internet is a “network of networks”



Interconnect standard for LAN’s, MAN’s, and
WAN’s
Internet = the major global internet
A private internet is called an intranet
Client - Server
Computing
Client Server Example
Client
Server
“I want to see
www.google.com ”
<html><head><meta http-equiv="contenttype" content="text/html; charset=UTF8"><title>Google</title><style><!-body,td,a,p,.h{font-family:arial,sans-serif;}
.h{font-size: 20px;}
.q{color:#0000cc;}
//--> …
Client Server Example – Layers Revealed
Server
Client
Application
Application:
<html><head><meta http-equiv="content-type"
content="text/html; charset=UTF8"><title>Google</title><style><!-body,td,a,p,.h{font-family:arial,sans-serif;}
.h{font-size: 20px;}
.q{color:#0000cc;}
//--> …
Internet
<html><head><meta http-equiv="content-type"
content="text/html; charset=UTF8"><title>Google</title><style><!-body,td,a,p,.h{font-family:arial,sans-serif;}
.h{font-size: 20px;}
.q{color:#0000cc;}
//--> …
Infrastructure
Infrastructure
Packet
Packet
Packet
Packet
3-Tier Client Server Architecture example
Application Server
Client
Clicks, keystrokes
Balance $0.50
<head>
<title>Bank of America | Online Banking | Accounts Overview</title>
<meta name="Description" content="Bank of America Online Banking
- Accounts Overview">
<link rel="stylesheet" type="text/css" href="/easdocs/images/win_ie.css">
<script language="JavaScript" type="text/javascript" src="/easdocs/ias_js/scripts.js"></script>
<script language="JavaScript" type="text/javascript">
<!-function hover(ref, classRef) { eval(ref).className = classRef; }//-->
</script>
What is Bob’s balance?
$0.50
Shared
data
3-Tier Client Server Architecture example
Client
Application Server
Web Server
Application
Logic
Shared
data
Common
Gateway
Interchange
3-Tier Client Server Architecture example
Client
Application Server
Web Server
Application
Logic
What is
Bob’s
Balance?
Database
Management
System
(DBMS)
Database
Shared
data
Common
Gateway
Interchange
3-Tier Client Server Architecture example
Client
Application Server
Web Server
Java Servlet
What is
Bob’s
Balance?
In some implementations
Application Logic and
Web Server can be put on
Different machines.
Database
Management
System
(DBMS)
Shared
data
Database
Application
Logic
Relational Database
Customer
Alice
$527
Customer
Class
Silver
Bob
$0.50
Bronze
Charles
Balance
$1000000 Gold
DBMS Responsibilities




Hide Changes in the Database hardware from the
Application
Standard operations on the data, including
searches, such a search is called a query.
Separate Database Management from
Applications, so that many applications can access
the same data.
Security, Integrity, Backup, fault tolerance, etc..
3-Tier Client Server Architecture in General
Client
Application Server
-Takes inputs from client
-Decides what to be done next
-Decides what shared data to access
and manipulates it
-Processes shared data
-Accept instructions from user
-Make requests of server
-Display responses of server
-Support multiple applications with common data
-Protect critical data
-Decouple data administration and application
administration
Shared
data
Financial institution
Book distribution
centers
Customers
books4u.com
Consumer
Enterprise
Inter-enterprise
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Clients
Acquirer
bank
Customer logic
Fulfillment logic
Databases
Customers
Merchandise
Orders
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Book
distributors
Peer to peer
Client
Server
Server
Client
Peer
Peer
Slide adapted from slides for Understanding Networked Applications
By David G Messerschmitt. Copyright 2000. See copyright notice
Sun Case
Sun N-tier case

What does Sun make?



Workstations
Servers
Software
How Successful had Sun been up to
1998?


Founded in 1982
Open Standards Workstation





Unix Operating System (Solaris)
TCP/IP networking
1988 – Revenues $1 billion
1993 – Market value $3.0 billon
1997 – Jumped from 3rd to 1st in Unix
Server Market.
How Successful had Sun been up to
1998?


1993 – “The network is the computer.”
1994 – Internet explodes in popularity
Microsoft mid to late 90s

Dominated Desktop software


Users familiar with Windows, Office, etc.
NT servers

Fine for small intranets, “not industrial
strength”
Sun N-Tier Case

What is Java?


Programming Language
Portable between computers with different
operating systems

Easy to write programs in

Easier re-use

But, programs are slow
What problems did the micro era
produce?

Desktops are expensive to maintain


Every PC had a lot of software that had to
be maintained


TCO for windows PC $9900!
Office, Windows, etc…
Small differences, like the order in which
software is installed, could make different
PCs behave differently!
In the Networking Era


These “bloated” PCs are networked and
termed fat clients.
But networking of PCs offered the
possibility of




putting most of the functionality into servers
Getting rid of much of the software on the
client
These clients would be called thin clients.
Sun, Oracle, and others saw it as the future.
Hardware for thin clients

A Network Computer (NC) – a computer
with minimal hardware that depends on a
network connection to a server to function



Be careful not to confuse it with the phrase
“networked computer!”
Example: Sun’s JavaStation (1996-2000)
It is the hardware one would use to implement
a thin-client computing model.
Another term from that era..

A NetPC was a PC introduced by Microsoft
and Intel in 1996




Same software as a normal PC
Did not allow users to install their own
software
NetPC died out
Features of it, and Microsoft’s Zero
Administration Kit, live on in today’s version of
windows.
Microsoft Vision


Keep “fat-client” model
Add some features to Windows to reduce
administration costs
Sun’s Vision





Thin Client model.
Application Servers with Applications written in
Java.
NCs could retrieve applications from application
server as needed.
Applications compatible with any NC hardware
and OS.
Applications could be fixed, added, updated at
the server level, rather than maintaining each PC.
SUN 3 - Tier
Sun N-tier
Sun N-Tier
Sun’s Performance
Net Revenue
20000
18000
16000
14000
12000
10000
Net Revenue
8000
6000
4000
2000
0
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2003
2004
2005
2006
2007
Net income
3000
2000
1000
0
-1000
-2000
-3000
-4000
1994
1995
1996
1997
1998
1999
2000
2001
2002
Net income
Sun’s Performance
20,000
18,000
16,000
14,000
12,000
total assets
10,000
long term debt
8,000
6,000
4,000
2,000
0
1994
1995
1996
1997
1998
1999 2000 2001 2002 2003 2004 2005 2006 2007
Today




3-tier model common.
Sun’s version of 4-tier model not-common.
N-tier model where Webserver and
Application Server on separate equipment
also common.
Sun’s hardware business not strong.


Linux on cheap PCs most common servers
Microsoft desktops replacing Sun workstations
Today

Java

Common in Server implementations



Often used to push simple applets onto client
Not common



Example: Java Servlet implementing application logic
in a banking application.
For “big” desktop applications
Office Suite in Java not popular
Microsoft is still in business…
Download