A design challenge to propose an experience for eligible voters to vote in elections online.



As I have personally never participated in an election, doing the necessary research was a good learning experience for me. In addition to using the web, I spoke with a few friends who have previous voted to listen to their pain points. I captured notes as a map of related concepts, then used them to assemble a user journey map.


user journey map

Due to time constraint, I created a proto-persona who is a potential 1st time voter, so that I can draw on personal experience.


Define the scope via user Problems

I decided to focus mainly on the day before and the day of stages of voting. The key problems I aimed to address include:

  1. Poor ballot design leads to user errors

  2. Going to the polling station may be time consuming

  3. Lack of access to reference material makes it challenging to make informed decision

However, being an app targeted at first time voters, I also wanted to make sure my app guides the user through the entire process.


Competitive Landscape

I then looked at some existing solutions to see what they do well and what is lacking. 

Solution Positive Negative
Mail-in Ballot - allows the user to spend more time on filling out the ballot
- flexibility around when the ballot can be submitted/mailed
- poor ballot design can potentially lead to user error
- in a lot of states, a mail-in ballot (absentee vote) must be requested ahead of time, not allowing for last minute changes that prevents the user from going to the polling station
- tabulation may be labor-intensive
- not a personalized experience that helps to direct the user through the process
LA County's voting system for the 2020 election (VSAP) - Works across multiple touchpoints - from mobile devices to setup at polling stations
- Improved usability and accessibility of the ballot sheet
- not a personalized experience that helps to direct the user through the process
SERVE (Past attempt at implementing e-voting by the DoD) - greater accessibility to voters - concerns about compromising voter anonymity and hackers intercepting and manipulating ballots sent over the internet


Based on my research, there’s still a lack of solution to address the privacy and identity fraud concerns associated with voting-over-internet. For my web app solution to be a valid solution, I’m assuming the following:

  • Technological solutions for protecting voter anonymity and preventing manipulation of ballots over the internet have been developed

  • Additional means of verifying someone’s identity without ID have been developed and approved by the government


Experience Goals

Easy for all users

  • Accessible for users with disabilities (keyboard navigation, color contrast, audio option)

  • Plain simple language for those with limited english proficiency

  • Error prevention measures

Flexibility of use

  • Can be accessed anywhere anytime on any platform (desktop and mobile)

  • Multiple options for casting the ballot so that the user isn’t limited to a single method

Secure and private

  • Uses multi-factor authentication

  • Transparency into how the system works and where the user is in the voting process


Designing a personal experience

As stated earlier, my target audience is a first time voter, therefore it’s important for the app to guide the user through the voting process, from registration, all the way to casting the ballot and checking the results. I envision the default experience of the app being a dashboard that displays information relevant to where the user is in the voting journey.

There’s a dedicated area on the dashboard that specifically guides the user through the voting journey.

Designing the ballot

Having determined where the ballot resides in the app, I then focused on improving the usability of the ballot. Things I believe are important for all users, but especially first time voters are:

  • clarify of their current step in filling out the ballot

  • clarify of options and potential actions

  • accessibility of reference material

  • ability to save a ballot to complete at a later time

Designing for the system

For this web app to be successful, it needs to be interoperable with the other components in the bigger voting ecosystem. For example, if the user registered to vote via mail, they should still be able to enter certain information into the app so that they can continue their journey there. Another consideration may be how a user can start filling out their ballot in the app, but complete and cast the ballot in person at a polling station.