Title: A Web Service Based Architecture for Ubiquitous Computing Applications
1A Web Service Based Architecture for Ubiquitous
Computing Applications
Supervisor Dr. Md. Mostofa Akbar
- Imranul Hoque (9905010)
- Sonia Jahid (9905016)
Department of CSE, BUET
2- 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, Xerox PARC,1991
3Topics
- Definition
- Motivation
- Problem Definition
- Research Contribution
- Evolution of Web Service
- Related Works (Gaia, Aura, One World)
- Prerequisite of the Architecture
- Architecture
- Analysis of Architecture
- Comparison
- User Scenario
- Design
- Future Works
- Conclusion
4Ubiquitous Computing
- Ubiquitous Computing is invisible, everywhere
computing that does not sit on the desktop but
lies deep inside the environment we live in. - Ubiquitous or pervasive computing introduces the
notion of one person, many computers as
technologies weave themselves into the fabric of
daily life.
5Major Trends in Computing
- Mainframe One Computer, many people
- PC One person, one computer
- Ubiquitous Computing One person, many computers
- Ubiquitous Computing introduces the age of
calm technology, when technology recedes into the
background of our lives.
6UbiComp Vs. Virtual Reality
- UbiComp is roughly the opposite of VR. Where VR
puts people inside a computer-generated world,
UbiComp forces the computer to live out here in
the world with people. - UbiComp is a very difficult integration of human
factors, computer science, engineering, and
social sciences.
7Motivation
- Human-centered computation
- Bringing computation to us instead of taking
ourselves to the devices - Natural communication using speech and gestures
instead of typing, clicking learning computer
jargons - A great software engineering challenge.
- Sociologically, UbiComp may mean the decline of
the computer addict - Overcome the problem of information overload
8Problem Definition
- Building applications for ubiquitous computing
environments introduces great challenge to the
system designers and programmers. Lack of robust,
scalable and interoperable architecture makes the
task even harder.
9Research Contribution
- Study of various UbiComp architecture
- Propose a new architecture for UbiComp based on
Web Service - Comparison of different UbiComp Architectures
- Mapping a user scenario
- Future research work
10Background
- Evolution of Web Service
- Client-Server Architecture
- Common Object Request Broker Architecture (CORBA)
- Distributed Common Object Model (DCOM)
- Java RMI
- Message Oriented Middleware (MOM)
- Architecture for Ubiquitous Computing
- Gaia
- Aura
- One.World
11Evolution of Web Service
12Client-Server Architecture
An architectural model of a typical client server
system in which multiple desktop-based business
client applications access a central database
server.
13Client-Server Limitations
- Complex business processing at the client side
demands robust client systems. - Security is more difficult to implement
- Increased network bandwidth is needed
- Maintenance and upgrades of client applications
are extremely difficult - Suits mostly database-oriented standalone
applications and not robust reusable
component-oriented applications.
14CORBA
The architectural model of CORBA with an example
representation of applications written in C, C,
and Java providing IDL bindings.
15CORBA Limitations
- High initial investment
- Availability of CORBA services
- Scalability
16Java RMI
The architectural model of a Java RMI-based
application solution.
17Java RMI Limitation
- Limited to Java platform
- Achieving high scalability becomes a challenge.
- No specific session management support.
-
18Microsoft DCOM
Basic architectural model of Microsoft DCOM
19DCOM Limitation
- Platform lock-in
- State management
- Scalability
- Complex session management issues
20Message Oriented Middleware
A typical MOM-based architectural model
21MOM Challenges
- Most of the standard MOM implementations have
provided native APIs for communication with their
core infrastructure. This has affected the
portability of applications across such
implementations and has led to a specific vendor
lock-in. - The MOM messages used for integrating
applications are usually based upon a proprietary
message format without any standard compliance.
22Web Service
- a software application identified by a URI,
whose interfaces and bindings are capable of
being defined, described, and discovered as XML
artifacts. A Web service supports direct
interactions with other software agents using
XML-based messages exchanged via Internet-based
protocols - W3C Consortium
23Web service More Specific
- a standardized way of integrating Web-based
applications using the XML, SOAP, WSDL, and UDDI
open standards over an Internet protocol
backbone. - XML is used to tag the data
- SOAP is used to transfer the data
- WSDL is used for describing the services
available and - UDDI is used for listing what services are
available - Web-o-pedia
24Web Services Basic Operational Model
25Architecture for UbiComp
26Gaia - Architecture
Architecture of Gaia
27Gaia - Architecture
- Gaia Kernel
- Gaia Application Framework
- Applications
- iCalendar - schedules appointments and tasks
- Attendance - records participants for a task
- MP3Player - plays music to various speaker
devices - PPTViewer - displays PowerPoint presentations on
multiple displays - TickerTape - scrolls information around the room
displays - Scribble - synchronizes drawing and sketching for
brainstorming - Clicky - A utility for controlling multiple
devices through a handheld device, like a PDA or
a mouse - Poll Manager - Application for conducting a poll,
and gathering results in real-time
28Gaia - Problems
- Too heavy
- CORBA
- Java RMI
- DCOM
- Co-operation between applications and services
running on different implementation is difficult - Gaia applications may not benefit from Web
Services
29Aura - Architecture
Architecture of Aura
30AURA - Architecture
- Odyssey supports resource monitoring and
application-aware adaptation. - Coda provides support for nomadic, disconnect
able, and bandwidth-adaptive file access. - Spectra is an adaptive remote execution mechanism
that uses context to decide how to best execute
the remote call. - Prism is a system layer that is responsible for
capturing and managing user intent. It is layered
above applications and provides high-level
support for pro-activity and self-tuning.
31Aura - Architecture
Prism Architecture
32Prism - Architecture
- Task Manager, embodies the concept of personal
Aura. - Context Observer provides information on the
physical context and reports relevant events in
the physical context back to Prism and the
Environment Manager. - Environment Manager embodies the gateway to the
environment. - Suppliers provide the abstract services that
tasks are composed of text editing, video
playing, etc.
33Aura - scenario
34Aura - Problems
- Ongoing project Many details are still very
vague - Prism is built on RPC and CORBA
- Current research focuses on the case of a single
user
35One.World - Architecture
Architecture of One.World
36One.World Foundation Services
- Virtual Machine
- Provides a common execution environment across
all devices and hardware platforms - Tuples
- Define a common data model for all applications
and thus make it easy to share data - Asynchronous Events
- Make change explicit to applications instead of
forcing users to manually reconfigure their
devices - Environments
- Serve as containers for stored tuples,
application components, and other environments
37One.World System Services
38One.World - Problems
- Built on Virtual Machine JVM / MS CLR
- Tuple based XML is much better solution
- Implements tuples through Java classes Program
everything into code - Own networking protocols impossible to integrate
- Communication through Asynchronous Events What
about Image Data/ Video Stream
39Overall Problems
- Absence of Unique Architecture
- Based on CORBA/RPC/RMI/DCOM
- Interoperability
40New Architecture
41Prerequisites of an Architecture
- Device and Service Description
- Discovery
- Communication
- Inter-operability
- Service Composition
- Security
- Adaptability
- Scalability
42Pseudo Solution
- Solution by Simple Modification
- Central Middleware
- Point to Point Communication
43Central Middleware
- Introduce a centralized middleware controlled by
a third party, but problem
44P2P Communication
- Separately tacking the integration problem with
each of the partners, but problem
45New Web Service based Architecture
46Proposed Architecture
- Creates another level of abstraction over the
current Architectures - New UbiComp applications can be built from
scratch also - Divided into two parts
- Internal Architecture expose internal operations
- External Architecture integrate different
architectures
47Internal Architecture
- Another tier on top of the other tiers of the EA
- Conventional Middle ware is used to build
multi-tier architectures - Applications are hidden behind service
abstractions - The middle ware used at each level need not be
the same - Middleware simply acts as the glue
48(No Transcript)
49Internal Architecture
50External Architecture
- Centralized brokers
- Name and Directory Services UDDI
- Protocol infrastructure
- Communication Protocol SOAP
- Service composition infrastructure
- Definition and Execution WSDL
51(No Transcript)
52Design Features
- Inter-operability
- Simplicity
- Dynamic Discovery
- Integration with WWW
- Security
- Scalability and Extensibility
- Lightweight
53Comparison
Proposed Architecture One.World Gaia Aura
Underpinning Technology Web Services Virtual Machine Distributed Object Systems Distributed Object Systems
Service Description WSDL Tuples XML, OWL XML, ADL
Service Discovery UDDI Proprietary Protocol Presence Service, Space Repository Environment Manager (JINI or Salutation)
Comm. SOAP Asynchronous Events Events, RPC RPC
54Comparison
Architecture Features Propose Architecture One.World Gaia Aura
Service Management Edit, Categorize, Sort, Filter, Create, Delete, Enable, Disable, Change etc. N/A Register, Manage and Control etc. Task Manager
Interoperability Excellent Limited Moderate Moderate
Security Excellent Limited Limited Limited
Resource Usage Low High High High
55User Scenario
56Use Case
57Important Services
- Location Service
- Neighbor Service
- Map Point Service
- Hotel Reception Service
- Hotel Room Service
- Available Resource Service
- Entertainment Service
58Class Diagram
59Sequence Diagram Get to Hotel
60Sequence Diagram Get Room
61Sequence Diagram Get Service
62Sequence Diagram Neighbor Service
63Future Works
- Architecture, Design Implementation
- File Server Content Delivery Network
- Security XML Encryption, XML Signature
- Semantic Web Intelligent Service Discovery
64Conclusion
- Analysis of Gaia, Aura, One.World
- Prerequisites of Architecture
- New Web Service based Architecture
- Critical Evaluation of Architecture
- User Scenario to Architecture Mapping
- Scope for future work
65Thank You
- http//www.imranul.com/publication/thesis.pdf
- imranul_at_gmail.com
- soniajahid_at_gmail.com