WCF – Design Parameter Decision

In this case I would not use the existing services in the Renewal Service, like you say they could change.

I follow the principle that in SOA services should have a business meaning.

I would therefore create a new operation: IsContractRenewalInProgress. This removes the need to think about who should be responsible for validating that the list of renewals returned is NULL. More importantly that the list being NULL means that there are no contract renewals in progress.

The UpdateFundApprovalDate would then call and check the result of IsContractRenewalInProgress, before making any changes.

IsContractRenewalInProgress should be in the Renewal Service, since it is the Renewal Service that owns the data and the business logic to know when a contract renewal is in progress.

Leave a Comment