4 Steps To Better SOA

In NASA's effort to integrate data from many different sources, the space agency wanted to take data collected during a feild expedition, including sample data, photos, voice recordings, and GPS information and integrate it with satellite imagery, GIS data, and information about the characterstics of the minerals found in the samples. Not only were the types of information heterogeneous, but the formats ranged widely from spreadsheet files to SQL databases to WebPages.

It's a common programming problem. Lets say, you have feild in two seperate databases, that are both named 'temp', is it legitimate to assume they represent the same quantity and can be integrated together? One might represent temperature and other temporary value. To properly combine these 2 fields, you really need to understand what the data represents.

At NASA and other large entities - both in government and business - integrating heterogeneous data is a challenge, but it's one that must be faced in order to easily share information internally and with outside partners. The integration challenge is one reason why NASA and many organizations are turning to SOA combined with semantic integration. As we know SOA consists of services that offer interoperability capabilities built into the network. While SOA's business-centric approach has sparked enthusism, the challenge is now to build in inference capabilities to make intelligent and dynamic selection of Web services possible. This is where semantic technology - the modelling of an area of knowledge like biology or economics as close to natural language as possible - comes into play.

Semantic technology
A SOA platform with built-in inference capabilities can let companies make runtime decisions based on service capabilites and invocation context where tasks are executed based in pre-defined conditions. On its own, SOA does'nt have this capability, but with the addition of inference, SOA gets the semantic richness it needs to make runtime decisions. Semantic integration techniques build context and awareness of the underlying services and data in a metalayer.

Ontology-Enabled SOA
Semantic integration techiniques are based on the idea that it's possible to find patterns in the origin of various pieces of heterogeneous data. Once done, then it's possible to define these patterns using a metamodel, and then connect several metamodels by defining how they relate to one another. One emerging approach to semantic integration is ontology. Ontology is a structured representation of a domain- by which we mean an area of knowledge like biology or economics - in terms of classes and interrelationships between the classes that can be defined using the XML-based Web Ontology Language.

There are 4 steps in building an ontology-enabled SOA:
Step 1 : Analyze the Business Process: In execution of business process, conditions may represent intelligent routing decisions requiring semantic power. We define these as "points of variability", or areas where inference capability is required. Future business needs may mandate additional variables or new values for existing variables. Identify them.

Step 2: Construct the Ontology Model: Ontology is defined in terms of concepts and relationships. Ontology concepts are implemeted in classes. Relationships are implemeted in terms of "object properties" and "data types properties".

Step 3: Create Context-Sensitive Invoker: Creating the runtime component that consults the ontology and makes dynamic context-sensitive service invocations in the next step. The business process flow can be encapsulated as a linear process in a BPEL, block.

Step 4: Web Services: provide the actual business service. They're the "consuming" point, invoked to acheive business functionality. The policy that operates on the Web Services is part of task required to incoporate a new service end point.

Final Word:
Ontology can be used to enable semantic integration by modeling the business domain process as a workflow, and constructing an ontology model along-side the business process modeling. The classes and relationships of the ontology model are created based on the domain knowledge and the business process.

6 comments:

Prateek Swastik said...

NASA is just an example here, but think of a business environment, where you have integrate with other systems in real time, at runtime, may be online. Isn't it a pertinent solution, to any such business condition.

I tried to give SOA a new face, which is different from traditional paradigm about SOA. SOA is considered to be suitable in a business situation, where things are static, and there is no variability or dynamics.

If SOA is adorned with concepts and capabilities of Ontology, SOA may append a new dimension and transform the way systems are integrated today.

Bunny said...

Hey prateek, as you said NASA is just an example..we might find many such cases talking about heterogeneous integration .. One of such cases is design of wireless sensor networks and integration... i think i should post something similar to this in my blog ..may be..talking about different designs/prototypes in integration of wireless sensor networks...

Good one..nice way of putting things Prateek..

Gautam said...

Nice post Prateek! I agree with your view that SOA might transform the way systems are integrated today; It certainly has the potential to do so. Though Im not too sure if i agree with your view that SOA is suitable only for Static business situations.

One of the USP's of SOA is the fact that its flexible and increases business agility.I feel the suitability of SOA is more dependent on the kind of business rather than the fact that its static.

Prateek Swastik said...

Hey Gautam. Yeah, you are right that SOA increases agility. But by static I meant that when your are actually implementing SOA, you need to know what are the systems you are connecting / integrating and the types of data present in both of the data. You have to manually write a piece of code, and then deploy the SOA application. But here, I am trying to say that if we add concepts of Ontology to SOA, we can provide dynamic integration capability to the system, because the system will be equipped with the intelligence of identifying different datatypes and context of the data, and will eventually integrate the other system spontaneously / dynamically.

Syed said...

Pink Grapefruit is additionally prescribed for improving one's confidence and certainly gives you an additional feeling of "you can do it!" SECOND INGREDIENT: Sweet Orange which has a sweet and new orange fragrance that is warm and welcoming, a restoring and inspiring tonic for the brain and feelings.

https://ideal-shops.com/

De Wiam said...

Banyak orang bermain lotere setiap minggu, tetapi sayangnya, hanya sedikit yang memenangkan jackpot signifikan. Banyak yang tidak menang apa-apa sama sekali. Tetapi, ada beberapa pendekatan untuk membantu memberi peluang pada keinginan Anda sendiri. Mereka tidak akan menjamin kemenangan
asikqq
dewaqq
sumoqq
interqq
hobiqq
rajawaliqq
http://192.254.236.33/interqq78/

Post a Comment