User Tools

Site Tools


scoutradioz:workflow_notes

Operational workflows

Below are the core roles & workflows which are facilitated by Scoutradioz. There are also additional workflows at the end of the document, such as how to Use a past event as a training scenario

Scouters

Scouting falls into two groups - the team members who are assigned to pit scouting and/or match scouting rotations, and then also anyone who is interested or called to do “ad hoc” scouting.

Assigned Scouts

Assigned scouts are team members who are put into a ‘scouting pair’ and assigned pit scouting and/or are assigned slots into the scheduled qualifying match scouting rotation.

  • Scouts can find their pit and/or match scouting assignments in the ‘Scouting Dashboard’
    • Teams which have already been scouted will have grayed-out buttons - but you can still go in and update the data in the form if needed
  • During pit scouting, go with your partner(s) to the pits of your assigned teams and your partner(s) assigned teams.
    • For your assigned teams, make sure to take a good picture of the robot, and then work through the questions on the pit scouting form.
    • Regarding the free text fields: be as complete as possible but don’t go overboard.
  • During qualifying matches, keep an eye on when your next block of matches starts. Be sure to be in your seat in the stands well before your next assigned match! (or if you know you can’t be there, get someone to cover and let the scouting lead know)
    • The match scouting form should show the team number, which alliance their on, and a picture of the robot (which helps identifying which bot to track, especially if bumper numbers are obscured)
    • Use the form to track the actions of the robot you’re watching. After autonomous is over, make sure you advance to the next section! (usually Teleop)
    • Often there is an Endgame section. When/if the robot transitions to endgame activity, switch to that section.
    • Usually there is a General section, with observations like defense ratings, “other notes”, etc. The “other notes” are surfaced in other analytical views but are only visible to logged-in team members - so be honest (but still keep it GP!)

Ad-hoc Scouts

Anyone who has a login into a team in SR and has a role other than “Viewer” can jump in and do scouting even if they haven’t been assigned to specific pits or weren’t included in the rotation schedule.

  • Ad-hoc scouts can look at the “one-off” pit scouting & match scouting views
    • Every pit & match scouting entry has an assigned scout but you might be helping to cover (either asked by the assigned scout, or the scouting lead, or you’ve volunteered to do some coverage, etc.)
  • For pit scouting, team which have already been pit scouted will have grayed-out views; any non-grayed-out teams still need to be pit scouted
    • See above for details about how to fill out the pit scouting form
  • For match scouting, you can see all six teams listed for the next several matches.
    • Usually a completed match will ‘fall off’ before the next match starts, but not always!
    • See above for details about how to fill out the match scouting form

Scouting Lead

The scouting lead handles working out who at an event is available for scouting assignments, setting up scouting pairs, generating the match scouting schedule, and generally overseeing that assignments are getting done.

Before the date of the next competition

  • Well before a competition, the scouting lead should double-check with team management that the member list is up to date (including which ‘subteams’ each member is assigned to, as some subteams exclude the subteam members from “scouting pairs” [i.e., pit scouting assignments])
  • Shortly before a competition, make sure to update the “current event” to the next competition

Setting up on the day of competition

  • Identify who will be present at the event vs. who is not attending
  • Set up ‘scouting pairs’ for pit scouting assignments

Scheduling match scouting assignments after the qualifier matches schedule has been released

Feb. 2023: The pit & match scouting assignment process has been improved [simplified and made less wonky!], this section needs to be updated

When the match schedule is released, set up the match schedule rotation for the first ‘block’ of matches (a ‘block’ is all the matches up to a “break” [usually lunch, or the end of matches until the next day, etc.])

  • All the scouts who are in ‘scouting pairs’ will be included, plus you can include additional logged in accounts (can be anyone; other team members, team alumni, parents/caregivers, scouts from other teams, etc., etc.)
    • Try to avoid including the scouting lead in the rotation! They need to be focusing on reminding folks their assignments are coming up, checking to make sure things are getting done, occasionally filling in if someone is missing, etc. But they can be included in the rotation if needed.
  • Match “blocks”: The app ‘lines up’ all the assignees by subgroup seniority [lowest to highest], picks off the first six in line, and randomly assigns them to robots for the next N matches. Then those six go to the back of the line and the app picks off the next six, etc.
  • What this means is…
    • If you have only 6 assignees then they’ll be doing every match with no breaks. This is generally not ideal! Maybe have one or two people on standby to cover for folks who need short breaks?
    • If you have 12 assignees total, they’ll be doing N matches on, then N matches off, loop. Or if you have more than 12 assignees, they might occasionally get 2xN matches off. A suggested “N” is 5.
    • If you have 9 to 11 assignees, they will occasionally do 2xN matches on before getting N matches off. A suggested “N” is 3.

TODO!!! WONKINESS ALERT: This bit is under development but for now… To set the match schedule the very first time, follow these steps: Set up “scouting pairs” of 1, 2, or 3 students Click the “(Re)Allocate teams@matches to MATCH SCORING members” - this will erase any scouting data which currently exists for your team at this specific event! Normally only ever do this ONCE before the qualifying matches actually start! Then click “Clear all MATCH SCORING assignments” Then, check the boxes next to any additional users you want included in the rotation - e.g., perhaps a parent, or a volunteer from another team, and so forth Finally click “(Re)Allocate teams@matches to ASSIGNED + CHECKED” - this can be done at any time, it will update match assignments for as-yet-unplayed (or not-yet-updated) matches. Before the start of each next ‘block’ (after lunch, or the following morning, etc.) you’ll need to set up the next rotation. This is a chance to add or remove people as availability changes. Adjust the check boxes for the non-paired scouts and then click “(Re)Allocate teams@matches to ASSIGNED + CHECKED” DO NOT RE-CLICK THE BUTTONS ABOVE “Team@Match Allocation v2.0” UNLESS YOU TRULY INTEND TO WIPE OUT YOUR SCOUTING DATA (for example, re-running a training scenario)

Managing the scouts during competition

  • The scouting lead can look at the “one-off” pit scouting dashboard to see which teams still need to be scouted. And at the bottom of the list, if you click “Refresh with team photos” you can see which teams don’t have photos yet [or which photos might need to be retaken]
  • During qualifying matches, keep an eye on the “one-off” match scouting dashboard after each match - each time you refresh you’ll see which matches have been submitted (the buttons get grayed out). Once the app gets a “match updated” message from The Blue Alliance the match will ‘fall off’ the dashboard.
    • If it doesn’t seem to be getting automatically updated, the scouting lead can try to force a match update by going to the “See matches for current event” page & clicking ‘Update’ for the specific match [repeat until the results get filled in]
  • If needed, the scouting lead can swap out a currently assigned scout (for pit assignments or for match assignments) and in their place swap in a member who is currently not in the assignment list.

Tracking how well scouts are performing (and/or how well they did after an event)

There are several tools in Scoutradioz to help the scouting lead monitor how well the scouts are doing their work - checking in on what text is being written (and is visible to others who click into SR to look at the data!), are scouts doing their assignments (or getting them covered), and so forth. Go into the “Scouting audit” section to access the following:

  • Audit trail for match scouting - for the overall event for all matches so far, this is a quick “at a glance” view of whether scouts have completed their assignments (green “Y”), had an assignment covered by someone else (yellow “C”), or if an assignment was missed (red “N”)
  • Comments audit - shows all “other notes” comments from matches, grouped by scouter. Scan this to see in case someone wrote something which might need to be edited or deleted
  • Per-match audit - by match, shows who the assigned scouter was and who did the scouting (whether it was the original scout or someone covering)
  • Photos upload audit - same as the comments, scan to make sure no one has uploaded anything which needs to be edited
  • [work in progress] Scouter accuracy audit - when completed this will attempt to identify which (if any) scouts are less accurate than others. Can help find a scout who is having trouble, can also highlight if someone happens to be turning in bogus data. [not that anyone would do that, but the scouting lead can remind the scouts that the data audit exists so no one would be tempted to fill in bogus data]

Drive Team / Analysts

Before the first competition, the drive team and/or analysts need to define what data elements they want the scouts to be collecting. During competitions, drive team members and competitive analysts are the primary customers of the data collected by the scouts - they want information about alliance members and opponents before upcoming qualifying matches, and they need overall information about teams ahead of (and during) alliance selection.

General data analytics notes

  • Often the drive team and/or analysts will want to slim down the number of columns being displayed by default in the charts, graphs, etc. Go into “Configure report columns” to set the defaults for your team.
    • You’ll probably want to winnow down the default columns to the key indicators, particularly derived values which group together multiple measurements. ‘contributedPoints’ should be there!
    • For readability you probably want to keep the number of default displayed columns to around 16 or fewer
    • Note, individual users can customize their own selections, adding or removing columns, etc.
  • Almost everything in the reports and charts is clickable!
    • The headers on most tables will cause the table to be sorted by that column
    • Or links will click into views for a team (if you click on a team #) or for a specific metric (if you click on a metric name)

Specific really useful reports/pages

  • The “Drive Team Dashboard” shows data for the upcoming match (either the next match coming up, or the next match for the selected team [e.g., YOUR team])
    • The next match shows which teams are on the two alliances. If a specific team was selected in the drop-down, that team gets highlighted with arrows.
    • Assuming the match data schema includes a ‘contributedPoints’ calculation, then [once there is enough data] the app will predict which alliance will win (with a percentage confidence level) and predict what the match scores will be (plus/minus a standard deviation).
    • The two radar/spider charts show at-a-glance relative comparisons of the two alliances. The values get scaled where zero radius = the lowest value in that category from the six teams and full radius = the highest value from the six teams. Note, you can toggle team charts on/off by clicking on the team number in the chart legend.
    • The heat map is the same data but shows the actual values in each category for each team. The colors are relative to all teams in the competition - bright green is highest, dark red is lowest.
    • Below that the app will list future matches (if any)
  • Usually clicking on a team number will take you to the overall “Team Intel” page for that team
    • There will be a picture of the robot (hopefully) at the top of the page and three “twisty” sections
    • “Show pit scouting” will display the Q&A from the pit scouting process
    • “Show statistics” shows a heat map with values for that team for every metric in the schema - their minimum, average, “variance” (how ‘swingy’ their data is), and maximum. The heat map is colored showing how the team compares to other teams at that event.
    • “Show previous matches” will show summaries of the matches that the team has been in so far - who won, scores, ranking points, etc. If you’re “logged in” you’ll aso see a summary of the comments the scouters entered in ‘other notes’.
  • The “Metrics for All Teams” page will show a large heat map table of every team crossed with every selected metric column
    • This page is best viewed on desktop, a tablet, or a phone turned sideways.
    • You can click on column headers to sort up/down on any given metric - you can also sort by team number or current event ranking.
    • You can also toggle whether the heat map is showing teams’ average values, or the maximum value they have attained in any given match.

Alliance selection

  • Ahead of alliance selection… If you’re logged in as an org. user, you can access the “Alliance Selection Data” page. This is an extension of the “Metrics for All Teams” page, where there is an additional set of ‘Priority’ controls.
    • Teams you want to emphasize as picks/etc., click on the “+” button one or more times (more gives a higher ‘V’ score)
    • Teams you want to de-emphasize as picks, click on the “-” button
    • You can sort by the ‘V’ score by clicking on that header
  • Right before alliance selection starts… To handle (or follow along with) alliance selection, load the dynamic “Alliance Selection” page
    • Once loaded the page is independent of server connectivity. Don’t hit reload or the back button!
    • You can sort the data by ranking, any metric, or the ‘priority’ value (“V”)
    • A lighter-gray highlight shows which slot is currently being filled in. When a team is picked for that slot, click on their entry in the list of alliance captains on top (or more often) the grid of team numbers in boxes. If/when they accept, click on the current slot and that team will move into that slot… and then the next available slot will be highlighted.
    • Teams which are unavailable to be selected (because they already got selected, etc.) get grayed out in the data table below.
    • If you make a mistake, or if you’re pre-selection gameplanning, or whatnot, you can undo one or many ‘moves’ by clicking the “Undo” button on the screen.

Team Management / Administrators

Team administrators handle setting up user accounts for the team as well as setting up the organizational information about the team - what are the subteams on the team, what are the ‘seniority’ levels, and so forth.

Setting up how the team is organized

The first thing team management needs to do is identify how the team is going to be organized in the application, via the “Organization setup” interface

  • Every user in the organization will be associated with a “subteam”
  • Keep in mind that your org will likely have logins for people beyond just the team members - probably mentors & advisors, possibly parents, alumni, maybe ‘guest’ accounts if you want to allow folks from other teams to work with your team, and so forth
  • Folks who are assigned to subteams which are identified as true for 'Pit scout?' will be able to be assigned to “scouting pairs” for pit scouting - and will be included in the match scouting rotation.
  • Note, you’ll be able to choose to add additional users to match scouting rotations if more folks will be doing match scouting than you had doing pit scouting. For example, you might have one or two members from other teams helping with match scouting but they wouldn’t be doing pit scouting on behalf of your team.
  • Every user will also have a “class” associated with them.
  • The classes are usually built around the names for the levels of schooling of the team members. E.g. in many places they use ‘freshman’, ‘sophomore’, ‘junior’, and ‘senior’
  • If/when users are not typical students - pre-rookies (younger than the usual team member), or are parents or whatnot - you’ll want to create “classes” for them as well
  • Each class is given a ‘seniority’ number. This number (combined with how many years someone has been on the team) is used to work out who gets the first assignments in a rotation. The philosophy of SR is to give assignments to those with lower seniority numbers & fewer years on the team.

Setting the ‘Organization’ password

To prevent user names from being visible to the public internet (and thus robots, scrapers, etc.) the application requires users to first enter an ‘organization password’ before being able to select a user ID to log in as.

  • At the bottom of the “Organization setup” page is a field where you can set [or reset] the default ‘organization password’
  • After selecting the ID most users will not need to enter a personal password (unless for some reason they chose to set a password for themselves - but this is usually not necessary)
  • However! It is important to ask anyone with “team admin” privileges to set a personal password, just to avoid anyone else trying to log in as them and getting elevated access to the instance

Managing individual team members in the application

Each person who is going to be logged in and needs to have a unique identity (whether for tracking assignments, or getting an elevated role, etc.) will need their own user account. This is in the “Manage members” page.

  • There are three (3) levels of security roles built in to Scoutradioz
    • “Team Admins” can manage the overall organization. They can [list TBD] as well as all the things “Scouters” and “Viewers” can see & do.
    • Most members will be “Scouters” who can see pit and match scouting slots and fill out and submit the forms. They will be able to see the protected pages that “Viewers” can see.
    • You might have some users with the “Viewer” role, where they can’t do scouting but they will be able to see protected data (“otherNotes” entries) and pages (e.g., “Alliance Selection”)
  • Existing users will be listed alphabetically by name, and grouped by permission level
    • Users can be edited in place
    • Edit users one at a time, and click on the ‘Update’ button for that user before editing the next one
    • Add users one at a time with the fields at the bottom of the page
      • Definitely make sure new “Team Admins” log in & set a password!
    • “Years on team” is a numeric value used for calculating ‘seniority’ (which comes into play during scouting assignments)

Additional workflows

Beyond the above there are additional workflows which are handy.

Use a past event as a training scenario

It can be handy to show videos of matches of an event which has already occurred and simulate the process of attending that event - generate match assignments, watch & scout matches, results “come in”, etc.

The basic gist will be:

  1. Set your team’s “current event” to a past event
  2. Reset the match data in the Scoutradioz DB for that event
  3. Set your members’ attendance; set up scouting pairs; add any additional scouting IDs, and generate a match schedule
  4. Have folks scout match #1; then manually update the FRC data for match #1; then have folks scout match #2; rinse, repeat
  5. While the rankings won’t reflect ‘mid-event’ status, all the analytics and such will reflect the data that has been put into the scouting forms
  6. When you’re done testing, please “Update all matches for current event” so the FIRST data in the DB is all there (in case anyone goes to look at that event later on)

The details:

  • Choose an event that you want to simulate attending
    • Don’t use an event your team actually attended in the past! Part of this process can destroy data your team previously submitted (but you can’t affect another team’s data)
    • Browse https://www.thebluealliance.com/events and locate some events where the qualifying matches have associated videos (and verify that the video links actually work!)
    • Post in the #onboarded-general channel (on the Scoutradioz Discord server) about which event[s] you’re thinking of using, just in case another team happens to be thinking of using the same events. We don’t want two teams changing the state of the same event at the same time!
    • Use the Management page to set the “current event” to the chosen event
  • Go into “See matches for current event” and reset the match data
    • You might see a ton of match data, or there might be zero
    • Click “Update all matches” - this will query TBA and (re)load the FIRST data for all the matches
    • At the bottom of the page is a “Reset all matches” - this leaves the schedule but eliminates the results
  • Now follow the (LINKTODO)Scouting Lead() steps as if it was the morning of the event
    • (LINKTODO)Before the date of the next competition()
    • (LINKTODO)Setting up on the day of competition()
    • (LINKTODO)Scheduling match scouting assignments after the qualifier matches schedule has been released()
  • Scouts should be able to log in & see their match scouting assignments on their Scouting Dashboards
    • See the info under (LINKTODO)Assigned Scouts()
    • Scouts can now watch video, scout their matches, and submit!
    • The scouting lead can refresh the ‘one-off match scouting’ dashboard; as scouts submit their reports the buttons will grey out
  • When that match is done, update the data for that one match
    • Go into the “See matches for current event”
    • Click the ‘Update’ button to the right of that one match
    • Now in the match scouting dashboards that match will “fall off” and the next match will be there
    • If you need to undo and re-erase the FIRST data, click ‘Reset’ for that one
scoutradioz/workflow_notes.txt · Last modified: by moconnell@team102.org

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki