Consumer expectations
The feature-set of an application should really correlate with customers' expectations. Layout options and navigation hierarchy should serve the purpose of the application. According to the requirements, an application can be designed as a single-page application or with a complex hierarchy of navigation pages; the content can be text-only or rich media elements can be used; and context actions can provide access to user actions or the interaction can be laid over multiple application pages.
On the view level, in general terms, an application view contains three different types of elements: content, navigation, and actions. It is the developers' and designers' responsibility to create the optimal blend of these elements. In most modern applications, these elements can take on multiple functionalities, where the content elements become user actions as well as navigation elements.
For instance, if we had a list of items defined with an image, a simple title, and a description (that is, a simple two-column, two-row template) and we were to implement actions related to use content items, then the design, the flow, and the behavior of the elements would really depend on the type of those actions.
Interaction models for the list view and the complimenting pages can differ greatly:
- This list could be a common item list view used for detail navigation, where the item detail page exhibits the actions available for an item. In this case, we are assuming that the user needs to see the details of an item before they can execute the necessary action on an item (for example, if the items are hard to distinguish just using the listing):
In this case, the content items in the list view are behaving as navigation items, and on the details screen, the user is able to execute the actions that are related to those specific items. However, for a simple action, the user would need to change the view and would lose the context of the list.
- If an action can be executed on the list view, we do not need to take the user to a secondary view, and can allow them to execute the actions by directly interacting with the list:
In this implementation, the list view acts as the single interaction context and actions are executed on items directly. In other words, content elements are used as action elements instead of using them for navigation.
- Finally, if there are actions available for execution on multiple content elements, for the economical use of design space, content items themselves could be used with additional styling (for example, an overlay of a checkmark on the image element) to replace the possible use of checkboxes or radio buttons. This would further improve the user experience, since we would, again, be allowing the user to interact with the content itself rather than the user input elements.