Final Presentation.
Group 4
Garçon.
Sarah Azody, James Gliwa, Steve Lin, Kevin Rowland, Edward Schembor
Group 4
Garçon
Sarah Azody, James Gliwa, Steve Lin, Kevin Rowland, Edward Schembor
Group 4
Motivation
Garçon GUI
splash screen
Login
Sign Up
Task List
Search Filter
View A Task
Price
Name
Description
Deadline
Creator’’s Rating
Run the Task
Add a Task
Profile
Finish a Task
General Architecture Overview
Activity 1
Activity 2
Activity 3
Model
(singleton class)
Server Controller
Database Service
Client Side
Server Side
Server Controller
Request Handler
Activity 1
Activity 2
Activity 3
Model
(singleton class)
To server
Activity 1
Activity 2
Activity 3
Model
(singleton class)
To server
Request
Request
Response
Activity 1
Activity 2
Activity 3
Model
(singleton class)
Server Controller
Database Service
Client Side
Server Side
Server Controller
Request Handler
Server Controller
Database Service
Server Controller
Request Handler
To client
To database
Unique and core aspects
Using a Common Project...
TaskList Adapter
TaskList Adapter
Could’ve used a trie here but wouldn’t really affect performance much so we chose the simple way.
Using the Singleton Design Pattern
GarçonModel�
Using the Singleton Design Pattern
When instantiating the model for the first time, a new Kryonet Client object must be created and stored in the model. The Client object can then be used by subsequent Android Activities to send Requests to the Server.
Using the Singleton Design Pattern
Cast the Response, unwrap it, and store its data in the model.
Set a response flag high so the app knows it can grab updated data from the model
Activity 1
Activity 2
Activity 3
Model
(singleton class)
Server Controller
Database Service
Client Side
Server Side
Server Controller
Request Handler
Technical Challenges
Technical Challenges
Technical Challenges
Defensive programming
Demonstration.
Extended Features