Ride Ithaca: Enabling Users to Ride the TCAT Bus Easily

With 32 bus routes going in and out of the large Cornell campus, the TCAT bus becomes essential when you want to go back to your dorm, to the other end of campus, to the mall, or to your classes.

When I arrived on campus this past August, I downloaded Ride 14850, the most used bus application, only available on iOS.

However, checking the app as I got dressed in the morning, I was frustrated, having to scroll through a list of locations to find “Rockefeller Hall.” More importantly, I didn’t even know where the bus was arriving. I was lost, confused, and the application was of no help to me.

I frequently overheard many of my friends expressing similar frustrations. At the end of September, I set out to design an application that removed the frustrations that came with searching for buses. On my journey, I teamed up with my close friend and developer, Young Kim.


I knew some of the problems students had with Ride 14850. I set out to discover what other problems people had with the app. I walked around campus, messaged my peers, and interviewed them to discover just that.

Ride 14850

Understanding the Problem

User Research

  1. Android users don’t have access to a bus application.
  2. Users are often confused about which stop the bus is arriving at: “I get very lost sometimes because it tells me that the bus is arriving at Balch Hall but there are three stops associated with that location.”
  3. Users want a real time tracker to know when exactly the bus is arriving.
  4. Users want multiple options for routes just in case they miss one.
  5. Users like the simplicity of searching for routes but wish for more clarity and understandable UI’s in the app.
  6. Users do not want to pay $0.99 for a sub-par application.

Market Research

Examples of other Ithaca bus applications
Examples of other direction applications

Current bus applications in the Ithaca community don’t solve the people problem. They either lack clarity or simplicity, thus not making finding routes easy. 14850 Bus Direction provides estimated trip time and where and when to board, but does not provide directions to the bus stop. TransLoc Rider displays selected routes with its stops on the map. However, there is no method of searching for a specific location. My platform can make searching simple and quick without much effort and provide clear results so that it is easy to get to places using the TCAT bus.


At first, I thought users were frustrated because it took too much effort to input locations. However, there were more problems at a higher level.

People want to ride the bus, but they have a hard time figuring out where the bus is stopping and when the bus is coming.

As a result, my hypothesis was wrong. Ride 14850 lacks features to enable users to find directions easily.


This is actually not the approach I ended up taking.

Initial Approach

For one of my earlier iterations, I decided to be more creative. I wanted to go beyond established applications and design something that people would know was original.

Sketches of an Earlier Approach
Explorations of an Early Approach

Creating a quick prototype, I sent it out to my friends for feedback. I discovered that it took a lot of steps to get the results. My ultimate goal of making finding bus times and directions easy was not achieved.

During this process, I set up a meeting with my design teacher, Andrew Aquino who has inspired me and allowed me to discover my passions in product design.

I learned that product design isn’t about being creative but being intentional about my work. It isn’t about me but about the users.

With this new insight, I restarted my process.

Making Finding Routes Easy

I focused on the goals of this application: Simplicity and Clarity. Those were the main problems with Ride 14850 and other TCAT bus applications. People want to ride the bus but they can’t if it is difficult and confusing to find bus times and stops. Where is the bus stop? Are there other options? With a new approach, I tackled at the designs again.

Medium Fidelities of the Main Screen

At first, I pursued A because I thought that the main use of a bus app would be to find directions between two locations. However, when I looked back at user research, people who were familiar with the bus system wanted an option to search for buses at a specific stop. They didn’t need full directions; they just needed the time that buses arrive at the stop they always go to. Therefore, I moved to B. I further simplified the experience by removing the Find Routes button and clarifying the start and end points. Finally, I analyzed other similar applications on the market such as Uber and Google Maps and noticed that both started with the destination. This led me to design D.

One Bus Time or Many Bus Times?

Medium Fidelity Explorations of Results Screen

I wanted to determine if it was more helpful for users to know one bus time for a route in a chronological order or view multiple times for a route at once. I found out that A was preferred because users didn’t care which bus route they took as long as it got them to their destination. Therefore, they wanted the bus times in chronological order.

Most Valuable Information

Explorations of the Results Screen

Similar to Google Maps, I started my first iteration at A. Through user testing, I learned that users disliked the clutter on the screen and that the locations didn’t look editable. Therefore I decided to create three different options that emphasized different types of information. I discovered that D was the preferred option because users wanted to know what time the bus leaves and arrives at the stops more so than the duration of the trip.

Know Where to Get Off

Explorations for Features to Enable Users to Track Ride

One problem that users addressed was that they didn’t know when to get off the bus, especially at night because there is a lack of street lights. A was my first solution. This allowed users to know when they would get off, however, it was not possible from a developer perspective because there wasn’t enough data to support such a feature. Limited, I iterated onto B, which loads the specified bus route’s KML file. With the current location, it was easy for users to know where they were along the route. Then, to further clarify, I added bus stops onto the map in C so that users would know what stops they are nearby. Unfortunately, with developing and time constraints, C will be used for later versions of the app.

Final Interaction for Ride Ithaca v1.0

Finished Flow for Ride Ithaca v1.0


This is some of the design process I went through to produce the first version of Ride Ithaca. The final interaction enables students and people in the Ithaca community to ride the bus easily — knowing when and where the bus is coming without confusion. People can now confidently get to places on campus using the TCAT bus. Ride Ithaca will be available on the Play Store for free at the end of January, and the App Store later.

What I Learned

Working with developers, it was tough as a full time student to meet milestone dates. However with passion and drive, I was able to finally finish the designs. Through this project and working with developers, I learned to communicate and discuss what is possible as well as tailor designs with those limits.

Looking Forward

This is only the first version of Ride Ithaca. I hope to continue to iterate and listen to users to make improvements to the experience so that riding the bus to places in Ithaca is easy.

In the future, my team and I hope to partner with a ride-sharing app on campus to allow people to easily get to places.

I am a freshman, information science major and Dyson business minor at Cornell University. This was my first time designing an application and working with developers. I hope to continue to design more human-centered applications to solve everyday problems.