You are on page 1of 53

Ubiquitous Computing

The Next Computing Generation


Authors:
Jelena Mirkovi, mirkovic_j@yahoo.com
Vlado Ili, otac@eunet.yu
Andrija Bonjakovi, andrija@etf.bg.ac.yu
Veljko Milutinovi, vm@etf.bg.ac.yu
Ubiquitous Computing University of Belgrade 2/53
Preview
You will learn about:
Past computing trends
The major development trend
Ubiquitous computing (UC)
Facts and myths
Hardware (HW) issues
Legal & Social issues
Projects related to UC
Aura Project
Coda, Odyssey, Spectra, Prism
Mobile Phones Programming - JAVA MIDP
Ubiquitous Computing University of Belgrade 3/53
Intro

"Any technology sufficiently advanced
is indistinguishable from magic.
Arthur C. Clarke
Ubiquitous Computing University of Belgrade 4/53
The Essence Of
Understanding
Computers
Computer a job title!
Computer science is the only major branch
of science that is named after a
gadget.[1].
What matters is not technology itself,
but its impact on us and vice versa.
Ubiquitous Computing University of Belgrade 5/53
The Major Trends in
Computing
Mainframe (Past) 1:N
one computer shared by many people

Personal Computer (Present) 1:1
one computer, one person

N:1 *Internet - Widespread
Distributed Computing*
Ubiquitous N
k
:1
Computing
many computers shared by each one of us [7]
Ubiquitous Computing University of Belgrade 6/53
Phase I - The Mainframe Era
Computers were a scarce resource
run by experts behind closed doors.
Ubiquitous Computing University of Belgrade 7/53
Phase II - The PC Era
In 1984 the number of people using PCs
surpassed that of people using mainframe
computers.
PC Era: You have your computer, it contains
your stuff, and you interact directly and
deeply with it.
The PC is most analogous to the automobile.
Ubiquitous Computing University of Belgrade 8/53
Transition Phase - The
Internet
The Internet brings together
elements of the mainframe
era and the PC era.

Client = PC
Server = Mainframe
Ubiquitous Computing University of Belgrade 9/53
Phase III - The UC Era
The UC era will have lots of computers
shared by each one of us.
UC is fundamentally characterized by the
connection of things in the world with
computation.
Frequently used related terms:
Pervasive computing, Wearable computers,
Intelligent environment, Things That Think (T),
Wearware, Personal Area Networking (PAN).[3]
Ubiquitous Computing University of Belgrade 10/53
UC - Definition
Elements that define ubiquitous
computing:[4]
1) Ubiquity/Pervasiveness lots of devices
2) Connectedness the devices are networked
3) Context-awareness the system is aware of
the context of users
4) Invisibility device effectively becomes
invisible
Ubiquitous Computing University of Belgrade 11/53
UC How To
Understand It
UC goal: enhancing computer use by making
many computers available throughout the
physical environment, but making them
effectively invisible to the user.
Ubiquity
Everywhere
Adaptation to environment
Intuitive, transparent, natural interfaces
Ubiquitous Computing University of Belgrade 12/53
What UC is NOT
It is not science fiction (SF),
though it relies a great deal on it.
It is not impossible.
It is not Virtual Reality (VR).
It is not a Personal Digital Assistant (PDA).
It is not a personal agent (PA).
Ubiquitous Computing University of Belgrade 13/53
Early work in
Ubiquitous Computing
A vision of a future form of computing
set forth by Mark Weiser (1991)
The computer has ceased to exist as a distinct entity
and merged with the normal everyday objects that people
use in their daily tasks.
The normal physical environment will become equipped
with extreamly cheap but powerful devices for computing
and networking.
The PARCTAB system: "tabs", "pads", and
"boards" (forms of inch-, foot-, and yard-sized
computers) built at Xerox PARC, 1988-1994.[8]
MIT's AI-oriented "Things That Think"
program[3]
Ubiquitous Computing University of Belgrade 14/53
UC Here And Now
Most work now is concentrating on the mobile
infrastructure for wireless networking
TCP/IP and OSI are unprepared for handling
mobility (machine's name, and its network
address are variant ).[6]
Calm Technology: Calmness is a new
challenge that UC brings to computing [7]
The Periphery: Calm technology will move
easily from the periphery of our attention, to
the center, and back.
Ubiquitous Computing University of Belgrade 15/53
UC Our Angle

The most powerful things are those
that are effectively invisible to the user.
Make a computer so embedded and so natural,
that we use it without even thinking about it.
Important issues: location and size:
UC must know where they are
(Context-awareness, Legal issues);
Hundreds of wireless UCs per person;
Size: 1mm to wall size.
Ubiquitous Computing University of Belgrade 16/53
UC Hardware
Demands
Technology required for UC :
Cheap, highly advanced VLSI technology (nanotech),
Very low-power computers with convenient displays,
Low-power, ultra-fast network for interconnection:
wireless end-points
cellular topology
wide-bandwidth range
Software systems for UC applications and support.
Ubiquitous Computing University of Belgrade 17/53
UC The Prophecy
Whenever people learn how to use something
sufficiently well, they stop being aware of it.
Pushing computers into the background will
make people more aware of those on the
other end of link.
UC will help resolve the problem of info
overload.
Ubiquitous Computing University of Belgrade 18/53
UC Privacy & Security
Who will have the control: the owner or the
central authority?
How private can one be?
Preserving privacy of location. [5]
Morris's[2] rule: Build computer systems to have
the same privacy safeguards as the real world.
Legal issues: Burglar Problem
Steganography
fingerprinting
Social issues: Problem of Restricted Individuality.
Secure and reliable services
Ubiquitous Computing University of Belgrade 19/53
UC Influence

Social issues:
Decreased alienation
Health: physical & psychological influence
Privacy: power & control
Global legality: digital law; equality or not?
Business: benefit? transparency or not?
Ubiquitous Computing University of Belgrade 20/53
Overview
So far you have learned:
How to understand computers
Trends in human-computer relationship
Ubiquitous computing (UC)
What it is and what it is not
How to understand UC and its significance
Where UC was, where it is now,
and where it will be in the future
We have also discussed:
Location and size questions
Hardware demands and solutions
Security and legal issues
Ubiquitous Computing University of Belgrade 21/53
Summary
The most profound technologies
are those that disappear.
They weave themselves
into the fabric of everyday life
until they are indistinguishable from it.


Mark Weiser

Ubiquitous Computing University of Belgrade 22/53
References
[1] Bruce Sterling speech at the "CRA Conference on Grand Research
Challenges in Computer Science and Engineering, Airlie House,
Warrenton, Virginia June 23, 2002.
[2] Jim Morris of Carnegie-Mellon University
[3] MIT: http://www.mit.edu, http://oxygen.lcs.mit.edu/
[4] Mark Burnett, Chris P. Rainsford, Department of Defense,
Australia, A Hybrid Evaluation Approach for Ubiquitous Computing
Environments
[5] Mark Weiser, Some Computer Science Issues in Ubiquitous
Computing, July 1993.
[6] Mark Weiser, Ubiquitous Computing IEEE Computer "Hot
Topics", October 1993.
[7] Mark Weiser and John Seely Brown, Xerox PARC
The Coming Age of Calm Technology , October 1996.
[8] Xerox PARC: http://www.xerox.com
Ubicomp: http://www.ubiq.com
[9] www.cs.hut.fi/Opinnot/Tik-86.161/2001_files/Merviranta.pdf
[10] Computer History:
http://www.computersciencelab.com/History.htm
Projects Related to UC
The Steps Towards the UC Society
Ubiquitous Computing University of Belgrade 24/53
Preview
You will learn about:
Aura Project
Mobile Phones Programming
Aura
Distraction-Free Pervasive
Computing
Carnegie Mellon University
Ubiquitous Computing University of Belgrade 26/53
Auras starting points
Project by Carnegie Mellon University,
USA[1]
User of the Future will be preoccupied with
real-world interactions.
Human attention will become a scarce
resource
Computers of the Future require certain
level of pervasiveness
Ubiquitous Computing University of Belgrade 27/53
Aura

Involves:
Wireless communication,
Wearable or handheld computers,
Smart spaces.
Introduces:[3]
Proactivity
Self-tuning
Ubiquitous Computing University of Belgrade 28/53
Aura Architecture

Aura consists of: [3]
Coda nomadic file access
Odyssey resource monitoring
Spectra adaptive remote execution
mechanism
Prism support for proactivity and
self-tuning
Ubiquitous Computing University of Belgrade 29/53
Aura WBA
Wireless bandwidth advisor (WBA) for:
Monitoring (info gathering)
Prediction (info producing)
Uses:
SNMP (Simple Network Management Protocol)
AP Segment Service
AP Device Service
Ubiquitous Computing University of Belgrade 30/53
Aura Coda
Uses: [3]
Cyber Foraging
Surrogate Servers
Possible solutions:
Aggressive use of Caching
(Problem: Cache misses)
Data staging[3]
Ubiquitous Computing University of Belgrade 31/53
Aura Coda

Data staging:
Prefatching for pervasive computing
Snapshots
Caching trust rather than content
Privacy: end-to-end encryption
(DES, Triple-DES)
Ubiquitous Computing University of Belgrade 32/53
Aura Odyssey

Features:
Application-aware Adaptability[2]
Shared OS-Application Responsibility
Fidelity[2]
System Agility
Ubiquitous Computing University of Belgrade 33/53
Aura Odyssey
Fidelity:
Odysseys notion of data quality
Degree to which a data used by a mobile
client matches the reference copy
Adaptability:
Laissez-faire adaptation
Application-transparent adaptation
Application-aware adaptation (Odyssey)
Ubiquitous Computing University of Belgrade 34/53
Aura Odyssey

Architecture:[2]
Interceptor
Viceroy
Set of Wardens:
Web warden
Voice warden
Ubiquitous Computing University of Belgrade 35/53
Aura Prism

Auras most important capabilities:
Supporting user mobility
Protection from variations in resource
availability
Prism (task layer) high-level support for:
Proactivity
Self-tuning
Ubiquitous Computing University of Belgrade 36/53
Aura Prism

Prisms architecture features:
Context observation
Environment management infrastructure
Task explicit representation
Ubiquitous Computing University of Belgrade 37/53
Resources

[1] Project Aura, Carnegie Mellon University,
http:// www-2.cs.cmu.edu/~aura
[2] Brian Noble, University of Michigan, System Support for
Mobile, Adaptive Applications, IEEE Personal
Communications, February 2000.
[3] David Garlan, Daniel P. Siewiorek, Asim Smailagic, Peter
Steenkiste Carnegie Mellon University,Project Aura: Toward
Distraction-Free Pervasive Computing,
http://computer.org/pervasive

JAVA MIDP - CLDC
Mobile Phones Programming
Ubiquitous Computing University of Belgrade 39/53
INTRODUCTION
Connected Limited Device Configuration
(CLDC) - set of core Java APIs
closely tied to a Java Virtual Machine (JVM)
defines the Java language features
and the core Java libraries of the JVM
The Mobile Information Device Profile (MIDP)
a set of Java APIs that together with the CLDC
provides a complete J2ME application runtime
environment targeted at mobile information devices,
such as cellular phones
Ubiquitous Computing University of Belgrade 40/53
Developing Applications
with MIDP
MIDlet - an J2ME/MIDP platform application

Various sizes of displays, different keyboards,
and the "look and feel" of devices
Incoming phone call or SMS
during the execution of a MIDlet
Losing network connection
while a MIDlet is running
Ubiquitous Computing University of Belgrade 41/53
MIDP USER INTERFACE LEVELS
Ubiquitous Computing University of Belgrade 42/53
Nokia Series 30
User Interface
A monochrome or color
display resolution
of 96 x 65 pixels.
A two-soft-key concept:
left/right soft keys
Send key
End key
scrolling keys
Ubiquitous Computing University of Belgrade 43/53
Nokia Series 40 User Interface
High-resolution color
display and supports
four-way scrolling
Screen size 128 x 128
pixels and 4096 colors
Improved key
applications like MMS,
picture viewing, Java
MIDP, Browser,
Calendar, and
personalization
Ubiquitous Computing University of Belgrade 44/53
Nokia Series 60 User Interface
UI style for imaging phones
A large color display well-
suited to different kinds of
applications; display size is
176 x 206 pixels
The first product to use
Nokia Series 60 UI style is
Nokia 7650.

Ubiquitous Computing University of Belgrade 45/53
Nokia Series 80 User Interface
A two-hand-operated
feature concept platform
A color screen and abundant space
for different types of applications
Ubiquitous Computing University of Belgrade 46/53
Nokia Developer's Suite
for J2ME
Automated code generation tools,
archive builders, and software
development tools, including visual
MIDP phone emulators.
Integrated with either Borland's Jbuilder
or Sun Microsystem's Forte for Java
Used as a standalone
Ubiquitous Computing University of Belgrade 47/53
A SIMPLE EXAMLPE:
TIC TAC TOE
Phones having MIDlet application for
TIC Tac TOE installed
Server side application:
Servlet for connecting players
Game objects for keeping track of games
Emulated on Nokia 6310i
Nokia Series 30 User Interface
Ubiquitous Computing University of Belgrade 48/53
A SIMPLE EXAMLPE:
TIC TAC TOE

Ubiquitous Computing University of Belgrade 49/53
Downloading and Installing Java
Applications to Nokia Phones

Applications pre-installed at the factory,
Downloaded over a serial cable from a PC,
Downloaded Over the Air (OTA) by an
application such as a WAP browser
OTA downloading is expected to be the most
important way to download MIDlets to phones
For example, Club Nokia will offer
downloadable Java applications to Nokia
mobile phone users.
Ubiquitous Computing University of Belgrade 50/53
OTA
Discovery
Installation
JAD and JAR
file attributes
Updating
Removal
MIDlet deployment and
lifecycle
Ubiquitous Computing University of Belgrade 51/53
Resources
http://www.nokia.com
http://java.sun.com
Ubiquitous Computing University of Belgrade 52/53
Overview
You have learned about:
Distraction-Free Pervasive Computing - Aura
Mobile Phones Programming: JAVA MIDP - CLDC
Related projects:
Data-centric vision of future computing
Portolano Project (Xerox PARC & University of Washington)
UC education & entertainment Geney, E, FPS
Oxygen Project (MIT)
Wearable Computers
Endeavour (Berkeley)
Future client-centric pervasive approach PSI (HP Labs)
CoolTown (HP Labs)

Ubiquitous Computing University of Belgrade 53/53
Summary
Our computers should be like our childhood:
an invisible foundation that is quickly
forgotten,
but always with us,
and effortlessly used throughout our lives.

Mark Weiser

You might also like