Имеется в виду не то что есть единая "причина" по которой меняются все классы. Скорее что изменения в одном классе должны иметь единый источник. Я для себя single responsibility рассматриваю как то что класс должен нести ответственность перед одной внешней ролью.
Тут как с root cause analysis - стоит копнуть чуть глубже.
Есть проблема. А почему она есть? а у кого она есть? а чем продиктовано?
Может быть закон может поменяться. может быть еще чего. Смысл в том что бы попытаться замэпить твой код на некий поток изменений требований. Не знаешь как требования меняются - если ты понимаешь как бизнес работает ты сможешь придумать гипотетические изменения и тогда уже смотреть соблюдается ли SRP.