Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | oliver-doyle |
View: | 213 times |
Download: | 1 times |
GROUP 14 Brittany Cheng Christina Guo Cong Chen Ian Ackerman Terence Tam
• Clayton Lord, Director of Communications and Audience Development
• Theatre Bay Area, non-profit organization that wants to promote and advance the theatre community in the San Francisco Bay Area
• TIX Bay Area, a program of Theatre Bay Area, is a website where locals can buy tickets to shows online.
The Client
• TIX Bay Area is currently a mostly static web page with very limited functionality:
o Displays a listing of shows from an XML feed of shows provided by goldstar.com, no database
o Goldstar.com is an external site that handles the ticket payment and transaction process
• Want to recommend shows to users based on their activity on the site and preferences that they input
o Locationo Genre, Keywordso Priceo Show dates
The Problem
The Solution• Parse XML feed from goldstar.com into a usable
database • Work with client to create a recommendation
form for users to fill out, allowing us to filter and display shows based on their stated preferences
• Set up user account creation to save returning user data
• For a logged in user, show listings are presorted based on:
o Recommendation form preferences (location, genre, keywords, price, show dates)
o Clicks on specific shows (“recently viewed”)o Shows that the user has marked as
“favorite”
Design ChoicesStorage of Show and User Information:• Change old system of xml file of show listings to a database for
quick access and easy organization• Relate shows together through category table to indicate
similarity• Multiple showtimes allow us to model showings over multiple,
different days• Users have a through relationship to shows to model favorites /
likes and differentiate them.
Location-Based Recommendations:• Utilize Google API to tell distances
from venues to customer for relevant shows
Communicating with non-technical customer• Solution: Abstract the customers from technical details,
but understand their needs through BDD and user stories
Turning the project into a collaborative effort• Solution: communication among team members; Git
versioning system; maintaining helpful wikis and docs
Prioritize what is important for the team• Solution: The scrum team proves to be the key to our
success, as the scrum master, product owner, and developers together check the progress of the project
Features
Recommendation form: Make it easier for users to find the theater shows they are looking for• Users can get similar shows for shows they are interested in• Users can fill out a survey of their preferences• Display shows based on:
o Location – use Google Map API to limit by distance radius
o Priceo Categoryo Dateso Keyword
Personalized User Experience: Frequent users can sign up to save their show preferences and get better recommendations• We track user clicks to improve recommendations• Users have the ability to favorite shows• We use the user activity and survey information to update the
recommendation listo Get the newest showso For each activity and survey preference, we go through
and weigh them appropriatelyo Return updated list to user
Challenges & Lessons Learned
Logins:• Devise to handle account creation
with hashing of passwords and email recovery
• Ominauth also used to allow customers to easily sign up with facebook account