1 A Web Service Based Architecture for Ubiquitous Computing Applications Imranul Hoque(9905010)...

Preview:

Citation preview

1

A Web Service Based Architecture for Ubiquitous Computing Applications

Imranul Hoque(9905010)Sonia Jahid(9905016)

Supervisor: Dr. Md. Mostofa Akbar

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

3

Topics 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

4

Ubiquitous 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.

5

Major 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.

6

UbiComp 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.

7

Motivation

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

8

Problem 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.

9

Research 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

10

Background

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

11

Evolution of Web Service

12

Client-Server : Architecture

An architectural model of a typical client server system in which multipledesktop-based business client applications access a central database server.

13

Client-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.

14

CORBA

The architectural model of CORBA with an example representation of applications written in C, C++, and Java providing IDL bindings.

15

CORBA: Limitations

High initial investment Availability of CORBA services Scalability

16

Java RMI

The architectural model of a Java RMI-based application solution.

17

Java RMI: Limitation

Limited to Java platform Achieving high scalability becomes a

challenge. No specific session management support.

18

Microsoft DCOM

Basic architectural model of Microsoft DCOM

19

DCOM: Limitation

Platform lock-in State management Scalability Complex session management issues

20

Message Oriented Middleware

A typical MOM-based architectural model

21

MOM: 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.

22

Web 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

23

Web 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

24

Web Services: Basic Operational Model

25

Architecture for UbiComp

26

Gaia - Architecture

Architecture of Gaia

27

Gaia - 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

28

Gaia - 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

29

Aura - Architecture

Architecture of Aura

30

AURA - 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.

31

Aura - Architecture

Prism Architecture

32

Prism - 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.

33

Aura - scenario

34

Aura - 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

35

One.World - Architecture

Architecture of One.World

36

One.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

37

One.World – System Services

38

One.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

39

Overall Problems

Absence of Unique Architecture Based on CORBA/RPC/RMI/DCOM Interoperability

40

New Architecture

41

Prerequisites of an Architecture Device and Service Description Discovery Communication Inter-operability Service Composition Security Adaptability Scalability

42

Pseudo Solution

Solution by Simple Modification Central Middleware Point to Point Communication

43

Central Middleware

Introduce a centralized middleware controlled by a third party, but problem …

44

P2P Communication

Separately tacking the integration problem with each of the partners, but problem …

45

New Web Service based Architecture

46

Proposed 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

47

Internal 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

49

Internal Architecture

50

External Architecture

Centralized brokers Name and Directory Services: UDDI

Protocol infrastructure Communication Protocol: SOAP

Service composition infrastructure Definition and Execution: WSDL

51

52

Design Features

Inter-operability Simplicity Dynamic Discovery Integration with WWW Security Scalability and Extensibility Lightweight

53

Comparison

ProposedArchitect

ure

One.World

Gaia Aura

Underpinning

Technology

Web Services

Virtual Machine

Distributed

Object Systems

Distributed

Object Systems

ServiceDescriptio

n

WSDL Tuples XML, OWL XML, ADL

ServiceDiscovery

UDDI Proprietary

Protocol

PresenceService,SpaceRepository

Environment

Manager (JINI

or Salutation)

Comm. SOAP Asynchronous

Events

Events, RPC

RPC

54

Comparison

ArchitectureFeatures

ProposeArchitect

ure

One.World

Gaia Aura

ServiceManagemen

t

Edit, Categorize,Sort,

Filter,Create, Delete,Enable,Disable,Change

etc.

N/A Register,Manage

andControl

etc.

Task Manager

Interoperability

Excellent Limited Moderate Moderate

Security Excellent Limited Limited Limited

Resource Usage

Low High High High

55

User Scenario

56

Use Case

57

Important Services

Location Service Neighbor Service Map Point Service Hotel Reception Service Hotel Room Service Available Resource Service Entertainment Service

58

Class Diagram

59

Sequence Diagram – Get to Hotel

60

Sequence Diagram – Get Room

61

Sequence Diagram – Get Service

62

Sequence Diagram – Neighbor Service

63

Future Works

Architecture, Design – Implementation File Server – Content Delivery Network Security – XML Encryption, XML Signature Semantic Web – Intelligent Service Discovery

64

Conclusion

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

65

Thank You

http://www.imranul.com/publication/thesis.pdf

imranul@gmail.com

soniajahid@gmail.com

Recommended