Я часто нахожу необходимость проверки набора условий и вместо неудачного раннего (возвращающ false или бросаю исключение, когда первое условие не выполняется), мне нужно агрегировать результаты и сообщать о отдельных сбоях.
В настоящее время я использую список с пользовательскими записями (в основном запись состоит из типа сбоя и некоторого информационного сообщения) или какого-то наблюдателя (который также просто объединяет сбои), но у меня возникает ощущение, что это должно быть общей проблемой и что для ее решения должна быть какая-то существующая модель.