Scheduling-Overview
Jump to navigation
Jump to search
Introduction
Purpose of this page is to attempt to outline the functionality that the scheduling software provides.
Created this page on 2018-05-10 after online meeting with Steve. Goal here is to see investigate directions for moving forward
Unique challenges the scheduling system faces
- have to reverse engineer the backend DB from two reports
- sites are separate, but events can cross multiple sites (ie: Intersite Tournaments)
- None of the backends USYVL has used has a way to handle that
- Those crossings/relationships have been maintained via conventions in the event description field
- most USYVL sites are the "same" (1 hour, 2 times a week) so basic schedule layout can be consistently applied
- But some, because of logistical or facility issues, operate in a different manner (only have 1 or 2 courts, so different divisions play at different times)
Overview
Data Import
- read in data provided via export from backend system
- with Engage - thats Excel
- with Rainier - it was CSV
- reverse engineer database from two reports (Teams and Events)
- Derive sites
Data Validation
- This is actually more important that expected as it detects data entry errors
- The data is often hand entered
- super easy to make data entry errors
- especially tournament event data that relies on specific conventions via the description
- The data is often hand entered
- There are many data validation sequences that are processed
Location information
- geocode lat/lon from facility addresses
- using google geocoding API
- have used other APIs
- all continue to evolve, so therefore keep changing and breaking
- ended up focusing on keeping the google API usage working
- current internal structure/organization/implementation is horrible
- some new stuff in the works, but has yet to be completed and integrated for use by downstream processing
- using google geocoding API
- information used to include maps on Site and Tournament information pages
Instructional Summaries
- Daily schedules are associated with an Instructional outline from the "Red Book"
- Provides a customized daily schedule
Data Processing
- builds round robin type tournament layout for Intrasite games - Intrasite Games/Game Days Layout
- builds division based pools for intersite tournaments - Intersite Games/Tournaments Layout
PDFs
Intrasite Game Days
- Produces PDFs outlining matches for a given site on the weekend game days
Intersite Tournaments
- Produces PDFs outlining tournament pools (1 page per pool + 1 page with summarized, compact version for clinicians).
- Produces Net Label versions of those same pools (1 page per net - pools duplicated - court number watermarked in background)
Web Content
- Site Information pages
- landing page for each site, so they can see the outline of the season for this specific site
- includes google map of their facility's location (or facilities' locations)
- Tournament information pages
- landing page for a given tournament that is attended by 2 or more USYVL sites
- Produces static html files for schedules.usyvl.org
- this functionality relates/dates back to the original 2000 USYVL static html site
- had been deprecated out
- brought back because zanity is having issues with DB
Creates/Produces DBs for mobile site
Scheduling Data table
- Some data generated in db itself
- Some data harvested from tournament files
redbook
- statically defined/produced via a script
Where to go next
Low hanging fruit
push button data xfr - engage to scheduling
- on sched site, button to product/export excel report from engage via API
- on engage, button could push a copy of the report to some central, known location where scheduling could access.
Geocoding at Engage
Could eliminate the need to do any geocoding in scheduling. At the time of this writing, the location management is far from ideal. And making it really slick is just extra work if it can be done in the more appropriate location; Engage.
- Engage facilities have lat lon fields, but they require manual entry.
- Could engage add geocoding for the address associated with the facility?