Creating impact through a new online DMV IIMS portal

Date:
August - March 2019
Skillset:
User Experience Design, Prototyping, Design System integration, Frontend Technology
NDA Disclosure:
For legal reasons final UI cannot be shown and some some details have been omitted.

The program affects thousands of NC citizens, but the existing system is broken. How do we fix it?

The North Carolina Department of Transportation (NCDOT) on behalf of the North Carolina Department Division of Motor Vehicles (NCDMV) assigned a team to improve the Ignition Interlock Management System (IIMS). This team required a new online system due to being overloaded with manual entry tasks and physical forms, often prone to user error.

“The agency’s decades-old computer system has led to some residents being able to continue driving even though their license should be suspended and other residents unable to renew.”
Source: www.wbtv.com

Goal:
Upgrade the system with a new, improved online portal

The NCDMV had no interest in expanding the process beyond an internal application, but improving the existing one. The existing system was limited and for the process to work it required over half of the labor to be manual entry. That was the identified issue. Appropriate improvents and features were prioritized to benefit new and existing participants, as well as vendors of the IIMS monitoring devices.

Requirements and limitations

  • IE10 Browser support
  • SharePoint frontend integration and API structure
  • No changes to existing branding
  • Required features such as edit, save, export, and documentation access

Goal:
Prioritize existing research into user needs and flows

When brought onto the project other teams had already been researching, interviewing users, and working on the legislation involved in getting the project started for years. Day 1 for me was analyzing the existing research, locating gaps that could be actioned upon with new research/interviews, creating a project outline, and identifying limitations.

What does this research tell us?

Ignition Interlock users, while not users of the portal, do have specific needs that affect how this application works. The main requirement from these individuals is to ensure that their data is up to date, synced properly with important events, and that PII documentation is handled securely.

“Currently, 10,894 ignition interlocks are installed in the vehicles of DWI offenders in North Carolina. […] Prior to implementation of the new web-based system, the NCDMV had been implementing the ignition interlock program through labor intensive, manual processes."Source: fy2019 North Carolina Governor’s Highway Safety Program annual report

Stock photo of driver blowing into Vehicle Ignition Interlock

Goal:
Interview stakeholders to outline features and UI

The day 1 research also consisted of existing application pages and database information. This gave a good idea of the types of information that would need to be stored, parent-child relationships, and possible UI groups. With the interlock participant in mind we now turned to the end-user, IIMS DMV employees in charge of managing the data. We sought to answer questions such as:

I consulted with the internal project lead. We unified on a strategy before driving downtown to meet with the project owner. We defined:

What do these interviews/sessions tell us?

We now had a better understanding of the types of actions needed to manage a participant: create, edit data, modify account, delete, etc. Special attention was given to important dates/decisions and how that information would be alerted to employees and vendors monitoring accounts. If dates were missed or no action was taken, decisions were made on what kind of automated actions would occur. The employee’s main needs are accuracy, ease of access, and download options.

Altering the UI approach from digitized form to integrated process

Identifying data structures and user flows

Based on the existing research, the backend and API teams had already begun identifying data sets. Using the outlined user flows and UI pages I led the process to categorize the data into components and pages. Any issues in structure identified at this point was brought up during weekly standups.

Organizing the data into components

The existing physical form was taken and broken down into into a table for the individual data: first name, last name, address, etc. This information was then cross referenced when outlining components. Was all data being used? What was the severity or importance of information?

Stock photo from picjumbo.com

Components and features were categorized into four page types:

"[The project will] create additional subsystems within the current IIMS system that will be integrated to allow for a completely automated process across business units within the DMV for managing all aspects of the Ignition Interlock Program."
fy2020 North Carolina Governor's Highway Safety Program annual report

Overcoming project challenges

SharePoint and templated components

Moving away from SharePoint Lists has the team look into JavaScript templating languages with would allow more flexibility while still being browser compatible. The final portal is built with a combination of ASP.Net Core and VUEjs. Atomic design methodology was used to create reusable components.

Per department and NC system standards profile data needed to be retained for years. Users also needed to be able to remove accounts whether due to error or dismissal from the program.

Solution:
Deleted data would be removed from the main API and added to a separate API for deleted accounts. This delete API would auto remove data after a certain amount of time, according to state regulations. This process would allow users deleted in error to be reinstated. Accessibility considerations Stakeholders of this project did not consider accessibility a huge concern since the application was not public-facing. If you have some familiarity with UX and WCAG you’ll know that internal applications need to be compliant too. People will need to access it so make it a good experience. During frontend development attention was given to accessibility issues I could control such as headings, tables, and some interactive elements. I briefed the team that would be managing the code base going forward on best practices and easy-to implement improvements if both backend and frontend worked together to make it happen.

"The North Carolina Division of Motor Vehicles completed the first year of a two year project to enhance the Ignition Interlock Management System. [The] project was successful in the initial setup and implementation phase and is on track to complete the project in year two."
Source: fy2019 North Carolina Governor’s Highway Safety Program annual report

Key takeaways and project outcomes:

This was a very long project, due in part to government shutdowns and COVID furloughs. However this project was a fantastic experience in working directly with multiple teams and organizing several interviews and walkthroughs. The project was able to enter beta early into 2021 fiscal funding year which allowed plenty of QA time and addressing secondary features such as loading times. The end result was highly praised by the internal team which now uses this application daily. 🎉