Your SlideShare is downloading. ×
  • Like
Rendere flessibili e trasformare architetture IT di vecchio tipo:passaggio da un ambiente frazionato a processi di business centralizzato
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Rendere flessibili e trasformare architetture IT di vecchio tipo: passaggio da un ambiente frazionato a processi di business centralizzato

  • 1,093 views
Published

 

Published in Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,093
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
57
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Rendere flessibili e trasformare architetture IT di vecchio tipo : passaggio da un ambiente frazionato a processi di business centralizzato Business Integration Forum 2006, 26 Ottobre 2006, Milano Emanuele Della Valle CEFRIEL – Politecnico di Milano email: [email_address] web: http:// swa.cefriel.it
  • 2. Bisogna essere preparati a cambiare “ 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
  • 3. 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]
  • 4. … l’ICT deve essere flessibile: …
    • L’ICT è in continua evoluzione , il mercato propone in continuazione nuove tecnologie fondati su nuovi paradigmi.
    • Le imprese, nei casi migliori, spendono il proprio budget ICT
      • al 70% sui sistemi esistenti per l’esercizio e l’adeguamento tecnologico
      • solo al 30% su nuovi sistemi che rispondano all’esigenza di creare maggiore valore per l’impresa
    • Occorre un cambiamento tecnologico che permetta di
      • Diminuire i costi di esercizio e manutenzione
      • Aumentare la capacità di creare valore
    ICT di oggi ICT desiderabile 70% esistente 55% esistente 45% ++ valore 30% ++ valore
  • 5. … 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
  • 6. … 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
  • 7. … 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
  • 8. … 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
  • 9. … perchè, dai silos verticali …
    • In assenza di integrazione ogni dipartimento adotta le proprie soluzioni IT integrate (non semplici applicazioni) e le usa in modo esclusivo.
    […] Dipartimento 1 Dipartimento 2 Dipartimento N
  • 10. … è possibile estrarre i servizi, …
    • Il primo passo verso una SOA è razionalizzare le soluzioni IT esistenti individuando le parti potenzialmente comuni a più dipartimenti ed esponendo le come servizi .
    […] Dipartimento 1 Dipartimento 2 Dipartimento N
  • 11. … e comporli in molteplici processi.
    • 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 .
    Dipartimento 1 Servizi condivisi Servizi outsourced Fornitore Cliente Dipartimento 2
  • 12. Il mito Service Oriented Architecture
    • 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.
    Service provider Service requester source: http://www.w3.org/TR/2002/WD-ws-arch-20021114/ Publish Discovery Agencies Service Description Discover Interact Service Description
    • Processi supportati da una SOA
    • Pubblicazione : rendere disponibile una descrizione di un servizio
    • Discovery : trovare servizi adatti ad un certo scopo
    • Selezione : trovare il migliore servizio tra quelli disponibili
    • Com p ensazione : trovare un servizio per effettuare un “undo” o mitigare un effetto non desiderato
    • Rimpiazzo : sostituire un servizio con un altro equivalente
    • Esecuzione : invocare da programma servizi
    • Composizione : aggregare servizi
    • Monitoring : Controllare l’esecuzione
    • Auditing : Verificare che le esecuzione di un servizio abbia seguito un processo prestabilito
  • 13. La realtà delle SOA basate su Web Services
    • La realtà è una selva di standard ufficiali, ufficiosi, de facto e presunti nota come WS-AH - Web Services Acronym Hell
    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
  • 14. L’esperienza permette di distinguere
    • Nella selva di acronimi serve esperienza per saper cosa usare per quale scopo e non farsi ingannare dalla moda del momento
    • I tre pilastri che fanno dei Web Service una base tecnologica per le SOA
      • WSDL : Web Services Description Languages
      • UDDI : Universal Description, Discovery and Integration
      • SOAP : Simple Object Access Protocol
    • servono, poi, meccanismi di
    • sicurezza adeguati
      • SOAP-Security usando XML-security:
        • XML-Encryption, XML-Signature e XKMS
    • gestione delle transazioni
      • WS-TX: WS Transaction (OASIS)
    • messagistica affidabile
      • WS-RX: WS Reliable Exchange (OASIS)
    • messaggistica asincrona
      • WS-Addressing,WS-Notification e WS-Eventing
    • e, sempre più spesso, si sente la necessità di comporre servizi elementari in processi complessi
      • WSBPEL : WS Businness Process Execution Language
    WSBPEL SOAP . . WSDL UDDI
  • 15. SOA basata su 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
  • 16. 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
  • 17. Pagella ai WS come implementazione SOA Bassa precisione e bassa recall dovuti al keyword-based matching I tool disponibili sono adatti a contesti in cui esiste un’entità con un ruolo centrale ( come nei WfMS )
  • 18. … e comporli in molteplici processi.
    • 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 .
    Le SOA su WS non offrono questo grado di flessibilità :-/ Dipartimento 1 Servizi condivisi Servizi outsourced Fornitore Cliente Dipartimento 2
  • 19. Presto potreste sperimentare alcuni problemi …
    • È semplice gestire pochi servizi all’interno di un unica organizzazione da utilizzare in processi IT poco complessi
    • Gestirli diventa difficile quanto i servizi sono numerosi e occorre comporli in complessi business process cross-organizzazione
    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. Sheth, 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
  • 20. … 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
  • 21. … perché la semantica non si vede, ma c’è!
    • 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 …
    Publish Service provider Service requester Discovery Agencies Discover Interact Provider Human Requester Human Provider Entity Requester Entity WSD + WSD + Sem AGREE WSD ? Sem ? Sem
  • 22. Come mettere d’accordo persone e macchine?
    • Occorrerebbe qualcosa che permetta di rendere esplicita la semantica nascosta in un accordo formale che le macchine possano “ capire ”
    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
  • 23. Usando le tecnologie del Semantic Web …
    • Il Semantic Web propone di utilizzare
    • ontologie ( ) per esplicitare e formalizzare l’accordo
    • metadati ( ) per permettere alle macchine di “ elaborare ” la semantica
    • mediatori ( ) per aggirare problemi di eterogeneità
    Discovery Agencies Publish Service provider Service requester Interact Provider Human Requester Human Provider Entity Requester Entity AGREE Sem Discover + Sem WSD ontologia WSD + Sem WSD WSD + Sem WSD ? Sem WSD + Sem WSD META META META META META META
  • 24. S emantically E mpowered S ervice Oriented Architecture … 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
  • 25. Tra sogno e realtà
    • Ciascun task nel business process model non è un servizio (già parte dello spazio della soluzione ), ma è un goal ( parte dello spazio del problema ).
    • Il servizio più appropriato per soddisfare il goal viene trovato ( discovery ) a tempo di esecuzione e invocato ( mediation ) direttamente senza bisogno di integrazione manuale.
    Integration Business Process Services Buyer Sales Department Factory (supplier) Risk & Financials 3rd Party Shipment S emantically E mpowered S ervice Oriented A rchitecture Mediator Mediator Legacy Mediator Mediator Comm. Mediator Mediator Mediator Mediator Mediator Mediator Legacy Mediator Mediator Legacy Mediator Mediator Mediator Mediator Comm. Mediator Comm. Mediator Mediator Mediator
  • 26. Sfide tecnologiche
    • Questo sogno richiede di affrontare molte sfide tipiche di contesti distribuiti e decentralizzati che sono state affrontate sole in parte:
    • Mediation
    • Trust
    • QoS/SLA
    • Discovery
    Integration Business Process Services Client Sales Department Legacy Core Bank Risk & Financials 3rd Party Shipment S emantically E mpowered S ervice Oriented A rchitecture Trust? QoS/SLA? Discovery? Mediation? Mediator WCC Mediator Legacy Mediator Mediator Comm. Mediator Mediator WCC Mediator WCC Mediator Mediator Mediator Legacy Mediator Mediator Legacy Mediator Mediator Mediator Mediator Comm. Mediator Comm. Mediator Mediator Mediator
  • 27. Una sfida su cui misurarsi Read out more! http://sws-challenge.org Mediation Discovery
  • 28. L’approccio CEFRIEL – Politecnico di Milano Try it! http:// webml.org / sws-challenge.html most complete solution presented in June 2006 :-) http://www.webml.org http://www.webratio.com http://glue.cefrie.it
  • 29. Il nostro approccio: Semantic Web Engineering Research Impact Research Risk Capturing Knowledge Representing Knowledge Maintaining Knowledge Sharing Knowledge Describing Services Discovering Services Monitoring Services Composing Services Semantic Driven Development
    • Semantic Web Engineering
      • Software Engineering - WebML
      • Semantic Web (Services)
    Try it! http://webml.org/sws-challenge.html
  • 30. Model-Driven SWS application development
    • A top-down approach to the design and development of applications employing Semantic Web Services, that combines semantic methods and tools (i.e., ontology engineering, semantic service annotation and discovery) with Software Engineering ones (i.e., formal business process development, component-based software design techniques, and computer-aided software design).
    [Published at ISWC 2006] GLUE WSMO Discovery Engine
  • 31. Un progetto europeo da seguire
    • 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.
    http://www.ip-super.org
  • 32.
    • Grazie mille dell’attenzione
    • Domande?
    Emanuele Della Valle CEFRIEL – Politecnico di Milano email: [email_address] web: http:// swa.cefriel.it