The Danger of Setting Apps Free Without Proper Testing

By now, you have probably heard about the debacle surrounding the 2020 Iowa Democratic Caucus results. If not, you can find the link to the full story here. To summarize, the Iowa Democratic Party hired a custom development company to build a mobile app for collecting results from 1,700 caucus sites. The rollout was a mess, and in the end, users were forced to phone in results to be manually entered into the database instead of the app. Call lines were held up until well past midnight. Caucus results were delayed for days. Over two weeks later, the candidates were still questioning the results, and the DNC Chair was calling for a recanvass.

Concerns about the app’s security were expressed before it was even released. Obviously, it’s incredibly important to make sure information like election results data is secure, so party officials addressed this concern by delaying the release of the app until just before the caucuses. When caucus day arrived, some users could not even download the app. Many others didn’t like the user interface, and several people had a hard time entering results into the app itself.

The Perfect Storm of High Caution and Low Testing

The delayed release of the app may have reduced the window of time hackers had to attack the system. However, this also created a massive overload on the download server, turning it into a bottleneck and a single point of failure at a critical time. As a result, users could not download the app to report results.

This event was a failure on many levels. First, there appears to have been no thorough testing plan in place. No security testing, no load testing, no user acceptance testing or user experience testing was apparent in the rollout of this app. Party officials released it just before the caucus expecting things to magically and flawlessly function.

We have been discussing the importance of testing for some time now, and this story serves as a reminder of just how important that process is. This public embarrassment could have been avoided by having— and following— a strategic software testing plan. In this case, that plan should have addressed the security measures to protect the sensitive data, the overall ease of use of the user interface, and the load on the infrastructure when several thousand users tried to download and access the software at the same time.

Don’t let your next app launch look like the 2020 Iowa caucus disaster. For more information on how Stonemill can help properly test and troubleshoot your app or software, contact our experts before you launch to the public.