Software per la gestione di un Registro Tumori Animali della Sicilia

10
Abstract— Questo documento sintetizza l’attività che il laureando Giuseppe Domenico Orlando ha svolto presso l’Istituto Zooprofilattico Sperimentale della Sicilia (IZSSi). Tale attività ha avuto come obiettivo la realizzazione di un Applicativo Web per la gestione di un “Registro Tumori Animale” della Sicilia, attraverso una serie di processi atti ad informatizzare i meccanismi di acquisizione, gestione ed utilizzo dei dati legati ai casi patologici tumorali degli animali domestici. Con tale esperienza si vuole evidenziare la possibilità di integrazione che hanno le moderne tecnologie informatiche con i meccanismi interni dell’Ente, al fine di realizzare e trasformare uno strumento di gestione dati in un sistema efficiente ed efficace che sfrutti a pieno le caratteristiche dell'architettura e delle tecnologie Web. Index TermsSoftware, Applicativo Web, Registro Tumori Animali. I. INTRODUZIONE A crescente esigenza di garantire una migliore comprensione della diffusione e delle cause delle patologie tumorali sugli animali, ha portato l'Assessorato alla Sanità della Regione Siciliana e l'IZS i della Sicilia alla decisione di istituire un "Registro dei Tumori Animali". Con tale strumento, che consente di raccogliere dati da utilizzare sul territorio per una corretta prevenzione sanitaria, le Istituzioni si prefiggono l'obiettivo di comprendere al meglio le dinamiche epidemiologiche ed i fenomeni ambientali che possono utilizzare come agenti oncogeni. L L’utilità di raccogliere ed analizzare i trend oncologici osservabili negli animali, ed in particolare in quelli che convivono con l’uomo (cani e gatti), deriva dal fatto che tali specie rappresentano “indicatori naturali” e precoci (rispetto alla specie umana) del rischio ambientale. Infatti, l’insorgenza di tali patologie è proporzionale alla loro breve vita biologica, evidenziando in tempi più brevi, rispetto ai Questa relazione di tesi è stata svolta a completamento del triennio di Ingegneria di Informatica presso l’Università di Palermo. Lo spunto è stato dato dall’attività di stage presso l’Istituto Zooprofilattico Sperimentale della Sicilia, sotto la supervisione del Dott. Ing. Maurizio Orlando (email:[email protected] ) e del Dott. Guido Ruggero Loria (email : [email protected] ) responsabile del Laboratorio di Istopatologia Animale della Sicilia, nell’ambito della ricerca scientifica legata alla realizzazione del primo Registro Tumori Animale Domestici della Regione. i IZS e IZSSi, sono gli acronimi utilizzati per indicare l’Istituto Zooprofilattico Sperimentale della Sicilia. periodi di latenza nell’uomo, il rischio ambientale e segnalando in questo modo precocemente il pericolo. II. PROBLEMATICA AFFRONTATA La necessità di sviluppare meccanismi e tecnologie per l’acquisizione e la gestione delle informazioni legate ai singoli casi patologici tumorali riscontrati, ha portato alla richiesta di uno strumento software capace di realizzare tale obiettivo in una modalità distribuita, efficiente ed efficace per una raccolta di dati a livello territoriale. Allo stesso tempo l’idea è stata quella di offrire all’Ente e a coloro che collaborano con esso, nuovi servizi e un nuovo modo di svolgere il proprio lavoro fino ad oggi legato all'uso di documentazione cartacea e procedure lente e gravose . La continua evoluzione delle tecnologie disponibili, sia in termini di maggiore capacità di integrazione che di tecnologie Web, ha portato alla scelta di uno strumento di lavoro che adottasse tale ambiente. Nel caso particolare del “Registro Tumori” si è pensato allo sviluppo di un’applicazione web basata sui dati. La tecnologica adottata in questo progetto, è legata alla realizzazione del nuovo Portale Web dell’IZS della Sicilia, di cui farà parte integrante. Analizzando il modo in cui le applicazioni Web oggi vengono sviluppate, ci si rende conto che i principi e le metodologie dell’ingegneria del software non sempre vengono sfruttati al meglio, di fatto, l’approccio utilizzato in questo progetto è costituito da un insieme multidisciplinare di metodologie che avvalendosi di strumenti e tecniche dell’ingegneria del software permettono la definizione dei processi di sviluppo del software, di appropriati concetti di progettazione e di linee guida per la conduzione delle varie attività, non ultima quella di integrazione con altri progetti in corso[1]. Gli strumenti che sono stati adottati, per la costruzione di questo progetto Web basato sui dati, uniscono elementi progettuali noti agli sviluppatori, quali la progettazione concettuale dei dati attraverso il modello Entità-Relazione, la specifica dei casi d’uso attraverso l'UML e con nuovi linguaggi di modellazione di alto livello per la progettazionedegli ipertesti, come il Web Modeling Language(WebML) ii [1]. ii Il WebML (Web Modeling Language) è un linguaggio di modellazione di alto livello per la specifica di applicazioni Web. Essenzialmente, WebML consiste in un insieme di concetti visuali per descrivere un ipertesto. Esso è definito come un insieme di pagine costituite da unit di contenuto e operazioni collegate tra loro. Tali unit sono associate con i dati ai quali si riferiscono. Il lettore non deve pertanto preoccuparsi della necessità di apprendere un nuovo linguaggio. Così come per i costrutti del modello Entita-Relazione, anche i diagrammi WebML possono essere rappresentati attraverso la sintassi UML, forse con minor chiarezza ed immediatezza, ma senza perdite di potere espressivo. WebML è 1 Software per la gestione di un REGISTRO TUMORI ANIMALI della Sicilia Allievo Ing. Giuseppe Domenico Orlando Relatore Prof. Marco La Cascia Correlatori aziendali Dott. Ing. Maurizio Orlando, Dott. Guido Ruggero Loria

description

tesi di laurea

Transcript of Software per la gestione di un Registro Tumori Animali della Sicilia

Abstract— Questo documento sintetizza l’attività che il laureando Giuseppe Domenico Orlando ha svolto presso l’Istituto Zooprofilattico Sperimentale della Sicilia (IZSSi). Tale attività ha avuto come obiettivo la realizzazione di un Applicativo Web per la gestione di un “Registro Tumori Animale” della Sicilia, attraverso una serie di processi atti ad informatizzare i meccanismi di acquisizione, gestione ed utilizzo dei dati legati ai casi patologici tumorali degli animali domestici. Con tale esperienza si vuole evidenziare la possibilità di integrazione che hanno le moderne tecnologie informatiche con i meccanismi interni dell’Ente, al fine di realizzare e trasformare uno strumento di gestione dati in un sistema efficiente ed efficace che sfrutti a pieno le caratteristiche dell'architettura e delle tecnologie Web.

Index Terms— Software, Applicativo Web, Registro Tumori Animali.

I. INTRODUZIONE

A crescente esigenza di garantire una migliore comprensione della diffusione e delle cause delle

patologie tumorali sugli animali, ha portato l'Assessorato alla Sanità della Regione Siciliana e l'IZS i della Sicilia alla decisione di istituire un "Registro dei Tumori Animali". Con tale strumento, che consente di raccogliere dati da utilizzare sul territorio per una corretta prevenzione sanitaria, le Istituzioni si prefiggono l'obiettivo di comprendere al meglio le dinamiche epidemiologiche ed i fenomeni ambientali che possono utilizzare come agenti oncogeni.

L

L’utilità di raccogliere ed analizzare i trend oncologici osservabili negli animali, ed in particolare in quelli che convivono con l’uomo (cani e gatti), deriva dal fatto che tali specie rappresentano “indicatori naturali” e precoci (rispetto alla specie umana) del rischio ambientale. Infatti, l’insorgenza di tali patologie è proporzionale alla loro breve vita biologica, evidenziando in tempi più brevi, rispetto ai

Questa relazione di tesi è stata svolta a completamento del triennio di Ingegneria di Informatica presso l’Università di Palermo. Lo spunto è stato dato dall’attività di stage presso l’Istituto Zooprofilattico Sperimentale della Sicilia, sotto la supervisione del Dott. Ing. Maurizio Orlando (email:[email protected] ) e del Dott. Guido Ruggero Loria (email : [email protected] ) responsabile del Laboratorio di Istopatologia Animale della Sicilia, nell’ambito della ricerca scientifica legata alla realizzazione del primo Registro Tumori Animale Domestici della Regione.

i IZS e IZSSi, sono gli acronimi utilizzati per indicare l’Istituto Zooprofilattico Sperimentale della Sicilia.

periodi di latenza nell’uomo, il rischio ambientale e segnalando in questo modo precocemente il pericolo.

II. PROBLEMATICA AFFRONTATA

La necessità di sviluppare meccanismi e tecnologie per l’acquisizione e la gestione delle informazioni legate ai singoli casi patologici tumorali riscontrati, ha portato alla richiesta di uno strumento software capace di realizzare tale obiettivo in una modalità distribuita, efficiente ed efficace per una raccolta di dati a livello territoriale. Allo stesso tempo l’idea è stata quella di offrire all’Ente e a coloro che collaborano con esso, nuovi servizi e un nuovo modo di svolgere il proprio lavoro fino ad oggi legato all'uso di documentazione cartacea e procedure lente e gravose .

La continua evoluzione delle tecnologie disponibili, sia in termini di maggiore capacità di integrazione che di tecnologie Web, ha portato alla scelta di uno strumento di lavoro che adottasse tale ambiente. Nel caso particolare del “Registro Tumori” si è pensato allo sviluppo di un’applicazione web basata sui dati. La tecnologica adottata in questo progetto, è legata alla realizzazione del nuovo Portale Web dell’IZS della Sicilia, di cui farà parte integrante.

Analizzando il modo in cui le applicazioni Web oggi vengono sviluppate, ci si rende conto che i principi e le metodologie dell’ingegneria del software non sempre vengono sfruttati al meglio, di fatto, l’approccio utilizzato in questo progetto è costituito da un insieme multidisciplinare di metodologie che avvalendosi di strumenti e tecniche dell’ingegneria del software permettono la definizione dei processi di sviluppo del software, di appropriati concetti di progettazione e di linee guida per la conduzione delle varie attività, non ultima quella di integrazione con altri progetti in corso[1].

Gli strumenti che sono stati adottati, per la costruzione di questo progetto Web basato sui dati, uniscono elementi progettuali noti agli sviluppatori, quali la progettazione concettuale dei dati attraverso il modello Entità-Relazione, la specifica dei casi d’uso attraverso l'UML e con nuovi linguaggi di modellazione di alto livello per la progettazionedegli ipertesti, come il Web Modeling Language(WebML)ii [1].

iiIl WebML (Web Modeling Language) è un linguaggio di modellazione di alto livello per la specifica di applicazioni Web. Essenzialmente, WebML consiste in un insieme di concetti visuali per descrivere un ipertesto. Esso è definito come un insieme di pagine costituite da unit di contenuto e operazioni collegate tra loro. Tali unit sono associate con i dati ai quali si riferiscono. Il lettore non deve pertanto preoccuparsi della necessità di apprendere un nuovo linguaggio. Così come per i costrutti del modello Entita-Relazione, anche i diagrammi WebML possono essere rappresentati attraverso la sintassi UML, forse con minor chiarezza ed immediatezza, ma senza perdite di potere espressivo. WebML è

1

Software per la gestione di un REGISTRO TUMORI ANIMALI della Sicilia

Allievo Ing. Giuseppe Domenico Orlando

Relatore Prof. Marco La Cascia – Correlatori aziendali Dott. Ing. Maurizio Orlando, Dott. Guido Ruggero Loria

Al fine di acquisire una completa conoscenza del dominio applicativo e delle diverse soluzioni da applicare è stato necessario procedere con una serie di interviste rivolte ai responsabili del laboratorio di Istopatologia Animale dell’IZS di Palermo, riguardanti gli obiettivi, il funzionamento e le caratteristiche che il Registro Tumori deve possedere. L’attività di progetto ha previsto un’analisi di tutta la documentazione utilizzata nell’attività non informatizzata, (moduli di richiesta esame, documenti di accompagnamento campioni e di emissione referto) legata al WorkFlow, come mostrato in Figura 1 e descritto dai seguenti punti:

1. il veterinario richiede un esame istologico su uno o più campioni di un animale domestico che ritiene oggetto di un potenziale caso tumorale;

2. tale richiesta supera la fase di accettazione e i campioni con la relativa documentazione entrano in attesa di essere sottoposti ad esame;

3. esitati i campioni, il personale del laboratorio emette un referto che ne conferma o meno l'esito patologico.

Analisi da parte del personale di laboratorio

Documento di Referto

Accettazione campioni e richiesta esame

Veterinario

Documenti di richiesta esame e accompagnamento campione

Figura 1: Flusso dell'attività legata all'esame istologico.

Altre informazioni sulla problematica del “Registro Tumori Animale” sono state integrate a partire dall’analisi di articoli scientifici relativi a progetti similari.

Uno degli obiettivi principali del progetto è stato quello di offrire tutti gli strumenti adatti a dematerializzare le operazioni sopra descritte nel rispetto di criteri di semplicità, usabilitàiii ed efficienza.

L’utilizzo di tecnologie software Open Source, come l’uso di DBMS MySql e linguaggio di scripting server side come Php e client site come Javascript, già utilizzati nello sviluppo del nuovo portale internet dell’IZS della Sicilia, è legato all'integrazione tra il nuovo portale e l’applicativo per la gestione del registro tumori, e dalla caratteristica di

composto da un certo numero di modelli, indirizzati a specificare aspetti ortogonali delle applicazioni Web: modello dei dati, modello di ipertesto (composizione + navigazione), modello di presentazione.

iii L'Usabilità è definita dall' ISO (International Organisation for Standardisation), come l'efficacia, l'efficienza e la soddisfazione con le quali determinati utenti raggiungono determinati obiettivi in determinati contesti. In pratica definisce il grado di facilità e soddisfazione con cui l'interazione uomo-strumento si compie.

economicità che doveva possedere la realizzazione del software.

Il modo in cui le componenti software interagiscono tra loro, implementando le funzionalità richieste, è stato definito attraverso una architettura a tre livelli logico-funzionali (Figura 2)[2] :• livello di presentazione - rappresenta l'interfaccia utente

dell'applicazione e si occupa di acquisire dati e visualizzare risultati;

• livello intermedio - si occupa delle elaborazioni dei dati in base alla cosiddetta busines logic, cioè all'insieme delle regole per cui i dati sono considerati significativi e le loro relazioni consistenti; le elaborazioni del livello intermedio generano i risultati richiesti dall'utente;

• livello dati - rappresenta l'insieme dei servizi offerti da applicazioni indipendenti dal Web, come ad esempio un gestore di database, un sistema di gestione di posta elettronica, ecc.

Figura 2: Schema dell’Architettura Web a tre livelli.

Figura 3: Flusso delle attività associato all'Applicativo Web.

Il risultato ottenuto migliora il flusso delle attività di censimento legate all’anagrafica come rappresentato nello schema in Figura 3.

2

Gli utenti registrati attraverso l’interfaccia utente, livello di presentazione, interagiscono con l’applicativo usufruendo delle funzionalità e dei servizi da esso offerti. in particolare il veterinario effettuerà le richieste di esame in maniera interattiva, popolando contemporaneamente la Base Dati.

Il livello dati conterrà i dati necessari al ricercatore IZS che potrà in maniera immediata utilizzarli per i propri studi e le opportune valutazioni scientifiche, offrendo in tale modo un servizio alla comunità che non è viziato da tempi di latenza burocratici.

III. PROGETTAZIONE DI UNA APPLICAZIONE WEB ATTRAVERSO L’IMPIEGO DEL WEBML

La progettazione di un’applicazione web è un’attività complessa che deve essere affrontata adottando tecniche ad hoc su concetti rappresentati con strumenti di modellazione adeguati [3].

L’idea, pertanto, è stata quella di utilizzare gli strumenti orientati specificamente alla progettazione di Applicazioni Web basate sui dati. Tale sviluppo si avvale di diverse fasi schematizzate nella Figura 4. Ogni fase produce un prototipo oppure una versione parziale del sistema da realizzare. Si tratta di un approccio progettuale incrementale ed iterativo particolarmente appropriato per le applicazioni Web, vista la caratteristica di dinamicità nei cambiamenti dei requisiti in fase di sviluppo e di rapidità con la quale devono essere implementati [4].

SPECIFICA DEI REQUISITI

REQUISITI DI BUSINESS

PROGETTAZIONE DEI DATI

PROGETTAZIONE DELL’IPERTESTO

PROGETTAZIONE DELL’ARCHITETTURA

IMPLEMENTAZIONE

MANTENIMENTO ED EVOLUZIONE

TESTING E VALUTAZIONE

Figura 4: Fasi nel processo di sviluppo di applicazioni Web centrate sui dati.

Attraverso l’insieme di attività legate alla formalizzazione dei requisiti sono state individuate le informazioni necessarie per rappresentare uno dei più importanti strumenti di modellazione nella progettazione: gli scenari utente.

L’analisi delle specifiche dei requisiti funzionali generali richiesti[5], ci porta all’ analisi dei seguenti punti:

1. Specifiche dei requisiti generali

a) Requisiti funzionaliNell’elenco che segue sono stati riassunti i requisiti

funzionali e di sistema dell’applicativo.

Il “Registro Tumori Animali della Sicilia” è un’applicazione Web based che consente:

• Accesso alle diverse risorse informative Archivio delle patologie tumorali Archivio degli esami e referti Archivio utenti Dati statistici

• Amministrazione(inserimento,modifica, eliminazione) di:

informazioni che compongono la collezione di dati TUMORI,

informazioni che compongono la collezione di dati ORGANI,

dati legati ai veterinari dati legati ai proprietari dati legati alle terapie dati legati agli animali dati legati ai campioni dati legati agli esami

• Accesso a nuove funzionalità e servizi creazione di un documento referto stampa del documento di referto

b) Requisiti non funzionali• usabilità: viene garantita la facilità d’uso

dell’applicazione con una GUI (Graphical User Interface) semplice ed immediata, che è basato su un modus operandi già adoperato dagli utenti nella procedura no informatizzata;

• prestazioni: non rappresentano un obiettivo a breve termine ma a lungo termine che seguirà ad uno studio delle statistiche di utilizzo dell’applicativo nel medio termine;

• scalabilità: la caratteristica di incrementare le prestazioni e le funzionalità se richiesto;

• sicurezza: è richiesta la protezione dell’integrità, la confidenzialità e la privatezza dell’informazione (in particolare per i dati relativi ai proprietari ed ai veterinari), la disponibilità dei servizi, l’autenticazione degli utenti e la protezione del flusso di informazione trasferita tra utenti e applicazione (PROTOCOLLO SSL);

• manutenibilità riguarda la facilità con cui è possibile attivare le procedure di manutenzione ordinarie e straordinarie.

2. Analisi dei requisiti formalizzatiIn questa fase si sono realizzati i documenti semi-formali

sull’applicazione. Questi documenti costituiscono la base fondamentale per la realizzazione dell’applicazione. Al fine di completare l’analisi e la comprensione del problema è stato necessario individuare e schematizzare le seguenti informazioni:• i principali gruppi utenti e le relazioni gerarchiche

esistenti tra essi;

3

• i principali casi d’uso (use case), che risultano dalla lista dei requisiti funzionali;

• le site view elaborate in base alle richieste e l’assegnamento delle stesse ai gruppi di utenti che le utilizzeranno;

3. Specifica dei gruppi utenti

I gruppi di utenti del “Registro Tumori”, sono stati organizzati in modo gerarchico legato alla loro specializzazione (Figura 5). Una prima distinzione ha permesso un raggruppamento in utenti esterni ed in utenti interni, entrambi accedono previa autenticazione (login) a contenuti personalizzati. Essi sono suddivisi in sotto-gruppi in base al contenuto di pertinenza ed alle funzionalità gestite:

• Amministratori: il personale interno del laboratorio;• Veterinari: sono i medici veterinari che collaborano

con il laboratorio.

Utente REGISTRO TUMORI

Amministratore

Utente esterno registrato

Veterinario

Utente interno registrato

Figura 5: Diagramma della gerarchia dei gruppi.

Per ogni gruppo di utenti individuato è stato compilato un profilo di specifica che possiede i seguenti campi:• nome: nome del gruppo;• descrizione: descrizione dei criteri che caratterizzano il

gruppo;• dati profilo: dati per il profilo che caratterizzano i

membri del gruppo;• super-gruppo: il gruppo che generalizza le caratteristiche

comuni ai vari sottogruppi;• diritti d’accesso: i dati accessibili e gestibili dai gruppi.

I ruoli e i diritti di accesso per i due gruppi Amministratore e Veterinario, vengono riassunti rispettivamente nella Tabella I e nella Tabella II.

TABELLA ITABELLA DESCRITTIVA DEL PROFILO AMMINISTRATORE

Nome AmministratoreDescrizione Personale interno con il ruolo di gestire gli

utenti dell’applicazione (sia che essi siano interni o esterni), impostare i dati di nuovi tumori, organi, esami e referti. Gestire i dati di essi già esistenti.

Dati profilo Nome, cognome, indirizzo di posta elettronica, numero di telefono, nome utente per la login e la password.

Super-gruppo Utente interno registrato .Sotto-gruppo

Oggetti accessibili in lettura Utenti e gruppi di utenti, esami pendenti e esitati, elenco organi e tumori, referti.

Oggetti accessibili in scrittura

Utente, gruppi di utente, esami, referti, organi e tumori.

TABELLA IITABELLA DESCRITTIVA DEI PROFILI VETERINARIO

Nome VeterinarioDescrizione Medico veterinario che collabora con il

laboratorio. Richiede gli esami per dei campioni di un animale che si presume affetto da patologia tumorale.

Dati profilo Nome, cognome, indirizzo di posta elettronica, indirizzo numero di telefono, nome utente per la login, password e ambulatorio.

Super-gruppo Utente esterno registrato .

Sotto-gruppoOggetti accessibili in lettura Account personale, esami pendenti e esitati,

elenco tumori.Oggetti accessibili in scrittura Utente, esami.

Mettendo in relazione tutte le informazioni e i dati acquisiti sugli utenti con gli obiettivi da raggiungere sono stati creati alcuni scenari. Si è trattato di un lavoro creativo con riscontro finale: si sono infatti immaginati gli strumenti che occorreva mettere a disposizione degli utenti verificandone l’utilità raggiunta. Sono scenari in forma schematica che descrivono le modalità di interazione con il sistema a partire dai casi d’uso.

Come illustrato dal diagramma in Figura 6, gli Amministratori gestiscono i dati degli utenti, creando e modificando i profili utente. Gli amministratori hanno inoltre un ruolo gestionale che consente l’inserimento, la modifica e l’eliminazione (vengono marcati come cancellati) di esami, di referti, delle schede degli organi e dei tumori. Inoltre gli amministratori hanno la possibilità di visualizzare i dati statistici al fine di trarre informazioni e per la reportistica. Poiché tutte queste operazioni sono protette da una politica di sicurezza della privacy dei dati gli amministratori accederanno nel sistema previa autenticazione e riceveranno un incarico per il trattamento dei dati dal titolare della privacy aziendale.

4

Utente Amministratore

Crea Referto

Visualizza DatiStatistici

Crea Utente

Modifica Referto

Login

Modifica accountUtente

Rimuovi Utente

Aggiungi Organo

Modifica Organo

Aggiungi Organo

Rimuovi Referto

Aggiungi Tumore

Modifica Tumore

Aggiungi Tumore

Crea Esame

Modifica Esame

Rimuovi Esame

Figura 6: Diagramma dei casi d'uso per l'amministratore.

Come mostrato nel diagramma dei casi d’uso riportato in Figura 7, il veterinario gestisce i dati del proprio account e visualizza tutte le informazioni sui tumori. Essi sono inoltre responsabili della creazione di un nuovo esame e visualizzano i propri esami .

Utente Veterinario

Crea Esame

Login

Naviga ElencoTumori

Accede ai dettaglidel Tumore

Modifica datiAccount

Naviga Esami

Accede ai dettaglidell' Esame

Figura 7: Diagramma dei casi d'uso per il veterinario.

Per ogni caso d’uso è stato previsto un foglio di specifica; nell’esempio riportato in Tabella III si fa riferimento alla specifica per l’inserimento di una nuova patologia, tra quelle registrate nell’elenco tumori, da parte dell’amministratore.

TABELLA IIIFOGLIO DI FPECIFICA PER IL CASO D’USO “CREA NUOVO TUMORE”

Titolo Crea Nuova Patologia Tumorale

Scopo Esprimere il modo in cui gli amministratori aggiungono una nuova patologia tumorale.

Pre-condizione

L’Amministratore accede all’applicazione ed entra nella site view dedicata all’elenco delle patologie riconosciute. Quindi crea la nuova patologia tumorale inserendo tutte le informazioni necessarie.

Post-condizione

La nuova patologia è disponibile per la consultazione ed assegnazione ad un caso per il veterinario ed amministratore e per la modifica da parte del solo amministratore .

Workflow

1. L’utente riceve una lista dei tumori esistenti e un link per caricare una form di input per inserire un nuovo tumore.

2. L’utente inserisce i nuovi dati.3. Si eseguono le verifiche di validità sui dati

inseriti.4. Se i dati non sono corretti, l’utente riceve un

messaggio di errore e viene mandato nuovamente alla pagina che include la pagina di input, dove i dati possono essere corretti e risottomessi.

5. Se i dati sono corretti viene salvato il nuovo record.

6. Se l’operazione termina con successo, l’utente riceve la lista aggiornata dei tumori ed il nuovo tumore sarà disponibile alla consultazione da parte di tutti.

IV. PROGETTAZIONE DEI DATI

Il modello teorico di organizzazione dei dati che è stato adottato nel nostro progetto è il diffuso Modello Relazionale o Modello Entità-Relazione. Gli elementi di base che costituiscono questa metodologia sono: le ENTITÀ, che rappresentano un’insieme di oggetti della realtà di cui si individuano proprietà comuni; le ASSOCIAZIONI, che rappresentano un legame logico tra due o più entità; gli ATTRIBUTI, che rappresentano le proprietà elementari di entità o associazioni[6].

La metodologia di progettazione adottata, legata a tale modello, consolidata ormai negli anni, si articola in tre fasi e si fonda su di un principio dell’ingegneria semplice ed efficace: separare in maniera netta le decisioni relative a “cosa” rappresentare in una base di dati da quelle relative a “come” farlo [7].

Le tre fasi sono così suddivise:A. PROGETTAZIONE CONCETTUALEB. PROGETTAZIONE LOGICAC. PROGETTAZIONE FISICA

Di seguito illustreremo le prime due da cui si otterranno rispettivamente schema concettuale e logico.

A.PROGETTAZIONE CONCETTUALELa progettazione concettuale ha permesso di rappresentare

le specifiche informali della realtà di interesse in termini di una descrizione formale e completa, indipendente dai criteri di rappresentazione nei sistemi di gestione. Il risultato di tale attività che abbiamo detto essere lo schema concettuale, fa riferimento ad un modello concettuale dei dati. Tale modello ci ha permesso quindi di descrivere l’organizzazione dei dati a un alto livello di astrazione senza considerare gli aspetti implementativi.

Allo sviluppo dello schema concettuale, vero e proprio processo di ingegnerizzazione, è stata applicata la strategia di progetto che prende il nome di strategia mista. Essa combina i vantaggi della strategia top-down e quella della strategia bottom-up[8].

5

Si è proceduto nel suddividere i requisiti in componenti separate (come nella strategia bottom-up), ma allo stesso modo si è definito uno schema scheletrico (Figura 8), che a livello astratto, contiene i concetti principali dell’applicazione (top-down). Lo schema realizzato ci ha permesso di avere una visione unitaria favorendo le fasi di integrazione dei vari schemi sviluppati separatamente. L’analisi ha permesso l’individuazione delle entità principali (gli animali, i campioni, i referti, i proprietari, i veterinari e i tumori) e delle relazioni tra di esse (affetto, possiede ed esame).

Figura 8: Schema Scheletrico della Base di Dati.

Le entità proprietario e veterinario individuano due tipologie di quella che è l’utenza, a cui si aggiunge l’utente AMMINISTRATORE. Si tratta quindi di entità figlie dell’entità UTENZA: la generalizzazione che ne risulta è totale e sovrapposta. Infatti potrebbe capitare che un veterinario sia anche proprietario dell’animale oggetto dell’esame. Analizzando le specifiche relative all’animale ci si accorge che un animale può essere stato sottoposto a precedenti terapie, introduciamo l’entità TERAPIA, legata ad animale dalla relazione PRESCRIZIONE. Allo stesso modo analizzando le specifiche del campione e del tumore entrambe hanno un legame con una nuova entità, ossia ORGANO, la prima tramite la relazione DI (nel senso di appartenenza) e con la seconda tramite la relazione INTERESSA, in quanto vi sono tumori specifici per una tipologia di organo. Aggiungendo gli attributi a entità e relazioni, le cardinalità alle relazioni e gli identificatori alle entità si è ottenuto lo schema concettuale in Figura 9.

Figura 9: Schema Concettuale della Base di Dati.

Il glossario dei termini è stato riassunto nella Tabella IV.

TABELLA IVGLOSSARIO DEI TERMINI

Termine Descrizione Collegamenti

PROPRIETARIO È il possessore dell’animale.ANIMALE, REFERTO, CAMPIONE

VETERINARIO È il medico competente che consegna il campione appartenente all’ANIMALE.

ANIMALE, PROPRIETARIO, REFERTO, CAMPIONE

AMMINISTRATORE È il personale interno del laboratorio.

ANIMALE È l’animale a cui appartiene il CAMPIONE da refertare.

PROPRIETARIO, VETERINARIO,REFERTO,CAMPIONE,TUMORE

CAMPIONE È l’oggetto dell’ESAME PROPRIETARIO,VETERINARIO,ANIMALE, ORGANO, REFERTO

TUMORE Rappresenta il tipo di Patologia analizzata.

ANIMALE, ORGANO

REFERTO È il documento che definisce e conferma una determinata patologia.

VETERINARIO, PROPRIETARIO, ANIMALE, CAMPIONE,

ORGANO È l’oggetto da cui si acquisisce il CAMPIONE da esaminare e da refertare.

TUMORE, APPARATO, CAMPIONE

ESAME Mette in relazione le varie entità.

TERAPIA Terapia a cui un’animale è o è stato sottoposto.

ANIMALE

APPARATO È l’apparato del corpo. ORGANO

6

B.PROGETTAZIONE LOGICA

Lo schema concettuale, ottenuto dalla progettazione concettuale, ha costituito la base per l’attività successiva di costruzione di un nuovo schema: lo schema logico[9]. Lo schema logico è un modello caratterizzato da una rappresentazione necessaria alla terza fase della progettazione del Data Base, ossia la progettazione fisica. Al fine di ottenere lo schema logico sono state effettuate una serie di operazioni di ristrutturazione e traduzione.

Una delle ristrutturazioni evidenti è stata l’eliminazione della generalizzazione tra l’entità padre, l’UTENZA, e le tre entità figlie PROPRIETARIO, AMMINISTRATORE E VETERINARIO, vedi Figura 10. Queste ultime sono state eliminate e le loro proprietà sono state aggiunte all’entità padre, a cui è stato aggiunto un’ulteriore attributo, il ruolo, per distinguere il “tipo” di occorrenza dell’entità UTENZA.

Figura 10: Generalizzazione Utenza.

Altri interventi di ristrutturazione hanno costituito una serie di operazioni di traduzione che tenendo conto della presenza di determinate associazioni con chiavi comuni e delle cardinalità presenti, avvalendosi di opportuni schemi hanno comportato una ristrutturazione per la progettazione fisica come nell’esempio della relazione POSSIEDE (Figura11), che lega l’entità ANIMALE ad un PROPRIETARIO. Si tratta di una relazione uno a molti con partecipazione obbligatoria, che opportunamente tradotta ha portato al seguente risultato:

ANIMALE (id,domestico, nome,sesso, età, razza,specie, alimentazione, stato, idutenza).UTENZA(id,c.f., nome,cognome,tel,email,numero,via,città, provincia,nazione,username,password)

Figura 11: Schema per la relazione Possiede.

V. PROGETTAZIONE DELL’IPERTESTO

Attraverso la fase di progettazione ipertestuale[10] è stata creata una specifica WebML, caratterizzata dall’utilizzo del

modello ipertestuale[11] sia in linguaggio testuale che visuale del WebML, che ha fornito una vista ad alto livello delle interfacce dell’applicazione.

Di seguito ne illustriamo una porzione limitata per l’applicativo:• Operazione di login

Il Modello Ipertestuale che è stato realizzato tramite il linguaggio testuale del WebML per descrivere l’operazione di login è :

login OperazioneLogin(parameters Putente:= CUtente, PPassword :=CPassword)

Mentre il modello Ipertestuale tramite il linguaggio visuale del WebML è rappresentato in Figura 12 ed in Figura 13 dove viene mostrato il risultato finale:

LOGIN

DatiUtente

LoginFallita

Logout

HomePage

Params KO

OK

Figura 12:Processo di login modellato in WebML.

Figura 13:Mock-upiv del login.

• Multidata unit dell’elenco tumori

Il modello Ipertestuale che è stato realizzato tramite il linguaggio testuale del WebML per la Multidata unit relativa all’elenco tumori è:

MultidataUnit ListaTumori( source Tumore; attributes

Codice Normato,Tipo,Descrizione)

iv mock-up è l'attività di riprodurre un oggetto o modello in scala ridotta o maggiorata. Chi si dedica professionalmente a tale attività è detto (in inglese) mock-up artist. Oggi l'attività del mock-up artist si rivolge anche al web design, con la creazione di modelli di pagine web eseguiti mediante software grafico e non linguaggio di mark-up tipo HTML.

7

Mentre il modello Ipertestuale tramite il linguaggio visuale del WebML è rappresentato in Figura 14 e Figura 15 dove viene mostrato il risultato finale.

Multidata unit

Tumore[tutto l’elenco dei Tumori]

Figura 14: Simbolo WebML per rappresentare il MultiDataUnit per gli items contenuti nell’entità Tumore [ListaTumore].

Figura 15: Mock-up MultidataUnit per l’entità Tumore.

• Data unit per l’entità Tumore

Il Modello Ipertestuale che è stato realizzato tramite il linguaggio testuale del WebML per descrivere la DataUnit:

DataUnit DettaglioTumore( source Tumore;Selector Tipo=”Cellule…”; attributes

Tpo, Descrizione, CodiceNormato, Organo)

Il modello Ipertestuale della DataUnit che è stato realizzato tramite il linguaggio visuale del WebML è rappresentato in Figura 16 ed in Figura 17 dove viene mostrato il risultato finale.

Tumore[selezionato dal tipo]

Data unit

Figura 16: WebML del DataUnit per l’entità Tumore [DettaglioTumore].

Figura 17: Mock-up Dataunit relativo al Dettaglio di un Tumore.

• Creazione di un nuovo tumore

Nel caso della creazione di un nuovo tumore, ossia dell’aggiunta di una nuova patologia tumorale nell’elenco relativo, la Figura 18 ne rappresenta una schematizzazione attraverso il diagramma WebML e le corrispondenti pagine.

.

PaginaCreaTumore

InputNuovoTumore CreaTumore

Tumore<Elenco Campi>

PaginaRisultato

Multidata unit

Tumori

KO

OK

Figura 18: Esempio di creazione di un nuovo tumore con un diagramma WebML e la corrispondente pagina di creazione.

VI. IMPLEMENTAZIONE

Grazie alle fasi di progettazione precedenti è stato possibile

8

realizzare la struttura dell’Applicativo soddisfacendo tutti i requisiti funzionali richiesti dalle specifiche. Dalla descrizione della Site view, attraverso il piano generale dei contenuti del Registro Tumori utilizzando WebML, è stato possibile implementare l’architettura delle pagine.Di seguito viene riportata una site view che descrive in WebML testuale la Homepage che è stata realizzata per l’applicativo, nel caso di utente amministratore, che gestisce il Registro Tumori Animali:

Siteview HomepageRegistroTumori(pages Utenti,Esami,Referti,Statistiche,Aggiorna,Logout)

Dalla site view HomepageRegistroTumori siamo stati in grado di studiare una soluzione a basso livello di dettaglio, vedi la Figura 19.

Figura 19: Wireframe Low Fidelity della Homepage.

La realizzazione dei Wireframev è servita a schematizzare velocemente i layout delle pagine. Si tratta di schemi che rappresentano l'architettura delle pagine del sito. Come mostrato nella Figura 19 e nella Figura 20, esistono due tipologie di wireframe - low o high fidelity - a seconda del livello di dettaglio nella rappresentazione dei contenuti e dell'interfaccia.

v wireframe o wire frame model (lett. modello in fil di ferro ) indica un tipo di rappresentazione grafica da computer, detta anche vettoriale. Con questo metodo vengono disegnati soltanto i bordi dell' oggetto, il quale di fatto resta trasparente al suo interno (sembrando, appunto, costruito con il fil di ferro). Questo metodo richiede calcoli molto più semplici rispetto alla rappresentazione di superfici, ed è quindi considerevolmente più veloce.

Figura 20: Wireframe High fidelity della Homepage.

Al fine di garantire la perfetta usabilità si è studiato una architettura delle pagine partendo con la definizione del piano generale dei contenuti e dell’interfacciamento con i dati. Il piano identifica e descrive le macroaree di contenuto nel dettaglio fino ad individuare ogni singola sezione e form. Il passo successivo è stato quello di progettare la navigazione della Web Application, per favorire il Workflow della procedura di registrazione dei dati, a tal fine è stato posto il menu sulla sezione superiore del layout, sempre visibile in ogni pagina, della GUI dell’applicazione. I percorsi di navigazione così progettati per l’Applicativo sono risultati chiari e facilmente usabili e nella loro rigidità, vincolano l’utente negli spostamenti limitando gli errori e facilitando l'orientamento.

Nel wireframe sono rappresentati tutti gli elementi che compongono l'interfaccia generale (gabbia editoriale) e gli elementi specifici di ogni tipologia di pagina (template), quindi titoli, testi e immagini.

Figura 21: Mock-up della pagina per la gestione utenti veterinari

VII. FUTURE EVOLUZIONI

Il presente lavoro costituisce la base per la futura evoluzione di uno strumento di monitoraggio dell’inquinamento ambientale a cui è legata la salute animale ed umana. La realizzazione di questa Base di Dati costituisce le fondamenta di un Sistema Informativo che, integrato con le "Google Maps", (un servizio gratuito messo a disposizione da

9

Googlevi), permetterà di realizzare un applicativo più complesso per la rappresentazione territoriale, geografica e georeferenziata, della diffusione di patologie tumorali animali.

L'obiettivo di questo strumento di monitoraggio sarà quello di creare, a partire da una segnalazione effettuata da parte dei veterinari nel territorio, un Sistema Informativo che costruendo il "Registro Tumori Animali della Sicilia" potrà dare indicazioni immediate, nel territorio specificato, dell'incidenza di una determinata patologia permettendone lo studio ai fini della prevenzione. La consultazione delle mappe georeferenziate si avvarrà di mappe geografiche via Web fornite da Google e programmabili attraverso l'interfacciamento con le API (Application Program Interface) messe a disposizione in forma gratuita.

L'utenza, effettuato l'accesso al sistema di monitoraggio, attraverso una ricerca parametrizzata, otterrà come risultato una mappa dell'area geografica di interesse, Figura22, caratterizzata dalla presenza di simboli, i "markers", riferiti ai singoli casi patologici segnalati e quindi all’animale malato.

Figura 22: Prototipo della GUI che sfrutta le Mappe di Google per la georeferenziazione.

I markers possiederanno tutte le informazioni di interesse per lo studio del fenomeno patologico e l'evoluzione grafica georeferenziata avrà lo scopo di fornire un ulteriore strumento pratico per la sorveglianza, che sfruttando questa GUI basata sulle mappe permetterà un efficace ed utile strumento di monitoraggio territoriale.

Le informazioni raccolte dai vari utenti autorizzati nel territorio di riferimento verranno trattate in futuro e serviranno da indicatori della qualità ambientale. Le eventuali presenze massicce di casi patologici in un territorio ristretto determineranno condizioni di allarme per la salute dell'uomo.

VIII. CONCLUSIONI

Concludendo, l’attività progettuale svolta ha consentito lo sviluppo di uno strumento per l’acquisizione e la gestione

vi Google è un motore di ricerca per Internet che non si limita a catalogare il World Wide Web, ma si occupa anche di immagini, foto, newsgroup, notizie, mappe, video, oltre a mantenere una copia cache di tutte le pagine che conosce.

delle informazioni legate ai singoli casi patologici tumorali riscontrati, migliorando i meccanismi di monitoraggio, di studio delle dinamiche epidemiologiche e permettendo infine di conseguire i seguenti obiettivi:

• migliorare l’acquisizione dei dati legati ai casi tumorali;• mettere a disposizione uno strumento di lavoro, via Web,

che dematerializzi le procedure fortemente legate al cartaceo;

• consentire ai veterinari della Regione che collaborano con l’Ente, di utilizzare l’applicativo per la richiesta di esami istologici;

• consentire al personale del laboratorio di gestire ed utilizzare, in maniera schematica e semplificata, tutti i dati acquisiti sia per studi scientifici che per la quotidiana attività di lavoro;

• permettere la creazione e la stampa automatica dei documenti di referto;

• creare un rapporto dei dati e delle statistiche.

RIFERIMENTI BIBLIOGRAFICI

[1] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill , introduzione XIX-XX.

[2] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, pp.47-49.

[3] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, p. 181.

[4] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, p. 184.

[5] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, pp.191-236.

[6] Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone: Basi di dati Ed. McGraw-Hill, p.3.

[7] Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone: Basi di dati Ed. McGraw-Hill, pp.164-166.

[8] Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone: Basi di dati Ed. McGraw-Hill, pp.207-211.

[9] Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone: Basi di dati Ed. McGraw-Hill, pp.227-269.

[10] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, pp.259-308

[11] Stefano Ceri, Piero Fraternali, Aldo Bongio, Marco Brambilla, Sara Co-mai, Maristella Matera: Progettazione di Dati e Applicazioni per il WEB.Ed. McGraw-Hill, pp. 165-178.

10