Service Design (WCF, ASMX, SOA)

Expressing feedback / thoughts on a template or best practice to solve a situation that I have seen several times over the years, but I have not found a single solution that would appeal to him as I would like.

Here is the background.

The company has 3 applications supporting 3 separate "lines of business", which are very strongly connected with each other. Two applications literally copy / paste the original. Applications should be able to grow at different speeds and have slightly different functionality. The main differences between functionality and data entry fields. The differences mainly relate to one of the following categories:

  • In one instance there are several fields that the other does not.
  • A string field has a maximum length of 200 in one instance, but 50 in another.
  • Search / link fields have different basic values ​​(i.e., the same table structures, but coming from different databases).
  • The field is defined as a user, free text, value in one instance, but search / link in another.

The problem is that the company has other applications that should consume data from these three separate applications, but ideally, talk to them in a kernel / centralized manner (i.e. through a central service, not 3 separate services). My question is how to handle, in particular, paragraph D above. I think the “least common denominator” approach may be the only way. For example:

<SomeFieldName>
  <Code></Code> <!-- would store a FK ref value if instance used lookup, otherwise would be empty or nonexistent-->
  <Text></Text> <!-- would store the text from the lookup if instance used lookup, would store user supplied text if not-->
</SomeFieldName>

Any other thoughts / ideas on this?

TIA!

+3
source share
2

Datamodel .

, , , , , , SOA. , SOA, . , , -. , , / , / . , , , , .

TDD, , .

+1

: -, . , ( ) . [ ESB .]

, , ""? , . , .

0

Source: https://habr.com/ru/post/1710247/


All Articles