Вы уже просмотрели документацию Sun?
http://java.sun.com/blueprints/patterns/BusinessDelegate.html
Если вы привязываете клиента непосредственно к интерфейсу бизнес-службы, возможно, этому клиенту придется менять каждый раз при изменении бизнес-службы. В сценарии, когда у вас есть один тип клиента, использующего сервис, это не имеет большого значения, но когда у вас есть куча потенциально разных клиентов, которые все хотят использовать один и тот же сервис, это становится большей проблемой. Кроме того, все ваши клиенты, которые хотят использовать службу, вероятно, хотят обрабатывать поиск службы и обрабатывать исключения из службы аналогичным образом.
Чтобы смягчить этот сценарий, вы извлекаете все детали обработки исключений и распределенного поиска из отдельных клиентов («абстрагируете» их) и извлекаете их в объект бизнес-делегата. Все ваши клиенты теперь могут использовать бизнес-делегата для унифицированного доступа к бизнес-службе, и при изменении бизнес-службы должен меняться только ваш объект бизнес-делегата, а не все ваши отдельные клиенты.
Это мое понимание сценария. Надеюсь, это прояснит для вас.