D 2 , D 3 , D 7

advertisement
1. Middleware service for Ubiquitous
Computing Applications
(a specific type of distributed systems)
2. A Middleware service for Ubiquitous
Computing Applications
3. An application using the above
middleware and middleware service 1
Outline for 1 and 2
 Motivation
 State
of art and Background
 Our approach
 Illustrative example
 Evaluation
 Implementation
 Simulation
 Conclusions
on the test bed
tools
and Future research
2
Motivation

Ubiquitous Computing (Ubicomp) environments
- Computing everywhere
- Vast number of embedded, wearable, and hand-held devices
 Short range wireless capability

Some devices are not reachable directly from others
Mostly devices are mobile
 Devices have low power, hence less computation
 Use of on board sensors
- Transparent and context-aware communication
- Neighbor-to-neighbor communication (communication range)
- Applications operating in ubicomp usually exhibits:
 Context sensitivity
 Ad hoc communication

3
Concepts and Terminologies

Context
- Any detectable and relevant attribute of a device, its
interaction with other devices and/or its surrounding
environment at an instant of time.
- Example: (battery) power, light intensity, location

Situation
- Any action taken by the device over a period of time that
is of interest to the device, and/or variation of a set of
contexts over a period of time.
- Example: During the last two hours, the battery power
has reduced by 10% and no recharge action has taken
place.
4
Concepts and Terminologies (cont.)
 Information
dissemination
- Distribution of information from a device
to a set of devices in any computing
environment.
 Situation-aware information
dissemination
- Distribution of information based on
context and/or situation.
- Example: Shopper’s device looks for
deals when the device is inside shopping
mall.
5
State of Art
 Directed
diffusion, USC
- use flooding, infrastructure less network, does not support
mobility of devices and no support for situation-awareness
 SPIN
(Sensor protocols for information via
negotiation), MIT
- requires prior knowledge of the network, use flooding for
data negotiation and no support for situation-awareness
 Profile
based information dissemination,
University of Toronto
- fixed infrastructure based wireless network, use profile for
information dissemination
6
Background


Reconfigurable Context-sensitive Middleware
(RCSM), ASU
- Supports situation-awareness
- Supports context-sensitivity
* Ability of the device to detect current context and
changes in contextual data
* Ability to capture and analyze context and
interrelationship between users’ actions and devices
Addition of information dissemination service (IDS) to
RCSM
7
Information Dissemination
Service (IDS) in RCSM
Situation-Aware Application Objects
RCSM
Information
RCSM Ephemeral Group
Communication Service Dissemination Service
Other
Services
Core Components
Adaptive Object Containers (ADCs)
[Providing awareness of situation]
Operating System
Optional Components
Object Request Broker (R-ORB)
[Providing transparency over ad hoc communication]
Transport Layer Protocols for Ad Hoc Networks
Sensors
8
Addition of Information Dissemination Service
in a Ubicomp Environment using RCSM
IDS
IDS
Information
dissemination
RCSM
RCSM
PDA
Laptop
IDS
IDS
RCSM
RCSM
IDS
PDA
RCSM
Laptop
PDA
IDS
Wireless
link
IDS
RCSM
Laptop
RCSM
PDA
9
Features of Information
Dissemination Service (IDS)
1) Unknown destination: A distant device is
not reachable from a source device.
2) Situation-aware: Ubicomp applications
distribute information based on situation .
3) Multi-hop: In ubicomp environment, a device
has short-range wireless capability.
4) Mobility: In ubicomp environment, devices
are mobile.
10
Features of IDS (cont.)
5) Loop free: Same information does not create
unnecessary flooding.
6) Energy efficient: The devices in ubicomp
environment operate on battery.
7) Decentralized: Information dissemination
mechanism
for
ubicomp
should
be
decentralized, since the devices are mobile
(joins and leaves at their will).
8) Equality: Information dissemination
mechanism should be equal for each device.
11
Features of IDS (cont.)
9) Locality: Each device is able to manage itself
and to coordinate with others based on local
information for information dissemination.
10) Self-containment: Every device is selfcontained in functions to manage itself and
coordinate with others for information
dissemination.
12
Our Approach to Information Dissemination
Step1
A device wants
to disseminate
information
Step2
No
Wants
response?
Information dissemination
without response
Yes
Information dissemination
with response
A
Step3
B
13
Our Approach to Information Dissemination
(cont.)
Step1)
A
Associate communication
primitives with coordination
states
Step4
Use SA-IDL and SA-ADC to develop
Application with IDS
B
Step5
Any device wants
to disseminate
information?
Yes
Add
coordination
rules
No
A
End
Step6
14
Example: A Shopping Mall


Shoppers have their own PDAs.
Shops and shopping mall authority have
computing devices
- Desktop computers (DCs), with wireless connections
to PDAs.


These devices collaborate by dynamically forming
short range mobile ad hoc networks
A shopper wants to know all the deals of a specific
item when inside the shopping mall
15
Example 1: A Shopping Mall




Shoppers have their own PDAs.
Shops and shopping mall authority have computing
devices
- Desktop computers (DCs), with wireless
connections to PDAs.
These devices collaborate by dynamically forming
short-range mobile ad-hoc networks
A shopper wants to know all the deals of a specific
item when inside the shopping mall
16
Example: A Shopping Mall (cont.)
- 9 devices in the shopping mall,
{D1, D2, D3,………D9}.
- D1 is a PDA, and D2, D3, D4,. D9 are DCs.
- Neighbors of D1 are D2, D3, D7, and expressed as
N(D1) = {D2, D3, D7}.
- Similarly, others DCs: N(D2)={ D1, D4, D7},
N(D3)={ D1 , D5, D7}, … N(D9)={ D5 , D7 }.
- D1, D2, D3, D4, D5, D7, and D9 have RCSM, including the
add-on information dissemination service.
- D6 and D8 not have RCSM, and hence D6 and D8, cannot
participate in information dissemination.
17
Information Dissemination in A
Shopping Mall
CS1
CS2
CS2
CS2
CS1
CS2
D4
CS1
CS3 D6
D1
D2
CS1
CS3
CS2
D3
CS2
CS1
CS1
CS3
CS2
CS1
CS1
CS3
CS2
CS1
D7 CS2
D5
D8
CS2
D9 CS2
CS2
CS1
CS1
CS3
Coordination state is sent to neighbors
Device has RCSM
Device does not
have RCSM
Information is sent to only those
who has middleware
Receiving search result
18
Step 1-3
Step 1)
- Shopper’s PDA D1 is the single information
dissemination source.
-When inside the shopping mall, the shopper’s PDA
triggers information dissemination.
Step 2) No need for Step 2 because information
dissemination needs response.
Step 3)
-Shopper distributes query and wants to know all
deals -- information dissemination with response.
19
Step 3: Mechanism for Information
Dissemination in A Shopping Mall
Coordination states:
- CS1: uploading query
- CS2: downloading query
- CS3: uploading deals
 Coordination rules:
- Rule 1: CS2  CS1,
downloading query to uploading query
- Rule 2: CS1  CS3,
uploading query to uploading deals

20
Step 3: Mechanism for Information
Dissemination in A Shopping Mall (cont.)
a) D1 sends its coordination state CS1 to all of its
neighboring devices D2, D3, and D7.
b) - D2 receives CS1 from D1 and checks its coordination
rule and find a state match in Rule 1.
- D2 requests D1 to send query for all deals
information.
- D2 receives information and changes its coordination
state to CS1.
- D3 and D7 receive information. This is repeated for
each device
- Information is distributed from D1 to D2, D3, D7;,
D7 to D9; D2 to D4;,, D3 to D5.
21
Step 3: Mechanism for Information
Dissemination in A Shopping Mall (cont.)
c) D7 can receive information from D1, D2 or D3.
-Path D1 to D7 is chosen since D7 receives
coordination state first.
d) D2 moving out of vicinity of its neighbors and is
out of communication range of its neighbors.
- D2 distributes its coordination states to its
neighbors.
- D4 changes its state back to CS1 and receives
information from D7.
22
Step 4: Associate Coordination States with
Communication Primitives
Basic communication primitives:
Send, receive, forward, wait
Coordination State
Communication primitives
Uploading the query
Send, receive
Uploading the deals
Send, receive
Downloading the query
Send, receive
23
Step 5: Use of SA-IDL for Information
Dissemination
RCSM_Context context1 {
string location; }
ActionTuple action1 {
string action_name; }
interface ShoppingMall [‘S’, ‘P’,
‘M’]{
Situation s1{ //shopper is In
Mall currently
(ForAny t in [0,0])
context1.location =
“ShoppingMall”
}
Situation s2{ //shopper was
Outside one minute ago
(ForAny t in [-2,-1])
context1.location <>
“ShoppingMall”}
Situation s3 { // shopper’s device
has not queried for last 30
minutes
(ForAny t in [-30, 0]
action1.action_name <>
“FindDeals”}
Situation s4{ // go query
s1 and s2 and s3 }
[outgoing] [activate at situation s4 ] void FindDeals() ;}
24
Example 2: Football stadium


People using their PDAs to communicated in a
football stadium
When someone enters into the stadium, his PDA to
distribute information about some player to other
the people.
25
Information Dissemination in A
Football Stadium
CS2
CS1
- 9 devices in the Smart
classroom,
CS1
CS2
D1
D2
{D1, D2, D3,………D9}.
CS2
CS2
D4
CS1
D6
CS2
D3
CS2
CS1
CS2
CS1
CS1
- Neighbors of D1
D7 CS2
D5
D8
CS2
CS1
CS2
D9 CS2
CS2
CS1
Coordination state is sent to neighbors
Device has RCSM
Device does not
have RCSM
- D1 is a PDA, and D2, D3,
D4,. D9 are DCs.
Information is sent to only those
who has middleware
Receiving search result
N(D1) = {D2, D3, D7}.
- Similarly, others DCs:
N(D2)={ D1, D4, D7},
N(D3)={ D1 , D5, D7}, …
N(D9)={ D5 , D7 }.
- D1, D2, D3, D4, D5, D7, and
D9 have RCSM, including
the add-on information
26
dissemination service.
Step 1-3
Step 1)
- Someone’s PDA D1 is the single information
dissemination source.
- When someone enters in the stadium and his PDA
to distribute information about some player to other
people.
Step 2) Information dissemination without response.
-Someone’s PDA distributes information
Step 3) No need for Step 3 because information
dissemination needs no response.
27
Step 3: Mechanism for Information
Dissemination in a Football Stadium
 Coordination
states:
- CS1: uploading info
- CS2: downloading info
 Coordination rules:
- Rule 1: CS2  CS1,
downloading to uploading
28
Step 3: Mechanism for Information
Dissemination in Football Stadium (cont.)
a) D1 sends its coordination state CS1 to all of its
neighboring devices D2, D3, and D7.
b) - D2 receives CS1 from D1 and checks its coordination
rule and find a state match in Rule 1.
- D2 requests D1 to send information
- D2 receives information and changes its coordination
state to CS1.
- D3 and D7 receive information. This is repeated for
each device
- Information is distributed from D1 to D2, D3, D7;,
D7 to D9; D2 to D4;,, D3 to D5.
29
Step 3: Mechanism for Information
Dissemination in Football Stadium (cont.)
c) D7 can receive information from D1, D2 or D3.
-Path D1 to D7 is chosen since D7 receives
coordination state first.
d) D2 moving out of vicinity of its neighbors and is
out of communication range of its neighbors.
- D2 distributes its coordination states to its
neighbors.
- D4 changes its state back to CS1 and receives
information from D7.
30
Step 4: Associate Coordination States with
Communication Primitives
Basic communication primitives:
Send, receive, forward, wait
Coordination State
Communication primitives
Uploading
Send, receive
Downloading
Send, receive
31
Step 5: Use of SA-IDL for Information
Dissemination
RCSM_Context context1 {
string location; }
ActionTuple action1 {
string action_name; }
interface Stadium[‘S’, ‘D’, ‘B’]{
Situation s1{ //In stadium
(ForAny t in [0,0])
context1.location = “Stadium”
}
Situation s2{ //Outside one
minute ago
(ForAny t in [-2,-1])
context1.location <>
“Stadium”}
Situation s3 { // device has not
distribute for last 30 minutes
(ForAny t in [-30, 0]
action1.action_name <>
“DistributeInfo()”}
Situation s4{ // go query
s1 and s2 and s3 }
[outgoing] [activate at situation s4 ] void DistributeInfo()”;}
32
Total Messages (Y)in IDS
Y  (n  1) * l  s * n(m  1)
n is the total number of devices
 l is the length of message
 s length of short message
 m is the average number of neighbors of each
device
 If l >> s, we get the complexity O(n)

33
Energy Consumption Models in IDS
 Use Feeney and Nilsson’s energy consumption models
based on their empirical results of 802.11b radios
Energy send  msend  Siz send  bsend 
Energy receive  mrecv  Siz receive  brecv 
 b send energy consumptions due to send for fixed data packets
 m send energy consumptions due to send for incremental data
packets
 Siz send size of data packets
34
Evaluation
 Demonstration
on Test bed
 Small number of devices
 Simulation
tools
 Large number of devices
35
Architecture of Information Dissemination
Service (IDS)
Application
Application
File service
IDS
State
Processor
Coordination
Transport Engine
Input
processor
State Table
Rule Table
Rule processor
Address Pool
Adaptive Object
Container (ADC)
R-ORB
36
IDS service and Demo Application
Demo App/
Situation-Aware
Application Objects
File transfer
service
Information
Dissemination Service
(IDS)
(ADCs)
Object Request Broker (R-ORB)
Transport Layer Protocols for Ad Hoc Networks
Demo App/
Situation-Aware
Application Objects
File transfer
service
Information
Dissemination Service
(IDS)
(ADCs)
Object Request Broker (R-ORB)
Transport Layer Protocols for Ad Hoc Networks
37
IDS service and Demo
(Announcement) Application
IDS service
Demo(Announcement) Application
38
Experimental Set up (Device
Configurations)
 Casio
E-200 PDAs
 Intel Strong Arm 1110 with 206 MHz clock
speed CPU.
 Flash ROM 32 MB
 RAM 64 MB
 D-LINK Air DCF-660W Compact Flash
802.11b adapter.
 Configured in mobile ad hoc network
39
Experimental Results from the
Demonstration on the Test bed
 Number
of threads: 5
 Lines of code:10000
 Executable file size: 138 KB
 Maximum size of the message: 972 bytes
 Delay(Response time): 7800unit
[1 unit 100 nano sec]
 Throughput: 66.30 bytes/sec
 Power consumption: shown in next slide
40
Power Drain out in %
Power drain out in %
% power remaining
120
100
80
Normal
IDS running
60
40
20
0
0
10
20
30
40
50
Time in minutes
41
Power Drain out (in milli watt)
Power Drain out
Remaining power
16000
14000
12000
10000
Normal
8000
6000
IDS running
4000
2000
0
0
10
20
30
40
50
Time in minutes
42
Text Based Simulation Tool
43
GUI Based Simulation Tool
44
Experimental Results from
Simulation
Message Sum m ary (5% off)
14000
12000
Messages
10000
8000
6000
4000
2000
0
10
20
50
100
200
500
1000
Broadcast
54
247.2
779.6
920.4
2617.2
5442.8
11326.8
(CS) Short
58.8
251
623.2
964
2664.2
5601.6
11687.2
(CS) Long
8.4
17.8
36.8
93.4
187.8
470.6
946.6
Nodes
45
Experimental Results from
Simulation
Message Sum m ary (10% off)
12000
10000
Messages
8000
6000
4000
2000
0
10
20
50
100
200
500
1000
Broadcast
56
226
732.4
931.2
2573.6
5587.6
11308.8
(CS) Short
57.6
226.6
705.4
925.2
1984
4389.2
11110
(CS) Long
8
17.2
44.4
88.6
142.4
357.8
902.8
Nodes
46
Experimental Results from
Simulation
Message Sum m ary (20% off)
12000
10000
Messages
8000
6000
4000
2000
0
10
20
50
100
200
500
1000
Broadcast
52
258.4
768.8
919.6
2581.2
5542.4
11282.8
(CS) Short
34.8
145.4
516.6
656.6
1769.4
4813.2
9834.8
(CS) Long
4.8
10.4
31.4
62.4
126.6
398.8
801.4
Nodes
47
Experimental Results from
Simulation
Power
Devices VS Power
1400000
1200000
1000000
800000
600000
400000
200000
0
-200000 0
Broadcasting
AC
50
100
150
Number of Devices
48
Impact of IDS








File transfer service in RCSM test bed, announcement
in Smart classroom
Football stadium
Shopping mall
Hospital
Construction management
Environment monitoring
Sensor networks
Disaster relief
49
Summary of Contribution
IDS for Ubicomp Applications with the
following characteristics

Destination unknown

Energy efficient

Situation-aware

Locality

Multi hop

Self contained

Mobility of the devices

Equality

Loop free

Decentralized
50
Discussions



Information dissemination service (IDS) for ubicomp
applications
Experimental results show our approach is much
better than broadcasting
Currently implemented in Windows CE environment
-Platform Builder 3.0
-Embedded Visual studio 3.0
-CASSIOPEIA E-200 PDA
-RCSM is installed on each PDA
-IDS is an add-on module to RCSM.
51
Future Directions for IDS
Develop real-time IDS for Ubicomp applications.
 Security, and other QoS of information dissemination
service in ubicomp environments
 Develop fault tolerant IDS for distributed mobile adhoc applications.
 IDS with other types of networks
 IDS for sensor networks
 IDS for monitoring systems

52
End of Middleware and IDS
For further information:
www.eas.asu.edu/~rcsm
53
3. An ApplicationSmart Classroom: Enhancing
Collaborative Learning Using
Pervasive Computing Technology
Stephen S. Yau, Sandeep K. S. Gupta, Fariaz Karim, Sheikh I.
Ahamed, Yu Wang, and Bin Wang,"Smart Classroom: Enhancing
Collaborative Learning Using Pervasive Computing Technology",
Proc. of American Society of Engineering Education 2003
Annual Conference, June 2003.
54
Outline for 3: application
 Introduction
 Background
and state of art
 Our approach
 Functionalities of Smart Classroom
 Some scenarios
 Illustrative example
 Software Packages
 Conclusions and future work
55
Pervasive (or Ubiquitous) Computing
Technology
Computing and communication essentially
transparent to the users
 Embedded, wearable, and handheld devices
- wirelessly connected, possibly to fixed network
infrastructures such as the Internet
 Major characteristics:
- situation-awareness:
• “What’s going on?” in its surroundings.
- ad hoc group communications:
• multiple devices dynamically form networks
to facilitate collaborative computing

56
Smart Classroom
 Facilitating
collaborative learning among
college students
 Students form small groups to solve a
specific problem or develop a group project
 Each student has a situation-aware PDA
(location, noise, light, and mobility)
 Students' PDAs dynamically form mobile
ad hoc networks for group meetings
 Situation triggering communication
57
What is Collaborative Learning?
 creates
an environment that the instructor
involves students in solving problems and
reaches students who otherwise might not
be engaged
 encourages active student participation in
the learning or small group learning.
 every student learns from everyone else, no
student is deprived of the opportunity for
making contributions
58
Characteristics of Collaborative
Learning
S1) Sharing knowledge: the instructor shares
his/her knowledge with students, and students
share their knowledge with others
S2) Mediation: the instructor participates in the
discussions to give feedback or advice to
students
S3) Heterogeneity: heterogeneous perspectives,
experiences, and backgrounds of all students
enrich learning
59
Characteristics of Collaborative
Learning and Our Smart Classroom
S1 addresses relationships
between the instructor and
students
 S2 characterizes instructor’s
approaches
 S3 addresses the
composition of a
collaborative classroom
 Our Smart Classroom
enhances all of the
above(S1-S3)

Student
Instructor
PDA
Context
sensor
Our Smart Classroom. 60
State of Art
Interactive Classroom
- a virtual whiteboard, electronic textbook, and the
World Wide Web for in-class discussions [SDSU]
 Smart Kindergarten
- uses sensor data collected from children or toys to
review children’s activities and track their learning
progress [UCLA]
 Classroom 2000
- captures classroom context (teaching material or
student notes) to automatically generate Webaccessible multimedia [GATECH]

61
State of Art
 Classroom
with Handheld devices
- developed a system for test taking using handheld
devices [CMU]

Smart Classroom
- use pervasive computing technology
- enhances collaborative learning among college
students [ASU]
62
Major Features of Our Smart
Classroom

Situation-Aware Interactions among PDAs
- use our RCSM to provide situation-aware interactions
among PDAs
- This feature addresses S1).

Ephemeral Group Formation and Communication
- Depending on the current situation, the PDAs in the
classroom form groups
- Situations are the location of the current classroom, class
schedule, and availability of other group members
- Groups are dissolved as soon as the group-forming
situations are no longer needed.
- This feature addresses S1) and S3).
63
Major Features of Our Smart
Classroom (cont.)
-An instructor’s PDA can dynamically join a student
group to
 monitor and evaluate the group’s progress
 provide timely feedbacks
-This feature addresses S2).
64
RCSM Architecture in Our Smart
Classroom Test Bed
Situation-Aware Application Objects
RCSM
Information
RCSM Ephemeral Group
Communication Service Dissemination Service
Other
Services
Core Components
Adaptive Object Containers (ADCs)
[Providing awareness of situation]
Operating System
Optional Components
Object Request Broker (R-ORB)
[Providing transparency over ad hoc communication]
Transport Layer Protocols for Ad Hoc Networks
Sensors
65
Functionalities of Smart Classroom
Applications
i)
For a single student
a) reminds the student of his/her homework and
class schedule based on current time and current
location
b) synchronize the lecture notes between a
student’s PDA and desktop computer before and
after class
ii) For instructor/TA
a) synchronizes the lecture notes between instructor
or TA’s PDA and desktop computer before and after
class, since desktop computers have the original
lecture notes
66
Functionalities of Smart Classroom
Applications
iii) For student-to-student communication
a) enables students to exchange and share their
documents.
b) enables students synchronize document among
their PDAs.
iv) For instructor/ TA-to-students communication
a)
distributes
teaching
material
(lecture
notes/survey forms/grade sheet/course schedule)
from instructor or TA to all students at proper
situations,
-such as: at the beginning of a class, when light is
67
dimmed and noise is low.
Functionalities of Smart Classroom
Applications
b) - creates exams for students and groups
- sends exams to the students and groups and
collect answers, grade
- sends the grade back to the students
v) For student-to-instructor/TA communication
a) - facilitates students to store their questions or
concerns in text format in their PDAs.
-When the instructor or TA is available (in
classroom), the questions are automatically
transferred to the instructor or TA’s PDA.
68
Functionalities of Smart Classroom
Applications
b) - submit their progress report in a similar way
-At the end of a class, their reports are submitted
to the instructor or TA automatically
c) make appointments with the instructor using
their PDAs to send the request to the instructor’s
PDA
d) write answers of the exams and send answers to
the instructor
e) run and display their homework on the PDAs
and project it on the screen
69
Some Scenarios from Smart
Classroom
 Scenario
1: Group discussion
 Scenario
2: Distribution of lecture slides
70
Scenario 1: Group Discussion
1)
2)
3)
4)
5)
6)
At least two group members in the classroom start to
form a group.
Additional students coming in to join the group.
Groups are formed.
Instructor moves around student groups.
Some students leave during discussion.
Discussion session finishes.
71
Step1: Start Forming Groups
Context:
• Two or more group
members in proximity
• Time is up to form
groups
RCSM:
•Sense context
•Recognize other devices
•Select device leader
•Device leader initiates the
group communication
72
Step2: Additional Students Join Groups
Context:
•Time for forming the group
•Additional student in a group
is at the location of the group
RCSM:
•Sense context
•Recognize other devices
•Discover group
Action:
•Additional student
joins the group.
73
Step3: Groups are Formed
Group2
Group1
Group4
Group3
74
Step 4: Instructor Moving around
Situation:
Student Groups
•During group discussion,
instructor moving
to group1
Group1
Group2
Group3
Group4
RCSM:
•Sense location
•Detect devices in vicinity
•SAEG service
Action:
•Instructor’s PDA
is downloading
group 1’s discussion
75
Step 5: Some Students Leaving
During Discussion
Group2
Context:
•Some students are not
at the locations of their
groups
Group1
Group4
Group3
RCSM:
•Sense context
•Delete the students
from their groups
•SAEG service
76
Step 6: Discussion Session Finishes
Context:
•Time is up to finish
discussion or
discussion completed
RCSM:
•Group meeting
terminates
77
Scenario 2: Distributing
Presentation Slides
Context:
•Instructor is near the screen
(location)
•The light is dimmed(light)
RCSM:
•Sense Contexts
•File transfer service
Action:
•Instructor
distributes slides
Lecture slides
78
Example: CSE 461 Software
Engineering Project I
Students and the instructor in CSE 461 carry their
PDAs
 Students are provided with the group project
requirement specification and major milestones
 Each group member participates in the project
actively
 Each group member communicates with each
other verbally and exchange documents through
their PDAs
 The instructor frequently interacts with various
student groups and monitors their progress

79
Example: CSE 461 Software
Engineering Project I (cont.)
The classroom of CSE 461 needs facilities for
group collaboration and student-instructor
interactions
 PDAs form groups depending on the current
conditions
- locations of the students in the classroom,
- class schedule
- availability of other group members
- The situation-aware interactions among the
PDAs in a group collaboration with S1) and S3)

80
Example: CSE 461 Software
Engineering Project I (cont.)
The instructor’s PDA can dynamically join a
student group to
- monitor and evaluate the group’s progress and
- provide timely feedbacks
- This type of student-instructor interactions has
the characteristics S1) and S2)
 Our Smart Classroom addresses all these three
characteristics S1)-S3) by facilitating both group
collaborations and student-instructor interactions
capabilities

81
Device Configurations
 Casio
E-200 PDAs
 Intel Strong Arm 1110 with 206 MHz clock
speed CPU.
 Flash ROM 32 MB
 RAM 64 MB
 D-LINK Air DCF-660W Compact Flash
802.11b adapter.
 Configured in mobile ad hoc network
82
Tools Used to Develop
Applications
Embedded visual studio version 3.0
– By Microsoft
 Platform builder version 3.0
– By Microsoft
 RCSM compiler version 1.0
– We developed the compiler
 Rational Rose
– By IBM

83
Software Packages: RCSM
 R-ORB
–
–
–
Situation-awareness
Ad hoc communication
Detects context and process contexts
 Services
–
Ephemeral Group service

–
File service

–
Supports ad hoc group communication
Applications use it to transfer files
Information dissemination service

Distributes information
84
Software Packages: Applications
1)
2)
3)
4)
5)
6)
7)
8)
9)
Chat
Schedule reminder
Exam creating
Exam taking
Exam grading
Homework
Announcement
Appointment
Presentation
85
1) Chat software- Functionalities
1
: n Communication in a group (multicast)
 1 : 1 Private Communication in a group
(unicast)
 View Profiles of other users
–
–
–
Name (first and last)
Email address
Could be expanded to include a unique
USERID
86
1) Chat software- Functionalities
(cont.)
 Unicast
of a file to another group member
 Logging of a groups chat to a file for later
review
87
1) Chat software- Implementation
 Input
–
method
Text, Text file
 Output
–
method
Text, Text file
 Components
–
–
–
–
–
Used
R-ORB
SA-ADC
SAEG
User profile utility
File transfer service
88
2) Schedule Reminder Functionalities
 Pops
up the student’s schedule when student
is inside the classroom.
 Pops up the instructor’s schedule when
instructor is inside the classroom
89
2) Schedule Reminder Implementation
 Contexts
–
Noise, Motion, Location, Time
 Input
–
method
Text File
 Output
–
used
method
HTML in Internet Explorer
 Components
–
–
–
R-ORB
SA-ADC
Sensors
Used
90
3) Exam Creation – Functionalities
 Adding,
removing, and modifying new
Multiple Choice and Essay questions
 Adding questions from an old exam
 Opening an old exam and adding,
removing, or modifying questions.
 Saving the exam with all questions and
answers (.cxm file)
 Creating a set of distributable files,
complete with student information.
91
3) Exam Creation – Functionalities
 Multiple
–
–
–
variable number of answer choices
one or multiple correct answer choices
different point values for each question
 Essay
–
–
–
Choice Questions can have:
Questions can have:
variable number of answer hints
different point values for each question
different lengths for each answer
92
3) Exam Creation - Implementation
Details
 Input
–
method
Text, Text file
 Output
method
Text, Text file
 RCSM Services Used
–
–

Implementation Platform
–

None
Microsoft C#
Operating Environment:
–
PC running Windows 9x/NT/2k/XP
93
4) Exam Taking Application
Functionalities
 Read
from the distributed exam files
 Get student’s name and ID from user profile
and verify information with student
 Display relevant exam information (i.e.
name of class, instructor, total points) for
student on PDA
 Display exam interface for essay and
multiple-choice questions on PDA
94
4) Exam Taking Application
Functionalities
 Disable
all other applications during exam
(i.e. no access to internet or chat
applications)
 Save student’s answers to a solution file
 Send solution file to instructor for grading.
95
4) Exam Taking Application Implementation Details

Input
–

Output
–

Text file
Implementation Platform


Text file
Embedded Visual C++ 3.0 for Pocket PC
System/Services Used
File Transfer Service
 R-ORB
 SA-ADC

96
5) Exam Grading Application Functionalities
 Reading
from a exam created by the
instructor
 Reading from an exam solved by a student
 Automatically grading the multiple choice
questions
97
5) Exam Grading Application Functionalities
 Viewing
the hints/correct answers to the
questions
 Viewing the student’s answers to the
questions
 Saving the grades and the comments in a
file
 Organize the exams into a neat directory
structure.
98
5) Exam Grading/Distribution
Application - Implementation Details
 Input
–
method
Text, Text file
 Output
method
Text, Text file
 Implementation Platform
– C# for Desktop PC operation environment
 System/Services Used
– File Transfer Service
– R-ORB
– SA-ADC
–
99
6) Homework- Functionality
 PC-based
program
 Create homework assignments.
– Allows creation of Multiple Choice &
Essay Questions
 Grade homework assignments.
– Grades the homework assignments
received by the professor.
100
6) Homework- Functionality
(cont.)
 Homework
grading incorporates an autograder program that automatically grades
multiple java programs
– Compares the output of the student’s java
program to that of the professors’, and
grades accordingly
101
6) Homework - Implementation
Details
 Input
–
method
Text, Text file
 Output
method
Text, Text file
 RCSM Services Used
–
–

Implementation Platform
–

None
Microsoft C#
Operating Environment:
–
PC running Windows 9x/NT/2k/XP
102
7) Announcement - Functionalities
 Instructor
will be able to send
announcements to all students
 Students will be able to receive the
announcements from the instructor
 Students will be able to view the
announcements
103
7) Announcement - Implementation
 Input
–
Text message
 Output
–
Text messages
 System/component
–
–
–
used
R-ORB
SA-ADC
Information Dissemination service(IDS)
104
8) Appointment Maker Application
Functionalities
 Allow
the instructor/student to specify a
date, range around that date, and remote
user, compile the two users schedules, and
display the range chosen.
 Allow the instructor/student to
 setup,
 cancel,
 change
an appointment
105
8) Appointment Maker Application
Functionalities (cont.)
 If
the remote the instructor/student is not
available, store the appointment request or
change until the user is available or the date
has passed
 provides a GUI for viewing the the
instructor/student schedule and adding solo
appointments.
106
8) Appointment Maker Implementation

Contexts used:


Input method:


Time, Relative Location
Text File
Output method:

Text and Text file
 System/component
–
–
–
used
R-ORB
SA-ADC
File Transfer Service
107
9) Presentation - Functionalities
 Instructor’s
device will be able to distribute
presentation slides to all students when
–
–
The PDA is near the screen
Light of the room is dimmed
 Students
will be able to receive the
presentation sides from the instructor
 Students will be able to view the
presentation slides
108
9) Presentation - Implementation
 Context
used
– Light and location
 Input
–
Presentation slides
 Output
–
Presentation slides
 System/component
–
–
–
used
R-ORB
SA-ADC
File Transfer Service
109
Conclusions
Designed our Smart Classroom, which facilitates
collaborative learning using pervasive computing
technology
 Increased the level and quality of interactions
between students and instructor
 Discussed functionalities of our Smart Classroom
using an example course
 Developed RCSM Object Request Broker (RORB) to facilitate situation data acquisition and
situation-aware communication

110
Conclusions (cont.)
Developed an application development framework
in RCSM to facilitate the development of
situation-aware application software
 Implemented of situation-aware ephemeral group
communication service (SAEG) and a chat module
- group collaborations and
- student-instructor interactions
 Implemented information dissemination service
(IDS) for distributing information
 Implemented file transfer service for transferring
files

111
Conclusions (cont.)

A number of new features is being developed
- appointment making,
- announcement,
- question answering, and
- schedule creating
Evaluation of our Smart Classroom with various
scenarios
 Future work includes implementing security
service, exam-taking and grading tools using the
facilities provided by the RCSM

112
Thanks!
For further information:
www.eas.asu.edu/~rcsm
113
Download