Upload
nigel-fletcher
View
216
Download
1
Embed Size (px)
Citation preview
Food Phone Application
Shengyu LiCS-298
Advisor: Dr. Chris Pollett
Committee members: Dr. Robert Chun
Dr. Chris Tseng
Outline
Introduction Design Implementation Testing Demo Issues Improvement
Introduction
For this project, I created a Food Phone Application. Some goals were to: Help users to preview restaurant menus Search restaurants by food items Find these things conveniently on the phone
Let’s look at some existing products …
Existing Products
Yelp on Android
Existing Products
UrbanSpoon iPhone Application
Existing Products
iCrave in Android
Feature Comparison
Phone Application Review Ratings
User-friendly Phone UI
Actual Price
Search for Individual Food
Upload Pictures Menu
Yelp Yes Yes Yes No Some Yes No
Urbanspoon Yes Yes No No No No NoiCrave Yes Yes No Yes Yes No No
My Food Phone Application Yes Yes Yes Yes Yes Yes Yes
Design
Platform Architecture Application Design Implementation Design
Platform
Android vs. iPhone
Android iPhone
Open OS source
Yes No
Dev SDK Free $100+
Platform Cross platform MAC only
LanguageJava, bridges exist from J2ME, C#, etc
Objective-C
Programming InterpretersObjective-C byte code only
Install SoftwaresAny web sites Apple store only
Architecture
Client-Server Model Server (PC) Client (Phone) Database
Architecture Server + Database:
PC Services
PHP code Xampp
phpMyAdmin 2.6.2 Apache 2.0 Mysql 4.1.20
Client: Android Phone Configuration
Eclipse IDE JDK 1.5 Android SDK 1.5
PhoneClient
Server
Computer Client
Application Design
Map all possible Outputs to all possible Inputs to define functions: a) = 1), 2), 5)
Outputs: Inputs:
a)Location 1)Users’ Location
b)Menu 2)Search Range
c)Rating for Food 3)Rating for food
d)Restaurant Name 4)Food Name
e)Food Price 5)Restaurant Name
f)Food Comment 6)Food Price
g)Picture 7)Food Comment
h)Phone Number 8)Picture
Activity Relationship
Android Views
Implementation Design Implementation Model:
Implementation Design PHP Module
Communicate with the database Handle upload and download files
Java Core Module Generate URL to send request to PHP server Parse the response result from the server Form Java objects for the Android Java code to
use
Implementation Design Android Java Module
Handle all UI Phone features
Location Camera Internet
Phone storage Pictures
Testing
PHP Module Java Core Module Android Java Module
Emulator Real Phone
Testing
PHP Module getResList(double LatMax, double LatMin, double LongMax, double
LongMin, int str, int end)
We can test this function on the PHP server side by using the following URL:
http://rome.dynamiccreation.com/~admin22:8888/foodserver.php?function=getResList&LatMax=38&LatMin=37.3&LongMax=-121&LongMin=-122&str=0&end=2
Testing
PHP Module
Testing
Java Core Module
Testing
Android Java Module
Demo
Issues
Emulator Functionality test Camera Location Storage
Issues
Stored ProcedureOriginal Design:
4 modules
1. Stored Procedure Module 2. PHP Module
3. Java Core
4. Android Java
Improvement
Image Storage SD Card? Memory
Improvement
Prefetching Assume users want to see
the next picture Prefetching the next picture
ahead of time Shorter user waiting
download time for the next picture
Smooth the process
Questions?
Thank You