Edge Case

Edge Case in UX

Edge case in UX design world is a situation that is unlikely to occur, yet it is a case that need to be accounted for in order to maintain user flow, or keep application from crashing.

As UX designers we typically spend most of our time designing happy path, a flow that we want users to take. However, along the way we uncover cases that are rare yet possible, and might require special handling.

Edge case use scenarios, as the name implies, describe atypical situations that the product must nevertheless be able to handle, albeit infrequently.”

Alan Cooper (About Face 4)

In UX research activities designers should make special effort to understand different perspectives, and uncover edge cases. Typically edge cases are uncovered when asking questions like “what if…?”, and thinking of the extremes: “too fast”, “too much”, “too small”, “too many”, etc.

Many times edge cases are related to technical constraints of the system, and thus are best uncovered while working together with a development team.

Edge Case Examples

Let’s look at some examples of edge cases.

Let’s say we are designing a photo sharing app that allows users to add and share photos with others. The happy path for the app would go like this: a user adds a number of photos, labels them, and shares them with friends.

Some edge cases that might come up could go as follows:

  • The user uploads a photo that is too large? What happens then?
  • What if the user uploads too many photos at the same time?
  • What if some photos have the same name?
  • What if connection is lost while the photo is being uploaded?

As you can see from these examples, edge cases are rare, yet possible.

That holds true if the user is an intended user. But things can get out of hand quickly and a number of edge cases might increase exponentially if UX designers fail to account for a particular persona.

Watch this short tongue-in-cheek presentation by Jonathan Evans to see what I mean.

Designing for edge cases

If you are interested in learning more about edge cases, I highly recommend: