обычно шаблон Стратегии определяет семейство алгоритмов, инкапсулирует каждый и делает их взаимозаменяемыми. Стратегия позволяет алгоритму варьироваться независимо от клиентов, которые его используют.
Я не вижу сложных алгоритмов, для которых стоит добавить еще один уровень абстракции
Если вы хотите инкапсулировать поведение ProcessReport, я бы создал интерфейс, представляющий это поведение, чтобы вы могли просто вызвать IProcessReport.Process(userId)
в своем цикле