tesi-todone
DESCRIPTION
Presentazione "lunga" (20 min) del progetto di tirocinio/tesi svolto da Todone Giancarlo presso la MIDA4TRANSCRIPT
![Page 1: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/1.jpg)
Progetto e realizzazione di una infrastruttura modulare per
acquisizione ed archiviazione remota di documenti
LAUREANDOGiancarlo Todone
CORRELATORE Ing. Giorgio Davanzo
RELATOREProf. Alberto Bartoli
Anno Accademico 2008/2009
![Page 2: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/2.jpg)
Premessa: GEC
Programma di contabilità creato e mantenuto da MIDA4
Sviluppato in Visual Basic 6 È un software già stabile e diffuso
![Page 3: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/3.jpg)
GEC: due versioni
normale: Esegue in un ambiente Windows Accede eventualmente alla rete solo per
recuperare aggiornamenti e informazioni di licenza
![Page 4: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/4.jpg)
GEC: due versioni
ASP: Esegue su un server remoto ed è accessibile solo
tramite Internet L'utente utilizza un software di remote desktop per
poter interagire col programma
Internet
![Page 5: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/5.jpg)
Problema (requisiti)
Aggiungere funzionalità di archiviazione elettronica a GEC senza modificare “troppo” il codice sorgente di GEC senza introdurre problemi di manutenibilità permettendo di mantenere la retrocompatibilità senza introdurre differenze di utilizzo tra le
configurazioni (normale / ASP)
![Page 6: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/6.jpg)
Archiviazione?
Funzionalità desiderate: Acquisire documenti cartacei Corredarli di informazioni aggiuntive Inviarli ad un servizio (remoto) di archiviazione
![Page 7: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/7.jpg)
La soluzione proposta: architettura
Syn
cUtil
s
Syn
cUtil
s
GE
C_S
can
Plug in Plug in
Plug in manager
dotNetTwain
GEC
![Page 8: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/8.jpg)
Architettura: configurazione normale
Syn
cUtil
s
Syn
cUtil
s
GE
C_S
can
Plug in
GEC
Plug in
Plug in manager
dotNetTwain
![Page 9: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/9.jpg)
Architettura: configurazione ASP
Syn
cUtil
s
Syn
cUtil
s
GE
C_S
can
Plug in
GEC
Plug in
Plug in manager
dotNetTwain
Internet
![Page 10: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/10.jpg)
Il calcolatore dell'utente deve poter accettare le richieste che GEC invia, sia da locale che da remoto: Firewall? NAT/NAPT?
Comunicazioni: difficoltàS
yncU
tils
GE
C_S
can
Syn
cUtil
s
Syn
cUtil
s
GE
C_S
can
GEC
Plu
g in
![Page 11: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/11.jpg)
È una libreria che astrae il mezzo di comunicazione e di sincronizzazione tra GEC e GEC_Scan
È stata sviluppata appositamente per risolvere le difficoltà di comunicazione
Utilizza un file system condiviso per scambiare dati
SyncUtilsS
yncU
tils
Syn
cUtil
s
GE
C_S
can
GEC
GE
C_S
can
Plu
g in
GEC
Syn
cUtil
sS
yncU
tils
![Page 12: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/12.jpg)
SyncUtils
Accesso Esclusivo tramite file di lock
Syn
cUtil
s
Syn
cUtil
s
Syn
cUtil
s
LOCK FILELOCK FILE LOCK FILELOCK FILE
GE
C_S
can
Plu
g in
![Page 13: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/13.jpg)
Scambio informazioni di esecuzione tramite file XML
SyncUtilsS
yncU
tils
Syn
cUtil
s
Syn
cUtil
s
LOCK FILELOCK FILEDATADATA LOCK FILELOCK FILE
GE
C_S
can
Plu
g in
![Page 14: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/14.jpg)
GEC_Scan
È un programma che esegue sul calcolatore dell'utente
Permette di acquisire immagini da uno scanner ed organizzarle in documenti
GE
C_S
can
Plu
g in
Syn
cUtil
s
![Page 15: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/15.jpg)
GEC_Scan
La finestra principale resta nascosta finchè non arriva una richiesta da GEC (tramite SyncUtils)
GE
C_S
can
Plu
g in
Syn
cUtil
s
![Page 16: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/16.jpg)
L'interfaccia con lo scanner viene gestita tramite TWAIN
Per utilizzare TWAIN è stato creato un wrapper : dotNetTwain
GEC_ScanG
EC
_Sca
n
GE
C_S
can
Plu
g in
Syn
cUtil
s
dotNetTwain
![Page 17: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/17.jpg)
GEC_Scan
Alla pressione del tasto “Memorizza”, GEC_Scan esegue dei plug in
GE
C_S
can
GE
C_S
can Plug in
Plug in
Plu
g in
Syn
cUtil
s
![Page 18: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/18.jpg)
Plug in: codice eseguibile che può essere sviluppato e distribuito separatamente dal programma principale
Sviluppato un plug in manager per permettere l'estendibilità di GEC_Scan tramite plug-in
Plug in
Plug in
Plug in
GE
C_S
can
Plu
g in
GE
C_S
can
Syn
cUtil
s
Plug in manager
![Page 19: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/19.jpg)
Plug in
GEC_Scan accede al servizio di archiviazione attraverso una interfaccia uniforme
Ogni plug in implementa l'interfaccia per un determinato servizio
Plug in
Plug in
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 20: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/20.jpg)
Plug in
È stata sviluppata una libreria che presenta i servizi di archiviazione remota in modo simile ad un file system
Ciò semplifica la struttura interna dei plug in Le sue funzionalità di base sono:
Enumerazione del contenuto di una cartella Creazione di una cartella Upload di un file Download di un file Eliminazione di un file o una cartella
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 21: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/21.jpg)
Sharepoint
Server per la suite Office Permette la redazione collaborativa di
documenti Esporta dei servizi sotto forma di web
service SOAP
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 22: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/22.jpg)
Sharepoint
È organizzato in siti
Ogni sito può contenere delle liste
Ogni lista può contenere degli oggetti: File
Cartelle
Appuntamenti
Il web service Lists.asmx permette la gestione degli oggetti in una lista
Alcune operazioni vengono svolte tramite CAML (un linguaggio di query basato su XML)
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 23: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/23.jpg)
Google Documents
Servizi gestiti da Google (nessun bisogno di installazione o manutenzione)
Utilizza il protocollo Atom Publishing Protocol
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 24: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/24.jpg)
Google Documents
Ogni tipologia di servizio fa capo ad un feed
Richieste e risposte fanno uso esteso delle intestazioni http
L'utilizzo avviene ad alto livello grazie alle implementazioni delle Google Data API
L'ultima release è la 3.0 È stata usata l'ultima release stabile: 2.0
GE
C_S
can
Syn
cUtil
sP
lug
in
![Page 25: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/25.jpg)
Tester
![Page 26: Tesi-Todone](https://reader033.vdocuments.net/reader033/viewer/2022061218/54824827b4af9f636b8b4767/html5/thumbnails/26.jpg)
Domande?