На практике в хорошо спроектированных системах большинство сервисов, которые мне встречались, содержали только один или два контракта, при этом один контракт встречался чаще. Из сервисов с двумя и более контрактами дополнительные контракты почти всегда не были связаны с бизнесом; в них отражались такие аспекты, как безопасность, защита данных, хранение данных и т.д., и эти контракты повторно использовались в других сервисах.
Сервис не должен поддерживать более одного или двух контрактов. Поскольку контракты являются независимыми гранями сервисов, если сервис поддерживает три и более независимых бизнес-аспекта, это наводит на мысль о том, что сервис слишком велик.
Отказ от использования свойств также является хорошей практикой в любой распределенной системе. Всегда лучше хранить данные там, где они находятся, и только активизировать для них нужные операции.