There are apps for everything from sports to social media. The number of apps has grown incredibly with the rise in smart devices like smartphones, tablets and more. But Professor of Computer Science Ranjitha Kumar has found that designing these apps for maximum utility is generally a hit or miss process. According to Kumar there are only limited guides to what works and what doesn’t.
Kumar wants to change this. She believes that this change is possible with the release of Rico, a huge database of mobile app designs that she and other researchers have collected.
"Existing practice involves inspecting a bunch of design examples by hand. What you'll usually do when you have a new project is you'll go look at other apps that are doing similar things, and you would actually print them out and try to visualize, 'These are the screens a user would go through to perform this task in this app,'" she said.
But the manual approach is slow and expensive, so designers are more likely to look only at what they know. For example, a developer of a diabetes app may try to limit their time and expense by looking first, and maybe only, at other similar medical apps.
But other apps that may seem to have little to no relation might offer design elements that could help them be more engaging, according to Kumar. The diabetes app may benefit from a screen where users log the food they eat, something that might be built into a food-blogging app that other medical apps might not have.
By mining designs at scale, semantic relationships can be found in apps that may seem unrelated and learned from.
Rico is the largest database ever, with 72,219 user interfaces from 9,772 Android apps across 27 Google Play categories. It contains visual, textual, structural and interactive design properties of each of the UIs and can be searched by all three.
But providing this massive database wasn’t Kumar’s only goal.
"The other part that's really exciting is, once you have all of this data you can start to build machine-learning models that can go beyond simple search interactions," she said.
Designers might begin with a rough idea of what they want on a given screen and trust Rico to supply the details. If they’re working on a log-in screen, Rico may eventually be able to fill in the basics of what a good log-in screen should have. This could save time and money.
Kumar worked with other researchers on this project, including ECE ILLINOIS Ph.D. student, Diplab Deka and CS @ ILLINOIS alumni Ziefeng Huang and Chad Frazen.
The researchers started gathering data late last year. They first downloaded 9,700-plus apps, then set up a farm of about 10 Android phones in their lab.
Then the hired 13 workers through the crowdsourcing app Upwork and spent five months using the apps through a web browser linked to the phone farm.
As the crowd workers performed tasks on the apps, their interactions were traced and recorded. Then the manual interaction traces were followed by an automated exploration to uncover less common screens.
Kumar wants designers and researchers to put Rico to use for anything they may want to build.
Ultimately, the goal is to make good design simple enough that it makes economic sense to designers.
The next step for Kumar’s group is to present a testing platform for correlating app design with performance without requiring access to the app’s code. The platform allows designers and researchers to specify tasks for crowd workers to perform and computes aggregate performance metrics like completion rate and average time spent on a task.
"It's trendy for businesses to make grandiose claims about how important design is to them," she said. "But ultimately companies only invest in good design when they can tie it to back to measurable business goals. The hardest part of the design is quantifying the payoff up front."
The paper on Rico will be presented at the ACM Symposium on User Interface Software and Technology (UIST) starting on October 22, 2017 in Quebec City, Canada.