Una piattaforma per servizi di KDD

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Una piattaforma per servizi di KDD"

Transcript

1 Una piattaforma per servizi di KDD Claudia Diamantini, Maurizio Panti, Domenico Potena Università Politecnica delle Marche, Istituto di Informatica, via Brecce Bianche, Ancona, Italy Sommario La varietá degli strumenti e lo sviluppo continuo di nuove tecniche configura un sistema ideale di supporto alla progettazione di processi di KDD come un sistema aperto e modulare. Per raggiungere questi obiettivi, l articolo presenta l idea di un sistema di KDD come piattaforma, che sfrutta concetti e tecnologie sviluppati nell ambito della computazione cooperativa ed in particolare dei servizi web. 1 Introduzione Un processo di Knowledge Discovery in Databases (KDD) é un processo fortemente interattivo ed iterativo di manipolazione di dati con l obiettivo finale di ottenere in uscita un insieme di informazioni, precedentemente sconosciute, valide e potenzialmente utili [6]. Interattivitá e iterativitá dipendono dalla complessitá intrinseca del processo di scoperta, che é sostanzialmente di tipo goal-driven e domain dependent, e che pertanto é fortemente dipendente dall intervento umano. Un sistema di KDD pertanto deve essere pensato come un sistema di supporto alla progettazione di processi di KDD, che mette a disposizione dell utente un insieme di strumenti di base e un ambiente conveniente per il loro utilizzo. Affinché un sistema di KDD si configuri come un ambiente di progettazione conveniente, dovrá possedere le seguenti caratteristiche [8,5]: fornire ampia disponibilitá di strumenti diversi, per adattarsi a diversi domini, applicazioni, sorgenti; fornire un ambiente che permetta di gestire diverse versioni alternative di una soluzione, facilitandone la valutazione comparativa; fornire supporto sia ad utenti esperti che ad utenti inesperti, principalmente introducendo un livello concettuale di descrizione degli strumenti, rendendo il piú trasparente possibile i dettagli dell implementazione, e supportando le attivitá di scelta e di integrazione di tecniche differenti. La varietá degli strumenti e lo sviluppo continuo di nuove tecniche configura un sistema di KDD ideale come un sistema aperto e modulare, nel quale nuovi algoritmi e metodi possano essere introdotti all occorrenza. Inoltre, sono auspicabili caratteristiche di riusabilitá in quanto gli utenti del sistema non sono necessariamente esperti di implementazione e sviluppo. Modularitá, flessibilitá,

2 trasparenza e riuso sono le motivazioni dell introduzione di modelli computazionali distribuiti di tipo lascamente accoppiato, o cooperativo, che trovano nei Web Services l architettura di riferimento emergente [4,18]. Obiettivo di questo articolo é mostrare come il paradigma di interazione tra processi software descritto dall architettura a Web Service possa essere utilmente applicato ad un sistema di KDD, per trattare le problematiche di riusabilitá del software. Non ci occuperemo, invece, delle problematiche che sorgono quando le risorse sono fisicamente distribuite su una rete. Di conseguenza non verranno considerate componenti per l ottimizzazione delle risorse e per il trattamento di grandi quantitá di dati. Il presente lavoro trova i principali riferimenti nell ambito del Data Mining distribuito e dei Web Services. Nel primo ambito (si veda [13] per una rassegna sull argomento), sono state proposte diverse architetture per supportare applicazioni distribuite di Data Mining [3,9,14,11,12,17,2] le quali affrontano il problema da diverse prospettive. In particolare, [11,3,17] propongono sistemi che supportano il progetto e l inserimento di applicazioni personalizzate di data mining, e la loro combinazione in componenti piú complesse, utilizzando tecnologie ad oggetti. Inoltre, [17] utilizza un approccio di tipo dataflow simile a quello introdotto nel presente articolo per supportare la combinazione di componenti. Recentemente é stato proposto un sistema di KDD distribuito e parallelo che poggia sui servizi di un architettura Grid [2]. Quest ultimo approfondisce le funzionaltá per il trattamento di dati e operazioni su larga scala, mentre il presente lavoro pone l accento, oltre che sulla riusabilitá del software, anche sulla definizione di strumenti di supporto specifici alla progettazione di processi di KDD, quali la gestione dei dati intermedi, il versioning ed il controllo sintattico del processo. Le caratteristiche dei due sistemi sono tali da poter essere fuse anche alla luce della proposta OGSA [20]. La visione di modelli di data mining come servizi su Internet é introdotta in [19], al fine di facilitare l uso di tali tecniche ad utenti inesperti. Tale proposta riguarda tuttavia l uso di singoli modelli, in particolare di classificazione, mentre il concetto di piattaforma di servizi web per la progettazione di un intero processo di KDD é, allo stato delle nostre conoscenze, completamente nuovo. Nell ambito dei Web Services la direzione attuale di ricerca é quella di modellare i livelli superiori di servizio, che poggiano sul modello comunicativo fornito dall attuale tecnologia basata su XML. A tali livelli si affrontano le problematiche di composizione dei Service [7,16] e di interoperabilitá, tramite l introduzione di standard specifici [1,10] o tecniche di mediazione [15]. Nella piattaforma proposta nel presente articolo entrambe queste problematiche sono prese in considerazione, tramite l introduzione di funzionalitá per la gestione di workflow e tramite l introduzione di meccanismi per la omogenizzazione dei servizi. L articolo é organizzato come segue: nella sezione 2 si descrivono in dettaglio i requisiti richiesti ad un sistema di KDD proponendo una architettura di massima per soddisfarli. Nella sezione 3 tale architettura di massima viene specificata seguendo il modello dei Web Services. Nelle sezioni 4 e 5 vengono descritti i blocchi funzionali del sistema di KDD. La sezione 6 conclude l articolo. 2

3 2 Requisiti di un sistema di Knowledge Discovery in Database Seguendo [6], il processo di KDD puó essere suddiviso in 5 fasi principali: Selection, Preprocessing, Transformation, Data Mining, Interpretation/Evaluation. Ognuna di queste fasi raggruppa un insieme di attivitá omogenee: Selection: query su base di dati per selezionare il data-set di interesse; Preprocessing e Data Cleaning: filtraggio del rumore, eliminazione degli outliers, trattamento dei dati con campi mancanti, accounting di sequenze temporali; Transformation: riduzione della dimensione dello spazio degli osservati tramite proiezione (ricombinazione delle variabili) e analisi della distribuzione dei dati, individuazione di rappresentazioni invarianti dei dati; Data Mining: induzione di modelli tramite tecniche di Classificazione, Clustering, Regole associative, Regressione; Interpretation/Evaluation: rappresentazioni grafiche e tabellari dei risultati, rappresentazione simbolica dei modelli, creazione di report riassuntivi, valutazione di prestazioni. Ognuna delle attivitá elencate puó essere realizzata praticamente tramite diversi algoritmi, ad esempio l attivitá di classificazione puó essere realizzata tramite Support Vector Machines, Nearest Neighbor, C4.5 o altri. Infine, ognuno di questi algoritmi puó essere implementato in maniera differente sia dal punto di vista della logica di esecuzione, che del linguaggio, che dei dati in ingresso ed in uscita. L input/output di queste implementazioni si differenziano per sintassi e semantica, ovvero per il formato e per il loro significato. Da questa breve descrizione, si puó evincere la complessitá intrinseca della progettazione di un processo di KDD, dovuta ai numerosi gradi di libertá con cui l utente si trova a lavorare ed alla natura goal-driven e domain dependent del problema, che fa si che l utente di un sistema di KDD debba essere in grado di riconoscere gli strumenti piú adeguati per il proprio contesto, e possedere conoscenze tecniche per utilizzarli propriamente. Tuttavia, esso é tipicamente un esperto di dominio, ma non un conoscitore esperto di tutti gli algoritmi implementabili. É, quindi, auspicabile l introduzione di strumenti di supporto alla progettazione di processi di KDD, tali da garantire: trasparenza: rispetto alla implementazione, alla localizzazione e chiamata degli algoritmi e rispetto all accesso ai dati da analizzare, con la possibilitá di gestire una o piú basi di dati eterogenee e distribuite; flessibilitá: lo strumento deve gestire facilmente l introduzione di nuovi algoritmi, la modifica o la cancellazione di quelli esistenti. Deve gestire le possibili combinazioni degli algoritmi atte a formare il processo di KDD; riusabilitá dei componenti: favorire l utilizzo di algoritmi giá implementati senza modificarne il codice. facilitá d uso: proporre una interfaccia user friendly, preferibilmente di tipo grafico. É auspicabile che all utente i moduli appaiano come componenti di 3

4 un domino, in cui sia possibile comporre una sequenza usando, a partire da un dato modulo, solo alcuni tra gli altri moduli disponibili. In questo modo si garantisce la facilitá d uso presente nella maggior parte dei pacchetti software in commercio [5]. Inoltre, é auspicabile un supporto proattivo alla progettazione del processo, che gestisca i vincoli sulla concatenabilitá degli algoritmi e proponga prototipi possibili di processo; versioning/prototyping: con questo termine si vuole indicare la necessitá di tenere traccia degli esperimenti, gestendo in maniera efficiente i dati intermedi. Principalmente nell ottica della ricerca, é auspicabile che il sistema permetta di valutare le prestazioni ad ogni modifica dei moduli usati o del settaggio dei parametri. Figura 1. L architettura a Coordinatore. Di seguito, con il termine modulo indicheremo ogni componente software che implementi un algoritmo di KDD. D ora in poi, senza perdita di generalitá considereremo i moduli presenti in un unico repository. Per costruire un sistema di KDD, a partire dai moduli e rispettando i requisiti precedentemente esposti, é utile introdurre un architettura basata su uno strato software che si ponga ad un livello intermedio tra l analista ed i moduli stessi, che funga da coordinatore ed interprete. Tale modulo di coordinamento dovrebbe essere in grado di interrogare il repository, riconoscere e raggruppare i moduli presenti secondo le loro funzionalitá, rendere disponibili tutte queste informazioni all analista in forma comprensibile, tradurre il formato dei dati presenti nel DB nel formato di input dei moduli. L architettura che prevede questo modulo di coordinamento (il coordinatore) é schematizzato in Figura 1. Distinguendo il livello di coordinamento da quello dei moduli, si puó lavorare al fine di assicurare la flessibiliá e la riusabilitá. La presenza dell interfaccia grafica (GUI) tra il Coordinatore e l utente/analista garantisce trasparenza e facilitá d uso. Il soddisfacimento dei requisiti specifici, quali il supporto alla progettazione del processo ed il versioning, sará realizzato tramite l introduzione di funzioni specifiche del Coordinatore descritte nella sezione 4. 3 Dal WEB Service al KDD Service Per rappresentare l architettura a Coordinatore, in questa sezione analizziamo la corrispondenza tra le componenti funzionali di un sistema di KDD e quelle di una generica architettura a Web Service [4,18], che conduce all introduzione del concetto di piattaforma per servizi di KDD. 4

5 Una tipica architettura Web Service é costituita da tre unitá interagenti (come mostrato in Figura 2): Figura 2. Schema di un architettura basata su Web Service. Service provider, che creano i Service e li mettono a disposizione di altri utenti registrandoli presso i Service broker; Service broker, che contengono un registro dei Service pubblicati; utenti utilizzatori dei Service, che individuano i servizi a loro utili tramite i Service broker ed interagiscono con i Service provider in cui tali servizi si trovano. Questo modello computazionale si basa su tre tecnologie principali: Web Services Description Language (WSDL), Universal Description Discovery and Integration (UDDI) e Simple Object Access Protocol (SOAP). Il WSDL é un linguaggio che permette di fornire una descrizione astratta del Service e rende disponibili le informazioni sul tipo di protocollo usato, sulla posizione del Service e su come realizzare le interazioni tra le funzioni del Service. L UDDI fornisce le specifiche necessarie per la registrazione e la localizzazione del Service, tramite un elenco centralizzato di servizi, detto registro. Le informazioni consultabili nel registro sono di tre tipi: white pages: nome e dettagli per contattare il Service; yellow pages: informazioni sui Service divisi per categorie; green pages: informazioni riguardanti dati tecnici dei Service. Il SOAP, infine, é un protocollo basato su XML, che permette la comunicazione tra Service ed utente, e di effettuare chiamate alle procedure dei Service (Remote Procedure Calls, RPCs). Mostriamo, adesso, la corrispondenza tra le componenti dell architettura a Coordinatore e quelle dell architettura a Web Service. Per far questo, osserviamo, nell ambito dell architettura a Coordinatore, quali sono le interazioni tra le componenti principali: Coordinatore e moduli di KDD. Per prima cosa, il Coordinatore ricerca, tra i moduli disponibili, quelli richiesti dall utente e necessari alla costruzione ed esecuzione del processo di KDD. Successivamente alla localizzazione, deve attivare i moduli e gestire lo scambio dei dati di I/O degli stessi moduli. D altro canto, i moduli possono essere visti come singole procedure, messe a disposizione dagli sviluppatori, che descrivono le caratteristiche di funzionamento e di I/O. Possiamo quindi trattare, con riferimento alla Figura 5

6 2, il livello di coordinamento come un insieme di Service User e Service Broker, mentre quello dei moduli come Services. Nel precedente paragrafo, abbiamo detto che la riusabilitá é uno dei requisiti principali del sistema di KDD, che ci proponiamo di sviluppare. Ció significa la capacitá di utilizzare implementazioni sviluppate, in qualsiasi linguaggio di programmazione, e messe a disposizione da altri (sviluppatori come Service provider) senza modificarne o riscriverne il codice. Nell ipotesi che non esistano vincoli sul linguaggio di programmazione usato per la scrittura dei moduli, affinché essi possano essere visti come veri e propri Service, si vede la necessitá di introdurre un ulteriore livello tra il Coordinatore ed i moduli. Tale livello si occuperá di rendere trasparente al Coordinatore il linguaggio in cui il modulo é scritto, mostrandolo come un unico oggetto di un linguaggio object oriented. A tale livello, per ogni modulo di KDD sará pertanto introdotto un ulteriore elemento detto Wrapper. A questo punto, l insieme di modulo e relativo wrapper costituisce effettivamente il Service. Il sistema completo contenente lo schema a Coordinatore di Figura 1 ed il livello dei wrapper, definito secondo gli standard dell architettura Web Service, é denominato piattaforma per servizi di KDD (KDD Service). La Figura 3 mostra i blocchi funzionali dell architettura KDD Service e le interazioni tra essi. Nella prossima sezione descriviamo le compo- Figura 3. I blocchi funzionali dell architettura KDD Service. nenti principali del Coordinatore, mentre la descrizione dei Service é rimandata alla sezione 5. 4 I blocchi funzionali del Coordinatore In questa sezione andremo a sviluppare la descrizione del Coordinatore introdotta nel paragrafo 2. Per prima cosa preciseremo quelle che sono le funzioni che vengono richieste al Coordinatore, per poi descrivere i principali blocchi funzionali che si occupano di realizzarle e le interazioni tra essi. Presentiamo, quindi, un elenco delle funzioni che si richiedono al livello di coordinamento: 6

7 1. Interfacciarsi col G.U.I., per ricevere le richieste dell utente/analista e per presentare i risultati; 2. Interrogare il Repository per ricercare i Service disponibili, estraendo informazioni relative alla descrizione dei Service, alla localizzazione ed al modo in cui attivarli; 3. Supportare la costruzione del processo, fornendo all utente informazioni sui Service disponibili, sulle concatenazioni possibili e sui processi precedentemente conclusi; 4. Interrogare il database in cui sono presenti i dati da analizzare e quello in cui si trovano i dati relativi ad elaborazioni intermedie del processo attuale e di tutti quelli precedenti; 5. Tradurre il processo costruito dall utente in un workflow. Successivamente interpretarlo, quindi, verificare la correttezza sintattica ed attivare i Service necessari. A tale scopo il Coordinatore necessiterá di costrutti logici per la gestione del flusso delle istruzioni, quali quelli condizionali e quelli ciclici (sia definiti che indefiniti); Queste funzioni sono realizzate principalmente dal Workflow Manager (WFM), che interagisce con gli altri blocchi funzionali, rappresentati in Figura 3, che formano il Coordinatore: Service Broker, Link Generator, Versioning Manager e Query Manager. Il Service Broker si occupa di costruire il registro dei Service disponibili, tramite protocollo UDDI, a partire dalla descrizione astratta dei Service e relativa localizzazione. Tali informazioni sono rese disponibili dal Wrapper, che le traduce nel protocollo WSDL a partire da quelle scritte dai service provider (gli sviluppatori) nel file info, di cui tratteremo nel paragrafo successivo. Le informazioni contenute nel registro vengono utilizzate oltre che dal WFM, per valutare le concatenabilitá possibili tra i Service, dove due Service si definiscono concatenabili se l input del conseguente é una trasformazione di un sottoinsieme dell output del precedente. La valutazione delle concatenabilitá tra i moduli viene affidata al Link Generator, il quale elabora le informazioni contenute nelle Green Pages, relative alla sintassi e la semantica dell I/O dei Service, e ne memorizza i risultati nella Link Table. Il Versioning Manager é il blocco funzionale che si occupa della gestione dei processi giá eseguiti. Quest elemento ha due compiti principali: tenere traccia di tutti i processi andati in esecuzione e confrontarli con il processo che dovrá essere eseguito, per trovare sequenze in comune. Questi due obiettivi si raggiungono accedendo al Middle DB e rielaborandone i contenuti. Per interagire con le basi di dati, siano esse relative ai dati di origine o contenenti i dati intermedi, il WFM ed ilversioning Manager inviano query in un query language definito (ad es. SQL) al Query Manager. Questo blocco, si occupa di valutare la correttezza delle query e di eseguirne il codice. Per semplificare il numero di protocolli utilizzati per lo scambio di dati e per risolvere problemi di eterogeneitá, le basi di dati sono trattate esse stesse come Service. Ad esempio, mostriamo i passi per eseguire un semplice processo di classificazione tramite SVM, usando il software SVM light con un kernel RBF. Si assume che il WFM abbia estratto dalla descrizione WSDL gli operation del service (vedi 7

8 tab.1), sintassi e semantica dell I/O e dal Data Service lo schema dei dati (vedi tab.2). Tabella 1. service name operation name parameter data in data out SVM light SVM learn -t 2 -g 0.3 dbtrain svm model SVM light SVM classify svm model, dbtest svm predict Tabella 2. att1 att2 att3... attn il WorkFlow viene passato in XML al Versioning Manager per estrarre informazioni su eventuali precedenti esecuzioni; < service >Data Service < operation name >Selection Query< /operation name > < input string >SELECT att1,att2,...,attn FROM...< /input string > < /service > < service >SVM light < operation name >SVM learn< /operation name > < input string >-t 2 -g 0.3 dbtrain svm model< /input string > < semantic input data map > < name >dbtrain< /name > < link > < metadata >att1< /metadata > < metadata >svm trainfile feature1 value< /metadata > < /link >... < link > < metadata >attn< /metadata > < metadata >svm trainfile classid< /metadata > < /link > < /semantic input data map > < /service > Il WFM legge la Link Table e verifica se é presente la sequenza (SVM learn, SVM classify); 3. Il WFM legge le Green Pages e traduce l input nel formato del primo operation da attivare, seguendo le associazioni semantiche create dall analista; 4. Il WFM costruisce il codice RCP-SOAP per inviare i dati di input ed attivare l operation SVM learn con, ad esempio, i parametri -t 2 -g 0.3; < SOAP : body > < m : SV M learn... > < input string xsi : type = xsd : string >-t 2 -g 0.3 dbtrain svm model < /input string > < file input xsi : type = xsd : string > 1 1: : : : : : : : : < /file input > < /m : SV M learn > < /SOAP : body > 5. Il Wrapper invia i risultati al WFM che li presenta all analista; 6. si ripetono i punti precedenti per l SVM classify; Per completare la descrizione della piattaforma, nel paragrafo successivo ci occuperemo dell ultimo livello, quello dei Service, ovvero delle coppie formate da modulo di KDD e relativo Wrapper. 8

9 5 I blocchi funzionali dei Service per il KDD Come giá discusso nella sezione 3, i Service sono costituiti da moduli software, scritti in un qualsiasi linguaggio di programmazione, incapsulati tramite Wrapper. Un Wrapper dovrá, pertanto, svolgere le seguenti funzioni: Prelevare dal modulo di KDD le informazioni utili alla descrizione, localizzazione ed esecuzione dello stesso; Fornire una descrizione in XML, seguendo il protocollo WSDL, del modulo a cui é associato; Creare una interfaccia per il WFM tale da rendere trasparente il linguaggio di programmazione scelto per implementare il modulo. In questo modo, il WFM interagisce con il Wrapper come con un generico Service. Gestire l esecuzione del modulo. Ció comporta la traduzione dei dati scambiati col WFM dal protocollo SOAP al formato previsto dal modulo di KDD e viceversa. Il Wrapper, pertanto, dovrá definire interfacce standard per moduli di KDD, a partire dalle informazioni sugli stessi moduli. A tal scopo, il Wrapper avrá bisogno di specifiche informazioni, di cui mostriamo un dettaglio: 1. informazioni di posizionamento: Nome del modulo; Posizionamento nel processo di KDD; Tipologia di algoritmo; Algoritmo implementato; Moduli opzionali concatenabili (tipico esempio é l approccio a wrapper per i moduli di Data Mining); 2. informazioni sull Input/Output: struttura dei dati in ingresso ed in uscita; semantica dei dati in ingresso ed in uscita; struttura e semantica dei valutatori di performance in uscita; messaggi di errore; struttura dei parametri del modulo; 3. informazioni sull implementazione: semantica dei parametri del modulo (con possibilitá di fornire valori di default e dominio di validitá); linguaggio di programmazione in cui il modulo é scritto; messaggi di errore di esecuzione; La soluzione proposta per recuperare queste informazioni é quella di accompagnare il singolo modulo di KDD con un file in cui esse siano contenute, la cui compilazione é a cura degli sviluppatori (i Service Provider). In Figura 4 descriviamo, nella notazione EBNF, una struttura di questo file (che chiameremo file info). In questa rappresentazione abbiamo diviso la parte relativa alla classificazione del modulo di KDD, le parti relative a Input e Output e quelle sull implementazione. L assioma < dependency > descrive i possibili moduli 9

10 Figura 4. Definizione del file info. strettamente concatenabili con quello rappresentato. Infatti, é possibile che vi siano moduli che necessitano di altri moduli per funzionare o che hanno moduli opzionali dedicati, come nel caso dei moduli di feature extraction dedicati a specifici moduli di Data Mining. Queste due realtá e ricombinazioni di esse, sono rispettivamente rappresentate dalle keyword FORCED e OPTION. In figura 5 é mostrato un generico esempio di concatenazione rappresentabile tramite l assioma < dependency >. Per quanto riguarda l Input/Output, nella struttura Figura 5. Concatenazione rappresentabile tramite l assioma < dependency > < dataio > e nelle strutture collegate, si possono leggere tutte le informazioni necessarie sui dati: tipologia del dato, range di validitá, valore di default, si- 10

11 gnificato, sintassi e posizionamento fisico. La forma in cui il dato si presenta in input, o in output, (<form>) é codificata nella notazione classica dell I/O del linguaggio C. Nel file info ci sono molte chiamate a < notes >, queste servono a descrivere la semantica dei dati ed il funzionamento del modulo. Infine, l assioma < language > contiene le informazioni sul linguaggio di programmazione. La precedente descrizione del file info per quanto sia dettagliata non vuole essere esaustiva delle possibili casistiche in cui ci si puó trovare nell eseguire un algoritmo di KDD. 6 Conclusioni L articolo presenta una piattaforma per la creazione, gestione, esecuzione e combinazione di processi di KDD. Le caratteristiche prese in considerazione sono principalmente quelle di: modularitá, riusabilitá, trasparenza, facilitá d uso e versioning/prototyping. Per soddisfare i primi di questi requisiti é stata studiata la corrispondenza tra le componenti funzionali di un sistema di KDD e quelle di una generica architettura a Web Service, che ha condotto all introduzione del concetto di piattaforma per servizi di KDD. Ció definisce il livello comunicativo di base della piattaforma, sul quale vengono costruite le funzionalitá specifiche del dominio. Tali funzionalitá riguardano la gestione del processo di KDD come workflow, i vincoli di concatenabilitá dei moduli, la gestione dei dati intermedi e dei processi eseguiti a supporto del confronto tra diverse soluzioni implementabili. Una caratteristica che differenzia la piattaforma presentata da una generica architettura a Web Service, é l introduzione dei wrapper nella definizione dei Service. Ció consente di definire interfacce standard per moduli di KDD scritti in qualsiasi linguaggio di programmazione, elaborando un semplice file di informazioni fornito dallo sviluppatore a corredo del modulo. Una struttura possibile per tale file informativo é discussa. Il contributo di quest articolo si inserisce nel filone di ricerca attuale sui Web Service, che vede come sviluppi significativi tutte le definizioni di standard ed interfacce per domini applicativi specifici e la definizione di modelli di workflow, tuttavia esso presenta solo una idea di massima. Tale idea dovrá essere ulteriormente sviluppata, tramite il progetto di dettaglio e l eventuale introduzione di funzionalitá non previste. Un primo prototipo del sistema é in fase di studio. Riferimenti bibliografici 1. W3C Web Services Workshop. April Cannataro, M. and Talia, D. The Knowledge Grid. Comm. of the ACM, 46(1):89 93, Jan Chattratichat, J., Darlington, J., Guo, Y., Edvall, S., Koler, M. and Syed, J. An architecture for distributed enterprise data mining. HPCN Europe, Curbera, F., Duftler, M., Khalaf, R. and Nagy, W. Unraveling the Web Services Web: an Introduction to SOAP, WSDL and UDDI. IEEE Internet Computing, pages 86 93, March

12 5. Elder, John and Abbott, Dean. A Comparison of Leading Data Mining Tools. In Proc. 4th Int. Conf. on Knowledge Discovery and Data Mining, Aug Fayyad, U. M., Piatetsky-Shapiro, G., Smyth, P. and Uthurusamy, R. Advances in Knowledge Discovery and Data Mining. AAAI/MIT Press, Ganesarajah, Dinesh and Lupu, Emil. Workflow-based composition of Web- Services: a Business Model or a Programming Paradigm? In Proc. 6th Int. Enterprise Distributed Object Computing Conference, Goebel, Michael and Gruenwald, Le. A Survey of DataMining and Knowledge Discovery Software Tools. ACM SIGKDD Explorations, 1(1):20 33, June Grossman, R., Biley, S., Ramu, A., Malhi, B., Hallstrom, P., Pulleyn, I. and Qin, X. The management and mining of multiple predictive models using the predictive modeling markup language. Information and System Technology, pages , Grossman, Robert, Hornik, Mark and Meyer, Gregor. Evolving Data Mining into Solutions for Insights: Data Mining Standards Initiatives. Communications of the ACM, 45(8):59 61, August Kargupta, H., Hamzaoglu, I. and Stafford, B. Scalable, Distributed Data Mining using an Agent Based Architecture. In Proc. of Knowledge Discovery and Data Mining, pages , Menlo Park, Krishnaswamy, S., Zaslavsky, A. and Loke, S. An architecture to support distribuited data mining services in e-commerce environments. In Proc. 2nd Int. Work. on Advance Issues of E-Commerce and Web-Based Information Systems, Park, Byung-Hoon and Kargupta, Hillol. Distributed Data Mining: Algorithms, Systems, and Applications. In Nong Ye, editor, Handbook of Data Mining. Kluwer Ac. Pub., to appear. 14. Parthasarathy, S. and Subramonian, R. Facilitating data mining on a network of workstations. In P.Chan K. Kargupta, editor, Advances in distributed and parallel knowledge discovery, pages AAAI/MIT Press, Pires, P., F., Benevides, M. and Mattoso, M. Mediating Heterogeneuous Web Services. In Proc Symposium on Applications and the Internet, Preuner, G. and Schrefl, M. Integration of Web Service into Workflows through a Multi-Level Schema Architecture. In Proc. 4th Int. Work. on Advanced Issues of E-Commerce and Web-Based Information Systems, Rana, O., Walker, D., Li, M., Lynden, S. and Ward, M. Paddmas: Parallel and Distributed Data Mining Application Suite. In 14th int. parallel and distributed processing symposium, pages , Cancun, Roy, Jaideep and Ramanujan, Anupama. Understanding Web Service. IEEE IT Pro., pages 69 73, November Sunita Sarawagi and Sree Hari Nagaralu. Data Mining Models as Services on the Internet. ACM SIGKDD Explorations, 2(1):24 28, June Talia, D. The Open Grid Services Architecture: Where the Grid Meets the Web. IEEE Internet Computing, 6(6):67 71, Nov/Dec

Introduzione ai Web Services Alberto Polzonetti

Introduzione ai Web Services Alberto Polzonetti PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

Strumenti di modellazione. Gabriella Trucco

Strumenti di modellazione. Gabriella Trucco Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell

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

Lezione 1. Introduzione e Modellazione Concettuale

Lezione 1. Introduzione e Modellazione Concettuale Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

Corso di Basi di Dati e Conoscenza

Corso di Basi di Dati e Conoscenza Corso di Basi di Dati e Conoscenza Gestione dei Dati e della Conoscenza Primo Emicorso - Basi di Dati Roberto Basili a.a. 2012/13 1 Obbiettivi Formativi Scenario Le grandi quantità di dati accumulate nelle

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Programmare in ambiente Java Enterprise: l offerta formativa di Infodue

Programmare in ambiente Java Enterprise: l offerta formativa di Infodue Tecnologia e professionalità al servizio del business, dal 1986 Programmare in ambiente Java Enterprise: l offerta Copyright 2006 Infodue S.r.l. La programmazione nell era era del Web Computing L evoluzione

Dettagli

Per capire meglio l ambito di applicazione di un DWhouse consideriamo la piramide di Anthony, L. Direzionale. L. Manageriale. L.

Per capire meglio l ambito di applicazione di un DWhouse consideriamo la piramide di Anthony, L. Direzionale. L. Manageriale. L. DATA WAREHOUSE Un Dataware House può essere definito come una base di dati di database. In molte aziende ad esempio ci potrebbero essere molti DB, per effettuare ricerche di diverso tipo, in funzione del

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Introduzione. Informatica B. Daniele Loiacono

Introduzione. Informatica B. Daniele Loiacono Introduzione Informatica B Perchè studiare l informatica? Perchè ha a che fare con quasi tutto quello con cui abbiamo a che fare ogni giorno Perché è uno strumento fondamentale per progettare l innovazione

Dettagli

Seminario di Sistemi Distribuiti RPC su SOAP

Seminario di Sistemi Distribuiti RPC su SOAP Seminario di Sistemi Distribuiti RPC su SOAP Massimiliano Vivian [777775] Massimiliano Vivian 1 Introduzione La comunicazione delle informazioni è l elemento fondamentale per lo sviluppo dei sistemi. SOAP

Dettagli

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?)

CORSO ACCESS PARTE II. Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Ambiente Access La Guida di Access Esistono diversi tipi di aiuto forniti con Access, generalmente accessibili tramite la barra dei menu (?) Guida in linea Guida rapida Assistente di Office indicazioni

Dettagli

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Ottimizzazione delle interrogazioni (parte I)

Ottimizzazione delle interrogazioni (parte I) Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di

Dettagli

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico

Introduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Al giorno d oggi, i sistemi per la gestione di database

Al giorno d oggi, i sistemi per la gestione di database Introduzione Al giorno d oggi, i sistemi per la gestione di database implementano un linguaggio standard chiamato SQL (Structured Query Language). Fra le altre cose, il linguaggio SQL consente di prelevare,

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP

Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Corso Analista Programmatore Web PHP Corso Online Analista Programmatore Web PHP Accademia Futuro info@accademiafuturo.it Programma Generale del Corso Analista Programmatore Web PHP Tematiche Trattate

Dettagli

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014 Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi

Dettagli

Infrastruttura di produzione INFN-GRID

Infrastruttura di produzione INFN-GRID Infrastruttura di produzione INFN-GRID Introduzione Infrastruttura condivisa Multi-VO Modello Organizzativo Conclusioni 1 Introduzione Dopo circa tre anni dall inizio dei progetti GRID, lo stato del middleware

Dettagli

MODULO 5 Appunti ACCESS - Basi di dati

MODULO 5 Appunti ACCESS - Basi di dati MODULO 5 Appunti ACCESS - Basi di dati Lezione 1 www.mondopcnet.com Modulo 5 basi di dati Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database.

Dettagli

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Dettagli

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Il Software e Il Sistema Operativo Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10 Cosa Impareremo Programmi e Processi Struttura del Sistema Operativo Sviluppo di Programmi I files e la loro

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

IL SISTEMA INFORMATIVO

IL SISTEMA INFORMATIVO IL SISTEMA INFORMATIVO In un organizzazione l informazione è una risorsa importante al pari di altri tipi di risorse: umane, materiali, finanziarie, (con il termine organizzazione intendiamo un insieme

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Brochure Internet. Versione 2010.1 The Keyrules Company s.r.l. Pagina 2 di 8

Brochure Internet. Versione 2010.1 The Keyrules Company s.r.l. Pagina 2 di 8 Ogni organizzazione possiede un sistema di regole che la caratterizzano e che ne assicurano il funzionamento. Le regole sono l insieme coordinato delle norme che stabiliscono come deve o dovrebbe funzionare

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

Dettagli

SOFTWARE A SUPPORTO DELLA GESTIONE AMMINISTRATIVA DELLO SPORTELLO UNICO SPECIFICA DEI REQUISITI UTENTE

SOFTWARE A SUPPORTO DELLA GESTIONE AMMINISTRATIVA DELLO SPORTELLO UNICO SPECIFICA DEI REQUISITI UTENTE Pag. 1 di 16 SOFTWARE A SUPPORTO DELLA (VERS. 3.1) Specifica dei Requisiti Utente Funzionalità di associazione di più Richiedenti ad un procedimento Codice Identificativo VERIFICHE ED APPROVAZIONI CONTROLLO

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Liceo Tecnologico. Indirizzo Informatico e Comunicazione. Indicazioni nazionali per Piani di Studi Personalizzati

Liceo Tecnologico. Indirizzo Informatico e Comunicazione. Indicazioni nazionali per Piani di Studi Personalizzati Indirizzo Informatico e Comunicazione Indicazioni nazionali per Piani di Studi Personalizzati Indirizzo Informatico e Comunicazione Discipline con attività di laboratorio 3 4 5 Fisica 132 Gestione di progetto

Dettagli

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0

Rappresentazione della Conoscenza. Lezione 10. Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0 Rappresentazione della Conoscenza Lezione 10 Rappresentazione della conoscenza, D. Nardi, 2004, Lezione 10 0 Sistemi ed applicazioni Sistemi di rappresentazione della conoscenza basati su logiche descrittive.

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 PROGETTAZIONE DI UNA BASE DI DATI Raccolta e Analisi dei requisiti Progettazione concettuale Schema concettuale Progettazione logica

Dettagli

Caratteristiche principali. Contesti di utilizzo

Caratteristiche principali. Contesti di utilizzo Dalle basi di dati distribuite alle BASI DI DATI FEDERATE Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2006/2007 http://www.dis.uniroma1.it/

Dettagli

Ministero del Lavoro e della Previdenza Sociale

Ministero del Lavoro e della Previdenza Sociale Ministero del Lavoro e della Previdenza Sociale Direzione Generale per il mercato del lavoro Direzione Generale per l innovazione tecnologica e la comunicazione Allegato D Regole tecniche per l aggiornamento

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio

Dettagli

Concetti di base di ingegneria del software

Concetti di base di ingegneria del software Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso

Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Università Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 2 Algoritmi e diagrammi di flusso Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Gestione Turni. Introduzione

Gestione Turni. Introduzione Gestione Turni Introduzione La gestione dei turni di lavoro si rende necessaria quando, per garantire la continuità del servizio di una determinata struttura, è necessario che tutto il personale afferente

Dettagli

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server

Dettagli

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse Politecnico di Milano View integration 1 Integrazione di dati di sorgenti diverse Al giorno d oggi d la mole di informazioni che viene gestita in molti contesti applicativi è enorme. In alcuni casi le

Dettagli

Capitolo 13. Interrogare una base di dati

Capitolo 13. Interrogare una base di dati Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO

PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO PROGRAMMAZIONE MODULARE DI INFORMATICA CLASSE QUINTA - INDIRIZZO MERCURIO SEZIONE TECNICO Modulo 1: IL LINGUAGGIO HTML Formato degli oggetti utilizzati nel Web Elementi del linguaggio HTML: tag, e attributi

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

Introduzione all Information Retrieval

Introduzione all Information Retrieval Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information

Dettagli

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

7. Architetture Software

7. Architetture Software 7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design

Dettagli

Informatica DR KLOE Calcolo

Informatica DR KLOE Calcolo Informatica DR KLOE Calcolo Progettazione e gestione sotto il sistema operativo Unix di un database per un esperimento che produce almeno 1200 Terabyte. Informatica DR KLOE Calcolo Tutore: Giuseppe Fortugno

Dettagli

DOCFINDERWEB SERVICE E CLIENT

DOCFINDERWEB SERVICE E CLIENT DOCFINDERWEB SERVICE E CLIENT Specifiche tecniche di interfacciamento al Web Service esposto da DocPortal Versione : 1 Data : 10/03/2014 Redatto da: Approvato da: RICCARDO ROMAGNOLI CLAUDIO CAPRARA Categoria:

Dettagli

WorkFLow (Gestione del flusso pratiche)

WorkFLow (Gestione del flusso pratiche) WorkFLow (Gestione del flusso pratiche) Il workflow è l'automazione di una parte o dell'intero processo aziendale dove documenti, informazioni e compiti vengono passati da un partecipante ad un altro al

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in

La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in La norma ISO 9001:08 ha apportato modifiche alla normativa precedente in base alle necessità di chiarezza emerse nell utilizzo della precedente versione e per meglio armonizzarla con la ISO 14001:04. Elemento

Dettagli

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC. Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC. Avviso di mancata consegna L avviso, emesso dal sistema, per indicare l anomalia

Dettagli

Giornale di Cassa e regolarizzazione dei sospesi

Giornale di Cassa e regolarizzazione dei sospesi Servizi di sviluppo e gestione del Sistema Informativo del Ministero dell Istruzione dell Università e della Ricerca Giornale di Cassa e regolarizzazione dei sospesi Guida Operativa Versione 1.0 del RTI

Dettagli

L. 12 MARZO 1999, N. 68 NORME PER IL DIRITTO AL LAVORO DEI DISABILI APPLICATIVO PER LA GESTIONE DEI PROSPETTI INFORMATIVI

L. 12 MARZO 1999, N. 68 NORME PER IL DIRITTO AL LAVORO DEI DISABILI APPLICATIVO PER LA GESTIONE DEI PROSPETTI INFORMATIVI L. 12 MARZO 1999, N. 68 NORME PER IL DIRITTO AL LAVORO DEI DISABILI APPLICATIVO PER LA GESTIONE DEI PROSPETTI INFORMATIVI SOMMARIO Riferimenti normativi 1ª fase: l analisi 2ª fase: definizione degli obiettivi

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

Dettagli

Addition X DataNet S.r.l. www.xdatanet.com www.xdatanet.com

Addition X DataNet S.r.l. www.xdatanet.com www.xdatanet.com Addition è un applicativo Web che sfrutta le potenzialità offerte da IBM Lotus Domino per gestire documenti e processi aziendali in modo collaborativo, integrato e sicuro. www.xdatanet.com Personalizzazione,

Dettagli

Prodotto <ADAM DASHBOARD> Release <1.0> Gennaio 2015

Prodotto <ADAM DASHBOARD> Release <1.0> Gennaio 2015 Prodotto Release Gennaio 2015 Il presente documento e' stato redatto in coerenza con il Codice Etico e i Principi Generali del Controllo Interno Sommario Sommario... 2 Introduzione...

Dettagli

Groups vs Organizational Units. A cura di Roberto Morleo

Groups vs Organizational Units. A cura di Roberto Morleo Groups vs Organizational Units A cura di Roberto Morleo Gruppo Windows 2 Groups vs Organizational Units Organizational Units Groups OU Design Using OUs to Delegate Administration Group Policies and OU

Dettagli

Manuale Knowledge Base

Manuale Knowledge Base (Riservato a rivenditori e agenzie) Versione Luglio 2010 SOMMARIO Introduzione... 2 Accesso... 2 Menu Conoscenze... 3 Bacheca... 4 Voci di menu... 5 Ricerca... 5 Ricerca Semplice... 6 Ricerca avanzata...

Dettagli

3. Introduzione all'internetworking

3. Introduzione all'internetworking 3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia

Dettagli

Web Service Architecture

Web Service Architecture Giuseppe Della Penna Università degli Studi di L Aquila dellapenna@di.univaq.it http://dellapenna.univaq.it Engineering IgTechnology Info92 Maggioli Informatica Micron Technology Neta Nous Informatica

Dettagli

Introduzione all Architettura del DBMS

Introduzione all Architettura del DBMS Introduzione all Architettura del DBMS Data Base Management System (DBMS) Un DBMS è uno strumento per la creazione e la gestione efficiente di grandi quantità di dati che consente di conservarli in modo

Dettagli

Introduzione al corso

Introduzione al corso Introduzione al corso Sistemi Informativi L-B Home Page del corso: http://www-db.deis.unibo.it/courses/sil-b/ Versione elettronica: introduzione.pdf Sistemi Informativi L-B Docente Prof. Paolo Ciaccia

Dettagli

Sistemi centralizzati e distribuiti

Sistemi centralizzati e distribuiti Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:

Dettagli

Training sulle soluzioni SAP BusinessObjects BI4

Training sulle soluzioni SAP BusinessObjects BI4 Training sulle soluzioni SAP BusinessObjects BI4 dai valore alla formazione nella Business Intelligence: iscriviti ai training proposti da Méthode, scopri i vantaggi che la BI può dare al tuo business!

Dettagli

Dematerializzare per Semplificare

Dematerializzare per Semplificare 1 Dematerializzare per Semplificare Dematerializzare non significa solamente il passaggio dalla carta al digitale. La semplificazione si ottiene solo con una profonda comprensione della complessità dei

Dettagli

E.S.B. Enterprise Service Bus ALLEGATO C11

E.S.B. Enterprise Service Bus ALLEGATO C11 E.S.B. Enterprise Service Bus ALLEGATO C11 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Dettagli

Il modello veneto di Bilancio Sociale Avis

Il modello veneto di Bilancio Sociale Avis Il modello veneto di Bilancio Sociale Avis Le organizzazioni di volontariato ritengono essenziale la legalità e la trasparenza in tutta la loro attività e particolarmente nella raccolta e nell uso corretto

Dettagli

Pro e contro delle RNA

Pro e contro delle RNA Pro e contro delle RNA Pro: - flessibilità: le RNA sono approssimatori universali; - aggiornabilità sequenziale: la stima dei pesi della rete può essere aggiornata man mano che arriva nuova informazione;

Dettagli

Gestione del workflow

Gestione del workflow Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario

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

Il database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

Protocollo Informatico (D.p.r. 445/2000)

Protocollo Informatico (D.p.r. 445/2000) Protocollo Informatico (D.p.r. 445/2000) Ricerca veloce degli atti, archiviazione, fascicolazione ed inventario Inserimento semplice e funzionale Collegamento tra protocolli tramite la gestione dei fascicoli

Dettagli

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

Finalità della soluzione... 3. Schema generale e modalità d integrazione... 4. Gestione centralizzata in TeamPortal... 6

Finalità della soluzione... 3. Schema generale e modalità d integrazione... 4. Gestione centralizzata in TeamPortal... 6 Finalità della soluzione... 3 Schema generale e modalità d integrazione... 4 Gestione centralizzata in TeamPortal... 6 Dati gestiti dall Anagrafica Unica... 8 Gestione anagrafica... 9 Storicizzazione...

Dettagli

1 ACCESSO AL NET@PORTAL... 3 2 CARICAMENTO DELLE RICHIESTE/PRESTAZIONI... 4 3 MONITORAGGIO DELLE RICHIESTE... 8 4 DOWNLOAD ESITI...

1 ACCESSO AL NET@PORTAL... 3 2 CARICAMENTO DELLE RICHIESTE/PRESTAZIONI... 4 3 MONITORAGGIO DELLE RICHIESTE... 8 4 DOWNLOAD ESITI... MANUALE UTENTE NET@PORTAL ADEGUAMENTO DEL. 185/08 Sommario 1 ACCESSO AL NET@PORTAL... 3 2 CARICAMENTO DELLE RICHIESTE/PRESTAZIONI... 4 2.1 CREAZIONE DEL FILE CSV PER IL CARICAMENTO MASSIVO DELLE RICHIESTE...

Dettagli

Firewall applicativo per la protezione di portali intranet/extranet

Firewall applicativo per la protezione di portali intranet/extranet Firewall applicativo per la protezione di portali intranet/extranet Descrizione Soluzione Milano Hacking Team S.r.l. http://www.hackingteam.it Via della Moscova, 13 info@hackingteam.it 20121 MILANO (MI)

Dettagli

SCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow

SCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow SCHEDA PRODOTTO PAG. 1 J O B T I M E W F Variazioni mensili al cartellino presenze Versione 6.1 SCHEDA PRODOTTO PAG. 2 INTRODUZIONE Il mercato degli applicativi informatici si sta consolidando sempre più

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

Modello OAIS. Modello di riferimento. Il Modello. Prof.ssa E. Gentile a.a. 2011-2012. Un modello di riferimento dovrebbe descrivere:

Modello OAIS. Modello di riferimento. Il Modello. Prof.ssa E. Gentile a.a. 2011-2012. Un modello di riferimento dovrebbe descrivere: Modello OAIS Prof.ssa E. Gentile a.a. 2011-2012 Prof.ssa E. Gentile Progettazione e Produzione di Contenuti Digitali 1 Modello di riferimento Un modello di riferimento dovrebbe descrivere: le componenti

Dettagli