20 August 2008

EAI and SID

In the previous post I described how the TMF’s SID provides the language for SOA – in this posting I will discuss its role in an Enterprise Application Integration (EAI) architecture.

When building an interface between two systems there would always be a negotiating between the two architects or designers which boils down to “your data or mine” – would the interface be formatted according to the sender or the receiver or would it be some sort of hybrid of the two.

This is fine if there are only two systems to interface, but when that becomes more like 10 systems, each of which has an interface with the other, the number of interfaces grows to 45, each in its own format and each requires its own ‘translation’ rules at one end of the interface or the other. This is just about manageable but will keep the Telco’s IT department busy, but as soon as one component is replaced some very tough decisions have to be made about each of the interfaces.

What is needed, though it isn’t immediately apparent, is a form of ‘Esperanto’ for the interfaces.

To understand this, instead of systems think of people who speak different languages. If you have just an Englishman and a Frenchman wanting to communicate one or both of them will need to use a French-English dictionary. Introduce a German into the group and you need two more dictionaries (English-German and French-German). Let an Italian join in and the number of dictionaries jumps by three (English-Italian, French-Italian and German-Italian) to six in total. Every new language introduced to the group needs a new set of dictionaries (equal to the number of languages in the group before the newcomer arrived).

On top of that it isn’t possible to predict which party is going to use the dictionary. For example when the Frenchman communicates with the German he may have agreed to with him communicate in German, so he uses the dictionary, while when he talks to the Italian he may have agreed to provide his information in French and let the Italian have the dictionary – and for conversations with the Englishman they have decided to use a compromise “Franglais” – a mixture of English and French.

But what if there was a decision to use Esperanto? Everyone translates what they want to say into Esperanto and all the information they receive is in Esperanto which they must translate back from Esperanto into their mother tongue. The following table compares and contrasts the number of dictionaries required…




MembersDictionariesEsperanto
Dictionaries
212
333
464
5105
6156
7217
8288
9369
104510

Using Esperanto would save 35 dictionaries when there are 10 members, and on top of that the use of the dictionary would be consistent for every member of the group.

So what has this got to do with the SID?

For Telcos the SID can take the role Esperanto It is totally independent of, and unaffected by, the inner workings of any particular component of the OSS but because of its scope and coverage every service delivered by each of the components within the OSS should be able to be expressed in the SID language.

So the SID (or its equivalent) is a prerequisite for an truly open EAI.

I wrote “should” above because there is still the issue of mapping tricky things like the product catalogue into SID and out again in without information loss or distortion (i.e. “Chinese Whispers”, or as it is called in Belgium “le Téléphone Arabe” or “Arabic Telephone”). This isn’t a problem in the SID this is a problem of the “grammar and vocabulary” of the interfacing systems.

But why doesn’t everyone just speak “English”? That surely would give the same result!

No, it would lead to problems because the grammar and vocabulary of one system (probably the oldest or ‘most important’ system) is imposed on each new component of the OSS even when those components had a richer vocabulary and grammar. The new components would/could be “dumbed down” (potentially at great expense) to speak the language of “stupid” legacy system and potentially negate the very reasons the new components were bought in the first place.

What is required, and what SID delivers, is a rich vocabulary and grammar that is tailored for the Next Generation OSS – not the last generation OSS!

1 comment:

Anonymous said...

Excellent idea to use Esperanto.

The only problem seems to be that no-one has heard of it.

A big disadvantage!

Can I therefore suggest http://www.lernu.net