Native college search app, iOS and Android · OCAS · 2015 to 2021

Keeping a $1.3M agency build usable

The app shipped to the App Store and Google Play, with every stage signed off against usability data before it moved on.

Sole UX lead · Staged sign-off across a year-long build · Worked with the OCAS project manager and an external agency

OCAS runs the shared application service used by applicants to Ontario's public colleges, and OntarioColleges.ca is the front door to it. The project was a native iOS and Android app for that front door: research colleges, browse and filter programs, save favourites, and start or continue an application from a phone. The budget was $1.3M. An external agency was contracted to build it. This was a large native build for a public service with a broad, mostly non-expert audience, leaving little tolerance for confusing screens. My job was to help the agency ship an app a first-year applicant could use without help.

Sole UX lead, with sign-off at every stage. The OCAS project manager and the agency routed the work through me, and each stage was signed off against the UX and UI bar before it moved on. The bar was not taste. It came from two places: data out of one-on-one usability sessions, and heuristics from the training I had done with Nielsen Norman Group and Human Factors International. The agency could see both from the start, and when work missed, it went back with the evidence attached.

The agency could see the bar at every stage, and the bar came from usability sessions, not taste.

The mechanism was staged sign-off across the year-long project. The agency worked in sets, each set a package of screens and behaviours submitted for approval before the next stage could proceed. A set moved to mockups, and mockups moved to build, once they were signed off. Staged sign-off made the standard a shared process rather than a final inspection: the agency knew what each set had to meet before they built it, which kept the work usable while the schedule pushed the other way.

One small change illustrates the method. The colleges were listed in a way that made anything past the first few hard to find on a phone, because the logos ate the space. We shrank the graphics and enlarged the actual school names. People started browsing faster and finding the school they came for. Minor on paper, system-level in effect, and exactly the kind of thing a usability session surfaces and taste does not.

The native decisions were the ones worth protecting: location-based sorting so the nearest colleges surfaced first with live distances, a full province map with tappable pins, favourites that saved instantly, a swipe to remove, and an application flow that lived inside the app rather than bouncing out to a browser. None of these capabilities were free, and each was vulnerable to being cut when the schedule tightened.

Three layered wireframe screens for finding a college on the OCAS app: an alphabetical college list, a location view that sorts nearby colleges above a map, and a full province map with tappable pins showing a selected college.
Finding a college: an alphabetical list, location-based sorting with live distances, and a full province map with tappable pins. Shrinking the logos and enlarging the school names made the list usable on a phone.

It shipped to the App Store and Google Play, with every stage signed off against the UX standard. Applicants could browse programs natively on their phones, and the app gave OCAS better analytics on what applicants were actually looking for, which fed back into how the service was run.

Three layered wireframe screens for exploring programs on the OCAS app: a college detail page, a filterable programs list showing 382 results grouped by subject, and a program profile listing credential, campus, start dates, and a favourite control.
Browsing and filtering hundreds of programs: college detail, a categorized program list, and a full program profile with start dates and favourites.

The OCAS project manager, who ran the project. The external agency, who designed and built the app in staged sets. Usability session participants, whose data set the bar.