Parte una nuova iniziativa di training online, dopo il successo ottenuto con il corso base di Xml. Stavolta ci occupiamo di Web Services, partendo dall’analisi del mercato, caratteristiche e componenti tecniche.
L’assenza di standardizzazione e la conseguente dipendenza dalle
tecnologie utilizzate ha reso spesso difficile alle aziende integrare facilmente
e velocemente i propri processi di business, o anche le semplici informazioni,
con quelli di partner e clienti. Si pensi ad una società recentemente
incorporata o acquisita, o ad una società con diverse filiali: il tentativo di
far funzionare insieme i sistemi aziendali interni di queste società potrebbe
richiedere un enorme dispendio di energie. La presenza di piattaforme di
implementazione diverse (Unix, Microsoft), diverse tecniche di implementazione
(Sviluppi Custom, API di prodotto), diverse Base Dati o il possibile utilizzo di
Soluzioni (CM, CRM, ERP) costituiscono problemi di grande rilevanza.
Attraverso l’adozione del linguaggio XML, i Web Services riescono finalmente
a riempire questo vuoto consentendo alle organizzazioni di integrarsi pienamente
e di collaborare con i partner esterni (a prescindere dal tipo di applicazioni
esistenti o di supporto tecnologico utilizzato). L’integrazione, inoltre,
avviene attraverso l’uso di standard aperti, per cui non bisogna introdurre
per forza applicazioni legacy né adattatori o connettori di sorta, con
evidenti vantaggi a livello di costi e tempi di realizzazione. A differenza della
tecnologia EDI, infatti, i Web Services basati su XML non richiedono una tecnologia
di comunicazione dispendiosa né soluzioni altamente personalizzate con
evidenti costi d’uso e d’implementazione.
È per questo motivo che quando si parla di Web Services non è esagerato
definirli la tecnologia più innovativa del prossimo futuro, la base per
l’unbounded enterprise.
Prima di avvicinarci ad un discorso prettamente tecnico, ricapitoliamo le caratteristiche
principali dei Web Services:
- sono componenti applicativi accessibili dal Web
tramite programma; - si basano su Protocollo Standard;
- mascherano le Applicazioni di Business;
- sono indipendenti da operazioni di implementazione ed estremamente facili
da integrare.
I maggiori player di mercato definiscono il Web Service come unità di
logica di applicazione che fornisce i dati e i servizi ad altre applicazioni,
abilitando l’integrazione di Funzioni di Business indipendentemente dall’infrastruttura
IT. La loro accessibilità via Web viene distinta da quella di un “documento
Web” corrente per il fatto che mentre quest’ultima si specializza
nell’interazione umana, i Web Services sono destinati ad essere raggiunti
dai programmi per formare un’architettura di nuova applicazione: l’applicazione
Web.
Attraverso il seguente esempio sarà possibile identificare in modo molto
semplice quanto esemplificativo la logica dei Web Services. Nella fattispecie
proviamo ad affiancare le fasi di un quotidiano processo umano con quelle di
un Web Service: confrontiamo, passo passo, le azioni che compirebbe il sig.
Rossi, dalla sua stanza d’albergo e troppo stanco per uscire a comprare
una pizza, con quelle di un magazzino che improvvisamente si accorge di essere
a corto di un dato quantitativo di merce.
Dal canto suo il sig. Rossi, sfogliate le Pagine Gialle, individua la pizzeria
che fa per lui: ordinazione telefonica e consegna a domicilio in meno di mezz’ora.
Dall’altro lato, il magazzino scopre che il proprio fornitore ufficiale
non consegna prima di 24 ore. Analizzato il Web Services Registry, si scopre
un altro fornitore che consegnerà la merce necessaria nel giro di poche
ore.
Analizziamo i due processi:
Ogni momento del processo appena descritto è esemplificativo delle tecnologie
alla base dei Web Services:
- l’uso delle Pagine Gialle consultate dal sig. Rossi
corrisponde all’interrogazione dell’UDDI da parte di un’azienda. L’UDDI
(Universal Description, Discovery and Integration) è un database pubblico
contenente le informazioni sulle imprese e i Web Services offerti. È un vero e
proprio Registro Aziendale, al cui interno sono disponibili le Pagine Bianche
(nomi, indirizzi e altri identificativi di società in tutti i settori
industriali e commerciali), le Pagine Gialle (per cercare gli estremi di una
gamma di prodotti aziendali e ottenere informazioni di contatto) e le Pagine
Verdi (elenco dei Web Services offerti da ciascuna impresa registrata).
Attualmente gestiti da IBM, Ariba e Microsoft, gli UDDI contengono dati
web-based, salvati in formato XML. - Le informazioni sulle singole pizzerie contenute
nelle Pagine Gialle sfogliate dal sig. Rossi sono organizzate a seconda dei
contenuti: ragione sociale, numero di telefono, indirizzo, etc. Allo stesso
modo, i Web Services si servono di uno strumento chiamato WSDL (Web Services
Description Language) che definisce l’indicativo del servizio e l’URL che lo
espone e descrive il programma che implementa il servizio. Anch’esso è basato
su XML. - Il mezzo di comunicazione di cui si è servito il sig.
Rossi è paragonabile all’utilizzo di Internet: i protocolli TCP/IP, HTTP e
HTTPS tracciano una sicura via di comunicazione tra i Web Services. - Alla voce utilizzata dal sig. Rossi per trasmettere i
propri pensieri, desideri e necessità, la tecnologia dei Web Services fa
corrispondere il protocollo SOAP (Simple Object Application Protocol),
anch’esso basato su XML. È il protocollo per lo scambio di informazioni (RPC,
messaggi): consente ai Web Services di essere lanciati ed eseguiti da altri
Web Services o applicazioni Web, sia internamente che esternamente
all’azienda. - Infine, alle parole “margherita” e “pizza” utilizzate
dal sig. Rossi, ovvero la sua Lingua, sono associabili l’uso dell’XML.
L’XML è un vero e proprio metalinguaggio per il fatto che oltre
ai dati trasmessi, contiene anche informazioni sui dati stessi. Quando un’applicazione
riceve un documento XML, non riceve solo i dati ma anche i mezzi per comprenderli
ed elaborarli.
Da questo breve excursus tecnico emerge come i Web Services siano un investimento
in termini sia di infrastruttura che di business. I benefici del loro utilizzo
derivano direttamente dalle caratteristiche tecniche, dalla capacità
di creare nuove procedure per far interagire le componenti di business e dall’integrazione
di applicazioni di tipo legacy. Sicuramente alcuni dei benefici più evidenti
nell’adozione di un sistema di e-business basato sui Web Services sono
la riduzione dei tempi di implementazione e il miglioramento della produttività
dello sviluppatore grazie a componenti esistenti, riutilizzate per creare nuovi
processi aziendali.