Every user task needs effort and focus from the user perspective. To perform some of these tasks, some strong technical resources are needed too. Is it possible to deliver a seamless user experience during the background tasks?
For this project, we (designers, product owners and developers) began our design process based on the current version of our CMS.
The reason for this is that our users are already involved in these processes; moreover, user feedback is good in terms of learning curve and familiarity with the UI.
The user story is focused on finding the most friendly way to manage multiple tasks for multiple items. The current CMS is only available for the desktop experience, so we defined the breakpoints for this project designing for MD and LG viewports. We defined the story mapping to highlight the most important features for the user journey. As a new feature, we followed the MVP approach to be sure that the learning curve was not so high and to avoid the cognitive overload.
Below are the project assets underlying our development process.
- You’re a professional seller on e-commerce platform;
- You just imported 300 items in your profile;
- You want to publish 200 items on the platform;
For points #2 and #3, the system needs more than 10 minutes. For instance, the system has some dependencies to perform some tasks due to the fact that is built with third parties (ex API dependencies)
To prevent the user from being blocked by the process, we decided to start background tasks. With this feature, while the tasks are running, the user can browse the website and perform other tasks.
- Be sure that the user is aware that the task is heavy and the system needs time to execute it;
- Be sure that all the flow is clear for the user in terms of actions, messages and triggers;
- Develop a notification system that can help the user to understand the process status (on going, complete etc);
- Develop a control set to support the user to manage errors with a batch action;
- Be consistent in terms of UI and task sequences to give the user the chance to decrease the weight of the learning curve;