User story описывает цели которые могут быть достигнуты с помощью приложения. Они определяют пользу. Например, чтобы решить какую задачу выполнить сегодня, пользователь хочет определить самые приоритетные задачи. Польза приложения тут в помощи принятию решений по задачам. Тут нужно думать максимально с т.з конечного пользователя. Зачем он что-то делает и как продукт может помочь ему в этом.
Use cases будут включать в себя описания какие взаимодействия с приложением пользователь может произвести чтобы достичь своей цели. Например: Отсортировать по приоритету. Отфильтровать по тегам. И пр. По юзкейсам можно проверить, что приложение действительно предоставляет заявленные функции заявленным образом.
По юзкейсам можно проводить системное тестирование. Т.е. есть заявленный сценарий, работает он или нет.
Функциональная спецификация определяет детально устройство приложения, с подробным описанием всех технических "если", и "а вдруг".
По функциональной спецификации пишется реализация, и сам код приложения уже покрывается юнит-тестами.