Notification system

An attempt to mitigate user distraction

Understanding notification 

Technical definition 

A notification system represents a combination of software and hardware which enables an application or service to proactively deliver information to a user which is outside their current focus of attention. This is achieved through one of the several sensory modalities visual cues, auditory signals or haptic alerts. 


In another way, a notification is a trigger that either does or does not result in a behavior. Typically a notification succeeds when the person does the behavior, fails when he doesn’t.

History: The evolution 

Notifications reflect how the internet has changed the way we consume information.

1990's marks the beginning of web portals, which represented the single point information for the users. The user had to manually search and fetch the relevant data from these applications whenever needed. This was painful for a user, as a lot of his time and effort was wasted until he got a result.

Then we moved into the age of feeds where there was a continuous flow of information available to many applications which resulted in a crowded experience. The relevance of these data made it difficult for the user to ignore them and uncertainty in its occurrence kept him curious.

This gave birth to a phenomenon “ FEAR OF MISSING OUT “ which made them access these applications repeatedly especially when they were anticipating an occurrence of an activity.

How it works now

The current notification system extracts and delivers the information to you in real time.This will reduce the effort of accessing and fetching the information manually.Perhaps the most salient benefit of using notifications is that they reduce the user‘s need for repeatedly checking an external information source.

How it fails

Despite all of the advances of the past 10 years, notification system has not undergone any commendable change.The present notification process is very linear and granular. Notifications are almost always delivered as soon as the underlying information becomes available without regard for the state of the user‘s ongoing task. This often results in the user being interrupted in the midst of an ongoing action. 

Bailey and Konstan [2006] have shown that notifications interrupting the current task cause users to take up to 27% more time to complete the task, commit up to twice the errors, and experience up to twice the anxiety. Recovery and resumption of interrupted activities also take substantial time, between 10-25 minutes. Interruption costs are often attributed to limitations in human information processing capabilities, where the additional demands on cognitive resources due to the interrupting task interfere with and reduce performance on the primary task.

Recent work has also shown that users prefer to continue the use of notifications to cue them to new information despite the purported interruption costs rather than to turn the notifications off and have to check for new information manually.

This clearly states that user has taken this for granted.

"As a designer, I believe it is my responsibility to find the balance between timely delivery of relevant information and inopportune timing of notification presentation."


This is a typical notification model where a user is engaged with a primary task. The following are the checkpoints which will be handled by this model.

1. When to push the notification ?

The solution will be

  • To identify the relevance of a notification at that time.

  • To identify the cognitive state of the user performing a task at the moment.

This will help to balance between timely delivery of important information and inopportune timing of notification.


“ what is the right moment to say the right thing to the right person.”

Notification Information

There should be a set of profiles defined by the user ex: Work, Home, Family, Friends, Sleep.

These profiles can be set manually based on time or geo locations. Applications in each device should be manually assigned with each of these profiles. Once received, a system will validate notification in three different ways.


  • Urgent and time bound
  • Contextual.
  • Ignored

An urgent notification can be an information which is configured as urgent by the application. It can also be a notification from family, close friends contacts. This can be based on how contact list is configured by the user.

Time bound notifications are those which has a defined validity within a time period. These two types of notifications are valid and will be pushed irrespective of the current user profile.

Contextual notifications are the notifications of those applications which belongs to the current user profile. Those are also valid and will be pushed irrespective of the current user profile.Rest of the notifications will be ignored and will be collected within the system. They will be validated again if there is any change in a user profile.If proved as contextual, it will be immediately pushed.

User / tasks

Empirical studies have proved that deferral of notifications until a low cognitive load during task execution reduces interruption costs as measured by resumption lag and subjective assessments of frustration. A typical user will be interacting with multiple devices and performing multiple tasks in a day.Each of these tasks differs in its cognitive magnitude. The suggestion is to have a well-defined centralized notification system for a user. For that, all the three elements device and application plays an important role.


All the device user use should be connected to the system. This helps the system to understand the state of each device and to which device the user is engaged with. Now the system can handle all notifications irrespective of the devices and effectively notify only to the engaged device. This will also reduce the crowded experience of similar and redundant notifications across devices.


All the applications on these devices which will be in sync with the system.Studies have proved that human perceptual system segments observed activities into a hierarchical structure of discrete action units.Most of the people typically generate similar structures for the same activity.Based on user data any application should be able to define a set of such discrete actions units called  activities which can be performed by the user.Goal driven tasks. ex: sending an email , adding a Facebook post , watching a youtube video.Events with defined start and end points.This will help to identify the state of user activity . ex : started, completed, switched.

  • There should be defined a set of basic granular level user interactions which is required for the activity. 
  • This includes  type , click , touch , swipe , scroll , drag  etc.
  • This should be compared with real-time user interactions.This helps to understand the state of the user within the activity.
  • Change of pace , change of focus , flow of interactions will reflect the cognitive load of a user.
2 . How to alert a user ?

Now that notification are validated and the most relevant one is identified and user activities are monitored and low cognitive moments are identified.The system will be ready to push the notification. Since that occurrence of notifications is confirmed it's important to identify how its going effect a user now.Now the focus will be to help humans to handle this notification effectively.  

When a user is engaged in a primary activity they build a context. A Context - rich mental environment that stores all the information stored during the execution of the task. An instant alert with a new notification information can cause this mental context to collapse. Advance warning can enable the user to remember the context effectively and hence resume the task easily.The best solution is to hide the notification information first. Provide a warning with sensory modalities like visual cues , auditory signals or haptic alerts. This will keep the user aware of its presence and prepare well before getting exposed to the new information. A very minimal amount of information which is enough for the user to get the context should be reflected in these alerts. If not information is provided that will make the user more curious which will adversely affect the context saving part.

3. What information to provide ?

The main utility factors of the notifications should be available first for the user to acknowledge the purpose and content of interruptions and choose either to accept or deny it. Along with this minimal information, the system should gradually learn from user behaviours to provide enough information to reduce unnecessary navigations from the primary task. 

4. How to bring back ?

In some cases, the user will resume back to his primary task, but in 45% cases, the user will continue with some other activity. Study by O’ connail and frohlich state that.Certain studies also claim that in a typical working environment subjects spend 1- 1.5 hours per day on interruptions, Which is around 20% of their time servicing interruptions.

The Measure should be taken to make user redirect back to the primary task without forcing them or affecting the task in their hands.This can be achieved by providing them an experience of a secondary task always when they continue with an interruption-driven task.The intensity of this experience should not affect the performance of the ongoing task. But it will always keep them aware of the presence of a halted task. 
The speed and accuracy in which a person can process an information depend on his working memory. And once interrupted with a new task, almost all of this working memory will be used for this task. If its forced to share both the tasks data, it will perform badly. Since the decision have been made its better to help people to do the task in their hands effectively first. 
5. How to minimise the effect of distraction ?  Easy recovery

Procedures for reinstating context after a notification and methods for securing and recovering task focus can provide value. An unanticipated alert will make the user struggle more to re-establish after resumption.Average recovery time was proved to be minimum 15 mins. My suggestion will be to provide the user with some sort of memory aid. The best solution is to provide a summary of the resumed task history.This can be visual representations based on the user interaction data of the respective applications activity units.