При KVO - обозреватель в курсе об обозреваемом объекте
При Notifications - обозреватель в курсе лишь о названии нотификации, и абсолютно не имеет понятия кто ее отослал.
Что из этого вписывается в твою архитектуру то и используй.
НО! Мое мнение - лучше избегать нотификаций и кво во всех проявлениях кроме тех где они вшиты в систему и без них ни как. Потому что, они добавляют запутанности логике. Нет наглядности в том "кто вызвал эту нотификацию?", "кто изменил эту проперти?"