November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 11
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 22
Context-Aware Paradigm for Pervasive Computing Environment (CAPP)
Context-Aware Smart Service Discovery in Pervasive Context-Aware Smart Service Discovery in Pervasive EnvironmentsEnvironments
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 33
GEC Members
Dr. Farrukh Kamran, CASE IslamabadDr. Farrukh Kamran, CASE Islamabad Dr. Muhammad Akbar, CI(E Div), MCSDr. Muhammad Akbar, CI(E Div), MCS Dr. Amir Qayyum, CASE IslamabadDr. Amir Qayyum, CASE Islamabad Lt. Col Naveed Sarfraz, HoD, CS Dept, MCSLt. Col Naveed Sarfraz, HoD, CS Dept, MCS
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 44
Sequence of Presentation IntroductionIntroduction System DesignSystem Design
Context CongregatorContext Congregator Context InterpreterContext Interpreter Decision Making ModuleDecision Making Module
Evaluation & AnalysisEvaluation & Analysis EpitomeEpitome
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 55
Introduction
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 66
Pervasive Environment Pervasive computing is a term for the strongly Pervasive computing is a term for the strongly
emerging trend towardsemerging trend towards Numerous, casually accessible, often invisible Numerous, casually accessible, often invisible
computing devicescomputing devices Frequently mobile or embedded in the environmentFrequently mobile or embedded in the environment Connected to an increasingly ubiquitous network Connected to an increasingly ubiquitous network
infrastructure composed of a wired core and wireless infrastructure composed of a wired core and wireless edgesedges
Examples Examples HospitalsHospitals AirportsAirports Educational InstitutesEducational Institutes
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 77
Issues in Pervasive Computing
Context-AwarenessContext-Awareness Trust, Security and PrivacyTrust, Security and Privacy Seamless CommunicationSeamless Communication Low Powered DevicesLow Powered Devices Self ConfigurationSelf Configuration Information OverloadInformation Overload Social IssuesSocial Issues Business ModelsBusiness Models
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 88
Problem Statement
Smart service discovery & its subsequent Smart service discovery & its subsequent delivery to the mobile users by interpreting delivery to the mobile users by interpreting the users’ as well as the services’ contextthe users’ as well as the services’ context Interpretation of the contextual information Interpretation of the contextual information Resource arbitrationResource arbitration
Delivery of the best service available, among a pool of Delivery of the best service available, among a pool of similar services, to the usersimilar services, to the user
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 99
Context-Awareness
First coined by Schilit in 1994First coined by Schilit in 1994 Refers to the devices that have information about Refers to the devices that have information about
the circumstances under which they operate and can the circumstances under which they operate and can react accordinglyreact accordingly
““Context is any information that can be used to Context is any information that can be used to characterize the situation of an entity. An entity is characterize the situation of an entity. An entity is
a person, place, or object that is considered a person, place, or object that is considered relevant to the interaction between a user and an relevant to the interaction between a user and an application, including the user and applications application, including the user and applications
themselves.” themselves.”
-- Anind Key Dev, GA Tech-- Anind Key Dev, GA Tech
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1010
Feature Comparison of Existing Systems
Rich Rich ContextContext
Decentralized Decentralized ArchitectureArchitecture
OWL based OWL based OntologyOntology
Resource Resource DiscoveryDiscovery
Reasoning Reasoning SupportSupport
Active Badge (1992)Active Badge (1992)
Xerox PARC(1992)Xerox PARC(1992)
Classroom & GUIDEClassroom & GUIDE
Context Toolkit(1999)Context Toolkit(1999)
TEATEA
CAPEUSCAPEUS
GAIA OS (2002)GAIA OS (2002)
CMF (2003)CMF (2003)
CoBrA (2003)CoBrA (2003)
Hydrogen (2002)Hydrogen (2002)
SOCAM (2004)SOCAM (2004)
CASS (2004)CASS (2004)
CAMUS (2005)CAMUS (2005)
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1111
Limitations of Present Systems
Early context aware systems were only Early context aware systems were only location basedlocation based Need of a comprehensive and rich context data Need of a comprehensive and rich context data
representation representation OWL based ontologyOWL based ontology
Existing context-aware systems are problem Existing context-aware systems are problem specific specific Context-aware applicationsContext-aware applications Custom reasoning enginesCustom reasoning engines
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1212
Research Objectives
Design of a Context-Aware SystemDesign of a Context-Aware System Organization of contextual informationOrganization of contextual information Representation of the contextual informationRepresentation of the contextual information Interpretation of the contextual informationInterpretation of the contextual information Best service selection for the userBest service selection for the user
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1313
System Design
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1414
Architectural Foundation Design Principles of Distributed SystemsDesign Principles of Distributed Systems
Service-Oriented Architecture (SOA)Service-Oriented Architecture (SOA)
Context AcquisitionContext Acquisition Context Server ApproachContext Server Approach
Context ManagementContext Management Networked Services ApproachNetworked Services Approach
Context RepresentationContext Representation Ontology Based Models Ontology Based Models
OWL (Web Ontology Language)OWL (Web Ontology Language)
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1515
Design of CAPP
CAPP
DispatcherModule
Context CongregatorModule
ContextInterpreter
ModuleRepresentation Rules
Decision MakerModule
User ID,User Request
BestService
GatheredContext
InterpretedContext
User ID,User Request
Session Manager
BestService
User
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1616
Design of CAPP (contd.)DispatcherModule
Function Receives request and dispatches it to the context congregator module. Returns the result to the requester
Description This module listens to incoming requests and forwards them to the congregator for context gathering.
ContextCongregator
Function Gather context data on the basis of client’s info and request and represent the gathered information in the form enforced by the rule Repository
Description This module gathers context data.
ContextInterpreter
Function To interpret the gathered context as Who, What, When & Where contexts of both the user and the services
Description This module interprets the gathered context by and identifying Who, What, Where & When contexts
Decision MakingModule
Function Makes decision on which service is to be delivered to the client on the basis of interpreted context and weighted averages of the interpreted contexts
Description Receives interpreted context and decides as which is the best available service that should be delivered to the client or returns a list of probable services to the client
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1717
Context Congregator
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1818
Context Space in CAPP
Context
User Context Service Context
SpatialInformation
(Location,orientation, speed,
direction)
TemporalInformation(Time, date)
AdvancedInformation
(Mood, gesture,feelings, user
device state, role)
EnvironmentalInformation(Temperature,
humidity, light,noise)
CommunityInformation
(Peers information)
ActivityInformation
(state)
AdvancedInformation(Availability,battery power,
bandwidth)
CommunityInformation
(Nearby services )
ActivityInformation(Status, load)
Spatial Information(Location,
orientation, speed,direction)
TemporalInformation
(Time, date, season)
EnvironmentalInformation(Temperature,
humidity, light,noise)
Identification(User ID, name)
Identification(Service name, ID
type)
HealthInformation
(BP, sugar level,temperature)
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 1919
Representation Scheme in CAPP
OWL (Web Ontology Language)OWL (Web Ontology Language) OWL Full for rich context representationOWL Full for rich context representation
Controlled VocabularyControlled Vocabulary Set of keywords or phrases that are used to tag units of Set of keywords or phrases that are used to tag units of
information for smart and efficient retrieval by a searchinformation for smart and efficient retrieval by a search Services may have names or aliases Services may have names or aliases For example, a user asking for a For example, a user asking for a temperature servicetemperature service
could be replied by locating a could be replied by locating a weather serviceweather service that is that is registered with the systemregistered with the system
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2020
Vital Context
It is inefficient to gather all the data at all times or It is inefficient to gather all the data at all times or when a user has requested for an interactionwhen a user has requested for an interaction Some of the data is necessary for a particular interaction Some of the data is necessary for a particular interaction
while the rest has no effect on the interactionwhile the rest has no effect on the interaction Gather only data that is critical to the interactionGather only data that is critical to the interaction
A list of necessary data for each type of interaction has A list of necessary data for each type of interaction has been identified and is maintained in the context been identified and is maintained in the context congregator congregator
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2121
Context Interpretation
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2222
Context Processing
Context Congregation
Context Interpretation
Raw, Low-Level Context
Interpreted, High-Level Context
(Data from Sensor Services)
(To The Decision Making Module)
Context Processing
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2323
High-Level View of ContextContext
User Context Service Context
Spatial Information
TemporalInformation
AdvancedInformation
EnvironmentalInformation
CommunityInformation
Activity Information
AdvancedInformation
CommunityInformation
ActivityInformation
Spatial Information
TemporalInformation
EnvironmentalInformation
Identification Identification
High-Level View of Context
Low-Level View of Context
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2424
Interpretation in CAPP Categorization of contextual dataCategorization of contextual data The high-level context identifies the ‘The high-level context identifies the ‘Who’, ‘What’, Who’, ‘What’,
‘Where’ ‘Where’ and ‘and ‘When’ When’ contexts of both the users’ as contexts of both the users’ as well as the services’well as the services’ ‘‘Who’ - identification and description parameters Who’ - identification and description parameters ‘‘What’ - user’s request and the services’ capabilitiesWhat’ - user’s request and the services’ capabilities ‘‘Where’ - the location and environmental parameters Where’ - the location and environmental parameters ‘‘When’ - time of request and time of deliveryWhen’ - time of request and time of delivery
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2525
Interpretation in CAPP (contd.) High-Level User ContextHigh-Level User Context
Deduced WhoDeduced Who Deduced WhenDeduced When Deduced WhereDeduced Where Deduced Health Deduced Health
High-Level Service ContextHigh-Level Service Context Deduced WhoDeduced Who Deduced WhatDeduced What Deduced WhenDeduced When Deduced WhereDeduced Where
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2626
Deduced Who (User)
STARTID, Role,
Name, Alias,SSN
IFRole != NULL
No
User Activity,Peers Activity,User Location,
UserOrientation
Deduce useractivity on thebasis of userlocation andorientation
IFUser Activity == Peers Activity
THENUser Role = Peers Role
Yes
Yes
No
Deduced Who(User ID, User Role)
Get Role fromUser
End
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2727
Deduced When (User)
IFUser State == Device (s) State
&&User State == active
Deduced Activity
Yes
No
User isengaged
User isnot engaged
START
User time, time ofday, date,
user activity,device state
IFUser Time != NULL
&&User Date != NULL
Yes
Deduced Time
End
Get time ofrequest
No
Deduced When(User Time, User Activity)
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2828
Deduced Where (User)
START
User Location, mobility,direction, speed,
orientation, surroundinginformation
End
IFUser Mobility == False
Deduced Location
Deduce expectedlocation on basis
of direction, speedand orientation
Deduced Where(User Location)
No
Yes
IFUser Location != NULL
YesDeduce userlocation on basis
of usersurroundinginformation
No
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 2929
Deduced Health (User)START
Usertemperature,
bloodpressure,
pulse, sugarlevel
IFUser Temperature != Normal Temperature
||User Blood Pressure != Normal Blood Pressure
||User Pulse != Normal Pulse
||User Sugar Level != Normal
Yes
Deduced Health
End
No
User isnot normal
User isnormal
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3030
Interpreted User Context
““User User Deduced User (User) Deduced User (User) has requested a has requested a Deduced Deduced What (User)What (User) service at service at Deduced When (User)Deduced When (User) time. The time. The
user wants the service to be delivered at user wants the service to be delivered at Deduced Deduced Location (User)Location (User) while he/she is involved in activity while he/she is involved in activity Deduced Activity (User) Deduced Activity (User) and has health condition and has health condition
Deduced Health (User)”Deduced Health (User)”
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3131
Deduced Who (Service)Start
Service ID,name, alias,
owner
IFService ID != NULL
Deduce service IDon basis of name,alias and owner
information
Deduced Who(Service ID, Service
Name)
Yes
No
End
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3232
Deduced What (Service)
Start
Service type,methods names,
port, address,namespace
IFService Type != NULL
Deduce servicetype on basis of
service description
Deduced What(Primary Service Type,
Secondary ServiceType)
Yes
No
End
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3333
Deduced When (Service)Start
Service time, date, time of day,season of year, queue length,queue space, availability time,
network situation, state
IFService Activity != Offline
Inform user ofunavailability of the
service
Deduced When(Service Availability Time)
Yes
No
End
IFService Activity != Idle
Deduce availability timeon basis of load and
network situation
No
Yes
Deduce service time on basisof time, date, time of day and
season of year
Service isinactive
Service isreadily available
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3434
Deduced Where (Service)Start
Service location, mobility,speed, direction,
surrounding information
IFService Location != NULL
Deduce servicelocation on basis ofservice surrounding
information
Deduced Where(Service Location)
Yes
No
End
IFService Mobility != False
Deduce expectedlocation on basis of
speed and direction ofthe service
No
Yes
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3535
Interpreted Service Context
““Service Service Deduced Service (Service)Deduced Service (Service) is of type is of type Deduced What (Service)Deduced What (Service). The service is located . The service is located
at location at location Deduced Where (Service)Deduced Where (Service) and will and will be available at time be available at time Deduced When (Service)”Deduced When (Service)”
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3636
Decision Making Module
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3737
Which Service
Decision Making Module
User Context
Service Context 2
Service Context 1
Service Context N
Service Context J
User Context
Output
Inputs
BestAssociation
WHICH
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3838
Which Service (contd.) Deduced What (User) vs. Deduced What (Service)Deduced What (User) vs. Deduced What (Service)
Primary type of the service or the secondary type of the Primary type of the service or the secondary type of the serviceservice
Deduced When (User) vs. Deduced When (Service)Deduced When (User) vs. Deduced When (Service) Service that will be available the earliest to the service Service that will be available the earliest to the service
that will be delivered at the latestthat will be delivered at the latest Deduced Where (User) vs. Deduced Where (Service)Deduced Where (User) vs. Deduced Where (Service)
Services starting from the nearest to the farthest service Services starting from the nearest to the farthest service
Deduced Health (User)Deduced Health (User) The user health imposes restrictions on the selection of The user health imposes restrictions on the selection of
the servicethe service
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 3939
Which Service (contd.) The final selection process selects the best The final selection process selects the best
service for the user service for the user weighted average scheme of weighted average scheme of What, Where, When What, Where, When and and
Health Health Values for any scenario is calculated as Values for any scenario is calculated as
eHealthValusWhenValuer
WhereValueqWhatValuepServiceNWA
Where p, q, r and s are the weights
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4040
Decision ProcessStart
InterpretedUser &Service
Contexts
Deduced What (User)compared with
Deduced What (Service)
Deduced Where (User)compared with
Deduced Where (Service)
Deduced When (User)compared with
Deduced When (Service)
Calculate Weighted Averageof each service
IFNumber of Selected Service != 1
AppropriateService
No
Send ShortList to the User
Yes
End
Manually selectedservice by user
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4141
Evaluation & Analysis
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4242
Evaluation Criteria
Java based simulationJava based simulation Implementation of the flow models in interpretation and Implementation of the flow models in interpretation and
decision makingdecision making Test cases from everyday interaction in CS departmentTest cases from everyday interaction in CS department
Effectiveness of the CAPPEffectiveness of the CAPP Successful if it is able to return a single service or a short Successful if it is able to return a single service or a short
list of probable services to the user for a scenariolist of probable services to the user for a scenario Failure if it is unable to reach a conclusion either by Failure if it is unable to reach a conclusion either by
returning a single service or a short list of probable returning a single service or a short list of probable services and returns list of all servicesservices and returns list of all services
For the case when the user requests a service that is not For the case when the user requests a service that is not listed in the smart space, informing the user that the listed in the smart space, informing the user that the service is not listed is also termed as a successservice is not listed is also termed as a success
Successes should be at least 75% of the total number of Successes should be at least 75% of the total number of casescases
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4343
Assumptions Each service type has at most and at least three Each service type has at most and at least three
services and each user has at most and at least three services and each user has at most and at least three devices (mobile or traditional)devices (mobile or traditional)
The contextual data is always available to the system The contextual data is always available to the system and no ambiguous data is provided by the sensor and no ambiguous data is provided by the sensor servicesservices
Values assigned to priority levels are Values assigned to priority levels are High = 0.9High = 0.9 Medium = 0.5Medium = 0.5 Low = 0.1Low = 0.1
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4444
Test Case 1 Ayesha a student of BE is sitting in BELAB and requests a Print Ayesha a student of BE is sitting in BELAB and requests a Print
serviceservice There are three print services in the department, one in MSLAB and two There are three print services in the department, one in MSLAB and two
in BELABin BELAB One of the services in BELAB is a Fax service that provides prints as a One of the services in BELAB is a Fax service that provides prints as a
secondary capabilitysecondary capability Ayesha’s health condition is Normal and has No health constraintsAyesha’s health condition is Normal and has No health constraints
3
A
AAA WhenValuer
ValueWhereqValueWhatpW
3
B
BBB WhenValuer
ValueWhereqValueWhatpW
3
C
CCC WhenValuer
ValueWhereqValueWhatpW
1,1,1 rqp
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4545
Test Case 1 - Vital ContextUser Context Service Contexts
Attribute Ayesha Attribute Service A Service B Service C
Role Student Queue length 65 60 50
Devices 3 Space avail 64 67 44
Type PDA, smart phone, PC
Status Busy Busy Busy
Status Active, Idle, Idle
Bandwidth 100 Mbps 100 Mbps 100 Mbps
Activity of user Busy Availability time 25 minutes 10 minutes 18 minutes
Illumination Bright Illumination Bright Bright Bright
Dust level Normal Dust level Normal Normal Normal
Temperature 16 C Temperature 16 C 16 C 16 C
Humidity Normal Humidity Normal Normal Normal
Noise Normal Noise High High High
Sistolic 80 Air quality Fit Fit Fit
Di Sistolic 110 Owner Admin Admin Admin
Pulse 71 Primary type Fax Print Print
User temp 38.2 C Secondary type Print NULL NULL
Sugar level Normal ID PRFAXBE PRINTBE02 PRINTMS
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4646
Test Case 1 - Vital Context (contd.) User Context Service Contexts
Attribute Ayesha Attribute Service A Service B Service C
ID AYESHA_BE_08_37
Name PRINTFAX PRINTBE PRINTCS
SSN 37405-0521200-6
Alias BEPRINTANDFAX NULL NULL
Name Ayesha Ahmad
IP 192.168.13.33 192.168.13.181
192.168.13.201
Alias NULL Namespace //belab023//prfaxbe //belab075//printbe02
//mslab017//printms
Orientation Sitting Port 8080 8080 8080
Mobility False Location BELAB BELAB MSLAB
Direction NULL Mobility False False False
Speed 0 Direction NULL NULL NULL
Location BELAB Speed 0 0 0
Date 18 June, 2006
Date 18 June, 2006 18 June, 2006 18 June, 2006
Time 1130 hrs Time 1130 hrs 1130 hrs 1130 hrs
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4747
Test Case 1- Results
What Value Where Value When Value Weighted Average
Service A 0.1 0.9 0.9 0.63
Service B 0.9 0.9 0.9 0.9
Service C 0.9 0.1 0.5 0.5
0
0.2
0.4
0.6
0.8
1
Valu
es
Service A Service B Service C
Services
First Scenario: Ayesha Requests a Print Service
What Value
Where Value
When Value
Weighted Average
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4848
Test Case 1 - Output
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 4949
Test Case 2 Kashif a student of BE is sitting in MSLAB and requests a Scan Kashif a student of BE is sitting in MSLAB and requests a Scan
serviceservice There are three print services in the department, two are in MSLAB and There are three print services in the department, two are in MSLAB and
one is in BELABone is in BELAB Kashif’s health condition is Not Normal and has Fever as his health Kashif’s health condition is Not Normal and has Fever as his health
constraintconstraint
4
AA
AAA eHealthValusWhenValuer
ValueWhereqValueWhatpW
4
BB
BBB eHealthValusWhenValuer
ValueWhereqValueWhatpW
4
BC
CCC eHealthValusWhenValuer
ValueWhereqValueWhatpW
5.1,5.0,5.0,5.0 srqp
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5050
Test Case 2 – Vital ContextUser Context Service Contexts
Attribute Kashif Attribute Service A Service B Service C
Role Student Queue length 0 0 0
Devices 3 Space avail 0 0 0
Type PC, PDA, Laptop
Status Idle Idle Idle
Status Active, Active, Active
Power supply A.C. A.C. A.C.
Activity of user Busy Availability time 0 minutes 0 minutes 0 minutes
Illumination Bright Illumination Bright Bright Normal
Dust level Normal Dust level Normal Normal Normal
Temperature 25 C Temperature 25 C 16 C 16 C
Humidity Normal Humidity Normal Normal Normal
Noise Normal Noise Normal Normal Normal
Sistolic 82 Air quality Fit Fit Fit
Di Sistolic 120 Owner Admin Admin Admin
Pulse 71 Primary type Scan Scan Scan
User temp 102 F Secondary type NULL NULL NULL
Sugar level Normal ID SCANBE SCANMS SCANMS2
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5151
Test Case 2 – Vital Context (contd.)
User Context Service Contexts
Attribute Kashif Attribute Service A Service B Service C
ID KASH_BE_05_199
Name BESCAN MSSCAN MSSCAN2
SSN 37405-126524-9 Alias NULL NULL NULL
Name Kashif Farooq IP 192.168.13.26 192.168.13.125 192.168.13.129
Orientation Standing Namespace
//belab024//scanbe
//mslab096//scanms
//mslab065//scanms2
Location MSLAB Location BELAB MSLAB MSLAB
Date 28 July, 2006 Date 28 July, 2006 28 July, 2006 28 July, 2006
Time 1215 hrs Time 1215hrs 1215hrs 1215 hrs
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5252
Test Case 2 - ResultsWhat Value
Where Value
When Value
Health Value
Weighted Average
Service A 0.9 0.1 0.9 0.9 0.575
Service B 0.9 0.9 0.9 0.1 0.375
Service C 0.9 0.9 0.9 0.1 0.375
00.10.20.30.40.50.60.70.80.9
Valu
es
Service A Service B Service C
Services
Second Scenario: Kashif Requests a Scan Service
What Values
Where Values
When Values
Health values
Weighted Average
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5353
Test Case 2 - Output
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5454
Test Case 3 Waqas a faculty member of CS Department is sitting in faculty Waqas a faculty member of CS Department is sitting in faculty
offices and requests for a Multimedia Projector serviceoffices and requests for a Multimedia Projector service There are three projector services in the department, one in There are three projector services in the department, one in
LECTUREHALL01, one in LECTUREHALL02 and one in MSLABLECTUREHALL01, one in LECTUREHALL02 and one in MSLAB Waqas’s health condition is Normal and has No health constraintsWaqas’s health condition is Normal and has No health constraints
3 AAAA WhenValuerValueWhereqValueWhatpW
3 BBBB WhenValuerValueWhereqValueWhatpW
3 CCCC WhenValuerValueWhereqValueWhatpW
1,1,1 rqp
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5555
Test Case 3 - Vital ContextUser Context Service Contexts
Attribute Waqas Attribute Service A Service B Service C
Role Faculty Queue length 1 0 0
Devices 3 Space avail 1 1 1
Type PC, phone, laptop
Status Busy Idle Idle
Status Idle, Active, Active
Availability time
50 minutes 0 minutes 0 minutes
Activity of user Busy Primary type Multimedia Projector
Multimedia Projector
Multimedia Projector
ID WAQ_FAC_CS_23
Secondary type
NULL NULL NULL
SSN 37405-053320-8
ID ML1 ML2 MMSLAB
Name Waqas Arshad
Name MULTIMEDIALECHALL1
MULTIMEDIALECHALL2
MULTIMEDIAMSLAB
Alias Viky Alias NULL NULL NULL
Orientation Sitting IP NULL NULL NULL
Location Faculty office Location LECHALL01 LECHALL02 MSLAB
Date July 28, 2006 Date July 28, 2006 July 28, 2006 July 28, 2006
Time 1030 hrs Time 1030 hrs 1030 hrs 1030 hrs
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5656
Test Case 3 - Results
What Value Where Value When Value Weighted Average
Service A 0.9 0.1 0.1 0.366666667
Service B 0.9 0.1 0.9 0.633333333
Service C 0.9 0.1 0.9 0.633333333
00.10.20.30.40.50.60.70.80.9
Va
lue
s
Service A Service B Service C
Services
Third Scenario: Waqas Requests a Projector Service
What Values
Where Values
When Values
Weighted Average
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5757
Test Case 3 - Output
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5858
Test Case 4 Maryam a faculty member is standing in the Hallway of CS Maryam a faculty member is standing in the Hallway of CS
department and requests a Telephone service as she wants to department and requests a Telephone service as she wants to make a phone callmake a phone call Maryam being new to the CS department requires the system to select Maryam being new to the CS department requires the system to select
a telephone service for hera telephone service for her There are three telephone services in the department, one is in MSLAB, There are three telephone services in the department, one is in MSLAB,
one is in BELAB and one is in the faculty officeone is in BELAB and one is in the faculty office Maryam’s health condition is Normal and has No health constraintMaryam’s health condition is Normal and has No health constraint
3 AAAA WhenValuerValueWhereqValueWhatpW
3 BBBB WhenValuerValueWhereqValueWhatpW
3 CCCC WhenValuerValueWhereqValueWhatpW
1,1,1 rqp
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 5959
Test Case 4 - Vital ContextUser Context Service Contexts
Attribute Maryam Attribute Service A Service B Service C
Role Faculty Status Idle Idle Idle
Devices 3 Power supply A.C. A.C. A.C.
Type PDA, PDA, Laptop
Availability time 0 minutes 0 minutes 0 minutes
Status Idle, Idle, Idle
Owner Admin Admin Admin
Activity of user Idle Primary type Telephone Telephone Telephone
ID MARY_FAC_EE_057
Secondary type NULL NULL NULL
SSN 37405-056204-7
ID TELMS TELBE TELFAC
Name Maryam Ayaz
Name MSLABTELEPHONE
BELABTELEPHONE
FACULTYTELEPHONE
Orientation Standing Location MSLAB BELAB FACULTYOFFICE
Date 29 July, 2006
Date 29 July, 2006
29 July, 2006 29 July, 2006
Time 1227 hrs Time 1227 hrs 1227 hrs 1227 hrs
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6060
Test Case 4 - Results
What ValueWhat Value Where ValueWhere Value When ValueWhen Value Weighted AverageWeighted Average
Service AService A 0.90.9 0.10.1 0.90.9 0.6333333330.633333333
Service BService B 0.90.9 0.10.1 0.90.9 0.6333333330.633333333
Service CService C 0.90.9 0.10.1 0.90.9 0.6333333330.633333333
0
0.2
0.4
0.6
0.8
1
Va
lue
s
Service A Service B Service C
Services
Fourth Scenario: Maryam Requests a Telephone Service
What Values
Where Values
When Values
Weighted Averge
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6161
Test Case 4 - Output
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6262
Performance Success rate Success rate
In the scenarios there were three successes and one In the scenarios there were three successes and one failurefailure
Only cases where there are no health constraints and Only cases where there are no health constraints and the weights are set to 1, are consideredthe weights are set to 1, are considered
The total number of values where there are three The total number of values where there are three services and each service can have the same three services and each service can have the same three values where ‘A’ is the all possible combination when ‘V’ values where ‘A’ is the all possible combination when ‘V’ is the value levels for ‘N’ number of services is given asis the value levels for ‘N’ number of services is given as
27
33
A
A
VA N
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6363
Performance (contd.)Service A Service B Service C Outcome
1 0.9 0.9 0.9 A B C
2 0.9 0.9 0.5 A B
3 0.9 0.9 0.1 A B
4 0.9 0.5 0.9 A C
5 0.9 0.5 0.5 A
6 0.9 0.5 0.1 A
7 0.9 0.1 0.9 A C
8 0.9 0.1 0.5 A
9 0.9 0.1 0.1 A
10 0.5 0.9 0.9 B C
11 0.5 0.9 0.5 B
12 0.5 0.9 0.1 B
13 0.5 0.5 0.9 C
14 0.5 0.5 0.5 A B C
15 0.5 0.5 0.1 A B
16 0.5 0.1 0.9 C
17 0.5 0.1 0.5 A C
18 0.5 0.1 0.1 A
19 0.1 0.9 0.9 B C
20 0.1 0.9 0.5 B
21 0.1 0.9 0.1 B
22 0.1 0.5 0.9 C
23 0.1 0.5 0.5 B C
24 0.1 0.5 0.1 B
25 0.1 0.1 0.9 C
26 0.1 0.1 0.5 C
27 0.1 0.1 0.1 A B C
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6464
Performance (contd.) There are 3 failures out of a total 27 possible There are 3 failures out of a total 27 possible
combinationscombinations 15 cases resulted in selection of single service while 9 cases 15 cases resulted in selection of single service while 9 cases
provided a short list of the probable servicesprovided a short list of the probable services
The success rate, where ‘F’ is the failure rate when ‘f’ is The success rate, where ‘F’ is the failure rate when ‘f’ is the number of failures among ‘A’ possible combinations the number of failures among ‘A’ possible combinations and ‘S’ is the success rate is given asand ‘S’ is the success rate is given as
%89889.0
111.027
3
S
F
F
AfF
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6565
Epitome
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6666
Limitations of CAPP
Availability of the context sensing devices or the Availability of the context sensing devices or the sensor servicessensor services
The data generated by the devices is very large The data generated by the devices is very large History provides predicted contextual data to the systemHistory provides predicted contextual data to the system
SecuritySecurity The confidentiality can be provided by encrypting and The confidentiality can be provided by encrypting and
then storing the datathen storing the data Gathering data only from the trusted sensor services Gathering data only from the trusted sensor services
present in the environmentpresent in the environment
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6767
Advantages
ModularityModularity ScalabilityScalability Service orientationService orientation Incorporating multiple sensor sourcesIncorporating multiple sensor sources Industry standardsIndustry standards Support to asynchronous as well as synchronous callsSupport to asynchronous as well as synchronous calls AtomicityAtomicity HeterogeneityHeterogeneity TransparencyTransparency
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6868
Conclusion Context-Aware Systems Context-Aware Systems
Context AcquisitionContext Acquisition Context Representation Context Representation Context InterpretationContext Interpretation Decision Making Decision Making
CAPP is a service oriented framework that provides CAPP is a service oriented framework that provides context-aware smart service discovery and deliverycontext-aware smart service discovery and delivery Robust, scalable & modularRobust, scalable & modular Loose coupling Loose coupling conforms to the object-oriented features of encapsulation conforms to the object-oriented features of encapsulation
and information hidingand information hiding
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 6969
Latest References T.P. Moran and P. Dourish, “Context-Aware Computing,” T.P. Moran and P. Dourish, “Context-Aware Computing,”
Special Issue of Human-Computer Interaction,Special Issue of Human-Computer Interaction, vol. 16, 2001 vol. 16, 2001 A.K. Dey, “Understanding and Using Context”, A.K. Dey, “Understanding and Using Context”, Personal and Personal and
Ubiquitous ComputingUbiquitous Computing, Vol. 5, Issue 1, pp. 4 – 7, 2001., Vol. 5, Issue 1, pp. 4 – 7, 2001. M. Baldauf, S. Dustdar, and F. Rosenberg, “A Survey on M. Baldauf, S. Dustdar, and F. Rosenberg, “A Survey on
Context-Aware Systems,” Context-Aware Systems,” International Journal of Ad Hoc International Journal of Ad Hoc and Ubiquitous Computing, and Ubiquitous Computing, 2004.2004.
T. Strang, and C. Linnhoff-Popien, “A Context Modeling T. Strang, and C. Linnhoff-Popien, “A Context Modeling Survey,” Survey,” First International Workshop on Advanced Context First International Workshop on Advanced Context Modeling, Reasoning & Management,Modeling, Reasoning & Management, 2004. 2004.
T. Strang, and C. Linnhoff-Popien, “A Context Modeling T. Strang, and C. Linnhoff-Popien, “A Context Modeling Survey,” Survey,” First International Workshop on Advanced Context First International Workshop on Advanced Context Modeling, Reasoning & Management,Modeling, Reasoning & Management, 2004. 2004.
M. Riaz, S.L. Kiani, S. Lee, S. Han and Y. Lee, “Service M. Riaz, S.L. Kiani, S. Lee, S. Han and Y. Lee, “Service Delivery in Context Aware Environments: Lookup and Delivery in Context Aware Environments: Lookup and Access Control Issues,” in Access Control Issues,” in proceedings of RTSCA’05,proceedings of RTSCA’05, 2005. 2005.
November 18th, 2006November 18th, 2006 CAPP by Umar MahmudCAPP by Umar Mahmud 7070
Thank you