IowaReporterApp : Underscoring the Importance of Software Development Life Cycle

The Iowa caucuses fiasco focused on the failure of the IowaReporterApp to properly and quickly compile the results of the Iowa caucuses. Shadow Inc., the company commissioned to develop the election-reporting app naturally received the blame. The firm acknowledged as much, in order to take away doubts over the accuracy of the Iowa caucuses voting results.

“The underlying data transmitted and collected by the Iowa Democratic Party via Shadow mobile app were accurate and sound; but our process to generate and transmit data to the IDP by way of the app was not.”

Shadow’s admission was not enough to explain the circumstances surrounding the fiasco because there are questions that needed proper explanations.

Rather than use Shadow’s IowaReporterApp, the precinct leaders tallied results based on the paper trail or hard copies of the election of the delegates in every Iowa precinct. However, telephones were overwhelmed and the precincts were understaffed, which led to confusion, and subsequently, conflicting and delayed reports.

Overall, the Iowa Democratic caucus debacle led to theories that cast doubts on the security of the Iowa Democrats’ voting system and the results generated.

Information Technology (IT) experts point out that the root cause of the Iowa caucus problem was basically, a case of flawed software development process; or what is known in the computing industry as the Software Development Life Cycle (SDLC).

IowaReporterApp had one important job to do but failed to carry out because it was not programmed to scale; or have the ability to adjust in order to serve an increasing number of users. Add to that the failures in the app’s deployment and execution, aggravated by poor connectivity in some areas.

Underscoring the Importance of Software Development Life Cycle

Software Development Life Cycle (SDLC) is also called Software Development Process. This particular concept is important because it fundamentally describes stages of an application’s development, with each stage developing its own process and deliverables, all fed into the next stage as part of the app building and enhancing processes. The importance of SDLC is that it serves as a guide for the developer in meeting the client’s objectives.

Part of the SDLC is the testing stage, which in the case of the IowaReporterApp was carried out by way of a few tests. According to reports, those few tests already revealed critical issues but were not thoroughly addressed because Shadow Inc had to deliver as scheduled.

Actually, the installation/deployment stage was also faulty, because the app became available to users only on January 18, 2020, roughly two weeks before the caucuses took place. In a Vice article, Jonathan Green, chairman of Democratic caucus in the precincts of Fremont Township and Lone Tree, said the app was not working properly when it was deployed.

Green, who is himself an IT system administrator by profession, said he received final instructions via email on the day of the caucuses (Feb. 03). The final instruction was that in case the IowaReporterApp “stalls/frees/locks up,” precinct leaders should call the results instead.