Project Description

uCount is a simple and reliable polling system designed with schools in mind. The purpose of uCount is to provide a quick and easy way for students to vote on certain matters at school, such as voting for their favorite club, their favorite talent in a talent show, or a new class President. uCount was written in Java Enterprise Edition by myself and my friend, Kevin Thorne. It was used during an assembly at Bingham High School and worked very well despite hundreds of students connecting to the application within a few minutes via the web browsers on their phones.

Student Experience

Students who use uCount are immediately presented with a simple page including the name of the poll, a description for the poll, and an area where the student can enter their ID. The Student ID is required to vote, and ensures that every student gets to vote only once.

After the student has entered their ID, they are presented with the ballot. The options on the ballot are completely customizable by the administrators, and the ballot is presented in a random order to each student. All the student has to do is tap “Vote” and their vote is recorded. It is very quick and simple, and takes very little effort.

To prevent nuisance students from guessing IDs and stealing other students’ opportunities to vote, we have implemented a banning system on the student ID validation form. If a student enters an invalid ID more than a specified number of times, they are temporarily banned from voting.

Administrator Experience

The Administration areas were designed with simplicity in mind. We worked hard to create an experience that was very easy to navigate with the least amount of confusion involved. The Administrator Login page couldn’t be simpler, and it includes the same banning system that is implemented into the student ID field. If a student tries to break into the admin section and enters invalid credentials too many times, they will be banned from logging in.

The Poll Management page allows administrators to create, delete, enable, and disable polls, as well as modify their contents (Vote Groups). Names and descriptions can be changed with a click of a button, and the entire Administration area takes advantage of AJAX, meaning that there are very few page refreshes, if any, involved while making changes to the polls.

Potentially one of the most innovative features of uCount is its Live Results page, which allows the administrators to display results on a projector during an assembly, for example. As students vote, the bar chart will shuffle the Vote Groups around and resize the bars completely automatically, with no page refreshes at all. This provides an interactive experience for students, and encourages them to pull out their phones and vote.

TSA Competitions – First Place in Software Development

uCount was submitted on March 16th, 2016 to the Utah State TSA (Technology Student Association) Conference as part of the Software Development competition. Kevin and I were given the opportunity to present the application and give a live demonstration, and we were awarded with First Place in Software Development. You can view some of the documents that helped us win below.

View the TSA Project Report

Click Here

View the Administrative Guide

Click Here