3. PROGETTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE REALIZZAZIONE DEL SERVIZIO ANAGRAFE ON-LINE 21

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "3. PROGETTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE 11 4. REALIZZAZIONE DEL SERVIZIO ANAGRAFE ON-LINE 21"

Transcript

1 INDICE 1. INTRODUZIONE 3 2. PRESENTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE La precedente applicazione Specifiche e requisiti del servizio 8 3. PROGETTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE Il progetto logico della base di dati Tipologie di utenti Flussi di conversazione Architettura Layout delle pagine REALIZZAZIONE DEL SERVIZIO ANAGRAFE ON-LINE Tecnologia utilizzata Internet e HTML PHP JAVASCRIPT CSS MS SQL SERVER APACHE Database Viste Tabelle Connessione al database Accessi Login utenti comunali Login enti esterni Il sito Web Stampe formattate Usabilità e accessibilità Collaudo CONCLUSIONI 59 A. APPENDICE 61 a. Legge n.4 del 9 Gennaio 2004 Legge Stanca 61 RIFERIMENTI BIBLIOGRAFICI 67 1

2 2

3 CAPITOLO 1 Introduzione 1. INTRODUZIONE Internet negli ultimi anni ha subito un forte sviluppo, sia in campo tecnologico che nell ambito dei servizi offerti. La rete che siamo abituati a utilizzare quotidianamente si presenta con un aspetto certamente diverso rispetto alla nascita: inizialmente adibito a mezzo di divulgazione scientifica e costituito da semplici browser di testo statici, oggi Internet è il centro dell attività dell informazione dinamica. Considerando la facilità e le molteplici possibilità di accesso alla rete per le più svariate categorie di utenti, è evidente come i servizi sviluppati possano essere sia prettamente commerciali, sia personali (vedi la massiva diffusione dei blog), sia al servizio del pubblico. Le amministrazioni pubbliche hanno sfruttato questa crescita di Internet mediante la creazione di portali Web, punto di incontro con il cittadino, facilitando così l accesso e la fruizione di particolari servizi, attraverso l utilizzo del solo computer. Si è quindi ottenuto il duplice effetto di migliorare la qualità, in termini di semplicità e tempo necessario per reperire informazioni, e quello di diminuire alcune spese. Questo uso ne ha permesso una veloce e vasta diffusione, con la necessità di non discriminare l accesso ad alcuna persona: l accessibilità assume quindi una notevole importanza nella creazione dei servizi, al punto che è salvaguardata da un apposita Legge, la Legge Stanca. In questo contesto si inserisce lo sviluppo del nuovo servizio di Anagrafe on-line, un applicazione Web utile per la consultazione dell anagrafe del Comune di Cento: già esistente nel passato, è stato completamente riprogettato per l esigenza di implementare nuove funzionalità. Con questo servizio viene data la possibilità di conoscere i dati anagrafici (nascita, residenza, codice fiscale, carta d identità ) di ogni singolo cittadino residente nel Comune, il cui utilizzo è indirizzato a tre tipologie di utenti: i dipendenti comunali, particolari enti pubblici e gli amministratori di sistema. Le prime due categorie di utenti hanno la possibilità di consultare i dati anagrafici attraverso differenti metodi di ricerca, mentre gli amministratori hanno in più il compito di gestire gli utenti abilitati a tale servizio, dando o togliendo la possibilità di accesso. 3

4 CAPITOLO 1 Introduzione Il progetto che ha reso possibile la creazione del nuovo servizio, si è sviluppato in molteplici fasi, prima fra tutte l analisi del precedente servizio Web. Da qui, si è proceduto a ricercare le informazioni necessarie a definire gli aspetti e le caratteristiche delle quali avrebbe dovuto disporre. Per questo sono state indispensabili delle interrogazioni ai committenti, in modo da capire con estrema chiarezza le funzionalità del servizio. In base all analisi delle informazioni ottenute, si è passati alla fase di progettazione, nella quale sono state definite le strutture dei dati utili per il servizio e le differenti tipologie di utenti che avrebbero dovuto accedere, creando due modalità di accesso: quella di dominio, riservata agli utenti comunali e agli amministratori, e quella pubblica, per enti pubblici esterni. Per differenziare i privilegi degli utenti, sono stati creati tre diversi livelli: un livello base (possibilità di ricercare per nome e cognome e per codice fiscale), un livello avanzato (possibilità di effettuare anche una ricerca per numero della carta d identità) e un livello amministratore (oltre agli altri privilegi, si occupa della gestione degli utenti). A seguire, particolari attenzioni sono state date alla creazione di un appropriata interfaccia Web con la quale il servizio si presenta all utilizzatore, nel rispetto delle norme di accessibilità e usabilità previste per la pubblica amministrazione Infine il progetto è stato realizzato e calibrato in base alle seguenti considerazioni sulle architetture hardware e software: ridotte richieste di risorse hardware hanno portato a far uso della struttura preesistente composta da server,mentre, per la programmazione, sono state utilizzate tecnologie sia sviluppate in un ambito libero o Open Source (PHP e Server Apache), sia proprietarie, in particolar modo legate al mondo Microsoft (SQL Server). La realizzazione ha comportato la gestione di database dell anagrafe preesistenti e dislocati su più sistemi, unificandoli e attestandoli su un singolo server, la creazione di procedure di autenticazione e la produzione delle pagine Web. Il servizio è stato poi sottoposto a un collaudo sia per un accurata fase di debug, sia per verificare la scalabilità dell applicazione, dati i numerosi accessi contemporanei che il servizio comunale può avere. Questo progetto è stato sviluppato nell ambito di un tirocinio, presso il Servizio Sistemi Informativi (SSI) del Comune di Cento, una possibilità che viene data a laureandi 4

5 CAPITOLO 1 Introduzione del corso di laurea di Informatica, grazie a una stretta cooperazione, consolidata ormai da anni, tra la facoltà di Ingegneria dell Università di Ferrara e lo stesso Comune di Cento. 5

6 6

7 CAPITOLO 2 Presentazione del servizio Anagrafe on-line 2. PRESENTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE Il servizio Anagrafe on-line è realizzato a partire da un applicazione Web preesistente. In questo capitolo vengono discusse le soluzioni adottate per cercare di creare un nuovo servizio, che possa al tempo stesso risolvere i difetti dell applicazione precedente e soddisfare i nuovi requisiti. Punto di partenza per la creazione del nuovo servizio è stata quindi la raccolta delle specifiche di progetto: in questa fase sono necessarie interviste ai committenti, in modo da ottenere un quadro ampio e chiaro su ciò che si intende sviluppare per non rischiare di progettare un servizio inefficiente o fornire soluzioni non richieste La precedente applicazione La necessità di gestire quotidianamente in velocità e in sicurezza le informazioni anagrafiche del cittadino ha portato il Comune di Cento a informatizzare il servizio dell anagrafe. Con l avvento di Internet, il Comune di Cento ha provveduto a creare un proprio portale Web, sul quale è stata portata l applicazione anagrafe, secondo una struttura client-server: i dati risiedevano su server sempre on-line, con il fine di essere disponibili ai client che ne effettuavano richiesta. È stato così creato un servizio applicativo Web per dare la possibilità a enti pubblici di soddisfare il bisogno di reperire i dati anagrafici dei cittadini, al quale potevano accedere solo gli utenti autorizzati, attraverso una procedura di autenticazione. Inizialmente a ogni singolo ente era stata fornita una coppia username/password, procedura successivamente modificata fornendo lo stesso username a tutti gli utenti appartenenti a uno stesso ente e differenziandoli in base alla password. Le funzionalità erano limitate alla ricerca per cognome/nome o per codice fiscale, con i risultati ordinabili in base al tipo: per nome, per cognome, per data di nascita e così via. Tuttavia, a fronte anche di un notevole numero di entry ottenute dalla ricerca, queste venivano visualizzate in pagine contenente ognuna al massimo venti nominativi, con la possibilità di analizzare in dettaglio i vari dati del singolo. 7

8 CAPITOLO 2 Presentazione del servizio Anagrafe on-line Le ricerche effettuate si appoggiavano allo stesso database utilizzato dal software gestionale, con ovvia attenzione alla riservatezza dei dati sensibili della persona: l applicazione difatti doveva fornirne in output solo una parte, mantenendone altri non visibili per ragioni di riservatezza. Gli utenti che potevano averne accesso venivano invece registrati in un database distinto, residente su disco rigido. Questa applicazione Web presentava numerosi difetti, primo fra tutti l utilizzo obbligatorio di più database, problema di elevata importanza in quanto utilizzando un unico database si ha la possibilità di accedere a tutte le informazioni di cui si ha bisogno effettuando una singola connessione, con una ridotta necessità di tracciamento degli accessi a ulteriori database. Analizzando il servizio Web esistente, si è notato che non avveniva una differenziazione degli utenti al momento dell autenticazione, dato che venivano sottoposti tutti alla stessa procedura. Le precedenti modalità di ricerca presentavano, inoltre, delle mancanze: possibilità di inserire, nei campi di ricerca, caratteri speciali come %, $, & inutili alla ricerca stessa; assenza di un controllo, in certe ricerche, di vincoli sul numero minimo e massimo di caratteri da inserire; utilizzo di più pagine per la visualizzazione dei risultati delle ricerche, da evitare per l utilizzo dei backbutton, in quanto rappresentano una forma non corretta di programmazione Specifiche e requisiti del servizio Per ovviare ai difetti e integrare le mancanze della precedente applicazione Web, è stato così deciso di provvedere alla realizzazione di una nuova Anagrafe on-line. I componenti del Servizio Sistemi Informativi (SSI) del Comune di Cento, che si occupa di amministrare la struttura hardware e software della intranet comunale, hanno fornito utili 8

9 CAPITOLO 2 Presentazione del servizio Anagrafe on-line indicazioni per comprendere le nuove funzionalità da implementare e l aspetto del nuovo servizio. Il nuovo servizio Web Anagrafe on-line deve utilizzare piattaforme hardware e software esistenti, in particolare il database preesistente, sia per prelevare le informazioni delle persone, sia per integrarlo con la lista degli utenti che possono accedere al servizio e con la storia degli accessi effettuati. Dalle interviste fatte è sorta l esigenza di fornire al servizio due distinti ambienti di accesso: quello privato, utilizzato dai dipendenti comunali e quello pubblico, utilizzato dagli enti esterni. Analizzando prima l ambito pubblico, le caratteristiche da soddisfare sono: il riconoscimento del profilo dell utente a seguito di una procedura di autenticazione; la possibilità di usufruire di criteri di ricerca per reperire le informazioni anagrafiche di un cittadino. È inoltre stata inserita la possibilità di effettuare interrogazioni per numero di carta d identità; la possibilità di visualizzare maggiori dettagli (personali e familiari) della persona cercata; la possibilità di effettuare delle stampe con un formato specifico, nel rispetto della diffusione dei dati per quanto riguarda la privacy; la possibilità di cambiare la password per un utente che non ha più diritto di accedere al servizio a seguito di un periodo di inutilizzo dell applicazione. Per quanto riguarda l ambito privato, le caratteristiche assumono un grado maggiore di elaborazione, in quanto si deve distinguere se l utente comunale è amministratore o no. Queste due tipologie di utenti hanno in comune le prime quattro caratteristiche dell ambiente pubblico, a differenza della procedura di autenticazione. Un dipendente comunale per accedere alla rete locale dalla propria postazione, effettua in Windows un autenticazione e dato che il servizio è accessibile dal portale Web, l utente deve essere riconosciuto automaticamente, senza la necessità di richiedere una nuova identificazione. 9

10 CAPITOLO 2 Presentazione del servizio Anagrafe on-line In aggiunta il profilo amministratore deve avere le seguenti peculiarità: possibilità di inserire nuovi utenti (dipendente comunale o un ente pubblico) accedendo al solo servizio Web per evitare di agire direttamente sul database. Con la gestione è possibile disattivare e riattivare utenti senza cancellarli dal database, ma solo cambiandone la validità. Inoltre deve esser possibile classificarli in base a privilegi con conseguente accesso o meno a particolari aree; registrare e visualizzare gli accessi effettuati, con particolare attenzione agli utenti con password a scadenza dopo un certo numero di giorni di mancato utilizzo del servizio (controllo effettuato solo per gli enti pubblici esterni). Agli amministratori è affidato il compito di occuparsi della categoria principale del servizio: le persone registrate all anagrafe. Il servizio ha il compito di fornire informazioni dettagliate di ogni singolo cittadino e per reperirle è necessario concatenare tra loro differenti tabelle del database. Si deve prestare attenzione inoltre allo stato attuale della persona: se questa non risiede più nel Comune si dovrà specificare se si tratta di un emigrazione presso un Comune italiano o estero, o se la persona è deceduta è inutile fornire informazioni sulla residenza precedente. Bisogna quindi rendere visibili solamente i dati che si ritengono veramente utili e mantenere gli altri nascosti agli utenti. Ulteriore specifica riguarda i dati relativi alla carta d identità associata a una persona che devono essere resi visibili solamente agli utenti che presentano particolari privilegi. Per rendere più facile la consultazione dell utente, si è poi considerata la possibilità di mettere in stretta correlazione le persone con il proprio nucleo familiare. Essendo un servizio accessibile dal portale Web del Comune di Cento, deve presentarsi con un interfaccia grafica molto simile a quella del portale stesso, standardizzazione molto importante da rispettare. Inoltre un altro aspetto da realizzare per l interfaccia grafica è la separazione tra il contenuto e la presentazione. 10

11 CAPITOLO 3 Progettazione del servizio Anagrafe on-line 3. PROGETTAZIONE DEL SERVIZIO ANAGRAFE ON-LINE La raccolta delle specifiche ha fornito le informazioni di partenza per la fase di progettazione del servizio Anagrafe on-line. Innanzitutto sono state individuate le entità logiche trattate e le associazioni che le legano, continuando con lo studio delle conversazioni utilizzate per mettere in relazione le varie entità. Inoltre è stata curata la realizzazione del servizio con la dovuta attenzione alle architetture hardware e software a disposizione. Infine si è stabilita la struttura di layout che le pagine devono rispettare. 3.1 Il progetto logico della base di dati Nella creazione di un servizio, il livello più basso che si può incontrare è legato ai dati e al database. Un database può essere definito come un contenitore di dati organizzati in accordo a un preciso modello di dati [3]. Quello che qui viene preso in considerazione è il modello Entity-Relationship (ER) le cui parti fondamentali, come indica la sigla, sono le entità e le relazioni. Un entità è una qualsiasi cosa concreta o astratta distinguibile dalle altre. È composta da attributi, caratterizzati da nome e tipo, i quali possono essere di diverso tipo: semplice, composto, unione. Per identificare una particolare entità si utilizzano le chiavi, che sono un insieme di uno o più attributi. Una relazione è un associazione che lega differenti entità e ne esistono di quattro tipi: - uno-a-uno (1:1), un entità di tipo A può essere in relazione con una sola entità di tipo B ed un entità di tipo B, può essere in relazione con una sola entità di tipo A; - uno-a-molti (1:n), un entità di tipo A può essere in relazione con più entità di tipo B ma un entità di tipo B, può essere in relazione con una sola entità di tipo A; - molti-a-molti (n:m) un entità di tipo A può essere in relazione con più entità di tipo B ed un entità B, può essere in relazione con più entità di tipo A; 11

12 CAPITOLO 3 Progettazione del servizio Anagrafe on-line - parziale, un entità di tipo A può non essere in relazione con una o più entità di tipo B. Nello specificare quali sono le entità di questo progetto e come si relazionano tra di loro, si considerano le persone registrate all anagrafe nell entità PERSONA. Gli attributi che contraddistinguono questa entità sono i dati personali quali, ad esempio, nome, cognome e data di nascita. In più esistono tre campi che diventano fondamentali nel ricavare i dati di una persona e nel metterla in relazione con le altre entità. Il primo indica se la persona è in vita, il secondo precisa se la persona attualmente risiede presso il Comune di Cento e il terzo è riferito alle persone iscritte all Associazione Italiani Residenti all Estero (A.I.R.E.). L entità PERSONA può essere in relazione con le seguenti altre entità (vedi Figura 1): - COMUNE, per descrivere il comune di residenza, non necessariamente Cento, perché nel caso di cambio di residenza, viene riportato il Comune dove la persona si trasferisce. Questa associazione è del tipo 1:1; - VIA, per descrivere la residenza (località, indirizzo e numero civico). Questi dati devono essere disponibili solo se la persona risiede attualmente nel Comune di Cento. Questa associazione è del tipo 1:1, ma è di tipo parziale nel caso di persone emigrate, decedute o residenti all estero; - CODICE FISCALE, per descrivere i dati relativi al proprio C.F.. Questa associazione è del tipo 1:1; - CARTA D IDENTITÀ, per descrivere i dati relativi alla propria C.I.. Questa associazione è del tipo 1:N, dato che questo documento presenta una data di scadenza, ed è di tipo parziale perché le persone sotto i 14 anni non hanno diritto ad averla; - MORTE, per descrivere i dati relativi al decesso. Questa associazione è del tipo 1:1, ma è di tipo parziale; - EMIGRAZIONE, per descrivere i dati relativi al cambio di residenza presso un altro comune italiano. Questa associazione è del tipo 1:1, ma è di tipo parziale; - AIRE, per descrivere i dati relativi al cambio di residenza presso un comune estero. Questa associazione è del tipo 1:1, ma è di tipo parziale; 12

13 CAPITOLO 3 Progettazione del servizio Anagrafe on-line - NUCLEO, per descrivere i dati relativi al nucleo familiare al quale la persona fa parte. Questa associazione è del tipo N:1. Oltre alle entità appena descritte, sono da aggiungere le entità PROVINCIA e STATO, entrambe associate all entità COMUNE con relazioni N:1, come riportato in Figura 2. Queste sono le entità che servono per gestire i dati dell anagrafe che bisognerà visualizzare, ad esempio, dopo una particolare ricerca. Figura 1: relazioni dell'entità Persona dello schema ER Figura 2: relazioni dell'entità Comune dello schema ER 13

14 CAPITOLO 3 Progettazione del servizio Anagrafe on-line 3.2. Tipologie di utenti Il servizio Anagrafe on-line, poiché tratta dati personali, necessita di una registrazione di tutti gli utenti che ne fanno uso. È possibile però suddividere gli utilizzatori del servizio in base a chi effettua l accesso e a quali privilegi possiede l utente; gli utenti sono ulteriormente classificabili in due categorie: i dipendenti comunali e gli enti pubblici. Gli enti pubblici sono dei normali visitatori e possono visualizzare le informazioni relative ai residenti nel Comune di Cento utilizzando i vari criteri di ricerca disponibili. I dipendenti comunali possono essere sia utilizzatori del servizio che gestori degli altri utenti. Da queste considerazioni si possono contraddistinguere, per ogni tipo di utente, tre diversi livelli di privilegio: il livello base, il livello avanzato e il livello amministratore. Gli utenti del primo livello sono i visitatori che godono di minori privilegi. È concesso loro di poter ricercare i dettagli di una persona utilizzando query per nome, cognome e per codice fiscale. Non è data la possibilità di ricercare una persona per numero di carta di identità. A questo livello fanno parte la maggior parte degli enti esterni e tutti gli utenti comunali al di fuori dei dipendenti dell SSI e dell anagrafe. Gli utenti del livello avanzato sono sempre dei visitatori, ma hanno la possibilità di usufruire anche della ricerca per numero della carta d identità. A questo livello fanno parte i dipendenti dell anagrafe e particolari enti esterni, come la polizia, i carabinieri e la questura. Al livello amministratore fanno parte i dipendenti dell ufficio SSI che, oltre a servirsi di tutti i criteri di ricerca, possono occuparsi della gestione degli utenti. Le operazioni di gestione di cui un amministratore può fare uso sono: l inserimento di nuovi utenti comunali o esterni e la disattivazione/riattivazione di un utente al quale si vuole togliere o ridare l accesso. I due attributi fondamentali di cui la nuova entità UTENTE dovrà disporre alla procedura di autenticazione sono lo username e la password. 14

15 CAPITOLO 3 Progettazione del servizio Anagrafe on-line Figura 3: relazioni dell'entità Utente dello schema ER L ultima entità del modello ER utilizzato, è l entità LOG, utilizzata per mantenere una storia degli accessi. Questa è in relazione con l entità UTENTE, attraverso una relazione N:1, come riportato in Figura Flussi di conversazione Definite le tipologie di utenti che hanno accesso al servizio, si esaminano ora la conversazioni. Un conversazione si può definire come l insieme di pagine Web, funzioni e dati utili per raggiungere lo stesso scopo [2]. Attraverso una conversazione si possono quindi definire i diversi passi da sviluppare affinché questa sia di senso compiuto. Il servizio Anagrafe on-line presenta un solo tipo di operazione, se visto da utenti visitatori: l operazione di ricerca. La struttura del flusso di questa operazione, rappresentato nella Figura 4, sarà sempre la stessa, indipendentemente che si tratti di una ricerca per nome e cognome, per codice fiscale o per carta d identità ed è stata sviluppata nel seguente modo: - pagina di acquisizione dati, dove si deve precisare ciò che si vuole ricercare, attraverso dei campi di inserimento. Inoltre, mediante altri campi presenti solo per la ricerca per nome e cognome, è possibile dare delle caratteristiche ben definite alla ricerca precisando se la si intende effettuare in modo approssimativo, dove si cercano tutte le persone che hanno nome e cognome che iniziano per la stringa inserita, o in modo esatto, dove i risultati ottenuti devono avere come nome e cognome, lo stesso inserito; è possibile anche limitare le persone che soddisfano la ricerca, accettando solo quelle che presentano una data di nascita compresa in un determinato periodo. Infine si possono specificare i metodi di ordinamento scelti, ovvero in base a che campo si intende 15

16 CAPITOLO 3 Progettazione del servizio Anagrafe on-line ordinare e se si vuole un ordinamento crescente o decrescente. Prima di passare i criteri della ricerca alla pagina successiva, viene effettuato un controllo dei dati inseriti; - pagina di risultati dati, dove viene effettuata la reale operazione di ricerca, accedendo al database. In questa pagina vengono visualizzati i record che soddisfano ai criteri di ricerca inseriti. Visto che il numero di risultati in output può essere elevato, le informazioni riportate sono limitate; - pagina della persona, che permette la visualizzazione di tutte le informazioni disponibili della persona, in base al livello dell utente e alla condizione della persona: questa infatti sarà provvista di dettagli differenti qualora si tratti di una persona attualmente residente, trasferita presso un altro Comune italiano, iscritta all Associazione Italiana Residenti all Estero (A.I.R.E.) o deceduta; - pagina del nucleo, dalla pagina della persona è possibile accedere alla pagina dove vengono riportati tutti i componenti del nucleo familiare al quale appartiene, per avere una maggiore facilità nel recupero delle informazioni. Le operazioni di inserimento e/o modifica che un utente amministratore può fare non differiscono di molto (vedi Figura 5): - pagina della scelta operazione, dove si deve precisare l operazione che si vuole effettuare, scelta che implica l inserimento o meno di certi dati. Le operazioni che si possono svolgere sono: inserimento di un nuovo utente, disattivazione di un utente esistente e riattivazione di un utente precedentemente disattivato. Prima di passare i criteri della ricerca alla pagina successiva, viene effettuato un controllo dei dati inseriti; - pagina di risultato operazione, dove viene effettuata la reale operazione scelta, accedendo al database e ne viene visualizzato l esito. 16 Figura 4: flusso conversazione di una ricerca

17 CAPITOLO 3 Progettazione del servizio Anagrafe on-line Figura 5: flusso di conversazione di gestione degli utenti Anche se l utente può non rendersene conto quando utilizza il servizio, la procedura di login può rappresentare una conversazione. Il suo flusso è rappresentato in Figura 6 ed è strutturato nella seguente modalità: - pagina dell accesso, dove si deve precisare il tipo accesso in base all utente che si presenta: accesso per dipendenti comunali o accesso per enti esterni; - pagina di autenticazione, dove avviene il riconoscimento dell utente che intende accedere al servizio; - pagina di log, se la procedura di autenticazione ha avuto esito positivo, si dovrà registrare che l utente ha compiuto un accesso. Se l esito è negativo verrà riproposta la pagina di autenticazione; - pagina di ricerca, l utente ha accesso al servizio e può usufruire delle funzioni disponibili. Figura 6: flusso di conversazione di login 17

18 CAPITOLO 3 Progettazione del servizio Anagrafe on-line 3.4. Architettura Le scelte tecnologiche fatte nel definire l architettura hardware e software utilizzata per l implementazione dell applicazione Anagrafe on-line, sono vincolate a molteplici aspetti come, ad esempio, qualità, sicurezza ed efficienza. Tale studio è stato molto facilitato in quanto l architettura a disposizione è già stata utilizzata per servizi simili e l applicazione da realizzare non presenta specifiche così dettagliate da richiedere un cambiamento tecnologico. L applicazione sviluppata si appoggia sulla rete intranet del Comune di Cento (vedi Figura 7), separata da Internet attraverso l utilizzo di un firewall, che ha inoltre la funzione di delimitare la DMZ, la DeMilitarized Zone. Tutte le applicazioni Web risiedono su un server della intranet su cui è stato installato il server Web Apache, operante su piattaforma Microsoft Windows. Come DBMS (DataBase Management System), per esigenze dei fornitori, è stato scelto SQL Server di Microsoft. Le richieste che arrivano dalla rete Internet e che hanno come destinatari questi database, subiscono l influenza di un server installato sulla DMZ e che funge da proxy. L utente può accedere all applicazione Web tramite un Web Browser, le cui richieste vengono inoltrate ad un architettura software sviluppata su tre livelli logico-funzionali (applicazione Three-Tier), come riportato in Figura 8: il Web Server, l Application Server e il DataBase Server [1]. Il Web Server si occupa di fornire una pagina Web a seconda delle richieste ottenute dal Web Browser. L Application Server contiene la logica elaborativa dell intera applicazione ed è costituito da un insieme di script interagenti tra di loro e con il server Web. A questo livello avviene la gestione del flusso dati: esso è in grado di soddisfare le richieste di dati e di elaborazione del client. Le modalità di realizzazione del livello intermedio dipendono spesso dalle caratteristiche e dalle tecnologie supportate dal server Web. Infine, il DataBase Server ha il compito di accedere e gestire i dati residenti su database, fornendo tabelle e viste. 18

19 CAPITOLO 3 Progettazione del servizio Anagrafe on-line Figura 7: schema della rete del Comune di Cento Figura 8: architettura dell applicazione Anagrafe on-line 3.5. Layout delle pagine Stabiliti i flussi di conversazione che interessano le varie pagine Web, si deve definire la struttura grafica che le varie pagine devono rispettare. La creazione del layout assume una notevole importanza nel mondo del Web, in quanto rappresenta l approccio che l utente ha con tale servizio. Lo scopo principale può quindi essere riassunto nel 19

20 CAPITOLO 3 Progettazione del servizio Anagrafe on-line cercare di agevolare l utente nella navigazione. È nella creazione che avviene lo studio per la separazione tra il contenuto e la presentazione. Lo schema utilizzato per le pagine Web del servizio Anagrafe on-line è simile a quello utilizzato dagli altri servizi del portale, in quanto si vuole cercare di uniformare tutti i servizi con la stessa grafica del sito comunale. La struttura che si intende seguire è la seguente ed è rappresentata in Figura 9: Top: è la parte che contiene l intestazione della pagina Web. Si dovranno visualizzare delle informazioni che riguardano il Comune di Cento. Menusx: rappresenta il menù utilizzato per la navigazione all interno del servizio, quindi deve attivarsi solo dopo aver effettuato l autenticazione dell utente. In questa parte si devono quindi riportare le operazioni che si possono effettuare, prestando attenzione ai privilegi che possiede l utente con il quale si sta interagendo. Footer: è la parte sottostante alla pagina, dove è solito riportare informazioni secondarie per l utilizzo del servizio. Content: mentre le altre parti rimangono fisse per tutta la sessione di utilizzo del servizio, questa è l unica parte che si presenta dinamica. Infatti cambia sia a seconda dell operazione che si sceglie di effettuare, sia in base allo stato nella quale la stessa operazione si può trovare. Figura 9: struttura del layout utilizzato 20

21 4. REALIZZAZIONE DEL SERVIZIO ANAGRAFE ON-LINE Sviluppare un applicazione secondo una logica a componenti significa scomporla in blocchi. È molto utile separare le funzioni necessarie in una struttura multi-livello al fine di fornire astrazioni più complesse a partire dalle funzionalità elementari. Si è passati da una struttura a quattro livelli a una a tre livelli: il livello logico più basso è rappresentato dai servizi (gestione del database), il livello più alto è il livello di presentazione (visualizzazione delle pagine Web) e il livello intermedio ha il compito di interfacciare gli altri due Tecnologia utilizzata In questo paragrafo viene introdotta una panoramica del mondo di Internet, al fine di introdurre le tecnologie utilizzate nella programmazione, in particolare quelle scelte dal Comune di Cento per creare il servizio Anagrafe on-line e altre applicazioni attive sul suo portale Web Internet e HTML HTML (acronimo per Hyper Text Markup Language) è un linguaggio usato per descrivere i documenti ipertestuali disponibili nel Web. Non è un linguaggio di programmazione, ma un linguaggio di markup, ossia descrive il contenuto, testuale e non, di una pagina Web. È stato sviluppato alla fine degli anni '80 da Tim Berners-Lee al CERN di Ginevra. Verso la metà dello scorso decennio ha avuto una forte diffusione, in seguito ai primi utilizzi commerciali del Web [6]. È un linguaggio di pubblico dominio la cui sintassi è stabilita dal World Wide Web Consortium (W3C). 21

22 Gli elementi di questo linguaggio rappresentano le strutture a cui è delegata la funzione di formattare i dati o indicare al Web browser delle informazioni. Ogni elemento è racchiuso all'interno di tag, uno di apertura ed uno di chiusura (per certi elementi è opzionale). I tag sono dei markup costituiti da una sequenza di caratteri racchiusa da due parentesi angolari ( < e > ). Tutte le informazioni contenute nel documento devono essere indicate tra i tag <html> e </html>. All'interno di questi due tag la sintassi HTML permette due sezioni: una racchiusa tra i tag <head> e </head>, ed una racchiusa tra i tag <body> e </body>. All'interno della prima sezione sono indicate delle informazioni generali riguardanti l'intero documento e che non vengono visualizzate dal browser. All'interno della sezione BODY sono indicate tutte le informazioni effettivamente presenti nel documento. Attualmente i documenti HTML incorporano molte tecnologie, che offrono la possibilità di aggiungere al documento ipertestuale delle animazioni interattive o degli effetti particolari. Si tratta di linguaggi come CSS, JavaScript o Java, o di altre applicazioni multimediali PHP PHP nasce nel 1994, a opera di Rasmus Lerdorf, con lo scopo di facilitare, ai programmatori, l'amministrazione delle homepage personali: da qui trae origine il suo nome, che allora significava appunto Personal Home Page. Essendo un progetto di tipo open source, ben presto si formò una ricca comunità di sviluppatori che portò alla creazione di PHP 3: la versione del linguaggio che diede il via alla crescita esponenziale della sua popolarità. Tale popolarità era dovuta anche alla forte integrazione di PHP con il Web server Apache (il più diffuso in rete), e con il database MySQL. Tale combinazione di prodotti, integralmente ispirata alla filosofia del free software, diventò ben presto vincente in un mondo in continua evoluzione come quello di Internet. 22

23 Alla fine del 1998 erano circa i server Web che supportavano PHP: un anno dopo superavano il milione. I 2 milioni furono toccati in aprile del 2000, e alla fine dello stesso anno erano addirittura Il 2000 è stato sicuramente l'anno di maggiore crescita del PHP, coincisa anche con il rilascio della versione 4, con l introduzione di una lunga serie di nuove funzioni, fra cui quelle importantissime per la gestione delle sessioni. La crescita di PHP, nonostante sia rimasta bloccata fra luglio e ottobre del 2001, è poi proseguita toccando quota server alla fine del 2001, per superare i 10 milioni alla fine del 2002, quando è stata rilasciata la versione La continua evoluzione dei linguaggi di programmazione concorrenti e l'incremento notevole dell'utilizzo del linguaggio portò così PHP 5, che si propone come innovazione nell'ambito dello sviluppo Web open source [7]. Oggi PHP è conosciuto come un linguaggio completo di scripting, sofisticato e flessibile, che può girare praticamente su qualsiasi server Web, su qualsiasi sistema operativo, e consente di interagire praticamente con qualsiasi tipo di database (SQLite, MySQL, PostgreSQL, MS SQL Server, Oracle, SyBase, Access e altri). Si può utilizzare per i più svariati tipi di progetti, dalla semplice home page dinamica fino al grande portale o al sito di e-commerce. Parlando di PHP, bisogna sempre considerare il lato client, cioè gli aspetti che riguardano gli utenti che effettuano particolari richieste, e il lato server, cioè le operazioni che devono esser effettuate per fornire dei risultati alle richieste degli utenti. Per fare ciò, una pagina PHP contiene sia codice HTML, ma anche codice PHP. Il server, prima di inviare la pagina, esegue il codice PHP (contenuto tra il tag d apertura <?php e il tag di chiusura?>) che in genere produce altro codice HTML, in modo che dopo l'esecuzione, la pagina non conterrà più codice PHP, ma solo HTML. A questo punto è pronta per essere spedita al browser dove l'utente potrà visualizzare solo il codice HTML, e non aver accesso al codice PHP. Inoltre un altro aspetto che differenzia questo linguaggio è la presenza in fondo ad ogni istruzione PHP di un punto e virgola; infatti la sintassi del PHP prevede che il punto e virgola debba obbligatoriamente chiudere ogni istruzione. Si può quindi affermare che PHP è un ottimo linguaggio, leader tra quelli open source per lo sviluppo Web, molto semplice da imparare e subito produttivo. 23

24 JAVASCRIPT Lo sviluppo di questo linguaggio risale quando ormai il linguaggio HTML si era ben affermato. Questo portò un notevole cambiamento alle pagine, per cui alcuni effetti diventarono più facili da effettuarsi. Pensando al nome di questo linguaggio è facile pensare che alla base ci sia il linguaggio Java. In verità tale nome deriva da una collaborazione tra Netscape, che stava sviluppando il linguaggio Live Script, e la Sun, che si stava facendo conoscere con Java. Javascript ha una sintassi molto simile a quella di altri linguaggi. La caratteristica principale di Javascript, infatti, è quella di essere un linguaggio di scripting, il più usato. Questa particolarità comporta una notevole serie di vantaggi e svantaggi secondo l'uso che se ne deve fare e tenendo in considerazione il rapporto client-server. JavaScript, di solito viene usato come linguaggio lato client: JavaScript infatti viene eseguito non dal server, ma dal browser dell'utente. JavaScript ci consente di eseguire operazioni che riguardano il sistema dell'utente, come ad esempio aprire una nuova finestra del browser, o controllare la compilazione di una form segnalando eventuali errori prima che i dati vengano spediti al server. Permette anche di avere un'interazione con l'utente: ad esempio, possiamo far sì che quando il mouse passa su una determinata immagine, tale immagine si modifichi. Per svolgere tutti questi compiti, JavaScript deve essere eseguito sul sistema dell'utente: per questo il codice JavaScript viene spedito al browser insieme al codice HTML. Quindi l'utente ha la possibilità di visualizzarlo, contrariamente a ciò che accade con PHP. Uno dei vantaggi di questo linguaggio è la maggior sicurezza e affidabilità perché in chiaro e da interpretare, quindi può essere filtrato. Per ragioni di sicurezza, ciò porta a una limitatezza delle capacità di questo linguaggio. Ma il problema più consistente, è che il codice è visibile e può essere letto da chiunque. 24

25 CSS Dietro l acronimo CSS, Cascading Style Sheets cioè Fogli di stile a cascata, si nasconde uno dei fondamentali linguaggi standard del W3C. Questo linguaggio può essere visto come un linguaggio strutturale, attinente anche la presentazione di un documento. L'ideale perseguito da anni si può sintetizzare con una nota espressione: separare il contenuto dalla presentazione. La prima specifica ufficiale di CSS (CSS1) risale al dicembre del Nel maggio 1998 è stata la volta della seconda versione: CSS2. Attualmente si sta sviluppando la nuova specifica CSS3 [4]. L obiettivo dei CSS è quello di poter fare tutto ciò che con HTML non si può realizzare. Con i fogli di stile, si possono definire proprietà per i font, i colori, gli stili, le immagini, gli sfondi, e tanto altro, con il vantaggio che, essendo i CSS separati dal resto, le modifiche non devono esser effettuate su tutte le pagine. La gestione del sito risulta quindi essere più semplice in quanto le pagine si presentano più leggere e facili da modificare. I CSS costituiscono uno degli strumenti fondamentali per fornire l accessibilità MS SQL SERVER Microsoft SQL Server è un DBMS, Database Management System cioè un Sistema di gestione dei database, nato come prodotto leader del suo settore in ambiente Microsoft. Il World Wide Web è una delle maggiori fonti di informazione a cui oggi si può attingere: si ha la possibilità di consultare un patrimonio di centinaia di milioni di pagine riguardanti praticamente ogni argomento di interesse. Spesso queste pagine non sono documenti statici, ma vengono creati dinamicamente quando noi li richiediamo e le informazioni che contengono vengono estratte da un database, attraverso il linguaggio SQL (Structured Query Language). 25

26 Un database è una collezione di dati che viene gestita e organizzata da un software specifico, il DBMS (DataBase Management System, Sistema di Gestione di DataBase). Un DBMS è sostanzialmente uno strato software che si frappone fra l'utente e i dati veri e propri. Grazie a questo strato intermedio l'utente e le applicazioni non accedono ai dati così come sono memorizzati effettivamente, cioè alla loro rappresentazione fisica, ma ne vedono solamente una rappresentazione logica. Ciò permette un elevato grado di indipendenza fra le applicazioni e la memorizzazione fisica dei dati. L'amministratore del database può decidere di memorizzare i dati in maniera differente o anche di cambiare il DBMS senza che le applicazioni, e quindi gli utenti, ne risentano. La cosa importante è che non venga cambiata la rappresentazione logica di quei dati, che è la sola cosa che i loro utilizzatori conoscono. Il Database che viene utilizzato è basato sul modello relazionale e si presenta come una tabella bidimensionale composta da righe e colonne. Ciascuna riga o tupla, rappresenta un'entità, mentre le caratteristiche di ciascuna entità sono definite invece dalle colonne delle relazioni e vengono chiamate attributi. Le funzionalità principali che ci si deve aspettare da un DBMS sono quelle di consentire l'accesso ai dati attraverso uno schema concettuale, permettere la condivisione e l'integrazione dei dati fra applicazioni differenti, controllare l'accesso concorrente ai dati, assicurare la sicurezza e l'integrità' dei dati. Grazie a queste caratteristiche le applicazioni che vengono sviluppate possono contare su una sorgente dati sicura, affidabile e generalmente scalabile. Il Comune di Cento ha preferito lavorare con questo tipo di DBMS al posto di altri, che hanno il vantaggio di essere disponibili nel mercato senza portare alcun costo aggiuntivo nel bilancio comunale, per il fatto di essere vincolato dalle richieste dei propri fornitori nell utilizzo del DBMS della Microsoft in molti servizi. 26

27 APACHE Apache è un Web server per il protocollo HTTP, designato per poter girare come un processo standalone, senza chiedere l'appoggio ad altre applicazioni o direttamente all'utente. Il suo sviluppo è a cura dell Apache Group, un team composto solamente da volontari. Per poter funzionare nella modalità precedentemente descritta, Apache, una volta avviato, crea dei sottoprocessi per poter gestire le richieste: questi non potranno mai interferire con il processo maggiore, ma potrà succedere l'opposto. Essendo sviluppato da volontari, l aspetto principale di Apache è che la sua distribuizione è libera: si ritiene, infatti, che strumenti di questo genere debbano essere accessibili a tutti, e che le software house debbano guadagnarci solo producendo implementazioni, magari personalizzate per alcune categorie di utenti. Inoltre, lasciando il software in mano di chiunque nonchè completo di sorgenti, è possibile che utenti contribuiscano, sia tramite feedback sia tramite vere e proprie patch, a migliorare il prodotto finale. Il dominatore incontrastato del mercato dei Web server è Apache, nelle sue varie versioni, presente su più del 60% dei Web server in rete. A seguire, ben distanziato è IIS di Microsoft, più del 25% di installazioni [5]. Il Comune di Cento ha sempre usufruito del server Web Apache da quando dispone del CED, Centro Elaborazione Dati, e il vantaggio di disporre di tale tecnologia senza alcun costo, ha certamente influito sulla scelta di non abbandonarla per preferirla ad altre Database L applicazione Anagrafe on-line si appoggia a un database già esistente che risiede su un server che ha la particolare proprietà di aggiornare ogni giorno le tabelle che lo compongono. Questo database è composto da molte tabelle che riportano non solo 27

28 informazioni riguardanti la popolazione, ma anche altri dati. Si possono trovare informazioni sulla persona dall ambito familiare a quello lavorativo, ai documenti di vario genere, alle sezioni elettorali, alla catalogazione di vie, frazioni, province, stati È presente una quantità elevata di dati residenti su ben 75 tabelle, ma quelle che effettivamente sono utili per la realizzazione dell applicazione sono solo una decina. Nella Figura 10 sono riportati il nome e la descrizione di tutte le tabelle che vengono prodotte. Figura 10: tabelle presenti nel database 28

29 Viste Oltre alla presenza di numerose tabelle c è da aggiungere un altro aspetto riguardante la tabella principale del servizio, la 0101, che contiene i dati di anagrafica di base. Questa tabella presenta dimensioni molto elevate, sia in verticale, per il numero di tuple o righe presenti, che in orizzontale, essendo ogni record composto da numerosi campi. Tutto ciò può sicuramente portare a grossi rallentamenti dell applicazione. È quindi necessario ridurre le dimensioni della tabella, limitando a considerare solamente i campi che si intendono visualizzare o che possono essere utili per particolari operazioni. La soluzione a questo problema è creare delle viste, che rappresentano delle porzioni di tabelle definite in funzione di altre. Quindi oltre ad aver la possibilità di visualizzare solo certi campi, si possono mettere in relazione differenti tabelle, sempre che ciò sia stato definito nello schema ER. A seguire vengono riportate e descritte le viste che sono state create: Vista dati ANAGRAFE La vista che tratta i dati dell anagrafe, contiene i seguenti valori: CODICE COGNOME_DEF NOME_DEF SESSO DES_COM PROVINCI CODCITTA GG MM AAAA COD_FISC CODVIA DESC_VIA FRAZIONE NUM_CIV BARRATO INTERNO CAP IN_VITA RISIEDE AIRE NUCLEO Questa vista è stata creata mettendo in relazione le seguenti tabelle: [0101] = Anagrafica di base (nello schema ER è rappresentata dall entità Persona ed è sempre in questa tabella che è presente un campo che rappresenta l entità Nucleo) [0127] = Dati fiscali (nello schema ER è rappresentata dall entità Codice Fiscale) [0201] = Archivio Comuni (nello schema ER è rappresentata dall entità Comune) [0301] = Archivio Vie (nello schema ER è rappresentata dall entità Via) 29

30 Figura 11: codice per la creazione della vista dell'anagrafe Di notevole importanza risultano i 3 campi booleani usati per indicare se la persona è viva (IN_VITA), se risiede attualmente presso il comune (RISIEDE) e se è iscritto all A.I.R.E. (AIRE). Particolari aggiustamenti sono stati fatti per la data (vedi Figura 11) che è stata suddivisa nei 3 campi giorno (GG), mese (MM) e anno (AAAA) e per la stringa contenente nome e cognome, la quale è stata separata in nome (NOME_DEF) e cognome (COGNOME_DEF). Vista dati MORTI La vista che tratta i dettagli delle persone decedute, contiene i seguenti valori: CODICE COGNOME_DEF NOME_DEF GG MM AAAA DES_COM PROVINCI DESC_STA Questa vista è stata creata mettendo in relazione le seguenti tabelle: [0101] = Anagrafica di base [0105] = Dati di morte (nello schema ER è rappresentata dall entità Morte) [0201] = Archivio Comuni [0501] = Stati (nello schema ER è rappresentata dall entità Stato) 30

31 Figura 12: codice per la creazione della vista delle persone decedute Fondamentale per la creazione di questa vista, diventa quindi il controllo sullo stato di vita (IN_VITA deve essere N ). Anche qui vengono effettuati gli stessi aggiustamenti per il nome e cognome e per le date fatti per la query nella creazione della vista coi dati dell anagrafe (vedi Figura 12). Vista dati EMIGRAZIONI La vista che tratta i dettagli delle persone che si sono trasferite presso un altro comune d Italia, contiene i seguenti valori: CODICE COGNOME_DEF NOME_DEF GG MM AAAA DES_COM DESC_PRO Questa vista è stata creata mettendo in relazione le seguenti tabelle: [0101] = Anagrafica di base [0104] = Immigrazione Emigrazione (nello schema ER è rappresentata dall entità Emigrazione) [0201] = Archivio Comuni [0401] = Province (nello schema ER è rappresentata dall entità Provincia) 31

32 Figura 13: codice per la creazione della vista delle persone emigrate Fondamentale per la creazione di questa vista, diventa quindi il controllo sullo stato di vita (IN_VITA deve essere S ), sullo stato di residenza (RISIEDE deve essere N ) e se si tratta di una pratica di emigrazione e non di immigrazione (IE deve essere E ). Anche qui vengono effettuati gli stessi aggiustamenti per il nome e cognome e per le date fatti per la query nella creazione della vista coi dati dell anagrafe (vedi Figura 13). Vista dati AIRE La vista che tratta i dettagli delle persone che si sono trasferite presso un comune estero, contiene i seguenti valori: CODICE COGNOME_DEF NOME_DEF GG MM AAAA DES_COM DESC_STA Questa vista è stata creata mettendo in relazione le seguenti tabelle: [0101] = Anagrafica di base [0121] = Residenza Estero (nello schema ER è rappresentata dall entità Aire) [0201] = Archivio Comuni [0501] = Stati 32

33 Figura 14: codice per la creazione della vista delle persone iscritte all'a.i.r.e. Fondamentale per la creazione di questa vista, diventa quindi il controllo sullo stato di vita (IN_VITA deve essere S ), sullo stato di residenza (RISIEDE deve essere N ) e sull iscrizione all A.I.R.E. (AIRE deve essere S ). Anche qui vengono effettuati gli stessi aggiustamenti per il nome e cognome e per le date fatti per la query nella creazione della vista coi dati dell anagrafe (vedi Figura 14). Vista dati CARTE D IDENTITÁ La vista che tratta i dettagli delle carte d identità delle persone, contiene i seguenti valori: CODICE COGNOME_DEF NOME_DEF GG MM AAAA DESC_VIA FRAZIONE NUM_CIV BARRATO INTERNO CAP NUMDOC GG_CI MM_CI AAAA_CI Questa vista è stata creata mettendo in relazione le seguenti tabelle: [0101] = Anagrafica di base [0112] = Documenti (nello schema ER è rappresentata dall entità Carta d identità) [0301] = Archivio Vie [DERIVEDTBL] = Tabella della subquery contenente il codice della persona (COD_SCAD) e la data di scadenza dell ultima carta d identità (SCADENZA), utilizzata per scartare le carte d identità scadute e successivamente rinnovate. 33

34 Figura 15: codice per la creazione della vista delle carte d'identità Per la creazione di questa vista, viene utilizzata una subquery che ha il compito di estrarre per ogni persona la carta d identità valida, in modo da scartare le carte d identità scadute. Inoltre devono essere effettuati dei controlli sullo stato di vita (IN_VITA deve essere S ), sullo stato di residenza (RISIEDE deve essere S ), sull iscrizione all A.I.R.E. (AIRE deve essere N ), sul tipo di documento (TIPODOC vale 01 per la Carta d Identità e 05 per la Carta d Identità Elettronica) e sulla validità della Carta d Identità (DOCUMEVA vale A per annullata, N per non per espatrio). Anche qui vengono effettuati gli stessi aggiustamenti per il nome e cognome e per le date fatti per la query nella creazione della vista coi dati dell anagrafe (vedi Figura 15). La subquery riportata in Figura 16 è utilizzata per trovare l ultima carta d identità fatta da ogni persona e contiene i seguenti campi: COD_SCAD SCADENZA Figura 16: funzione utilizzata per trovare la carta d'identità più recente 34

35 Tabelle Oltre alle tabelle esistenti che hanno portato alla creazione delle viste elencate nel paragrafo precedente, è stato necessario aggiungerne altre due: la tabella UTENTI e la tabella LOG. Queste sono le uniche tabelle che subiranno operazione di scrittura, attraverso inserimenti e modifiche. Le altre tabelle sono utilizzate solamente in lettura. Tabella dati UTENTI La tabella UTENTI è utilizzata per la registrazione di chi effettivamente può accedere al servizio. È importante suddividere gli utenti in due categorie (campo TIPO): utenti di dominio e utenti esterni. Quindi il campo USERNAME conterrà cognome.nome se si tratta di un utente comunale, oppure una stringa che identifica un ente ben preciso. Solamente nel secondo caso, il solo campo USERNAME non identifica in modo univoco un utente, ma si necessita del campo successivo. Il campo PASSWORD, nel caso di un utente di dominio non dovrà contenere nulla, dato che il login è effettuato da un altro servizio, mentre per l utente esterno si provvederà a fornire una stringa che garantisce, in coppia con lo USERNAME, l unicità di un utente. Un altro campo, che è presente solo nel caso di utente esterno, è il NOME che servirà per avere una chiara descrizione di quell utente. Per definire cosa un utente possa fare, si introduce il campo LIVELLO. Con questo possiamo suddividere gli utenti nei tre livelli base, avanzato e amministratore. Inoltre, è presente il campo VALIDAZIONE. Questo campo è utilizzato per acconsentire o meno l accesso a un particolare utente e può avere tre differenti valori: valido per un utente che può avere accesso, scaduto per un utente che non accede al servizio da più di 60 giorni e quindi necessita di un cambio di password e disattivato per un utente al quale è stato tolto il diritto di accedere da parte di un amministratore. Se per gli utenti esterni si necessita di una registrazione, per gli utenti di dominio no, dato che fanno già parte del dominio 35

36 della rete Intranet comunale, il dominio100. Per ovviare a problemi di censimento dell elevato numero di dipendenti comunali (circa 200), gli utenti di dominio hanno tutti un livello di privilegio base, e solo i dipendenti che godono di diritti superiori sono inseriti nel database. Infine è presente un campo id che è rappresentato da un contatore per aumentare ancor di più l unicità di un record. La struttura della tabella Utenti è riportata in Figura 17, seguita dalla Figura 18 contenente il relativo codice per crearla. Tabella dati LOG La tabella LOG serve sia per registrare tutti gli accessi, sia per tener nota di particolari operazioni svolte da qualche utente o dagli amministratori a carico di altri utenti. In questa tabella ritroviamo i campi USERNAME e NOME utilizzati per identificare in modo univoco un record, assieme al solito campo contatore id. L operazione da tener nota verrà inserita nel campo INFO e assumerà valori diversi a seconda che l utente venga inserito, disattivato o riattivato dall amministratore o che l utente abbia accesso al servizio o che la password venga cambiata ( cambio password ). Inoltre verranno inserite informazioni riguardo a quando è stata effettuata l operazione, nei campi DATA e ORA. La struttura della tabella Log è riportata in Figura 19, seguita dalla Figura 20 contenente il relativo codice per crearla. Figura 17: struttura della tabella degli utenti Figura 18: : codice per la creazione della tabella degli utenti 36

37 Figura 19: struttura della tabella dei log Figura 20: codice per la creazione della tabella dei log Vista dati ACCESSI Questa vista è utilizzata per avere una storia non solo di chi ha avuto accesso al servizio, ma anche per i nuovi utenti e per chi ha riottenuto il diritto di poter accedere dopo un cambio password o dopo essere stato riattivato da un amministratore. Nella vista sono contenuti i seguenti valori: USERNAME NOME DAY Questa vista è stata creata mettendo in relazione le seguenti tabelle: [LOG] = Statistiche operazioni (nello schema ER è rappresentata dall entità Log) Per la creazione di questa vista, si deve ottenere l ultimo accesso che uno specifico utente ha ottenuto o l ultima operazione importante effettuata su tale utente. Deve essere quindi controllato il tipo di operazione: INFO deve valere INSERITO o ACCESSO o CAMBIO PASSWORD o RIATTIVATO (vedi Figura 21). 37

38 Figura 21: codice per la creazione della vista dei log Connessione al database Dopo aver creato tabelle e viste necessarie per la gestione dei dati, bisogna far in modo che da una pagina PHP, attraverso particolari funzioni, sia possibile collegarsi al database Microsoft SQL Server in questione ed eseguire operazioni su di esso tramite il linguaggio SQL. L accesso al database avviene mediante autenticazione: ciò vuol dire che, prima di poter effettuare qualsiasi operazione su di esso, si deve disporre dei privilegi necessari. In particolare, le informazioni che bisogna conoscere per ottenere una connessione con un particolare database sono l indirizzo IP del server dove risiede il database, il nome dell utente assegnato, la relativa password e il nome del database. È opportuno salvare tali parametri in apposite variabili piuttosto che utilizzarli direttamente nelle chiamate di funzione, in modo che se dovessero essere apportate delle modifiche, ad esempio cambiare username e password oppure trasferire il database su un altro server, basta cambiare tali valori una volta sola. Solo dopo aver acquisito la connessione con il database, è possibile effettuare un interrogazione: questa deve essere una stringa che presenta però la struttura di una vera e propria query SQL. Il risultato non è detto che corrisponda ad una singola riga di una tabella ed è quindi fondamentale poter scorrere uno a uno i record trovati. Infine, è buona norma chiudere le connessioni aperte, anche se questa operazione è diventata opzionale in quanto tutte le connessioni rimaste aperte verranno chiuse automaticamente alla chiusura della pagina PHP. Le funzioni citate sono dichiarate nel file database.php (vedi Figura 22). 38

39 Figura 22: codice PHP con le funzioni utilizzate per la connessione al database Ogni volta che si dovrà effettuare una operazione sul database, è necessario limitarsi a richiamare questo file e le funzioni che contiene, come riportato in Figura 23. Figura 23: codice PHP utilizzato per la connessione del database 39

40 4.3. Accessi Il servizio Anagrafe on-line è un applicazione che tratta dati strettamente personali e quindi non può essere destinata a tutti. Infatti bisogna conoscere con precisione chi può usufruirne, registrando chi può avervi accesso. La fase di autenticazione è una delle fasi più importanti e delicate per un applicazione Web: bisogna proteggere l accesso nel migliore dei modi, per evitare possibili intercettazioni di informazioni da parte di utenti non ammessi. Tuttavia dire che un servizio può essere protetto e sicuro limitandosi alla sola autenticazione degli accessi degli utente, sarebbe limitativo e fuorviante. Essendo il servizio indirizzato sia a utenti comunali che utenti esterni, la prima cosa che viene chiesta è il tipo di utente che intende accedere, come riportato in Figura 24. A seconda della scelta si procede in due differenti modi di autenticazione. Infatti questo progetto viene sviluppato in due sottocartelle, una per gli utenti di dominio e l altra per gli enti pubblici. Figura 24: pagina Web per la selezione del tipo di accesso 40

41 Login utenti comunali Come si accennava in precedenza, ogni utente comunale, per poter lavorare con un computer, è soggetto a una autenticazione di dominio. Le due principali di caratteristiche che si possono attribuire alla rete in merito a tutto ciò sono: SICUREZZA, in quanto un utente che non dispone dell accesso, non deve avere la possibilità di far parte della rete; MOBILITÁ, è uno degli aspetti che sta pian piano modificando il modo di lavorare. Infatti con l autenticazione di dominio non esiste più una relazione uno a uno tra utente e computer, ma viene data la possibilità all utente di lavorare e disporre di informazioni indipendentemente dalla macchina in cui si trova. Con questo aspetto è data anche la possibilità di lavorare da casa, facendo uso di un metaframe (il Comune di Cento utilizza Citrix). Un dipendente comunale, viene quindi registrato in particolari database e, per procedere all autenticazione (attraverso la finestra riportata nella Figura 25), deve disporre di un nome utente, formato da cognome.nome, e da una password che ogni due mesi deve esser cambiata per aumentare ancor più il livello di sicurezza. Figura 25: finestra per l'autenticazione 41

42 Il servizio Anagrafe on-line, facendo uso di un particolare modulo Apache (mod_auth), riprende l autenticazione prima citata e la effettua di nuovo. In verità si possono verificare due situazioni: l utente accede al servizio Web da Internet e quindi deve essere autenticato; l utente ha già effettuato il login di dominio per accedere alla rete comunale e quindi accede al servizio dalla rete Intranet. In questo caso non viene effettuato un nuovo login, ma il modulo Apache si limita a settare il REMOTE_USER con il cognome.nome dell utente. Se il login ha successo, si accede alla tabella degli utenti registrati: se esiste una riga con lo stesso username dell utente vengono prelevati il campo per il livello di accesso alle aree protette (LIVELLO) e il campo per la validità dell utente (VALIDAZIONE), altrimenti l utente è settato a livello base. Si prosegue accedendo poi all applicazione Login enti esterni Gli enti esterni che accedono all applicazione Web, devono essere tutti registrati (la richiesta di registrazione a un particolare servizio viene fatta attraverso l utilizzo di moduli pdf creati appositamente). Basterebbe quindi effettuare una ricerca nella tabella degli utenti, se tale ente è presente o meno. Prima di ciò, sempre per aumentare il livello di sicurezza, viene inserito un login uguale per tutti, utilizzato per proteggere la rete e acconsentire a procedere con l autenticazione dell ente solo a chi è concesso. In questo caso è utilizzato un altro modulo Apache (mod_auth_sspi), che ha la particolarità di proteggere, con la stessa autenticazione, tutti gli script php, immagini e altro presenti nella specifica cartella degli enti esterni. Una volta effettuato il login, viene richiesto lo username e la password con i quali l ente esterno deve essere ricercato nella tabella degli utenti, come illustrato nella Figura

43 Figura 26: pagina Web per il login degli enti pubblici esterni Come nel caso degli utenti comunali, se viene trovato un record con username e password indicati allora si procede a recuperare i vari campi per aver maggiori dettagli di tale ente per accedere al servizio, altrimenti viene effettuato un nuovo login. Solo per questa tipologia di utenti, viene data la possibilità di cambiare la password per accedere al servizio agli enti che hanno una password scaduta per non aver effettuato accessi per più di 60 giorni Il sito Web Nei precedenti paragrafi si è discusso delle operazioni che un utente deve affrontare per poter accedere al servizio. Se queste procedure vengono superate con successo, prima di visualizzare ciò che effettivamente un utente può fare nell applicazione, vengono creati dei cookie. Questi dovranno contenere le informazioni principali di un utente, come ad esempio lo username, la password, il tipo di utente, il livello di accesso al servizio e la validità di tale utente. Non è di sicuro la cosa migliore utilizzare i cookie per memorizzare questi campi, in quanto diminuisce notevolmente il livello di sicurezza del servizio: l intercettazioni di queste particolari strutture da parte di utenti indesiderati porterebbe all utilizzo dell applicazione utilizzando però l accesso di un altro utente. Per prevenire a tutto ciò, si è ricorso all inserimento di informazioni non in forma chiara, ma codificati con particolari algoritmi. 43

44 Se si deve classificare il login degli utenti in base alla sicurezza, quello degli utenti comunali è certamente preferibile a quello degli enti esterni, questo perché un login effettuato attraverso un apposita finestra di autenticazione è differente da un login realizzato con dei valori inseriti in appositi campi testo di una form. La protezione a livello di rete, che è stata inserita nel secondo caso, ha appunto lo scopo di aumentarne la sicurezza. A ciò viene affiancato un metodo dove i valori inseriti vengono mandati in post non in chiaro, ma cifrati con una chiave che non ha mai lo stesso valore. A ogni accesso, oltre a esser registrato nella tabella LOG del database con campo INFO che vale ACCESSO, viene effettuata un altra operazione: il controllo della password. È già stato detto che gli enti esterni hanno una password della durata di 60 giorni. Questa procedura viene effettuata accedendo alla vista VIS_LOG e recuperando la data dell ultima operazione (accesso, inserimento, riattivazione o cambio password) riferita a tale utente: se sono trascorsi più di 60 giorni, l utente passa nello stato di SCADUTO. Il conteggio dei giorni viene effettuato utilizzando la funzione riportata in Figura 27, dove viene fatta una differenza tra la data odierna e la data trovata, entrambe espresse in secondi, successivamente convertite in giorni. Visto che gli utenti comunali non devono subire tale controllo, questo metodo viene effettuato solo dagli enti esterni. Questa operazione è svolta anche dagli amministratori con una particolare differenza: mentre un utente esterno effettua un controllo su se stesso, l amministratore si prende il compito di verificare tutti gli enti esterni. L utilizzatore del servizio Web attraversa, nella navigazione, le seguenti pagine: anagrafe.dwt.php (Figura 28) : questa non è propriamente una pagina, bensì un template, utilizzato per definire la struttura delle pagine Web che compongono l applicazione. Utilizzando i tag <div>, vengono infatti definiti il top contente il logo del Comune di Cento e il nome del servizio che stiamo utilizzando, il footer con informazioni per il trattamento dei dati e la legenda delle access key, il content che verrà utilizzato da tutte le altre pagine per visualizzare informazioni e il menusx cioè il menù di navigazione utile per accedere alle varie operazioni possibili del servizio, prestando attenzione che certi collegamenti dovranno esser attivi solo se l utente fa parte di un certo livello. Sempre nel template vengono indicati i fogli di stile che verranno utilizzati; 44

45 Figura 27: funzione PHP utilizzata per calcolare i giorni trascorsi dall ultimo accesso Figura 28: template utilizzato per il servizio "Anagrafe on-line" ricerca_nome.php e risultati_nome.php (Figura 29 e Figura 30): la prima pagina indicata visualizza la form utilizzata per permettere la ricerca di una persona inserendo il nome e il cognome. Sono presenti inoltre altri campi utili per l ordinamento e altri per limitare la ricerca; con i primi è possibile scegliere in base a quale campo si preferiscono ordinare i risultati e se in modo crescente o decrescente, con gli altri è data l opportunità di scegliere se i risultati devono coincidere con i valori inseriti nella ricerca o se basta solo che inizino per la stringa introdotta. Sempre per dare maggiori dettagli nella ricerca, si possono inserire due date per accettare solo le persone che sono nate nell arco di tempo indicato. Affinché la ricerca abbia senso sono state utilizzate delle funzioni Javascript per controllare le stringhe inserite. Infatti la ricerca è possibile anche inserendo solamente un campo tra nome e cognome, però non devono contenere caratteri speciali come percentuali, parentesi, ecc. o doppi spazi. Infine viene verificata anche la data, non solo controllando che le date inserite esistano veramente, ma perchè l arco di tempo abbia senso, la prima data deve essere precedente alla seconda. La seconda pagina visualizza una tabella con tutti i risultati che soddisfano i criteri di ricerca specificati nella pagina precedente, che vengono riportati in testa a questa pagina. Per ogni riga della tabella viene riportato il nome e cognome, la data di nascita e, se disponibili, la residenza. Nel caso la ricerca non dia alcun risultato, un messaggio segnalerà l inesistenza di persone che soddisfino i criteri indicati. Dato che il database 45

46 presenta molte imprecisioni, ad esempio per gli italiani residenti all estero viene segnalata come via di residenza a volte A.I.R.E., altre A.I.R.E, altre ancora con la stringa VIA davanti, vengono filtrati dei campi che presentano valori insignificanti. A quelli citati prima si aggiungono i numeri civici, i barrati, gli interni e i C.A.P. nulli. Cliccando sul nome e cognome della persona, si accede alla pagina descritta successivamente; Figura 29: pagina Web per l'operazione di ricerca del nome e cognome Figura 30: pagina Web per la visualizzazione dei risultati dell'operazione di ricerca del nome e cognome 46

47 persona.php (Figura 31): come si è visto, con la ricerca è possibile trovare dei risultati che non interessano. È in questa pagina che si visualizzano tutti i dati disponibili della persona selezionata. Rispetto alla precedente pagina dei risultati, sono presenti maggiori informazioni sulla nascita (paese, provincia e stato) e viene reso visibile il codice fiscale. Inoltre se la persona è deceduta, vengono dati i dettagli sulla data di morte e dove è avvenuta, se la persona è emigrata in un altro comune italiano si rendono noti la data e il paese dello spostamento, se la persona è iscritta all A.I.R.E. verranno visualizzati la data e lo stato di trasferimento. Infine se il livello dell utente è superiore al livello base, vengono resi noti il numero e la data di scadenza della carta d identità, sempre che la persona abbia diritto a possederla. Anche qui, come nella pagina dei risultati, vengono filtrati i valori che non hanno significato; nucleo.php (Figura 32): questa pagina è stata creata per dare la possibilità di visualizzare tutti i componenti dello stesso nucleo familiare. A questa pagina ci si accede cliccando sul nome e cognome nella pagina contenente i dettagli della persona. La struttura della pagina è come quella della pagina dei risultati, dove le persone sono visualizzate per mezzo di una tabella nella quale non vengono visualizzati dati senza significato. L unica differenza è che in testa alla pagina non si rendono noti i criteri della ricerca, ma a chi appartiene il nucleo: nel caso di una famiglia, viene visualizzato il nominativo della persona della quale precedentemente abbiamo visualizzato i dettagli, nel caso di una convivenza in casa di riposo, viene visualizzato il nome dell edificio; Figura 31: pagina Web per la visualizzazione dei dettagli della persona 47

48 Figura 32: pagina Web per la visualizzazione del nucleo familiare ricerca_cf.php e risultati_cf.php (Figura 33 e Figura 34): queste due pagine si presentano in modo molto simile alle pagine utilizzate per la ricerca tramite nome e cognome. Per la ricerca, la form che si visualizza contiene il campo per l inserimento del codice fiscale e i campi per l ordinamento. Anche qui l inserimento di una stringa come codice fiscale viene controllato: non deve contenere caratteri speciali, spazi, deve essere composta da almeno 3 caratteri e non deve superare i 16 e deve rispettare la sintassi di tutti i codici fiscali (6 lettere, 2 numeri, 1 lettera, 2 numeri, 1 lettera, 3 numeri, 1 lettera). I risultati sono visualizzati in una tabella come per la ricerca con nome e cognome, con la sola aggiunta che viene visualizzato pure il codice fiscale; Figura 33: pagina Web per l'operazione di ricerca del codice fiscale 48

49 Figura 34: pagina Web per la visualizzazione dei risultati dell'operazione di ricerca del codice fiscale ricerca_ci.php e risutlati_ci.php (Figura 35 e Figura 36): a queste pagine possono avere accesso solo gli utenti superiori al livello base. Queste due pagine sono uguali alle precedenti con la sola differenza che al posto del codice fiscale si avrà il numero della carta d identità. Anche qui l inserimento di una stringa come numero di carta d identità viene controllato: non deve contenere caratteri speciali e spazi, deve essere composta da almeno 2 caratteri e non deve superare i 20 (in verità le carte d identità attuali sono formate da 9 caratteri, ma si pensa che la sintassi possa cambiare con l introduzione delle carte d identità elettroniche). I risultati sono visualizzati in una tabella come per le precedenti ricerche, con la sola aggiunta che viene visualizzato il numero della carta d identità e la rispettiva scadenza; Figura 35: pagina Web per l'operazione di ricerca della carta d'identità 49

50 Figura 36: pagina Web per la visualizzazione dei risultati dell'operazione di ricerca della carta d'identità gestione.php e risultati_gestione.php (Figura 37): queste due pagine sono utilizzate solamente dagli utenti amministratori che ne hanno accesso per gestire gli altri utenti. Sono possibili tre operazioni: l inserimento di un ente esterno o di un utente comunale con un livello superiore a quello base, la disattivazione di un utente esterno e la rispettiva riattivazione. L inserimento si differenzia in base al tipo di utente che viene inserito: un ente esterno necessita di username, password, descrizione e livello, che non sarà mai di tipo amministratore, mentre per un utente di dominio c è bisogno solo di username e del livello che sarà sempre superiore a quello base, dato che gli utenti comunali del livello più basso, possono accedere al servizio senza esser registrati nel database (username e password vengono controllati che non siano nulli e che non contengano spazi). La disattivazione è solo per enti esterni e basta inserire lo username e la password. Analoga è la riattivazione per gli utenti esterni disattivati. Sempre in questa pagina, in modo totalmente trasparente, viene effettuato il controllo di scadenza su tutte le password degli enti esterni. La pagina dei risultati segnala se l operazione è andata a buon fine oppure no. Un inserimento per avere successo non deve inserire nel database un utente con stesso username, e password nel caso di un ente esterno. Una disattivazione e una riattivazione deve esser effettuata solamente per utenti esterni che esistono sul database, indipendentemente dallo stato di validità nei quali si trovano. Ogni operazione viene registrata nella tabella LOG: inserito per un inserimento, disattivato per una disattivazione e riattivato per una riattivazione; 50

51 Figura 37: pagina Web per la gestione degli utenti statistiche.php (Figura 38): un altra sezione dedicata solamente agli amministratori. Qui è possibile avere visione delle ultime 100 operazioni registrate nella tabella LOG: si potranno visualizzare orari di operazioni di accesso, inserimento, disattivazione, riattivazione e cambio di password riferiti a uno specifico utente (username e descrizione) ; cambio.php e risultati_cambio.php (Figura 39): queste due pagine sono dedicate al cambio della password per gli utenti esterni. Questa operazione è resa possibile sia che la password sia già scaduta che ancora valida. Il cambio è consentito solamente agli enti esterni: nella form si dovrà specificare lo username, la vecchia password, la nuova password e confermarla. Vengono anche qui controllati che i valori inseriti nei campi non siano vuoti e siano privi di spazi, e che la nuova password e la conferma coincidano. Nella pagina di risultati si procederà a ricercare nella tabella UTENTI l utente per mezzo dello username e della password inseriti, aggiornare la password solamente se non è stato disattivato da un amministratore e inserire nella tabella LOG l operazione effettuata. 51

52 Figura 38: pagina Web per la visualizzazione degli accessi effettuati Figura 39: pagina Web per l'operazione di cambio password per gli enti pubblici esterni 4.5. Stampe formattate Spesso, nella realizzazione di pagine Web, può sfuggire al programmatore che queste possono essere stampate, con il risultato di visualizzare testi non ordinati, immagini molto dettagliate che sarebbe più conveniente non stampare, menù o link (ad esempio pubblicità) che non interessano all utente che ha avviato la stampa. Il servizio Anagrafe on-line vuole cercare di risolvere questi problemi. In particolare si vuole visualizzare all inizio della prima pagina un intestazione con delle informazioni sul Comune di Cento e alla fine dell ultima dei dettagli per il trattamento dei dati nel rispetto della privacy. Tra queste due parti si possono visualizzare i dettagli di un 52

53 particolare utente, i risultati di una ricerca, la lista delle operazione effettuate dai vari utenti, ecc. In pratica non si deve effettuare la stampa del menù di navigazione. Per queste stampe si utilizzano i CSS, procedendo in due passi: definire nei diversi script che il foglio di stile che viene indicato ha come destinazione la stampante, cioè il media print, come riportato in Figura 40; disabilitare nel foglio di stile tutti i tag, div e form con le rispettive proprietà e definire nuovamente solo quelli utili per ottenere la stampa desiderata, come riportato in Figura 41. La stampa assume quindi l aspetto della Figura 42. Figura 40: codice PHP per specificare il CSS utilizzato dalla stampante Figura 41: disattivazione dei tag da non visualizzare con un CSS Figura 42: formato di una stampa 53

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

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

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

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

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea AUTENTICAZIONE PER APPLICAZIONI WEB Relatore

Dettagli

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...

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

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente Pag. 1 di 15 VERS V01 REDAZIONE VERIFICHE E APPROVAZIONI CONTROLLO APPROVAZIONE AUTORIZZAZIONE EMISSIONE NOME DATA NOME DATA NOME DATA A. Marchisio C. Pernumian 29/12/2014 M. Molino 27/02/2015 M. Molino

Dettagli

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente

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

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

NOVITÀ SITI COMMERCIALISTA

NOVITÀ SITI COMMERCIALISTA NOVITÀ E-COMMERCE Sono state introdotte, nella versione 2011B, una serie di implementazioni grazie alle quali sarà ora possibile disporre all interno del proprio sito E-commerce delle seguenti funzionalità:

Dettagli

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO Pag. 1 di 17 VERIFICHE E APPROVAZIONI VERSIONE V01 REDAZIONE CONTROLLO APPROVAZIONE AUTORIZZAZIONE EMISSIONE NOME DATA NOME DATA NOME DATA PRATESI STATO DELLE VARIAZIONI VERSIONE PARAGRAFO O DESCRIZIONE

Dettagli

lem logic enterprise manager

lem logic enterprise manager logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle

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

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

Guida alla registrazione on-line di un DataLogger

Guida alla registrazione on-line di un DataLogger NovaProject s.r.l. Guida alla registrazione on-line di un DataLogger Revisione 3.0 3/08/2010 Partita IVA / Codice Fiscale: 03034090542 pag. 1 di 17 Contenuti Il presente documento è una guida all accesso

Dettagli

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1 G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O A T I C _W E B Rev. 2.1 1 1. ISCRIZIONE Le modalità di iscrizione sono due: Iscrizione volontaria Iscrizione su invito del Moderatore

Dettagli

ISTRUZIONI PER LA GESTIONE BUDGET

ISTRUZIONI PER LA GESTIONE BUDGET ISTRUZIONI PER LA GESTIONE BUDGET 1) OPERAZIONI PRELIMINARI PER LA GESTIONE BUDGET...1 2) INSERIMENTO E GESTIONE BUDGET PER LA PREVISIONE...4 3) STAMPA DIFFERENZE CAPITOLI/BUDGET.10 4) ANNULLAMENTO BUDGET

Dettagli

CONTENT MANAGEMENT SYSTEM

CONTENT MANAGEMENT SYSTEM CONTENT MANAGEMENT SYSTEM P-2 PARLARE IN MULTICANALE Creare un portale complesso e ricco di informazioni continuamente aggiornate, disponibile su più canali (web, mobile, iphone, ipad) richiede competenze

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

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

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo Come funziona il WWW Il funzionamento del World Wide Web non differisce molto da quello delle altre applicazioni Internet Anche in questo caso il sistema si basa su una interazione tra un computer client

Dettagli

Base di dati e sistemi informativi

Base di dati e sistemi informativi Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

I database relazionali (Access)

I database relazionali (Access) I database relazionali (Access) Filippo TROTTA 04/02/2013 1 Prof.Filippo TROTTA Definizioni Database Sistema di gestione di database (DBMS, Database Management System) Sistema di gestione di database relazionale

Dettagli

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste versione 2.1 24/09/2015 aggiornamenti: 23-set-2015; 24-set-2015 Autore: Francesco Brunetta (http://www.francescobrunetta.it/)

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

CONTENT MANAGEMENT SY STEM

CONTENT MANAGEMENT SY STEM CONTENT MANAGEMENT SY STEM I NDI CE I NTRODUZI ONE Accesso al CMS 1) CONTENUTI 1.1 I nserimento, modifica e cancellazione dei contenuti 1.2 Sezioni, categorie e sottocategorie 2) UTENTI 3) UP LOAD FILES

Dettagli

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015]

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Realizzato e distribuito da LeggeraSoft Sommario Premessa... 2 Fase di Login... 2 Menù principale... 2 Anagrafica clienti...

Dettagli

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

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

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda

uadro Soluzioni software per L archiviazione elettronica dei documenti Gestione Aziendale Fa quadrato attorno alla tua azienda Fa quadrato attorno alla tua azienda Soluzioni software per L archiviazione elettronica dei documenti Perché scegliere Q Archiviazione Elettronica dei Documenti? Tale applicativo si pone come obbiettivo

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

Cosa è un foglio elettronico

Cosa è un foglio elettronico Cosa è un foglio elettronico Versione informatica del foglio contabile Strumento per l elaborazione di numeri (ma non solo...) I valori inseriti possono essere modificati, analizzati, elaborati, ripetuti

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

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

Progetto ittorario Anno scol. 2013-2014

Progetto ittorario Anno scol. 2013-2014 PROGETTO ittorario Scopo: Creazione di una pagina web che mostri l orario di un docente, della classe della materia o dell aula a discrezione dell utente. Sviluppatori: Progetto sviluppato dalla classe

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Riconoscibilità dei siti pubblici: i domini della Pa e le regole di.gov.it

Riconoscibilità dei siti pubblici: i domini della Pa e le regole di.gov.it Riconoscibilità dei siti pubblici: i domini della Pa e le regole di.gov.it Gabriella Calderisi - DigitPA 2 dicembre 2010 Dicembre 2010 Dominio.gov.it Cos è un dominio? Se Internet è una grande città, i

Dettagli

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013 Corso di HTML Modulo L3 1-Concetti generali 1 Prerequisiti Browser Rete Internet Client e server 2 1 Introduzione In questa Unità introduciamo alcuni semplici elementi del linguaggio HTML, con il quale

Dettagli

Progettazione Web Applicazioni client-server

Progettazione Web Applicazioni client-server Progettazione Web Applicazioni client-server Sviluppo di un'applicazione Web integrando: HTML MySQL PHP Apache Applicativi utilizzabili: gestione database: JDER, MySQL Workbench, HeidiSQL (Win), DBeaver

Dettagli

Capitolo 3 Guida operativa del programma TQ Sistema

Capitolo 3 Guida operativa del programma TQ Sistema Capitolo 3 Guida operativa del programma TQ Sistema Panoramica delle funzionalità Questa guida contiene le informazioni necessarie per utilizzare il pacchetto TQ Sistema in modo veloce ed efficiente, mediante

Dettagli

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 1 di 38 Portale tirocini Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 2 di 38 INDICE 1. INTRODUZIONE... 3 2. ACCESSO AL SISTEMA...

Dettagli

Basi di Dati e Microsoft Access

Basi di Dati e Microsoft Access Basi di Dati e Microsoft Access Lun: 16-18 e Mer: 14-17 Alessandro Padovani padoale@email.it Database: definizione Un database (DB) è una collezione di informazioni organizzata in gruppi, che consentono

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

Sito web parrocchiale: STRUMENTI E PROGRAMMI

Sito web parrocchiale: STRUMENTI E PROGRAMMI Sito web parrocchiale: STRUMENTI E PROGRAMMI tratteremo di... DIOCESI DI BRESCIA Linguaggi HTML,CSS Siti STATICI Siti DINAMICI e codice PHP CMS JOOMLA! Linguaggio HTML HTML: è il linguaggio con cui potete

Dettagli

Dipartimento per le Libertà Civili e l Immigrazione

Dipartimento per le Libertà Civili e l Immigrazione Dipartimento per le Libertà Civili e l Immigrazione Sistema inoltro telematico Manuale utente Versione 10 Data aggiornamento: 14/09/2012 Pagina 1 (25) Sommario 1. Il sistema di inoltro telematico delle

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

GESGOLF SMS ONLINE. Manuale per l utente

GESGOLF SMS ONLINE. Manuale per l utente GESGOLF SMS ONLINE Manuale per l utente Procedura di registrazione 1 Accesso al servizio 3 Personalizzazione della propria base dati 4 Gestione dei contatti 6 Ricerca dei contatti 6 Modifica di un nominativo

Dettagli

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli

Gestione Risorse Umane Web

Gestione Risorse Umane Web La gestione delle risorse umane Gestione Risorse Umane Web Generazione attestati di partecipazione ai corsi di formazione (Versione V03) Premessa... 2 Configurazione del sistema... 3 Estrattore dati...

Dettagli

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo

Dettagli

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia Scuola Digitale Manuale utente Copyright 2014, Axios Italia 1 SOMMARIO SOMMARIO... 2 Accesso al pannello di controllo di Scuola Digitale... 3 Amministrazione trasparente... 4 Premessa... 4 Codice HTML

Dettagli

I.N.A.I.L. Certificati Medici via Internet. Manuale utente

I.N.A.I.L. Certificati Medici via Internet. Manuale utente I.N.A.I.L. Certificati Medici via Internet Manuale utente CERTIFICATI MEDICI... 1 VIA INTERNET... 1 MANUALE UTENTE... 1 COME ACCEDERE AI CERTIFICATI MEDICI ON-LINE... 3 SITO INAIL... 3 PUNTO CLIENTE...

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

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

Access. P a r t e p r i m a

Access. P a r t e p r i m a Access P a r t e p r i m a 1 Esempio di gestione di database con MS Access 2 Cosa è Access? Access e un DBMS che permette di progettare e utilizzare DB relazionali Un DB Access e basato sui concetti di

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi

ControlloCosti. Cubi OLAP. Controllo Costi Manuale Cubi ControlloCosti Cubi OLAP I cubi OLAP Un Cubo (OLAP, acronimo di On-Line Analytical Processing) è una struttura per la memorizzazione e la gestione dei dati che permette di eseguire analisi in tempi rapidi,

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Dipartimento per le Libertà Civili e l Immigrazione

Dipartimento per le Libertà Civili e l Immigrazione Dipartimento per le Libertà Civili e l Immigrazione SUI Sportello Unico Immigrazione Sistema inoltro telematico Manuale utente Versione 9 Data aggiornamento 19/11/2010 17.19.00 Pagina 1 (1) Sommario 1.

Dettagli

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario

Dettagli

Progettazione di una base di dati Ufficio della Motorizzazione

Progettazione di una base di dati Ufficio della Motorizzazione Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2008/2009 1 Scopo del progetto Progettazione di una base di dati Ufficio della Motorizzazione Si vuole realizzare un applicazione base

Dettagli

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015

BASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015 BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare

Dettagli

Guida rapida all uso di Moodle per gli studenti

Guida rapida all uso di Moodle per gli studenti Guida rapida all uso di Moodle per gli studenti Introduzione La piattaforma utilizzata per le attività a distanza è Moodle, un software per la gestione di corsi on-line. Per chi accede come studente, essa

Dettagli

ALICE AMMINISTRAZIONE UTENTI WEB

ALICE AMMINISTRAZIONE UTENTI WEB AMMINISTRAZIONE UTENTI WEB REL. 1.2 edizione luglio 2008 INDICE 1. AMMINISTRAZIONE DI UTENTI E PROFILI... 2 2. DEFINIZIONE UTENTI... 2 2.1. Definizione Utenti interna all applicativo... 2 2.1.1. Creazione

Dettagli

esales Forza Ordini per Abbigliamento

esales Forza Ordini per Abbigliamento esales Rel. 2012 Forza Ordini per Abbigliamento Scopo di questo documento è fornire la descrizione di una piattaforma di Raccolta Ordini via Web e la successiva loro elaborazione in ambiente ERP Aziendale.

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

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori.

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. Release 5.20 Manuale Operativo ORDINI PLUS Gestione delle richieste di acquisto In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. La gestione

Dettagli

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Sistema inoltro telematico domande di nulla osta, ricongiungimento e conversioni Manuale utente Versione 2 Data creazione 02/11/2007 12.14.00

Dettagli

TFR On Line PREMESSA

TFR On Line PREMESSA PREMESSA Argo TFR on Line è un applicazione, finalizzata alla gestione del trattamento di fine rapporto, progettata e realizzata per operare sul WEB utilizzando la rete INTERNET pubblica ed il BROWSER

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

PROTOS GESTIONE DELLA CORRISPONDENZA AZIENDALE IN AMBIENTE INTRANET. Open System s.r.l.

PROTOS GESTIONE DELLA CORRISPONDENZA AZIENDALE IN AMBIENTE INTRANET. Open System s.r.l. Open System s.r.l. P.IVA: 00905040895 C.C.I.A.A.: SR-7255 Sede Legale: 96016 Lentini Via Licata, 16 Sede Operativa: 96013 Carlentini Via Duca degli Abruzzi,51 Tel. 095-7846252 Fax. 095-7846521 e-mail:

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione

Dettagli

I database. Cosa sono e a cosa servono i Database

I database. Cosa sono e a cosa servono i Database I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di

Dettagli

Comuninrete sistema integrato per la gestione di siti web ed interscambio di informazioni e servizi.

Comuninrete sistema integrato per la gestione di siti web ed interscambio di informazioni e servizi. Comuninrete sistema integrato per la gestione di siti web ed interscambio di informazioni e servizi. Presentazione montante). Accessibile, dinamico e utile Comuni in rete è uno strumento rivolto alle pubbliche

Dettagli

Guida di addestramento Introduzione alle Comunicazioni Obbligatorie [COB] SINTESI

Guida di addestramento Introduzione alle Comunicazioni Obbligatorie [COB] SINTESI SINTESI Introduzione alle Comunicazioni Obbligatorie [COB] Questo documento è una guida al sito dedicato alle aziende: archivio delle comunicazioni obbligatorie che i datori di lavoro sono tenuti ad effettuare

Dettagli

INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO

INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO Basi di dati: Microsoft Access INFORMATICA PER LE APPLICAZIONI ECONOMICHE PROF.SSA BICE CAVALLO Database e DBMS Il termine database (banca dati, base di dati) indica un archivio, strutturato in modo tale

Dettagli

InfiXor. il programma facile e versatile per preventivi veloci e completi. il software di preventivazione per produttori e rivenditori di infissi

InfiXor. il programma facile e versatile per preventivi veloci e completi. il software di preventivazione per produttori e rivenditori di infissi InfiXor il software di preventivazione per produttori e rivenditori di infissi di Paolo Audisio SOFTWARE PROGRAMMAZIONE CONSULENZA INFORMATICA sito internet: www.infixor.it Via Carlo Zucchi 19 40134 BOLOGNA

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

Magazzino Virtuale Clienti

Magazzino Virtuale Clienti Magazzino Virtuale Clienti Servizio RICAMBI STORICI Manuale Utente Marzo 2009 RICAMBI STORICI MANUALE UTENTE 2 Sommario 1. INTRODUZIONE... 3 2. ACCESSO ALLA SEZIONE GESTIONE VENDITE DI RICAMBI STORICI...

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

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

INDICAZIONI GENERALI

INDICAZIONI GENERALI INDICAZIONI GENERALI PER LA VALUTAZIONE, L ACQUISTO O LA REALIZZAZIONE IN PROPRIO DI SOFTWARE GESTIONALI PER LE SOCIETA DI RICERCA E SELEZIONE DEL PERSONALE, LE SOCIETA DI RICERCA DIRETTA E LE DIREZIONI

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

SIFORM MANUALE VOUCHER FORMATIVI A DOMANDA AZIENDALE

SIFORM MANUALE VOUCHER FORMATIVI A DOMANDA AZIENDALE SIFORM MANUALE VOUCHER FORMATIVI A DOMANDA AZIENDALE 1 Informazioni generali...2 2 Procedura di autenticazione...2 2.1 Registrazione impresa...3 3 Anagrafica impresa...4 3.1 Impresa...4 3.2 Ricerca persone

Dettagli

MICHELANGELO Piattaforma autorizzativa per la gestione di interventi riservata ai fornitori

MICHELANGELO Piattaforma autorizzativa per la gestione di interventi riservata ai fornitori MICHELANGELO Piattaforma autorizzativa per la gestione di interventi riservata ai fornitori Questa documentazione conterrà tutti i dettagli operativi relativi all impatto della nuova applicazione web di

Dettagli

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO Descrizione Nell ambito della rilevazione dei costi, Solari con l ambiente Start propone Time&Cost, una applicazione che contribuisce a fornire

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO...

CONTENUTI 1. INTRODUZIONE...3 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 3. ACCESSO A EQUINOX CMS XPRESS...9 4. PAGINA D INIZIO... CONTENUTI 1. INTRODUZIONE...3 DEFINIZIONE...3 ELEMENTI DEL SERVIZIO...3 TECNOLOGIA E OPERAZIONE...3 WORKFLOW E GRAFICO DI PROCESSI...4 2. CONCETTI BASICI SU EQUINOX CMS XPRESS...5 STRUTTURA...5 OGGETTI...5

Dettagli

Servizio on-line di Analisi e Refertazione Elettrocardiografica

Servizio on-line di Analisi e Refertazione Elettrocardiografica Servizio on-line di Analisi e Refertazione Elettrocardiografica Guida utente Scopo del servizio... 2 Prerequisiti hardware e software... 3 Accesso all applicazione... 4 Modifica della password... 7 Struttura

Dettagli

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore ARPA Fonte Dati Regione Toscana 1 Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.1 Data emissione 09/10/13 Stato FINAL 2 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 1.1 09/10/2013

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

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.

Ti consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata. Sommario A cosa serve InfoWEB?... 3 Quali informazioni posso comunicare o ricevere?... 3 Cosa significa visualizzare le informazioni in maniera differenziata in base al livello dell utente?... 4 Cosa significa

Dettagli

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli