Service Oriented Architectures



Documenti analoghi
Introduzione ai Web Services Alberto Polzonetti

SOA!= OO. Andrea Saltarello Software Managed Designs S.r.l. andrea.saltarello@manageddesigns.it

Pubblicazioni COBIT 5

B.P.S. Business Process Server ALLEGATO C10

SOA e Web Service SISTEMI INFORMATIVI MODULO II. Corso di Sistemi Informativi Modulo II A. A

API e socket per lo sviluppo di applicazioni Web Based

Guida all uso del web service SDMX

Ingegneria del Software. Business Object Technology

Corso di Amministrazione di Sistema Parte I ITIL 1

Presentazione di Cedac Software

Un approccio innovativo per il delivery di servizi in infrastrutture di nomadic computing

Stefano Mainetti Fondazione Politecnico di Milano

Sicurezza e Gestione delle Reti (di telecomunicazioni)

IS Governance. Francesco Clabot Consulenza di processo.

Il Progetto Piattaforma User Centric per l Internet dei Servizi

L'impatto della flessibilità sull'infrastruttura tecnologica. Luca Amato IT Architect, Global Technology Services, IBM Italia

Cloud Computing: alcuni punti fermi per non smarrirsi fra le nuvole

Web Service Architecture

Infrastrutture critiche e cloud: una convergenza possibile

Estendere Lean e Operational Excellence a tutta la Supply Chain

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini

Corso di Applicazioni Telematiche

E.S.B. Enterprise Service Bus ALLEGATO C11

> Visionest Business Protection

Copyright 2012 Binary System srl Piacenza ITALIA Via Coppalati, 6 P.IVA info@binarysystem.eu

L o. Walter Ambu japs: una soluzione agile (

WorkFlow Management Systems

WEBINAR: E.D.I. Cos è l EDI Problemi legati all EDI Weaver, la nostra soluzione Weaver per i vostri fornitori Weaver per i vostri clienti

Service Oriented Architecture what and why? QuickTime and a decompressor are needed to see this picture.

Distributed Object Computing

Cloud Computing - Soluzioni IBM per. Giovanni De Paola IBM Senior Consultant 17 Maggio 2010

Composizione e Coreografia di Web Services

BPEL: Business Process Execution Language

Gartner Group definisce il Cloud

1. BASI DI DATI: GENERALITÀ

Una piattaforma per la negoziazione di servizi business to business attraverso la rete Internet

Gestione delle Reti di Telecomunicazioni

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi

Service Design Programme

Il Building Information Modelling (BIM)

PRODUCT LIFECYCLE MANAGEMENT

A.A. 2006/2007 Laurea di Ingegneria Informatica. Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio

lem logic enterprise manager

AICA - Associazione Italiana per l Informatica ed il Calcolo Automatico. Certificazioni informatiche europee

Il servizio di registrazione contabile. che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili

tecnologie di cloud computing per il calcolo scientifico Presentazione stage per studenti triennali Università di Torino Mar 6, 2013

ALLINEARSI: IL DRIVER PER UNA INNOVAZIONE DI SUCCESSO!

SYMPHONY ENERGY MANAGER

02CIXPG Sistemi informativi aziendali

Lo scenario: la definizione di Internet

We take care of your buildings

ISAC. Company Profile

"CRM - CITIZEN RELATIONSHIP MANAGEMENT NELLE AMMINISTRAZIONI"

Fondazione CUOA, 21 giugno 2012

Costruire il futuro il valore delle scelte tecnologiche

IL RUOLO E LE COMPETENZE DEL SERVICE MANAGER

Interoperabilità e cooperazione applicativa tra sistemi informativi

Progettaz. e sviluppo Data Base

F ondazione Diritti Genetici. Biotecnologie tra scienza e società

Gli studi dell HCI si concentrano spesso sull interfaccia

Introduzione alle griglie computazionali LEZIONE N. 10. Università degli Studi di Napoli Federico II Corso di Laurea in Informatica III Anno

I PRINCIPI DELL EFFICIENZA PRODUTTIVA

Architetture software

Gruppo di lavoro 1 Metadati e RNDT. Incontro del 22 luglio 2014

Analisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

GRUPPO TELECOM ITALIA. Finsiel. Massimo Rabuffo Div. Pubblica Amministrazione Centrale

Introduzione al Semantic Web

Ingegneria del Software Testing. Corso di Ingegneria del Software Anno Accademico 2012/2013

LA NUOVA ISO 9001:2015

Business Intelligence Analytics: un opportunità per lo sviluppo. Alberto Daprà Vice Presidente Lombardia Informatica

IL PROGETTO BIP IN PIEMONTE

01KTF CV. Architetture distribuite per i sistemi infomativi aziendali. Presentazione del corso

Il sistema cartografico regionale Moka - Gis

CLOUD COMPUTING REFERENCE ARCHITECTURE: LE INDICAZIONI DEL NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY. Prima parte: Panoramica sugli attori

Il World Wide Web. Il Servizio World Wide Web (WWW) WWW WWW WWW WWW. Storia WWW: obbiettivi WWW: tecnologie Le Applicazioni Scenari Futuri.

Padova Smart City. Internet of Things. Alberto Corò

KON 3. Knowledge ON ONcology through ONtology

Il Cloud per aziende e pubbliche amministrazioni

Dema S.p.A. SUPPLIER QUALITY REQUIREMENTS FOR AVIO PROGRAMS REQUISITI QUALITÀ FORNITORI PER PROGRAMMI AVIO

Informatica per la comunicazione" - lezione 10 -

Implementing a new ADT based on the HL7 version 3 RIM. Esempio

Dispensa di database Access

Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML

2 Giornata sul G Cloud Introduzione

Software per Helpdesk

ManPro.Net: Principali caratteristiche del prodotto.

Strumenti di modellazione. Gabriella Trucco

AVVISO n Dicembre 2009

Attuatore a relè Manuale di istruzioni

Il cloud per la tua azienda.

MiFID. Mercati finanziari europei integrati ed efficienti. La nuova direttiva è in partenza.

Combinazioni serie IL-MIL + MOT

Introduzione a PowerSchedO

COME CREARE UN'APP INNOVATIVA

Elementi di Sicurezza e Privatezza Lezione 19 Web Application Fingerprintig

Elementi di Sicurezza e Privatezza Lezione 19 Web Application Fingerprintig. Chiara Braghin. chiara.braghin@unimi.it! Fingerprinting (1)

Ingegneria del Software

SOA è solo tecnologia? Consigli utili su come approcciare un progetto SOA. Service Oriented Architecture

LA SOLUZIONE PER I VOSTRI PROBLEMI

Transcript:

Service Oriented Architectures Introduction to SOA Fulvio Corno Dipartimento di Automatica e Informatica Politecnico di Torino 1

Definition Service Oriented Architecture A paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. It provides a uniform means to offer, discover, interact with and use capabilities to produce desired effects consistent with measurable preconditions and expectations. Source: OASIS (the Organization for the Advancement of Structured Information Standards) http://www.oasis-open.org/committees/tc_home.php? wg_abbrev=soa-rm 2

Commenting Wikipedia definition (1) Service Oriented Architecture (SOA) is a computer systems architectural style for creating and using business processes, packaged as services, throughout their lifecycle. Innanzitutto uno stile di progettazione, può essere realizzato con diverse tecnologie Focus sui processi di business Definizione di servizi rappresentativi dei processi 3

Commenting Wikipedia definition (2) SOA also defines and provisions the IT infrastructure to allow different applications to exchange data and participate in business processes. Strumenti IT che permettono la collaborazione Collaborazione tra applicazioni Processi di business concepiti come sequenze di scambi di dati Riconosce che un processo richiede la collaborazione di diverse aziende 4

Commenting Wikipedia definition (3) These functions are loosely coupled with the operating systems and programming languages underlying the applications. Nessuna dipendenza dalla tecnologia realizzativa dei sistemi informativi Introduzione di livelli di disaccoppiamento tra in sistema informativo e l interfaccia del servizio 5

Commenting Wikipedia definition (4) SOA separates functions into distinct units (services), which can be distributed over a network and can be combined and reused to create business applications. Elevata modularità dei servizi Pensare alle funzioni atomiche Pensare al possibile riuso di servizi Agile costruzione di nuove applicazioni (processi di business) ricombinando servizi esistenti Facile integrazione tra bisogni e capacità 6

Commenting Wikipedia definition (5) These services communicate with each other by passing data from one service to another, or by coordinating an activity between two or more services. Livello base: collaborazione mediante scambio di dati: Livello evoluto: collaborazione mediante coordinamento (orchestrazione) di più servizi Servizi che aggregano altri servizi 7

Commenting Wikipedia definition (6) SOA concepts are often seen as built upon, and evolving from older concepts of distributed computing and modular programming. Non c è nulla di nuovo, né nelle tecnologie, né nelle idee architetturali Fino a poco tempo fa mancavano gli strumenti per realizzare tale visione La novità è l applicazione in ambiti enterprise e la possibilità di costruire realmente servizi interoperabili 8

Evoluzione storica Sistemi informativi isolati EDI Electronic Data Interchange The transfer of structured data, by agreed message standards, from one computer system to another without human intervention Inter-company, application-to-application, sin dagli anni 80 Diversi standard di comunicazione (dal Modem ad Internet) Formato dati standardizzato Da EDI a SOA Maggior flessibilità Tecnologie web (http+xml) Servizi più modulari 9

What is a «Service»? Blocco di base = Servizio Services are intrinsically unassociated units of functionality, which have no calls to each other embedded in them. Funzionalità di alto livello, che fornisce un risultato utile dal punto di vista del processo di business Informazione richiesta Azione compiuta Complessità: Applicazione > Processo > Servizio > Funzione 10

Collaborazione tra servizi Instead of services embedding calls to each other in their source code, protocols are defined which describe how one or more services can talk to each other. This architecture then relies on a business process expert to link and sequence services, in a process known as orchestration, to meet a new or existing business system requirement. 11

Ruoli dei servizi Service provider Crea uno o più Web service, li descrive e li rende richiamabili Definisce condizioni d uso, prezzi, garanzie,... Registra i servizi in appositi motori di ricerca Service broker o Service Registry Raccoglie le definizioni di molti Service Provider e le rende ricercabili (pubblicamente o privatamente) dai client interessati Service requestor Il client che trova il servizio desiderato nella registry e lo chiama contattando il provider 12

Concetti principali (OASIS soa-rm) 13

Service Description The information needed in order to use, or consider using, a service. The purpose of description is to facilitate interaction and visibility, particularly when the participants are in different ownership domains, between participants in service interactions. Definizione esplicita dell interfaccia, della funzionalità, dei vincoli, di un servizio Permette ad un utilizzatore di un servizio di non dover contattare (né negoziare) con il fornitore del servizio sulle modalità di invocazione ed utilizzo 14

Visibility The capacity for those with needs and those with capabilities to be able to interact with each other. This is typically done by providing descriptions for such aspects as functions and technical requirements, related constraints and policies, and mechanisms for access or response. Le descrizioni dei servizi devono essere pubblicate, e facilmente accessibili Eventuali vincoli tecnici od organizzativi devono essere noti nella descrizione Visibility è l atto di rendere pubblica ed accessibile la Service Description Richiede: Awareness, Willingness, Rechability 15

Interaction Refers to the interaction between service providers and consumers. Typically mediated by the exchange of messages, an interaction proceeds through a series of information exchanges and invoked actions. The result of an interaction is a real world effect. L effettiva sequenza di scambi di informazioni che realizza l invocazione del servizio Lo scambio può essere semplice (richiesta-risposta) o più articolato Al termine dell interazione, si considerano compiuti gli effetti del servizio 16

Interaction: informazione associata Per compiere un interazione, la service description deve esplicitare: Behavior model Action model: specifica delle azioni che si possono richiedere ad un servizio e dei loro vincoli Process model: (eventuali) vincoli temporali tra le azioni che si possono richiedere Information model Structure: come sono composti i messaggi e quali dati essi contengono Semantics: cosa significano i vari dati contenuti nella structure 17

Real World Effect The actual result of using a service. This may be the return of information or the change in the state of entities (known or unknown) that are involved in the interaction. Servizi che restituiscono informazione Servizi che compiono delle azioni (che modificano lo stato del sistema informativo sottostante al servizio invocato) 18

Execution Context The set of technical and business elements that form a path between those with needs and those with capabilities and that permit service providers and consumers to interact. All interactions are grounded in a particular execution context, which permits service providers and consumers to interact and provides a decision point for any policies and contracts that may be in force. Infrastruttura tecnica per la collaborazione Informazioni aggiuntive per legare l utilizzo del servizio ad un contratto (commerciale) che ne permette l uso 19

Contract & Policy A policy represents some constraint or condition on the use, deployment or description of an owned entity as defined by any participant, while a contract represents an agreement by two or more parties. The Reference Model is focused primarily on the concept of policies and contracts as they apply to services. 20

Modello architetturale generale 21

In pratica... SOA è un concetto generale, altamente astratto Permette di concepire modelli organizzativi basati su collaborazione (compra-vendita) di servizi Permette di strutturare il sistema informativo in modo modulare e flessibile Insiste sulla descrizione esplicita di ogni servizio, in tutti i suoi aspetti (azioni, dati, processi, vincoli,...) Può essere implementata ricorrendo a varie soluzioni tecnologiche Web Services 22

References http://en.wikipedia.org/wiki/serviceoriented_architecture http://en.wikipedia.org/wiki/oasis_soa_reference_m odel http://www.oasis-open.org/committees/tc_home.php? wg_abbrev=soa-rm 23