Progetto didattico
Motivazioni
Un corso di Ingegneria del Software sarebbe incompleto senza un progetto didattico: è bene che lo studente si scontri in prima persona con un progetto di gruppo che rispecchi la logica di relazione "cliente-fornitore". Nello specifico, le principali entità del progetto didattico sono:
- Il cliente o committente, cioè chi ha commissionato il prodotto; generalmente è un'azienda o una startup, che pubblica un capitolato d'appalto in cui viene spiegato qual è il prodotto da realizzare.
- Il fornitore, cioè chi si impegna a fornire il prodotto richiesto dal committente; è un gruppo di sei o sette studenti che scelgono di rispondere ad un particolare capitolato d'appalto. Il gruppo è un'entità coesa provvista di nome, logo e e-mail per le comunicazioni ufficiali.
- Il docente, che nel nostro caso funge da proponente; il docente verifica e valuta[1] l'andamento dei vari progetti.
Revisioni di avanzamento
Il progetto si estende nell'arco di uno o due semestri. Il docente potrebbe scegliere tra due approcci: l'approccio "chiavi in mano" (i gruppi sono lasciati liberi e il docente torna il giorno della consegna del prodotto); l'approccio per revisioni (più interattivo). L'approccio adottato è il secondo, molto più didattico. Quindi la principale modalità d'interazione tra gruppi e docente sono le revisioni di avanzamento, che sono quattro:
- Revisione dei Requisiti (RR);
- Revisione di Progettazione (RP);
- Revisione di Qualifica (RQ);
- Revisione di Accettazione (RA).
È importante notare che la logica sequenziale delle revisioni di avanzamento non implica che il modello di sviluppo scelto dai gruppi debba essere anch'esso sequenziale[2]!
Ricordiamo che ISO/IEC 12207 prevede due diversi tipi di processi di revisione: l'audit process e il joint review process. Alla prima classe appartengono le due revisioni esterne con effetto bloccante: RR e RA; alla seconda classe appartengono le due revisioni interne con valenza informativa: RP e RQ.
Documentazione
Tutto il progetto va documentato. In particolare, il fornitore deve documentare: le sue strategie di efficienza ed efficacia, nei documenti di strategia; le regole per attuare tali strategie, nelle Norme di Progetto. I documenti di strategia, che servono sia al fornitore sia al committente, sono:
- Il Piano di Progetto, che tratta delle strategie che il gruppo sceglie di adottare per essere efficiente; esso presenta l'organigramma dettagliato del fornitore, lo schema proposto per l'assegnazione e la rotazione dei ruoli di progetto, l'impegno complessivo previsto per ogni ruolo e per ogni individuo, e il conto economico preventivo di realizzazione del prodotto.
- Il Piano di Qualifica, che tratta dell'efficacia e garantisce che le attese verranno rispettate; esso illustra la strategia complessiva di verifica e validazione proposta dal fornitore.
Invece, le Norme di Progetto interessano solo il fornitore (e il docente) ma non il committente; esse servono a fissare il way of working.
In generale, i principali documenti del progetto didattico sono:
- Documenti gestionali:
- Studio di Fattibilità;
- Norme di Progetto;
- Piano di Progetto;
- Piano di Qualifica.
- Documenti tecnici:
- Analisi dei Requisiti;
- Specifica Tecnica;
- Definizione di Prodotto;
- Manuale Utente.
Possiamo suddividere i documenti anche tra interni (al gruppo) ed esterni. Documenti interni sono:
- Studio di Fattibilità;
- Norme di Progetto.
Documenti esterni sono:
- Piano di Progetto;
- Piano di Qualifica;
- Analisi dei Requisiti;
- Specifica Tecnica;
- Definizione di Prodotto;
- Manuale Utente.
Revisione dei Requisiti
Questa revisione ha la funzione di concordare con il cliente una visione condivisa del prodotto atteso. Tale visione è documentata nel documento di Analisi dei Requisiti, che studia i requisiti e i casi d'uso del prodotto da realizzare. I documenti valutati sono:
- Studio di Fattibilità;
- Norme di Progetto;
- Piano di Progetto;
- Piano di Qualifica;
- Analisi dei Requisiti.
Revisione di Progettazione
Questa revisione può avvenire in una (sola) delle seguenti modalità:
- Revisione di Progettazione minima;
- Revisione di Progettazione massima.
La RP minima riguarda l'architettura del sistema ad alto livello; essa ha la funzione di accertare la realizzabilità del prodotto. I documenti valutati sono:
- Norme di Progetto;
- Piano di Progetto;
- Piano di Qualifica;
- Specifica Tecnica.
La RP massima riguarda l'architettura di dettaglio del sistema; essa ha la funzione di accordarsi sulle caratteristiche del prodotto da realizzare. I documenti valutati sono:
- Norme di Progetto;
- Piano di Progetto;
- Piano di Qualifica;
- Definizione di Prodotto.
Revisione di Qualifica
Questa revisione ha la funzione di approvare l'esito finale delle verifiche e attivare quindi la validazione. I documenti valutati sono:
- Norme di Progetto;
- Piano di Progetto;
- Piano di Qualifica;
- Definizione di Prodotto;
- versione preliminare del Manuale Utente.
Revisione di Accettazione
Questa revisione ha la funzione di collaudare il sistema e di accertare il soddisfacimento di tutti i requisiti utente stabiliti nell'Analisi dei Requisiti. I documenti valutati sono le versioni definitive di:
- Piano di Progetto;
- Piano di Qualifica;
- Manuale Utente.
Ore di lavoro
Le ore di lavoro si contano solo dopo la valutazione della RR; fino a quel momento, il tempo speso è tempo d'investimento non rendicontato (eventualmente registrato, ma non rendicontato). Le ore totali impiegate a progetto da ciascuna persona sono circa 25-30 ore di lavoro; a questo proposito, è bene notare come l'efficienza è proporzionale al rapporto tra ore di lavoro e ore effettive. L'impegno totale di ore rendicontabili presentate a consuntivo da ogni componente di un gruppo dovrà situarsi fra un minimo di 85 e un massimo di 105 ore produttive. Le ore rendicontabili non includono le attività di auto-formazione.