1. Sistemi Mobili e Pervasivi
Uniplaces:
Progetto per il corso “Sistemi Mobili e Pervasivi”
A.A. 2012/2013
Docenti:
Prof. Avvenuti Marco
Ing. Vecchio Alessio
Candidato:
Enrico D'Urso
2. UniPlaces Requirements
Functional Requirements:
● UniPlaces MUST be an instant messaging service
● Sending messages MUST be 'location based' and relative
to a topic (Multicast Messaging)
● Unicast messaging MUST also be possible (no need
user's phone number )
Non Functional Requirements:
● User localization MUST be accurate
● Uniplaces MUST be reliable
● UniPlaces MUST be careful to power saving
● UniPlaces MUST allow the user to do what he likes (this
involves numerous other functional requirements)
3. What UniPlaces uses to meet
requirements
● UniPlaces uses GCM (Google Cloude Messaging ), a
Google service that helps developers send data from
servers to their Android applications (Push Notification).
To send messages, a third party is needed, a Server Web.
● To meet localization requirements GPS Service is used
● To minimize battery usage some parameters are used
(further details in other slide)
● To meet user need, some 'social network pattern' are used
(profile with photo, judgment of the messages, add
contacts, read old conversations ... )
5. How UniPlaces works: Reg Phase
Id Req
Id registration
Id registration
System needs a web server with Database:
1: Phone makes a request to join GCM service (reliable service)
2: GCM returns an unique ID
3: Phone forwards this information to WebServer that stores this information in the Database
6. How UniPlaces works: Localization phase
ID, GPS coord.
This phase can be repeated several times,
depending on the user mobility
and the options of energy saving
7. How UniPlaces works: Messaging phase
ID, Message
ID, [Id dst][Center GPS coord,Radius ] , Message
ID, Message
Unicast Locat. based
Sender id
Payload
If needed, Server
Computes ID of the
receivers
9. Energy saving
Update location from GPS service is costly
User can (indirectly) choose update frequency
Code:
requestLocationUpdates( minTime, minDistance, …)
UniPlaces can not use coarser location criteria, accuracy is a
non functional requirement.
GPS Drawback: indoor environment
Solutions:
● Saving last user location (to be improved exploiting user daily
routine, e.g.: mapping hours of day to user location )
● Google wifi location database
10. Future Work: Uniplaces 2.0
➔Reduce memory consumption and battery
➔Decouple virtual position, from the physical, i.e: User can
choose any location manually
➔Improve GUI (In phase test it has not been satisfactory
judged )