code in the air : simplifying tasking on smartphones
DESCRIPTION
Code In The Air : Simplifying Tasking on Smartphones. Tasking Applications. Architecture. Users/Developers. Users/Developers. Run continuously, determine user context/activity and trigger actions. Tasking Framework. Tasking Framework. - PowerPoint PPT PresentationTRANSCRIPT
Code In The Air: Simplifying Tasking on SmartphonesTasking Applications
Run continuously, determine user context/activity and trigger actions
Remind to fax
document when I come
to office
Make my phone silent when I am in the lab and I am meeting my
advisor
Notify me when myfriend is nearby
Disable Wi-Fi when I am outdoors and
moving
When I am driving, track
and store movement
tracks
Send me a text message
whenever my spouse leaves
work
- Trivial for end-users to state but non-trivial to develop- Simple implementation can be energy-consuming
Often involves coordination between multiple users and devices
Code In The Air (CITA)- Rapid development of tasking applications- Activity detection as primitives- CITA helps two groups of people
Developers End-Users- State Condition/Action rules in UI- “Mix and match” activities and tasks
Architecture
- Write only server side scripts even for tasks involving * multiple users and devices * a variety of sensors/activities * and the server.- Written in JavaScript
Reduces coding and deploying effort by 100x
Task CompilerTask Runtime
Tasking Framework
UI Scripting
Users/Developers
Activity Layer
Push Service
Push ClientTask Runtime
Activity Layer
Sensors
Web
Phone
ServerSub task
Task
Tasking Framework
CITA Server
CITA Client
CITA Client
CITA Client
Users/Developers
Tasks(JavaScript)
Split-TaskExecution
Split-TaskExecution
Split-TaskExecution
TaskCoordination
Activity Layer
InLocation, IsWalking, IsDriving, IsMoving, IsBiking, EnterPlace, LeavePlace, IsOutdoor, …
- Several inbuilt activity primitives
- Energy efficient execution of primitive and complex activities
Tasking Framework- Server side scripting
- Automatic code partitioning, execution and coordination across multiple devices
- Program devices as objects
Demo- Multi-device application Tiffany would like to be alerted when Hari is nearby.
- Single-device application Disable Wi-Fi when the battery is low and I am not using it.