Semantic Enterprise Integration

Preview:

DESCRIPTION

Radu Sora - Research Proposal PresentationNovel way to do enterprise integration using a mix of level 3 REST APIs (HATEOAS), Ontology Reconciliation and capability based security.*Starbucks example is inspired from Jim Webber's "HATEOAS - The confusing bit of REST"

Citation preview

SEMANTIC ENTERPRISE INTEGRATIONRadu’s Research Proposal

Saturday, 3 December 11

OPPORTUNITYOne entrepreneur identifies a great business opportunity

Saturday, 3 December 11

PARTNER IDENTIFICATIONWho can help me deliver the work?

Saturday, 3 December 11

PARTNER SELECTIONWho do I select to implement the different parts?

Saturday, 3 December 11

AGREEMENTCan we agree to be partners and make a bid for the tender?

Saturday, 3 December 11

COLLABORATIONHow do we share information between the partners?

Saturday, 3 December 11

PARTNERSHIP FORMATIONHow do we go from identifying the business opportunity to delivering the work

Opportunity Partner Identification Partner Selection Agreement Collaboration

Saturday, 3 December 11

PARTNERSHIP FORMATIONHow do we go from identifying the business opportunity to delivering the work

Opportunity Partner Identification Partner Selection Agreement Collaboration

Saturday, 3 December 11

PARTNERSHIP FORMATIONHow do we go from identifying the business opportunity to delivering the work

Opportunity Partner Identification Partner Selection Agreement Collaboration

West Midlands Collaborative Common Marketplace

Saturday, 3 December 11

PARTNERSHIP FORMATIONHow do we help the parters to share more information between them?

Collaboration

Saturday, 3 December 11

SUPPLY CHAIN EXAMPLEWe can assemble the baby carriages, but where do we get the parts?

Assembler

Saturday, 3 December 11

SUPPLY CHAIN EXAMPLEWhere do our suppliers get their materials?

Assembler

Textiles Company

Iron Works Company

Saturday, 3 December 11

SUPPLY CHAIN EXAMPLEAnd finally where do the raw materials come from?

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Saturday, 3 December 11

SUPPLY CHAIN EXAMPLEHow can we share information across the whole supply chain?

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier

Raw Material Supplier

Saturday, 3 December 11

HUB INTEGRATION

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier

Raw Material Supplier

Saturday, 3 December 11

SERIAL BUS INTEGRATION

Material Supplier

Material Supplier

AssemblerTextiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier Raw Material Supplier

Saturday, 3 December 11

Going on the enterprise service bus architecture, trying to standardise the way

in which companies communicate via “blueprints”

Saturday, 3 December 11

Going with the assumption that in a regional context we can configure a cloud

with the applications that most companies need to use

Saturday, 3 December 11

ANY SILVER BULLET ALTERNATIVE ?

• Cheap, non-proprietary;

• Fast to implement;

•Distributed - no single point of failure;

• Re-use of already systems and data;

Saturday, 3 December 11

DISTRIBUTED INTEGRATION

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier

Raw Material Supplier

Saturday, 3 December 11

HOW DO PEOPLE COMMUNICATEThey don’t need rules to govern their communication

Saturday, 3 December 11

HOW TO MACHINES COMMUNICATEMachines rely heavily on pre-approved rules to govern their communication

Saturday, 3 December 11

DISTRIBUTED INTEGRATION

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier

Raw Material Supplier

2

1

3

4

5

6

7

8

9 10 11

12

13

Saturday, 3 December 11

ROY FIELDINGREST - Representational State Transfer

Saturday, 3 December 11

THE WEB IS THE PLATFORMScalable, Fault-Tolerant, Recoverable, Secure, Loosely Coupled

Saturday, 3 December 11

http://wmccm.co.uk/suppliers

{   count:  11000,   filters:  none,   list:  {     {       id:  1,       name:  "A  &  E  Asbestos  Ltd",       competencies:  {         "Asbestos"       }     },       {       id:  2,       name:  "Bedson  Ltd",       competencies:  {         "Material  Handling  &  Packaging",  "Supply  Chain  Management"       }     },  ...         }}

Saturday, 3 December 11

http://wmccm.co.uk/suppliers/2

{     id:  2   name:  "Bedson  Ltd",   postcode:  "CV2  5DB",   phone:  "024  7661  4542",   fax:  "024  7661  4523",   website:  "http://www.bedsons.com",   products-­‐services:  {     "inspection  head  lamps",  "surge  protectors",  "low  voltage  transformers"   }   ...}

Saturday, 3 December 11

MACHINES NEED A CONTRACT TO COMMUNICATE EFFECTIVELY

Is there a way to overcome this limitation?

Saturday, 3 December 11

HATEOAS THE CONFUSING BIT OF REST

Hypermedia As Engine of The Application State

Saturday, 3 December 11

STARBUCKS EXAMPLEHow would a machine order a coffee?

Saturday, 3 December 11

201 CreatedLocation: http:/restbucks.com/order/1234Content-Type: application/ vnd.starbucks+xmlContent-Length: ...

<order xmlns="urn:restbucks"><drink>latte</drink><link rel="payment" href="https://starbucks.com/ payment/order/1234" type="application/xml"/></order>

POST /order HTTP 1.1Host: starbucks.comContent-Length: ...

<order xmlns="urn:starbucks"><drink>latte</drink></order>

REGULAR DAY AT STARBUCKS

Request Response

Saturday, 3 December 11

PUT /payment/order/1234 HTTP 1.1Host: starbucks.comContent-Type: application/xmlContent-Length: ...

<payment xmlns="urn:starbucks"><cardNo>123456789</cardNo><expires>07/07</expires><name>John Citizen</name><amount>4.00</amount></payment>

201 Createdhttps://starbucks.com/payment/order/1234Content-Type: application/xmlContent-Length: ...

<payment xmlns="urn:starbucks"><cardNo>123456789</cardNo><expires>07/07</expires><name>John Citizen</name><amount>4.00</amount></payment>

REGULAR DAY AT STARBUCKS

Request Response

Saturday, 3 December 11

GET /order/1234 HTTP 1.1 Host: starbucks.com

200 OKContent-Type: application/ vnd.starbucks+xmlContent-Length: ...

<order xmlns="urn:starbucks"><drink>latte</drink></order>

REGULAR DAY AT STARBUCKS

Request Response

Saturday, 3 December 11

201 CreatedLocation: http:/restbucks.com/ order/1234Content-Type: application/ vnd.starbucks+xmlContent-Length: ...

<order xmlns="urn:restbucks"><drink>latte</drink></order>

POST /order HTTP 1.1Host: starbucks.comContent-Length: ...

<order xmlns="urn:starbucks"><drink>latte</drink></order>

GENEROUS BARISTA AT STARBUCKS

Request Response

Saturday, 3 December 11

GET /order/1234 HTTP 1.1 Host: starbucks.com

200 OKContent-Type: application/ vnd.starbucks+xmlContent-Length: ...

<order xmlns="urn:starbucks"><drink>latte</drink></order>

GENEROUS BARISTA AT STARBUCKS

Request Response

Saturday, 3 December 11

SO MACHINES CAN TALK WITHOUT RULES

But how do we make them talk the same language?

Saturday, 3 December 11

SIR TIM BERNERS-LEEFather of the World Wide Web and the

Semantic Web

Saturday, 3 December 11

ONTOLOGY RECONCILIATION

Customer

HomePhone Town ZipPlus FullName

Customer

Address FirstName LastName Email

City ZipCode

Country

Saturday, 3 December 11

ONTOLOGY RECONCILIATION

Customer

HomePhone Town ZipPlus FullName

Customer

Address FirstName LastName Email

City ZipCode

Country

is-a

has-a

same-as

Saturday, 3 December 11

GOOD RELATIONSUsed by Google, Yahoo, BestBuy and 10.000 more

Saturday, 3 December 11

DATA SHARING AND SECURITY This can’t be done in a decentralised way, can it?

Saturday, 3 December 11

WHAT ABOUT KEYS?Humans already have quite a good method of dealing with distributed security

Saturday, 3 December 11

TOKEN PASSING ALONG THE CHAIN

Material Supplier

Material Supplier

Assembler

Textiles Company

Iron Works Company

Raw Material Supplier

Raw Material Supplier

Raw Material Supplier

Saturday, 3 December 11

ANY SILVER BULLET ALTERNATIVE ?

Cheap, non-proprietary

Fast to implement

Distributed - no single point of failure

Re-use of already systems and data

REST Architecture using the WWW

No need to agree on rules, just ontology

No single point of failure, 1-to-1 integration

Ontology reconciliation

Saturday, 3 December 11

THANK YOU!Time for some criticism...

Saturday, 3 December 11

Recommended