A complex software application often involves multiple personas, several user journeys, and complicated interactions between different user groups. Without a thoughtful design, these complexities can be overwhelming and frustrating: Users are forced to deal with a cluttered UI with overloaded features, or to search for an obscure button or command, or to figure out a user flow that’s hard for laymen to understand. As a result, they get lost while using the software and are forced to seek help or go through trainings.
Instead of forcing the users to learn and adapt, how can we design an application in such as way that it proactively tries to help the users? Well, one way to do that is to predict the user intent using various contextual cues, such as the user’s skill level, the content the user is working on, etc, and present the right features at the right stage of the user journey through an adaptive UI.
Continue reading