Università degli Studi di Parma Dipartimento di Matematica e Informatica Corso di Laurea in Informatica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università degli Studi di Parma Dipartimento di Matematica e Informatica Corso di Laurea in Informatica"

Transcript

1 Università degli Studi di Parma Dipartimento di Matematica e Informatica Corso di Laurea in Informatica Tesi di Laurea Progettazione e Realizzazione di un Editor di Workflow per la Piattaforma WADE Candidato: Federico Bacchi Relatore: Chiar.mo Prof. Federico Bergenti Anno Accademico 2013/2014

2 i

3 Indice 1 JADE, WADE e WOLF Introduzione a JADE Il modello peer-to-peer Il paradigma degli agenti I middleware JADE Il modello architetturale Il modello funzionale WADE e WOLF I workflow Scope di utilizzo Approccio Gestire la complessità della distribuzione ZK e WAM Introduzione a ZK I vantaggi di ZK L architettura ZK Model-View-Conroller e Model-View-ViewModel WAM Struttura e tipologia dei WAM WOLFWeb Panoramica del progetto Il lato client Diagramo Light modificato La pagina wolfweb.zul Il lato server Il composer WorkflowCommunicator Il metodo doaftercompose I metodi onsendfigures e onsendconnectors ii

4 Ringraziamenti Innanzitutto vorrei ringraziare il prof. Federico Bergenti per avermi proposto questo progetto che si è rivelato molto interessante e soprattutto per avermi supportato/sopportato in questo lavoro di tirocinio, aiutandomi sempre quando incontravo delle difficoltà. Ringrazio anche Enrico Scagliotti e Giovanni Caire di Telecom Italia per avermi fornito il materiale necessario per lo svolgimento del mio lavoro e ringrazio anche il mio compagno di studi Simone Tocci Bertocchi per avermi introdotto nel mondo dei workflow. Un grazie naturalmente a tutta la mia famiglia, in particolare alla mamma Clara e al Leo che si sono goduti momenti di mio estremo nervosismo, specialmente negli ultimi mesi. Un ringraziamento speciale va anche alla Lauretta che mi ha dato un grande sostegno in questo ultimo periodo universitario. Inoltre ha contribuito in maniera fondamentale alla correzione di questa tesi di laurea rileggendola più volte, obbligata dal sottoscritto, nonostante la sua allergia all informatica e a qualsiasi tipo di tecnologia. Ringrazio il Max, Sergio, Sammy, Abie, il Tiz e Bazooka perchè amici così (fuori di testa) è difficile trovarli. Grazie al gruppo C.A.C. per farmi ridere come un matto anche quando non ci si vede e alla Lega del Buon Riposo che mi fa attendere il primo giorno di ogni mese come se fossi un bambino che aspetta il Natale. 1

5 RINGRAZIAMENTI 2 Grazie a tutti i miei compagni di università, in particolare al gruppo dell Aula Studio: Tocci, Matte, Ponz, Fonta, Fedderè, Gando, Disa, Ila, Marti e Jessica (ma in quell aula si studiava davvero?). Grazie anche ai miei amici chimici per avermi adottato, in particolare ringrazio la cerchia del G.R.A.R. Bomber, Luca, Loc, Kevin, Angelone, Tanso, Ceci, Ranca, Elias e lo Zano, e gli Amici del Backgammon Ali, Giulia, Ale, Giamma e Andre. Tutti gli altri chimici non si sentano esclusi: siete troppi e la mia voglia di ringraziarvi uno ad uno è troppo poca. Un grazie a tutta la squadra degli Amatori Vigolzone, un gruppo di amici prima ancora che calciatori veramente stupefacente. Grazie ancora al Max, ad Abie e al Gardel che ogni settimana mi aiutano a staccare la spina dandomi l opportunità di attaccare il jack all amplificatore. Grazie a tutto il Gruppo Escursionisti Vigolzonesi, soprattutto ai giovani Cala, Je, Giammo, Simo, Ste, Michi, Silvia, Iso, Cami e Fabio che condividono con me l amore per la montagna (oltre a quello per le grigliate). Mi sto sicuramente dimenticando di ringraziare qualcuno, essendo fortunato ad avere tante persone importanti nella mia vita ma al tempo stesso sfortunato ad avere una memoria molto difettosa. Quindi mi salvo così: grazie a tutti.

6 RINGRAZIAMENTI 3 A papà Pinuccio.

7 Prefazione La grande rivoluzione nel campo dello sviluppo software negli anni 90 è stato l avvento della programmzione ad oggetti che portava con sè la possibilità di definire classi che implementavano una certa funzionalità all interno dell applicazione. Il programmatore che utilizzava una certa classe, doveva semplicemente invocare i suoi metodi senza preoccuparsi di come essi venissero realizzati. Nascevano dunque concetti come riusabilità delle classi e programmazione per componenti. Oggi sta emergendo una nuova filosofia di programmazione, grazie anche alla crescente diffusione di macchine sempre più potenti e soprattutto di ambienti distribuiti quali Internet e reti locali, ovvero la programmazione ad agenti. Essa si pone l obiettivo di superare sia il modello di programmazione tradizionale, in cui il programma gira su una sola macchina, sia il modello client-server, in cui l applicazione è suddivisa in due o più moduli che possono risiedere in macchine diverse e dialogare tra loro, mantenendo però una gerarchia marcata e ben definita. Infatti, avendo a disposizione un ambiente di rete, sia esso locale o globale, si possono concepire applicazioni distribuite formate da un insieme di componenti, chiamati appunto agenti, che oltre alla capacità di dialogare tra loro e di prendere decisioni, possono spostarsi da una macchina all altra portando con sè i propri dati. La programmazione ad agenti, dunque, può essere considerata come la realizzazione pratica dei 4

8 PREFAZIONE 5 concetti di programmazione concorrente e distribuita, rimasti troppo tempo solo una nozione meramenta teorica: essa infatti è concorrente, in quanto un agente può essere composto da più processi, ma anche distribuita, in quanto gli agenti concorrono a risolvere un problema generale. Come risultato del lavoro di molti ricercatori, nell ambito delle università e di grandi aziende, sono già apparse diverse librerie utilizzabili per creare applicazioni multiagente. JADE (Java Agent DEvelopment Framework) [1] sviluppato da Telecom Italia e dall Università degli Studi di Parma, è un middleware per lo sviluppo di applicazioni peer-to-peer ad agenti già molto diffuso in ambito aziendale ed universitario. Osservando bene le azioni compiute dagli agenti, si nota che queste seguono schemi prefissati ben definiti, rappresentabili come diagrammi di flusso. Per sfruttare questa similitudine, Telecom Italia ha realizzato WADE (Workflows and Agents Development Environment) [2] che aggiunge a JADE il supporto per l esecuzione di processi definiti con la metafora dei workflow, oltre a diverse meccaniche per lo sviluppo di aplicazioni basate sul modello peer-topeer, sfruttando i diagrammi di flusso per definire il comportamento degli agenti. In aggiunta a WADE è presente anche WOLF [2], un plugin Eclipse [3] che permette ai programmatori di applicazioni WADE-based di lavorare con una view grafica per definire il flusso di esecuzioni affiancata alla classica view codice Java, mantenendo la sincronizzazione tra le due. Grazie alla potenza dell IDE Eclipse, WOLF rende l implementazione di applicazioni native WADE più intuitiva, semplice e veloce.

9 PREFAZIONE 6 Lo scopo di questa tesi è progettare e realizzare un editor web di workflow, chiamato WOLFWeb, che permetta, similmente a WOLF, di creare diagrammi di flusso rappresentanti le azioni compiute da un agente. Per la creazione di WOLFWeb è stato usato Diagramo [4], un editor di workflow HTML5, e ZK [6], un framework Java per la costruzione di applicazioni Web, il quale ci ha permesso di sfruttare appieno gli strumenti per far sì che la nostra applicazione web potesse dialogare con una piattaforma WADE già esistente. Le appplicazioni Web, come è noto, offrono diversi vantaggi rispetto a quelle tradizionali: immediatezza di utilizzo senza necessità di installazione supporto all accesso multiutenza possibilità di utilizzo da qualsiasi postazione di lavoro facilità di distribuzione ed aggiornamento compatibilità cross-platform richiesta minore di memoria L applicazione WOLFWeb, dunque, avrà il compito di offrire una valida alternativa a WOLF per supportare gli sviluppatori di applicazioni WADEbased nela creazione dei workflow.

10 Capitolo 1 JADE, WADE e WOLF 1.1 Introduzione a JADE JADE (Java Agent DEvelopment Framework) [1] è un software open source sviluppato da Telecom Italia e dall Università degli Studi di Parma e distribuito con licenza GNU LGPL, totalmente implementato in Java, che può essere considerato un middleware conforme alle specifiche FIPA (Foundation for Intelligent Physical Agents) [5] per la realizzazione e l esecuzione di applicazioni peer-to-peer (P2P) ad agenti, tramite strumenti appositi utilizzati nella fase di sviluppo e debugging. JADE si occupa di tutti quegli aspetti indipendenti dall applicazione, quali il trasporto e la codifica dei messaggi o il ciclo di vita degli agenti. Per meglio capire il significato della definizione di JADE è bene sottolineare gli aspetti principali delle tecnologie utilizzate, ossia: 1. il modello di comunicazione peer-to-peer, 2. il paradigma degli agenti, 3. il concetto di middleware. 7

11 CAPITOLO 1. JADE, WADE E WOLF Il modello peer-to-peer L architettura più utilizzata oggigiorno per le applicazioni distribuite è sicuramente quello client-server, dove esiste una netta distinzione dei ruoli tra i nodi server (forniscono risorse e servizi) e i nodi client (richiedono risorse e servizi). I nodi server non possiedono capacità di iniziativa e attendono di essere chiamati dai nodi client, i quali, di contro, possono richiedere servizi (solitamente dopo una determinata azione dell utente) ma non forniscono alcuna capability. I client, inoltre, possono comparire e scomparire continuamente e hanno indirizzi dinamici, a differenza dei server che devono fornire garanzie di stabilità e possiedono solitamente un indirizzo fisso. Altro punto fondamentale di quest architettura riguarda la comunicazione: i nodi client comunicano solo con i nodi server ma non possono comunicare tra loro. L esempio più lampante di applicazioni basate sul modello client-server sono le applicazioni web: i client sono i browser, il cui compito è di ottenere informazioni sui siti internet sotto specifica richiesta di un utente e di presentarle graficamente in modo opportuno, mentre i nodi server sono i siti che contengono tutte le informazioni. Figura 1.1: Modelli di rete client-server e peer-to-peer

12 CAPITOLO 1. JADE, WADE E WOLF 9 Esistono però applicazioni distrubite che non si adattano bene a questo modello: si consideri, ad esempio, una chat dove gli utenti (i client) necessitano di comunicare tra loro. È possibile implementare tale applicazione con l architettura client-server, ma questo rappresenterebbe una forzatura: si pensi al singolo messaggio che dovrebbe essere spedito al server dal client X, per poi essere recuperato successivamente dal client Y. Il modello peer-to-peer sarebbe molto più adatto. Infatti, nel modello peer-to-peer non vi è una distinzione tra i ruoli, ciascun nodo può sia fornire che richiedere informazioni e servizi e tutti i nodi possono comunicare tra loro. La logica dell applicazione, dunque, non è più concentrata nel singolo server ma viene distribuita tra i peer. Un altra differenza sostanziale è rappresentata dalle modalità di discovery dei nodi con cui interagire: nel modello client-server, i client devono necessariamente conoscere l indirizzo del server e, di contro, non conoscono l indirizzo degli altri nodi client. Viceversa, nel sistema peer-to-peer chi conosce l indirizzo di chi è del tutto arbitrario, quindi vi è la necessità di scoprire quali sono gli altri nodi con cui comunicare: generalmente vi sono dei meccanismi di discovery appositi (pagine bianche o pagine gialle) che permettono ad ogni nodo di pubblicare le proprie informazioni e i propri servizi offerti in modo da renderli pubblici agli altri peer, i quali possono cercare nodi con le caratteristiche desiderate.

13 CAPITOLO 1. JADE, WADE E WOLF 10 Figura 1.2: Modelli di rete peer-to-peer Come mostrato in Figura 1.2, ci sono due modelli di P2P: quello puro e quello ibrido. Una rete peer-to-peer pura è completamente decentralizzata e i nodi sono del tutto autonomi. I peer devono utilizzare i protocolli specifici che la rete offre loro per cercare altri partner e comunicare successivamente con essi. La ricerca avviene tramite scambio di messaggi, dove non è presente nesssun elemento di coordinazione: si tratta, dunque, di reti difficili da gestire, sia per quanto riguarda la consistenza della rete, sia per quanto concerne il traffico (il quale aumenta in maniera esponenziale al crescere del numero dei peer) e la sicurezza (chiunque può entrare nella rete). È preferibile quindi usare un sistema peer-to-peer ibrido, dove sono presenti nodi speciali (detti nodi indice) che hanno il compito di semplificare la ricerca dei peer attivi e quella di determinati servizi. Questo tipo di rete peer-to-peer è più sicuro e genera solitamente meno traffico, però presenta il difetto di dipendere dai nodi indice: se essi non sono disponibili viene meno il sistema di discovery dei peer.

14 CAPITOLO 1. JADE, WADE E WOLF Il paradigma degli agenti Questo paradigma nasce dall unione di concetti provenienti dall intelligenza artificiale con altri riguardanti la tecnologia degli oggetti distribuiti. Il paradigma ad agenti prevede la realizzazione di un software che viene considerato come collezione di componenti, detti appunto agenti, i quali devono risultare: autonomi, in grado di svolgere lunghe operazioni senza ricevere input dall utente ad ogni passo della computazione, proattivi, in grado di prendere iniziativa anche senza stimoli da parte dell utente, comunicativi, in grado cioè di interagire tra loro per raggiungere lo scopo globale dell intero sistema. La caratteristica di comunicatività ci suggerisce che ogni applicazione che utilizza una tecnologia ad agenti sia intrinsecamente peer-to-peer, perché ogni agente è effettivamente in grado di iniziare una comunicazione con qualsiasi altro agente presente nel sistema, ogni agente ha la propria logica e può sia offrire che utilizzare servizi e risorse ed infine, gli agenti hanno bisogno di meccanismi di discovery per identificare con quali altri agenti possono comunicare. Si può quindi dire che, in ottica P2P, ogni agente rappresenti un peer.

15 CAPITOLO 1. JADE, WADE E WOLF 12 È evidente come la comunicazione rivesta un ruolo fondamentale ed è bene sottolineare tre aspetti: asincronia - ogni agente ha una sua logica interna che stabilisce come e quando gestire i messaggi ricevuti elvato grado di disaccoppiamento - gli agenti sono autonomi e sono legati debolmente tra loro interoperabilità - un agente, una volta ricevuto un messaggio, è in grado di attribuirgli il significato corretto e intuire l intenzione del mittente I middleware Con il termine middleware si identifica un insieme di software che semplifica lo sviluppo e la realizzazione di applicazioni. Si parla dunque di librerie, framework o toolkit che offrono servizi non tanto ad una singola applicazione, bensì ad un insieme di applicazioni che condividono determinate caratteristiche. Riprendendo il concetto di applicazione distribuita trattato in precedenza, a titolo esemplificativo, quando due nodi devono comunicare dovranno aprire una connessione di rete, trasferire i dati formattati opportunamente ed infine chiudere la connessione. Queste operazioni sono solitamente complesse e la realizzazione di esse può richiedere più tempo di quanto non necessiti la logica applicativa stessa. Si noti come tali operazioni sono indipendenti dall applicazione, da cui l importanza del middleware che si occupa di questi compiti e può essere riutilizzato da tutte le applicazioni che necessitano di scambio di dati. Non sarà quindi l applicazione a doversi occupare della soluzione di comunicazione ma sarà possibile utilizzare il middleware, il quale si interpone (sta appunto nel middle) tra applicazioni e strati di basso livello.

16 CAPITOLO 1. JADE, WADE E WOLF 13 Figura 1.3: Approccio verticale ed orizzontale La genericità e la trasversatilità del middleware suggeriscono il nome di approccio orizzontale, in contrasto con lo sviluppo verticale, in cui viene creata una soluzione ad hoc per ogni applicazione e quindi non riutilizzabile. 1.2 JADE JADE [1] è un middleware sviluppato da Telecom Italia e dall Università degli Studi di Parma per lo sviluppo di applicazioni distribuite ad agenti basate sull architettura di comunicazione P2P. L ambiente può evolvere dinamicamente nel tempo con i peer (chiamati appunto agenti in JADE) che possono apparire e scomparire nel sistema in qualsiasi momento, secondo le necessità dell applicazione. La comunicazione tra agenti è del tutto simmetrica, siano essi su una rete mobile o su di una fissa, ed è attivabile dall iniziativa di qualsiasi peer. JADE è completamente sviluppato in Java e poggia sui seguenti principi fondamentali: interoperabilità - JADE rispetta le specifiche dello standart FIPA, pertanto un agente JADE può comunicare ed operare anche con peer che non utilizzano il run-time di JADE.

17 CAPITOLO 1. JADE, WADE E WOLF 14 uniformità e portabilità - JADE fornisce un insieme di API che non dipende nè dalla rete nè dalla versione di Java, rendendo dunque le appplicazioni utilizzabili su qualsiasi tipo di dispositivo. semplicità - JADE nasconde la complessità del middleware, fornendo al programmatore API molto semplici da usare. filosofia pay-as-you-go - il programmatore non è obbligato ad utilizzare tutte le funzionalità che JADE offre e queste, se non usate, non aggiungono complessità, ne overhead computazionale Il modello architetturale JADE include sia le librerie di classi Java necessarie per la creazione degli agenti, sia l ambiente run-time che fornisce i servizi base i quali devono essere attivi per far si che un agente possa essere eseguito. Ogni istanza del run-time in JADE viene denominata container (contenitore di agenti) e un insieme di container è detto piattaforma, la quale nasconde agli agenti la complessità degli strati più bassi (hardware, sistemi operativi, tipologie di rete). Come evidenziato in Figura 1.4, JADE è compatibile con l ambiente J2ME CLDC/MIDP1.0, ed è già stato testato su diversi dispositivi, tra cui: Nokia 3650, Motorola Accompli008, Siemens SX45, PalmVx, Compaq ipaq, Psion5MX, HP Jornada 560. La libreria JADE in ambiente MIDP pesa circa 100 KB, ma può essere ridotto fino a 50 KB utilizzando la tecnica del ROMizing, di conseguenza può essere installato su qualsiasi dispositivo mobile, purchè Java-enabled. Oltre all integrazione con terminali mobile, o più in generale in ambienti con risorse assai limitate, JADE è stato utilizzato anche in architetture complesse come.net o J2EE, in cui JADE diventa un servizio per eseguire applicazioni multiparty e pro-attive.

18 CAPITOLO 1. JADE, WADE E WOLF 15 Figura 1.4: Architettura JADE Il modello funzionale Dal punto di vista funzionale, JADE fornisce i servizi base necessari ai software distribuiti P2P in ambiente fisso e mobile. Esso permette ad ogni agente di scoprire dinamicamente altri agenti e di scambiare dati tra loro secondo il paradigma peer-to-peer. Una piattaforma JADE include un servizio di nomenclatura univoca degli agenti ed un servizio di pagine gialle dove ogni agente può pubblicare e modificare i propri servizi e allo stesso tempo, cercare risorse offerte da altri agenti. La comunicazione tra gli agenti si basa sullo scambio asincrono di messaggi, un modello di comunicazione largamente utilizzato per le applicazioni distribuite, dove le entità sono eterogenee e non accoppiate. Il vantaggio maggiore è che quando un agente invia un messaggio ad una destinazione, il destinatario non deve essere per forza disponibile (adirittura potrebbe non

19 CAPITOLO 1. JADE, WADE E WOLF 16 esistere). Quindi il mittente non deve per forza conoscere il destinatario e viceversa. Tutto questo non intacca la sicurezza, perché JADE offre anche servizi di autenticazione degli agenti alle applicazioni che lo richiedono. Vi è dunque la possibilità di un agente di autorizzare la ricezione di messaggi inviati da una lista prestabilita di peer o di specificare le azioni che un agente può compiere, ad esempio potrebbe essere abilitato a ricevere ma non a trasmettere messaggi. La struttura dati del messaggio è conforme al linguaggio ACL definito da FIPA [5] e permette di rappresentare informazioni di supporto all interazione, quali contenuto del messaggio, timeout per le risposte, variabili e, soprattutto, permette di riferire a conversazioni multiple parallele. Il supporto alla conversazione è una funzionalità molto importante di JADE, il quale fornisce alle applicazioni pattern tipici di interazione associati a task specifici, tra cui la negoziazione, le aste e la delega di task. Usando questi pattern, il compito di gestire sincronizzazioni, timeout, condizioni di eccezione e, in generale, tutti gli aspetti che non riguardano direttamente la logica applicativa, non riguarda più il programmatore. Per incrementare la scalabilità e soddisfare i vincoli che ambienti con risorse limitate presentano, JADE offre la possibilità di eseguire task in parallelo eseguendoli all interno di uno stesso thread. Si pensi ad esempio a task elementari, come la comunicazione tra agenti e l opportunità di combinarli tra loro per realizzare task più complessi, che vengono così strutturati come macchine a stati finiti simultanei. In ambiente J2SE e PersonalJava JADE fornisce inoltre la portabilità del codice e dello stato di esecuzione.vi è dunque la possibilità da parte di un agente di fermare la propria esecuzione su un host, migrare su un host remoto e riprendere l esecuzione dallo stesso punto nel quale era stata

20 CAPITOLO 1. JADE, WADE E WOLF 17 interrotta. Questa importante caratteristica permette di distribuire il peso computazionale a run-time, muovendo agenti verso macchine con meno carico lavorativo senza per questo intaccare la corretta esecuzione dell applicazione. Queste caratteristiche rendono JADE molto adatto per supportare lo sviluppo e l esecuzione di applicazioni distribuite, multi-party, macchina-amacchina, intelligenti e proattive. JADE è reso disponibile a tutti sotto la licenza GPL ed una comunità open source è stata creata intorno ad esso. Grazie al contributo significativo di questa comunità, il middleware ha raggiunto l attuale livello di eccellenza ed un numero rilevante di enti interessati al suo utilizzo e sviluppo, che vanno da gruppi accademici o di ricerca e sviluppo alle imprese e start-up che basano parte dei loro prodotti e servizi sul middleware JADE.

21 CAPITOLO 1. JADE, WADE E WOLF WADE e WOLF WADE (Workflows and Agents Development Environment) [2] è una piattaforma indipendente costruita su JADE. Come descritto in precedenza, JADE fornisce un ambiente distribuito a tempo d esecuzione, l astrazione degli agenti (i peer) e dei behaviour (i task), la comunicazione peer-to-peer tra gli agenti stessi, la gestione del ciclo di vita degli agenti e i meccanismi di discovery di quest ultimi. A tutto questo, WADE aggiunge la possibilità di eseguire task tramite la metafora dei workflow (diagramma di flusso) e un numero di componenti e di meccanismi che aiutano nella gestione della complessità della distribuzione. In generale, in WADE non vi è nulla che lo sviluppatore non possa controllare. Tuttavia, considerando che uno dei vantaggi principali dell approccio con i workflow è proprio quello di rappresentare i processi con una veste grafica user-friendly, WADE presenta un ambiente di sviluppo chiamato WOLF, il quale facilita la creazione di software basato su di esso. WOLF è un plug-in per Eclipse [3] e permette agli sviluppatori di utilizzare tutto il potenziale e i vantaggi dell IDE Eclipse in aggiunta alle caratteristiche specifiche di WADE I workflow Un workflow è la definizione formale di un processo in termini delle attività che devono essere eseguite, relazioni tra esse, i criteri di attivazione e di terminazione e informazioni aggiuntive, quali i partecipanti, i tools software che devono essere invocati, input richiesti, output attesi e le modifiche ai dati durante l esecuzione. L aspetto principale della metafora del workflow è che i passi dell esecuzione sono espliciti, così come la loro sequenza. Questo rende possibile una rappresentazione grafica di un processo definito come workflow.

22 CAPITOLO 1. JADE, WADE E WOLF 19 Figura 1.5: WADE È lampante che una rappresentazione simile sia molto più chiara e leggibile di quanto non possa essere un frammento di codice e può essere compresa non solo dai programmatori, favorendo dunque lo sviluppo dell intero sistema. Essendo i vari passi dell esecuzione identificatati esplicitamente, un altro aspetto fondamentale è che il sistema che esegue i processi in automatico, chiamato nello specifico workflow engine, può tracciarli senza problemi e questo rende possibile la creazione di meccanismi automatici per il monitoraggio del sistema, solitamente implementati con procedure di controllo delle varie attività e creazione di reports sui processi stessi. In aggiunta possono essere attivati dei meccanismi semi-automatici di rollback in caso di errore inaspettato. Un ultimo aspetto importante dei workflow è che essi sono auto documentati, di conseguenza non vi è la necessità da parte del gruppo di sviluppo di mantenere la documentazione aggiornata ogni volta che vengano apportate delle modifiche.

23 CAPITOLO 1. JADE, WADE E WOLF Scope di utilizzo Abbiamo visto in precedenza che i workflow portano con sè numerosi vantaggi, i quali però non si verificano se si applica questa metafora ad operazioni a basso livello, come ad esempio gestione e trasformazionne di dati o operazioni matematiche complesse: scrivere codice software per tali operazioni è molto più efficiente per implementarle. Di contro, ad oggi la metafora dei workflow è largamente utilizzata in ambienti BPM (Business Process Management), dove un workflow rappresenta un processo business e dirige un numero di sistemi esistenti tipicamente accessibili tramite interfacce basate sui servizi web. L obiettivo di WADE è quello di portare l approccio a workflow anche ai livelli di logica interna del sistema. In definitiva, come descritto in Figura 1.6, WADE può essere utilizzato sia come orchestratore per coordinare sistemi esistenti, sia come framework di sviluppo software per creare nuove applicazioni che implicano l esecuzione di task lunghi e complessi Approccio WADE non contiene un singolo e potente workflow engine, al contrario fornisce un tipo di agente ad hoc (WorkflowEngineAgent) che ne include uno molto leggero. Di conseguenza, oltre ai normali task (JADE behaviour), ogni WorkflowEngineAgent attivo in un applicazione WADE-based è in grado di eseguire workflow rappresentati seguendo il formalismo di WADE. Per permettere ai programmatori di definire le logiche interne del sistema con la semplicità dei workflow e al tempo stesso di dare ad essa la stessa potenza espressiva di un linguaggio di programmazione con una efficienza di esecuzione comparabile, il formalismo di rappresentazione dei workflow

24 CAPITOLO 1. JADE, WADE E WOLF 21 Figura 1.6: Contesti di utilizzo di WADE WADE è basato interamente sul linguaggio Java. Un workflow che può essere eseguito dai WorkflowEngineAgent di WADE è espresso come una classe Java con una struttura ben definita (i dettagli si possono trovare sulla guida per utenti di WADE). Esso può essere dunque gestito come una qualsiasi classe Java: vi è la possibilità di inserirlo in qualsiasi frammento di codice, sia esso un metodo, un campo di qualsiasi tipo, una classe interna, un riferimento ad una classe esterna e così via, al fine di implementare i dettagli voluti. Oltre a tutto ciò, come detto in precedenza, il flusso di esecuzione che i workflow rappresentano, può essere presentato e modificato in maniera grafica, molto più intuitiva. Più in dettaglio, WOLF (l ambiente di sviluppo per le applicazioni basate su WADE) è un plugin Eclipse che permette agli sviluppatori di lavorare con una view grafica (più adatta a gestire il flusso del processo) e con una view codice (l editor Java classico di Eclipse per definire i dettagli dell esecuzione), le quali sono mantenute in sincronia per offrire al

25 CAPITOLO 1. JADE, WADE E WOLF 22 programmatore la possibilità di operare sull una o sull altra in base alle sue esigenze. Figura 1.7: View grafica di un workflow con WOLF In Figura 1.7 è possibile visualizzare la view grafica di WOLF, all interno di Eclipse, che permette tramite una palette di comporre i workflow per applicazioni WADE. Gli elementi si inseriscono selezionando dalla palette di destra il componente e cliccando poi all interno dello spazio di lavoro nella posizione desiderata; una finestra nello stile Eclipse comparirà per permettere di definire le caratteristiche dell elemento che si sta creando.

26 CAPITOLO 1. JADE, WADE E WOLF 23 Figura 1.8: Creare Activity (tipo Code) in WOLF Sarà poi possibile spostare l elemento inserito, aggiungere le transition (connessioni) da un elemento ad un altro e modificare le caratteristiche di un elemento tramite un click con il tasto destro del mouse. Ad ogni workflow creato con la view grafica corrisponde una classe Java modificabile tramite il classico editor per codice di Eclipse, dove è possibile cambiare il sorgente associato al workflow creato. Ogni modifica apportata al workflow in una specifica view è immediatamente riflessa nell altra, garantendo la consistenza tra le due. Il workflow engine di WADE, incluso in ogni WorkflowEngineAgent non è un interprete di un linguaggio di descrizione di workflow, bensì è un esecutore codice Java compilato. Per questo motivo esso è estremamente efficiente, d altra parte occorrono però le classi workflow necessarie quando esso riceve una richiesta di esecuzione di un workflow da parte di un agente.

27 CAPITOLO 1. JADE, WADE E WOLF 24 Figura 1.9: Modificare Activity in WOLF Per questo motivo WADE utilizza class loaders Java ad hoc per permettere lo sviluppo di workflow nuovi o modificati che diventano immediatamente eseguibili senza bisogno di dover spegnere l intero sistema. In WADE è inoltre possibile creare un workflow estendendone uno di base e specificando le differenze che intercorrono tra essi. Infine è bene notare che WADE non impone che tutte le logiche di sistema siano definite come workflow, al contrario gli sviluppatori sono liberi di utilizzare normali JADE behaviours quando lo ritengono più opportuno.

28 CAPITOLO 1. JADE, WADE E WOLF 25 Figura 1.10: View codice associata al workflow creato Gestire la complessità della distribuzione WADE eredita da JADE il sistema distribuito a runtime composto da diversi container che possono essere eseguiti su host differenti e che possono contenere un certo numero di agenti. Solitamente un container corrisponde ad una specifica JVM, anche se ciò non deve avvenire per forza. Un insieme di containers attivi è chiamato plaform, nella quale esiste un container speciale chiamato Main Container. Il Main Container deve essere il primo a partire e tutti gli altri (chiamati solitamenti container periferici) si registrano ad esso al tempo di bootstrap. Inoltre il Main Container contiene due agenti speciali:

29 CAPITOLO 1. JADE, WADE E WOLF 26 l AMS (Agent Management System) che rappresenta l autorità nella piattaforma e può eseguire azioni particolari, ad esempio è l unico a poter creare o terminare altri agenti, terminare containers e spegnere l intera piattaforma. Gli agenti normali, per potere svolgere azioni di questo tipo, devono richiedere i permessi direttamente all AMS. il DF (Directory Facilitator) che implementa il servizio di pagine gialle, dove gli agenti possono pubblicare i loro servizi e trovare altri agenti, i quali a loro volta offrono altri servizi Figura 1.11: Architettura principale

30 CAPITOLO 1. JADE, WADE E WOLF 27 Le applicazioni distribuite sono particolarmente indicate quando si tratta di gestire grandi carichi di lavoro, in quanto possono essere ospitate su architetture hardware altamente scalabili come i server blade. È chiaro però che amministrare un applicazione distribuita è molto più complesso rispetto alla stessa operazione eseguita su un applicazione monolitica se non si hanno a disposizione strumenti appositi. Inoltre la probabilità che si verifichino crash degli host cresce proporzionalmente con l aumentare del numero dei nodi sui quali l applicazione è distribuita: sono dunque necessari appositi meccanismi di recovery per garantire la stabilità dell applicazione. Spesso vengono usati sistemi di clustering per questi scopi, ma sono tipicamente costosi e difficili da configurare. WADE affronta questi problemi fornendo alcuni meccanismi per aiutare l amministratore a: configurare l applicazione, attivare/disattivare la distribuzione di componenti dell applicazione (container e agenti) sugli hosts disponibili in base alle esigenze specifiche, monitorare gli eventi a runtime e situazioni critiche come il consumo di memoria, effettuare a runtime modifiche senza necessità di spegnere il sistema, recuperare automaticamente da guasti ad host, container o agenti.

31 Capitolo 2 ZK e WAM 2.1 Introduzione a ZK ZK Framework [6] è un framework AJAX open source per applicazioni Web, sviluppato da Potix interamente in Java, che permette di creare interfacce utente grafiche. Il cuore di ZK si basa sul paradigma della programmazione ad eventi, consta di oltre 100 componenti XUL e 83 XHTML e di un suo linguaggio mark-up per la creazione delle interfacce. I programmatori sviluppano le loro pagine contenenti le applicazioni grazie a componenti ZUL/XHTML feature-rich che vengono manipolati tramite eventi generati dall attività degli utenti I vantaggi di ZK Il vantaggio più grande che ZK offre è quello di permettere allo sviluppatore di creare applicazioni RIA (Rich Internet Application) senza che egli debba conoscere JavaScript o AJAX, in quanto tali applicazioni vengono implementate puramente in Java (per l appunto l approccio utilizzato è denominato AJAX without JavaScript). 28

32 CAPITOLO 2. ZK E WAM 29 Inoltre ZK offre oltre cento componenti pensati per qualsiasi necessità dello sviluppatore: window, bottoni, componenti per visualizzare dati numerosi, componenti per l input dell utente e così via. Questi componenti possono essere creati dallo sviluppatore tramite un linguaggio XML-formatted chiamato ZUL. Tutti gli elementi di una pagina formano una struttura ad albero, dove ogni componente possiede un genitore e può avere a sua volta più figli. È bene sottolineare la versatilità di ZK per quanto riguarda la dichiarazione dei componenti che vanno a comporre l interfaccia utente: lo sviluppatore può usare un approccio basato sul XML (tag ZUL) oppure utilizzare un approccio orientato totalmente a Java, come mostrato in Figura 2.1. Figura 2.1: I diversi approcci per la composizione dell UI in ZK

33 CAPITOLO 2. ZK E WAM L architettura ZK Un applicazione ZK viene eseguita sul server e può accedere a determinate risorse, assembla l interfaccia utente con i componenti e manipola questi ultimi per aggiornare l interfaccia stessa. La sincronizzazione degli stati dei componenti tra il lato client e il lato server è eseguita automaticamente da ZK in modo trasparente dall applicazione stessa. Le interfacce utente sono costruite con componenti che seguono il modello POJO (Plain Old Java Object), in quanto esso rappresenta un approccio molto produttivo per sviluppare un applicazione Web. Con l architettura di ZK denominata server+client fusion, l applicazione viene eseguita ininterrottamente sul server e può aumentare la propria interattibilità aggiungendo funzioni opzionali sul lato client, come ad esempio la gestione di eventi, di effetti di visualizzazione personalizzati o anche della composizione dell interefaccia utente senza la presenza di codice sul lato server. ZK, dunque, permette una versatilità estrema da una soluzione puramente incentrata sul server ad una basata totalmente sul lato client, potendo così raggiungere ottimi livelli di produttività e di flessibilità. Figura 2.2: Architettura ZK

34 CAPITOLO 2. ZK E WAM Model-View-Conroller e Model-View-ViewModel ZK prevede diverse soluzioni per la progettazione, lo sviluppo e il testing di un applicazione, in particolare per la creazione di un sistema è consigliabile usare un design pattern che isoli il dominio dei dati, il dominio logico e l interfaccia utente. I pattern architetturali che separano questi tre concetti, entrambi supportati da ZK, sono: il Model-View-Controller (MVC) che viene così strutturato: la View in ZK consiste, come già detto in precedenza, ad un insieme di componenti e può essere implementata da un documeno ZUML o da codice Java. Il Controller (composer nella terminologia ZK) invece corrisponde ad una classe Java che funge da collante tra l interfaccia (la View) e i dati (il Model), il quale estende la classe SelectorComposer o implementa la classe Composer. La classe che rappresenta il Controller andrà in seguito specificata nell elemento che lo sviluppatore vuole gestire, all interno del documento ZUML. Infine la parte Model viene rappresentata dai dati che l applicazione gestisce, quindi dipende dalle specifiche dell applicazione stessa. Figura 2.3: Pattern architetturale MVC in ZK

35 CAPITOLO 2. ZK E WAM 32 il Model-View-ViewModel (MVVM) è una variante del pattern MVC originariamente introdotta da Microsoft. La View e il Model hanno lo stesso ruolo che ricoprono nel modello MVC, mentre la parte ViewModel rappresenta un Controller speciale per la View, il quale è responsabile di esporre i dati presi dalla parte Model e di svolgere determinate azioni secondo le richieste dell utente ricevute dalla View. Il ViewModel è un tipo di astrazione della View il quale contiene il suo stato e i suoi comportamenti, ma che non contiene nessun riferimento alle componenti che formano l interfaccia e non conosce nulla riguardo agli elementi che la compongono, il che rende le due componenti perfettamente separate. Questo porta a diversi vantaggi, quali la totale di libertà di modifica della parte View senza intaccare l efficienza del ViewModel, l alta riusabilità del codice in quanto è possibile definire numerose interfacce differenti dato un ViewModel e, infine, un alta testabilità del codice. Figura 2.4: Pattern architetturale MVVM in ZK

36 CAPITOLO 2. ZK E WAM 33 ZK fornisce un supporto a questo pattern architetturale con il meccanismo ZK Bind, come mostrato in figura 2.4. È infatti necessario sincronizzare la View con il ViewModel e in ZK il binder gioca questo ruolo di orchestratore tra le due componenti ed è lo sviluppatore a decidere le relazioni di binding tra gli elementi dell interfaccia e la parte ViewModel grazie alle ZK bind annotation. La binding source è rappresentata da un attributo di un componente, mentre il binding target e una proprietà o un comando del ViewModel e le annotazioni possono avere la sintassi di espressioni Java o di espressioni EL (Expression Language). Figura 2.5: Esempio di utilizzo delle ZK bind annotation

37 CAPITOLO 2. ZK E WAM WAM I WAM sono componenti ZK sviluppati da Telecom Italia che possiedono la capacità di connettersi con una piattaforma JADE e/o WADE. Al momento esistono diversi WAM che svolgono vari compiti, dal monitoraggio dei workflow alla gestione amministrativa della piattaforma connessa. Grazie ai WAM, dunque, è possibile operare con una piattaforma JADE e/o WADE tramite un applicazione web. Figura 2.6: Schema di riferimento dell utilizzo dei WAM

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

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

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

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

GESTIRE LA BIBLIOGRAFIA

GESTIRE LA BIBLIOGRAFIA GESTIRE LA BIBLIOGRAFIA STRUMENTI DI GESTIONE BIBLIOGRAFICA I software di gestione bibliografica permettono di raccogliere, catalogare e organizzare diverse tipologie di materiali, prendere appunti, formattare

Dettagli

SIASFi: il sistema ed il suo sviluppo

SIASFi: il sistema ed il suo sviluppo SIASFI: IL SISTEMA ED IL SUO SVILUPPO 187 SIASFi: il sistema ed il suo sviluppo Antonio Ronca Il progetto SIASFi nasce dall esperienza maturata da parte dell Archivio di Stato di Firenze nella gestione

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

Funzioni di base. Manualino OE6. Outlook Express 6

Funzioni di base. Manualino OE6. Outlook Express 6 Manualino OE6 Microsoft Outlook Express 6 Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito,

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

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

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

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

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

Guida ai Servizi Internet per il Referente Aziendale

Guida ai Servizi Internet per il Referente Aziendale Guida ai Servizi Internet per il Referente Aziendale Indice Indice Introduzione...3 Guida al primo accesso...3 Accessi successivi...5 Amministrazione dei servizi avanzati (VAS)...6 Attivazione dei VAS...7

Dettagli

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO... Modulo A Programmiamo in Pascal Unità didattiche 1. Installiamo il Dev-Pascal 2. Il programma e le variabili 3. Input dei dati 4. Utilizziamo gli operatori matematici e commentiamo il codice COSA IMPAREREMO...

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

Dettagli

Client di Posta Elettronica PECMailer

Client di Posta Elettronica PECMailer Client di Posta Elettronica PECMailer PECMailer è un semplice ma completo client di posta elettronica, ovvero un programma che consente di gestire la composizione, la trasmissione, la ricezione e l'organizzazione

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

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi

APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO. Francesco Marchione e Dario Richichi APPLICAZIONE WEB PER LA GESTIONE DELLE RICHIESTE DI ACQUISTO DEL MATERIALE INFORMATICO Francesco Marchione e Dario Richichi Istituto Nazionale di Geofisica e Vulcanologia Sezione di Palermo Indice Introduzione...

Dettagli

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale

MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale MINI GUIDA SINTETICA per l uso della lavagna interattiva multimediale InterWrite SchoolBoard è un software per lavagna elettronica di facile utilizzo. Può essere adoperata anche da studenti diversamente

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

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it

FIRESHOP.NET. Gestione Utility & Configurazioni. Rev. 2014.3.1 www.firesoft.it FIRESHOP.NET Gestione Utility & Configurazioni Rev. 2014.3.1 www.firesoft.it Sommario SOMMARIO Introduzione... 4 Impostare i dati della propria azienda... 5 Aggiornare il programma... 6 Controllare l integrità

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

GUIDA RAPIDA emagister-agora Edizione BASIC

GUIDA RAPIDA emagister-agora Edizione BASIC GUIDA RAPIDA emagister-agora Edizione BASIC Introduzione a emagister-agora Interfaccia di emagister-agora Configurazione dell offerta didattica Richieste d informazioni Gestione delle richieste d informazioni

Dettagli

Gestione Nuova Casella email

Gestione Nuova Casella email Gestione Nuova Casella email Per accedere alla vecchia casella questo l indirizzo web: http://62.149.157.9/ Potrà essere utile accedere alla vecchia gestione per esportare la rubrica e reimportala come

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

Dettagli

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO

MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO MATRICE DELLE FUNZIONI DI DRAGON NATURALLYSPEAKING 12 CONFRONTO TRA EDIZIONI DEL PRODOTTO Precisione del riconoscimento Velocità di riconoscimento Configurazione del sistema Correzione Regolazione della

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

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore)

Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Manuale d uso Apache OpenMeetings (Manuale Utente + Manuale Amministratore) Autore: Matteo Veroni Email: matver87@gmail.com Sito web: matteoveroni@altervista.org Fonti consultate: http://openmeetings.apache.org/

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

Lezione su Informatica di Base

Lezione su Informatica di Base Lezione su Informatica di Base Esplora Risorse, Gestione Cartelle, Alcuni tasti di scelta Rapida Domenico Capano D.C. Viterbo: Lunedì 21 Novembre 2005 Indice Una nota su questa lezione...4 Introduzione:

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

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

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

Web Conferencing Open Source

Web Conferencing Open Source Web Conferencing Open Source A cura di Giuseppe Maugeri g.maugeri@bembughi.org 1 Cos è BigBlueButton? Sistema di Web Conferencing Open Source Basato su più di quattordici componenti Open-Source. Fornisce

Dettagli

How to Develop Accessible Linux Applications

How to Develop Accessible Linux Applications How to Develop Accessible Linux Applications Sharon Snider Copyright 2002 IBM Corporation v1.1, 2002-05-03 Diario delle Revisioni Revisione v1.1 2002-05-03 Revisionato da: sds Convertito in DocBook XML

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

Energy Studio Manager Manuale Utente USO DEL SOFTWARE

Energy Studio Manager Manuale Utente USO DEL SOFTWARE Energy Studio Manager Manuale Utente USO DEL SOFTWARE 1 ANALYSIS.EXE IL PROGRAMMA: Una volta aperto il programma e visualizzato uno strumento il programma apparirà come nell esempio seguente: Il programma

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

Lezione n 1! Introduzione"

Lezione n 1! Introduzione Lezione n 1! Introduzione" Corso sui linguaggi del web" Fondamentali del web" Fondamentali di una gestione FTP" Nomenclatura di base del linguaggio del web" Come funziona la rete internet?" Connessione"

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

I Grafici. La creazione di un grafico

I Grafici. La creazione di un grafico I Grafici I grafici servono per illustrare meglio un concetto o per visualizzare una situazione di fatto e pertanto la scelta del tipo di grafico assume notevole importanza. Creare grafici con Excel è

Dettagli

I.Stat Guida utente Versione 1.7 Dicembre 2010

I.Stat Guida utente Versione 1.7 Dicembre 2010 I.Stat Guida utente Versione 1.7 Dicembre 2010 1 Sommario INTRODUZIONE 3 I concetti principali di I.Stat 4 Organizzazione dei dati 4 Ricerca 5 GUIDA UTENTE 6 Per iniziare 6 Selezione della lingua 7 Individuazione

Dettagli

Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1

Dipartimento di Sistemi e Informatica Università degli Studi di Firenze. Dev-C++ Ing. Michele Banci 27/03/2007 1 Dipartimento di Sistemi e Informatica Università degli Studi di Firenze Dev-C++ Ing. Michele Banci 27/03/2007 1 Utilizzare Dev-C++ Tutti i programmi che seranno realizzati richiedono progetti separati

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

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account

Outlook Express 6 Microsoft Internet Explorer, Avvio del programma Creare un nuovo account Outlook Express 6 è un programma, incluso nel browser di Microsoft Internet Explorer, che ci permette di inviare e ricevere messaggi di posta elettronica. È gratuito, semplice da utilizzare e fornisce

Dettagli

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor

NetMonitor. Micro guida all uso per la versione 1.2.0 di NetMonitor NetMonitor Micro guida all uso per la versione 1.2.0 di NetMonitor Cos è NetMonitor? NetMonitor è un piccolo software per il monitoraggio dei dispositivi in rete. Permette di avere una panoramica sui dispositivi

Dettagli

Porta di Accesso versione 5.0.12

Porta di Accesso versione 5.0.12 Pag. 1 di 22 Controlli da effettuare in seguito al verificarsi di ERRORE 10 nell utilizzo di XML SAIA Porta di Accesso versione 5.0.12 Pag. 2 di 22 INDICE 1. INTRODUZIONE... 3 2. VERIFICHE DA ESEGUIRE...3

Dettagli

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1

Cross Software ltd Malta Pro.Sy.T Srl. Il gestionale come l'avete sempre sognato... Pag. 1 Il gestionale come l'avete sempre sognato... Pag. 1 Le funzionalità di X-Cross La sofisticata tecnologia di CrossModel, oltre a permettere di lavorare in Internet come nel proprio ufficio e ad avere una

Dettagli

Guida rapida all uso di ECM Titanium

Guida rapida all uso di ECM Titanium Guida rapida all uso di ECM Titanium Introduzione Questa guida contiene una spiegazione semplificata del funzionamento del software per Chiputilizzare al meglio il Tuning ECM Titanium ed include tutte

Dettagli

Dipartimento del Tesoro

Dipartimento del Tesoro Dipartimento del Tesoro POWER POINT AVANZATO Indice 1 PROGETTAZIONE DELL ASPETTO...3 1.2 VISUALIZZARE GLI SCHEMI...4 1.3 CONTROLLARE L ASPETTO DELLE DIAPOSITIVE CON GLI SCHEMI...5 1.4 SALVARE UN MODELLO...6

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

WINDOWS - Comandi rapidi da tastiera più utilizzati.

WINDOWS - Comandi rapidi da tastiera più utilizzati. WINDOWS - Comandi rapidi da tastiera più utilizzati. La prima colonna indica il tasto da premere singolarmente e poi rilasciare. La seconda e terza colonna rappresenta la combinazione dei i tasti da premere

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

Suggerimenti forniti da MetaQuotes per l utilizzo di MetaTrader 4 con Mac OS

Suggerimenti forniti da MetaQuotes per l utilizzo di MetaTrader 4 con Mac OS Suggerimenti forniti da MetaQuotes per l utilizzo di MetaTrader 4 con Mac OS Nonostante esistano già in rete diversi metodi di vendita, MetaQuotes il programmatore di MetaTrader 4, ha deciso di affidare

Dettagli

Boot Camp Guida all installazione e alla configurazione

Boot Camp Guida all installazione e alla configurazione Boot Camp Guida all installazione e alla configurazione Indice 4 Introduzione 5 Cosa ti occorre 6 Panoramica dell installazione 6 Passo 1: verifica la presenza di aggiornamenti. 6 Passo 2: apri Assistente

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

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

CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA

CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA CATTURARE LO SCHERMO INTERO O LA FINESTRA ATTIVA Supponiamo di voler eseguire una istantanea del nostro desktop, quella che in gergo si chiama Screenshot (da screen, schermo, e shot, scatto fotografico).

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

minilector/usb Risoluzione dei problemi più comuni di malfunzionamento

minilector/usb Risoluzione dei problemi più comuni di malfunzionamento minilector/usb minilector/usb...1 Risoluzione dei problemi più comuni di malfunzionamento...1 1. La segnalazione luminosa (led) su minilector lampeggia?... 1 2. Inserendo una smartcard il led si accende

Dettagli

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL

8. L'USO DEL PROGRAMMA DI POSTA ELETTRONICA INSIEME ALLA GESTIONE PROFESSIONALE DI DOCUMENTI IN FORMATO E-MAIL This project funded by Leonardo da Vinci has been carried out with the support of the European Community. The content of this project does not necessarily reflect the position of the European Community

Dettagli

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,

Dettagli

Come installare e configurare il software FileZilla

Come installare e configurare il software FileZilla Come utilizzare FileZilla per accedere ad un server FTP Con questo tutorial verrà mostrato come installare, configurare il software e accedere ad un server FTP, come ad esempio quello dedicato ai siti

Dettagli

Guida all utilizzo del dispositivo USB

Guida all utilizzo del dispositivo USB Guida all utilizzo del dispositivo USB 30/04/2013 Sommario - Limitazioni di responsabilità e uso del manuale... 3 1. Glossario... 3 2. Guida all utilizzo del dispositivo USB... 4 2.1 Funzionamento del

Dettagli

Configurazioni Mobile Connect

Configurazioni Mobile Connect Mailconnect Mail.2 L EVOLUZIONE DELLA POSTA ELETTRONICA Configurazioni Mobile Connect iphone MOBILE CONNECT CONFIGURAZIONE MOBILE CONNECT PER IPHONE CONFIGURAZIONE IMAP PER IPHONE RUBRICA CONTATTI E IPHONE

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 ad Access

Introduzione ad Access Introduzione ad Access Luca Bortolussi Dipartimento di Matematica e Informatica Università degli studi di Trieste Access E un programma di gestione di database (DBMS) Access offre: un supporto transazionale

Dettagli

INFORMATIVA FINANZIARIA

INFORMATIVA FINANZIARIA Capitolo 10 INFORMATIVA FINANZIARIA In questa sezione sono riportate le quotazioni e le informazioni relative ai titoli inseriti nella SELEZIONE PERSONALE attiva.tramite la funzione RICERCA TITOLI è possibile

Dettagli

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

Dettagli

Enterprise Content Management. Terminologia. KM, ECM e BPM per creare valore nell impresa. Giovanni Marrè Amm. Del., it Consult

Enterprise Content Management. Terminologia. KM, ECM e BPM per creare valore nell impresa. Giovanni Marrè Amm. Del., it Consult KM, ECM e BPM per creare valore nell impresa Giovanni Marrè Amm. Del., it Consult Terminologia Ci sono alcuni termini che, a vario titolo, hanno a che fare col tema dell intervento KM ECM BPM E20 Enterprise

Dettagli

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009

Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Corso SOL Gestione catalogo libro moderno 21-22 settembre 2009 Introduzione generale Autenticazione dell operatore https://sebina1.unife.it/sebinatest Al primo accesso ai servizi di Back Office, utilizzando

Dettagli

TeamViewer 7 Manuale Controllo remoto

TeamViewer 7 Manuale Controllo remoto TeamViewer 7 Manuale Controllo remoto TeamViewer GmbH Kuhnbergstraße 16 D-73037 Göppingen teamviewer.com Indice 1 Informazioni su TeamViewer... 5 1.1 Informazioni sul software... 5 1.2 Informazioni sul

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

Ultimo aggiornamento.: 18/02/2006 Pagina 1 di 25

Ultimo aggiornamento.: 18/02/2006 Pagina 1 di 25 Introduzione al programma POWERPOINT Ultimo aggiornamento.: 18/02/2006 Pagina 1 di 25 Introduzione al programma POWERPOINT 1 1 Introduzione al programma 3 2 La prima volta con Powerpoint 3 3 Visualizzazione

Dettagli

Installazione di GFI Network Server Monitor

Installazione di GFI Network Server Monitor Installazione di GFI Network Server Monitor Requisiti di sistema I computer che eseguono GFI Network Server Monitor richiedono: i sistemi operativi Windows 2000 (SP4 o superiore), 2003 o XP Pro Windows

Dettagli

Documentazione Servizio SMS WEB. Versione 1.0

Documentazione Servizio SMS WEB. Versione 1.0 Documentazione Servizio SMS WEB Versione 1.0 1 Contenuti 1 INTRODUZIONE...5 1.1 MULTILANGUAGE...5 2 MESSAGGI...7 2.1 MESSAGGI...7 2.1.1 INVIO SINGOLO SMS...7 2.1.2 INVIO MULTIPLO SMS...9 2.1.3 INVIO MMS

Dettagli

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it

INTRODUZIONE, LINGUAGGIO, HANDS ON. Giuseppe Cirillo g.cirillo@unina.it INTRODUZIONE, LINGUAGGIO, HANDS ON Giuseppe Cirillo g.cirillo@unina.it Il linguaggio C 1972-Dennis Ritchie 1978-Definizione 1990-ANSI C 1966 Martin Richars (MIT) Semplificando CPL usato per sviluppare

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

MailStore Proxy è disponibile gratuitamente per tutti i clienti di MailStore Server all indirizzo http://www.mailstore.com/en/downloads.

MailStore Proxy è disponibile gratuitamente per tutti i clienti di MailStore Server all indirizzo http://www.mailstore.com/en/downloads. MailStore Proxy Con MailStore Proxy, il server proxy di MailStore, è possibile archiviare i messaggi in modo automatico al momento dell invio/ricezione. I pro e i contro di questa procedura vengono esaminati

Dettagli

GESTIONE ATTREZZATURE

GESTIONE ATTREZZATURE SOLUZIONE COMPLETA PER LA GESTIONE DELLE ATTREZZATURE AZIENDALI SWSQ - Solution Web Safety Quality srl Via Mons. Giulio Ratti, 2-26100 Cremona (CR) P. Iva/C.F. 06777700961 - Cap. Soc. 10.000,00 I.V. -

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

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

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

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE In un mercato delle Telecomunicazioni sempre più orientato alla riduzione delle tariffe e dei costi di

Dettagli

Integrated Development Environment (IDE) DevC++ 4.9.9.2

Integrated Development Environment (IDE) DevC++ 4.9.9.2 Integrated Development Environment (IDE) DevC++ 4.9.9.2 Manuale utente Data ultima revisione: 22/10/2008 Fondamenti di informatica Università Facoltà Corso di laurea Politecnico di Bari 1 a Facoltà di

Dettagli

2009 Elite Computer. All rights reserved

2009 Elite Computer. All rights reserved 1 PREMESSA OrisDent 9001 prevede la possibilità di poter gestire il servizio SMS per l'invio di messaggi sul cellulare dei propri pazienti. Una volta ricevuta comunicazione della propria UserID e Password

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

INDICE Informazioni Generali... 4. Comprare ebook con Kobo Desktop... 8. Usare la Libreria di Kobo Desktop... 10. Leggere su Kobo Desktop...

INDICE Informazioni Generali... 4. Comprare ebook con Kobo Desktop... 8. Usare la Libreria di Kobo Desktop... 10. Leggere su Kobo Desktop... Kobo Desktop Manuale Utente INDICE Informazioni Generali... 4 Installare Kobo Desktop su Windows... 5 Installare Kobo Desktop su Mac... 6 Comprare ebook con Kobo Desktop... 8 Usare la Libreria di Kobo

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

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

FileMaker Server 13. Guida di FileMaker Server

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

Dettagli

Il Business Process Management: nuova via verso la competitività aziendale

Il Business Process Management: nuova via verso la competitività aziendale Il Business Process Management: nuova via verso la competitività Renata Bortolin Che cosa significa Business Process Management? In che cosa si distingue dal Business Process Reingeneering? Cosa ha a che

Dettagli

INFORMAZIONI GENERALI...2 INSTALLAZIONE...5 CONFIGURAZIONE...6 ACQUISTO E REGISTRAZIONE...11 DOMANDE FREQUENTI:...13 CONTATTI:...

INFORMAZIONI GENERALI...2 INSTALLAZIONE...5 CONFIGURAZIONE...6 ACQUISTO E REGISTRAZIONE...11 DOMANDE FREQUENTI:...13 CONTATTI:... INFORMAZIONI GENERALI...2 INSTALLAZIONE...5 CONFIGURAZIONE...6 ACQUISTO E REGISTRAZIONE...11 DOMANDE FREQUENTI:...13 CONTATTI:...14 Ultimo Aggiornamento del Documento: 23 / Marzo / 2012 1 INFORMAZIONI

Dettagli

IT-BOOK. Domini Hosting Web marketing E-mail e PEC

IT-BOOK. Domini Hosting Web marketing E-mail e PEC 5 giugno 09 IT-BOOK Configurazioni e cartatteristiche tecniche possono essere soggette a variazioni senza preavviso. Tutti i marchi citati sono registrati dai rispettivi proprietari. Non gettare per terra:

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