Insegnamento Universitario dell`Informatica ed OpenSource: l

Transcript

Insegnamento Universitario dell`Informatica ed OpenSource: l
Insegnamento Universitario dell'Informatica ed Open­Source: l'Esperienza dell'Università della Basilicata
GIANSALVATORE MECCA, [email protected]
SALVATORE RAUNICH, [email protected]
Dipartimento di Matematica e Informatica
Università della Basilicata
Potenza – Italy
Keywords: Didattica Universitaria
Abstract
Il giovane Corso di Laurea in Informatica dell'Università della Basilicata ha da subito abbracciato il software libero, tanto che strumenti, processi e metodi ispirati all'open source vengono consistentemente adottati nel nucleo degli insegnamenti caratterizzanti del corso di studi.
Nell'ambito del progetto Diogene (http://www.db.unibas.it/users/mecca/diogene), finalizzato http://www.db.unibas.it/users/mecca/diogene
allo sviluppo e alla sperimentazione di strumenti innovativi per la didattica dell'informatica, negli ultimi anni sono stati avviati 5 diversi progetti open source, che riguardano sia lo sviluppo di strumenti software per la didattica, sia lo sviluppo di materiale didattico per l'insegnamento.
In questo articolo, vengono descritte alcune esperienze condotte nell'ambito di queste sperimentazioni. Tra le esperienze di successo, l'articolo si sofferma sullo sviluppo del framework didattico open source ping (http://www.db.unibas.it/users/mecca/diogene/ping). http://www.db.unibas.it/users/mecca/diogene/ping
Il framework è stato sviluppato nell'ambito dell'insegnamento avanzato di Programmazione Orientata agli Oggetti. Uno degli obiettivi didattici dell'insegnamento è consentire agli studenti di sperimentare la programmazione di applicazioni desktop in Java con un'architettura di tipo Modello­Vista­Controllo e una libreria per il binding automatico tra componenti della vista e del modello. Non essendo disponibili all'epoca librerie Java che fornissero entrambe le funzionalità e che fossero sufficientemente semplici per essere adottate efficacemente in un corso universitario, nel corso dell'edizione 2005­2006 del corso è stato avviato un progetto per lo sviluppo ex­
novo di un framework didattico per la programmazione MVC e il binding automatico. Il progetto è stato condotto da un gruppo di lavoro composto da docenti e studenti. L'obiettivo dichiarato del progetto era sviluppare una libreria sufficientemente robusta da poter essere usata anche in applicazioni industriali (e, tra l'altro, nelle prove pratiche d'esame a fine corso). In particolare: (a) la base di codice iniziale è stata creata e pubblicata con licenza GPL dal docente del corso; (b) per lo sviluppo è stata adottata una metodologia agile basata su test di regressione e cicli di rilascio continuo; (c) un gruppo di studenti, reclutati su base volontaria, ha condotto una fase estensiva di beta­test, che ha consentito di identificare ed eliminare numerosi bug, passando rapidamente dallo stato di rilascio alpha ad una versione 1.0. La versione 1.0 è stata utilizzata per lo sviluppo di varie applicazioni attualmente in produzione, ed è tuttora utilizzata con successo nelle verifiche d'esame.
L'articolo racconta le lezioni apprese nel corso di questa esperienza e delle esperienze collegate. In particolare, si sofferma sulle opportunità che i metodi e gli strumenti dell'open source possono rappresentare per la didattica universitaria dell'informatica. Discute inoltre varie esperienze con licenze open source alternative alla licenza GPL (in particolare le licenze della famiglia Creative Commons), cercando di metterne in luce limiti e vantaggi.
2