SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo...

35
SERVICE ORIENTED ARCHITECTURE SOA:

Transcript of SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo...

Page 1: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

SERVICE ORIENTED ARCHITECTURE

SOA:

Page 2: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

SOA…overview La parola d’ordine delle situazioni di sviluppo applicativo odierne è

integrazione. Le applicazioni sviluppate si trovano a condividere flussi di dati già

realizzati in diverse altre applicazioni esistenti. La prima questione è lo scambio di informazioni strutturate tra diversi

ambienti applicativi… Necessità di definire un formato comune di scambio di dati.

La seconda questione è il riutilizzo delle componenti software... Gli sviluppi di nuove applicazioni richiedono funzionalità sempre più

complesse da integrate con i sistemi operativi. La pressione sui costi e sul ritorno d’investimento.

Da queste osservazioni si avverte la necessità… Uno standard indipendente dalla piattaforma applicativa. Protocollo di dialogo tra chiamante e componente applicativa indipendente

dal trasporto, dal punto di vista semantico completo, e sicuro. Seguendo le linee di questa evoluzione, oggi nelle architetture

applicative si ragiona in termini di componenti che offrono servizi applicativi, sia verso l’interfaccia utente sia verso altre componenti e applicazioni.

Page 3: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

… parliamo di Service Oriented Architecture… SOA

Page 4: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

GLI OBIETTIVI

L’introduzione dei servizi nelle architetture odierne

Quali sono i principi che regolano SOA Cosa rappresentano i Web Service per

SOA Cosa si intende per Enterprise Service Bus

Page 5: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

GLI OBIETTIVI

L’introduzione dei servizi nelle architetture odierne

Quali sono i principi che regolano SOA Cosa rappresentano i Web Service per

SOA Cosa si intende per Enterprise Service Bus

Page 6: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Tecniche di design

Design e analisi orientate a oggetti… considerare un problema di dominio e una soluzione logica

dalla prospettiva di oggetti. Design basato a componenti…

un’evoluzione del paradigma a oggetti; forniscono funzionalità ben definite da un insieme coesivo di

oggetti; sono un meccanismo per impacchettare, gestire e esporre

servizi; Design orientato a servizi…

servizio è implementato come un’entità software a granatura fluibile;

esiste come una singola istanza e interagisce con applicazioni ed altri servizi attraverso un modello di comunicazione debolmente accoppiata, basata sui messaggi.

Page 7: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Differenze tra orientazione a servizio e orientazione a componente

Enfasi sulle descrizioni di servizi

Separazione tra “cosa” e “come”

Durante l’assemblaggio è disponibile solo la descrizione

Integrazione a priori o durante l’esecuzione

Availability dinamica Composizione astratta

Enfasi sulla vista esterna della componente

Nessuna Durante l’assemblaggio

è disponibile la componente fisica

Integrazione in fase di assemblaggio

No availability dinamica Composizione

strutturale

Page 8: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…perché SOA L’idea fondamentale è che nelle architetture a servizi il

patrimonio informativo di un’azienda non è più un insieme di applicazioni tra loro isolate e che comunicano attraverso tecnologie di integrazione di applicazioni.

E’ invece organizzato in una collezione di servizi pubblicati su un’infrastruttura di comunicazione (enterprise service bus (ESB)) e che, quando ce n’è bisogno, possono essere utilizzati da più applicazioni.

I web services sono un fattore chiave per la pubblicazione dei servizi in modo standard.

Riusabilità, integrazione dei sistemi, flessibilità e sviluppo incrementale, sono questi i benefici maggiormente percepiti dalle aziende che cominciano a utilizzare tecnologie e metodologie che si richiamano a SOA.

Page 9: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

GLI OBIETTIVI

L’introduzione dei servizi nelle architetture odierne

Quali sono i principi che regolano SOA

Cosa rappresentano i Web Service per SOA Cosa si intende per Enterprise Service Bus

Page 10: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

SOA… LA TEORIA

L’architettura service oriented è un’architettura software con diverse caratteristiche.

Il più importante aspetto è la separazione del servizio dalla sua interfaccia.

Si divide il “cosa” dal ”come”. SOA consiste delle seguenti sei entità

configurate insieme per supportare il paradigma ‘find, bind, e execute’.

Page 11: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

1 Service Consumer 2 Service Provider 3 Service Registry 4 Service Contract 5 Service Proxy 6 Service Lease

Page 12: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…PIU’ DA VICINO 1 Service Consumer localizza il

servizio nel registro. 2 Service Provider accetta,

esegue le richieste del consumer.

3 Service Registry directory contenente i servizi disponibili.

Page 13: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

4 Service Contract specifica il formato di richiesta e risposta.

5 Service Proxy Il service provider fornisce un service proxy al service consumer. Il service consumer esegue la richiesta. Il service proxy cerca un contratto e un riferimento nel registro. Si forma il messaggio di richiesta. Si esegue la richiesta per conto del

consumer. 6 Service Lease specifica il tempo per

cui il contratto è valido.

Page 14: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.
Page 15: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

CARATTERISTICHE DI SOA

I servizi devono essere: Ricercabili e dinamicamente legati: il

service consumer non conosce il formato del messaggio di richiesta e/o di risposta, o la locazione del servizio finché il servizio risulta utile.

Auto-contenuto e modulare: la modularità è associata alla progettazione di servizi, quindi i servizi possono essere più facilmente aggregati in un’applicazione con dipendenze note.

Interoperabilità: la capacità del sistema di usare diverse piattaforme e linguaggi per comunicare.

Page 16: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…e ancora…

Debolmente accoppiati: il consumer di un servizio non ha dettagliate conoscenze del servizio prima di invocarlo, perciò il consumer e il provider sono debolmente accoppiati.

Interfaccia di rete indirizzabile: un consumer su una rete deve essere capace di invocare un servizio attraverso la rete.

Interfacce a grana grossa: un metodo di

servizio che ritorna più dati, meno specifici.

Page 17: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…infine Allocazione trasparente: riducono le dipendenze

attraverso l’utilizzo di legami dinamici,per cui l’allocazione del servizio irrilevante; quindi il service consumer non ha dirette dipendenze sul service contract, l’implementazione del contratto può muoversi da locazione in locazione.

Componibilità: è correlato alla sua struttura modulare, che abilita il servizio ad essere assemblato in applicazioni, lo sviluppatore non ha nozione di quando progettare il servizio.

Auto-riparazione: capacità realizzabile solo se il client interagisce con le interfacce dei servizi e non con la sua implementazione.

Page 18: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

GLI OBIETTIVI

L’introduzione dei servizi nelle architetture odierne

Quali sono i principi che regolano SOA Cosa rappresentano i Web

Service per SOA Cosa si intende per Enterprise Service Bus

Page 19: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

WEB SERVICE I web service sono una tecnologia ben soddisfatta

implementando un’architettura service oriented. I web service sono applicazioni auto-descrittivi e

modulari. Espone nella logica di business come i servizi che

possono essere pubblicati, scoperti e invocati. Basato su standard XML. I web service possono essere sviluppati come

applicazione debolmente accoppiate usando alcuni linguaggi di programmazione, protocolli, o piattaforme.

Questo facilita il rilascio di applicazioni di business e la consegna di un servizio accessibile da chiunque, ogni qualvolta necessario e usando qualsiasi piattaforma.

Page 20: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Caratteristiche i web service sono auto contenuti…

Dal lato client non è richiesto software addizionale. Dal lato server, sono richieste solo web service e ingegneria a servlet.

i web service sono auto descritti… Né il client né il server conoscono o si preoccupano di nulla al di là del

formato e del contenuto di richieste e i messaggi di risposta (integrazione di applicazioni debolmente accoppiate). La definizione del formato dei messaggi viaggi con il messaggio. Non sono richiesti repository di metadati esterni o tool di generazione di codice.

i web service sono modulari… I web service sono una tecnologia per spiegare e fornire accesso alle

funzioni di business sul web. i web service sono linguaggi indipendenti e interoperabili…

L’interazione tra un service provider e un service consumer è progettato per essere completamente indipendente dalla piattaforma e dal linguaggio. Questa interazione richiede un documento WSDL per definire l’interfaccia e descrivere il servizio, solo con un protocollo di rete (solitamente HTTP). Poiché il service provider e il service consumer non hanno idea di quale piattaforma o linguaggio si sta usando, l’interoperabiltà è un dato di fatto.

Page 21: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…e ancora

I web service sono aperti e basati sugli standard. Un larga parte delle tecnologie web service sono state

costruite utilizzando progetti open source. I web service sono dinamici. I web service sono componibili. I web service possono essere pubblicati, allocati, e invocati

attraverso il web. Gli standard richiesti per fare questo sono:

Web Service Description Language (WSDL) Simple Object Access Protocol (SOAP) Universal Description, Discovery, and Integration (UDDI)

Page 22: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

WSDL…UTILIZZO Il Web Service Description Language

(WSDL) costituisce una base per i web service.

La figura presenta l’utilizzo dei WSDL. I passi di fornitura e consumo dei servizi

implicano… il service provider descrive il suo servizio

usando WSDL. Questa definizione viene pubblicata nella directory dei servizi.

un service consumer emette una o più query alla directory per localizzare un servizio e stabilire come comunicare con quel servizio.

Una parte del WSDL fornito dal service provider è passata al service consumer. La directory raccoglie le richieste e le risposte del service provider e le fornisce al service consumer.

Il service consumer utilizza il WSDL per mandare una richiesta al service provider.

Il service provider fornisce la risposta attesa al service consumer.

Page 23: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

WSDL I Web Services Description Language è il formato utilizzato per

descrivere le interfacce dei web service. Rappresentano un modo di descrivere servizi e come questi sono limitati

a specifici indirizzi di rete. WSDL ha tre parti fondamentali:1. Definizioni…

generalmente espressi in XML includono sia le definizioni dei data type, che quelle dei messaggi.

2. Operazioni… descrivono le azioni per i messaggi supportati dai web service. Ci sono quattro tipi di operazioni:

2.1) One-way -> i messaggi vengono inviati senza una risposta di ritorno. 2.2) Request/response -> il sender invia un messaggio e quando lo riceve invia un

risposta. 2.3) Solicit response -> si richiede una risposta. 2.4) Notification -> i messaggi inviati a più receiver.

Le operazioni sono raggruppate in port type, ovvero un insieme di operazioni supportate dai web service.

3. Legami tra i servizi… consente la connessione tra port type e port.

Page 24: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

SOAP

Tutti i messaggi mostrati nella figura vengono inviati usando SOAP.

SOAP essenzialmente fornisce l’imbustamento dei messaggi web service.

SOAP generalmente utilizza HTTP, ma possono essere utilizzate anche altre forme di connessione.

Per la definizione dei messaggi WSDL utilizza XML. Il formato del messaggio XML si basa sui tag,

quindi sia il service provider che il service consumer utilizzano i tag.

Page 25: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

UDDI

Un UDDI registry è utilizzato con il significato di scoperta dei web service descritti usando WSDL.

L’idea è che l’UDDI registry può essere cercato in vari modi per ottenere il contatto dell’informazione e la disponibilità dei web service per varie organizzazioni.

L’UDDI potrebbe essere un modo di tenere aggiornato il web service che l’organizzazione ha appena utilizzato.

Page 26: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Le tecnologie basate sulle web service stanno diventando le più usate nello sviluppo e integrazione di applicazioni aziendali.

Una decisione critica è trovare un modo più efficiente e efficace di progettare, sviluppare e spiegare i web service basati su sistemi di business.

Muovendosi dalle comunicazioni fondamentali punto a punto dei web service a più larghe applicazioni di queste tecnologie, ovvero i processi di business.

In questo contesto, il modello Enterprise Service Bus (ESB) sta emergendo molto velocemente.

Page 27: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

GLI OBIETTIVI

L’introduzione dei servizi nelle architetture odierne

Quali sono i principi che regolano SOA Cosa rappresentano i Web Service per SOA Cosa si intende per Enterprise

Service Bus

Page 28: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

L’ Enterprise Service Bus L’ Enterprise Service Bus

rappresenta una pratica architetturale migliore per implementare un’architettura service oriented.

Si stabilisce un bus per i messaggi che combina l’infrastruttura dei messaggi con la trasformazione dei messaggi, e il routing basato sul contenuto in un livello di integrazione logica tra service provider e service consumer.

Page 29: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Overview Il principale scopo dell’Enterprise Service Bus è quello di rendere

virtuale le risorse aziendali, permettendo alla logica di business dell’azienda di essere sviluppata e gestita indipendentemente dall’infrastruttura della rete, e dalla fornitura di questi servizi.

Implementare un Enterprise Service Bus richiede un insieme integrato di servizi middleware.

I servizi middleware forniti da un Enterprise Service Bus devono includere:

comunicazione middleware, supportando una varietà di paradigmi di comunicazione (come sincrona, asincrona, request\reply, one-way, call-back), qualità di servizi (come security, rilasci garantiti, performance), piattaforme, e protocolli standard;

un meccanismo per introdurre rapidi processi intelligenti di richieste di servizi e risposte dentro la rete;

tool basati sugli standard con l’obiettivo di abilitare integrazione rapida di servizi;

sistemi di gestione per applicazioni debolmente accoppiate e per le loro interazioni.

Page 30: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Caratteristiche dell’ESB

Trasformazione (sintattica e semantica) e mapping dei messaggi da un formato all'altro.

Delivery dei messaggi con autenticazione, autorizzazione; in generale deve essere garantito il supporto middleware alla comunicazione asincrona.

Gestione avanzata del routing dei messaggi, ad esempio sulla base del contenuto del messaggio stesso (questo permette a un servizio di mandare un messaggio senza conoscerne la destinazione).

Funzionalità di amministrazione per la gestione e configurazione del BUS.

Esposizione di servizi middleware di supporto alla logica di business.

Utilizzo di più protocolli di comunicazione (tramite appositi Adapter) per facilitare l'integrazione.

Page 31: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Un esempio di ESB per IBM Infrastruttura distribuita denominata hub-and-

spoke consente il controllo centralizzato di

configurazione, come il routing di servizi, la localizzazione dei servizi, ecc..

L’ESB richiede alcune forme di service routing directory per fare routing delle richieste dei servizi.

Si potrebbe anche avere una business service directory…

potrebbe essere un catalogo di servizi design-time usato per ottenere il riuso dei servizi attraverso l’attività di sviluppo.

Il ruolo del Business Service Choreographer è quello di comporre diversi servizi di business in processi di business; quindi esso invocherà i servizi attraverso l’ESB e poi espone i processi come altri servizi disponibili ai client, di nuovo attraverso l’ESB.

L’obiettivo della componente B2B Gateway è quello di rendere il servizio di due o più organizzazioni disponibili ad ogni altro in maniera controllata e sicura.

Osservazione: le componenti sono connesse all’ESB, ma non sono parti di esso.

Page 32: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

L’ESB per IBM

Page 33: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

Concludendo… SOA è un concetto di grande appeal, ma non si può buttare

tutto e riscrivere secondo la nuova ottica. L’applicazione della SOA aumenta la qualità, semplifica le

architetture e quindi riduce i costi di gestione e di sviluppo e migliora i livelli di servizio.

Le difficoltà sono in rapporto con le dimensioni che una architettura orientata ai servizi presenta, visto che spesso si tratta di realizzare e mettere in rete centinaia di servizi.

I servizi possono essere utilizzati da più applicazioni. I benefici percepiti dalle aziende che cominciano a utilizzare

tecnologie e metodologie basate su SOA…1. Riusabilità2. Integrazione dei sistemi3. Flessibilità4. Sviluppo incrementale.

Page 34: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

REFERENCES [1] A conceptual model for adaptable context-aware services; M. Autili, V. Cortellessa, A. Di Marco, P. Inverardi;

International Workshop on Web Services Modeling and Testing (WS-MaTe2006). [2] Z. Baida, H. Akkermans, and J. Gordijn. Serviguration: Towards online configurability of real-world services. In

Proceedings of the Fifth International Conference on Electronic Commerce (ICEC03), pages 111–118, Pittsburgh, PA, 2003. ACM. [3] K. Mohan and B. Ramesh. Ontology-based support for variability management in product and service families. In

Proceedings of the 36th Hawaii International Conference on System Sciences, Hawaii, 2003. [4] Special Issue on Applications and Services for the B3G/4G Era, October 2004. [5] A. Bertolino and W. Emmerich and P. Inverardi and V. Issarny. Softure: Adaptable, Reliable and Performing Software

for the Future. Future Research Challenges for Software and Services (FRCSS), 2006. [6] A. M. Sassen and C. Macmillan. The service engineering area: An overview of its current state and a vision of its

future. Technical report, Euorepean Commission, July 2005. [7] Z. Baida, J. Gordijn, B. Omelayenko, and H. Akkermans. A shared service terminology for online service provisioning.

In Proceedings of the 6th international conference on Electronic commerce, p.1-10, 2004. [8] D. Sprott and L. Wilkes. Understanding Service-Oriented Architecture. http://msdn.microsoft.com/architecture/soa/, Microsoft, 2004. [9] E. Christensen and F. Curbera and G. Meredith and S. Weerawarana. Web Services Description Language (WSDL) 1.1.

http://www.w3.org/TR/wsdl, 2001. [10] F.Mancinelli and P. Inverardi. A resource model for adaptable applications. In To apper, Workshop on Software

Engineering for Adaptive and Self-Managing Systems (SEAMS), (ICSE), May 2006. [11] H. Cervantes and R. S. Hall. Autonomous Adaptation to Dynamic Availability Using a Service-Oriented Component

Model. In Proceedings of the 26th International Conference on Software Engineering (ICSE 2004), Edinburgh, Scotland, May 2004. [12] IBM. Migration to a service-oriented architecture Part1. http://www- 128.ibm.com/developerworks/library/ws-migratesoa, 2003. [13] M. Colombo and E. Di Nitto and M. Di Penta and D. Distante and Maurilio Zuccalà. Speaking a Common Language: A

Conceptual Model for Describing Service-Oriented Systems. In 3rd International Conference on Service Oriented Computing (ICSOC), Amsterdam, the Netherlands, December 2005.

[14] M.Tivoli and M.Autili. Synthesis: a tool for synthesizing “correct” and protocolenhanced adaptors. RSTI, L’OBJET JOURNAL 12/2006, pages 77 to 103, 2006.

[15] OASIS. Reference Model for Service Oriented Architecture. Committee Draft 1.0, 7, 2006.

Page 35: SERVICE ORIENTED ARCHITECTURE SOA:. SOA…overview La parola dordine delle situazioni di sviluppo applicativo odierne è integrazione. Le applicazioni sviluppate.

…e ancora… [16] P.Inverardi, L.Mostarda, M.Tivoli, and M.Autili. Synthesis of correct and distributed adaptors for component-

based systems: an automatic approach. In Proceedings of Automated Software Engineering (ASE), 2005. [17] Chris Preist. A conceptual architecture for semantic web services. In Proceedings of the International

Semantic Web Conference (ISWC), November 2004. [18] SUN. Service Oriented Architecture. http://www.theserverside.com, 2003. [19] W3CWorking Group. Web Services Architecture (WSA). http://www.w3.org/TR/wsarch/, February 2004. [20] Service-Oriented Architecture: A Primer By Michael S. Pallos; eAI Journal December 2001. [21] Bringing SOA Value Patterns to Life An Oracle White Paper June 2006. [22] Service Oriented Architecture Whitepaper Author: Duane Nickull – Adobe Systems, Inc. Contributors: Mike

Connor, C. Matthew MacKenzie, Ben Watson, Mark Cowan, Ed Chase – Adobe Systems, Inc. 2005. [23] THE SOA PLATFORM GUIDE:EVALUATE, EXTEND, EMBRACE White Paper February 2006. [24] Opening the door to a service oriented architecture IBM® Workplace™, Portal and Collaboration products for

an SOA Dr. Barry Devlin Dublin Software Laboratory January 2006. [25] Chapter 2: Service-Oriented Architecture from the book: Java Web Services Architecture (ISBN: 1-55860-900-

8) written by James McGovern, Sameer Tyagi, Michael Stevens, and Sunil Mathew, published by Morgan Kaufmann Publishers, 2002.

[26] Software-aided Service Bundling Intelligent Methods & Tools for Graphical Service Modeling Ziv Baida, 29 mei 2006.

[27] Consumer-Driven Contracts: A Service Evolution Pattern, Ian Robinson, 12 Jun 2006. [28] O. Zimmermann, P. Krogdahl, C. Gee "Elements of Service-Oriented Analysis and Design: An interdisciplinary

modeling approach for SOA projects" http://www-128.ibm.com/developerworks/webservices/library/ws-soad1/

[29] Ali Arsanjani "Service-oriented modeling and architecture: How to identify, specify, and realize services for your SOA"http://www-128.ibm.com/developerworks/webservices/library/ws-soa-design1/

[30] Thomas Erl "Service-Oriented Architecture: Concepts, Technology, and Design" Prentice Hall [31] http://www.bpmi.org/ [32] IBM, Patterns: Service-Oriented Architecture and Web Services, Copyright IBM Corp. 2004 [33] http://www.service-architecture.com/