Il mercato  S ervice  O riented  A rchitecture     futuro e prospettive Emanuele Della Valle CEFRIEL – Politecnico di Mila...
Tra tanti slogan …
…  c’è’unica certezza, … “ It is  not  necessarily  the strongest  of the  species that survives   nor the most intelligen...
…  perchè il Business sia flessibile … Today’s IT architectures, arcane as they may be, are the  biggest roadblocks  most ...
…  l’ICT deve essere flessibile: … <ul><li>L’ICT è in continua evoluzione, il mercato propone in continuazione nuove tecno...
…  diminuendo i costi, perchè …  Costi Relativi Costi iniziali Messa in esercizio Manutenzione Cambiamenti [Grafico deriva...
…  perché qualcosa è cambiato …  Costi Relativi Costi iniziali Messa in esercizio Manutenzione Cambiamenti [Grafico deriva...
…  nelle tecnologie utilizzate, e … standard proprietario standard specifico standard generico XML-RPC UDDI CDS COS naming...
…  e creando maggiore valore, perchè …  1 2 3 4 5 silos object component service SOA Maturità del modello di integrazione ...
…  perchè, dai silos verticali … <ul><li>In assenza di integrazione  ogni dipartimento adotta le proprie soluzioni IT  int...
…  è possibile estrarre i servizi, … <ul><li>Il  primo passo verso una SOA  consiste nel  razionalizzare  le soluzioni IT ...
…  e comporli in molteplici processi. <ul><li>I servizi possono poi essere composti in modo da supportare non solo i proce...
Cosa c’è SOA   vs.   Web Services <ul><li>SOA </li></ul><ul><li>SOA è una filosofia architetturale: </li></ul><ul><ul><li>...
Cosa c’è   Il mito Service Oriented Architecture <ul><li>Il mito  delle  Service Oriented Architecture  (SOA) dice che  ab...
Cosa c’è   La realtà delle SOA basate su Web Services <ul><li>La realtà  è una selva di standard ufficiali, ufficiosi, de ...
Cosa c’è   L’esperienza permette di distinguere <ul><li>Nella selva di acronimi  serve esperienza   per   </li></ul><ul><l...
Cosa c’è   WSDL:  W eb  S ervices  D escription  L anguages <ul><li>Un documento WSDL descrive  </li></ul><ul><li>cosa  un...
Cosa c’è   UDDI :  U niversal  D escription,  D iscovery and  I ntegration <ul><li>Un registro UDDI (v 3.0) contiene: </li...
Cosa c’è Relazione tra UDDI e WSDL Impresa A Impresa B WSDL (Parte  Come ) WSDL (Parte  Dove ) XYZ Service Implementation ...
Cosa c’è Web Services all’opera  Web Service  Invocation framework Web Service Execution Environment SOAP  Message Process...
Cosa c’è Composizione: una necessità <ul><li>In un mercato dinamico e aggressivo,  l’estrema specializzazione è una necess...
Cosa c’è  WS-BPEL: esempio per Virtual Travel Agency get itinerary get order order tickets receive confirmation confirm fl...
Cosa potete farci   VISA ha ridotto i costi operativi <ul><li>Razionalizzato il 10% delle applicazioni  in modo da sfrutta...
Cosa potete farci   Standard Life ha risparmiato £6m con SOA <ul><li>Standard Life ha risparmiato 6 milioni di sterline  s...
Cosa potete farci   Xeros aumenta la propria produttività <ul><li>Lo sviluppo di codice  custom per ogni nuova applicazion...
Cosa potete farci Cosa serve per ripetere queste esperienze? Skill Governance Investimenti
Cosa potete farci   La migliore strategia è partire da dove si è … Implementare singoli Web Services  esponendo le funzion...
Cosa potete farci   … e avere un piano per il lungo periodo. 1 pianificare 2 progettare 3 Implementare 4 Monitorare Cosa f...
Cosa potrete fare domani   Potreste sperimentare alcuni problemi … <ul><li>È semplice gestire  pochi servizi  all’interno ...
Cosa potrete fare domani   … dovuti all’eterogeneità semantica … interfaccia, il programma che li riceve deve comunque sap...
Cosa potrete fare domani   … perché la semantica non si vede, ma c’è! <ul><li>Forse non vi siete mai soffermati a pensare ...
Cosa potrete fare domani   Come mettere d’accordo persone e macchine? <ul><li>Occorrerebbe qualcosa che permetta di  rende...
Cosa potrete fare domani   Usando le tecnologie del Semantic Web … <ul><li>Semantic Web offers  </li></ul><ul><li>ontologi...
Cosa potrete fare domani … che a partire dal 2008 … Gartner  Presentation: “Time Well Spent: Web Services Mature More” Cha...
Cosa potrete fare domani … permetteranno di … …  al business di  esprimere direttamente i problemi  sotto forma di goal e ...
C’era una volta e un’altra volta non c’era più, ma quella volta comunque c’era … <ul><li>Nelle soluzioni di  application-t...
C’era una volta e un’altra volta non c’era più, ma quella volta comunque c’era … <ul><li>Le soluzioni di EAI del futuro po...
Conclusions An European IST-IP project for SESA and SWS <ul><li>The major objective of SUPER is to  raise Business Process...
Conclusions SEEMP: An application of Semantic Web Services in eGov S ervice  A bstract  M achine Mediation & Orchestration...
Conclusions NeP4B: Networked Peers for Business  <ul><li>NeP4B  (FIRB 2005) </li></ul><ul><li>Aims to provide to Small-Med...
<ul><li>Grazie mille dell’attenzione </li></ul><ul><li>Domande? </li></ul><ul><li>Contatto </li></ul><ul><ul><li>Emanuele ...
Upcoming SlideShare
Loading in …5
×

Il mercato SOA: futuro e prospettive

2,409 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,409
On SlideShare
0
From Embeds
0
Number of Embeds
43
Actions
Shares
0
Downloads
81
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Il mercato SOA: futuro e prospettive

    1. 1. Il mercato S ervice O riented A rchitecture futuro e prospettive Emanuele Della Valle CEFRIEL – Politecnico di Milano email: [email_address] web: http://swa.cefriel.it Service Oriented Architecture (SOA): dalla sperimentazione all'implementazione strategica, 15 Marzo 2007, Milano
    2. 2. Tra tanti slogan …
    3. 3. … c’è’unica certezza, … “ It is not necessarily the strongest of the species that survives nor the most intelligent , but the one that is most responsive to change .” --- Charles Darwin “ L’origine della specie” http://it.wikipedia.org/wiki/L%27origine_delle_specie essere preparati a cambiare è l’unica cosa su cui contare --- Michael Liebow Vice President, SOA & Web Services IBM Global Service
    4. 4. … perchè il Business sia flessibile … Today’s IT architectures, arcane as they may be, are the biggest roadblocks most companies face when making strategic moves . --- McKinsey “ Flexible IT, Better Strategy” http://www.mckinseyquarterly.com/article_abstract_visitor.aspx?ar=1346 [Immagini prese da http://moment.mit.edu/imageLibrary/contents/bridges.html]
    5. 5. … l’ICT deve essere flessibile: … <ul><li>L’ICT è in continua evoluzione, il mercato propone in continuazione nuove tecnologie fondati su nuovi paradigmi. </li></ul><ul><li>Le imprese, nei casi migliori, spendono il proprio budget ICT </li></ul><ul><ul><li>al 70% sui sistemi esistenti per l’esercizio e l’adeguamento tecnologico </li></ul></ul><ul><ul><li>solo al 30% su nuovi sistemi che rispondano all’esigenza di creare maggiore valore per l’impresa </li></ul></ul><ul><li>Occorre un cambiamento tecnologico che permetta di </li></ul><ul><ul><li>Diminuire i costi di esercizio e manutenzione </li></ul></ul><ul><ul><li>Aumentare la capacità di creare valore </li></ul></ul>ICT di oggi ICT desiderabile 70% esistente 55% esistente 45% ++ valore 30% ++ valore
    6. 6. … diminuendo i costi, perchè … Costi Relativi Costi iniziali Messa in esercizio Manutenzione Cambiamenti [Grafico derivato da studio ZapThink http://www.zapthink.com/] Costi relativi di differenti approcci all’integrazione Integrazione custom Soluzioni EAI proprietarie Soluzioni EAI basate su Web Services Soluzioni EAI orientate alle SOA
    7. 7. … perché qualcosa è cambiato … Costi Relativi Costi iniziali Messa in esercizio Manutenzione Cambiamenti [Grafico derivato da studio ZapThink http://www.zapthink.com/] Costi relativi di differenti approcci all’integrazione Fin dal 1970 la prossima generazione di EAI sarà • distribuita • orientata ai servizi • scalabile • plug and play • integrata • orientata al riuso • orientata ai business objects • orientata ai processi • flessibile SOA over WS (SOAP1.1, WSDL1.2, UDDI, BPEL4WS…) 2010 2005 2000 1995 1990 1985 1980 1970 CORBA 2.4 WS-* 0.x XML-RPC CORBA2.0 CORBA1.0 EDIFACT RPCs Sockets ANSI X12 TDCC Integrazione custom Soluzioni EAI proprietarie Soluzioni EAI basate su Web Services Soluzioni EAI orientare alle SOA
    8. 8. … nelle tecnologie utilizzate, e … standard proprietario standard specifico standard generico XML-RPC UDDI CDS COS naming Java Registry Meccanismo di discovery WSDL DCE IDL CORBA IDL Java Interface Descrizione dell’interfaccia protocolli internet RPC CO IIOP JRMP Protocollo di trasferimento SOAP PDU GIOP stream Formato wire XML XML CDR Java Serialization Formato Dati qualsiasi linguaggio RPC CORBA RMI Java RMI Meccanismo di invocazione Web Services XML-RPC CORBA Java
    9. 9. … e creando maggiore valore, perchè … 1 2 3 4 5 silos object component service SOA Maturità del modello di integrazione infrastuttura architettura applicazioni metodo IT vista dal business Function oriented moduli strutturata Piattaforme proprietarie monolitica Function oriented moduli Object oriented Piattaforme proprietarie a layer Function oriented componenti Component based Piattaforme aperte a componenti Service oriented servizi Service modeling W eb S ervices Ispirata alla SOA Service oriented Processi IT integrati via servizi IT process modeling Web Services SOA Problem oriented Processi integrati via servizi Business Process Modeling Semantic Web Services SESA 6 SESA
    10. 10. … perchè, dai silos verticali … <ul><li>In assenza di integrazione ogni dipartimento adotta le proprie soluzioni IT integrate (non semplici applicazioni) e le usa in modo esclusivo. </li></ul>[…] Dipartimento 1 Dipartimento 2 Dipartimento N
    11. 11. … è possibile estrarre i servizi, … <ul><li>Il primo passo verso una SOA consiste nel razionalizzare le soluzioni IT esistenti individuando le parti potenzialmente comuni a più dipartimenti ed esponendo le come servizi . </li></ul>[…] Dipartimento 1 Dipartimento 2 Dipartimento N
    12. 12. … e comporli in molteplici processi. <ul><li>I servizi possono poi essere composti in modo da supportare non solo i processi interni, ma anche processi che coinvolgono i propri fornitori e verso i propri clienti . </li></ul>Dipartimento 1 Servizi condivisi Servizi outsourced Fornitore Cliente Dipartimento 2
    13. 13. Cosa c’è SOA vs. Web Services <ul><li>SOA </li></ul><ul><li>SOA è una filosofia architetturale: </li></ul><ul><ul><li>Flessibile </li></ul></ul><ul><ul><li>Aperta al cambiamento e all’evoluzione </li></ul></ul><ul><ul><li>Astrae dalla logica di funzionamento interna </li></ul></ul><ul><li>Approccio allo sviluppo di una architettura basata su servizi </li></ul><ul><li>SOA </li></ul><ul><ul><li>non è una particolare tecnologia </li></ul></ul><ul><ul><li>non può essere un prodotto vendibile. </li></ul></ul><ul><li>Al più una specifica tecnologia può servire ad implementare una SOA e un prodotto di può essere implementato con in mente il paradigma delle SOA </li></ul><ul><li>Web Services </li></ul><ul><li>Sono un insieme di standard aperti (W3C e OASIS) ampiamente sostenuti dai principali attori ICT </li></ul><ul><li>Sono una tecnologia impiegata perchè </li></ul><ul><ul><li>garantisce un buon grado di flessibilità e evolvibilità </li></ul></ul><ul><ul><li>astraendo dallo specifico linguaggio usato per implementare il service requester e il service provider </li></ul></ul><ul><li>I Web Service </li></ul><ul><ul><li>non sono una soluzione proprietaria </li></ul></ul><ul><ul><li>non sono un prodotto vendibile </li></ul></ul><ul><li>Al più </li></ul><ul><ul><li>uno specifico servizio può essere implementato usando i Web Service </li></ul></ul><ul><ul><li>un’applicazione può essere esposto come Web Service </li></ul></ul>Cos’è … Cosa non è …
    14. 14. Cosa c’è Il mito Service Oriented Architecture <ul><li>Il mito delle Service Oriented Architecture (SOA) dice che abilitino flessibilità e dinamismo tramite una descrizione ricca del servizio e un meccanismo di pubblicazione/scoperta di tali descrizioni che permette a richiedenti occasionali di interagire con il servizio senza (o con limitate) conoscenze a priori. </li></ul>Service provider Service requester source: http://www.w3.org/TR/2002/WD-ws-arch-20021114/ Publish Discovery Agencies Service Description Discover Interact Service Description <ul><li>Processi supportati da una SOA </li></ul><ul><li>Pubblicazione : rendere disponibile una descrizione di un servizio </li></ul><ul><li>Discovery : trovare servizi adatti ad un certo scopo </li></ul><ul><li>Selezione : trovare il migliore servizio tra quelli disponibili </li></ul><ul><li>Com p ensazione : trovare un servizio per effettuare un “undo” o mitigare un effetto non desiderato </li></ul><ul><li>Rimpiazzo : sostituire un servizio con un altro equivalente </li></ul><ul><li>Esecuzione : invocare da programma servizi </li></ul><ul><li>Composizione : aggregare servizi </li></ul><ul><li>Monitoring : Controllare l’esecuzione </li></ul><ul><li>Auditing : Verificare che le esecuzione di un servizio abbia seguito un processo prestabilito </li></ul>
    15. 15. Cosa c’è La realtà delle SOA basate su Web Services <ul><li>La realtà è una selva di standard ufficiali, ufficiosi, de facto e presunti nota come WS-AH - Web Services Acronym Hell </li></ul>XML SOAP WSDL UDDI WSFL DISCO PKI XKMS SAML ebXML XML-RPC XMLP XML-DIGSIG XML-ENC SOAP-SEC X-KISS CPP-CPA WSEL SOAP-RP DIME XLANG DISCO JABBER P3P DSML OWL-S XSD WSBPEL
    16. 16. Cosa c’è L’esperienza permette di distinguere <ul><li>Nella selva di acronimi serve esperienza per </li></ul><ul><li>saper cosa usare per quale scopo e </li></ul><ul><li>non farsi ingannare dalla moda del momento </li></ul><ul><li>I tre pilastri che fanno dei Web Service una base tecnologica per le SOA </li></ul><ul><li>WSDL : Web Services Description Languages </li></ul><ul><li>UDDI : Universal Description, Discovery and Integration </li></ul><ul><li>SOAP : Simple Object Access Protocol </li></ul><ul><li>servono, poi, meccanismi di sicurezza adeguati </li></ul><ul><li>XML-security </li></ul><ul><ul><li>XML-Encryption : garantire la confidenzialità </li></ul></ul><ul><ul><li>XML-Signature : garantire autenticità e non-ripudio </li></ul></ul><ul><ul><li>XKMS : gestione delle chiavi </li></ul></ul><ul><li>SOAP-Security : integrazione in SOAP </li></ul><ul><li>e, sempre più spesso, si sente la necessità </li></ul><ul><li>di comporre servizi elementari in processi </li></ul><ul><li>complessi </li></ul><ul><li>WSBPEL : WS Businness Process Execution Language </li></ul>WSBPEL SOAP . XML-Security . WSDL UDDI
    17. 17. Cosa c’è WSDL: W eb S ervices D escription L anguages <ul><li>Un documento WSDL descrive </li></ul><ul><li>cosa un Web Service offre, </li></ul><ul><ul><li>Descrive il tipo di servizio </li></ul></ul><ul><ul><ul><li>Lo stesso tipo di servizio dovrebbe essere implementato da tutti i providers. </li></ul></ul></ul><ul><ul><li>Definisce un’interfaccia logica , ovvero il set di operazioni del servizio, in termini di </li></ul></ul><ul><ul><ul><li>I messaggi in ingresso e uscita </li></ul></ul></ul><ul><ul><ul><li>Il loro formato </li></ul></ul></ul><ul><ul><ul><li>I tipi di dato di ciascun elemento del messaggio </li></ul></ul></ul><ul><li>come comunica, </li></ul><ul><ul><li>Descrive il “binding” dell’interfaccia astratta a i protocolli internet sottostanti </li></ul></ul><ul><ul><li>Specifica </li></ul></ul><ul><ul><ul><li>quale XML Schema deve essere utilizzata per serializzare i dati; </li></ul></ul></ul><ul><ul><ul><li>come costruire la “busta” (envelope) SOAP; </li></ul></ul></ul><ul><ul><ul><li>quali header addizionali debbano essere inclusi; e </li></ul></ul></ul><ul><ul><ul><li>quale transfer protocol usare. </li></ul></ul></ul><ul><ul><li>include o importa la parte cosa del WSDL </li></ul></ul><ul><li>e dove trovarlo </li></ul><ul><ul><li>Descrive come il servizio è implementato in termini di porte che implementano un binding concreto dell’interfaccia astratta </li></ul></ul><ul><ul><li>include o importa la parte come del WSDL </li></ul></ul>Implementazione (Parte dove ) “ Binding” concreto (Parte come ) Interfaccia astratta (Parte cosa ) <service> <port> <binding> <types> <message> <portType> <operation>
    18. 18. Cosa c’è UDDI : U niversal D escription, D iscovery and I ntegration <ul><li>Un registro UDDI (v 3.0) contiene: </li></ul><ul><li>Pagine Bianche </li></ul><ul><ul><li>Nome del service provider, identificativo , indirizzo e altre informazioni per contattare la società </li></ul></ul><ul><li>Pagine Gialle </li></ul><ul><ul><li>Sistemi di classificazione di service provider e servizi su base geografica, tipo di industri, etc. </li></ul></ul><ul><li>Pagine Verdi </li></ul><ul><ul><li>Descrizione tecnica delle interfacce del servizio (es. Acquisto libri) e del punto di accesso (URL, e-mail, ecc.) utilizzando opportuni “tModel” </li></ul></ul><ul><li>tModel </li></ul><ul><ul><li>Definizione tecnica di un tipo di servizio tipicamente emessa da enti di standardizzazione di specifici domini (es. EAN/UCC*) per essere utilizzata dai service provider. </li></ul></ul><ul><li>Oggetti nel repository </li></ul><ul><ul><li>Tutti gli oggetti descritti sopra sono immagazzinati come metadati nel registro </li></ul></ul><ul><li>UDDI prevede API per scrivere e cercare nel repository </li></ul><ul><li>* EAN.UCC System standardizza bar codes, insiemi di transazioni EDI transactions sets, schemi XML, e altre soluzioni per rendere più efficiente l’e-business </li></ul>Business Entity Nome, Indirizzo, Contatti Identificativo ABN, CAN, DUNS, … Classificazione Geografica, tipo di industria, … Business Service Nome, descrizione Classificazione Tipo di processo, ruolo, … Binding Template Descrizione, URL, … tModel Descrizione dell’interfaccia, trasport, protocollo, sintassi, … tModel Nome, descrizione, URL, … Classificazione Tipo, namespace, processo, ruolo, tipo di industria, geografia, riferimenti ad altri tModels XML objects repository Pagine Bianche Pagine Verdi Pagine Gialle Standard
    19. 19. Cosa c’è Relazione tra UDDI e WSDL Impresa A Impresa B WSDL (Parte Come ) WSDL (Parte Dove ) XYZ Service Implementation WSDL (Parte Come ) WSDL (Parte Dove ) XYZ Service Implementation UDDI XYZ Service Binding Template di A UDDI XYZ Business Service di A UDDI Business Entity Impresa A UDDI XYZ Service Binding Template di B UDDI XYZ Business Service di B UDDI Business Entity Impresa B UDDI tModel standard del servizio XYz WSDL (Parte cosa )
    20. 20. Cosa c’è Web Services all’opera Web Service Invocation framework Web Service Execution Environment SOAP Message Processor WS Container Client application Stub Servizio Code to develop Code and XML automatically generated Web Service product WSDL2Code generator public class Calculator { public int add (int i1 , int i2 ){ return i1 + i2; } public int subtract(int i1, int i2){ return i1 - i2;} } Legenda <soap:Envelope> <soapenv:Body> <addResponse> < addReturn > 8 </ addReturn > </addResponse> </soap:Body> </soap:Envelope> Skeleton WSDL (Parte cosa ) WSDL (Parte Come ) WSDL (Parte Dove ) SOAP Message Processor WSDL2code generator […] UDDI tModel standard del servizio Impresa Interfaccia standard di un servizio calcolatrice <soap:Envelope> <soap:Body> < add > < i1 >3</ i1 > < i2 >5</ i2 > </ add > </soap:Body> </soap:Envelope> IN SOAP OUT SOAP
    21. 21. Cosa c’è Composizione: una necessità <ul><li>In un mercato dinamico e aggressivo, l’estrema specializzazione è una necessità , ma le esigenze dei consumatori restano trasversali e per soddisfarle occorre la collaborazione di molti attori. </li></ul><ul><li>Nel caso del turismo , ad esempio, è normale che chi offre viaggi aerei, non offra pacchetti vacanza completi (cosa che, invece, fanno le agenzie di viaggio). </li></ul><ul><li>La composizione di servizi cross-organizzazione è una delle possibili vie per offrire servizi ad alto valore aggiunto per l’utente finale integrando i servizi di molte realtà settoriali . </li></ul><ul><li>Esempio di composizione del contesto del turismo </li></ul><ul><li>Fonte: W3C Note: WSCI http://www.w3.org/TR/ wsci / </li></ul>
    22. 22. Cosa c’è WS-BPEL: esempio per Virtual Travel Agency get itinerary get order order tickets receive confirmation confirm flight send tickets send confirmation submit to agent receive tickets receive confirmation select airline reserve seats charge credit card plan trip Agent Process Airline Process Traveler Process e-payment Process get charge request check credit card Charge card fault handler throw fault handler compensation handler exit compensate
    23. 23. Cosa potete farci VISA ha ridotto i costi operativi <ul><li>Razionalizzato il 10% delle applicazioni in modo da sfruttare servizi condivisi </li></ul><ul><li>Ottenuto accesso veloce e integrato alle transazioni e alle informazioni contenute in molti sistemi eterogenei per automatizzare la risoluzione delle controversie </li></ul><ul><li>Riduzione del numero di situazioni che portano a controversie grazie alla nuova capacità di accedere all’informazione e riduzione del 33% il tempo medio di risoluzione di una controversia </li></ul><ul><li>Le banche associate nel solo 2005 hanno risparmiato più di 300 milioni di $ grazie a questa riduzione </li></ul><ul><li>Risparmio di 52 milioni di $ in costi operativi per chi emette le carte </li></ul><ul><li>Il lavoro fin qui fatto rappresenta una estensione al sistema aperto di VISA che punta a incapsulare in servizi tutto il codice dei propri sistemi informativi in modo da favorirne il riuso e semplificarne il rimpiazzo. </li></ul><ul><li>Fonte: Network World, 21 Marzo 2005 </li></ul><ul><li>http://www.networkworld.com/ supp /2005/ndc2/032105visa.html </li></ul>“ If you take all the transactions across all the stock markets and exchanges in the world, and you aggregated them over a 24-hour period, we do that volume over a coffee break.“ --- Sara Garrison SVP of Network and Open Systems Development
    24. 24. Cosa potete farci Standard Life ha risparmiato £6m con SOA <ul><li>Standard Life ha risparmiato 6 milioni di sterline sviluppando 14 nuovi prodotti per assicurazioni sulla vita e pensioni interamente costruiti su SOA </li></ul><ul><li>Le applicazioni sono state realizzate riutilizzando al 50% servizi esistenti </li></ul><ul><li>Su 250 servizi comuni 120 sono utilizzati da tre o più applicazioni </li></ul><ul><li>Il carico di lavoro è aumentato del 900% senza nessun aumento del costo di esercizio </li></ul><ul><li>Fonte: Computer Weekly, 9 Maggio 2006 </li></ul><ul><li>http://www.computerweekly.com/ Articles /2006/05/09/215863/Standard+Life+saves+%C2%A36m+with+SOA.htm </li></ul>“ The architecture has improved the quality and manageability of in-house applications. We are building applications on a proven framework.” — Ian Muir senior manager for core technology Standard Life
    25. 25. Cosa potete farci Xeros aumenta la propria produttività <ul><li>Lo sviluppo di codice custom per ogni nuova applicazione rallentava la produzione e faceva crescere i costi, Xerox ha puntato sul disaccoppiamento dei data base di back-end dal front-end introducendo una SOA basata su Web Services. </li></ul><ul><li>Il ritorno sull’investimento è stato di 24 mesi </li></ul><ul><li>Il risparmio sui costi sviluppo nel 2005 è stato di 720.000 $ </li></ul><ul><li>Lo sviluppo di nuove applicazioni ora richiede mediamente il 25 % in meno di tempo </li></ul><ul><li>Fonte: IBM case study, 28 Ottobre 2005 </li></ul><ul><li>http://www-306.ibm.com/software/success/ cssdb.nsf /CS/HSAZ-6HJTA6?OpenDocument&Site=software </li></ul>“ we can move forward with a SOA that helps us respond to today’s challenges and gives us a flexible architecture to respond to future challenges .” — Ram Sunkara, Manager, Integration Competency Center, Xerox
    26. 26. Cosa potete farci Cosa serve per ripetere queste esperienze? Skill Governance Investimenti
    27. 27. Cosa potete farci La migliore strategia è partire da dove si è … Implementare singoli Web Services esponendo le funzionalità delle applicazioni esistenti Sviluppare applicazioni dentro e fuori l’impresa basate sui Web Service esposti 1 2 3 4 Trasformare l’impresa dando il massimo accesso interno e esterno a servizi affidabili e sicuri. Modificare i propri processi di business in modo da sfruttare appieno la flessibilità dell’infrastruttura IT
    28. 28. Cosa potete farci … e avere un piano per il lungo periodo. 1 pianificare 2 progettare 3 Implementare 4 Monitorare Cosa fare? Identificare come una SOA può aiuta re a raggiungere obiettivi di business Creare un progetto SOA in cui ogni Web Service venga esposto per una precisa ragione Costruire e mettere in produzione passo passo la SOA basata su Web Services e standard aperti Monitorare le performance e verificare che la SOA soddisfi le esigenze di business Perchè? Obbliga il business a dialogare con l’IT riducendo il rischio di passi falsi Permette all’impresa di imparare a guardare una SOA dal punto di vista del business Evitare l’effetto big bang prendendosi il tempo per pensare alla sicurezza e ai livelli di servizio Aiuta a mantenere gli obiettivi di progetto sotto controllo ottimizzando la creazione di valore
    29. 29. Cosa potrete fare domani Potreste sperimentare alcuni problemi … <ul><li>È semplice gestire pochi servizi all’interno di un unica organizzazione da utilizzare in processi IT poco complessi </li></ul><ul><li>Gestirli diventa difficile quanto i servizi sono numerosi e occorre comporli in complessi business process cross-organizzazione </li></ul>A4 A1 A4 A1 A2 A1 A2 A1 B3 A4 A2 A1 B3 A1 B3 A1 A1 A2 A1 A4 A4 A2 A1 A4 A4 A2 A1 A2 A2 A1 B3 A1 A1 A2 A1 A1 A1 B3 A1 A1 A1 A1 A4 A4 A4 A1 A1 A2 A1 A4 A1 A1 A1 A1 B3 B3 A2 A4 A1 A1 A2 A1 A1 A2 A1 A1 A1 A1 B3 A4 A1 A1 A1 A1 A1 A1 A4 B3 B3 B3 B3 A1 B3 A4 B3 A1 A4 A1 A4 A2 A2 A1 A1 A1 A1 A4 A1 A1 A1 A2 A1 A4 A1 A4 B3 A1 A1 A4 A2 A4 A1 A1 A2 B3 A1 A2 A2 A1 A1 B3 A1 A1 A1 A1 A1 A4 B3 A2 A1 A4 A1 A1 A1 A4 A1 B3 A1 A2 A2 A1 A4 A2 A1 A2 A1 A1 A1 A2 A1 A1 A1 A1 A1 A1 A1 B3 B3 A4 A4 A1 A4 A2 A1 A4 B8 A1 A4 A1 A2 A4 B3 A1 A4 A6 A2 A5 A4 A1 A4 A1 A1 B3 B3 A1 A1 B3 A1 A1 A4 A4 A1 A1 A4 A1 A2 A1 B3 A1 A4 A4 A1 A2 A2 B3 A2 Pochi servizi Processi IT poco complessi Numerosi servizi Inspired by: J. Cardoso, C. Bussler, A. Sheth1, D. Fensel, Semantic Web Services and Processes , October 2002 Complessi Business Process All’interno di un’organizzazione Tra molteplici organizzazioni A ? C D N1 N2 F E
    30. 30. Cosa potrete fare domani … dovuti all’eterogeneità semantica … interfaccia, il programma che li riceve deve comunque sapere in che formato sono. Occorre comunque accordarsi sulla struttura di ciascun business object. Fino ad ora nessuno ha ancora trovato una soluzione attuabile …” Oracle Chairman and CEO - Larry Ellison “ L’eterogeneità semantica rimane il principale intoppo alla integrazione di applicazioni , un intoppo che i Web Services da soli non risolveranno. Finché qualcuno non troverà un modo di per far sì che le applicazioni si capiscano, gli effetti dei Web Services resteranno limitate. Quando si passano i dati di un utente in un certo formato usando un Web Services come The problem is not in the plumbing, it is in the semantics ” Verizon Chief Scientist - M . L . Brodie
    31. 31. Cosa potrete fare domani … perché la semantica non si vede, ma c’è! <ul><li>Forse non vi siete mai soffermati a pensare che la maggior parte della conoscenza (semantica) necessaria ad implementare una soluzione basata su SOA non è codificata nella descrizione del servizio (WSDL, UDDI, WSBPEL, …), ma è nella testa delle persone … </li></ul>Publish Service provider Service requester Discovery Agencies Discover Interact Provider Human Requester Human Provider Entity Requester Entity WSD + WSD + Sem AGREE WSD ? Sem ? Sem
    32. 32. Cosa potrete fare domani Come mettere d’accordo persone e macchine? <ul><li>Occorrerebbe qualcosa che permetta di rendere esplicita la semantica nascosta in un accordo formale che le macchine possano “ capire ” </li></ul>Discovery Agencies Publish Service provider Service requester Interact Provider Human Requester Human Provider Entity Requester Entity AGREE Sem Discover + Sem WSD ! WSD + Sem WSD WSD + Sem WSD ? Sem WSD + Sem WSD
    33. 33. Cosa potrete fare domani Usando le tecnologie del Semantic Web … <ul><li>Semantic Web offers </li></ul><ul><li>ontologie ( ) per esplicitare e formalizzare l’accordo </li></ul><ul><li>metadati ( ) per permettere alle macchine di “ elaborare ” la semantica </li></ul><ul><li>mediatori ( ) per gestire l’eterogenità </li></ul>Discovery Agencies Publish Service provider Service requester Interact Provider Human Requester Human Provider Entity Requester Entity AGREE Sem Discover + Sem WSD Ontology WSD + Sem WSD WSD + Sem WSD ? Sem WSD + Sem WSD META META META META META META
    34. 34. Cosa potrete fare domani … che a partire dal 2008 … Gartner Presentation: “Time Well Spent: Web Services Mature More” Charles Abrams, Daryl Plummer; Nov. 2004
    35. 35. Cosa potrete fare domani … permetteranno di … … al business di esprimere direttamente i problemi sotto forma di goal e non nei termini del la soluzione (es. servizi) … di modellare processi di business dal proprio punto di vista (goal) e non come processi che integrano servizi … di supportare i processi di business con applicazioni assemblate dinamicamente utilizzando goal-based discovery … basate su Semantically Empowered Service Oriented Architecture … usando come infrastruttura i Semantic Web Service 1 2 3 4 5 silos object component service SOA Maturità del modello di integrazione infrastuttura architettura applicazioni metodo IT vista dal business Function oriented moduli strutturata Piattaforme proprietarie monolitica Function oriented moduli Object oriented Piattaforme proprietarie a layer Function oriented componenti Component based Piattaforme aperte a componenti Service oriented servizi Service modeling Web Services Ispirata alla SOA Service oriented Processi IT integrati via servizi IT process modeling Web Services SOA Problem oriented Integrazione flessibile di servizi Business Process Modeling Semantic Web Services SESA 6 SESA
    36. 36. C’era una volta e un’altra volta non c’era più, ma quella volta comunque c’era … <ul><li>Nelle soluzioni di application-to-application integration la semantica rimane nella testa di chi scrive l’adapter </li></ul><ul><li>Nelle soluzioni di EAI che usano i Web Services per implementare una SOA la semantica è in parte codificata negli standard (XSD, SOAP, WSDL, BPEL4WS, WSCI, etc.) usati per definire i formati dei dati scambiati e le modalità di scambio, ma buona parte rimane della testa di chi realizza la soluzione di integrazione. </li></ul>[…] adapter […] […] […] […] SOA Sem Sem Sem Sem […] Sem
    37. 37. C’era una volta e un’altra volta non c’era più, ma quella volta comunque c’era … <ul><li>Le soluzioni di EAI del futuro potrebbero essere basate sui Semantic Web Services e realizzare una S emantically E mpowered S ervice-oriented A rchitecture </li></ul><ul><li>In questo modo la semantica risulterebbe condivisa tra gli utenti e le macchine (direttamente disponibile alla soluzione di EAI) permettendo un’integrazione estremamente flessibile in grado di seguire le esigenze di processi di business complessi e mutevoli </li></ul>[…] […] […] […] SESA + SWS Sem Sem Sem Sem Sem Sem Sem Sem ! 2010 2005 2000 1995 1990 1985 1980 1970 SESA over SWS SOA over WS WS-* 1.x (SOAP1.1, WSDL1.2, UDDI, BPEL4WS…) CORBA 2.4 WS-* 0.x XML-RPC CORBA2.0 CORBA1.0 EDIFACT RPCs Sockets ANSI X12 TDCC
    38. 38. Conclusions An European IST-IP project for SESA and SWS <ul><li>The major objective of SUPER is to raise Business Process Management (BPM) to the business level , where it belongs , from the IT level where it mostly resides now. This objective requires that BPM is accessible at the level of semantics of business experts </li></ul>http://www.ip-super.org
    39. 39. Conclusions SEEMP: An application of Semantic Web Services in eGov S ervice A bstract M achine Mediation & Orchestration Layer OSGi core Service Machine Layer 1 Layer 2 Layer 3 Service Machine (Mélusine Core) Mediation and Orchestration Layer Selection Discovery Parser Invocation Invocation Discovery Layer 1 : Abstract machine Layer 2 : Adapters Layer 3 : Real (SEEMP) services EMP -AM (Employment Marketplace Platform Abstract Machine) RM Injection Machine Injection Machine […] Cleansing Ranking Statistics http://www.seemp.org
    40. 40. Conclusions NeP4B: Networked Peers for Business <ul><li>NeP4B (FIRB 2005) </li></ul><ul><li>Aims to provide to Small-Medium Enterprises a flexible IT middleware for finding partners, exchange data and collaborate </li></ul>http://dbgroup.unimo.it/nep4b/ S S S S S S S S S S M M M M D D M M M M M M D D M M M M M M D D D D S S S S S S S S S S M M M M M M D D S S S S M M M M D D S S S S S S M M S S D D Knowledge resource Mediator Service Discovery Engine Semantic Peers Semantic Super Peers infrastructure M M M M S S ? Distributed Discovery Information Routing
    41. 41. <ul><li>Grazie mille dell’attenzione </li></ul><ul><li>Domande? </li></ul><ul><li>Contatto </li></ul><ul><ul><li>Emanuele Della Valle </li></ul></ul><ul><ul><li>CEFRIEL – Politecnico di Milano </li></ul></ul><ul><ul><li>email: [email_address] </li></ul></ul><ul><ul><li>web: http://swa.cefriel.it </li></ul></ul><ul><ul><li>Tel: 02 23954-324 </li></ul></ul>

    ×