Task Madness
Task Madness is a demo project that is comprised of a series of tasks built using Spring Boot and Spring Cloud Task that gather NCAA stat data and attempts to predict the outcome of the March Madness Tournament.
The system is designed with the ESPN model scoring in mind and has a goal of generated a bracket that will either score 800 points or be in the 80th percentile (or higher). The bracket from this system has been entered in the ESPN Tounament Challenge twice:
-
2016 - 740 points - 63 percentile
-
2018 - 920 points - 83 percentile including choosing the correct champion- http://games.espn.com/tournament-challenge-bracket/2018/en/entry?entryID=14489931
Building
Build:
mvn clean package
Running the Tasks
Note: For this project we use MySql as the repository to store the status of the Task Executions as well as the location where stats and predictions are stored. Also MongoDB is used to store the generated brackets.
-
Set up the environment for the datasource
export spring_datasource_url=jdbc:mysql://localhost:3306/[yourdb] export spring_datasource_username=root export spring_datasource_password=password export spring_datasource_driverClassName=com.mysql.jdbc.Driver
-
Gather the NCAA Stats
java -jar ncaaStatsDownloader/target/ncaaStatsDownloader-0.0.1-SNAPSHOT.jar java -jar mooreStatsDownloader/target/mooreStatsDownloader-0.0.1-SNAPSHOT.jar
-
Upload Stats to the repository
java -jar ncaaStatsLoader/target/ncaaStatsLoader-0.0.1-SNAPSHOT.jar java -jar mooreStatsLoader/target/mooreStatsLoader-0.0.1-SNAPSHOT.jar
-
Create the brackets:
java -jar bracketGenerator/target/bracket-generator-0.0.1-SNAPSHOT.jar
-
Score the brackets
java -jar java -jar bracketScorer/target/bracket-scorer-0.0.1-SNAPSHOT.jar
Running the UI
java -jar java -jar ncaaUI/target/ncaa-ui-0.0.1-SNAPSHOT.jar