Swift
Record live game data

Swift

A desktop tool that helps scorekeepers to record live data and keep their eyes on the game.
Cosmo Basketball League
SPRING 2023
Overview
Timeline
2-week design sprint

Team
just me!
My Role
UX Research
Hi-fi Prototyping
Client communication
Tools
Figma
Business Mission

The Cosmo Basketball League wants to digitize its scorekeeping process to transfer data more efficiently.

Scorekeepers manually count up tally marks and input values into the system... at home after the games.
Problem

The inefficient scorekeeping process prevents scorekeepers from keeping their focus on the game.

Scorekeepers are disrupted by scoresheet inconsistencies and need to constantly alternate between TWO paper scoresheets.
Framing the challenge

"How might we help scorekeepers record game stats efficiently?

Solution

Product Preview

Swift

Transitioning from an error-prone, eye-straining, paper spreadsheet to a tool that...

quickly pivots from player to player
isolates focus
centralizes controls

...to enhance the scorekeeper's focus.
User research
I wanted to understand and learn more about...

the scorekeeper's role

As someone who is unfamiliar with the basketball world, game rules and basketball lingo felt like foreign languages.
User Interviews

What is important to the Scorekeeper?

What is the most frustrating part of your role?
What information is most important when you are managing the game?
What would help you better follow players involved in each play?
What do you wish you could change about the scorekeeping process?

Scorekeepers keep track of...

LINGO + GAME RULES AND CONSTRAINTS

assist = AST foul = flb 3-pointers = 3pt free throw = FT air ball steal = STL 2-pointers = 2pt block = blk rebound = reb 2nd half timeout Overtime = OT 1st half 6 fouls per player per half 6 fouls per team per game 3 timeouts per team each game 2 timeouts per team in first half 1 timeout per team in overtime game time = 40:00 min Half time = 20:00 min a play = stats leading up to a scored point

8 different stats per player ...per each play. + MORE!

Literature Review

Looking to the pros... only to find more dead ends

There are no scorekeeping tools to reference. I redirected my focus to creating a tool that is unique to Cosmo's needs.
Client Analysis
Analyze what current tools Cosmo scorekeepers use.
Cosmo scorekeepers have their hands full... literally.
Problem

The inefficient scorekeeping process prevents scorekeepers from keeping their focus on the game.

Scorekeepers are disrupted by scoresheet inconsistencies and need to constantly alternate between TWO paper scoresheets.
Design Approach
Affinity Mapping

What disrupts the scorekeeping flow?

Pain Points:

Tracing spreadsheet cells are time consuming and tedious

Super tiny spreadsheet cells are hard to see

Present players and team rosters are often inconsistent

Not everyone shows up to each game because Cosmo is a casual local basketball league

Marks are difficult to distinguish

Mistakes covered by hasty scribbles are often confused with correct marks

How might we help scorekeepers record game stats efficiently?

Exploration
Prototyping

Creating a control panel for scorekeepers that matches their flow

Low Fidelity
Selected the vertical layout to display all players and their information in rows.
ITERATION 1

Displaying active and passive information

Focus: adding and removing stats across all players
Making the scoresheet interactive with counters:
Problem
Is it necessary to display every player's stats at once?
How can we add stats more easily in a rush when movements are not as precise?
ITERATION 2

Narrowing the scorekeeper's focus on the player

Focus: enlarging touch points to make adding stats easier
Breaking out of the conventional stat sheet:
- adding stats to each player = primary
- no need to look at all the players at once
- other player's stats don't matter when recording

The tool's role is to simply record.
The book's role is to display.


Problem
Not enough room for players
ITERATION 3

Displaying active information

Focus: Displaying team limits and constraints
What information is active vs. passive in the game?

Conditions and rules vary between the 1st and 2nd halves of the game, depending on the team's progress

ACTIVE INFORMATION
Tracking stats that affect the team's limits and constraints
- max fouls
- max timeouts


Problem
Difficult to scroll between two teams
ITERATION 4

Anchoring interaction

Focus: minimize the need to scroll constantly
Teams are displayed side by side
Selected player appears on top, inline with the stats panel

Problem
Player stats, stats panel, and adding/removing switch did not feel related
ITERATION 5

Unifying components

Focus: Helping the user make easy associations
Adding/subtracting switch moved inline with stats panel
Fouls and timeouts stylized to look like info, not buttons

Problem
Grayscale color palette feels plain, but maintains neutrality between teams
Success Metrics

How quickly can scorekeepers switch between players?

Initial interviews: scorekeepers take 3-4 seconds to locate a player on the spreadsheet.
- naming inconsistencies create gaps on paper that disrupt the flow
- tiny rows and columns are difficult to trace on paper

With Swift, scorekeepers located a player in 1.5 seconds!
- more visible buttons
- less steps (automatic score calculation)

Scorekeepers are less likely to miss a crucial play when they look down for a shorter amount of time!

Impact
Why is this shift worth it?

Scorekeepers can now stand up and carry the digital scoresheet panel, allowing them to follow players more closely and keep their eyes on the game. Additionally, all data is instantly logged into the system, giving scorekeepers back their time.

View Prototype
View Prototype
View Prototype