Community
In software development, we often find ourselves reinventing the wheel—particularly when dealing with higher-level abstractions. As I mentioned in my blog "Unlocking Business Value: Moving Beyond Low-Level Programming", while open source has reduced redundancy at the technical level, user interfaces continue to see many foundational patterns being rebuilt repeatedly.
A classic example is the "Overview" screen, where users search for and interact with a set of data, performing actions like viewing or editing specific results. Each application tends to design this screen differently, often after much debate. To avoid reinventing the wheel every time, it is helpful to develop a reusable checklist of essential features. Although cost constraints may lead to the exclusion of some items, this list ensures conscious decisions are made for each feature.
A typical overview screen is divided into three main parts:
Filtering/Search Block: The area where users define and apply search criteria.
Result Block: Where search results are displayed, and users can perform actions on those results.
Let us break down these parts in more detail.
Filtering/Search Block
This section allows users to specify search criteria and refine their results. It typically includes four key elements:
Save and Retrieve Options: The ability to save filters, recall stored ones, categorize them, and share with others. You may also include templates for predefined filters that prompt users to input specific variables.
Clear Button: A simple feature that resets all active filters.
Applied Filter Overview: Displays the currently selected filters, with options to remove or modify them.
When designing the filtering section, consider the type of filtering required. Several filtering options exist:
Tag filtering: Clicking on a tag or category to apply a filter automatically.
Drill-down filtering: Starting with a broad filter (e.g. years), users can click to narrow down dynamically (e.g. months, then days).
Selection Filters: Users define filters based on specific attributes, which can range from simple to very complex.
Advanced Filters: Using a predefined scripting language (e.g. SQL or a domain-specific language) for custom filtering.
Additionally, you will need to address other concerns like:
Whether to support wildcards, fuzzy searches, and operators (like <, >, ⇐, >=…) for numeric or date filters.
Options for relative date filters (e.g. "Last 7 days", "Current month" or "Last Year").
The combination of multiple filters using operators like AND, OR, and NOT.
Result Block
The result block is the core of the overview screen, where users spend most of their time. It is essential to avoid overcrowding this section with too much header or filter content to maximize the workspace for interacting with data.
The result block can be divided into these key components:
Result Configuration and Result Actions:
Toggle between different view types (list, grid, map…).
Customize the number of results per page.
Export data with various options (e.g. output type XLS, CSV or PDF, current page or all pages, and column configuration).
Perform bulk actions like deleting or approving multiple results at once, often with a “Select/Deselect All” option.
Result Statistics: Display the total number of results, total pages, and the current page number for better user context.
Result Overview: The core table or other display formats (e.g. tile or map views) where data is shown.
Column Customization: Allow users to rearrange, resize, and sort columns. Multi-criteria sorting is valuable, as are actionable columns (e.g. flagging items as favourite or important, selecting for bulk actions or doing direct edits in the result set).
Column Header: Show column names and sorting status, with the headers remaining fixed when scrolling.
Paging or Infinite Scrolling: Paging is traditional, where users click through pages, while infinite scrolling loads more results as users scroll down. Infinite scrolling can offer a smoother experience when implemented with pre-loading techniques to avoid delays.
Rows: The rows correspond to the search results, and various actions can typically be performed on each row. The most common action occurs when clicking on a row, which often opens a "View details" screen for that entry. However, different behaviors may be assigned depending on how the user interacts with the row. For example, some implementations may differentiate between a single click, double click, or right click. In some cases, clicking on a specific column within the row may trigger additional functionality. For instance, clicking a column might open a dialog that applies a filter based on that column’s attribute, allowing users to either select all records with matching values or exclude those values from the result set. Additionally, contextual actions are often available at the end of each row. These may be presented as an action menu with various options or as individual icons. The specific actions that are visible or enabled depend on the user’s role and the characteristics of the returned results. Common actions include view, edit, delete, approve, reject, print, comment, attach a document, or clone/duplicate the entry.
Non-Functional Considerations
Beyond functionality, non-functional aspects like performance, security, and usability are crucial for a seamless experience.
Filter visibility should also be configurable based on user roles. Not all filters are relevant to every user, so it may be helpful to hide certain filter criteria for specific user groups and customize the order or grouping of filters. This way, each user can search in a way that is optimized for their role.
Auditing and tracking: Log all searches executed by users, as well as which results were returned. Additionally track the filters users applied to better understand their search behavior.
Usability and Mobile Responsiveness:
Responsive Design: As applications are increasingly used across a variety of devices, responsive design is critical. Overview screens, in particular, can be difficult to optimize for mobile because they typically present a large amount of data on a single screen. Adaptations will be necessary to ensure a good user experience on smaller devices. Common adjustments include:
Converting the filter menu into a dialog box that can be opened and closed when applying a filter, preventing it from taking up too much screen space.
Displaying results in a stacked view, where multiple lines per result are shown to fit all relevant columns on a smaller screen.
Converting paging to infinite scrolling on mobile, which feels more intuitive for mobile users.
Replacing action menus with icons to improve clickability on small screens
Persistency of User Settings: Another important usability consideration is whether the settings a user applies, such as Last executed search, Filter configuration, Result configuration or Page Size, should persist across sessions or be reset when the user leaves the screen. Different options like "Keep settings only as long as the current overview screen is open", "Persist settings for the duration of the user’s session" or "Always show the last applied settings, even after the user logs out" exist. The best option depends on the specific use case and user preferences. It is important to handle exceptions properly—such as when a user’s permissions change, or when updates to the application alter available filters—to avoid confusion or errors.
A well-designed overview screen is not just a luxury; it is a critical part of any business application. By incorporating the right features and thinking through non-functional elements like performance and usability, you can provide users with a seamless experience that meets their needs while also optimizing system performance.
This content is provided by an external author without editing by Finextra. It expresses the views and opinions of the author.
Ugne Buraciene Group CEO at payabl.
16 January
Ritesh Jain Founder at Infynit / Former COO HSBC
15 January
Bo Harald Chairman/Founding member, board member at Trust Infra for Real Time Economy Prgrm & MyData,
13 January
Welcome to Finextra. We use cookies to help us to deliver our services. You may change your preferences at our Cookie Centre.
Please read our Privacy Policy.