Service Oriented Architecture
|
|
|
- Dorotea Carnevale
- 9 anni fa
- Просмотров:
Транскрипт
1 Service Oriented Architecture Università degli Studi di L Aquila [email protected] Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica Regione Abruzzo SED Siemens Taiprora TIM Italia
2 Architetture Distribuite» Un sistema distribuito consiste di un insieme di agenti software distinti che lavorano insieme per implementare una determinata funzionalità.» Gli agenti di un sistema distribuito non operano nello stesso ambiente, quindi devono comunicare tramite protocolli di rete.» La comunicazione via rete è poco affidabile: i designer di sistemi distribuiti devono tener conto di elementi quali latenza, concorrenza, malfunzionamenti parziali e temporanei, ecc. Web Service Architecture
3 Architetture Distribuite Concorrenza Sistema 1 Sistema 2 Rete Latenza Sistema 3 Malfunzionamenti parziali Web Service Architecture
4 Service Oriented Architecture» La Service Oriented Architecture è un tipo di sistema distribuito in cui gli agenti sono servizi.» Un servizio è un agente che esegue un operazione ben definita ( fornisce un servizio ) e può venire invocato dall esterno del suo contesto, che può essere anche un applicazione di grandi dimensioni.» Anche se un servizio è implementato esponendo una particolare funzionalità di un applicazione complessa, i suoi utenti devono considerarne solo l interfaccia, non il contesto.» Nella definizione di SOA si sottolinea inoltre il fatto che i servizi hanno interfacce verso la rete e comunicano usando formati e protocolli standard. Web Service Architecture
5 Service Oriented Architecture Applicazione SOAP/ HTTP Sistema 1 Sistema 2 Applicazione Applicazione Rete MIME/ SMTP Applicazione Sistema 3 Web Service Architecture
6 Elementi di una SOA» La SOA introduce, rispetto ai più generali sistemi distribuiti, il vincolo delle connessioni stateless, in cui tutti i dati relativi a una richiesta devono essere contenuti nella richiesta stessa (non si possono inviare dati correlati in richieste successive).» Per questo motivo, la descrizione di un servizio in una SOA è essenzialmente la descrizione dei messaggi scambiati.» Se la SOA è pubblicata, anche i descrittori pubblici dei servizi e dei messaggi diventano una sua parte integrante. Questi descrittori sono di solito in un formato comprensibile dal software, e costituiscono essi stessi dei messaggi (usati nella comunicazione con i sistemi di service discovery). Web Service Architecture
7 Elementi di una SOA» Riassumendo, i componenti chiave di una SOA sono: Gli agenti che forniscono e usano i servizi. I messaggi scambiati dai servizi. I meccanismi di comunicazione che permettono lo scambio dei messaggi. Opzionalmente, i descrittori dei servizi.» Per ciascuno di questi elementi esistono vari standard di implementazione/realizzazione, pubblici o proprietari. Ovviamente l enfasi attuale è sugli standard pubblici e aperti. Web Service Architecture
8 Componenti Software e Standard delle SOA» Una SOA comprende una serie di elementi software, tra i quali vanno citati: Un insieme di servizi, possibilmente sviluppati in linguaggi e su piattaforme differenti. - XML/XML Schema, WSDL/WSIF, SOAP, e tecnologie di livello più basso dipendenti dalla piattaforma (Java, C#, ecc.) Un Enterprise Service Bus (ESB) che gestisce sicurezza, reliability, logging, failover, routing dinamico - WS-Security, WS-Policy, Un sistema che gestisce l orchestrazione e il workflow dei servizi - BPEL, XSLT/Xquery Un software per il monitoriaggio delle attività di business (BAM, trasversale alla parte di orchestrazione e workflow) Web Service Architecture
9 Benefici delle SOA 9» L enfasi data ai messaggi, piuttosto che alle azioni risultanti, rende le SOA particolarmente trasparenti : Il flusso dei messaggi può essere ispezionato per determinare quali servizi vengono invocati e quali sono le parti attive nella SOA in qualunque istante. I sistemi di sicurezza, come i firewall, possono ispezionare a fondo la comunicazione, fino a comprenderne la semantica, e prendere decisioni accurate basandosi sulle politiche di sicurezza del sistema.» Tra i principali vantaggi derivanti dall uso di SOA (in alternativa alle applicazioni monolitiche ) possiamo citare: Riduzione del time-to-market Miglioramento dei processi di business Monitoring semplificato Riduzione dei costi Maggore di conformità agli standard
10 Riduzione del time-to-market 10» Molte caratteristiche delle SOA contribuiscono a uno sviluppo più rapido dei servizi finali: Design modulare (semplice composizione e raffinamento dei processi) Interfacce standard (semplice interazione tra servizi e processi diversi) Riutilizzo delle componenti Implementazione dichiarativa di processi e regole (BPEL, WSDL, ecc.) Semplice interfacciamento con i processi di business aziendali (grazie all isolamento dei processi di business dal codice dei servizi) Flessibilità, tempi di implementazione ridotti Semplicità di manutenzione
11 Miglioramento processi di business, monitoring semplificato 11» Progettazione, simulazione e analisi dei processi di business semplificata e facilmente mappabile sull implementazione concreta Il linguaggio BPEL è dotato di una grande varietà di tool di supporto che semplificano la definizione dei processi e la loro analisi L attività di una SOA, essendo realizzata tramite il solo scambio di messaggi tipati, è semplice da simulare e analizzare. Software specifici (BAM) rendono semplice il monitoraggio dei Key Performance Indicators nelle SOA» Maggiore automazione dei processi Il BPEL integra un efficace sistema di gestione degli errori (faults, compensation, termination) Le politiche di accesso e sicurezza possono anch esse essere specificate in maniera dichiarativa e realizzate automaticamente, senza necessità di introdurre codice specifico
12 Riduzione dei costi 12» I bassi costi di sviluppo delle SOA, soprattutto dopo un primo startup, sono dovuti principalmente ai seguenti fattori: Riuso dei servizi: più efficace e semplice da realizzare del normale riuso del codice sotto forma di librerie, ecc. Disaccoppiamento delle componenti: permette di organizzare lo sviluppo in maniera più agile e distribuita Ampia disponibilità di strumenti evoluti di sviluppo e gestione: spesso disponibili anche gratuitamente, gli strumenti usati per definire le SOA sono estremamente raffinati e formalizzati Facile integrazione: l integrazione dei servizi in processi avviene tramite sistemi centralizzati e l uso di standard aperti Interfacce standard: gli elementi delle SOA parlano la stessa lingua verso l esterno, rendendo semplice anche la creazione al volo di nuove forme di integrazione.
13 Conformità agli standard 13» Gli strumenti e i formalismi utilizzati per definire le SOA garantiscono un notevole livello di conformità agli standard industriali e ai generali requisiti di qualità del software, ad esempio: I processi di business (sviluppati col BPEL) sono autodocumentanti, come pure i singoli servizi (definiti tramite WSDL) I software di monitoraggio delle SOA permettono una facile verifica delle SLA I formati di scambio dati tra servizi sono basati su standard aperti quali SOAP Le politiche di sicurezza realizzate tramite WS-Security (XML- Encryption, XML-Signature ecc.) sono conformi ai più elevati standard di sicurezza oggi disponibili
14 Perché dovremmo usare le SOA? 14» Sistemi IT più agili, che possono essere adattati più rapidamente ai cambiamenti 38%» Maggiore riuso 36%» Gli utenti finali hanno accesso alle informazioni più rilevanti in tempo reale 30%» Ciclo di sviluppo abbreviato 29%» Più efficace collaborazione con i partner 24%» Automazione dei processi di business prima manuali 24%» Gli utenti finali utilizzano meno interfacce applicative per ottenere lo stesso risultato 23% Fonte: sondaggio InfoWorld, luglio 2006
15 15 Perché non usiamo le SOA?» Ostacoli tecnologici 20%» Mancanza di best practices 22%» Mancanza di un modello di governance 22%» Mancanza di competenze e formazione 33%» Ostacoli organizzativi 36%» Mancanza di giustificazione aziendale 42%» Carenza di budget 44% Fonte: sondaggio InfoWorld, luglio 2006
16 Modalità di introduzione delle SOA 16» Integrazione basata sulle SOA (opposta all integrazione point-to-point e proprietaria) invece di integrare sistemi preesistenti con metodologie proprietarie o invasive, li si può trasformare in servizi (tramite wrapping, ecc.) e usare gli strumenti SOA per integrarli.» Sviluppo di nuove applicazioni a componenti (opposto allo sviluppo di applicazioni monolitiche) Le nuove applicazioni possono essere pensate e realizzate a partire da servizi, massimizzando il riutilizzo del codice, fino a realizzare sistemi di binding dinamico (composizione a richiesta)» Modernizzazione di applicazioni legacy Reingegnerizzazione di applicazioni monolitiche, nel cui codice logica e processo (se non anche presentazione!) sono mescolate, in applicazioni con un process layer ben definito che interagisce con la logica di business all'interno della vecchia applicazione e/o con parti di logica estratti sotto forma si servizi standalone.
17 Riferimenti» OASIS SOA Reference Model TC open.org/committees/tc_home.php?wg_abbrev=soa -rm Web Service Architecture
Web Service Architecture
Giuseppe Della Penna Università degli Studi di L Aquila [email protected] http://dellapenna.univaq.it Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica
CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI
CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI Introduzione alle basi di dati (2) 2 Modelli dei dati, schemi e istanze (1) Nell approccio con basi di dati è fondamentale avere un certo livello di
AscotWeb - mediatore Versione dicembre 2015
AscotWeb - mediatore Versione 1.0.1 21 dicembre 2015 Approvazioni Il presente documento è stato approvato da: 20/05/16 12.17 2 Storia delle Modifiche Versione Data Descrizione 1.0 19/05/2016 Prima versione
Sistemi informativi secondo prospettive combinate
Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da
Findomestic: Il BPM costruito su un architettura SOA Multicanale
Findomestic: Il BPM costruito su un architettura SOA Multicanale Antonello Rossi Findomestic Responsabile evoluzioni applicative e DWH Silvano Laurenti Blue Reply Direttore Tecnico Chi è Findomestic? Il
Giacomo Fauser. Istituto Tecnico Settore Tecnologico Via Ricci, Novara PIANO DI LAVORO. Per l anno scolastico
Giacomo Fauser Istituto Tecnico Settore Tecnologico Via Ricci, 14 28100 Novara [email protected] PIANO DI LAVORO Per l anno scolastico 2018-2019 Professori: Materia: Bassi Francesco, Ragonesi Antonio ITP:
B.P.S. Business Process Server ALLEGATO C10
B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel
Interoperabilità e cooperazione applicativa tra sistemi informativi
Interoperabilità e cooperazione applicativa tra sistemi informativi Michele Ruta Dipartimento di Ingegneria Elettrica e dell Informazione Politecnico di Bari 1di 29 Indice Introduzione ai Port Community
Comuni «fuori dal comune»: Strumenti e tecnologie innovative
Comune di Iglesias Comune di Montemurlo Comuni «fuori dal comune»: Strumenti e tecnologie innovative Roma, 25 Maggio 2016 1 Strumenti tecnologici: la Piattaforma integrata TessERe e il motore KeySuite
I sistemi MES raccolgono i dati sulla produzione e li trasformano in informazioni a disposizione
PER GESTIRE L AZIENDA IN EVOLUZIONE I sistemi MES raccolgono i dati sulla produzione e li trasformano in informazioni a disposizione dell azienda. La soluzione 2Easy-MES è in grado di coprire al 100% le
Linguaggi di programmazione e astrazione
Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo
TECN.PROG.SIST.INF. I Socket Roberta Gerboni
2015 - Roberta Gerboni Socket e porte I sistemi operativi multitasking possono fare girare contemporaneamente più processi dove ogni processo può rendere disponibili anche più servizi. Questi devono essere
Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete
Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete Reti di calcolatori Protocolli di Trasmissione: Il modello ISO/OSI L architettura TCP/IP Protocolli di trasmissione Un protocollo di
Specifiche di Interfacciamento al Sistema Centralizzato Nazionale Targhe e Transiti (SCNTT)
DIPARTIMENTO DELLA PUBBLICA SICUREZZA Direzione Centrale dei Servizi Tecnico Logistici e della Gestione Patrimoniale Sistema Integrato di Videosorveglianza sviluppato nell ambito del progetto Vie Sicure
Gara n. 4139. Servizi informatici per la manutenzione ordinaria ed evolutiva delle applicazioni informatiche del GSE. SINTESI DELL APPALTO
Gara n. 4139 Servizi informatici per la manutenzione ordinaria ed evolutiva delle applicazioni informatiche del GSE. SINTESI DELL APPALTO Pagina 1 di 6 1. Premessa Il Gestore dei Servizi Energetici - GSE
Programma didattico. Sviluppare Applicazioni Distribuite in ambiente. Spring MVC
Programma didattico Sviluppare Applicazioni Distribuite in ambiente Spring MVC Programma del corso 1.Progettazione e Sviluppo Database Relazionali Questa competenza permette di Progettare e Sviluppare
ALISEO CONFIGURAZIONI DISPONIBILI PACKAGE ESTESO PACKAGE BASE MODULI AGGIUNTIVI. Accordi commerciali fornitori. Non conformità fornitori
ALISEO L APPLICATIVO PER IL FOOD CONFIGURAZIONI DISPONIBILI PACKAGE BASE PACKAGE ESTESO - Anagrafiche di base - Analisi costi articoli - Condizioni di vendita e listini - Accordi commerciali clienti -
Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 03/04 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta [email protected] http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 2
Resilient. Conformity to Guidelines IQ VISION. & Standards
Resilient Conformity to Guidelines IQ VISION & Standards Progettato per gestire edifici con singoli sistemi di controllo HVAC, fino a sistemi integrati complessi Fornisce ai proprietari di edifici e manager
Sistemi Distribuiti M A.A Esercitazione JBI. Un tipico scenario di integrazione
Alma Mater Studiorum - Università di Bologna Scuola di Ingegneria e Architettura Sistemi Distribuiti M A.A. 2016 2017 Esercitazione JBI Ing. Stefano Monti [email protected] Un tipico scenario di integrazione
BOX ONE, ERP PER SCATOLIFICI E CARTOTECNICHE. Metti le ali alla tua azienda!
BOX ONE, ERP PER SCATOLIFICI E CARTOTECNICHE Box - One Metti le ali alla tua azienda! BOX ONE SOLUZIONE COMPLETA E MODULARE 1 Box One è la soluzione gestionale dedicata alla gestione dell area produttiva
DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI
COMUNE DI PINEROLO MANUALE DI GESTIONE E CONSERVAZIONE DEI DOCUMENTI ALLEGATO N. 6 PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI PIANO DI SICUREZZA DEI DOCUMENTI INFORMATICI Articolo 1 Sicurezza fisica
IBM - IT Service Management 1
IBM - IT Service 1 IBM - IT Service 2 L IT si trasforma e richiede un modello operativo orientato ai Servizi IT Centro di Costo Operations Governance & CRM CRM IT - Azienda Strategy Organization Financial
Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione
Che cos e l Informatica Scienza dell elaborazione dell informazione Informatica generale non si riduce all utilizzo di strumenti (e.g. linguaggi di programmazione e basi di dati); si occupa del trattamento
Intesa Spa Ottobre 2015
Intesa Spa Ottobre 2015 2015 Retail T-Link RETAIL T-LINK INDICE DEI CONTENUTI 3 INDUSTRY TREND & DYNAMIC 4 ESIGENZE DEI CLIENTI 5 FOCUS SU AREE DI ATTIVITA 6 OVERVIEW DELLA SOLUZIONE 10 BENEFICI DELLA
Servizi di interscambio dati e cooperazione applicativa Guida alla gestione dei servizi web Mipaaf
Servizi di interscambio dati e cooperazione applicativa Indice 1 Introduzione... 3 2 Accesso ai servizi... 4 2.1 La richiesta di convenzione... 4 2.2 Le credenziali di accesso al sistema... 5 2.3 Impostazione
Company Profile IMOLA INFORMATICA
Company Profile IMOLA INFORMATICA Www.Imolinfo.it Imola è una società di consulenza rivolta al mondo dell Information & Communication Technology. È composta da un gruppo di professionisti del settore di
BIM Building Information Modeling
Green & Circular Economy 6 Novembre 2018 Rimini BIM Building Information Modeling Fabrizio Cumo Cos è il BIM Il Building Information Modeling è costituito da un database che permette di gestire le informazioni
Lo Standard OPC. Materiale Didattico: Dispense OPC UA Inglese e Italiano Esercizio Client OPC UA Java (stampare il file word e portarlo a lezione!
Lo Standard OPC Materiale Didattico: Dispense OPC UA Inglese e Italiano Esercizio Client OPC UA Java (stampare il file word e portarlo a lezione!) Dove si usa OPC? Perché OPC? Display Application Trend
SISTEMA UNICO E CENTRALIZZATO
SISTEMA UNICO E CENTRALIZZATO DIS-DYNAMICS INSURANCE SYSTEM DIS-DYNAMICS INSURANCE SYSTEM è una soluzione completa per le Compagnie ed i Gruppi assicurativi italiani ed internazionali. Grazie alla gestione
Comunicazione Digitale
Comunicazione Digitale Schema didattico di riferimento 1 1. Internet e le reti locali 1. Qual è la storia della rete Internet dagli albori ai giorni nostri 2. I tipi di rete, come si organizzano e agglomerano
Dematerializzare per Semplificare
1 Dematerializzare per Semplificare Dematerializzare non vuol dire solo semplificare. La semplificazione investe tutta la sfera della riorganizzazione dei processi, della trasparenza e dell assunzione
Ottimizzare l'elaborazione dei documenti aziendali in entrata e in uscita
Ottimizzare l'elaborazione dei documenti aziendali in entrata e in uscita Riduci i costi e migliora le interazioni tra cliente e fornitore con un sistema di flusso documentale Scenario I documenti aziendali
Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
