POLITECNICO DI TORINO. Tesi di Laurea. Integrazione di applicazioni Web con sistemi esistenti mediante un architettura orientata ai servizi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "POLITECNICO DI TORINO. Tesi di Laurea. Integrazione di applicazioni Web con sistemi esistenti mediante un architettura orientata ai servizi"

Transcript

1 POLITECNICO DI TORINO Facoltà di Ingegneria dell Informazione Corso di Laurea in Ingegneria Informatica Tesi di Laurea Integrazione di applicazioni Web con sistemi esistenti mediante un architettura orientata ai servizi Relatore prof. Fulvio Corno Candidato Pisapia Arturo Luigi Aprile 2004

2 RINGRAZIAMENTI Desidero ringraziare tutte le persone che mi hanno aiutato nel mio percorso universitario. In particolare ringrazio i miei genitori per avermi supportato anche nei momenti più difficili; un ringraziamento anche a tutti i miei amici ed in particolare a Valeria. Ringrazio il relatore, Ing. Fulvio Corno, per avermi consigliato ed aiutato durante la stesura della tesi. Ringrazio la Cluster reply S.r.l. per l ospitalità fornitami, ed in particolare l Ing. Alessandro Bonaudo per avermi supportato durante lo svolgimento della tesi. Grazie

3 Sommario Sommario Capitolo Introduzione ad Anagrafica Programmi Il progetto Anagrafia Programmi Il Contesto di utilizzo di Anagrafica programmi I principali requisiti progettuali Funzionalità del Prodotto Architettura Un caso d uso Capitolo Introduzione al Framework.NET Principi generali Il Common Language Runtime (CLR) Framework Class Library Data Services User Interface Services Web Services Capitolo La Programmazione distribuita Introduzione I componenti in una architettura distribuita Caratteristiche di un sistema distribuito Architetture distribuite multilivello Capitolo L Architettura di Anagrafica Programmi Dettaglio sulla Three-tiered Architecture di Anagrafica Programmi Il Data Layer Il Business Layer Il Presentation Layer Capitolo Le transazioni distribuite Introduzione Le Transazione Distribuite Il protocollo di Two-Phase Commit (2PC) Le transazioni in Anagrafica Programmi... 62

4 Sommario Capitolo Gestione delle Eccezioni Introduzione Gerarchia delle eccezioni FCL Meccanismi di gestione delle eccezioni Definizione di eccezioni personalizzate Struttura delle eccezioni in un applicazione La struttura delle eccezioni di anagrafica Programmi Capitolo Gestione dei log e la libreria di Logging Log4Net per il tracing degli eventi Introduzione al logging di eventi La libreria Log4net Il file di configurazione di Anagrafica Programmi Inserimento dei log all interno del codice di Anagrafica Programmi Capitolo I Web services e l arricchimento semantico dei file XSD I Web services e.net La validazione nei WebMethod ASP.NET attraverso l arricchimento semantico dei file XML Schema Estensione dei WebMethods Capitolo Conclusioni Appendice A.1 Introduzione ai Web services Bibliografia

5 Capitolo 1 Introduzione ad Anagrafica Programmi 1.1 Il progetto Anagrafia Programmi Questo progetto è nato dall esigenza da parte del cliente RAI di svecchiare i propri sistemi informativi. I sistemi preesistenti in RAI sono molti ed eterogenei, si spazia dalle applicazioni Web sviluppate nelle vecchie tecnologie Microsoft, ad applicazioni data-intensive basate su DB Oracle o SqlServer e alle applicazioni basate su mainframe IBM. Posso affermare che le applicazioni Mainframe basate su transazioni CICS e scritte principalmente in Cobol rappresentano ad oggi la fetta più grande dei sistemi RAI. Quindi questa iniziativa si colloca nell ambito di una serie di iniziative progettuali e di evoluzione dei sistemi di Core Business a supporto dei processi editoriali e produttivi, con l obiettivo di migliorare l efficienza operativa e il grado di automazione dei processi, superando così gli attuali elementi di maggiore criticità. Tramite la realizzazione del sistema Anagrafica Programmi TV/RF (la sigla TV/RF sta a significare che il dominio dei programmi di questa anagrafica spazia dai programmi televisivi ai programmi radiofonici ), la RAI si è posta l obiettivo di migrare dai sistemi di Core Business dall ambiente Host all ambiente Open, privilegiando le architetture basate su tecnologie WEB. Si è pensato di passare alla tecnologia Object oriented basate su Microsoft.NET e di far migrare i dati verso un DBMS MS SQL Server; questa tecnologia garantisce una gran semplicità d integrazione, grazie agli Xml Web services; inoltre sarà garantita una maggior scalabilità e affidabilità del sistema. Il sistema realizzato contiene e integra tutte le informazioni gestite dal vecchio archivio anagrafico; per fare ciò si è deciso di utilizzare un nuovo modello dati completamente relazionale basate sulla piattaforma Microsoft SQLServer. Quando l applicativo passerà in produzione, non tutti i sistemi esterni che si interfacciano ad esso saranno pronti per staccarsi dal vecchio DataBase perciò si è reso necessario 5

6 Capitolo 1 - Introduzione ad Anagrafica Programmi l utilizzo di uno strumento di allineamento che replica sull archivio anagrafico legacy tutte le modifiche attuate sul nuovo sistema, in una modalità transazionale (protocollo di twophase commit ). Il sistema Anagrafia Programmi rappresenta il cuore dei sistemi di RAI, in quanto essa contiene tutti i programmi prodotti o acquisiti da RAI e contiene tutta la storia dei programmi, compresi quelli che sono stati ceduti ad altre cordate editoriali. Un po tutti i sistemi principali vanno ad accedere a questa anagrafica, interagendo con essa sia in lettura che in scrittura. È importante porre l accento sul fatto che il nostro progetto è un rifacimento completo del preesistente sistema anagrafico sviluppato in tecnologia MainFrame OS/390, quindi un ulteriore punto critico sarà quello di sostituire il nodo centrale di un architettura già esistente senza causare scompensi di alcun genere, ma cercando di migliorare la risposta del sistema complessivo. Il dominio impattato spazia dai sistemi editoriali, della gestione fino agli strumenti di ricerca e analisi dei dati. Quindi il cliente ha deciso per una graduale conversione dei propri sistemi nella nuova tecnologia, tenendo presente che si sarebbe dovuta garantire la trasparenza della transizione vecchio-nuovo per i sistemi periferici al sistema d anagrafia. Sono state implementate una serie di funzionalità e servizi per la gestione dell archivio anagrafico accessibili tramite un applicazione web, sviluppata in tecnologia Microsoft ASP.NET. Oltre alle funzionalità di accesso diretto (tramite interfaccia web) dell utente al sistema, il sistema mette a disposizione degli applicativi pre-esistenti una parte di queste funzionalità, sfruttando in modo esteso la tecnologia degli XML Web Services, attraverso i quali i sistemi esterni possono accede in lettura o scrittura (secondo il caso) al database interno. Il nuovo sistema sostituisce il vecchio applicativo legacy garantendo le stesse funzionalità preesistenti ma allo stesso tempo semplificando notevolmente le problematiche di integrazione con gli altri sistemi aziendali. La scelta tecnologica fatta ha l ambizioso obiettivo di guidare l interazione tra i sistemi aziendali verso lo standard SOAP, rendendo, di fatto, l accesso alle informazioni indipendente dalla tecnologia che le ospita. 6

7 Capitolo 1 - Introduzione ad Anagrafica Programmi 1.2 Il Contesto di utilizzo di Anagrafica programmi I sistemi esistenti con cui la nuova Anagrafica Programmi si deve in qualche modo integrare sono i seguenti: Archivio anagrafico esistente: deve esistere un meccanismo di allineamento, tale che il vecchio archivio sia mantenuto aggiornato per tutti quei sistemi che continueranno ad accedere a tale archivio; requisito vincolante è che i sistemi in oggetto accedano in sola lettura al vecchio archivio anagrafico. Nirvana: scrive dati nel nuovo database in modalità batch Commesse Editoriali: fornisce dati al nuovo sistema in modalità on-line STRADA: fornisce dati al nuovo sistema in modalità on-line Gestione Diritti: scrive dati nel nuovo database in modalità batch AUDITEL: scrive dati nel nuovo database in modalità batch OCTOPUS: la nuova applicazione web accede al sistema OCTOPUS mediante una chiamata diretta (URL parametrica) Nella pagina seguente ho inserito uno schema a blocchi che rappresenta il contesto di utilizzo dell intero sistema. 7

8 Capitolo 1 - Introduzione ad Anagrafica Programmi La figura seguente mostra il contesto di utilizzo in cui si colloca il sistema: Figura Contesto di utilizzo 8

9 Capitolo 1 - Introduzione ad Anagrafica Programmi 1.3 I principali requisiti progettuali Il sistema anagrafico oggetto del rifacimento consiste in una serie di transazioni CICS che operano su database DB2, Adabas e VSAM. Nel nuovo sistema, devono essere garantire le funzionalità che gli utenti hanno attualmente a disposizione. Una parte dei sistemi collegati all attuale archivio anagrafico non potranno essere adeguati prima del rilascio in produzione del nuovo sistema. Pertanto, è stato mantenuto l allineamento dei dati del nuovo sistema e del sistema legacy, al quale continueranno ad accedere quei sistemi che, per motivi tecnologici o impossibilità di adeguamento, non possono accedere al nuovo archivio dipartimentale. L allineamento, richiesto a fronte di ogni operazione di inserimento, aggiornamento e cancellazione, verrà dismesso quando tutti i sistemi collegati saranno migrati sul nuovo archivio anagrafico. Per rendere possibile tutto ciò l aggiornamento su mainframe avviene nell ambito di una transazione. Si prevedono 150/200 utenti abilitati in aggiornamento, mentre gli utenti che potranno operare in consultazione potenzialmente sono tutti i dipendenti RAI (per gran parte di essi sarà disponibile la banca dati di ricerca); l applicazione dovrà supportare l accesso contemporaneo di circa utenti 1.4 Funzionalità del Prodotto La funzione di login, comune ai contesti TV e RF La funzione di consultazione delle anagrafie dei codici L allineamento con l archivio mainframe Le funzioni proprie del contesto televisivo Le funzioni proprie del contesto radiofonico I Web services di scrittura dell anagrafica del contesto televisivo I Web services di scrittura dell anagrafica del contesto radiofonico 9

10 Capitolo 1 - Introduzione ad Anagrafica Programmi Login Deve essere prevista una funzione di login che consenta all utente di autenticarsi ed essere abilitato alle funzioni permesse dal proprio profilo Consultazione delle anagrafie dei codici Sull anagrafica sono definite le tabelle dei codici che vengono utilizzati come attributi dell anagrafia. E stata predisposta una funzione che ne permetta la visualizzazione nell applicativo Allineamento con l archivio mainframe Il nuovo archivio anagrafico deve essere allineato con la banca dati mainframe; per questo tutte le operazioni di inserimento, modifica e cancellazione dovranno essere completate da una operazione analoga effettuata sull archivio mainframe. L operazione di allineamento consiste nella replica dei passi che vengono eseguiti sull archivio dipartimentale, tenendo conto delle differenze determinate dal nuovo disegno della banca dati Le funzioni del contesto televisivo L oggetto cardine del contesto televisivo e rappresentato dalla uorg/matricola, della quale possono essere gestiti tutti i dettagli. Poiché il contenuto informativo è attualmente presente sulla banca dati host, occorre predisporre un impianto che consenta il porting dei dati sul database distribuito; inoltre, poiché l integrazione dei sistemi collegati verrà effettuata in step successivi, sulla base di un disegno generale di priorità, è necessario garantire l allineamento dell archivio mainframe ogni volta che saranno effettuate operazioni di aggiornamento. Quando tutti i sistemi editoriali riferiti all anagrafica saranno migrati sul database distribuito, questa connessione potrà essere eliminata. Nell ambito del rifacimento dell anagrafica, sarà definita una nuova banca dati di ricerca, da caricare quotidianamente con modalità incrementale; per effettuare questa operazione e necessario che vengano tracciate le operazioni di inserimento, modifica e cancellazione. Le funzioni considerate sono le seguenti: - Gestione anagrafia - Gestione commessa - Gestione dati descrittivi 10

11 Capitolo 1 - Introduzione ad Anagrafica Programmi - Gestione finestre di non trasmettibilità - Gestione produttori - Voltura - Cessione - Sospensione - Scarico - Blocco - Impostazione anno pronto - Ricerca anagrafie - Ricerca utilizzazioni - Analisi del trasmesso Le funzioni del contesto radiofonico L oggetto cardine del contesto radiofonico e rappresentato dalla uorg/matricola, analogamente al contesto televisivo. Le funzioni considerate sono le seguenti : - gestione anagrafia - ricerca anagrafia Il sistema inoltre, per realizzare particolari funzioni, richiede informazioni a SAP e Octopus relativamente alla banca dati di ricerca dei contratti I Web services di scrittura dell anagrafica del contesto televisivo Di seguito sono specificate le interfacce di scrittura sull anagrafica televisiva che sono previste all atto dell avvio del nuovo sistema : - Web service di gestione delle anagrafie dal sistema Nirvana - Web service di gestione delle prenotazioni e assegnazioni dal sistema Nirvana - Web service di gestione delle trasmissioni dal sistema Codifica del Trasmesso - Web service di aggiornamento di ascolto e share dal sistema Auditel - Web service di aggiornamento del contratto dal sistema SAP - Web service di aggiornamento del pacchetto dal sistema Gestione Diritti 11

12 Capitolo 1 - Introduzione ad Anagrafica Programmi I Web services di scrittura dell anagrafica del contesto radiofonico - Web service Contratto SAP: si tratta della procedura on-line che consente l inserimento del contratto dal sistema SAP all atto della firma 1.5 Architettura Nella figura seguente vengono mostrati in maggior dettaglio i componenti interni del sistema Anagrafica Programmi TV/RF. In particolare, si vede come il sistema sia composto sostanzialmente da 5 parti: 1. Database Anagrafica Programmi TV/RF : è il contenitore relazionale che integra i dati provenienti dalle varie fonti 2. Web Services: è lo strato di servizio che espone verso il mondo esterno tutte le funzionalità che permettono ai client di lavorare con il database 3. Core components: sono i componenti che implementano tutte le logiche del sistema: profilazione, trattamento dei dati, gestione degli errori, accesso al database, ecc. 4. Allineamento: è il componente che si occupa di mantenere aggiornato l archivio anagrafico legacy, in una modalità consistente rispetto alle modifiche effettuate sul database 5. Web Application: è l applicazione che permette agli utenti di accedere al nuovo sistema anagrafico; anch essa si appoggia sui servizi messi a disposizione dallo strato di Web Services. Io mi sono occupato principalmente dei livelli dal primo al quarto e dei Web Services. In questa architettura i sistemi che scrivono su Anagrafica Programmi devono adeguarsi alle interfacce esposte dai Web Services, quindi l eventuale trasformazione e trattamento dei dati è in parte a carico dei sistemi collegati e in parte a carico dei Web Services. 12

13 Capitolo 1 - Introduzione ad Anagrafica Programmi Figura Contesto di utilizzo: dettaglio 13

14 Capitolo 1 - Introduzione ad Anagrafica Programmi DB2 ADABAS VSAM SISTEMI COLLEGATI ALLINEAMENTO External Systems Interface Web Services Web App Interface Business components Data Access components DATABASE Anagrafica Programmi TV /RF Core Components WEB Application Figura Strato Web Services e Core Components La Figura 1.3 illustra in maniera più dettagliata i componenti presenti all interno dello strato Web Services e Core Components. Si possono individuare le seguenti componenti logiche fondamentali: 1. External Systems Interfaces: implementa le interfacce a cui possono accedere tutti gli applicativi pre-esistenti 2. Web Application Interfaces: implementa l interfaccia a cui può accedere la Web application 3. Business components: implementa le logiche di trattamento dei dati 4. Data Access components: nasconde la struttura del database e fornisce l interfaccia di accesso ai dati; si occupa di gestire l allineamento contestuale verso il sistema legacy 14

15 Capitolo 1 - Introduzione ad Anagrafica Programmi 1.6 Un caso d uso Per chiarire meglio il modo di funzionare di Anagrafica Programmi ho deciso di mostrare un caso d uso relativo all inserimento di una nuova anagrafia convenzionale (basti sapere che l anagrafia Convenzionale è un particolare tipo di anagrafia ). Prima di andare avanti con la spiegazione del caso d uso ci tengo a chiarire cosa si intende per Programma e quali sono i principali oggetti sui quali la nostra anagrafia si basa. PROGRAMMA: Individua il prodotto immatricolato, cioè il Prodotto/Diritto sfruttabile dall Azienda. IDENTIFICATORI: Matricola e Uorg MATRICOLA: Corrisponde alla matricola aziendale attribuita al singolo programma UORG: E l'unita organizzativa (la Struttura Aziendale) di chi acquista il programma È importante notare che l oggetto cardine dell anagrafia è la Matricola, all interno di una matricola possono esistere N serie e a loro volta all interno della serie possono esistere M puntate. Figura Struttura di un programma 15

16 Capitolo 1 - Introduzione ad Anagrafica Programmi TV Gestire Anagrafia Catalogo Convenzionale Aggiornamento <<extend>> <<extend>> TV Gestire Anagrafia Catalogo Utente Amministrazione Convenzionale Inserimento Finanza (from Attori Utente) <<extend>> TV Gestire Anagrafia Catalogo Annullamento <<extend>> TV Gestire Anagrafia Catalogo Puntata Aggiornamento TV Gestire Anagrafia Catalogo Stampa Figura 1.5 Caso d uso, Inserimento di un anagrafia Convenzionale La realizzazione del caso d uso si presenta come segue: MainForm (from Applicazioni) Anagrafica (from Dati) DBLegacy Utente Amministrazione Finanza (from Attori Utente) TVGestAnagForm (from Applicazioni) TVGestAnagManager (from Applicazioni) (from Applicazioni) SapInterface (from Applicazioni) TVGestAnagCatalConvForm (from Applicazioni) CaricamentoIncrementale (from Dati) Figura 1.6 Diagramma concernente l inserimento da parte di un utente (con profilo Amministrazione e Finanza) 16

17 Capitolo 1 - Introduzione ad Anagrafica Programmi L utente di amministrazione finanza accede alla form principale e richiede la gestione delle anagrafiche. Successivamente, dalla schermata di gestione anagrafie seleziona il Catalogo Convenzionale e procede successivamente alle operazioni di inserimento: : Utente Amministrazio... //richiedigestioneanagrafie : MainForm : TVGestAnagForm : TVGestAnagCatalConvForm : TVGestAnagManager : Anagrafica : DBLegacy : SapInterface : CaricamentoIncrementale //richiedigestioneanagrafie //crea //richiedigestioneanagrafiecatalogo //richiedigestioneanagrafiecatalogo //crea //presentamascheracampidigitabili inseriscidati controllisuidati Obbligatoriet à, validità, coerenza. //inseriscipuntata //ok //inseriscipuntata //ok //inseriscipuntata //visualizzadettanagrconvenzionale //ok //inseriscipuntata Figura Sequence Diagram 17

18 Capitolo 1 - Introduzione ad Anagrafica Programmi Il caso d uso è poi suddiviso, nelle sue funzionalità, sui vari livelli che costituiscono l applicazione Anagrafica Programmi ( Presentation Layer, Business Layer e Data Layer vedi Capitolo sul modello a livelli utilizzato in Anagrafica Programmi). Utenti HTTP / SSO Altri Sistemi HTTP-SOAP / NTLM-WSSEC <<Client Page>> MainForm (from Interfaccia Web) <<Client Page>> TVGestAnagCatalConvForm (from Interfaccia Web) <<Client Page>> TVGestAnagForm (from Interfaccia Web) <<subsystem>> AnagraficaProgrammiWeb (from Modello Subsystems) <<subsystem>> AnagraficaProgrammiWS (from Modello Subsystems) <<BehindCode>> TVGestAnagWebManager (from Interfaccia Web) <<subsystem>> AnagraficaProgrammiBO (from Modello Subsystems) I_TVGestioneCatalogo <<subsystem>> AnagraficaProgrammiIO (from Modello Subsystems) (from Business Facade) Aggancio verso sistemi esterni. [Interfacce eterogenee] BO_TVGestioneCatalogo (from BO) WF_TVGestioneCatalogo (from WorkFlow) SapInterface (from Servizi esterni) GestioneSQLServer (from Internal DB) DBLegacy (from Servizi esterni) Anagrafica (from Internal DB) CaricamentoIncrementale (from Internal DB) Figura 1.8 Diagramma attraverso i livelli 18

19 Capitolo 1 - Introduzione ad Anagrafica Programmi L utente interagisce con le pagine web tramite browser. Il subsystem AnagraficaProgrammiWeb (Presentation Layer) gestisce la presentation generando le pagine ed interagendo con il modulo AnagraficaProgrammiBO ( Biz Layer). Quest ultimo è responsabile del flusso della richiesta ricevuta dai livelli superiori, nonché della interazione con il layer dati delle sezioni di accesso al DB principale e della sincronizzazione con l esterno (DB legacy e SAP). 19

20 Capitolo 2 Introduzione al Framework.NET 2.1 Principi generali Microsoft ha impiegato tre anni per sviluppare Microsoft.NET, che è stato lanciato pubblicamente al PDC 2000 ad Orlando, Florida. Non è facile spiegare cosa sia esattamente il Framework.NET in quanto molto è stato scritto su questo argomento e diversi sono gli ambiti che fanno parte di questa nuova tecnologia; per cercare di fare un po'di chiarezza, posso distinguere tre principali famiglie: Visione.NET: secondo questa nuova concezione, tutte le periferiche (compresi frigoriferi, orologi, forni...) saranno interconnesse tra loro mediante una Rete Globale a banda larga; la potenza e la flessibilità di.net consentirà di gestire tutte queste periferiche attraverso un unico ambiente di lavoro. Framework.NET: indica la nuova piattaforma di esecuzione ed elaborazione che semplifica lo sviluppo e la distribuzione di applicazioni in ambiente Windows e tutte le tecnologie coinvolte nell'ambiente, come ad esempio: ASP.NET, C#, VisualBasic.NET, JScript.NET..NET Enterprise Server: tutti i prodotti Enterprise Microsoft. I servizi di.net sono integrati nel sistema operativo e forniscono un supporto comune allo sviluppo delle applicazioni. Ciò è possibile grazie ad un architettura (vedi figura 2.1) i cui componenti fondamentali sono: Common Language Runtime o Common Type System o Common Language Specification o MSIL e JIT Compiler o Garbage Collector (GC) o Caricamento di CLR Framework Class Library Data Services 20

21 Capitolo 2 - Introduzione al Framework.NET User Interface Services Web Services Figura 2.1 Il Framework.NET fornisce le basi sulle quali è nata tutta la visione.net grazie alla quale, in un futuro prossimo, tutti i dispositivi saranno interconnessi tra loro, parlando linguaggi comuni, come ad esempio l'xml,ed utilizzando protocolli standard e riconosciuti, come l'http. E'importante sottolineare che altre società hanno sposato questa visione, come ad esempio IBM e SUN. Il Framework.NET si basa su un CRL (Common Language Runtime), un Runtime che compila al volo il codice e lo converte in MSIL (Microsoft Intermediate Language). Tutte le Applicazioni realizzate in VisualBasic.NET, C#, J# e tutti gli altri linguaggi supportati dal Framework, saranno automaticamente convertite in MSIL prima di essere eseguite dal Sistema. Lo sviluppatore non è obbligato a scrivere le proprie applicazioni con un determinato linguaggio siccome sarà il Framework a creare il MSIL indipendentemente dalla scelta di sviluppo. Il vantaggio di usare un linguaggio di programmazione piuttosto che un altro sta nel fatto che i diversi linguaggi di programmazione consentono lo sviluppo mediante sintassi diverse. Ad esempio per le applicazioni matematiche e finanziarie l utilizzo della sintassi APL piuttosto che della sintassi Perl consentirà di ridurre notevolmente il tempo necessario per lo sviluppo. Uno degli obiettivi principali del DevTeam di Microsoft, in fase di progettazione del Framework, è stato quello di ottenere alti gradi prestazioni in termini di velocità d esecuzione e scalabilità delle applicazioni. Il CRL compila tutto il codice dell'applicazione in codice macchina nativo, questa conversione è realizzata in fase d esecuzione dell'applicazione o durante la prima installazione; già nella prima versione del Framework era possibile notare un netto miglioramento di 3/4 volte in termini di velocità 21

22 Capitolo 2 - Introduzione al Framework.NET d esecuzione rispetto alla vecchia versione di ASP. Con le successive versioni del CLR si prevedono ulteriori miglioramenti in termini di velocità ed occupazione della memoria. 2.2 Il Common Language Runtime (CLR) Il Common Language Runtime è un ambiente d esecuzione delle applicazioni per la piattaforma.net, indipendente dal linguaggio di programmazione utilizzato per svilupparla. Nella figura seguente si può notare una vista dettagliata dell intero Framework.NET evidenziando la collocazione del CLR. Figura Il FrameWork.NET Qualsiasi applicazione.net, a prescindere dal linguaggio di programmazione, viene compilata in un linguaggio intermedio,indipendente dall hardware, chiamato Microsoft Intermediate Language (MSIL)..NET genera un linguaggio IL Intermediate Language (a differenza del codice macchina generato dai vecchi compilatori come ad esempio VisualBasic 6). 22

23 Capitolo 2 - Introduzione al Framework.NET Prima dell effettiva esecuzione, il Common Language Runtime si occuperà della compilazione del codice intermedio nel corrispondente codice nativo tramite uno specifico compilatore (Just In Time compiler) dipendente dalla effettiva architettura hardware sottostante. E facile intuire che un eseguibile generato in.net (quindi in IL) non potrà essere eseguito su sistemi che non presentano il Framework.NET installato in quanto non sarà possibile riconoscere ed interpretare l'il. Il compilatore JIT si occupa della conversione della pagina in codice nativo solo nel momento in cui si richiede l'utilizzo di una particolare funzione del programma, convertendo solo la porzione di codice presa in considerazione; questo consente di ottimizzare il tempo di compilazione e l'occupazione in Kb del file generato. Il codice risultante da questa compilazione è chiamato managed code, per sottolineare il fatto che il runtime si occuperà di gestire la sua esecuzione prendendosi carico di tutte le operazioni necessarie: allocazione della memoria, creazione di oggetti, garbage collection, ecc. L esistenza del Common Language Runtime pone le basi per lo sviluppo di applicazioni indipendenti dall hardware e dal linguaggio di programmazione utilizzato. Questi aspetti hanno richiesto un esame dei linguaggi di programmazione più utilizzati sotto le piattaforme Windows in modo da ottimizzarli per la loro operatività nel.net Framework. Da questa revisione sono nati Visual Basic.NET, C# e JScript.NET. Altri linguaggi sono in fase di revisione per il loro utilizzo nel.net Framework. Il CLR è un Runtime unificato e comune che esegue il codice.net compilato, è quindi in grado di trasformare codice scritto in VisualBasic.NET, C#, J#, Python, Fortran, Cobol, C++, JavaScript, Perl e molti altri ancora, per un totale di circa 30 linguaggi, in un linguaggio intermedio, il MSIL (Microsoft Intermediate Language), che in seguito sarà compilato Just in time (in tempo reale) dal Framework. Il CLR è in grado di gestire funzionalità ed eventi supportati da tutto il Framework. Con il Framework.NET è possibile utilizzare, ad esempio, una classe scritta in VisualBasic.NET da un'applicazione scritta in C#, poiché utilizzano dei tipi di dati comuni (gestiti dal Framework). Nella nuova logica introdotta da.net, ogni applicazione deve essere considerata come un'insieme di Assembly e da un file "Assembly principale" (il file.exe) necessario per avviare l'applicazione; gli Assembly presentano il vantaggio di essere autodescrittivi in quanto contengono: codice IL, metadati con informazioni su strutture, classi... Lo schema seguente (figura 2.3) illustra le operazioni eseguite durante la fase di compilazione. Avviando il programma, viene caricato il primo Assembly, successivamente vengono caricate le Classi base di.net; il CLR si occupa invece di controllare i tipi ed i permessi di esecuzione sulla base delle informazioni presenti nei metadati ed alle impostazioni di sicurezza del sistema. 23

24 Capitolo 2 - Introduzione al Framework.NET Figura 2.3 Fasi di Compilazione Altri compiti importanti del CLR sono: Controllare gli spazi di memoria da liberare, ovvero quelli che non sono più necessari all'esecuzione del programma (Garbage Collector) Gestire le eccezioni Verificare l'aderenza del codice con gli standard definiti dal CTS (Common Type System) e CLS (Common Language Specification) Common Type System (CTS) Il CTS (Common Type System) si occupa della gestione unificata di tutti i tipi presenti nei vari linguaggi del Framework.NET, definendo come devono essere dichiarati, usati e gestiti dal runtime. E'possibile realizzare applicazioni utilizzando qualunque linguaggio di programmazione conforme alle specifiche indicate dal CTS; la figura 2.4 illustra come i vari tipi sono correlati fra loro: fondamentalmente si possono distinguere due grossi tronconi, quello dei tipi di valore e quello dei tipi di riferimento. Mediante CTS vengono inoltre specificate le regole per la visualizzazione del tipo e l accesso ai membri di un tipo, le regole per la gestione dell ereditarietà dei tipi, delle funzioni virtuali, della durata di un oggetto e così via. 24

25 Capitolo 2 - Introduzione al Framework.NET Figura 2.4 Gerarchia dei tipi Il Virtual Execution System (VES) implementa il Common Type System (CTS) e si occupa di caricare le informazioni contenute nei metadati. I metadati si occupano di: Descrivere e referenziare i tipi definiti nel VOS type system Gestire le istanze delle Classi in memoria Risolvere l'invocazione di metodi Risolvere problemi legati alle versioni (il famoso inferno delle DLL) 25

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente:

Il.NET Framework. By Dario Maggiari. L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il.NET Framework By Dario Maggiari L architettura del.net Framework è riassunta, nel complesso, nella figura seguente: Il cuore del.net Framework è costituito dal CLR (Common Language Runtime) che, secondo

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Progetto di Applicazioni Software

Progetto di Applicazioni Software Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Questi lucidi sono stati prodotti sulla

Dettagli

Concetti base. Impianti Informatici. Web application

Concetti base. Impianti Informatici. Web application Concetti base Web application La diffusione del World Wide Web 2 Supporto ai ricercatori Organizzazione documentazione Condivisione informazioni Scambio di informazioni di qualsiasi natura Chat Forum Intranet

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

Sistemi Informativi Distribuiti

Sistemi Informativi Distribuiti Corso di Laurea Magistrale in Ingegneria Gestionale Corso di Sistemi Informativi Modulo II A. A. 2013-2014 SISTEMI INFORMATIVI MODULO II Sistemi Informativi Distribuiti 1 Sistemi informativi distribuiti

Dettagli

Introduzione alla Progettazione per Componenti

Introduzione alla Progettazione per Componenti Introduzione alla Progettazione per Componenti Alessandro Martinelli 6 ottobre 2014 Obiettivo del Corso Il Progetto Software Reale Il Componente Software La Programmazione Ad Oggetti Fondamenti di Informatica

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 A2 Introduzione ai database 1 Prerequisiti Concetto di sistema File system Archivi File e record 2 1 Introduzione Nella gestione di una attività, ad esempio un azienda, la

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

WEBsfa: l automazione della forza vendita via Web

WEBsfa: l automazione della forza vendita via Web WEBsfa: l automazione della forza vendita via Web White Paper 1 Gennaio 2005 White Paper Pag. 1 1/1/2005 L automazione della Forza Vendita Le aziende commerciali che che sviluppano e alimentano il proprio

Dettagli

Capitolo 3: Strutture dei sistemi operativi

Capitolo 3: Strutture dei sistemi operativi Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Sistemi Informativi e WWW

Sistemi Informativi e WWW Premesse Sistemi Informativi e WWW WWW: introduce un nuovo paradigma di diffusione (per i fornitori) e acquisizione (per gli utilizzatori) delle informazioni, con facilità d uso, flessibilità ed economicità

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

Sistemi informativi secondo prospettive combinate

Sistemi informativi secondo prospettive combinate Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da

Dettagli

Classificazione del software

Classificazione del software Classificazione del software Classificazione dei software Sulla base del loro utilizzo, i programmi si distinguono in: SOFTWARE Sistema operativo Software applicativo Sistema operativo: una definizione

Dettagli

Le Basi di dati: generalità. Unità di Apprendimento A1 1

Le Basi di dati: generalità. Unità di Apprendimento A1 1 Le Basi di dati: generalità Unità di Apprendimento A1 1 1 Cosa è una base di dati In ogni modello di organizzazione della vita dell uomo vengono trattate informazioni Una volta individuate e raccolte devono

Dettagli

Architetture Software

Architetture Software Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software Architetture Software Giulio Destri Ing. del Sw: Architettura - 1 Scopo del modulo

Dettagli

27/03/2013. Contenuti

27/03/2013. Contenuti Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano Contenuti Virtualizzazione - 3 Macchina virtuale - 4 Architetture delle macchine virtuali - 6 Tipi di virtualizzazione - 7 Monitor della

Dettagli

2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011. Andrea Carnevali R&D Director GESINF S.r.l.

2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011. Andrea Carnevali R&D Director GESINF S.r.l. 2G, l evoluzione della piattaforma Team nel Web 2.0 Roma, 7 dicembre 2011 Andrea Carnevali R&D Director GESINF S.r.l. Il progetto 2G è il nome della piattaforma che consentirà l evoluzione tecnologica

Dettagli

Novità di Visual Studio 2008

Novità di Visual Studio 2008 Guida al prodotto Novità di Visual Studio 2008 Introduzione al sistema di sviluppo di Visual Studio Visual Studio Team System 2008 Visual Studio Team System 2008 Team Foundation Server Visual Studio Team

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di

Dettagli

Single Sign On sul web

Single Sign On sul web Single Sign On sul web Abstract Un Sigle Sign On (SSO) è un sistema di autenticazione centralizzata che consente a un utente di fornire le proprie credenziali una sola volta e di accedere a molteplici

Dettagli

Informatica Documentale

Informatica Documentale Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

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

Una novità di Microsoft per il lancio sul mercato di Microsoft Visual Studio 2005 è stata quella sia

Una novità di Microsoft per il lancio sul mercato di Microsoft Visual Studio 2005 è stata quella sia STRUMENTI DI APPROCCIO PER IL CORSO VISUAL BASIC 2005 Versione Express Edition Premessa Versioni Express Edition di Visual Studio 2005 Una novità di Microsoft per il lancio sul mercato di Microsoft Visual

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

Descrizione generale. Architettura del sistema

Descrizione generale. Architettura del sistema Descrizione generale Sister.Net nasce dall esigenza di avere un sistema generale di Cooperazione Applicativa tra Enti nel settore dell Informazione Geografica che consenta la realizzazione progressiva

Dettagli

Navigare verso il cambiamento. La St r a d a. p i ù semplice verso il ca m b i a m e n t o

Navigare verso il cambiamento. La St r a d a. p i ù semplice verso il ca m b i a m e n t o Navigare verso il cambiamento La St r a d a p i ù semplice verso il ca m b i a m e n t o Le caratteristiche tecniche del software La Tecnologia utilizzata EASY è una applicazione Open Source basata sul

Dettagli

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE

TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LO SVILUPPO DEL SOFTWARE STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1)

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Pagina 1 di 10 Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Nel corso della lezione precedente abbiamo analizzato le caratteristiche dell'architettura CGI.

Dettagli

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi Evoluzione dei sistemi operativi (4) Sistemi multiprogrammati! più programmi sono caricati in contemporaneamente, e l elaborazione passa periodicamente dall uno all altro Evoluzione dei sistemi operativi

Dettagli

Corso Sviluppatore servizi per il Web (WCF) Lezione 01

Corso Sviluppatore servizi per il Web (WCF) Lezione 01 01 Introduzione Introduzione alla tecnologia WCF Premessa Il corso su WCF di cui state leggendo la prima lezione, vi guiderà alla scoperta di questa nuova tecnologia introdotta da Microsoft per venire

Dettagli

Java? Sì, grazie. Scopo del corso

Java? Sì, grazie. Scopo del corso Modulo di Java? Sì, grazie Il linguaggio di Internet? Portabilità su qualunque piattaforma (non solo calcolatori): It works everywhere Supporto e disponibilità di strumenti, librerie e documentazione garantiti

Dettagli

Business Simulation in ambiente web

Business Simulation in ambiente web Business Simulation in ambiente web Da soluzione Stand Alone ad un ambiente condiviso Lecco, Novembre 2013 Documento riservato. Ogni riproduzione è vietata salvo autorizzazione scritta di MAS Consulting

Dettagli

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

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Il Sistema Operativo (1)

Il Sistema Operativo (1) E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale

Dettagli

Componenti di una applicazione. Un programma applicativo è strutturato come un insieme organizzato di tre componenti funzionali:

Componenti di una applicazione. Un programma applicativo è strutturato come un insieme organizzato di tre componenti funzionali: Componenti di una applicazione Un programma applicativo è strutturato come un insieme organizzato di tre componenti funzionali: Un sottosistema di interfaccia con l utente (IU, user interface o anche presentation

Dettagli

RELAZIONE E COMUNICAZIONE. Sviluppare la gestione delle relazioni con i clienti grazie a:

RELAZIONE E COMUNICAZIONE. Sviluppare la gestione delle relazioni con i clienti grazie a: RELAZIONE E COMUNICAZIONE Sviluppare la gestione delle relazioni con i clienti grazie a: Microsoft Office System 2007 Windows Vista Microsoft Exchange Server 2007 è ancora più potente ed efficace, grazie

Dettagli

Introduzione alle basi di dati (prima parte)

Introduzione alle basi di dati (prima parte) Introduzione alle basi di dati (prima parte) Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2007/2008

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

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

Dettagli

Flavio De Paoli depaoli@disco.unimib.it

Flavio De Paoli depaoli@disco.unimib.it Flavio De Paoli depaoli@disco.unimib.it 1 Il web come architettura di riferimento Architettura di una applicazione web Tecnologie lato server: Script (PHP, Pyton, Perl), Servlet/JSP, ASP Tecnologie lato

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

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

INTRODUZIONE. Data Base Management Systems evoluzione tecniche gestione dati

INTRODUZIONE. Data Base Management Systems evoluzione tecniche gestione dati INTRODUZIONE Accesso ai dati tramite DBMS Livelli di astrazione Modello dei dati: schema / istanza / metadati Alcuni modelli dei dati Linguaggi per DBMS Architettura di base di un DBMS cesarini - BDSI

Dettagli

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete Sistemi Operativi di Rete Estensione dei Sistemi Operativi standard con servizi per la gestione di risorse in rete locale Risorse gestite: uno o più server di rete più stampanti di rete una o più reti

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

Componenti Web: client-side e server-side

Componenti Web: client-side e server-side Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente

Dettagli

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento

Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Appunti della lezione del 8/10/2008 del corso di Basi di dati I - Università del Salento Tecnologie per lo sviluppo di applicazioni La tendenza attuale dell'ingegneria è quella dell'integrazione di componenti

Dettagli

Punti fondamentali sulla tecnologia del sistema ABScard

Punti fondamentali sulla tecnologia del sistema ABScard Punti fondamentali sulla tecnologia del sistema ABScard Architettura ABSCARD Pagina 1 di 13 INDICE GENERALE 1 Architettura...3 1.1 Introduzione...3 1.1.1 Sicurezza...4 1.1.2 Gestione...5 1.1.3 ABScard

Dettagli

SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB

SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica SVILUPPO ONTOLOGIE PER LA GESTIONE DOCUMENTALE E LORO INTEGRAZIONE ALL INTERNO DI UNA PIATTAFORMA WEB Relatore Chiarissimo

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

Base Dati Introduzione

Base Dati Introduzione Università di Cassino Facoltà di Ingegneria Modulo di Alfabetizzazione Informatica Base Dati Introduzione Si ringrazia l ing. Francesco Colace dell Università di Salerno Gli archivi costituiscono una memoria

Dettagli

SWIM v2 Design Document

SWIM v2 Design Document PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback

Dettagli

Sme.UP Web Application

Sme.UP Web Application Sme.UP Web Application Web Application Web.UP Una interfaccia web per i vostri dati gestionali Il modulo applicativo Web.UP fornisce al progettista di siti Internet una serie di potenti strumenti per l'integrazione

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Sintassi e Semantica: C# Parte b versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Quaderni di formazione Nuova Informatica

Quaderni di formazione Nuova Informatica Quaderni di formazione Nuova Informatica Airone versione 6 - Funzioni di Utilità e di Impostazione Copyright 1995,2001 Nuova Informatica S.r.l. - Corso del Popolo 411 - Rovigo Introduzione Airone Versione

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

Ministero del Lavoro e delle Politiche Sociali

Ministero del Lavoro e delle Politiche Sociali Ministero del Lavoro e delle Politiche Sociali Prospetto Informativo on-line Standard tecnici del sistema informativo per l invio telematico del Prospetto Informativo Documento: UNIPI.StandardTecnici Revisione

Dettagli

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno 2.1b: DB e DBMS Testi di riferimento 3 mar 2010 Dia 2 Atzeni, Ceri, Paraboschi,

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Architettura di un sistema operativo

Architettura di un sistema operativo Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi

Dettagli

Come Funziona. Virtualizzare con VMware

Come Funziona. Virtualizzare con VMware Virtualize IT Il Server? Virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente

Dettagli

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 VERITAS StorageCentral 1 USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 1. Panoramica di StorageCentral...3 2. StorageCentral riduce il costo totale di proprietà per lo storage di Windows...3 3. Panoramica

Dettagli

8. Sistemi Distribuiti e Middleware

8. Sistemi Distribuiti e Middleware 8. Sistemi Distribuiti e Middleware Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 8. Sistemi distribuiti e Middleware 1 / 32 Sommario 1 Sistemi distribuiti

Dettagli

Il Gruppo Arvedi sceglie tecnologie Microsoft per la virtualizzazione dei sistemi server

Il Gruppo Arvedi sceglie tecnologie Microsoft per la virtualizzazione dei sistemi server Caso di successo Microsoft Virtualizzazione Gruppo Arvedi Il Gruppo Arvedi sceglie tecnologie Microsoft per la virtualizzazione dei sistemi server Informazioni generali Settore Education Il Cliente Le

Dettagli

Testi di riferimento. Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione)

Testi di riferimento. Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione) 2.1b: DB e DBMS Testi di riferimento Atzeni, Ceri, Paraboschi, Torlone Basi di Dati Modelli e linguaggi di interrogazione Mc Graw Hill 2008 (III Edizione) Altri testi di consultazione e approfondimento

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Registro unico Antiriciclaggio

Registro unico Antiriciclaggio Registro unico Antiriciclaggio VERSIONE PROFESSIONISTI E CED VERSIONE 4.0.0 Sommario Introduzione... 4 Requisiti di sistema... 5 Installazione del software... 6 Verifica automatica dei requisiti di installazione...

Dettagli

MOTOROLA RHOELEMENTS SVILUPPA UNA APPLICAZIONE CHE FUNZIONI SU DIVERSI DISPOSITIVI E CON DIFFERENTI SISTEMI OPERATIVI.

MOTOROLA RHOELEMENTS SVILUPPA UNA APPLICAZIONE CHE FUNZIONI SU DIVERSI DISPOSITIVI E CON DIFFERENTI SISTEMI OPERATIVI. MOTOROLA RHOELEMENTS SVILUPPA UNA APPLICAZIONE CHE FUNZIONI SU DIVERSI DISPOSITIVI E CON DIFFERENTI SISTEMI OPERATIVI. MOTOROLA RHOELEMENTS BROCHURE COSÌ TANTI DISPOSITIVI MOBILE. VOLETE SVILUPPARE UNA

Dettagli

Appunti di Sistemi Distribuiti

Appunti di Sistemi Distribuiti Appunti di Sistemi Distribuiti Matteo Gianello 27 settembre 2013 1 Indice 1 Introduzione 3 1.1 Definizione di sistema distribuito........................... 3 1.2 Obiettivi.........................................

Dettagli

Presentazione di Cedac Software

Presentazione di Cedac Software Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994

Dettagli

Motore di riempimento DB (generatore dati per simulazione)

Motore di riempimento DB (generatore dati per simulazione) SISTEMI DISTRIBUITI prof. S.Pizzutilo Motore di riempimento DB (generatore dati per simulazione) Studente: Alessandro Balestrucci 617937 Corso di Laurea: Informatica Magistrale Dipartimento di Informatica

Dettagli

MetaMAG METAMAG 1 IL PRODOTTO

MetaMAG METAMAG 1 IL PRODOTTO METAMAG 1 IL PRODOTTO Metamag è un prodotto che permette l acquisizione, l importazione, l analisi e la catalogazione di oggetti digitali per materiale documentale (quali immagini oppure file di testo

Dettagli

I valori di un prodotto disegnato da chi lo usa Vantaggi che garantiscono l'alta qualità del servizio

I valori di un prodotto disegnato da chi lo usa Vantaggi che garantiscono l'alta qualità del servizio Gestire, condividere e controllare le informazioni nei processi aziendali Dataexpert attraverso un evoluto sistema di Document Management, consente la gestione e la condivisione di flussi informativi aziendali

Dettagli

MDaemon e Outlook Connector for MDaemon

MDaemon e Outlook Connector for MDaemon MDaemon e Outlook Connector for MDaemon Introduzione...2 Cos'è il groupware...2 Che cosa significa groupware?...2 Cos è WorldClient...2 MDaemon e l evoluzione delle funzionalità groupware...3 Nuove funzionalità

Dettagli

Sistemi Operativi. Modulo 2. C. Marrocco. Università degli Studi di Cassino

Sistemi Operativi. Modulo 2. C. Marrocco. Università degli Studi di Cassino Sistemi Operativi Modulo 2 Schema di un Sistema di Calcolo Programmi Dati di Input Calcolatore Dati di output Modello di von Neumann Bus di sistema CPU Memoria Centrale Memoria di Massa Interfaccia Periferica

Dettagli

Co.El.Da. Software S.r.l. Coelda.Ne Caratteristiche tecniche

Co.El.Da. Software S.r.l.  Coelda.Ne Caratteristiche tecniche Co..El. Da. Software S..r.l.. Coelda.Net Caratteristiche tecniche Co.El.Da. Software S.r.l.. Via Villini Svizzeri, Dir. D Gullì n. 33 89100 Reggio Calabria Tel. 0965/920584 Faxx 0965/920900 sito web: www.coelda.

Dettagli

CLS Citiemme Lotus Suite

CLS Citiemme Lotus Suite CLS Il pacchetto CLS v1.0 () è stato sviluppato da CITIEMME Informatica con tecnologia Lotus Notes 6.5 per andare incontro ad una serie di fabbisogni aziendali. E' composto da una serie di moduli alcuni

Dettagli

Novell ZENworks Configuration Management in ambiente Microsoft * Windows *

Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Guida GESTIONE SISTEMI www.novell.com Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Novell ZENworks Configuration Management in ambiente Microsoft Windows Indice: 2..... Benvenuti

Dettagli

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini

Mausoleo COMUNE DI NUORO PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE. Arch.Marco Cerina Ing.Enrico Dini COMUNE DI NUORO D O C U M E N T O D I S P E C I F I C A P E R I L P R O D O T T O Mausoleo PROGETTO PER LA REALIZZAZIONE DEL CIMITERO MULTIMEDIALE Arch.Marco Cerina Ing.Enrico Dini Descrizione introduttiva

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Lezione 6 a.a. 2010/2011 Francesco Fontanella La Complessità del Hardware Il modello di Von Neumann è uno schema di principio. Attualmente in commercio esistono: diversi

Dettagli

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti Basi di dati Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti Anno Accademico 2008/2009 Introduzione alle basi di dati Docente Pierangelo

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Cluster per architetture a componenti

Cluster per architetture a componenti Luca Cabibbo Architetture Software Cluster per architetture a componenti Dispensa ASW 442 ottobre 2014 Un buon progetto produce benefici in più aree. Trudy Benjamin 1 -Fonti [IBM] Clustering Solutions

Dettagli

Analisi dei Requisiti

Analisi dei Requisiti Analisi dei Requisiti Pagina 1 di 16 Analisi dei Requisiti Indice 1 - INTRODUZIONE... 4 1.1 - OBIETTIVO DEL DOCUMENTO...4 1.2 - STRUTTURA DEL DOCUMENTO...4 1.3 - RIFERIMENTI...4 1.4 - STORIA DEL DOCUMENTO...4

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

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO

Allegato 1 CIG 58703795FF PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO PROCEDURA DI AFFIDAMENTO PER LA FORNITURA DI UNA PIATTAFORMA PER SERVICE MASHUP AND DELIVERY CAPITOLATO TECNICO SOMMARIO 1 Oggetto della Fornitura... 3 2 Composizione della Fornitura... 3 2.1 Piattaforma

Dettagli

Manuale Operativo. Istituto Nazionale Previdenza Sociale DIREZIONE CENTRALE SISTEMI INFORMATIVI E TELECOMUNICAZIONI

Manuale Operativo. Istituto Nazionale Previdenza Sociale DIREZIONE CENTRALE SISTEMI INFORMATIVI E TELECOMUNICAZIONI Manuale Operativo Istruzioni per l utilizzo del Software di controllo uniemens aggregato per l invio mensile unificato delle denunce retributive individuali (EMENS) e delle denunce contributive aziendali

Dettagli

INDICE. - COPIA EBRIDGE uso interno 1. INTRODUZIONE... 3 2. PREREQUISITI... 3 3. MENÙ, DIRETTORI E FILES... 4

INDICE. - COPIA EBRIDGE uso interno 1. INTRODUZIONE... 3 2. PREREQUISITI... 3 3. MENÙ, DIRETTORI E FILES... 4 INDICE 1. INTRODUZIONE... 3 2. PREREQUISITI... 3 3. MENÙ, DIRETTORI E FILES... 4 4. FUNZIONALITÀ GENERALI... 5 4.1 CREAZIONE DI UNA COPIA... 5 4.2 ATTIVAZIONE DI UNA COPIA...7 4.3 RUN-TIME 429... 9 5.

Dettagli