Service-oriented architecture: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0.9.5
 
(158 versioni intermedie di 84 utenti non mostrate)
Riga 1:
Nell'ambito dell'[[informatica]], con la locuzione [[lingua inglese|inglese]] di '''Service-Oriented Architecture''' (SOA) si indica generalmente un'[[architettura software]] adatta a supportare l'uso di [[Web service|servizi Web]] per garantire l'[[interoperabilità]] tra diversi sistemi così da consentire l'utilizzo delle singole [[applicazione (informatica)|applicazioni]] come ''componenti'' del processo di business e soddisfare le richieste degli utenti in modo integrato e trasparente.
{{S|informatica}}
Nell'ambito dell'[[informatica]], con la locuzione [[lingua inglese|inglese]] di '''Service-Oriented Architecture''' (SOA [pronunciato "sō-uh" o "es-ō-ā"]) viene indicata un'architettura [[software]] atta a supportare l'uso di ''servizi'' ([[web services]]) per soddisfare le richieste degli utenti così da consentire l'utilizzo delle singole [[applicazione|applicazioni]] come ''componenti'' del processo di business.
 
[[ImageFile:SOA Elements.png|thumb|right|300pxupright=1.4|Elementi di una SOA, di Dirk Krafzig, Karl Banke, e Dirk Slama. ''Enterprise SOA''. Prentice Hall, 2005]]
 
== Definizioni esistenti ==
Nell'ambito di un'architettura SOA è quindi possibile modificare, in maniera relativamente più semplice, le modalità di interazione tra i servizi, la combinazione nella quale i servizi vengono utilizzati nel processo, così come risulta più agevole aggiungere nuovi servizi e modificare i processi per rispondere alle specifiche esigenze di business: il processo di business non è più vincolato da una specifica [[sistema (informatica)|piattaforma]] o da un'applicazione ma può essere considerato come un componente di un processo più ampio e quindi riutilizzato o modificato.
Una ''Service-Oriented Architecture'' è progettata per il collegamento a richiesta di risorse computazionali (principalmente applicazioni e dati), per ottenere un dato risultato per gli utenti, che possono essere utenti finali o altri servizi. L'''Organization for the Advancement of Structured Information Standards'' (Organizzazione per lo sviluppo di standard sull'informazione strutturata) definisce la Service Oriented Architecture così:
 
{{citazione| Un paradigma per l'organizzazione è l'utilizzo delle risorse distribuite che possono essere sotto il controllo di domini di proprietà differenti. Fornisce un mezzo uniforme per offrire, scoprire, interagire ed usare le capacità di produrre gli effetti voluti consistentemente con presupposti e aspettative misurabili. | Organization for the Advancement of Structured Information Standards }}
L'architettura orientata ai servizi si presenta particolarmente adatta per le aziende che presentano una discreta complessità di processi e applicazioni, dal momento che agevola l'interazione tra le diverse realtà aziendali permettendo, al contempo, alle attività di business di sviluppare processi efficienti, sia internamente che esternamente ed aumentarne la flessibilità e l'adattabilità.
 
Nonostante il fatto che esistano molteplici definizioni di ''Service-Oriented Architecture'', solo il gruppo ''Organization for the Advancement of Structured Information Standards'' ha prodotto una definizione formale applicabile profondamente sia alla tecnologia che ai domini aziendali.
Benché molte aziende offrano prodotti che possono formare la base di una SOA va sottolineato che la SOA non è un prodotto.
 
Sebbene molte definizioni di ''Service-Oriented Architecture'' si limitino alla tecnologia o solo ai Web service, questo aspetto è predominante per i fornitori di tecnologia. Nel 2003 questi parlavano di Web service, e nel 2006 di Motori di Processo legati alla Business Process Model Notation.
Un'architettura orientata ai servizi non è legata ad una specifica tecnologia. Può essere realizzata usando una vasta gamma di tecnologie, comprese [[REST]], [[Chiamata di procedura remota|RPC]], [[Distributed Component Object Model|DCOM]], [[CORBA]] o i [[Web service|Web services]]. SOA può essere implementata anche non usando nessuno di questi protocolli e, per esempio, basarsi sul file system, trasferendo i dati in base alle specifiche dell'interfaccia tra i processi, conformemente al concetto di SOA. La chiave è l'indipendenza dei servizi, definiti da un'interfaccia specifica, che possono essere chiamati per eseguire i propri compiti in un modo standard, senza che il servizio abbia conoscenza dell'applicazione chiamante e senza che l'applicazione abbia conoscenza, o necessiti di averne, del servizio che effettivamente eseguirà l'operazione.
 
=== Il manifesto ===
SOA può anche essere vista come uno stile dell'architettura dei sistemi informatici che permetta la creazione delle applicazioni sviluppate, combinando servizi debolmente accoppiati e interoperabilità degli stessi. Questi servizi interoperano secondo una definizione formale, detta protocollo o contratto, come per i [[WSDL]] indipendente dalla piattaforma sottostante e dalle tecnologie di sviluppo (come Java, .NET, ecc). I servizi, per esempio, scritti in Java usando la piattaforma Java EE e quelli in C# con .NET possono essere utilizzati dall'applicazione sovrastante. Le applicazioni in esecuzione su una piattaforma possono anche utilizzare servizi in esecuzione su altre, come con i Web services, facilitando quindi la riusabilità.
Il manifesto SOA recita:
{{citazione| L'orientamento ai servizi è il paradigma che circoscrive quello che fai. L'architettura orientata ai servizi (SOA) è il tipo di architettura fondata sull'applicazione dell'orientamento ai servizi.
Applichiamo l'orientamento ai servizi per favorire in un modo consistente le organizzazioni nel fornire prestazioni di business sostenibile, con maggiore agilità di impiego ed efficienza nei costi, adattandosi alle mutevoli esigenze aziendali.
La nostra esperienza ci induce a dare priorità:
* '''Al valore di business''' rispetto all'aspetto tecnico
* '''Agli obiettivi strategici''' rispetto ai benefici specifici di un progetto
* '''All'interoperabilità intrinseca''' rispetto all'integrazione personalizzata
* '''Ai servizi condivisi''' rispetto alle implementazioni particolari
* '''Alla flessibilità''' rispetto all'ottimizzazione
* '''Al miglioramento evolutivo''' rispetto alla ricerca della perfezione iniziale
Cioè, mentre apprezziamo il valore degli elementi esposti a destra, noi prediligiamo
gli elementi indicati a sinistra. | [http://www.soa-manifesto.org/default_italian.html Manifesto SOA] }}
 
== Descrizione ==
SOA può supportare l'integrazione e la consolidazione di attività all'interno di complessi sistemi aziendali, ma non specifica o fornice la metodologia o il framework per documentare capacità e potenzialità dei servizi.
Nell'ambito di un'architettura ''Service-Oriented Architecture'' è quindi possibile modificare, in maniera relativamente più semplice, le modalità di interazione tra i servizi, oppure la combinazione nella quale i servizi vengono utilizzati nel processo. Inoltre, risulta più agevole aggiungere nuovi servizi e modificare i processi per rispondere alle specifiche esigenze di business. Così facendo, il processo di business non è più vincolato da una specifica [[sistema (informatica)|piattaforma]] o da un'applicazione; ma può essere considerato come un componente di un processo più ampio e quindi riutilizzato o modificato.
 
L'architettura orientata ai servizi è particolarmente adatta per le aziende che presentano una discreta complessità di processi e applicazioni. Infatti, viene agevolata l'interazione tra le diverse realtà aziendali. Le attività di business ora possono sviluppare processi efficienti sia internamente che esternamente. Parallelamente aumenta la flessibilità e l'adattabilità dei processi.
I linguaggi di altro livello come [[BPEL]] e le specifiche come WS-CDL e WS-Coordination estendono il concetto di servizio, fornendo un metodo per definire e supportare la coordinazione dei servizi di rifinitura con quelli maggiori, che, di conseguenza, possono essere inclusi in flussi di controllo e processi aziendali implementati con applicazioni composte o portali.
 
Benché molte aziende offrano prodotti che possono formare la base di una ''Service-Oriented Architecture'' va sottolineato che la ''Service-Oriented Architecture'' non è un prodotto.
 
La chiave sta nella totale assenza di business logic sul client SOA, il quale è totalmente agnostico rispetto alla piattaforma di implementazione, riguardo ai protocolli, al binding, al tipo di dati, alle policy con cui il servizio produrrà l'informazione richiesta. Tutto a beneficio dell'indipendenza dei servizi, che possono essere chiamati per eseguire i propri compiti in un modo standard, senza che il servizio abbia conoscenza dell'applicazione chiamante e senza che l'applicazione abbia conoscenza, o necessiti di averne, del servizio che effettivamente eseguirà l'operazione.
== Definizioni di SOA ==
 
''Service-Oriented Architecture'' può anche essere vista come uno stile dell'architettura dei [[sistema informatico|sistemi informatici]] che permetta la creazione delle applicazioni sviluppate, combinando servizi debolmente accoppiati e interoperabilità degli stessi. Questi servizi interagiscono secondo una definizione formale, detta protocollo o contratto, come per i [[Web Services Description Language]] indipendente dalla piattaforma sottostante e dalle tecnologie di sviluppo (come Java, .NET, ecc.). Per esempio, i servizi scritti in Java usando la piattaforma Java EE e quelli in C# con .NET possono essere utilizzati dall'applicazione sovrastante. Le applicazioni in esecuzione su una piattaforma possono anche utilizzare servizi in esecuzione su altre, come con i Web service, facilitando quindi la riusabilità.
SOA è designato per il collegamento a richiesta di risorse computazionali (principalmente applicazioni e dati), per ottenere un dato risultato per gli utenti, che possono essere utenti finali o altri servizi. L'OASIS ([[Organization for the Advancement of Structured Information Standards]]) definisce SOA così:
 
''Service-Oriented Architecture'' può supportare l'integrazione e la consolidazione di attività all'interno di complessi sistemi aziendali (sistemi di [[Enterprise Application Integration|EAI]]) ma non specifica o fornisce la metodologia o il framework per documentare capacità e potenzialità dei servizi.
''Un paradigma per l'organizzazione e l'utilizzazione delle risorse distribuite che possono essere sotto il controllo di domini di proprietà differenti. Fornisce un mezzo uniforme per offrire, scoprire, interagire ed usare le capacità di produrre gli effetti voluti consistentemente con presupposti e aspettative misurabili.''
 
I linguaggi di alto livello come [[Business Process Execution Language]] e le specifiche come ''Web Services Choreography Description Language'' e ''WS-Coordination'' estendono il concetto di servizio, fornendo un metodo per definire e supportare la coordinazione dei servizi di rifinitura con quelli maggiori, che, di conseguenza, possono essere inclusi in flussi di controllo e processi aziendali implementati con applicazioni composte o portali.
Anche se esistono molteplici definizioni di SOA, solo il gruppo [[OASIS|Organization for the Advancement of Structured Information Standards]] ha prodotto una definizione formale applicabile profondamente sia alla tecnologia che ai domini aziendali.
 
== Tecnologie correlate ==
* [[Modello di Riferimento di SOA per OASIS]] (SOA-RM)<ref>[http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=soa-rm SOA Reference Model definition]</ref>
Tra le tecnologie che permettono di creare delle architetture orientate ai servizi, ci sono:
* Cos'è un'Architettura Orientata si Servizi? ([http://www.xml.com/pub/a/ws/2003/09/30/soa.html XML.com])
* le [[Rete informatica|reti di comunicazione]], senza le quali sarebbe impossibile far comunicare applicativi che si trovano su server diversi;
* Cos'è un'Architettura Orientata si Servizi? ([http://www.javaworld.com/javaworld/jw-06-2005/jw-0613-soa.html Javaworld.com])
* i [[Web service]] che permettono di definire le modalità di comunicazione dei vari applicativi;
* [http://isp.webopedia.com/TERM/S/Service_Oriented_Architecture.html Definizione di Webopedia ]
* l'[[Enterprise Service Bus]] (ESB) che ha la funzionalità di coordinare, orchestrare i vari applicativi per svolgere le funzioni di business.
* [http://www.techweb.com/encyclopedia/defineterm.jhtml?term=soa Definizione di TechEncyclopedia ]
* Object Management Group ([http://www.omg.org OMG] ) [http://soa.omg.org/ SOA Special Interest Group definition]
* [http://searchwebservices.techtarget.com/gDefinition/0,294236,sid26_gci929153,00.html WhatIs.com definition]
* SearchWebServices.com [http://searchwebservices.techtarget.com/originalContent/0,289142,sid26_gci1017004,00.html Numerose definizioni di SOA definitions di esperti industriali]
 
== Protocolli di comunicazione correlati ==
Sebbene molte definizioni di SOA si limitino alla tecnologia o solo ai Web Services, questo aspetto è predominante nei fornitori di tecnologia. Nel 2003 questi parlavano di Web Services, e nel 2006 di Motori di Processo.
Il service oriented computing non è legato ad una specifica tecnologia. Può essere realizzato usando una vasta gamma di tecnologie, comprese:
* [[Representational State Transfer]] (REST), un linguaggio usato per la definizione del servizio è Web Application Description Language;
* [[chiamata di procedura remota]] (RPC);
* [[Distributed Component Object Model]] (DCOM), definiti mediante [[Interface Description Language]];
* [[Common Object Request Broker Architecture]] (CORBA), definiti mediante [[Interface Description Language]].
 
Bisogna sottolineare il fatto che, perché una architettura possa essere definita ''orientata ai servizi'', il protocollo di comunicazione deve permettere anche di definire i servizi, i parametri in ingresso ed in uscita, come viene fatto, ad esempio con il [[Web Services Description Language]].
==Tecnologie alla base della SOA==
* [[Rete informatica|Reti di comunicazione]]
* [[Web Service]]
 
Diversi dei protocolli elencati sopra sono antecedenti alla definizione dell'architettura orientata ai servizi e sono associati al [[component-based software engineering]]. Quando sono state introdotte delle tecnologie legate all'eXtensible Markup Language, è diventato più semplice e proficuo realizzare architetture di questo tipo.
== Aspetti dello sviluppo della SOA==
 
== Aspetti dello sviluppo ==
La validità di un'architettura orientata ai servizi (SOA) è conseguenza degli elementi e degli standard su cui si fonda. In particolare vanno considerati i seguenti aspetti:
 
* '''Standard aperti''': per poter operare in ambienti multipiattaforma è necessario, o quantomeno consigliabile, utilizzare esclusivamente standard aperti quali [[XML]], [[Web Services Description Language|WSDL]] e [[WSSWS-Security]] (Web Services SecurityWSS).
* '''Modularità''': bisogna trovare il giusto equilibrio tra i servizi erogati da ogni singolo componente, creando un insieme bilanciato di piccoli servizi riutilizzabili per le funzioni comuni e servizi più grandi per processi specifici. Tale aspetto viene mutuato dal [[Component-based software engineering]]<ref>{{Cita web |url=http://petritsch.co.at/download/SOA_vs_component_based.pdf |titolo=Service-Oriented Architecture (SOA) vs. Component Based Architecture |accesso=4 aprile 2015 |dataarchivio=21 aprile 2015 |urlarchivio=https://web.archive.org/web/20150421174209/http://petritsch.co.at/download/SOA_vs_component_based.pdf |urlmorto=sì }}</ref>.
* '''Contratti di servizio''': [[Web Services Description Language]] è la specifica standard per la creazione di contratti di Web service, un contratto definito avrà come conseguenza servizi più flessibili. Un'alternativa è il [[Web Application Description Language]], che permette di definire servizi che usano la tecnologia [[Representational State Transfer]] e [[JSON]].
* '''Framework di integrazione''': implementano i pattern di integrazione<ref>[http://www.pearsoned.co.uk/bookshop/detail.asp?WT.oss=enterprise%20integration%20patterns&WT.oss_r=1&item=100000000041627 pattern di integrazione]</ref> e permettono una gestione più ordinata dell'orchestrazione dei servizi.
* '''Enterprise Service Bus''': La dorsale di pubblicazione dei servizi ed abilitazione delle applicazioni per accedervi. Inoltre include caratteristiche quali adattatori per i [[sistema legacy|sistemi legacy]], capacità di orchestrazione dei servizi, autorizzazione e autenticazione lato sicurezza, trasformazione dei dati, supporto per regole di business e capacità di monitorare i [[service level agreement]].
 
== Critiche ==
* '''Modularità''': bisogna trovare il giusto equilibrio tra i servizi erogati da ogni singolo componente, creando un insieme bilanciato di piccoli servizi riutilizzabili per le funzioni comuni e servizi più grandi per processi specifici.
L'architettura di tipo SOA è stata criticata da Martin Fowler<ref>[http://martinfowler.com/articles/microservices.html Microservices]</ref> e da Jim Webber<ref>[http://www.infoq.com/interviews/jim-webber-qcon-london Jim Webber on "Guerilla SOA"]</ref>. La critica riguarda la complessità del coordinamento tra i vari Web service che vengono chiamati. Solitamente per tale compito viene usato un prodotto proprietario di tipo Enterprise Service Bus. Tale prodotto proprietario nasconde all'interno di sé la complessità del coordinamento delle varie componenti. Con il tempo, modificare le configurazioni dell'ESB diventa sempre più difficile e si tende a non usare più l'ESB, ma a fare in modo che i componenti si chiamino l'uno con l'altro direttamente, ripresentando i problemi che l'ESB si era proposto di risolvere.
 
== Microservice ==
* '''Contratti di servizio''': WSDL (Web Services Description Language) è la specifica standard per la creazione di contratti di Web Services, un contratto definito avrà come conseguenza servizi più flessibili.
I microservice hanno uno stretto legame con l'architettura orientata ai servizi, infatti lo stile di sviluppo dei microservice è molto simile a quello promosso da chi sostiene SOA. La differenza sta nel fatto che spesso venivano usati degli Enterprise Service Bus per integrare delle applicazioni monolitiche.
 
Il tentativo di nascondere la complessità dell'integrazione all'interno degli Enterprise Service Bus, secondo Martin Fowler, ha portato a progetti che sono durati diversi anni e che sono costati milioni di dollari ma che non hanno prodotto alcun valore. Ancor peggio, hanno portato a modelli di conduzione centralizzata che hanno inibito i cambiamenti e reso difficile notare questi problemi.
* '''ESB''' (Enterprise Service Bus): La dorsale di pubblicazione dei servizi ed abilitazione delle applicazioni per accedervi. Inoltre include caratteristiche quali adattatori per i sistemi legacy, capacità di orchestrazione dei servizi, autorizzazione e autenticazione lato sicurezza, trasformazione dei dati, supporto per regole di business e capacità di monitorare i service-level agreement.
 
Scrive Martin Fowler:
==Bibliografia==
{{citazione| When we've talked about microservices a common question is whether this is just Service Oriented Architecture (SOA) that we saw a decade ago. There is merit to this point, because the microservice style is very similar to what some advocates of SOA have been in favor of. The problem, however, is that SOA means too many different things, and that most of the time that we come across something called "SOA" it's significantly different to the style we're describing here, usually due to a focus on ESBs used to integrate monolithic applications.
 
In particular we have seen so many botched implementations of service orientation - from the tendency to hide complexity away in ESB's, to failed multi-year initiatives that cost millions and deliver no value, to centralised governance models that actively inhibit change, that it is sometimes difficult to see past these problems.
 
Certainly, many of the techniques in use in the microservice community have grown from the experiences of developers integrating services in large organisations. The Tolerant Reader pattern is an example of this. Efforts to use the web have contributed, using simple protocols is another approach derived from these experiences - a reaction away from central standards that have reached a complexity that is, frankly, breathtaking. (Any time you need an ontology to manage your ontologies you know you are in deep trouble.)
 
This common manifestation of SOA has led some microservice advocates to reject the SOA label entirely, although others consider microservices to be one form of SOA, perhaps service orientation done right. Either way, the fact that SOA means such different things means it's valuable to have a term that more crisply defines this architectural style. |Martin Fowler, [http://martinfowler.com/articles/microservices.html Microservices]}}
 
== Note ==
* {{cite book | last=Barry | first=Douglas K. | title= Web Services and Service-Oriented Architectures: The Savvy Manager's Guide | publisher= Morgan Kaufmann Publishers | year=2003 | ___location=San Francisco | id=ISBN 1-55860-906-7 }}
<references/>
* {{cite book | last=Bieberstein | first=Norbert | coauthors= Sanjay Bose, Marc Fiammante, Keith Jones, Rawn Shah | title= Service-Oriented Architecture Compass - Business Value, Planning and Enterprise Roadmap | publisher= Pearson | year=2006 | ___location=Upper Saddle River | id=ISBN 0-13-987-0471-768 }}
* {{cite book | last=Bloomberg| first=Jason| coauthors= Ronald Schmelzer | title= Service- orient or Be Doomed| publisher= WILEY | year=2006 | ___location=Hoboken, New Yersey| id=ISBN 0-13-187002-5 }}
* {{cite book | last=Erl | first=Thomas | title= Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services | publisher= Prentice Hall PTR | year=2004 | ___location=Upper Saddle River | id=ISBN 0-13-142898-5}}
* {{cite book | last=Erl | first=Thomas | title= Service-Oriented Architecture: Concepts, Technology, and Design | publisher= Prentice Hall PTR | year=2005 | ___location=Upper Saddle River | id=ISBN 0-13-185858-0}}
* {{cite book | last=Hurwitz | first=Judith | coauthors=Robin Bloor, Carol Baroudi, Marcia Kaufman | title= Service Oriented Architecture for Dummies | publisher= Wiley | year=2006 | ___location=Hoboken | id=ISBN 0-470-05435-2}}
 
==Bibliografia==
* {{Cita web
* {{Cita libro | cognome=Barry | nome=Douglas K. | titolo= Web Services and Service-Oriented Architectures: The Savvy Manager's Guide | url=https://archive.org/details/webservicesservi0000barr | editore= Morgan Kaufmann Publishers | anno=2003 | città=San Francisco | isbn=1-55860-906-7 }}
| cognome = Mittal
* {{Cita libro | cognome=Bieberstein | nome=Norbert | coautori= Sanjay Bose, Marc Fiammante, Keith Jones, Rawn Shah | titolo= Service-Oriented Architecture Compass - Business Value, Planning and Enterprise Roadmap | editore= IBM Press| anno=2005 | città=Upper Saddle River | isbn=0-13-187002-5 }}
| nome = Kunal
* {{Cita libro | cognome=Bloomberg| nome=Jason| coautori= Ronald Schmelzer | titolo= Service- orient or Be Doomed| url=https://archive.org/details/serviceorientorb00bloo| editore= WILEY | anno=2006 | città=Hoboken, New Jersey| isbn=0-13-187002-5}}
| coautori =
* {{Cita libro | cognome=Erl | nome=Thomas | titolo= Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services | url=https://archive.org/details/serviceorienteda0000erlt_f1c5 | editore= Prentice Hall PTR | anno=2004 | città=Upper Saddle River | isbn=0-13-142898-5 }}
| anno = 2006
* {{Cita libro | cognome=Erl | nome=Thomas | titolo= Service-Oriented Architecture: Concepts, Technology, and Design | url=https://archive.org/details/serviceorienteda0000erlt_f1c5 | editore= Prentice Hall PTR | anno=2005 | città=Upper Saddle River | isbn=0-13-185858-0 }}
| url = http://www-128.ibm.com/developerworks/architecture/library/ar-soareq/
* {{Cita libro | cognome=Hurwitz | nome=Judith | coautori=Robin Bloor, Carol Baroudi, Marcia Kaufman | titolo= Service Oriented Architecture for Dummies | editore= Wiley | anno=2006 | città=Hoboken | isbn=0-470-05435-2 }}
| titolo = Requirements process for SOA projects, Part 1 of 3: Capturing requirements for an SOA application - Initial requirements to build out your SOA
* {{Cita web | cognome = Shan | nome = Tony | coautori = Hua, Winnie | anno = 2006 | url = http://www.irma-international.org/viewtitle/3073/ | titolo = A Service-Oriented Solution Framework for Internet Banking | formato = PDF | editore= International Journal of Web Services Research, Vol. 3, Issue 1, pp 29-48 }}
| formato = HTML | editore= IBM Developerworks
}}
* {{Cita web
| cognome = Shan
| nome = Tony
| coautori = Hua, Winnie
| anno = 2006
| url = http://www.idea-group.com/articles/details.asp?id=5523
| titolo = A Service-Oriented Solution Framework for Internet Banking
| formato = PDF | editore= International Journal of Web Services Research, Vol. 3, Issue 1, pp 29-48
}}
* {{Cita web
| cognome = Shan
Line 97 ⟶ 112:
| formato = PDF | editore= IEEE Software
}}
* {{citeCita booklibro | lastcognome=KrafzigPulier | firstnome=DirkEric | coauthorscoautori=KarlHugh Banke, Dirk SlamaTaylor | titletitolo= Understanding Enterprise SOA Service Oriented Architecture Best Practices | publishereditore= PrenticeManning Hall PTRPublications | yearanno=20042005 | ___locationcittà=Upper Saddle RiverGreenwich | idisbn=ISBN 01-13932394-14657559-91 }}
* {{cite book | last=Pulier | first=Eric | coauthors=Hugh Taylor | title= Understanding Enterprise SOA | publisher= Manning Publications | year=2005 | ___location=Greenwich | id=ISBN 1-932394-59-1}}
 
* {{Cita web
| cognome = SOA Reference Model Technical Committee
Line 108 ⟶ 121:
| formato = PDF | editore= OASIS
}}
* {{citeCita booklibro
| lastcognome = Various authors
| firstnome =
| yearanno = 2006
| url = httphttps://www.amazon.com/gp/product/1427600252/sr=8-1/qid=1155236512/ref=sr_1_1/002-5004521-0480820?ie=UTF8
| titletitolo = The Emergence of Grid and Service-Oriented IT: An Industry Vision for Business Success
| formattipo = Paperback | editore= Tabor Communications, Inc.
}}
* {{Cita web
| cognome = Wada
| nome = Hiroshi
| coautori = Suzuki, Junichi
| anno = 2006
| url = http://dssg.cs.umb.edu/projects/soa.html
| titolo = A Service-Oriented Design Framework for Secure Network Applications
| formato = PDF
| editore = In Proc. of the 30th IEEE International Conference on Computer Software and Applications Conference (COMPSAC 2006)
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20070128091802/http://dssg.cs.umb.edu/projects/soa.html
|dataarchivio = 28 gennaio 2007
}}
* {{Cita web
| cognome = Wada
| nome = Hiroshi
| coautori = Suzuki, Junichi
| anno = 2006
| url = http://dssg.cs.umb.edu/projects/soa.html
| titolo = A Model-Driven Development Framework for Non-Functional Aspects in Service Oriented Grids
| formato = PDF
| editore = In Proc. of 2nd IEEE International Conference on Autonomic and Autonomous Systems (ICAS 2006)
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20070128091802/http://dssg.cs.umb.edu/projects/soa.html
|dataarchivio = 28 gennaio 2007
}}
 
== Voci correlate ==
* [[Enterprise Service Bus]]
* [[Enterprise Application Integration]]
* [[XML]]
* [[Representational State Transfer]]
* [[Message-oriented middleware]]
* [[Data Distribution Service]]
 
== Altri progetti ==
{{interprogetto|preposizione=sulla}}
 
== Collegamenti esterni ==
*{{en}} Consorzio OASIS: [http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=soa-rm Modello di riferimento per le SOA]
*{{en}} InfoWorld: [https://web.archive.org/web/20060204060647/http://infoworld.com/techindex/portal/soa.html SOA News] Articoli sulle SOA
*{{cita web|1=http://colab.cim3.net/cgi-bin/wiki.pl?AnnouncementofSOACoP|2=Comunità di pratica sulle SOA|lingua=en|accesso=1 agosto 2007|urlarchivio=https://web.archive.org/web/20070813232434/http://colab.cim3.net/cgi-bin/wiki.pl?AnnouncementofSOACoP|dataarchivio=13 agosto 2007|urlmorto=sì}}
*{{en}} [https://web.archive.org/web/20060212051921/http://weblogs.java.net/blog/johnreynolds/archive/2005/01/the_soa_elevato.html La definizione di SOA di John Reynolds in due frasi] Articolo
*{{cita web|1=http://wiki.java.net/bin/view/Javapedia/ServiceOrientedArchitecture|2=Wiki su SOA nel sito java.net|lingua=en|accesso=14 febbraio 2006|urlarchivio=https://web.archive.org/web/20060228204752/http://wiki.java.net/bin/view/Javapedia/ServiceOrientedArchitecture|dataarchivio=28 febbraio 2006|urlmorto=sì}}
*{{en}} [https://web.archive.org/web/20170915191919/http://soa-zone.com/ SOA Zone] Blog molto consultato a livello industriale
*{{cita web|http://www.customers.com/articles/Service-Oriented-World-Cheat-Sheet/|"Service-Oriented World" di Patricia Seybold|lingua=en}}
 
=== Definizioni di Service-Oriented Architecture ===
==Collegamenti esterni==
* {{cita web|url=http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=soa-rm|titolo=Modello di Riferimento SOA di OASIS (SOA-RM)|lingua=en}}
*{{en}} IBM Systems Journal edition on SOA: [http://www.research.ibm.com/journal/sj44-4.html 12 journal papers]
* {{cita web|https://www.xml.com/pub/a/ws/2003/09/30/soa.html|XML.com Cos'è una service-oriented_architecture|lingua=en}}
*{{en}} InfoWorld: [http://infoworld.com/techindex/portal/soa.html SOA News]
* {{cita web|1=http://www.javaworld.com/javaworld/jw-06-2005/jw-0613-soa.html|2=Javaworld.com Cos'è una service-oriented_architecture|lingua=en|accesso=4 gennaio 2007|dataarchivio=6 giugno 2007|urlarchivio=https://web.archive.org/web/20070606190654/http://www.javaworld.com/javaworld/jw-06-2005/jw-0613-soa.html|urlmorto=sì}}
*{{en}} [[Capgemini]]: [http://www.capgemini.com/resources/thought_leadership/serviceoriented_enterprise_how_to_make_your_business_fast_flexible_and_responsive/ SOE: How to make your business fast, flexible and responsive - whitepaper]
* {{cita web|http://isp.webopedia.com/TERM/S/Service_Oriented_Architecture.html|Definizione tratta da Webopedia|lingua=en}}
*{{en}} [http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=soa-rm Reference Model for Service Oriented Architecture]
* {{cita web|1=http://soa.omg.org/|2=Definizione dell'Object Management Group|lingua=en|accesso=4 gennaio 2007|dataarchivio=7 dicembre 2006|urlarchivio=https://web.archive.org/web/20061207183601/http://soa.omg.org/|urlmorto=sì}}
*{{en}} [http://www.soa-project.com www.soa-project.com - Free and Independent SOA community Forum]
* {{cita web|1=http://searchwebservices.techtarget.com/gDefinition/0,294236,sid26_gci929153,00.html|2=Definizione di Whatis.com|lingua=en|accesso=4 gennaio 2007|dataarchivio=22 febbraio 2007|urlarchivio=https://web.archive.org/web/20070222101941/http://searchwebservices.techtarget.com/gDefinition/0,294236,sid26_gci929153,00.html|urlmorto=sì}}
*{{en}} IBM: [http://www-128.ibm.com/developerworks/soa developerWorks - SOA & Web services zone]
* {{cita web|1=http://www.service-architecture.com/web-services/articles/service-oriented_architecture_soa_definition.html|2=Web service e SOA|lingua=en|accesso=14 febbraio 2006|dataarchivio=11 febbraio 2011|urlarchivio=https://web.archive.org/web/20110211195040/http://www.service-architecture.com/web-services/articles/service-oriented_architecture_soa_definition.html|urlmorto=sì}}
*{{en}} [http://weblogs.java.net/blog/johnreynolds/archive/2005/01/the_soa_elevato.html John Reynolds' definition of SOA in two sentences]
* {{cita web|1=http://searchwebservices.techtarget.com/originalContent/0,289142,sid26_gci1017004,00.html|2=Definizioni da parte di esperti industriali|lingua=en|accesso=4 gennaio 2007|dataarchivio=10 novembre 2006|urlarchivio=https://web.archive.org/web/20061110141657/http://searchwebservices.techtarget.com/originalContent/0,289142,sid26_gci1017004,00.html|urlmorto=sì}}
*{{en}} [http://wiki.java.net/bin/view/Javapedia/ServiceOrientedArchitecture Sun Javapedia wiki article on SOA]
*{{en}} [http://www.service-architecture.com/web-services/articles/service-oriented_architecture_soa_definition.html SOA Definition]
*{{en}} [http://bobbreedlove.com/tech/soa.html Sito di uno degli autori della voce in inglese]
*{{en}} [http://webservices.xml.com/pub/a/ws/2003/09/30/soa.html What is Service-Oriented Architecture?]
*{{en}} [http://www.soacenter.com SOA Blueprints Specification]
*{{en}} [http://www.openwings.org/openwings-1.1/tutorial/Trail_Introduction/01_Introduction.html Article describing the history of SOA, from an Openwings perspective]
*{{en}} [http://soa-zone.com SOA Zone - an industry leading blog]
*{{en}} [http://www.theserverside.com/articles/article.tss?l=RiA RiA-SoA article]
*{{en}} [http://www.psgroup.com/detail.aspx?ID=562 PSGroup: SOA Cheat Sheet Paper]
*{{en}} [http://www.stratasoftware.com Best Practice for SOA]
*{{en}} [http://www.ibmpressbooks.com/bookstore/product.asp?isbn=0131870025&rl=1 Norbert Bieberstein et al. Service-Oriented Architecture Compass (Pearson Education, 2006)]
 
{{Controllo di autorità}}
[[Categoria:Web Service]]
{{Portale|internet}}
 
[[Categoria:Web service]]
[[af:Diensgeoriënteerde argitektuur]]
[[da:Serviceorienteret arkitektur]]
[[de:Serviceorientierte Architektur]]
[[en:Service-oriented architecture]]
[[es:Arquitectura orientada a servicios]]
[[fr:Architecture orientée services]]
[[he:ארכיטקטורה מוכוונת-שירותים]]
[[ja:サービス指向アーキテクチャ]]
[[nl:Service-oriëntatie]]
[[no:Tjenesteorientert arkitektur]]
[[pl:Architektura zorientowana na usługi]]
[[pt:SOA]]
[[ru:Сервисно-ориентированная архитектура]]
[[sv:SOA]]
[[vi:Service Oriented Architecture]]
[[zh:面向服务的架构]]