Upload
frederick-lewis
View
214
Download
0
Tags:
Embed Size (px)
Citation preview
FriendFinderLocation-aware social networking on mobile phones
Introduction
Location-aware social networking on mobile phones
The task is to specify the design of a mobile phone application that will identify which of the users “friends” are in their local vicinity and send messages, photos,
invitations (e.g. meet me in nearby restaurant), etc. tothem directly. The data about a user's social contacts
will be aggregated from a range of online social networkingsites (e.g. Facebook, flickr, etc.).
The Client Meeting
Physical Requirements
• Server Requirements– Purchasing one ourselves– Sharing a server with others– Renting a server
• Data stored on the Phone & Server• Costs• iPod Touch version?
Software Requirements (1)
• See Friends on a Map– Location– Distance
• Access many Social Networking sites– Which sites?– Data we store about the user
Software Requirements (2)
• Individual Privacy– Who can see them– When can they be seen
• Functionality– Send messages– Send pictures– Send audio/video
• Pay Once
Client Requirements
• Risks/Problems with the Design– Adding more Social Networking Sites– Use on other models of Phones
• Profit Margins– No subscription– Server costs– Profit
Statement of Requirements
Functional Requirements
• The application must...– run on iPhone and iPod Touch hardware– be able to access friends lists from various social
networking sites– be able to locate friends in the nearby area and
display their positions on a map– be able to send messages such as photos, audio
and video
Non-Functional Requirements
• The application must:– Only require login details for social networking
sites, not any other services.– Securely hold and process private data within the
bounds of the law.
Research
Methods of Tracking Position
iPod Touch – Wi-Fi used to find location by detecting known hotspots.
iPhone – Cellular triangulation uses the mobile communication towers to pinpoint location
iPhone 3G – Built in GPS means satellite navigation capability and higher accuracy location detection
Data Retrieval from Facebook
•To interact with Facebook, the users login details will be passed to our server.
•Our server then prentends to be the user and retrieves the friend list and stores on our database.
•Required data is then sent to the application on the device.
Our server will act as a “middle man” to send and receive data from the site.
Server Types
Dedicated –
Shared –
Purchased –
•Lease a server not shared with anyone•Full control over server•Maintenance carried out by hosting company
•Share server with other users•Cheap as other users pay towards costs•Limited control over server•Data security more of an issue
•Buy own server•High initial cost•Must maintain yourself•Complete control of server
Data Retrieval for MySpace
MySpace allows other sites to access users accounts using Access Delegation.
1. Obtain an Unauthorized Request Token
1. Obtain User Authorization
1. Obtain an Access Token
Data Retrieval for Twitter
HTTP Basic Authentication is the only supported authentication scheme.
Once login details are obtained from the user, our server can access twitter and request the friend list via a list of commands given by the Twitter API.
iTunes App Store
To get this application, users must purchase it through the iTunes App Store.
Applications are limited to a maximum price of £11.99 and a maximum file size of 2GB.
Our finished application must be approved by Apple before they allow it to go on sale in the App store.
Obtaining Friendship Lists
• Once a Facebook application is developed, users can join the application. The application will then connect users of the application who are normal Facebook friends.
MySpace/Flickr
• For MySpace and Flickr, a request token must be obtained, followed by an access token.
• On Flickr the user must enter a 9-digit code.• The program should then browse the
imported lists of friends to find users of FriendFinder and add them to a temporary list of friends valid for the session.
Design
Application Modular Design
Taking all of our research into consideration, we were then able to go on and design our application, and how the functions would link together.
The diagram on the next slide demonstrates how we decided to do this.
Top-Down Modular Design
GUI
Log-in
Only used to protect private data if the phone is stolen.
Option to skip logging in is available.
Link to web page containing privacy policy.
Main Menu
Central hub of the app. All features easily
accessible from here.
Friends List
Accessible from main menu.
Able to import friends lists from sites like Facebook/Myspace here.
Remove friends from the list – not the web-site.
Further options available by clicking on friends.
Import Friends
The user only has to select the site they want to import their friends list from and input their login details for that site.
Option to import all friends or just a selection.
Friend Options
Change settings for individual friends here.
Change map icon/colour. Import profile pictures
from social networking sites.
Settings stored locally.
Map Screen
The most used screen in the application.
Standard Google Maps controls.
Option to set meet-up points.
Click on friends to message them.
Messaging
Can send text, photo, video, map markers etc. to friends via multiple services.
Options change depending on what services they signed up for.
Overview
Summary
Summary of the application functions
• It runs on the iPhone and iPod touch platform.
• It has access of friends lists from various social networking sites.
• Users can locate friends in the nearby areas.
• Locations of friends are display on the application map.
• It could be used to send messages to friends.
Problems surrounding the application
• Proper protection of personal information.
• Sending of copyrighted messages (such as videos and pictures) by users.
• Cost of service and application.
• Data retrieval issues for the social networking sites.
• Privacy issues (friend locations).
• It is applicable to only iPhone and iPod users.
Good points of the application
• The application is easy to use.
• It has a well structured GUI.
• It pin points the location of friends as well as their distance from the user’s location.
Any questions?