Scheduling-Overview: Difference between revisions

From USYVL Development Wiki
Jump to navigation Jump to search
 
m (1 revision imported: Hopefully full import)
 
(No difference)

Latest revision as of 00:25, 21 June 2023


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
  • 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
  • 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

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?