Тогда непонятно, что значит без реализации?
Задача брокера передать сообщение от отправителя к получателю (one to one, one to many - queue и topic)
А дальше начинается - модели чтения LIFO, FIFO, все должны просесть, хотя бы один. Можно ли искать, можно ли Читать по шаблону и тп
Поддержка спецификаций (меня когда-то давно JMS интересовала обычно :))
Потом всякие варианты HA, масштабирования, оптимизацию, возможность сохранять в разные места хранения - штатные, субд и прочее
Без приземления на конкретную технологию. Конкретного брокера, например.