Sei sulla pagina 1di 14

Università degli Studi di Trieste

Corso di Laurea Triennale di Ingegneria Informatica

SVILUPPO DI UNA APPLICAZIONE PER


L’ACQUISIZIONE DI DATI DA SUPPORTO
CARTACEO: CASO DEI CURRICULUM
VITAE

Relatore: Laureando:
Prof. Fermeglia Maurizio Faelli Roberto
Introduzione (I):

¬ Obiettivo:
• Progettare e sviluppare un software per l’acquisizione dei
dati contenuti nel CV formato Europeo
• Realizzare il software sotto forma di Windows Application
(Windows-Form)
• Creare una applicazione di facile utilizzo e scalabile

¬ Esigenze:
• Facilitare l’acquisizione dei CV pervenuti in forma cartacea
oppure via posta elettronica
• Rendere disponibili i dati contenuti nel CV in una apposita
struttura facilmente consultabile
Introduzione (III):

 L’applicazione deve essere in grado di fornire in output:

 una struttura (file XML) contenente i dati del CV


suddivisa in Nomi di campo (labels) e il corrispondente
valore.
Ad esempio:
Nome  Mario Rossi
Strumenti di sviluppo:
Ambiente e linguaggi:
• Visual Studio 2008 Professional
• C#

Librerie di supporto:

1. .NET Framework
2. XPS, XML classes
3. Microsoft Outlook classes
4. OmniPageConverter classes
Fasi di sviluppo:
•Analisi delle esigenze
•Studio di realtà esistenti
•Studio delle tecnologie
•Determinazione dei requisiti

•Individuazione dell’architettura
•Definizione dei contenuti
•Sviluppo della struttura logica

•Produzione del layout interfaccia


grafica
•Implementazione codice
•Test
Analisi:

 Use case diagram con casi d’uso ed attori.


Progettazione (I):
 Activity diagram: le possibili
azioni che l’utente finale potrà
compiere sul programma
Progettazione (II):

 Class diagram: ovvero il modello generale del sistema


L’interfaccia grafica:
Source
Settings selector

Selected Rebuilded
Source
document document
content
Scelta modelli di scansione:

L’utente può agire sui parametri di scansione per migliorare il


risultato finale
Struttura finale del documento

Il CV ricostruito: notare la presenza delle etichette (colore celeste) e del


dato vero e proprio (colore giallo)
Source-view:
namespace CVScan {

public class Settings {

private static bool _initialized = false;


private static string _settingsFilename = @"\application.ini";
private static XmlConfigSource _source;
private static string _ApplicationPath = "";

private static string _ApplicationConfigsPath = @"\configs\";


private static string _ApplicationLogsPath = @"\logs\";
private static string _ApplicationModelsPath = @"\models\";
private static string _ApplicationDocsPath = @"docs\";
private static string _ApplicationAttachmentsPath = @"docs\";
private static int _MailMaxFetch = 10;
private static string _ApplicationModelDefault = @"";

static Settings() {
}

public static void Init() {


Init(_settingsFilename);
}

public static void Init(string filename) {


Init(filename, "");
}

public static void Init(string filename, string path) {


if(_initialized) {
return;
}
_settingsFilename = filename;

if(path.Length > 0) {
_ApplicationPath = path;
} else {
string appPath =
System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase
);
Il file XML finale:
<?xml version="1.0" encoding="utf-8" ?>
- <root>
<other name="FORMATO EUROPEO" location="96;88" />
<other name="PER IL CURRICULUM" location="93;112" />
<other name="VITAE" location="208;132" />
- <label name="INFORMAZIONI PERSONALI" location="115;222">
- <label name="Nome" location="227;258">
<value name="Mario Rossi" location="259;263" />
</label>
- <label name="Indirizzo" location="216;281">
<value name="Via Lenta,15" location="259;286" />
</label>
- <label name="Telefono" location="213;305">
<value name="0434 000000" location="259;310" />
</label>
<label name="Fax" location="238;328" />

da informazioni presenti su carta oppure in formato PDF verso un file


XML gestibile da altre applicazioni a valle…
Conclusioni:
¬ Obiettivi raggiunti
• Scansione dei CV verso una struttura XML
• Possibilità di agire sui parametri di scansione
• Velocità e facilità d’uso

¬ Stato attuale del lavoro


• È completo per quando riguarda i requisiti prefissati
• Da considerare ancora come prototipo

¬ Sviluppi futuri
• Apertura verso allegati POP3
• Integrazione con gestionale Aziendale
• Possibile porting verso applicazione Web-Based

Potrebbero piacerti anche