Internet, Security & Information Technologies

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Internet, Security & Information Technologies"

Transcript

1 Internet, Security & Information Technologies I sistemi distribuiti: lo standard CORBA Sommario Il Middleware Introduzione ai sistemi distribuiti e al concetto di middleware CORBA: concetti generali Introduzione a CORBA e modalità di interazione per applicazioni distribuite basate su CORBA Interface Definition Language Specifica dei servizi tramite interfacce Object Management Architecture Descrizione dell architettura di riferimento definita dall OMG Struttura dell ORB Parti costitutive fondamentali dell ORB e loro funzionalità I servizi CORBA Il concetto di servizio in CORBA e il Naming Service I sistemi distribuiti: lo standard CORBA - 2 -

2 Sistemi Distribuiti Definizione di sistema distribuito: insieme di computer autonomi, collegati da una rete, forniti di software progettato per applicazioni che coinvolgono diverse entità Workstations Personal computers Local Area Network WAN Network gateway File server Login, print e altri servizi I sistemi distribuiti: lo standard CORBA Sistemi Distribuiti Esempi e applicazioni In passato: sistemi multi-utente centralizzati Dal 70 in poi: evoluzione reti locali aumento della potenza delle singole stazioni UNIX con supporto alla comunicazione tra processi (4BSD) architetture client-server Network File System - RPC e NIS Applicazioni commerciali con accesso a database Wide area network application Accesso ad informazioni multimediali e applicazioni di conferenza I sistemi distribuiti: lo standard CORBA - 4 -

3 Sistemi distribuiti Caratteristiche Condivisione di risorse Sistemi aperti Concorrenza Scalabilità Fault tolerance Trasparenza Affidabilità Sicurezza I sistemi distribuiti: lo standard CORBA Middleware Supporto ai sistemi distribuiti Per la realizzazione di sistemi distribuiti e client/server si fa sempre più uso di piattaforme standard, il collante o la / di client/server, ciò che consente a parti diversi dell'applicazione di interagire: le piattaforme middleware Sono state specificate (ad esempio CORBA) per soddisfare molti dei requisiti individuati dall'intergalactic Bus Favoriscono l'evoluzione delle applicazioni distribuite I sistemi distribuiti: lo standard CORBA - 6 -

4 Middleware Definizione: software distribuito necessario per supportare l'interazione tra client e server Comprende: le API utilizzate dal client per invocare un servizio la trasmissione di informazioni sulla rete la ricezione dei risultati Sono escluse: il software che fornisce il servizio richiesto [sul server] l'interfaccia utente e la logica dell'applicazione [sul client] I sistemi distribuiti: lo standard CORBA Che cos'è il middleware? software che consente ai componenti di un sistema distribuito di interagire Applicazione 1 Applicazione 2 Applicazione 3 Applicazione N Middleware Macchina A Macchina B Network Macchina Z Macchina C I sistemi distribuiti: lo standard CORBA - 8 -

5 Middleware Caratteristiche Il suo compito principale è di creare un ambiente omogeneo, nascondendo alle applicazioni sovrastanti l'eterogeneità delle componenti di comunicazione sottostanti Si rende visibile alle parti del sistema come un insieme di servizi offerti localmente, che mascherano la trasmissione e distribuzione delle richieste sulla rete registrare l'oggetto nel sistema distribuito contattare altri oggetti inviare un messaggio I sistemi distribuiti: lo standard CORBA Middleware Posizionamento nel sistema SW Non fa parte dell'applicazione, Non incapsula alcun tipo di conoscenza relativa né alla logica dell'applicazione, né al dominio applicativo Esistono però middleware specializzati per domini particolari Non fa nemmeno parte del sistema operativo Nel senso tradizionale del temine Può essere nativamente integrato nel S.O. (e venduto con esso) o relativamente indipendente da esso I sistemi distribuiti: lo standard CORBA

6 Middleware Classi di Middleware Middleware generico Estensioni dei S.O. (o veri e propri S.O. distribuiti) stack di comunicazione, directory distribuite, autenticazione, RPC... consentono comunicazioni remote mediante chiamate di procedure (DCE, ONC+), invio di messaggi, pipe (Network OS) Middleware specifico Per database distribuiti (ODBC, sistemi proprietari) Per transazioni - OLTP (Tuxedo ATMI) Per la realizzazione di applicazioni di groupware (Lotus Notes) Per sistemi object-oriented (CORBA, DCOM, RMI) Per applicazioni Internet (HTTP, SSL) Per system management (SMTP) I sistemi distribuiti: lo standard CORBA Classi di Middleware Remote Procedure Call (RPC) È uno dei primi standard (OSF DCE, Sun ONC,...) Un client locale chiama una procedura eseguita sul server remoto come se fosse locale Molto semplice e povero Caratteristiche: Comunicazione sincrona, request/reply Linguaggi procedurali, nessuna metodologia OO Client, server e stub compilati con lo stesso linguaggio Interfacce con modifiche poco frequenti -> ricompilazione RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA

7 RPC Distributed Computing Model Client Client Client Client Server Server Server Client I client richiedono l'esecuzione di funzioni sul server I sistemi distribuiti: lo standard CORBA Classi di Middleware Transaction Processing Monitor Middleware per applicazioni su larga scala, con transazioni che devono essere coordinate fra più DB, in scenari real-time, con poca coordinazione fra i client Ogni interazione fra client e server è una transazione: begintransaction - operazioni - committransaction proprietà ACID (Atomicità, Concorrenza, Indipendenza, Durabilità) transazioni annidate e generalmente brevi Utili ma non sono un'infrastruttura di comunicazione general purpose RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA

8 TP Monitor Distributed Computing Model Client Client Client Client Client TP Monitor Server Server Server I client accedono alle risorse dei server tramite l intermediazione del monitor I sistemi distribuiti: lo standard CORBA Classi di Middleware Messaging Middleware Diversi approcci: peer-to-peer message queuing publish-subscribe (message bus) L'informazione è trasferita attraverso messaggi: contengono destinatario e dati RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA

9 Classi di Middleware Message Queuing Paradigma Store&Forward Non richiede una connessione diretta fra programmi i riceventi non devono esser necessariamente attivi quando viene loro spedito un messaggio Le code possono svolgere funzionalità di bridge fra protocolli I processi più lenti non vincolano le prestazioni complessive del sistema Adatto per: messaggi che devono essere assolutamente consegnati non real time nessuna coordinazione fra sender e receiver I sistemi distribuiti: lo standard CORBA Message Queue Communications Model program program program Coda di messaggi program Più programmi possono accedere alla stessa coda La coda di messaggi può risiedere su disco o in memoria I sistemi distribuiti: lo standard CORBA

10 Classi di Middleware Publish-Subscribe (Message Bus) i programmi sottoscrivono argomenti di interesse i messaggi sono relativi agli argomenti trasparenza alla localizzazione: i publisher non necessitano di sapere quali subscriber riceveranno i loro messaggi, ne dove sono localizzati i subscriber non necessitano di sapere quale publisher ha generato i dati Adatto per applicazioni in ambienti con caratteristiche: real time, event driven, one-to-many la scalabilita e l affidabilità del sistema sono importanti ridotto nnumero di canali di comunicazione un solo processo (la coda) deve essere sempre attivo I sistemi distribuiti: lo standard CORBA Publish-Subscribe Communication Model Publisher Publisher Publisher Logical Message Bus Subscriber Subscriber Subscriber I messaggi sono inviati dai publisher che li generano i subscriber ricevono i messaggi per cui si sono sottoscritti I sistemi distribuiti: lo standard CORBA

11 Classi di Middleware Object Request Broker (ORB) Simile ad un RPC Object Oriented classi, attributi e metodi, ereditarietà e polimorfismo Indipendenza dal linguaggio con cui sono scritte le applicazioni e dall'ambiente Standard in competizione: CORBA, Object Management Group DCOM, Microsoft RMI, Sun (javasoft) RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA ORB Distributed Computing Model Client Server Server Server/Client Server Client Server/Client Server/Client Client Un programma può essere sia client che server I sistemi distribuiti: lo standard CORBA

12 ORB Common ORB Arichitecture È uno dei primi esempi di middleware ad oggetti Permette di invocare metodi appartenenti ad oggetti remoti, in modo statico o dinamico CORBA 2.0 (1994), architettura inter-orb basata su TCP/IP Sono stati specificati servizi aggiuntivi (naming, event, traader, Security, Transaction, Persistency, Messaging ecc.) Ampia accettazione dello standard: contatti con altre organizzazioni di standardizzazione e produttori di software Attualmente notevole evoluzione dei prodotti commerciali (VisiBroker 4.0): scalabilità e robustezza Implementazione commerciale di vari servizi CORBA RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA ORB Java RMI Per comunicazioni esclusivamente Java-to-Java Simile a CORBA ma più semplice Non usa IIOP perchè interoperabilità già garantita Vantaggi su CORBA: garbage collection automatica per gli oggetti nessuna necessità di IDL: interfaccia specificata in Java può trasferire per valore oggetti Java (serializzazione) RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA

13 ORB DCOM Soluzione Microsoft basata su tecnologia COM/OLE Oggetti ActiveX manipolabili da remoto usando DCOM mercato diffuso per componenti ActiveX Per soluzioni Windows only può essere vantaggioso: DCOM è parte del sistema operativo DCOM è ben supportato con vari tool DCOM fornisce generalmente prestazioni migliori di CORBA MIDL: Microsoft IDL molto diverso da CORBA IDL versione estesa di DCE IDL RPC TP Monitor MSG: queue pub/sub ORB: CORBA RMI DCOM I sistemi distribuiti: lo standard CORBA Sommario Il Middleware Introduzione ai sistemi distribuiti e al concetto di middleware CORBA: concetti generali Introduzione a CORBA e modalità di interazione per applicazioni distribuite basate su CORBA Interface Definition Language Specifica dei servizi tramite interfacce Object Management Architecture Descrizione dell architettura di riferimento definita dall OMG Struttura dell ORB Parti costitutive fondamentali dell ORB e loro funzionalità I servizi CORBA Il concetto di servizio in CORBA e il Naming Service I sistemi distribuiti: lo standard CORBA

14 Il problema e la proposta OMG Ci si trova a dover realizzare: Sistemi distribuiti su vasta scala Sistemi eterogenei, costituiti da piattaforme hardware e software estremamente diverse È necessario che i componenti del sistema distribuito possano interoperare L'approccio OMG: Definire un'architettura di riferimento object oriented, basata sul concetto di interfaccia di un componente La conformità con l'architettura di riferimento dovrebbe garantire l'interoperabilità I sistemi distribuiti: lo standard CORBA Perché Object Oriented Dal punto di vista dell'utente: Facilità d'uso delle interfacce utenti object-oriented Integrabilità di componenti sviluppati indipendentemente Condivisione di oggetti che svolgono funzioni comuni Wrapping di applicazioni legacy (anche non object oriented) Dal punto di vista dello sviluppatore: Modularizzazione delle applicazioni Costruzione incrementale del sistema Riuso dei componenti I sistemi distribuiti: lo standard CORBA

15 OMG: organismo di standardizzazione OMG (Object Management Group), attivo dal 1989 nella definizione del bus software uno dei primi esempi di middleware ad oggetti ORB (Object Request Broker), permette di invocare metodi appartenenti ad oggetti remoti, in modo statico o dinamico CORBA 2.0 (1994), architettura inter-orb basata su TCP/IP (e opzionalmente su DCE) il bus (ORB) è estensibile con servizi modulari (es. comunicazione ad eventi, transazioni, licenze, ecc.) Application Objects Common Facilities Object Request Broker (ORB) CORBAservices I sistemi distribuiti: lo standard CORBA CORBA Common: Standard proposto dall'omg Architecture: Sistema completo di riferimento Object: Modellazione della realtà ad oggetti Broker: Infrastruttura Request: di mediazione e Comunicazione supporto alla basata sul comunicazione paradigma richiesta/risposta I sistemi distribuiti: lo standard CORBA

16 Il modello ad oggetti L Object Management Architecture (OMA) definisce un modello parziale della computazione che include le caratteristiche principali della tecnologia ad oggetti Un sistema ad oggetti è visto come un insieme di oggetti in cui i client possono richiedere un servizio agli oggetti server senza sapere in che modo il server realizza il servizio qual è il codice da eseguire, qual è il formato dei dati Un client è schermato da un'interfaccia rispetto al modo in cui un server è realizzato I sistemi distribuiti: lo standard CORBA Il concetto di oggetto in CORBA Un oggetto in CORBA è una entità che: incapsula dati e operazioni ha un'interfaccia ben definita è univocamente identificabile è in grado di eseguire i servizi richiesti da un client può rappresentare un oggetto del mondo reale Nota: nella visione CORBA, i client non devono necessariamente essere oggetti, anche se nelle situazioni più comuni un'entità si può comportare sia da client che da server I sistemi distribuiti: lo standard CORBA

17 Il paradigma richesta-risposta risposta La comunicazione fra oggetti in un sistema ad oggetti avviene (logicamente) mediante scambio di messaggi una richiesta viene inviata da un client ad un oggetto per richiedere un servizio Una richiesta è costituita dal nome di una operazione, dall'identificativo dell'oggetto server, dai parametri dell'operazione, se necessari, e dal contesto in cui svolgere l'operazione, se necessario Ricevuta una richiesta, in base a questa l'oggetto server sceglie di eseguire un particolare metodo (cioè codice) e restituisce i risultati prodotti o segnala che si è verificata una condizione anomala tramite la restituzione di un'eccezione I sistemi distribuiti: lo standard CORBA Applicazioni ad oggetti Ogni oggetto è preposto a svolgere determinate funzionalità Interscambio di messaggi Su un unica macchina Applicazione sviluppata ad oggetti obj Elaborazione dati Interfaccia grafica Gestione profilo utente Accesso al DB obj Codice chiuso : stesso linguaggio, stesso SO, unica macchina DataBase I sistemi distribuiti: lo standard CORBA

18 Esigenze attuali: Intranet (e Internet) Singole entità delocalizzate e cooperanti in rete Vendite A R&S Amministrazione Produzione Vendite B Intranet Ufficio Mobile Sistema informativo aziendale di rete che utilizza, per interconnettere le proprie componenti interne, una infrastruttura di telecomunicazione privata basata sui protocolli di Internet I sistemi distribuiti: lo standard CORBA CORBA e oggetti distribuiti CORBA definisce un architettura aperta in cui possono interoperare oggetti con caratteristiche diverse Ciascun oggetto può essere in esecuzione su un sistema operativo diverso ed essere implementato in un linguaggio diverso Ciascun oggetto contiene una parte dell'intelligenza complessiva del sistema distribuito Grande flessibilità: è possibile distribuire gli oggetti sulla rete a seconda delle esigenze Windows OS Mac OS Obj4-C Rete di comunicazione (Internet) Windows OS Obj5-Java Obj1-C++ Obj2-Java Solaris OS Obj3-Cobol I sistemi distribuiti: lo standard CORBA

19 CORBA e funzionalità client-server Oggetto server: Offre un servizio agli altri oggetti Può utilizzare i servizi di altri oggetti per offrire un servizio più elaborato Oggetto client: Accede ai servizi messi a disposizione dagli oggetti server Mac OS Obj4-C Rete di comunicazione (Internet) Windows OS Obj5-Java 1-Service request Windows OS 5-Service response Obj1- C++ Obj2-Java Obj3-Cobol Solaris OS Internal objects 2-internal operations 3-service request 4-service response I sistemi distribuiti: lo standard CORBA CORBA Object Request Broker: Caratteristiche Client Server CORBA API CORBA Object Adapter Object Request Broker Network Object Request Broker Consente di costruire i singoli oggetti senza preoccuparsi della distribuzione Gestisce la comunicazione fra oggetti distribuiti su di una rete Rende la comunicazione fra oggetti distribuiti analoga a quella fra oggetti locali I sistemi distribuiti: lo standard CORBA

20 CORBA Funzionalità dell'orb Intercetta le chiamate di metodi Si occupa di trovare l'oggetto destinatario dell'invocazione Trasferisce i parametri all'oggetto chiamato Invoca il metodo Restituisce il valori di ritorno al chiamante Il client vede solamente una interfaccia dal lato server Non si deve preoccupare della localizzazione del server Non deve sapere il tipo di linguaggio utilizzato dal server Deve disinteressarsi del sistema operativo utilizzato dal server Obj client Client domain Obj server ORB I sistemi distribuiti: lo standard CORBA Obj server CORBA Come descrivere i servizi offerti? Ogni oggetto server descrive le funzionalità che mette a disposizione tramite un'interfaccia Un'interfaccia contiene solamente la signature dei metodi (funzioni o operazioni) che descrivono la sintassi del servizio La semantica è definita dall'oggetto server che esegue determinate operazioni a seguito di una richiesta del servizio Per rendere la descrizione del servizio indipendente dal linguaggio utilizzato dagli oggetti CORBA definisce un linguaggio apposito (IDL) per descrivere le interfacce Interface Definition Language I sistemi distribuiti: lo standard CORBA

21 Sommario Il Middleware Introduzione ai sistemi distribuiti e al concetto di middleware CORBA: concetti generali Introduzione a CORBA e modalità di interazione per applicazioni distribuite basate su CORBA Interface Definition Language Specifica dei servizi tramite interfacce Object Management Architecture Descrizione dell architettura di riferimento definita dall OMG Struttura dell ORB Parti costitutive fondamentali dell ORB e loro funzionalità I servizi CORBA Il concetto di servizio in CORBA e il Naming Service I sistemi distribuiti: lo standard CORBA Oggetti CORBA ed interfacce IDL Definendo un unico linguaggio, tutti gli oggetti parlano la stessa lingua nella comunicazione inter-oggetto Ciascun oggetto convertirà poi la specifica IDL nelle operazioni corrispondenti al linguaggio utilizzato (C, C++, Java, Cobol, ) Mac OS Obj4-C IDL Rete di comunicazione (Internet) Windows OS IDLObj1-C++ Obj5-Java IDL IDLObj3-Cobol Windows OS Solaris OS I sistemi distribuiti: lo standard CORBA

22 Interface Definition Language Interoperabilità (1) Attualmente esistono correlazioni (binding) fra IDL e C, C++, Ada, Smalltalk, Java (COBOL, ObjectiveC) La traduzione da IDL verso un linguaggio specifico permette agli sviluppatori degli oggetti di lavorare con il linguaggio nativo da loro prescelto C C++ Smalltalk Ada COBOL Java IDL IDL IDL IDL IDL IDL Object Request Broker (ORB) I sistemi distribuiti: lo standard CORBA Interface Definition Language Interoperabilità (2) CORBA si preoccupa poi di effettuare le dovute conversioni della sintassi e del formalismo dei dati tipici di ogni linguaggio in dei formati standard C C++SmalltalkAda COBOL Java C C++SmalltalkAda COBOL Java IDL IDL IDL IDL IDL IDL IDL IDL IDL IDL IDL IDL Client Server Object Request Broker (ORB) I sistemi distribuiti: lo standard CORBA

23 Interface Definition Language ORB e CORBA CORBA è l'architettura di riferimento per la costruzione di ORB (software bus) Gli oggetti che si affacciano sul bus descrivono i servizi che mettono a disposizione definendone le interfacce mediante un Interface Definition Language (IDL) Le interfacce descritte con IDL costituiscono delle specifiche; le implementazioni possono essere realizzate con un linguaggio qualsiasi (per cui esista un mapping IDL) Oggetti con implementazioni scritte in linguaggi diversi possono interoperare (richiamare reciprocamente i metodi) Oggetti collegati ad ORB diversi (anche di venditori diversi) possono interoperare (CORBA 2.0) I sistemi distribuiti: lo standard CORBA Interface Definition Language Consente di separare le interfacce dalle implementazioni degli oggetti: supporta l'ereditarietà multipla ed il controllo statico dei tipi è indipendente dal linguaggio di programmazione utilizzato per implementare gli oggetti (mapping per linguaggi diversi: C, C++, SmallTalk, Java,...) non è un linguaggio di programmazione, ma un linguaggio per la specifica di interfacce È definito in modo da consentire un utilizzo sia statico che dinamico L'IDL ha una sintassi simile a quella del C++/Java Il compilatore IDL supporta il pre-processing in stile C++ (#include) I sistemi distribuiti: lo standard CORBA

24 Interface Definition Language Caratteristiche generali Un'interfaccia IDL definisce l'insieme di tipi, costanti, eccezioni, attributi ed operazioni messi a disposizione da un oggetto server Ogni interfaccia ha un nome e può essere definita a partire da una o più interfacce esistenti (ereditarietà multipla) l'interfaccia derivata può aggiungere nuovi elementi non è possibile ereditare da interfacce diverse che definiscono lo stesso attributo o la stessa operazione le ambiguità si risolvono qualificando l'elemento con il nome dell'interfaccia (::) I sistemi distribuiti: lo standard CORBA Interface Definition Language Interfaccia IDL degli oggetti Un server fornisce un insieme di servizi specificati dall'interfaccia saldo() Client utente bancomat Invocazione metodi remoti operazioni di consultazione e prelievo saldo(), prelievo() e estrattoconto(): unici metodi che possono esser invocati sull'oggetto remoto estrattoconto() Server oggetto conto corrente prelievo() I sistemi distribuiti: lo standard CORBA

25 Interface Definition Language Struttura di una interfaccia #include MyInterface.idl" module <identifier> { <type declarations>; <constant declarations>; <exception declarations>; interface <identifier> [:<inheritance>] { <type declarations>; <constant declarations>; <attribute declarations>; <exception declarations>; [<op_type>] <method_identifier> (<parameters>) [raises exception] [context]; }; }; interface <identifier> [:<inheritance>] { }; Include le strutture dati definite in un'altra interfaccia IDL Definisce un Name Space Definisce una interfaccia Definisce un metodo Definisce una interfaccia I sistemi distribuiti: lo standard CORBA Interface Definition Language Moduli Il modulo IDL coincide con il costrutto di modularizzazione tipico dei linguaggi di programmazione (scope di nomi) Può racchiudere più interfacce È analogo ai package di Java, che possono includere più di una classe module Global { typedef... interface B... }; Serve per introdurre dei livelli di gerarchia nello spazio delle interfacce IDL I sistemi distribuiti: lo standard CORBA

26 Interface Definition Language Costanti e tipi di dati All'interno di un interfaccia o modulo è possibile dichiarare entità con valori costanti (espressioni costanti) const int MAX = MIN + LEN Tipi di dati: Sono utilizzati per descrivere i valori accettati in CORBA per i parametri, le eccezioni ed i valori di ritorno Due categorie: di base (basic) e complessi (constructed) short, long, unsigned long, unsigned short, float, double, char, boolean, octet enum, string, struct, array, union, sequence, any I sistemi distribuiti: lo standard CORBA Interface Definition Language Tipi di dati complessi È possibile associare un nome alla definizione di un nuovo tipo (typedef) Matrice di long Esempio di tipi complessi: (long[][]) Sequence typedef sequence < sequence<long> > DblSeq Strutture struct Service { string serviceid; string servicename; }; Enumeration enum SessionState { Active, Suspended, Terminated }; IDL2Java => Classe Java (Service) con due stringhe come attributi (serviceid, servicename) IDL2Java => Classe Java (SessionState) con tre interi (0-Active, 1-Suspended, 2-Terminated) I sistemi distribuiti: lo standard CORBA

27 Interface Definition Language Attributi All'interno di una interfaccia è possibile dichiarare attributi, che corrispondono logicamente ad una coppia di operazioni che servono per impostare/modificare ed una per leggere il valore dell'attributo L'implementazione fornisce automaticamente i metodi get e set per prelevare e modificare il valore dell'attributo Nel caso readonly vi è il solo metodo get attribute float radius; readonly attribute position_t position; Tipo dell'attributo Nome dell'attributo I sistemi distribuiti: lo standard CORBA Interface Definition Language Operazioni Le operazioni vengono dichiarate in un formato simile alle funzioni C, specificando i parametri, i valori di ritorno e l'elenco delle eccezioni che possono sollevare I parametri IDL, diversamente ad es. dalle interfacce RMI, possono essere: Parametri di input - passati dal client al server (in) Parametri di output - dal server al client (out) Parametri di input-output - entrambe le direzioni (inout) void search(in Code what, out Item el, inout string param) raises (NotFound) I sistemi distribuiti: lo standard CORBA

28 Interface Definition Language Eccezioni Le eccezioni possono essere dichiarate come strutture exception NotFound {string <N> what} Ad esempio, il mapping idl2java converte l'eccezione in una classe che può essere istanziata e restituita come risultato di una invocazione final public class NotFound extends org.omg.corba.userexception {//costruttori, variabili} Possono essere sollevate da operazioni chiamate e gestite dal chiamante Il risultato di una invocazione può essere una eccezione Il client deve catturare le eccezioni e gestirle con una propria semantica CORBA definisce un insieme di eccezioni standard I sistemi distribuiti: lo standard CORBA Interface Definition Language Interfacce ed ereditarietà interface Base { const int N } Base Metodi interfaccia Base // interfaccia che eredita da Base interface Derived : Base { const int M typedef } Derived Metodi interfaccia Derived Metodi ereditati dall'interfaccia Base I sistemi distribuiti: lo standard CORBA

29 Interface Definition Language Mapping verso più linguaggi I tipi definiti in IDL devono avere dei corrispondenti negli specifici linguaggi Esempio: IDL string idl2java Idl2cpp char * Java.lang.String I sistemi distribuiti: lo standard CORBA Interface Definition Language Esempio di interfaccia IDL module GestioneConto { struct movimento { string data; float importo_movimento; }; typedef sequence <movimento> lista_operaz; interface Conto { attribute string name; float saldo(in string codice_conto); lista_operaz estrattoconto(in string codice_conto); void prelievo(in string codice_conto, in float quota); }; }; Client Server I sistemi distribuiti: lo standard CORBA

30 Interface Definition Language Mapping IDL to Java Supponendo di voler scrivere un oggetto in Java, è necessario convertire l'interfaccia IDL in un oggetto Java Dominio IDL GestioneConto.idl idl2java compiler Dominio Java Insieme di classi Java module GestioneConto struct movimento interface Conto package GestioneConto final class movimento public interface Conto extends org.omg.corba.object Il compilatore genera anche altre classi utili al server ed al client I sistemi distribuiti: lo standard CORBA Mapping di una struct IDL-Java La struct movimento viene mappata in una classe Java final che contiene i dati della struct come attributi della classe Dominio IDL struct movimento { string data; float importo_movimento; }; Dominio Java package GestioneConto; final public class movimento { public java.lang.string data; public float importo_movimento; public movimento() {} public movimento( java.lang.string data, float importo_movimento) { this.data = data; this.importo_movimento = importo_movimento; } } I sistemi distribuiti: lo standard CORBA

31 Mapping di un attributo IDL-Java L attributo name viene reso accessibile tramite i due metodi di get e di set Dominio IDL attribute string name; Dominio Java package GestioneConto; public interface Conto extends GestioneConto.ContoOperations package GestioneConto; public interface ContoOperations { public java.lang.string name(); public void name (java.lang.string name); } I sistemi distribuiti: lo standard CORBA Mapping di un interfaccia IDL-Java L'interfaccia IDL viene convertita in un'interfaccia Java che possiede gli stessi metodi Dominio IDL interface Conto { float saldo(in string codice_conto); lista_operaz estrattoconto(in string codice_conto); void prelievo(in string codice_conto, in float quota); }; Dominio Java package GestioneConto; public interface Conto extends GestioneConto.ContoOperations package GestioneConto; public interface ContoOperations { public float saldo (java.lang.string codice_conto);public GestioneConto.movimento[] estrattoconto (java.lang.string codice_conto); public void prelievo (java.lang.string codice_conto, float quota); } I sistemi distribuiti: lo standard CORBA

32 Considerazioni sul mapping Il risultato della compilazione produce un insieme di oggetti con cui il programmatore è familiare Questa conversione nasconde l'eterogeneità dei linguaggi con cui sono implementati gli oggetti presenti nel sistema distribuito In generale è molto utile conoscere la sintassi dell'idl L'OMG ha definito il mapping per tutti i linguaggi precedentemente visti È abbastanza superfluo sapere la sintassi del mapping con il linguaggio di interesse Può essere vista di volta in volta sulla base del risultato generato dal compilatore IDL I sistemi distribuiti: lo standard CORBA Conclusioni IDL Client e server scritti in diversi linguaggi che hanno un mapping con l IDL Mondo Java Oggetto client invocazione Comunicazioni IDL Invocazione metodo interfaccia IDL Restituzione valori output Mondo C++ Interfaccia IDL Oggetto Server Codice metodo1 Es: Java su Windows NT/9x Es: C++ su Solaris I sistemi distribuiti: lo standard CORBA

Le caratteristiche di interoperabilità del Terrapack 32 M

Le caratteristiche di interoperabilità del Terrapack 32 M I T P E l e t t r o n i c a Le caratteristiche di interoperabilità del Terrapack 32 M M. Guerriero*, V. Ferrara**, L. de Santis*** * ITP Elettronica ** Dipartimento di Ingegneria Elettronica Univ. La Sapienza

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Programmazione di rete in Java

Programmazione di rete in Java Programmazione di rete in Java Reti di calcolatori Una rete di calcolatori è un sistema che permette la condivisione di dati informativi e risorse (sia hardware sia software) tra diversi calcolatori. Lo

Dettagli

Corso di Programmazione ad Oggetti

Corso di Programmazione ad Oggetti Corso di Programmazione ad Oggetti Introduzione alla programmazione ad oggetti a.a. 2008/2009 Claudio De Stefano 1 La programmazione modulare Un programma può essere visto come un insieme di moduli che

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

più del mercato applicazioni dei processi modificato. Reply www.reply.eu

più del mercato applicazioni dei processi modificato. Reply www.reply.eu SOA IN AMBITO TELCO Al fine di ottimizzare i costi e di migliorare la gestione dell'it, le aziende guardano, sempre più con maggiore interesse, alle problematiche di gestionee ed ottimizzazione dei processi

Dettagli

UML Component and Deployment diagram

UML Component and Deployment diagram UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione

Dettagli

Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL)

Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL) Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Integrazione di servizi: Enterprise Service Bus (ESB) e Business Process Execution Language (BPEL) Corso di Sistemi Distribuiti Stefano

Dettagli

BPEL: Business Process Execution Language

BPEL: Business Process Execution Language Ingegneria dei processi aziendali BPEL: Business Process Execution Language Ghilardi Dario 753708 Manenti Andrea 755454 Docente: Prof. Ernesto Damiani BPEL - definizione Business Process Execution Language

Dettagli

Introduzione. E un sistema EAI molto flessibile, semplice ed efficace:

Introduzione. E un sistema EAI molto flessibile, semplice ed efficace: Overview tecnica Introduzione E un sistema EAI molto flessibile, semplice ed efficace: Introduce un architettura ESB nella realtà del cliente Si basa su standard aperti Utilizza un qualsiasi Application

Dettagli

Introduzione alla Programmazione ad Oggetti in C++

Introduzione alla Programmazione ad Oggetti in C++ Introduzione alla Programmazione ad Oggetti in C++ Lezione 1 Cosa è la Programmazione Orientata agli Oggetti Metodologia per costruire prodotti software di grosse dimensioni che siano affidabili e facilmente

Dettagli

B.P.S. Business Process Server ALLEGATO C10

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

Dettagli

Le Reti Informatiche

Le Reti Informatiche Le Reti Informatiche modulo 10 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Nomenclatura: 1 La rappresentazione di uno schema richiede una serie di abbreviazioni per i vari componenti. Seguiremo

Dettagli

Oggetti Lezione 3. aspetti generali e definizione di classi I

Oggetti Lezione 3. aspetti generali e definizione di classi I Programmazione a Oggetti Lezione 3 Il linguaggio Java: aspetti generali e definizione di classi I Sommario Storia e Motivazioni Definizione di Classi Campi e Metodi Istanziazione di oggetti Introduzione

Dettagli

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti

Scuola Specializzazione Istruzione Superiore. Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Scuola Specializzazione Istruzione Superiore Object Oriented Programming (OOP) Introduzione alla programmazione orientata agli oggetti Michele Batocchi ITC Vittorio Emanuele II Perugia A.S. 2007/2008 Introduzione

Dettagli

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali

Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Riusabilità del software - Catalogo delle applicazioni: Applicativo verticale Applicazione: DoQui/Index - Motore di gestione dei contenuti digitali Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese Inter Process Communication Laboratorio Software 2008-2009 C. Brandolese Introduzione Più processi o thread Concorrono alla relaizzazione di una funzione applicativa Devono poter realizzare Sincronizzazione

Dettagli

Il Concetto di Processo

Il Concetto di Processo Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono

Dettagli

PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++

PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++ PROGRAMMAZIONE ORIENTATA AGLI OGGETTI in C++ Classi ed oggetti. Classi derivate, ereditarietà e polimorfismo. Template Capitoli 12, 13, 14 Luis Joyannes Aguilar. Fondamenti di Programmazione in C++. Algoritmi,

Dettagli

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi

AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Unified Process. Prof. Agostino Poggi AOT Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Unified Process Prof. Agostino Poggi Unified Process Unified Software Development Process (USDP), comunemente chiamato

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

I sistemi operativi si susseguirono, fino alla comparsa di Windows NT, il primo s.o. in cui ci son già implementati dei concetti significativi.

I sistemi operativi si susseguirono, fino alla comparsa di Windows NT, il primo s.o. in cui ci son già implementati dei concetti significativi. DCOM, COM,.NET 2 Quando si parla di architetture proprietarie, si intendono tutta una serie di cose, in particolare si pensa alla storia dei sistemi operativi, in questo caso del S.O. di Microsoft. Mentre

Dettagli

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it

UML: Class Diagram. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it UML: Class Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Class Diagram Forniscono una vista strutturale

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Cos è un protocollo? Ciao. Ciao 2:00. tempo. Un protocollo umano e un protocollo di reti di computer:

Cos è un protocollo? Ciao. Ciao 2:00. <file> tempo. Un protocollo umano e un protocollo di reti di computer: Cos è un protocollo? Un protocollo umano e un protocollo di reti di computer: Ciao Ciao Hai l ora? 2:00 tempo TCP connection request TCP connection reply. Get http://www.di.unito.it/index.htm Domanda:

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: Eduard Roccatello eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it

SMS API. Documentazione Tecnica YouSMS SOAP API. YouSMS Evet Limited 2015 http://www.yousms.it SMS API Documentazione Tecnica YouSMS SOAP API YouSMS Evet Limited 2015 http://www.yousms.it INDICE DEI CONTENUTI Introduzione... 2 Autenticazione & Sicurezza... 2 Username e Password... 2 Connessione

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Intalio. Leader nei Sistemi Open Source per il Business Process Management. Andrea Calcagno Amministratore Delegato

Intalio. Leader nei Sistemi Open Source per il Business Process Management. Andrea Calcagno Amministratore Delegato Intalio Convegno Open Source per la Pubblica Amministrazione Leader nei Sistemi Open Source per il Business Process Management Navacchio 4 Dicembre 2008 Andrea Calcagno Amministratore Delegato 20081129-1

Dettagli

Business Process Modeling and Notation e WebML

Business Process Modeling and Notation e WebML Business Process Modeling and Notation e WebML 24 Introduzione I Web Service e BPMN sono standard de facto per l interoperabilità in rete a servizio delle imprese moderne I Web Service sono utilizzati

Dettagli

Programmazione Java: Variabili membro, Metodi La parola chiave final

Programmazione Java: Variabili membro, Metodi La parola chiave final Programmazione Java: Variabili membro, Metodi La parola chiave final romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap Definire una classe» Variabili membro» Metodi La parola chiave

Dettagli

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica

Università degli Studi di Parma. Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica A.A. 2007-08 CORSO DI INGEGNERIA DEL SOFTWARE Prof. Giulio Destri http://www.areasp.com (C) 2007 AreaSP for

Dettagli

Applicazione: Share - Sistema per la gestione strutturata di documenti

Applicazione: Share - Sistema per la gestione strutturata di documenti Riusabilità del software - Catalogo delle applicazioni: Gestione Documentale Applicazione: Share - Sistema per la gestione strutturata di documenti Amministrazione: Regione Piemonte - Direzione Innovazione,

Dettagli

Posta Elettronica. Claudio Cardinali claudio@csolution.it

Posta Elettronica. Claudio Cardinali claudio@csolution.it Posta Elettronica Claudio Cardinali claudio@csolution.it Posta Elettronica: WebMail Una Webmail è un'applicazione web che permette di gestire uno o più account di posta elettronica attraverso un Browser.

Dettagli

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it

Zabbix 4 Dummies. Dimitri Bellini, Zabbix Trainer Quadrata.it Zabbix 4 Dummies Dimitri Bellini, Zabbix Trainer Quadrata.it Relatore Nome: Biografia: Dimitri Bellini Decennale esperienza su sistemi operativi UX based, Storage Area Network, Array Management e tutto

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

La piattaforma IBM Cognos

La piattaforma IBM Cognos La piattaforma IBM Cognos Fornire informazioni complete, coerenti e puntuali a tutti gli utenti, con una soluzione economicamente scalabile Caratteristiche principali Accedere a tutte le informazioni in

Dettagli

La configurazione degli indirizzi IP. Configurazione statica, con DHCP, e stateless

La configurazione degli indirizzi IP. Configurazione statica, con DHCP, e stateless La configurazione degli indirizzi IP Configurazione statica, con DHCP, e stateless 1 Parametri essenziali per una stazione IP Parametri obbligatori Indirizzo IP Netmask Parametri formalmente non obbligatori,

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014

Processi di business sovra-regionali relativi ai sistemi regionali di FSE. Versione 1.0 24 Giugno 2014 Processi di business sovra-regionali relativi ai sistemi regionali di FSE Versione 1.0 24 Giugno 2014 1 Indice Indice... 2 Indice delle figure... 3 Indice delle tabelle... 4 Obiettivi del documento...

Dettagli

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali

DynDevice ECM. La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali DynDevice ECM La Suite di applicazioni web per velocizzare, standardizzare e ottimizzare il flusso delle informazioni aziendali Presentazione DynDevice ECM Cos è DynDevice ICMS Le soluzioni di DynDevice

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI. Luca Carnini. Tesina presentata per la discussione del diploma di laurea in

MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI. Luca Carnini. Tesina presentata per la discussione del diploma di laurea in MODELLO AD OGGETTI PER LE BASI DI DATI E ANALISI DI PRODOTTI COMMERCIALI di Luca Carnini Tesina presentata per la discussione del diploma di laurea in Ingegneria informatica Politecnico di Milano sede

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Web Conferencing and Collaboration tool

Web Conferencing and Collaboration tool Web Conferencing and Collaboration tool La piattaforma Meetecho Piattaforma di Web Conferencing e Collaborazione on line in tempo reale Caratteristiche generali Soluzione client-server progettata per essere

Dettagli

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Protocolli di rete Sommario Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Configurazione statica e dinamica

Dettagli

LA TEMATICA. Questa situazione si traduce facilmente:

LA TEMATICA. Questa situazione si traduce facilmente: IDENTITY AND ACCESS MANAGEMENT: LA DEFINIZIONE DI UN MODELLO PROCEDURALE ED ORGANIZZATIVO CHE, SUPPORTATO DALLE INFRASTRUTTURE, SIA IN GRADO DI CREARE, GESTIRE ED UTILIZZARE LE IDENTITÀ DIGITALI SECONDO

Dettagli

Interfaccia Web per customizzare l interfaccia dei terminali e

Interfaccia Web per customizzare l interfaccia dei terminali e SIP - Session Initiation Protocol Il protocollo SIP (RFC 2543) è un protocollo di segnalazione e controllo in architettura peer-to-peer che opera al livello delle applicazioni e quindi sviluppato per stabilire

Dettagli

Gestione delle Architetture e dei Servizi IT con ADOit. Un Prodotto della Suite BOC Management Office

Gestione delle Architetture e dei Servizi IT con ADOit. Un Prodotto della Suite BOC Management Office Gestione delle Architetture e dei Servizi IT con ADOit Un Prodotto della Suite BOC Management Office Controllo Globale e Permanente delle Architetture IT Aziendali e dei Processi IT: IT-Governance Definire

Dettagli

I name server DNS. DNS: Domain Name System. Esempio di DNS. DNS: Root name server. DNS: queries ripetute

I name server DNS. DNS: Domain Name System. Esempio di DNS. DNS: Root name server. DNS: queries ripetute DNS: Domain Name System I name DNS Persone: identificatori: CF, nome, Numero di Passaporto Host e router Internet: Indirizzo IP ( bit) - usato per instradare i pacchetti nome, per es., massimotto.diiie.unisa.it

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

Dettagli

Business Process Management

Business Process Management Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java

! Programmazione strutturata ! TDA. ! Classi, incapsulamento, ! OO. ! Scambio messaggi, eredità, polimorfismo. ! OO in Java Riassunto Rassegna API - 1 Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 17 3 maggio 2015! Programmazione

Dettagli

GUIDA DELL UTENTE IN RETE

GUIDA DELL UTENTE IN RETE GUIDA DELL UTENTE IN RETE Memorizza registro di stampa in rete Versione 0 ITA Definizione delle note Nella presente Guida dell'utente viene utilizzata la seguente icona: Le note spiegano come intervenire

Dettagli

1 EJB e Portal Component Object http://desvino.altervista.org

1 EJB e Portal Component Object http://desvino.altervista.org 1 EJB e Portal Component Object http://desvino.altervista.org In questo tutorial studiamo come sfruttare la tecnologia EJB, Enterprise JavaBean, all interno del SAP Netweaver Portal. In breve, EJB è un

Dettagli

FORM Il sistema informativo di gestione della modulistica elettronica.

FORM Il sistema informativo di gestione della modulistica elettronica. Studio FORM FORM Il sistema informativo di gestione della modulistica elettronica. We believe in what we create This is FORM power La soluzione FORM permette di realizzare qualsiasi documento in formato

Dettagli

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity

CORSO DI ALGORITMI E PROGRAMMAZIONE. JDBC Java DataBase Connectivity CORSO DI ALGORITMI E PROGRAMMAZIONE JDBC Java DataBase Connectivity Anno Accademico 2002-2003 Accesso remoto al DB Istruzioni SQL Rete DataBase Utente Host client Server di DataBase Host server Accesso

Dettagli

Elementi di UML (7): Diagrammi dei componenti e di deployment

Elementi di UML (7): Diagrammi dei componenti e di deployment Elementi di UML (7): Diagrammi dei componenti e di deployment Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio

Dettagli

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright

Dettagli

Inter-Process Communication

Inter-Process Communication Inter-Process Communication C. Baroglio a.a. 2002-2003 1 Introduzione In Unix i processi possono essere sincronizzati utilizzando strutture dati speciali, appartenti al pacchetto IPC (inter-process communication).

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi

Inidirizzi IP e Nomi di Dominio. Domain Name System. Spazio dei Nomi Piatto. Gestione dello Spazio dei Nomi I semestre 03/04 Inidirizzi IP e Nomi di Dominio Domain Name System Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica

Dettagli

Il World Wide Web: nozioni introduttive

Il World Wide Web: nozioni introduttive Il World Wide Web: nozioni introduttive Dott. Nicole NOVIELLI novielli@di.uniba.it http://www.di.uniba.it/intint/people/nicole.html Cos è Internet! Acronimo di "interconnected networks" ("reti interconnesse")!

Dettagli

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email.

La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net. di Emanuele Mattei (emanuele.mattei[at]email. La gestione documentale con il programma Filenet ed il suo utilizzo tramite la tecnologia.net di Emanuele Mattei (emanuele.mattei[at]email.it) Introduzione In questa serie di articoli, vedremo come utilizzare

Dettagli

***** Il software IBM e semplice *****

***** Il software IBM e semplice ***** Il IBM e semplice ***** ***** Tutto quello che hai sempre voluto sapere sui prodotti IBM per qualificare i potenziali clienti, sensibilizzarli sulle nostre offerte e riuscire a convincerli. WebSphere IL

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Rational Unified Process Introduzione

Rational Unified Process Introduzione Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un

Dettagli

Pronti per la Voluntary Disclosure?

Pronti per la Voluntary Disclosure? Best Vision GROUP The Swiss hub in the financial business network Pronti per la Voluntary Disclosure? Hotel de la Paix, 21 aprile 2015, ore 18:00 Hotel Lugano Dante, 22 aprile 2015, ore 17:00 Best Vision

Dettagli

progettiamo e realizziamo architetture informatiche Company Profile

progettiamo e realizziamo architetture informatiche Company Profile Company Profile Chi siamo Kammatech Consulting S.r.l. nasce nel 2000 con l'obiettivo di operare nel settore I.C.T., fornendo servizi di progettazione, realizzazione e manutenzione di reti aziendali. Nel

Dettagli

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi.

Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet Internet è universalmente nota come la Rete delle reti: un insieme smisurato di computer collegati tra loro per scambiarsi dati e servizi. Internet: la rete delle reti Alberto Ferrari Connessioni

Dettagli

R.Focardi Laboratorio di Ingegneria del Software 6. 1

R.Focardi Laboratorio di Ingegneria del Software 6. 1 Networking Java permette comunicazioni in rete basate sul concetto di socket, che permette di vedere la comunicazione in termini di flusso (stream), in modo analogo all input-output di file, usando Stream

Dettagli

corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi

corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di Sistemi Distribuiti 4. IPC (Inter Process Communication) (parte 1): le forme ed i modelli della comunicazione tra processi Prof. S.Pizzutilo Elementi

Dettagli

P a s q u a l e t t i V e r o n i c a

P a s q u a l e t t i V e r o n i c a PHP: OOP Pasqualetti Veronica Oggetti Possiamo pensare ad un oggetto come ad un tipo di dato più complesso e personalizzato, non esistente fra i tipi tradizionali di PHP, ma creato da noi. 2 Gli oggetti

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

FileMaker Server 13. Guida introduttiva

FileMaker Server 13. Guida introduttiva FileMaker Server 13 Guida introduttiva 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti FileMaker e Bento sono marchi

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

Windows Mail Outlook Express 6 Microsoft Outlook 2003 Microsoft Outlook 2007 Thunderbird Opera Mail Mac Mail

Windows Mail Outlook Express 6 Microsoft Outlook 2003 Microsoft Outlook 2007 Thunderbird Opera Mail Mac Mail Configurare un programma di posta con l account PEC di Il Titolare di una nuova casella PEC può accedere al sistema sia tramite Web (Webmail i ), sia configurando il proprio account ii nel programma di

Dettagli

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam. Laurea in INFORMATICA INTERNET e RETI di CALCOLATORI A.A. 2014/2015 Capitolo 4 Dynamic Host Configuration Protocol fausto.marcantoni@unicam.it Prima di iniziare... Gli indirizzi IP privati possono essere

Dettagli

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho

Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Web conferencing e collaborazione in tempo reale su Internet: la piattaforma Meetecho Tobia Castaldi Alessandro Amirante Lorenzo Miniero Simon Pietro Romano Giorgio Ventre 02/10/2009 GARR 2009 "Network

Dettagli

CA Process Automation

CA Process Automation CA Process Automation Glossario Release 04.2.00 La presente documentazione, che include il sistema di guida in linea integrato e materiale distribuibile elettronicamente (d'ora in avanti indicata come

Dettagli

I class diagram. Class - names

I class diagram. Class - names I class diagram Forniscono una vista strutturale (statica) del sistema in termini di classi attributi operazioni relazioni tra classi (associazioni, generalizzazioni,...) Un class diagram rappresenta uno

Dettagli

MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA

MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA Allegato 1 al bando di gara SCUOLA TELECOMUNICAZIONI FF.AA. CHIAVARI REQUISITO TECNICO OPERATIVO MASTER UNIVERSITARI CORSI di PERFEZIONAMENTO CORSI di FORMAZIONE AVANZATA MASTER DI 2 LIVELLO 1. DIFESA

Dettagli

Rational Asset Manager, versione 7.1

Rational Asset Manager, versione 7.1 Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Note Prima di utilizzare queste informazioni e il prodotto

Dettagli

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002

Database, SQL & MySQL. Dott. Paolo PAVAN Maggio 2002 Database, SQL & MySQL Dott. Paolo PAVAN Maggio 2002 1 Struttura RDBMS MYSQL - RDBMS DATABASE TABELLE 2 Introduzione ai DATABASE Database Indica in genere un insieme di dati rivolti alla rappresentazione

Dettagli

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL

Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone. SQL: il DDL Basi di Dati prof. Letizia Tanca lucidi ispirati al libro Atzeni-Ceri-Paraboschi-Torlone SQL: il DDL Parti del linguaggio SQL Definizione di basi di dati (Data Definition Language DDL) Linguaggio per modificare

Dettagli

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito:

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito: Autore : Giulio Martino IT Security, Network and Voice Manager Technical Writer e Supporter di ISAServer.it www.isaserver.it www.ocsserver.it www.voipexperts.it - blogs.dotnethell.it/isacab giulio.martino@isaserver.it

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

Dettagli

Agilent OpenLAB Chromatography Data System (CDS)

Agilent OpenLAB Chromatography Data System (CDS) Agilent OpenLAB Chromatography Data System (CDS) EZChrom Edition e ChemStation Edition Requisiti hardware e software Agilent Technologies Informazioni legali Agilent Technologies, Inc. 2013 Nessuna parte

Dettagli

Configurazione avanzata di IBM SPSS Modeler Entity Analytics

Configurazione avanzata di IBM SPSS Modeler Entity Analytics Configurazione avanzata di IBM SPSS Modeler Entity Analytics Introduzione I destinatari di questa guida sono gli amministratori di sistema che configurano IBM SPSS Modeler Entity Analytics (EA) in modo

Dettagli

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

Dettagli

ARP (Address Resolution Protocol)

ARP (Address Resolution Protocol) ARP (Address Resolution Protocol) Il routing Indirizzo IP della stazione mittente conosce: - il proprio indirizzo (IP e MAC) - la netmask (cioè la subnet) - l indirizzo IP del default gateway, il router

Dettagli