MIDDLEWARE e CORBA. Corso di Architetture Distribuite e Servizi di Rete. Antonio Corradi & Paolo Bellavista MIDDLEWARE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "MIDDLEWARE e CORBA. Corso di Architetture Distribuite e Servizi di Rete. Antonio Corradi & Paolo Bellavista MIDDLEWARE"

Transcript

1 Università degli Studi di Bologna MASTER integratori di Sistema MIDDLEWARE e CORBA Corso di Architetture Distribuite e Servizi di Rete Antonio Corradi & Paolo Bellavista Middleware e CORBA 1 MIDDLEWARE Definizione di MIDDLEWARE Insieme degli strumenti che permettono la integrazione di diverse applicazioni e servizi da utilizzare in ambienti aperti Middleware comprendono strumenti per lo sviluppo fino al livello di applicazione RPC middleware Chiamate di Procedura Remote come strumento di invocazione di livello applicativo tra ambienti diversi Middleware e CORBA 2

2 MIDDLEWARE Lo Strato di software che risiede tra la applicazione e i componenti di rete, di sistema operativo locale, di hardware eterogeneo, di aree di applicazioni diverse, ecc. Lo strato di disaccoppiamento tra i livelli di sistema consente la semplificazione del progetto sia della parte applicativa sia del supporto Middleware e CORBA 3 MIDDLEWARE Il Middleware viene spesso invocato in modo trasparente e fornisce l accesso uniforme a funzioni locali eterogenee Spesso viene usato per integrare sistemi legacy preesistenti e necessari alla logica aziendale Spesso si propone come uno standard (di fatto o di comitato) per una comunità specifica Middleware e CORBA 4

3 SERVIZI di un MIDDLEWARE MIDDLEWARE forniscono servizi differenziati In senso esteso per molte aree diverse Presentation Management Computation Information Management Communication Control System Management (stampa, grafica, GUI, interazione) (procedure comuni, servizi caratteri, internazionalizzazione, sorting) (file manager, record manager, database manager, log Manager, ) (messaging, RPC, message queue, mail, electronic data interchange ) (thread manager, scheduler, transaction manager, ) (accounting, configuration, security, performance, fault management, event handling) Middleware e CORBA 5 MIDDLEWARE come livelli di sistema MIDDLEWARE tra Applicazione e Sistema Operativo Applicazione Domain-specific Middleware Service Common Middleware Services Distribution Middleware Host Infrastructure Middleware Sistema Operativo Hardware Middleware e CORBA 6

4 MIDDLEWARE come livelli di sistema Host Infrastructure Middleware Livello che incapsula e prepara i servizi locali per la distribuzione e per facilitare la comunicazione Esempi: JVM,.NET, altri modelli locali Applet e Applicazioni Java Classi Base Adattatore Browser S.O. Hw Estensione di Classi di Java Java Virtual Machine Interfaccia di portabilità Adattatore Browser S.O. Hw Adattatore Browser S.O. Hw Adattatore Browser S.O. Hw Si forniscono delle API che permettono di avere un supporto locale unificato per i diversi sistemi Interconnessione via Rete Middleware e CORBA 7 MIDDLEWARE come livelli di sistema Distribution Middleware Livello che fornisce i modelli della programmazione distribuita e facilita le applicazioni distribuite configurando e gestendo le risorse distribuite Esempi: RMI, CORBA, DCOM, SOAP, Sistemi che permettono una più facile comunicazione e coordinamento dei diversi nodi che partecipano al sistema introducendo un modello delle risorse e API di comunicazione secondo un modello concettuale altre funzionalità accessorie per la comunicazione supporto di nomi, di discovery, Middleware e CORBA 8

5 MIDDLEWARE come livelli di sistema Common Middleware Services Servizi aggiuntivi di più alto livello per facilitare la vita del progettista applicativo e per consentire una programmazione orientata ai componenti fornendo supporto Esempi: CORBAServices, J2EE,.NET Web services Alcune funzioni addizionali per consentire operazioni facilitate spesso ispirate ad una architettura comune ed a un modello di supporto Molti servizi addizionali per componenti eventi, logging, streaming, sicurezza, fault tolerance, Middleware e CORBA 9 MIDDLEWARE come livelli di sistema Domain-specific Middleware Service Insieme di livelli applicativi dedicati a domini diversi Esempi: Alcuni gruppi di lavoro stanno definendo funzionalità ad-hoc per settori diversi con obiettivi anche molto differenziati di standardizzazione Task Force di lavoro in ambito OMG Electronic Commerce TF, Finance (banking and insurance) TF, Life Science Research Domain TF, Syngo Siemens Medical Engineering Group, Boeing Bold Stroke basato su CORBA Middleware e CORBA 10

6 CLASSIFICAZIONE MIDDLEWARE MIDDLEWARE RPC middleware Message Oriented Middleware (MOM) Distributed Transaction Processing (TP) Monitor Database Middleware Distributed Object Computing (DOC) Middleware Adaptive & Reflective Middleware Altri special purpose: Mobile & QoS Multimedia Middleware Agent-based Middleware Middleware e CORBA 11 MIDDLEWARE!? Wide Area Distributed Middleware (Web) Middleware che permette l accesso in lettura e anche scrittura ad un insieme globale di informazioni Le operazioni avvengono per un sistema globale Moltissimi domini amministrativi di gestione Moltissimi utenti Moltissimi host partecipanti e Molta eterogeneità di banda, interconnessione, Questi non sono veri e propri middleware ma forse solo sistemi di accesso e messa in linea di informazioni Web come esempio principe Middleware e CORBA 12

7 RPC MIDDLEWARE RPC come strumenti per il C/S Interface Definition Language (IDL) per l accordo Sincronicità: il cliente bloccato in modo sincrono bloccante in attesa della risposta dal Server Gestione eterogeneità dei dati Uso di Stub per la Trasparenza Binding spesso statico (o poco dinamico) Modello un po rigido, poco scalabile e replicabile con QoS Il server deve essere presente e prevedere i processi necessari in modo esplicito Non si tiene conto di eventuali ottimizzazioni nell uso delle risorse Middleware e CORBA 13 MOM MIDDLEWARE Message Oriented Middleware (MOM) La distribuzione dei dati e codice avviene attraverso lo scambio di messaggi Scambio messaggi tipati e non tipati sia sincrono sia asincrono con strumenti ad-hoc ampia autonomia tra i componenti asincronicità e persistenza delle azioni gestori (broker) con politiche diverse e QoS diverso facilità nel multicast, broadcast, publish / subscribe Esempio: Middleware basati su messaggi, code e gestori MQSeries IBM, MSMQ Microsoft, JMS SUN Middleware e CORBA 14

8 OO e DOC MIDDLEWARE Distributed Object Computing (DOC) Middleware La distribuzione dei dati e codice avviene attraverso richieste di operazioni tra clienti e servitori remoti Uso di oggetti come framework e di un broker come intermediario nella gestione delle operazioni il modello ad oggetti semplifica il progetto il broker fornisce i servizi base e molti servizi addizionali alcune operazioni si possono fare in modo automatico la integrazione di sistemi è facilitata e incentivata la tecnologia open source è favorita Esempi: CORBA,.NET e COM, Java Middleware e CORBA 15 MIDDLEWARE Adaptive & Reflective Middleware In alcuni casi la visibilità dei livelli sottostanti può diventare fondamentale per raggiungere ottimizzazione Uso di middleware che si possono adattare alla applicazione specifica anche in modo dinamico, reattivo e radicale variazioni statiche dipendenti dal componente variazioni dinamiche dipendenti dal sistema Con la Riflessività, le politiche di azione sono espresse e visibili nel middleware stesso e si possono cambiare come componenti del sistema Si raggiunge adattamento e flessibilità durante l esecuzione Esempi: ancora non molti diffusi Middleware e CORBA 16

9 MIDDLEWARE: AD OGGETTI - DOC Sistemi ad oggetti APERTI Object-Oriented Relazioni cliente/servitore nel distribuito vincolata nell ambito di sistemi ad oggetti Obiettivo: tutte le risorse (oggetti o meno) devono essere a disposizione di tutti gli utilizzatori, comunque siano stati specificate e da chiunque siano rese disponibili Sistema multi-linguaggio e di integrazione con componenti legacy anche non ad oggetti MOLTI PROGETTI simili in questa direzione Open Software Foundation Distributed Computing Environment DCE - RPC Ansa Ansaware - Ambiente distribuito e standard BBN CHRONUS - Ambiente di servizi con ereditarietà Middleware e CORBA 17 MIDDLEWARE: ETEROGENEITÀ Possibile infrastruttura per la interazione tra ambienti diversi supera i problemi introdotti da approcci ad-hoc funzioni di conversione custom conversione in formato generico wrapper Cliente Servitore protocollo comune Middleware GUI DSOM Sist. Operativo Oggetti Servizi SQL Mail ORB Groupware DSOM snmp CMIP DME DSOM DBMS NOS Directory Security DSOM RPC Messaggi Trasporto TCP/IP SNA Sist. Operativo NetBIOS IPX/SPX Middleware e CORBA 18

10 MIDDLEWARE: CORBA OMG- Object Management Group CORBA creato nel 1989 con 440 aziende Microsoft, Digital, HP, NCR, SUN, OSF, etc. con l'obiettivo di creare un sistema di gestione di una architettura distribuita Common Object Request Broker Architecture CORBA standard v1 1991, v v2 1996, v Orbix SunOS Solaris, Iris, Windows NT, HP/UX, AIX, OSF/1, UnixWare DSOM IBM Middleware e CORBA 19 MIDDLEWARE: CORBA STANDARD SISTEMI APERTI AD OGGETTI modelli ad oggetti diversi con possibilità di integrazione e interazione reciproca completa anche provenendo da linguaggi ed ambienti diversi definizione di una interfaccia per oggetto definizione della interazione tra oggetti bus per integrazione di oggetti progettati in linguaggi diversi definizione della interazione anche tra sistemi diversi con diversi gestori Middleware e CORBA 20

11 ENTITÀ da mettere in relazione: cliente e implementazione di un oggetto per il servizio oggetto richiesta MIDDLEWARE: CORBA entità che fornisce servizi meccanismo per manifestare esigenza di un servizio tipo entità per classificare gli oggetti interfaccia descrizione delle operazioni possibili per un insieme di oggetti operazione servizio con nome che può essere richiesto ad un oggetto Middleware e CORBA 21 MIDDLEWARE: CORBA Common Object Request Broker Architecture CORBA come ambiente comune anche Object Management Architecture Il cuore è il gestore dei nomi (broker) che consente i collegamenti in modo statico e dinamico tra le entità Object Request Broker (ORB) controllo allocazione e visibilità di oggetti controllo dei metodi e della comunicazione controllo di servizi accessori disponibili automaticamente nella OMA gestione facilitata dei servizi Middleware e CORBA 22

12 CORBA come BUS Struttura ORBA ORB come un bus di interconnessione Tutti gli oggetti applicativi gestiti possono appartenere ad ambienti diversi e devono potere comunicare senza un riprogetto Applications Object Middleware e CORBA 23 CORBA come BUS ORB per la comunicazione degli oggetti locali ed anche per la comunicazione tra ORB diversi In un solo sistema CORBA o in più sistemi OMA coordinando broker diversi tra loro Oggetti Applicativi Oggetti Applicativi Cliente logico Servitore Cliente logico Servitore dinamico dinamico Object Request Broker ORB 1 ORB 2 Middleware e CORBA 24

13 Object Management Architecture Ogni componente può legarsi agli altri, anche non noti, usando il servizio di uno o più ORB (anche non noti a priori) Insieme di componenti addizionali di ambiente Object Services o CORBA Services Operazioni fondamentali per oggetti naming e trading service event e notification service Oltre ad operazioni ulteriori (o servizi) Per la gestione del tempo di vita, relazionali, transazioni, controllo concorrenza, sicurezza Middleware e CORBA 25 Object Management Architecture Altri componenti addizionali di ambiente Common Facilities CF (orizzontali) Insieme di funzionalità specifiche Interfaccia utente (client-site), Management Sistema, Informazioni, Task (server-site) Domain Interfaces (verticali) funzionalità dedicate ad aree applicative, ad es. manifacturing, telecommunications, electronic commerce, transportation, business objects, healthcare, finance, life science, Application Interfaces Non standardizzate in alcun modo e dipendenti dalla applicazione Middleware e CORBA 26

14 Object Management Architecture OMA Ambiente Object Framework Middleware e CORBA 27 COMPONENTI DI CORBA I componenti essenziali della architettura OMA e di CORBA * Object Request Broker (ORB) * Interface Definition Language (IDL) * Basic Object Adapter (e altri) (BOA) * Static Invocation Interface (SII) * Dynamic Invocation Interface (DII) * Interface Repository (IR) Middleware e CORBA 28

15 COMPONENTI DI CORBA Object Request Broker (ORB) deve coordinare la invocazione di servizi locali e remoti (dinamico) individuare l implementazione di un oggetto come servitore ad una richiesta (object location) preparare il servitore a ricevere la richiesta (object creation, activation & management) trasferire la richiesta dal cliente al servitore restituire la risposta al cliente Oggetti Applicativi Clienti Servitori Cl1 Srv1 ORB Middleware e CORBA 29 COMPONENTI DI CORBA Interface Definition Language (CORBA IDL) deve coordinare la identificazione dei servizi richiesti e offerti, locali e remoti (statico) Si devono associare le richieste di operazioni e le offerte di servizio Sia i servitori sia i clienti devono potere identificarsi e rendersi noti reciprocamente Si fa ampio uso della esperienza degli IDL già sviluppati Purtroppo IDL consente solo una identificazione ed un legame previsto e riconosciuto staticamente. E se volessimo legami dinamici?? Middleware e CORBA 30

16 CORBA: VISIONE DINAMICA Elementi in gioco: visione complessiva Cliente Implementazione dell'oggetto Invocazione Stub Interfaccia Scheletro Scheletro dinamica IDL ORB statico dinamico Adattatore d'oggetto Nucleo dell'orb Nuovo, introdotto con CORBA 2.0 Identica interfaccia per tutte le implementazioni di ORB Possibili adattatori d'oggetto multipli Una stub ed uno scheletro per ogni tipo d'oggetto Interfaccia ORB-dipendente interfaccia di chiamata verso l'alto interfaccia di chiamata normale Middleware e CORBA 31 CORBA IDL per MULTILINGUAGGIO Interface Definition Language (CORBA IDL) deve coordinare la identificazione dei servizi statici richiesti e offerti in diversi linguaggi //OMG IDL interface Factory { Object create(); }; Questa interfaccia consente di riferire un oggetto di tipo factory e di chiedere la operazione create (senza parametri di in e out) di un oggetto riconosciuto Con IDL si devono definire nuove interfacce e nuovi tipi secondo necessità e farli riconoscere e registrare Middleware e CORBA 32

17 CORBA IDL -> > STUB E SKELETON Interface Definition Language (CORBA IDL) permette di generare nei diversi linguaggi componenti automatiche di appoggio (stub e skeleton) per la funzionalità dei clienti e servitori Lo stub permette di lavorare sul messaggio dalla parte del cliente (marshalling) agendo come proxy del cliente Lo skeleton collabora con l ORB per prendere la richiesta e adattarla al server (unmarshalling) girandogli la richiesta In questo modo lavoriamo producendo un legame statico tra interfaccia e cliente e servitore. Entrambi sono legati alla interfaccia dallo stub e skeleton creati prima della esecuzione Middleware e CORBA 33 CORBA ADAPTER Adattatore (Object Adapter) permette di superare disomogeneità e differenze tra la interfaccia assunta dal chiamante e quella attesa dal servitore Ha compiti tipici: funzionalità di registrazione dell oggetto generazione dei riferimenti esterni all oggetto attivazione dei processi interni server e dell oggetto stesso demultiplexing delle richieste in modo da disaccoppiarle invio delle richieste (upcall) agli oggetti registrati I primi adattatori erano BOA (Basic), poi POA (Portable) Middleware e CORBA 34

18 OBJECT REPOSITORY in CORBA Interface Repository consente di accedere a tutti i tipi di dati IDL e di accedere alle interfacce esportate dagli oggetti presenti e disponibili durante la esecuzione Le interfacce sono traslate nei linguaggi di programmazione diversi in cui i componenti sono progettati e compilati (binding statico) Ci sono casi in cui l approccio statico non è attuabile: un gateway che permette di accedere alle interfacce CORBA di un ambiente che non può essere ricompilato ogni volta che si aggiunge una nuova interfaccia IR permette di avere le interfacce presenti dinamicamente e di decidere al momento della esecuzione (binding dinamico) Middleware e CORBA 35 SISTEMI CORBA DIVERSI Definizione (dalla versione 2) di Protocolli InterORB per stabilire come fare interagire diversi sistemi CORBA protocollo per interoperabilità ORB-to-ORB General Inter-ORB Protocol (GIOP) Molto diffuso per la interoperabilità per Internet su TCP/IP Internet Inter-ORB Protocol (IIOP) Oggetti Applicativi Cliente Servitore ORB 1 protocolli GIOP / IIOP ORB 2 Middleware e CORBA 36

19 CORBA ARCHITETTURA Visione di insieme della architettura Middleware e CORBA 37 ORB funzioni Core ORB coordina le richieste degli oggetti clienti di competenza, in modo trasparente da: posizione e implementazione dell oggetto remoto (indipendenza dal linguaggio) comunicazione specifica usata e disponibile Uso di riferimenti ad oggetti esistenti (non creati da CORBA) ottenuti attraverso: creazione esplicita esterna di oggetto utilizzo di directory di oggetti conversione di riferimenti in stringhe e viceversa (oggetti riferiti e traslati in stringhe, poi riottenuti) Necessità di servizi di nome (Trading e Naming service) Middleware e CORBA 38

20 CORBA- IDL CORBA IDL interfacce come insiemi di metodi ed attributi distinzione tra definizione e implementazione ereditarietà multipla delle interfacce definizione eccezioni gestione automatica degli attributi mappaggi per linguaggi diversi ed ambienti diversi Il compilatore può ottenere automaticamente stub per clienti/servitori anche usando linguaggi diversi Middleware e CORBA 39 CORBA- IDL INTERFACE DEFINITION LANGUAGE (OMG IDL) introdotti per garantire flessibilità nella distribuzione su piattaforme eterogenee Sono linguaggi dichiarativi per interfacce e dati Molti IDL diffusi sono procedurali * OSI ASN.1 / GMDO * ONC XDR (SUN RPC) * Microsoft ODL CORBA IDL è un linguaggio object-oriented (derivato dal C++) Ovviamente i diversi IDL sono non compatibili tra di loro, anche se spesso sono diversi solo per questioni di sintassi e di sistemi di identificazione e nomi delle entità Middleware e CORBA 40

21 BINDING STATICO in CORBA Static Invocation Interface (SII) Il compilatore e gli strumenti risolvono le chiamate prima della esecuzione Tutte le invocazioni sono controllate in anticipo e sicure nessun controllo dinamico nei confronti della interfaccia Il cliente si lega allo stub e fa la richiesta dopo essersi collegato all ORB (invocazione sincrona) Il servitore si è legato allo skeleton e viene attivato dall object adaptor (POA) per rispondere alla richiesta In caso il (un) servitore non sia attivo, il POA lo attiva e gli passa la richiesta Middleware e CORBA 41 BINDING DINAMICO in CORBA Dynamic Invocation Interface Dynamic Skeleton Interface (DII) e (DSI) necessari per inviare le richieste e per fornire operazioni senza prevedere staticamente legame con una interfaccia cioè per legarsi ad oggetti che non esistono al momento della compilazione comportamento DINAMICO Il cliente si appoggia a run-time sull interface repository per la conoscenza dell interfaccia d oggetto di interesse In questo caso si possono assumere invocazioni meno sincronizzate e più varie tra il cliente e il servitore (forme diverse di asincronicità) Middleware e CORBA 42

22 BINDING DINAMICO in CORBA (DII) API per comporre la richiesta e pseudo oggetto Request pseudo interface Request {// Pseudo IDL Status add_arg (in Identifier name, in TypeCode arg_type, in void *value, in long len, in Flag arg_flag ); Status invoke (in Flags invoke_flags // flag invocazione); Status delete (); Status send (in Flags invoke_flags // flag invocazione); Status get_response (in Flags response_flags //flag risposta); } La richiesta viene preparata e la chiamata dinamica comporta un costo più elevato rispetto alla statica Anche modalità oltre la sincrona, Deferred Synchronous Invocation e Oneway Invocation Middleware e CORBA 43 BINDING DINAMICO in CORBA (DSI) Per potere invocare la richiesta Request in modo dinamico un metodo (invoke) permette la invocazione dinamica pseudo interface ServerRequest {// Pseudo IDL readonly attribute Identifier operation_name; readonly attribute OperationDef operation_definition; void parameters(inout NVList params); Context ctx(); void set_result(in Any val); void set_exception(in Any val); }; L oggetto server deve implementare una interfaccia che prevede la invoke da parte dell ORB Controllo dinamico della correttezza dei parametri Middleware e CORBA 44

23 SEMANTICA INVOCAZIONI in CORBA La normale modalità è la sincrona bloccante In caso di guasti o problemi, il cliente riceve una eccezione di quelle previste dalla interfaccia Semantica at-most-once La invocazione sincrona statica costa meno della dinamica corrispondente Altre modalità per la sola invocazione dinamica: Oneway Invocation nessuna risposta (semantica best effort) Deferred Synchronous risposta da ritrovare in tempi successivi con attesa solo quando necessario (at-most-once) Middleware e CORBA 45 COMPONENTI CORBA: ADATTATORE Gli Adattatori sono i componenti responsabili della flessibilità di CORBA I molteplici adattatori devono arrivare alla implementazione dei diversi oggetti servitori e comandare la esecuzione concreta Si parla di servant per le attività che lavorano sugli oggetti concreti per fornire le funzioni del server Implementazione dell'oggetto Attiva implementazione Metodi Registra Attiva Invoca Accede implementazione l'oggetto il metodo ai servizi del BOA Basic Object Adapter Scheletro ORB Middleware e CORBA 46

24 COMPONENTI CORBA: ADATTATORE Gli Adattatori controllano la esecuzione del server astratto attraverso i servant concreti che lavorano sul codice del servizio MOLTI MODI DI ATTIVAZIONE NEL SERVER attivazione per ogni richiesta (thread_per_request) un processo viene creato nell'oggetto per servizio attivazione iniziale di un pool (pool di thread) ogni oggetto riceve il suo processo da un pool creato inizialmente senza il costo della creazione attivazione per sessione (thread_per_session) ogni cliente ha un processo dedicato alla interazione Anche altre modalità: un thread per ogni servant una sola attivazione per più oggetti server (shared server) contemporaneamente Middleware e CORBA 47 Attivazione THREAD-PER PER-REQUESTREQUEST ThreadB ThreadA ThreadC Servitore Ogni richiesta riceve un thread attivato by-need generazione di thread ObjectAdapter Costo elevato della attivazione che pesa su ogni operazione Client1 Client2 Più Servant Capacità di Esecuzione Middleware e CORBA 48

25 Pool di Thread ThreadB ThreadA Attivazione THREAD-POOL Coda Richieste ThreadC ObjectAdapter Servitore generazione di thread Ogni richiesta riceve un thread da un pool di processi creati prima In caso non ce ne siano, si aspetta il primo libero Client1 Client2 Più Servant Costo inferiore, ma anche elevata attesa in caso di traffico non previsto Capacità di Esecuzione Richieste in Coda Middleware e CORBA 49 Thread1 Attivazione THREAD-PER PER-SESSIONE Generazione su richiesta Coda Richieste Thread3 Thread2 Servitore generazione di thread Ogni cliente riceve un thread attivato all inizio della sessione di lavoro ObjectAdapter Si limita il parallelismo del servizio Client1 Client2 Più Servant Richieste in Coda Client3 Middleware e CORBA 50

26 Attivazione THREAD-PER PER-SERVANT ServantA ServantB ServantC ObjectAdapter Ogni oggetto viene dotato di un servant che prevede un thread dalla prima attivazione e risponde solo attraverso quello Client1 Client2 Client3 Si limita il parallelismo in base al numero dei servant Capacità di Esecuzione Middleware e CORBA 51 Funzioni di ADATTATORE Gli Adattatori controllano la esecuzione delle operazioni nei server attraverso il concetto di servant USO di SERVANT Un servant è la parte di oggetto che mette a disposizione il codice da eseguire su richiesta di un cliente (entità fortemente dipendenti dal linguaggio di programmazione e dalla specifica implementazione del servitore) Il POA ha il compito di comporre la immagine dell oggetto CORBA server. Potrebbe essere presente: un unico servant anche molti diversi da fornire alle diverse richieste Un POA decide i propri servant e la politica di gestione Middleware e CORBA 52

27 RIFERIMENTI AD OGGETTI in CORBA Necessità di identificatori da passare tra ambienti diversi CORBA 1.2 non prevedeva nomi unici CORBA 2 supporto per nomi unici Object Reference come nomi non unici associati ad un servizio ObjectRef al passaggio viene convertito da un sistema di nomi in un proxy nell'ambiente del ricevente per potere essere utilizzato ObjectRef possono essere passati da un ambiente ad un altro ed essere utilizzati dovunque ma non necessariamente per lo stesso oggetto In un ambiente ricevente il riferimento potrebbe essere per un oggetto diverso con la stessa interfaccia in caso di stato sul server, problemi Middleware e CORBA 53 Middleware I middleware più usati devono prevedere risposte anche ad esigenze spicciole e a dettagli ulteriori I programmatori di CORBA si aspettano di potere: - progettare velocemente nuovi componenti - integrare vecchi componenti legacy - potere utilizzare strumenti esistenti e componenti di ausilio pronti - potere integrare le applicazioni con facility disponibili Middleware e CORBA 54

28 ARCHITETTURA CORBA Middleware e CORBA 55 COMPONENTI DI CORBA I componenti essenziali di CORBA * Object Request Broker (ORB) * Interface Definition Language (IDL) * Basic (e altri) Object Adapter (BOA) * Static Invocation Interface (SII) * Dynamic Invocation Interface (DII) * Interface Repository (IR) * Protocolli per Integrazione (GIOP) Middleware e CORBA 56

29 CORBA VERSIONI CORBA mantiene i componenti essenziali anche nella sua evoluzione ma si arricchisce di strumenti e di componenti per ovviare ai problemi man mano delineati per fornire un migliore supporto Componenti essenziali sempre gli stessi Interazione tra ambienti di linguaggi diversi Aiuti per l uso di ambienti di linguaggi diversi Strumenti per ottenere QoS in ambienti di linguaggi diversi Nuove utilità generali e per domini specifici Nuove realizzazioni ed integrazione con diversi ambienti di sviluppo esistenti CORBA 3 Middleware e CORBA 57 CORBA ARCHITETTURA Visione di insieme della architettura base di supporto al servizio Middleware e CORBA 58

30 CORBA ARCHITETTURA Visione di insieme della architettura base di supporto al servizio Middleware e CORBA 59 SISTEMI CORBA DIVERSI Definizione (dalla versione 2) di Protocolli InterORB per stabilire come fare interagire diversi sistemi CORBA protocollo di interoperabilità tra ORB General Inter-ORB Protocol (GIOP) Specifica comune della rappresentazione dei dati, del formato dei messaggi, dell interazione con messaggi di trasporto (assunzioni semantiche: reliable, connection, ) per Internet su TCP/IP Internet Inter-ORB Protocol (IIOP) Middleware e CORBA 60

31 CORBA IDL Linguaggio per definire le interfacce in CORBA indipendente dai singoli linguaggi concreti di programmazione Middleware e CORBA 61 CORBA IDL CORBA è un ambiente in cui usiamo riferimenti remoti e non muoviamo oggetti (oggetti fissi) vista la eterogeneità dei singoli ambienti concreti di deployment I riferimenti remoti sono il modo di richiedere operazioni ad altri componenti con interfaccia CORBA Le interfacce prevedono: attributi, operazioni, eccezioni (attributi acceduti attraverso operazioni di get e di set) (operazioni con argomenti di in o/e out) Le interfacce in ereditarietà multipla Le interfacce sono anche racchiuse in moduli (per aggregazioni logiche) Middleware e CORBA 62

32 CORBA IDL module ContoCorrente { struct movimento { string data; float importo;}; exception RossoException {string message;}; typedef sequence <movimento> lista_op; interface Conto { attribute string cognome; float saldo (in string cc); lista_op estratto (in string cc); void prelievo (in string cc, in float importo, out float saldo) raises RossoException; }; }; Middleware e CORBA 63 Tipi in CORBA CORBA IDL Object Reference (oggetti) vs. Value (copia di valori) Exceptions Value Basic values short, long, ushort, ulong, float, double, char, string, boolean, octet, enum, Any Constructed values Struct, Sequence, Union, Array Any come tipo generico valido a tempo di esecuzione Object by value (CORBA 3) Oggetti che non possono essere acceduti da remoto e possono passare da un ambiente ad un altro solo per copia superando le eterogeneità dei diversi ambienti (nessun IOR) Middleware e CORBA 64

33 Tipi in CORBA IDL Object Reference Type Tipi Costruiti Eccezioni CORBA IDL Struct Sequence Union Array I tipi di CORBA IDL sono poi traslati nei tipi dei diversi linguaggi di programmazione ottenuti per i diversi language mapping Valori base Il tipo generico ANY permette di contenere qualunque tipo di dato e si comporta come il tipo Object dei linguaggi di programmazione ad oggetti Tipo generico ANY Short Long Ushort Ulong float double char string boolean octet enum any Middleware e CORBA 65 CORBA IDL Si usano strumenti per derivare dal CORBA IDL i diversi componenti necessari per la esecuzione stub e skeleton + file helper di aiuto Middleware e CORBA 66

34 CORBA- IDL module Stock {exception Invalid_Stock {}; exception Invalid_Index {}; const length = 100; interface Quoter { attribute float quote; readonly attribute float quotation; void one_way set_quote(in string stock_name, in long value); long get_quote(in string stock_name) raises (Invalid_Stock); }; interface SpecialQuoter: Quoter { attribute float quotehistory [length]; readonly int index [length]; long get_next (in string stock_name) raises (Invalid_Index); long get_first(in string stock_name) raises (Invalid_Index); }; } Middleware e CORBA 67 Per ogni attributo si mettono a disposizione automaticamente funzioni di accesso adatte alle operazioni consentite (_get per letture e _set per scritture) attribute float quote; float _get_quote (); void _set_quote (in float q); readonly attribute ind index; float _get_index (); Per ogni eccezione, lo stato (completion_status) fornisce informazioni semantiche sul completamento COMPLETED_YES, COMPLETED_NO, COMPLETED_MAYBE CORBA- IDL Middleware e CORBA 68

35 PROGETTO PROGRAMMI CORBA Si devono specificare le interfacce comuni a server e clienti Dopo avere generato gli stub e skeleton Si implementano le classi server Il server deve registrarsi Si implementano le classi client Si va alla esecuzione Necessità di riferimenti remoti del cliente per ritrovare il server, i componenti,, e in generale la intera infrastruttura di supporto Middleware e CORBA 69 COMPONENTI DI CORBA Middleware e CORBA 70

36 Object Reference in CORBA Gli Object Reference permettono di ritrovare una istanza di un servizio remoto (uno stub): sono opachi e non sono manipolabili dai clienti ma solo dall ORB (eventualmente integrati con la gestione della persistenza) Gli Object Reference sono riferimenti ad istanze di Object Interface Operazioni di Object Interface sono molte per consentire di lavorare in modo trasparente e visibile get_implementation, get_interface, is_nil, non_existent, is_a, is_equivalent, hash, duplicate, release, create_request, get_domain_manager, get_policy, set_policy_overrides, Middleware e CORBA 71 ORB INTERFACE in CORBA ORB si può intendere come l insieme di classi che permettono un buon supporto ad oggetti remoti Funzioni di conversioni varie funzioni helper per lavorare e trasformare gli Object Interface Interface ORB { string object_to_string (in Object obj); Object string_to_object (in string str); } possiamo così passare da una forma all altra anche tra ambienti diversi Anche funzioni per inizializzare i vari OA, per ritrovare servizi necessari, funzioni di base, ecc. ecc. Middleware e CORBA 72

37 ORB Funzioni varie ORB INTERFACE in CORBA ORB Initialize per il boot ORB ORB_init(inout arg_list arguments, in ORBid ORB_identifier) per il collegamento iniziale all ORB da parte dei clienti Anche object_to_string e string_to_object anche funzioni per ritrovare il contesto di default e interrogare IR typedef string ObjectID; typedef sequence <ObjectID> ObjectIDList; ObjectIDList list_initial_services (); Object resolve_initial_references (in ObjectID id); Middleware e CORBA 73 RIFERIMENTI AD OGGETTI in CORBA Necessità di identificatori da passare tra ambienti diversi CORBA 2 supporto sia per nomi unici e non unici Object Reference come nomi non unici associati ad un servizio ObjectRef al passaggio viene convertito da un sistema di nomi in un proxy nell'ambiente del ricevente per potere essere utilizzato ObjectRef possono essere passati da un ambiente ad un altro ed essere utilizzati dovunque ma non necessariamente per lo stesso oggetto (all interno di ORB diversi anche forme diverse) Possono contenere informazioni di: indirizzo nome del POA di creazione object ID Middleware e CORBA 74

38 NOMI UNICI in CORBA Necessità di identificatori unici tra ambienti diversi Interoperable Object Reference come nomi unici associati ad un servizio (IOR) che possono essere portati tra ORB diversi (passando anche attraverso stringhe) In genere, prima di passare da un ORB ad un altro IOR Cliente Object Reference IDL:MyObject:1.0 N_porta: ip_address OA1, Obj_2 Op() [OA1, Obj_2] Risposta Servitore Object Adapter: OA1 Obj_1 Obj_2 Obj_3 Middleware e CORBA 75 Interoperable Object Reference Accordo tra le rappresentazioni dei diversi ORB per i diversi oggetti che esistono al di fuori dell ORB Interoperable Object Reference o IOR IOR come ProfileID (identificatore) e tagged Profile (per determinare completamente) Middleware e CORBA 76

39 IOR in CORBA Inserimento in un Repository (appena depositato la prima volta) Repository Identifier Tagged Profile informazioni complete per la ricerca dell oggetto IIOP, nome host, porta, chiave identificativa, info. aggiuntive Si usano queste informazioni per decidere cosa passare al cliente che richiede una operazione (poi gli viene fornito il proxy locale per l oggetto stesso) Legame diretto (direct binding) se IOR riferisce direttamente l oggetto relativo Legame indiretto (indirect binding) se IOR riferisce al repository e solo indirettamente attraverso questo all oggetto finale Middleware e CORBA 77 IOR in CORBA Legame diretto e Legame indiretto (direct e indirect binding) Cliente Interoperable Object Reference (5) Op() [OA1, Obj_2] IDL:MyObject:1.0 n _porta: ip _address OA1, Obj_2 Risposta (7) (4) Location-forward ( N_porta_1: IP_Address_1) (2) Vbj /applicazioni /server: (1) Comando per attivare Op() [OA_1, Obj_2] il servizio Implementation Repository localizzato a n _porta: ip _address OA_1 Vbj \applicazioni\server Servitore N_porta_1: IP_Address_1 N_porta_1: IP_Address_1 Object Adapter: OA1 Obj_1 Obj_2 Obj_3 (3) Restituisce: N_porta_1: IP_Address_1 OA_2 Vbj \pub\gestore N_porta_2: IP_Address_2 OA_3 Implementation Repository Middleware e CORBA 78

40 OBJECT ADAPTER in CORBA Object Adapter come agenti intermedi per consentire di superare i problemi della eterogeneità dei diversi ambienti BOA (Basic Object Adapter) come la entità di base Permette la attivazione dei server con politiche semplici Shared server Unshared server Per Method server Persistent server un unico thread per tutti gli oggetti un processo per ogni oggetto un processo per ogni invocazione un processo unico fatto partire alla inizializzazione Middleware e CORBA 79 PORTABLE OBJECT ADAPTER - POA POA come agente portabile interoperabile che permette di passare da un object reference al codice concreto che deve servire la richiesta stessa Un POA può gestire molti oggetti diversi e seleziona su quali dirigere le operazioni In ambienti diversi, il POA è diverso (classi, variabili, metodi, attività) ma deve potere realizzare le politiche di base necessarie alla varietà delle interazioni possibili In un ambiente specifico, in genere esiste una classe base da cui derivano tutti i POA e che contiene i meccanismi per la gestione della richiesta e dei servant Il POA non eredita le politiche definite caso per caso Middleware e CORBA 80

41 PORTABLE OBJECT ADAPTER - POA POA come agente portabile per la interoperabilità Eredita da altri POA (di default) senza ereditare le politiche che devono essere espresse ad-hoc Politiche anche diverse e specializzate Middleware e CORBA 81 Funzioni di ADATTATORE Gli Adattatori POA hanno un metodo visibile ai clienti ObjectID activate_object (in Servant p) che restituisce un identificatore di oggetto CORBA e può ricevere in ingresso un puntatore ad un servant Il metodo permette anche la gestione della scelta esplicita tra servant nella Active Object Map ObjectID permettono la scelta dei servant nel POA Middleware e CORBA 82

42 PORTABLE OBJECT ADAPTER POA viene gestito da un POA Manager che esprime le politiche (come mappare servant e object reference) e le realizza Middleware e CORBA 83 PORTABLE OBJECT ADAPTER POA Manager capace di fornire operazioni per consentire politiche diverse. Il POA Manager permette di: attivare un POA (per fare partire il lavoro) disattivare un POA (per chiudere il lavoro dei POA) bloccare le richieste ai POA (il lavoro viene bloccato e non si fa partire nessuna operazione) scartare le richieste per i POA (tutte le richieste in arrivo e accodate sono scartate: nessuna operazione) Middleware e CORBA 84

43 OBJECT ADAPTER in CORBA POA come agente portabile per la gestione degli oggetti e dei servant RESPONSABILITÀ di Creazione object reference Identificazione degli ObjectID Gestire i servant relativi Oggetti CORBA transienti che non sopravvivono alla applicazione che li ha generati Oggetti CORBA persistenti che sopravvivono alla applicazione che li ha generati e rimangono disponibili anche per altre successive applicazioni Middleware e CORBA 85 OBJECT ADAPTER in CORBA POA come agente portabile per la interoperabilità le politiche derivano da proprietà specificate ad-hoc: Thread (ORB_CTRL_MODEL, SINGLE_THREAD_MODEL) Lifespan (TRANSIENT, PERSISTENT) Object ID Uniqueness (UNIQUE_ID, MULTIPLE_ID) ID Assignment (USER_ID, SYSTEM_ID) Servant Retention (RETAIN, NON_RETAIN) Requests (USE_ACTIVE_OBJECT_MAP_ONLY, USE_DEFAULT_SERVANT, USE_SERVANT_MANAGER) Implicit Activation (IMPLICIT_ACTIVATION, NO_IMPLICIT_ACTIVATION) Middleware e CORBA 86

44 POLITICHE PER I POA POA può consentire politiche molto differenziate per la gestione degli oggetti servant Politiche a default POA: Explicit Object Activation Un servant specifico è collegato ad un ObjectID con molto controllo della esecuzione Single Servant (per tutti gli oggetti) Un solo servant per ogni richiesta (anche oggetti di tipo diverso) On-Demand activation (per un singolo metodo) senza stato On-Demand activation (per durata indefinita) il servant si attiva su richiesta e si mantiene per ogni richiesta successiva Si possono anche combinare Middleware e CORBA 87 INTERFACE REPOSITORY in CORBA Interface Repository si occupa di registrare tutte le interfacce e di gestirne la memorizzazione e la ricerca Distingue tra contenitore e contenuti Middleware e CORBA 88

45 INTERFACE REPOSITORY in CORBA Interface Repository ad accesso direttamente o attraverso utilità proprietarie Ogni entità viene anche etichettata da un RepositoryID Si raccomandano formati diversi IDL IDL:/Vai/Servizi/Interfaccia:1.0 RMI hashed RMI: nome /hashcode DCE format DCE: UUID Local format LOCAL: libero Si fanno operazioni di accesso Contained lookup_id (in RepositoryID searchid); InterfaceDef get_interface(); Middleware e CORBA 89 INTERFACE REPOSITORY in CORBA Ad ogni interfaccia definita e compilata Si generano delle trascrizioni delle informazioni nell IR in base ai tipi che possono essere riconosciuti Middleware e CORBA 90

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi:

Routing (instradamento) in Internet. Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Routing (instradamento) in Internet Internet globalmente consiste di Sistemi Autonomi (AS) interconnessi: Stub AS: istituzione piccola Multihomed AS: grande istituzione (nessun ( transito Transit AS: provider

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

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

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

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

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

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

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

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

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

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

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

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

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

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

PROFILI ALLEGATO A. Profili professionali

PROFILI ALLEGATO A. Profili professionali ALLEGATO A Profili professionali Nei profili di seguito descritti vengono sintetizzate le caratteristiche di delle figure professionali che verranno coinvolte nell erogazione dei servizi oggetto della

Dettagli

Microsoft Innovation Center Roma. Pierluigi Del Nostro Stefano Paolozzi Maurizio Pizzonia

Microsoft Innovation Center Roma. Pierluigi Del Nostro Stefano Paolozzi Maurizio Pizzonia Microsoft Innovation Center Roma Pierluigi Del Nostro Stefano Paolozzi Maurizio Pizzonia Il MIC Roma Cos è Uno dei risultati dei protocolli di intesa tra il Ministero della Pubblica Amministrazione e l

Dettagli

MS OFFICE COMMUNICATIONS SERVER 2007 IMPLEMENTING AND MAINTAINING AUDIO/VISUAL CONFERENCING AND WEB CONFERENCING

MS OFFICE COMMUNICATIONS SERVER 2007 IMPLEMENTING AND MAINTAINING AUDIO/VISUAL CONFERENCING AND WEB CONFERENCING MS OFFICE COMMUNICATIONS SERVER 2007 IMPLEMENTING AND MAINTAINING AUDIO/VISUAL CONFERENCING AND WEB CONFERENCING UN BUON MOTIVO PER [cod. E603] L obiettivo del corso è fornire le competenze e conoscenze

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

IT Service Management, le best practice per la gestione dei servizi

IT Service Management, le best practice per la gestione dei servizi Il Framework ITIL e gli Standard di PMI : : possibili sinergie Milano, Venerdì, 11 Luglio 2008 IT Service Management, le best practice per la gestione dei servizi Maxime Sottini Slide 1 Agenda Introduzione

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

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

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

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 del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

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

Plesk Automation. Parallels. Domande tecniche più frequenti

Plesk Automation. Parallels. Domande tecniche più frequenti Parallels Plesk Automation Primo trimestre, 2013 Domande tecniche più frequenti Questo documento ha come scopo quello di rispondere alle domande tecniche che possono sorgere quando si installa e si utilizza

Dettagli

Zeroshell come client OpenVPN

Zeroshell come client OpenVPN Zeroshell come client OpenVPN (di un server OpenVpn Linux) Le funzionalità di stabilire connessioni VPN di Zeroshell vede come scenario solito Zeroshell sia come client sia come server e per scelta architetturale,

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

Visibilità dei Membri di una Classe

Visibilità dei Membri di una Classe Visibilità dei Membri di una Classe Lezione 10 Ogni classe definisce un proprio scope racchiude il codice contenuto nella definizione della classe e di tutti i suoi membri ogni metodo della classe definisce

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

I veri benefici dell Open Source nell ambito del monitoraggio IT. Georg Kostner, Department Manager Würth Phoenix

I veri benefici dell Open Source nell ambito del monitoraggio IT. Georg Kostner, Department Manager Würth Phoenix I veri benefici dell Open Source nell ambito del monitoraggio IT Georg Kostner, Department Manager Würth Phoenix IT Service secondo ITIL Il valore aggiunto dell Open Source Servizi IT Hanno lo scopo di

Dettagli

Scheda descrittiva del programma. Open-DAI. ceduto in riuso. CSI-Piemonte in rappresentanza del Consorzio di progetto

Scheda descrittiva del programma. Open-DAI. ceduto in riuso. CSI-Piemonte in rappresentanza del Consorzio di progetto Scheda descrittiva del programma Open-DAI ceduto in riuso CSI-Piemonte in rappresentanza del Consorzio di progetto Agenzia per l Italia Digitale - Via Liszt 21-00144 Roma Pagina 1 di 19 1 SEZIONE 1 CONTESTO

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

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

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP.

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP. Configurazione di indirizzi IP statici multipli Per mappare gli indirizzi IP pubblici, associandoli a Server interni, è possibile sfruttare due differenti metodi: 1. uso della funzione di Address Translation

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

PRESENTAZIONE DI UN SMS AL GATEWAY

PRESENTAZIONE DI UN SMS AL GATEWAY Interfaccia Full Ascii Con questa interfaccia è possibile inviare i dati al Server utilizzando solo caratteri Ascii rappresentabili e solo i valori che cambiano tra un sms e l altro, mantenendo la connessione

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

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

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

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

Sicurezza delle reti wireless. Alberto Gianoli alberto.gianoli@fe.infn.it

Sicurezza delle reti wireless. Alberto Gianoli alberto.gianoli@fe.infn.it Sicurezza delle reti wireless Alberto Gianoli alberto.gianoli@fe.infn.it Concetti di base IEEE 802.11: famiglia di standard tra cui: 802.11a, b, g: physical e max data rate spec. 802.11e: QoS (traffic

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

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

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

Esperienza di interoperabilità tra servizi bibliotecari tramite protocollo ISO-ILL. Colloquio standard ILL- SBN/Aleph e ILL-SBN /Sebina Open Library

Esperienza di interoperabilità tra servizi bibliotecari tramite protocollo ISO-ILL. Colloquio standard ILL- SBN/Aleph e ILL-SBN /Sebina Open Library Esperienza di interoperabilità tra servizi bibliotecari tramite protocollo ISO-ILL. Colloquio standard ILL- SBN/Aleph e ILL-SBN /Sebina Open Library A. Bardelli (Univ. Milano Bicocca), L. Bernardis (Univ.

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

La collaborazione come strumento per l'innovazione.

La collaborazione come strumento per l'innovazione. La collaborazione come strumento per l'innovazione. Gabriele Peroni Manager of IBM Integrated Communication Services 1 La collaborazione come strumento per l'innovazione. I Drivers del Cambiamento: Le

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

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

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL?

SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? archiviazione ottica, conservazione e il protocollo dei SAI QUANTO TEMPO IMPIEGHI A RINTRACCIARE UN DOCUMENTO, UN NUMERO DI TELEFONO O UNA E-MAIL? Il software Facile! BUSINESS Organizza l informazione

Dettagli

IL LIVELLO APPLICAZIONI DNS, SNMP e SMTP

IL LIVELLO APPLICAZIONI DNS, SNMP e SMTP Reti di Calcolatori IL LIVELLO APPLICAZIONI DNS, SNMP e SMTP D. Talia RETI DI CALCOLATORI - UNICAL 6-1 Applicazioni di Rete Domain Name System (DNS) Simple Network Manag. Protocol (SNMP) Posta elettronica

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

Reti di Telecomunicazione Lezione 7

Reti di Telecomunicazione Lezione 7 Reti di Telecomunicazione Lezione 7 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Il protocollo Programma della lezione file transfer protocol descrizione architetturale descrizione

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

! 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

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN

MODBUS-RTU per. Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie. Expert NANO 2ZN per Expert NANO 2ZN Specifiche protocollo di comunicazione MODBUS-RTU per controllo in rete dispositivi serie Expert NANO 2ZN Nome documento: MODBUS-RTU_NANO_2ZN_01-12_ITA Software installato: NANO_2ZN.hex

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

Milano, Settembre 2009 BIOSS Consulting

Milano, Settembre 2009 BIOSS Consulting Milano, Settembre 2009 BIOSS Consulting Presentazione della società Agenda Chi siamo 3 Cosa facciamo 4-13 San Donato Milanese, 26 maggio 2008 Come lo facciamo 14-20 Case Studies 21-28 Prodotti utilizzati

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

Introduzione a MySQL

Introduzione a MySQL Introduzione a MySQL Cinzia Cappiello Alessandro Raffio Politecnico di Milano Prima di iniziare qualche dettaglio su MySQL MySQL è un sistema di gestione di basi di dati relazionali (RDBMS) composto da

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

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

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

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

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

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

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

IT FINANCIAL MANAGEMENT

IT FINANCIAL MANAGEMENT IT FINANCIAL MANAGEMENT L IT Financial Management è una disciplina per la pianificazione e il controllo economico-finanziario, di carattere sia strategico sia operativo, basata su un ampio insieme di metodologie

Dettagli

Enterprise Services Infrastructure ESI 2.0

Enterprise Services Infrastructure ESI 2.0 Enterprise Services Infrastructure ESI 2.0 Caratteristiche e Posizionamento ver. 2.1 del 21/01/2013 Cos è ESI - Enterprise Service Infrastructure? Cos è ESI? ESI (Enteprise Service Infrastructure) è una

Dettagli

Payment Card Industry (PCI) Data Security Standard

Payment Card Industry (PCI) Data Security Standard Payment Card Industry (PCI) Data Security Standard Procedure per la scansione di sicurezza Versione 1.1 Release: settembre 2006 Indice generale Finalità... 1 Introduzione... 1 Ambito di applicazione dei

Dettagli