Home
Performance Unlimited App Development

Performance Unlimited App Development

to : Performance Unlimited combined qualitative and quantitative athletic data to draw correlations among training and lifestyle habits.

Showcase & Media

Video Case Study

Post Mortem Discussion

Screenshots

Check out photos of this project

Architectural Diagrams

Check out architectural diagrams of this project

Problem

What was the problem to be solved?

The Pittsburgh Pirates wanted to give their strength and conditioning staff a way to track, measure and correlate qualitative and quantitative data to their athlete's on-field performance.

For example, they wanted to see if their training regimen and guidance translated to on-field performance.

Solution

What was the proposed solution?

Gunner Technology proposed a Progressive Web App that could be used by trainers, managers and players.

General Managers, for example, would have an admin level, read-only look into the data with the ability to create graphs and charts.

The trainers could create qualitative questionnaires such as recovery survey which would rank players based on their answers to the questions.

For example, a player who answers "A" on the question: How many of hours of sleep did you get last night?

A) 7 or more

B) 5-7

C) 3-5

D) Less than 3

Would get four points (3 for B, 1 for C and 0 for D).

The trainers could customize the scoring and create as many surveys as they wanted.

The players could take these on their own, or the trainers could enter responses for them.

Similarly, the app would allow the trainers to enter players training data such as 40 yard dash time and bench press numbers.

Gunner would then build a back-end parser that would consume data from Stats, Inc and tie it to each player.

Challenges

What challenges arose during the project?

The main challenge was coming up with a clean UI that would allow players and trainers to fill in the information extremely quickly.

The players are not happy about any extra work so any sort of impediment would irritate them.

Also, it was a somewhat political balance because the app could potentially hurt the trainers who we were working with to build the application.

What if there was no correlation between their advice and performance? Or worse - an inverse correlation.

Finally, this was in the early days of PWAs so getting the app to function in areas without data reception was tricky.

Technical

What was the technical approach to the project?

Gunner proposed a PWA because the app needed to function on a slew of different devices: Desktops, laptops, projectors, TV screens, phones, tablets, etc.

For design, the team used the Bootstrap UI Design Framework, which it used to provide a user experience similar to Twitter.

Gunner also built-out a leaderboard to entice the players into wanting to do the surveys to compete with one another.

On the backend, Gunner went Serverless with node AWS Lambda, DynamoDB and Kinesis.

We relied on the Open Source D3 JavaScript library to generate the charts and graphs.

Management

What was the project management approach to the project?

Gunner used an Agile Scrum approach to this project with two, one-week Research Sprints to start the project followed by development sprints until completion.

Each development iteration lasted a week and was followed by a demo to stakeholders who offered consistent feedback and guidance.

Lessons

What did you learn from working on this project?

The stakeholders were some of the best Gunner has worked with.

They bought into the Agile process even though they were new to it and were involved every step of the way.

They understood cost-implications of feature requests and how to balance good-enough vs perfection.

From this, the team learned the importance of getting buy-in from the client with a project management approach.

Benefits

How did this project benefit the client?

Gunner is under an agreement to not share the results of the application, but, the Pirates record before and after the launch of the app support its effectiveness.

Why Gunner?

Why was Gunner selected for this project?

The Pirates were intrigued by the Gunner team's experience at ESPN.

Also, as former athletes, the Gunner team was able to communicate with the client and understand the requirements right away.

The Team

Who worked on this project?

Proficiencies

What tools, techniques and methodologies were used on this project?

[object Object]

Agile

Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams

[object Object]

Amazon CloudFront

Amazon CloudFront is a content delivery network offered by Amazon Web Services.

[object Object]

Amazon DynamoDB

DynamoDB is a nonrelational database for applications that need performance at any scale

[object Object]

Amazon Kinesis

Store and process terabytes of data each hour from hundreds of thousands of sources

[object Object]

AWS Lambda

AWS Lambda lets you run code without provisioning or managing servers.

[object Object]

Bootstrap

Bootstrap is an open source toolkit for developing with HTML, CSS, and JS.

[object Object]

CSS3

CSS3 is the latest evolution of the Cascading Style Sheets language and aims at extending CSS2.1

[object Object]

D3

D3 is a JavaScript visualization library for HTML and SVG

[object Object]

Git

Fast, scalable, distributed revision control system

[object Object]

HTML5

HTML5 is the 5th major revision of the core language of the World Wide Web

[object Object]

JavaScript

JavaScript is the world's most widespread programming language, powering the Internet.

[object Object]

Node.js

Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications

S

Scrum

Scrum is a framework for project management that emphasizes teamwork, accountability and iterative progress toward a well-defined goal.

[object Object]

Serverless Framework

Build web, mobile and IoT applications with serverless architectures using AWS Lambda, Azure Functions, Google CloudFunctions & more