Skip to content
This repository has been archived by the owner on Oct 20, 2023. It is now read-only.

2020 Scouting System Planning #5

Closed
yuliu2016 opened this issue Jan 6, 2020 · 0 comments
Closed

2020 Scouting System Planning #5

yuliu2016 opened this issue Jan 6, 2020 · 0 comments
Assignees

Comments

@yuliu2016
Copy link
Contributor

yuliu2016 commented Jan 6, 2020

This is an ongoing list of tasks to be completed for the 2020 version of the scouting app. The codebase needs to be completed by February 14th, 2020 (3 weeks before the first competition). Data analysis is not included in this list as it's a lot more flexible.

Scouting App Features and Enhancements

This section includes enhancements to the scouting app compared with last season

UI/UX

Data Backend

  • Implement V6 Encoding
    • Explore tracking precision to 10th of a second
    • Explore tracking precision to 100th of a second
    • Explore Implement removing the space in the scout name
    • Explore Implement removing the event name Simplifying the event name
    • Explore remove the undo count
    • Explore Implement optimizing index lookup with a binary search
    • Add a displayName property to Board, and remove board_choice string resource
    • Change time tracker from Int to Double
    • Reimplement the focused function with a modified binary search, which returns true if time is "close enough"
  • Create a specification format in JSON so that the setup (scouting metrics, screens, etc.) can be changed without changing code
  • Explore adding condensed data tracking for ButtonField Rejected. Timetamp is important.
  • Add fetching match schedules from TBA Integrate Match Schedule from The Blue Alliance #19
  • Explore the ability to cache TBA match schedules Add API interface for The Blue Alliance #7 and Integrate Match Schedule from The Blue Alliance #19
  • Explore the ability to remember previously scouted matches after the app is closed
    • Add settings option to clear the history Rejected for automatic hiding on event change

App Architecture

Alpha Release Change List

This section includes issues/bugs that are fixed as they are found through the development of 2020.1.0-alpha

Regressions

  • Fix a regression caused by a getString call to a nonexisting string resource, making the Settings activity crash when started Fix a regression that causes a string resource missing #9
  • Fix a regression caused by a potential null-receiver on the shared preferences Fix a regression that causes a string resource missing #9
  • Revert binary search algorithm causing infinite loops
  • Fix a regression caused by attempting to format a double string, by adding integer conversion to the displayed time
  • Fix a null pointer exception trying to access the vibrator before the context is fully created
  • Fix an extra tab state update caused by a Handler method call in SwitchField
  • Fix a string encoder regression that produces duplicate characters in each data point, which is caused by different bitwise operator precedence between Java and Kotlin
  • Fix a regression on the getNextIndex function always returning 1 when the time is 0
  • Fix a regression caused by getRelativeTime returning match time field
  • Fix a regression caused by the data class of TemplateField overriding equals Add serialization to EntryInMatch #29

Code Quality

UI/UX

Data Backend

App Architecture

  • Update code dependencies
    • Kotlin 1.3.60
    • Android Tools 3.5.3
    • Android 10 Target SDK
    • AndroidX artifacts for appcompat
  • Fix an issue caused by the absence of local.properties on CI builds
  • Update .gitignore to exclude gradle.properties

Beta Release Change List

This section includes issues/bugs that are fixed as they are found through the development of 2020.1.0-beta

Regressions

UI/UX

Data Backend

Code Quality

Final Change List

This section includes issues/bugs that are fixed as they are found through the development of 2020.1.0 final

Desktop Tools

This section includes the development of desktop tools for the scouting system

WARP7 Scouting Scan Tool Features

  • Implement new QR Code Scanner
    • Multiple cameras, with the ability to refresh
    • Image flipping
    • Image resizing to screen
    • AutoSave
    • Open saved data
    • Skip incompatible lines in the save file
    • Sort matches
    • Scout Stats
    • Duplicate Detection
    • Missing Entries Detection
  • Set up a repository in the team GitHub account repo link
    • Port the code as a separate Gradle build
    • Publish 2020.1.0 (initial release)
    • Publish 2020.1.1 (bug fixes)
    • Publish 2020.2.0 (v6 encoding, super scouts)
  • Package Scanner as stand-alone installer
  • Update to Encoding V6, potentially changing event, scout name, and undo
  • Explore adding CSS into the application
  • Add an "About" section
  • Explore fullscreen shortcuts

WARP7 Scouting Scan Tool Bugs

  • Change app icon from PNG to ICO
  • Change ICO size to maximum
  • Add correct icon to the window
  • Add ownership to child windows in the main stage
  • Change application title
  • Change confirm function from Alert to Dialog<ButtonType>
  • Refactor Cells.kt into separate classes
  • Fix "Open File" not showing entries Move Java classes out of Kotlin source folder
  • Remove restriction on super scouts in Missising Entries
  • Add M prefix to scout stats and table
  • Change title to include app version

Raw Data Processing

  • Implement the V6 Decoder in Python
  • Implement board file lookup in Python
  • Implement basic processing @EvanBialo
@yuliu2016 yuliu2016 pinned this issue Jan 6, 2020
@LocPham2003 LocPham2003 self-assigned this Jan 6, 2020
@yuliu2016 yuliu2016 self-assigned this Jan 6, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants