Allowing users to subscribe to content or other events in order to get notified about them is nothing that's provided by Drupal core so far. There are many modules around that allow some of that functionality but each of them addresses only one particular aspect, e.g. subscribing to comments on the author's content. Having a wide range of requirements results in lots of different subscription and notification components, each of which needs to be configured separately and notifications may even look different to the recipient, even though from their point of view they are received from the same source.
With DANSE we have designed and developed a framework that provides a generic solution to all those requirements at once. Any kind of event can be configured to create notifications, and users can also subscribe to some of those events proactively. DANSE aims to prevent duplicate notifications if e.g. content got updated more than once since the user last visited the content page, they should still only ever receive one notification.
This module also provides a sample view for a notification drop-down on-site, which indicates to the user how many unseen notifications they have received and provides them links to the event/content that triggered the notification.
DANSE, on the other hand, doesn't deal with the delivery of notifications off-site. It is recommended to use the Push Framework for this, as both modules have been designed to work together seamlessly.