UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA Corso di laurea in Ingegneria Informatica Tesi di Laurea Triennale in Ingegneria Informatica REALIZZAZIONE DI UN APPLICATIVO PER LA GESTIONE DI FOGLI DI LAVORO INTEGRATO IN OUTLOOK 2010 RELATORE Prof. Maurizio Fermeglia LAUREANDO Tonon Saverio Anno Accademico 2009/2010
1.1 - Obiettivo della tesi L obiettivo che ci si è posti con questa tesi è la progettazione e lo sviluppo di un add-in di Outlook che permetta la gestione dei timesheets dei dipendenti all interno di un Azienda. Più precisamente, si vuole che l utente abbia la possibilità di creare direttamente da Outlook i suoi timesheets, esportando i dati creati in Outlook sia su dei fogli di lavoro Excel che su un database condiviso nella rete aziendale. 1.2 - Risultato della tesi Il software creato, Gestione Time Sheet, rispetta i vincoli di progetto ed è utilizzabile dopo una semplice installazione e configurazione. Per i requisiti di installazione, si rimanda al capitolo 5.5. Figura 1 - Screenshot del programma "Gestione Time Sheet". 1
1.3 - Stato dell arte Al momento esistono diversi applicativi 1 per la gestione dei timesheets, simili per funzionalità ma che utilizzano un ambiente web-based. Figura 2 - Screenshot del programma "Replicon - Time Sheet". Per poter utilizzare un applicazione web-based, l utente utilizza il browser web, senza la necessità di dover installare alcun cd. 1.4 - Motivazioni Un timesheet è un metodo che viene utilizzato per tenere traccia delle quantità di tempo che un lavoratore dedica a svolgere delle determinate mansioni. In origine questo metodo veniva utilizzato dal datore di lavoro per determinare il libro paga dei dipendenti: successivamente, il timesheet è diventato utile anche per la fatturazione al cliente, per il calcolo dei costi e della loro stima, il loro monitoraggio e la loro gestione 2. Queste necessità hanno portato le aziende ad introdurre l utilizzo dei timesheets al loro interno. Outlook è un software molto diffuso ed utilizzato nelle aziende per la gestione della posta elettronica, per la pianificazione di appuntamenti, per la gestione del proprio programma di lavoro: per questo motivo, è 1 Ad esempio Replicon - Web TimeSheet - http://www.replicon.com 2 Per approfondimenti http://en.wikipedia.org/wiki/timesheet 2
stato richiesto di creare un add-in che, integrandosi nell applicazione, potesse permettere la gestione dei timesheets dei propri dipendenti, utilizzando come base le funzionalità messe a disposizione da Outlook. A differenza dei software web-based, i dipendenti non hanno la necessità di imparare ad utilizzare un nuovo sistema, ma utilizzeranno un software che già conoscono ed usano, con il conseguente vantaggio di una riduzione dei tempi nella creazione dei loro timesheets. 1.5 - Vincoli di progetto Sono stati imposti i seguenti vincoli di progetto: Ambiente di esecuzione Outlook 2010. Ambiente di sviluppo Visual Studio 2010. Utilizzo di Microsoft SQL Server 2008 R2 come Data Base Management System. 1.6 - Riassunto dei capitoli seguenti Nel capitolo 2 verrà effettuata la raccolta delle informazioni e la definizione dei requisiti richiesti dal cliente. Nel capitolo 3 verrà analizzata e progettata la struttura della base di dati che conterrà le informazioni dei timesheets dei dipendenti dell azienda. Nel capitolo 4 verrà effettuata la progettazione dell applicativo mediante gli strumenti forniti dal linguaggio UML. Nel capitolo 5 verrà descritta l interfaccia dell applicativo, la sua installazione e configurazione, e verrà descritto un tipico esempio di utilizzo. Il capitolo 6 sarà rivolto alla descrizione delle funzioni che sono state realizzate nell applicativo. Nel capitolo 7 saranno presenti le conclusioni riguardanti il progetto sviluppato. Nel capitolo 8 sarà presente una breve bibliografia. 3
2 - Analisi 2.1 - Raccolta informazioni e definizione dei requisiti Il fine di questo progetto è la realizzazione di un applicativo integrato in Outlook 2010 per la gestione dei timesheets dei dipendenti di un azienda. L azienda che verrà considerata ha come scopo la realizzazione di un certo numero di progetti. Ogni progetto, per poter essere sviluppato e portato a termine, richiede di essere assegnato ad uno o più dipendenti. Ogni dipendente potrà, tramite un calendario di Outlook, impostare le ore che ha dedicato ad ogni singolo progetto: successivamente, potrà generare un file Excel (con un formato standard a livello europeo) contenente il resoconto mensile che include il totale delle ore che ha dedicato ad ogni progetto. Il software dovrà permettere all azienda di avere una visione completa dello status di ogni progetto: dovrà essere possibile ad esempio ottenere il totale delle ore che sono state dedicate ad ogni progetto e i dipendenti che vi hanno partecipato. Per questo motivo si rende necessaria la memorizzazione dei dati inseriti dai dipendenti all interno di un database condiviso nella rete aziendale. Per rendere il database e Outlook sincronizzati, all apertura di Outlook le attività del dipendente verranno caricate ed inserite dal database; alla sua chiusura, le attività verranno salvate da Outlook al database. Questo procedimento garantisce l integrità dei dati: le attività che verranno visualizzate su Outlook saranno sempre le stesse che saranno presenti all interno del database. 2.2 - Interfaccia utente di Outlook 2010 In Outlook 2010, l'interfaccia utente è interamente personalizzabile, incluso la barra multifunzione, la barra di accesso rapido e i menu di scelta rapida incorporati. Utilizzando del codice basato su XML, è possibile effettuare tale personalizzazione tramite la creazione di componenti aggiuntivi mediante Microsoft Visual Studio 2010. La parte dell interfaccia utente di Outlook che sarà personalizzata, riguarderà l aggiunta di una scheda nella barra multifunzione denominata Time Sheet e la modifica del menù contestuale al click dell utente con il tasto destro del mouse sul calendario Time Sheet. La scheda che sarà aggiunta conterrà dei pulsanti che permetteranno la gestione del timesheet dell utente (salvataggio dei dati nel database, creazione del file Excel, menù impostazioni, ecc.), mentre il menù contestuale al click dell utente con il tasto destro del mouse nel calendario Time Sheet sarà integrato con un nuovo pulsante Progetti, che conterrà l elenco di tutti i progetti che sono stati assegnati all utente. 4