TORNAADOS — A Mobile Feature Checklist

Julian Ramirez
3 min readApr 7, 2018

--

Last night I was talking to some friends who’re getting ready to launch an app and they asked me what things they should be sure to review before sending their app out into the world. Over the years I’ve tried to keep a checklist of the things that’ve caught me by surprise when launching new features, in the hopes of not letting it happen again, and I wanted to share my list in the hopes that it can save other teams some time. My goal is for this to be the first part in a series of checklists that will also include server-side feature launching and brand new app launches.

“A hurricane or storm over Yemen” by NASA on Unsplash

Toggles (Feature Flags)

Do we want the feature to go to 100% of users on Day 1? Or do we want to slowly roll out the feature to our users only after we’ve gained confidence that things are working well?

Offline

What happens if the user loses internet access while using this feature? How do we gracefully recover and ideally minimize the amount of work the user has to do?

Refresh

Does the content need to be able to be refreshed? Is it just a pull-to-refresh or is it dependent on a parent view? Alternatively should it be refreshing in the background, either by a silent notification or as part of regular background processing.

Notifications

Is this feature something that a user will receive a notification for? If so we should make sure that whatever handles notifications in our system will be able to take us to the relevant screen and display it with enough default state to make sense.

Analytics

What is the single metric that we look at to know if the feature is succeeding or not? What analytics should we track so we can learn how the feature is used? How can we instrument monitoring to make sure if there’s any trouble we can quickly fix it?

Animations

Can we use animations to help explain the feature? Can we give a button a simple wiggle when it loads or slide in content from the bottom so they know they can scroll?

Different Screen Class

How does this feature look on different size phones? On tablets? Do we have all the right resolutions for our assets?

Onboarding

Will new users understand what this feature does and how they can use it? Do we need to fold this feature into whatever onboarding flow we already have for our app? Is the voice and overall feeling consistent with the rest of the app?

Signed out

How does the feature behave when when a user is signed out? If they can’t get to the feature then it isn’t an issue, or we may want to include a prompt asking them to sign in to see relevant information.

And one specific consideration for Android apps:

Back and Up Button (Android Specific)

What should these buttons go to? The previous screen? Dismiss a modal?

Last but not least, it’s always helpful to run through all of the states a user could encounter while using the feature. Vince Speelman wrote a nice article on The Nine States of Design that is worth reviewing, the bullet points being: Nothing, Loading, None, One, Some, Too Many, Incorrect, Correct, and Done.

--

--

Julian Ramirez

Technophile and geek for life. VP of Engineering @DepictArts.