Академический Документы
Профессиональный Документы
Культура Документы
An Android Application which uses geolocation data to trigger tasks and provide location aware alerts for to-do lists.
We all have some tasks to perform everyday and we forget. How do you keep track of what you have to do?
To-do Lists
Geo-Location data
Over 1 billion smartphones [1] 75% of these can provide location data [2] .. and its growing fast!
Android
64% of Market Share [3] and its available on many mobiles, tablets, etc. Fastest growing with a strong development community. Extensive APIs Open-Source Efficient and flexible hardware interaction
Its meant to be a replacement to the standard to-do list Targets a larger population Independent of service provider coverage
Maps
Free access, even commercially Most stable and precise map data Map data is copyright Map cache is possible KML used for overlays and custom entries Controlled using Google Maps API which is inbuilt into Android But, why not Google Maps + API?
OSMDroid [8] - osmdroid provides Tools / Views to interact with OpenStreetMap-Data. Problems:
It converts OSM map data to tiles (.PNG) Zoom problems Large map data size
mapsforge [9] - provides free and open software for OpenStreetMap-based applications
OSM data converted into .map files, not tiles. Can store/share .map files Small map data size
To-do list
List of all tasks Modifications (add/edit/delete) Location based alerts Current user location on the map To-do location on the map
Device Automation
Modifications (add/edit/delete)
Execution of a set of tasks, triggered by location data
Task Sharing
Advertisements
Analysis
PENDING APPROVALS extends ACCEPT VIEW MAP <<includes>> <<includes>> extends extends VIEW TO-DO LIST extends extends DELETE MODIFY ADD ITEM
Analysis
Detailed Use-case
DECLINE extends
System
PENDING APPROVALS extends ACCEPT VIEW MAP <<includes>> <<includes>> extends ADD ITEM extends SELECT ON MAP
MODIFY
DELETE
USER
MARK DONE extends VIEW AUTOMATION LIST extends SELECT extends DELETE
ADD extends
MODIFY
Analysis
ADD TO DO TITLE
ADD LOCATION
ADD DESCRIPTION/TITLE
ALLOCATE TO SOMEONE?
SEND
Analysis
IS LIST EMPTY?
NO
DELETE ENTRY
YES
IS IT ALLOCATED TO SOMEONE?
Analysis
IS LIST EMPTY?
NO
MODIFY TO DO TITLE
MODIFY LOCATION
YES
MODIFY DESCRIPTION/TITLE UPDATE TO DO LIST IS IT ALLOCATED TO SOMEONE? SELECT CONTACT YES NO ADD TO LIST SHOW MAP
SEND
Analysis
ADD TO LIST
SHOW MAP
Analysis
IS LIST EMPTY?
Analysis
IS LIST EMPTY?
NO
MODIFY SETTINGS
YES
SHOW MAP
Analysis
IS LIST EMPTY?
NO
IS CURRENT LOCATION IN LIST?
YES
Analysis
GET REQUEST/SMS
NOTIFY USER
NO
REJECT
Analysis
SHOW MAP
STORE
Analysis
NO
* YES
PERFORM
NOTIFY
Analysis
Get Todo
ACK
External User
Request
Modify Settings
System
GPS Data
Analysis
Send Todo
External User
Modify Todo
Todo
GPS Data
Modify Task
Automation
GPS Data
System
Show Advertisement
Advertisements
Analysis
View
Show Map
Notify
Get Map
Check Location
GPS Data
System
Analysis
Check Location
System
GPS Data
Add/Remove/Update Trigger
Modify Triggers
Trigger data
Get Map
User
Show Triggers
View Triggers
Get Map
Maps
Notify Execution
Notify
Analysis
Confirmation
Notify
User
Approve
Get
SMS
Completion ACK
Send ACK
External System
Send SMS
Send
Contacts
System
Analysis
Advertisement Engine
Get advertisement
Display Advertisement
Advertisement Data
Advertisement cache
Check Location
GPS Data
System
Design
Traditionally, Relational database systems are opted for storing data logically. But, there are some caveats when using them
Overheads for providing generality, security, recovery, integrity, and concurrency control. A mobile device with limited processing power would not be able to handle such overheads efficiently and thus itll affect the performance. Besides, the application have no requirements of security, recovery, integrity and concurrency control.
All these factors are applicable in this project. Thus, instead of using any DBMS systems we are employing XML/JSON files to store data.
Design
S. No.
1.
2.
title
String
3.
location
Float
4.
author
String
5.
assigned_to
String
The name of the assignee to which the task is assigned. (Default: author)
6.
radius
Float
Alerting proximity
7.
priority
Integer
8.
due_date
Date
9.
isConfirmed
Boolean
10.
isDone
Boolean
Design
S. No. 1. 2. 3.
Description The ID of the task The title of the task Set of parameters which would decide whether the task is to be performed Repetitions of the task The set of operations that are to be performed
4. 5.
frequency operations
Integer String
Design
S.No. 1. 2. title
Field Name
Description The title of the bookmark. The latitude and longitude of the bookmark
location
Architectural Design
DATA STORE
Bibliography
[1] http://www.go-gulf.com/blog/smartphone [2] http://www.technewsdaily.com/4277-smartphone-gps-soars.html [3] http://www.washingtonpost.com/business/technology/worldwidemarket-share-for-smartphones-a-market-dominated-by-apple-andandroid/2012/09/18/fa3f8f56-019b-11e2-bbf0e33b4ee2f0e8_story.html [4] https://www.onx.ms/ [5] http://www.twofortyfouram.com/ [6] http://maps.google.com
[7] http://www.openstreetmap.org/
[8] http://code.google.com/p/osmdroid/ [9] http://code.google.com/p/mapsforge/