Background
The YMCA I work for has a program in place, Test — Mark — Protect, to help keep swimmers safe in the water. It involves testing swimmers with a modified version of the American Red Cross’ water competency sequence, marking the swimmers based on their age and ability, with the ultimate goal of keeping them safe in the water. Swimmers wear a colored rubber wristband to indicate their swimming level. Green is for those who have passed the swim test and can go anywhere in the pool, yellow is for those over a certain age who have not passed the swim test and must stay out of the deep end, and red is for those under a certain age who must have a guardian within arms reach at all times.
Since I can remember we’ve used Microsoft Excel to keep track of the swimmers and their corresponding band color. While swimmers are encouraged to keep their wristband and bring it back with them each time they come to swim, that does not always happen. An off-duty lifeguard is responsible for identifying swimmers in the pool who do not have wristbands, looking them up in the system, and giving them the correct wristband. For the most part, the system works well. But there are certainly issues.
Problems
For starters, the lifeguards are almost always out on the pool deck during their off rotation. This is so they can help answer questions, perform secondary tasks, and be more readily available should an emergency occur. There is (rightly so) no computer on the pool deck for lifeguards to use, they must enter the aquatics office to use a computer in there. During daytime hours the computers are often used by full time staff, who need to then be interrupted several times an hour at peak times such that lifeguards can lookup swimmers in the system.
There are a lot of swimmers in the system. The Excel sheet has just over one thousand unique people in the database, this makes searching it cumbersome and slow. In addition, it makes adding new names difficult. There is no easy way to have the list automatically sort and be easily searchable.
Ultimately, the single biggest issue is the varying computer competency of staff. Excel is not designed to be used the way it is, and while it is fairly quick and straightforward for a technically literate staff member to search the sheet and input new names that is a big ask for other staff members.
Solution
After literally years of dealing with this system and brainstorming ways of solving the problem I was able to identify and implement a solution. Using Microsoft PowerApps I was able to use the existing Excel sheet as a backbone for the new system. PowerApps allows you to build a user interface that seamlessly integrates with Excel on the back end. The true beauty, though, is that it’s free to use and doesn’t require anything more than downloading the PowerApps app onto any iOS device. That means we can use the department’s iPad to run the app on the pool deck.
With the new iOS app running on an iPad lifeguards no longer need to leave the pool deck to interrupt full time staff members by using the desktop computers in the aquatics office. Lifeguards no longer need to learn Excel, and more importantly, cannot easily inadvertently mess-up the sheet or delete entries. Lifeguards are presented with a homepage that provides one tap search functionality and a list of all the swimmers sorted alphabetically. The list automatically adjusts as the lifeguard begins typing, thus reducing the need to type more than necessary. This not only alleviates the need to have young children attempt to spell their names, but also decreases the total amount of time the lifeguard needs to be interacting with the system.
The user interface is also dramatically simplified compared to a Microsoft Excel window. The lifeguard is presented only with the options they need to perform like adding a new swimmer, editing an existing swimmer, and searching. The interface uses iconography whenever possible instead of text to more clearly represent the functionality of buttons. Lifeguards can use the ? button to get information on how to properly conduct a swim test, for example.
Implementation
There are some very minor changes to the UX that I want to implement before implementing the app. Once those are made, I will work with the staff to test and get more detailed feedback on what works well and what could be improved. I anticipate that after a few days of testing I should have what I need to make final changes and the app should then be ready for deployment.