С точки зрения архитектуры системы, да, это «хорошая практика». Под добром я подразумеваю, что он достигает целей, не причиняет вреда и обеспечивает разделение интересов.
Я занимался разработкой архитектуры с аналогичной структурой. Пользовательский интерфейс .NET и использует веб-службы Java. Эти веб-службы затем отвечают за все взаимодействие с постоянными носителями, сторонними компонентами и т. Д.
Я бы сказал, что в любой системе вы должны работать над абстрагированием логики пользовательского интерфейса от бизнес-логики. Это просто хорошее разделение интересов. Использование веб-сервисов для этого - просто один способ достижения этой цели. Я бы порекомендовал использовать веб-службы в том случае, если вы будете использовать эти бизнес-службы в других случаях в вашей системе.
Еще одна вещь; после использования двух разных технологий в пользовательском интерфейсе и WS в течение последних 8 лет я понял, что большинство проблем - организационные, а не технические. Например, труднее найти новых разработчиков, обладающих обоими навыками, необходимыми для поддержки вашего приложения. В конечном итоге вам нужно найти эксперта по одному, а затем обучить его другой технологии.