Descrizione
Al fine di ottimizzare i costi e di migliorare la gestione dell'IT, le aziende guardano sempre con maggiore interesse alle problematiche di governance dei processi e dei servizi aziendali. Fra i vari modelli di riferimento per la governance, SOA (Service Oriented Architecture) è quello più promettente e apprezzato. Il censimento dei servizi aziendali e la loro implementazione in una SOA permette di sviluppare e mantenere le applicazioni con minor sforzo consentendo il riutilizzo del codice e ottimizzando le comunicazioni fra le varie aree di competenza presenti all'interno di un'azienda.
Per molto tempo. le tecnologie dei web service e gli ESB (Enterprise Service Bus) si sono poste al vertice degli strumenti per implementazione di una SOA ma le tecnologie distribuite meno recenti (CORBA, DCOM, MQ,...) stanno rivivendo una seconda giovinezza anche a causa della presenza di nuovi framework di sviluppo e alle prestazioni di livello superiore. Inoltre, l'avvento del web 2.0 ha dato una spinta all'introduzione di servizi web in tecnologia REST.
Di SOA si parla molto ma: quali sono i tempi e i costi necessari per l'implementazione di una SOA? Quali sono le piattaforme e le tecnologie più promettenti per l'implementazione di una SOA? Quali sono le architetture e i pattern più utilizzati per progettare una SOA? Quali sono gli impatti organizzativi che derivano dall'implementazione di una SOA? Quali vantaggi derivano e quali rischi si corrono nell'implementazione di una SOA?
Il seminario, partendo dal confronto delle architetture di sviluppo tradizionali, introduce i concetti fondamentali su cui si basa una SOA descrivendone le funzionalità e le peculiarità tramite l'utilizzo di case study rappresentanti problemi reali.
Vengono poi affrontate le problematiche relative alla progettazione e all'implementazione di una SOA descrivendone gli aspetti metodologici, tecnologici e organizzativi.
Destinatari
- capi progetto
- analisti
- professionisti IT
- chiunque voglia approfondire gli aspetti legati alle SOA
Prerequisiti
Concetti base di progettazione e sviluppo applicazioni web
Requisiti per l'aula (in caso di corso in house)
Una connessione Internet funzionante per il portatile del docente
Contenuti
Introduzione a SOA
- Definizione di SOA
- Caratteristiche di una SOA
- Vantaggi e svantaggi di SOA
- Servizi e processi
- Cosa non è SOA
- Evoluzioni: web 2.0 e Cloud Computing
- Strumenti di infrastruttura (registry, repository,...)
Introdurre SOA in azienda
- SOA ed EAI
- SOA maturity model
- La strada verso SOA: principali passi da seguire
- Il SOA competence center
- Calcolo del ROI di una SOA
Progettare una SOA: il progetto dell'infrastruttura
- Architettura di riferimento
- Esempio di layer SOA
- Messaging Exchange Pattern (MEP)
- Tipologie di binding
- Enterprise Service Bus
- Altri strumenti di infrastruttura
Progettare una SOA: il progetto dei servizi
- Caratteristiche dei servizi SOA
- Classificazione dei servizi (tassonomia)
- Censimento dei servizi
- Architettura generale di un servizio
- Data model unificato
- Pattern SOA
- Conversione delle applicazioni esisteni in servizi
- Versioning
- Gestione delle transazioni
- Metodologie per la progettazione dei servizi
Progettare una SOA: integrazione con i processi
- Contesto di riferimento
- Workflow patterns
- Business process modelling
- BPM life cycle
- BPM suite
SOA e sicurezza
- Cenni sulle problematiche di sicurezza di una SOA
- SOA security model
- Strumenti per la sicurezza di una SOA
- SOA, sicurezza e standard
SOA governance
- Cos'è la governance
- Metadati per la governance
- Registry e repository
- Governance maturity model
- Funzioni base da garantire
- Ciclo di vita dei servizi
- SOA testing
Durata
3 giorni
|