TRR/ARB Team 9: TipSure.com
TRR Outline OCD Overview Demo Search Algorithms Testing Metrics Transition Logistics Support Plan
Operational Concept Overview Capability Goals and Constraints Capability Goal Priority OC-1 Access Content on Mobile Platform: View business listings and travel tipping guides 10 OC-2 Search: e.g. Search by TipSure ID, Nearby Search 8 OC-3 Maintain Business Information: Claim businesses, add comments unique to experiences at each business Constraints CO-1: Existing Database: The system should integrate with the existing TipSure database. CO-2: Google API: The system should use the Google Maps API. CO-3: Budget: The maximum budget is $500 CO-4: Hosting Provider: The system should be deployed on TipSure's current hosting provider
Operational Concept Overview Organizational and Service Goals Organizational Goals OG-1: Increase the site profitability by increasing traffic to the site and allowing for advertisements OG-2: Provide a rewarding user experience by reducing the awkwardness of tipping in any given business transaction OG-3: Provide a rewarding user experience by improving site usability on mobile devices and increasing the amount of important information through user and business comments Service Goal Maximum Loading Time* to 5-10 seconds *tested on GTmetrix
Operational Concept Overview Other Win Conditions (All Met) Ability for users to ‘like’/share a business on social media sites (Facebook, Linkedin, Twitter) Users can submit questions to the site Administrator Tip Calculator User Can access/save travel tipping guides Users can add/claim a business Administrator approval of comments Admin can assign TipSure IDs Admin can update travel guides Site loads in 5-10 seconds Google API used
Traceability Matrix OCD Win Conditions SSAD Test Cases OC-1 Mobile Application Interface WC_3165: liking on social media WC_3164: easy access to site on mobile WC_3161: use current hosting provider WC_3159: max budget = $500 WC_3158: integration with existing DB WC_3157: user download travel guides WC_3144: use tip calculator WC_3143: submit question WC_3142: review tipping guides UC-5: download travel tipping guides UC-6: use the tipping calculator OC-2 Search function WC_3166: readable search results on map WC_3162: loading between 5-10 sec. WC_3160: system uses Google API WC_3138: search via all categories UC-1: search business TC-01 Generate search results: 1.TC-01-01 Check search result readability. 2.TC-01-02 Check search result accuracy OC-3 Form module WC_3154: assign TipSure IDs WC_3151: administrator verification WC_3148: claim business WC_3147: add a business UC-2: add new business UC-3: business owner registration UC-4: claim a business UC-7: user tipping question UC-8: user comment on business TC-02 Generate email to administrator: 1.TC-02-01 Check submission correctness 2.TC-02-02 Check email submission
Selling Points Selling Points Value to users Smoother experience than original, responsive website (less content, designed by client with business goals in mind) Search ‘nearby’ and minimize time to find a particular business geolocation stored to avoid re-authorization of location info Value to business owners Unique, searchable identifier for quick access to business-unique tipping info/comments Value to TipSure.com Anticipated traffic increase due to better use experience
Demo
Search Algorithms TipSure Search new ‘business’ table for indexed TipSure ID, returns at most 1 result Business Name/Location Check geolocation was given Not given: do global search for anything in DB that matches user input Given: Run ‘nearby’ search with range of 1 mile. < 10 results? ->Search within 50 miles. No results? ->Global search. Nearby Calculate max/min latitude and longitude based on user location Queries ‘geolocation’ table (indexed by longitude/latitude) for matching results 1 mile
Test Cases Test Case Capability Demonstration Mobile Application Interface TC-01 Search Function tests: TC-01-01 - check search result readability TC-01-02 - check search result accuracy TC-02 Add Business tests: TC-02-01 - check submission correctness TC-02-02 - check submission notification TC-01 tests the three major search functions, search by ID, nearby, and name TC-02 tests the “form” capability, and the ability for the application to submit forms, which includes comments and ask questions
Test Case Results Test Case Capability Test Results Demonstration Mobile Application Interface Pass TC-01 Search Function TC-02 Add Business
Mobile Application Interface Testing Criteria: Possible to access required web pages on mobile device Receive approval from client on the design of the mobile application by demonstration and drive through
TC-01 Search Function Test Priority Must have. Pre-conditions Deployment of the search module in a public web server accessible on a mobile device. Post-conditions Search fulfill the criteria of returning up to thirty results and the following: - Name: returning a list of businesses that includes the name the user searches for, ordered by proximity - Geolocation: returns up to thirty businesses within one mile of user’s GPS coordinates - TipSure ID: returns a list of businesses with matching TipSure ID Pass/Fail Conditions Pass if all criteria are filled Result Pass
Table 4: Nekter Juice Bar Geolocation Test Case TC-01 Search Function Test Case Details Example test used for Geolocation Search: Table 4: Nekter Juice Bar Geolocation Test Case Longitude Input Latitude Input Result Appears? 34.0374 (out of bounds) -118.2857 (in bounds) No 34.0224 (in bounds) -118.3007 (out of bounds) 34.0304 (in bounds) -118.2958 (in bounds) Yes
TC-02 Add Business Test Priority Must have. Pre-conditions Deployment of the form submission module in a public web server accessible on a mobile device. Post-conditions Submission of the form by the user, and notification sent to administrators via email containing form information Pass/Fail Conditions Pass if email is sent to administrator, and the form information is recorded. Result Pass
Operational testing, training & evaluation Testing and Evaluation: Go through TC-01 and TC-02 once deployed on client server Development team will perform these tasks Training: No training required to use application
Metrics Reporting: Defect Status 3.375 Active per Day
Metrics Reporting: Burndown Chart
Design Decisions and Technical Debt Site is integrated directly with Wordpress and the current directory theme Upgrades to site’s “Directory Theme” not possible in the future Search functions dependent on database structure (originally implemented by Wordpress) Design Decisions Building on Wordpress meant very little new content had to be created Existing functionality reused - map on each business page, social media sharing, etc
Risks Going Forward Database compatibility issues Wordpress updates could modify database and interfere with search functions Scalability with multiple concurrent users Current site: 1 server, 1 database Meeting performance requirements As database increases in size, search functions may exceed requirement times
Transition Objective Migrate all developed code to client’s environment Validate all developed features work on client environment Enable client to maintain the system
Transition Logistics Duplicated client’s database and directory of responsive site pages Updated most recent copy of database to include the two new tables Uploaded new pages to the Wordpress directory on Tipsure.com Activated the “Mobile Theme Switcher” plugin to send mobile users to new site
Transition Strategy Deployment Phase: Backup existing client server files and database files Overwrite client’s database with modified database from development environment Testing Phase: Complete testing on client’s environment Provide consulting in the event of critical system failure related to application for the remainder of December
Support Plan Win Conditions met, what next? Help understand what has been done and what should be done in case of changes Work done needs some maintenance User Manual What if client runs into trouble? Development team happy to help, but may have other commitments to honor
HW, SW, Site, Staff Preparation No special preparation required for the project Existing hardware and software suffice to deploy application No additional staff involvement required to maintain application Same work for the administrator: Business validation User comments monitoring
Developer Contact Information Contact us on our email: Jonathan Tuse tuse@usc.edu Raymond Feng raymonyf@usc.edu David Brenn-Cogen brenncog@usc.edu Aayushi Birla abirla@usc.edu Tej Trivedi tejtusht@usc.edu Nirupama Vaidyanathan nvaidyan@usc.edu Linkun Li linkunli@usc.edu
Feedback
Thank You