Metodi Sperimentali per
la Produzione del Software:
Presentazione del corso
A.A. 2015- 2016
Prof. Giuseppe Visaggio
Obiettivi Didattici Primari
Presentazione del corso
Alta Formazione: generalità
 Declaratoria.
 Data una tecnologia comprenderla per prendere decisioni, quali:
 Quando è opportuno usarla;
 Perché è opportuno usarla.
 Più specificatamente: la costituzione di conoscenze ed abilità per
 Comprendere gli effetti apportati in un processo o in un prodotto,
da una nuova tecnologia;
 Validare l’efficacia di una tecnologia nel realizzare gli effetti migliorativi
attesi.
 Tecnologia è un metodo, una tecnica, una pratica o uno strumento,
derivati da un insieme di conoscenze, anche multidisciplinari,
opportunamente integrate, usabili in un processo produttivo per
aumentare il suo valore.
 I valori che costituiscono gli effetti apportati dalla tecnologia al
processo o al prodotto e che possono essere considerati sono di
diverso tipo:



Economico;
Strategico – Competitivo;
Sociale.
Presentazione del corso
Contenuti di questo corso
Ingegneria del Software basata sulla
Evidenza Empirica (Evidence Based
Software Engineering-EBSE).



Metodi;
Strumenti;
Applicazioni.
4
Presentazione del corso
Proposito di EBSE
Migliorare il processo decisionale relativo
alla produzione ed alla manutenzione del
software attraverso:


La raccolta e la valutazione dei risultati degli
studi di ricerca che hanno la migliore evidenza
empirica;
La esperienza validata empiricamente nelle
applicazioni pratiche.
5
Presentazione del corso
Motivazione per insegnare EBSE
 L’industria del software ha benefici di efficacia,
efficienza e riduzione di sprechi se si muove secondo
l’EBSE.
 Gli studenti che hanno una buona formazione in EBSE


Sapranno affrontare meglio, nella loro vita professionale, gli
arbitrati tra differenti decisioni conflittuali.
Sapranno esaminare meglio i risultati di ricerca pubblicati.
 La conoscenza e le competenze su una tecnologia
diventano subito obsolete; perciò, gli studenti devono
saper acquisire nuove tecnologie valutandone la reale
rilevanza.
 L’industria software è piena di montature: tecnologie
software che hanno poco valore innovativo ma che
sono ben comunicate. Gli studenti devono imparare a
riconoscerle per individuarle durante la sua vita
professionale, per prendere decisioni accurate.
6
Presentazione del corso
Utilità della disciplina
7
Presentazione del corso
Scenario di riferimento
 Comunità scientifica ed industriale hanno crescente necessità di
contribuire al progresso delle discipline informatiche attraverso il
metodo scientifico.
 Il progresso di ogni disciplina richiede il continuo monitoraggio
dell’attuale comprensione dei suoi domini di conoscenza per
verificare se e come si può evolvere.
 Nelle discipline informatiche , attualmente, c’è sbilanciamento tra
valutazione dei risultati sperimentali e sviluppo di nuove
tecnologie non verificate sperimentalmente, a sfavore della prima.
 Lo sbilanciamento impedisce alle discipline informatiche di
divenire discipline scientifiche.
 Spesso si sono introdotte e si introducono nuove tecnologie sulla
base di



tendenze di mercato;
obiettivi economici dei fornitori di tecnologie informatiche che dominano il
mercato;
convinzione dei tecnologi piuttosto che su risultati scientifici.
 Tutto ciò rischia di creare disastri economici e sociali.
‘8
Presentazione del corso
Uso delle indagini empiriche
 Nella ricerca


Sviluppo scientifico.
Potenziamento delle competenze dei ricercatori:
 Individuazione degli aspetti di verifica e validazione da rafforzare nelle proprie
aree di ricerca;
 Rafforzamento della verifica e validazione di risultati di ricerca per rendere più
probabile il loro trasferimento nei processi industriali, ovvero nel trasformarli in
tecnologie,
 Estrazione di conoscenza dalle applicazioni industriali per comprendere su quali
aspetti estendere la propria ricerca ;
 Generalizzazione delle conoscenze acquisita con le indagini empiriche per
alimentare la Base delle Esperienze empiriche ;
 Sviluppo di nuove competenze per il trasferimento dei metodi in tecnologie.
 Nell’ industria




Acquisizione di nuove tecnologie o trasformazione di risultati di ricerca in
tecnologie con un’affidabile bilancio costo - benefici.
Sviluppo delle innovazioni e delle capacità di impresa.
Rafforzamento delle competenze degli sviluppatori attraverso la
partecipazione alle indagini empiriche durante il trasferimento tecnologico.
Sviluppo delle competenze degli sviluppatori attraverso il trasferimento
tecnologico.
9
Presentazione del corso
I Supporti di EBSE ai ricercatori e praticanti
 Assicurare che la ricerca di uno o di un
gruppo di ricercatori sia guidata dai bisogni
dell’industria e di altri portatori di interesse.
 Supportare i praticanti dell’industria nel
prendere decisioni razionali circa le tecnologie
da adottare.
 Migliorare la dipendibilità dei sistemi software
intensivi a seguito di una migliore scelta delle
tecnologie di sviluppo.
 Aumentare la accettabilità di sistemi software
intensivi che interagiscono con individui.
 Facilitare la certificazione dei processi, dei
prodotti e dei servizi.
10
Obiettivi collaterali: contributo
Presentazione del corso
Incentivare il Pensare Informatico
Declaratoria. Il “pensare informatico” è
l’insieme di concetti e relative pratiche che
un informatico acquisisce nel proprio
dominio di conoscenza e che possono
essere efficaci in altri domini di
conoscenze e di problemi.
Motivazioni. Soddisfare la richiesta di
competenze che possano contribuire ad
aumentare il valore dei processi di
business in ogni settore produttivo.
12
Presentazione del corso
… Valore del “pensare informatico”…
 Pratiche intellettuali:






Confidenza nel trattare la complessità, i sistemi software
raggiungono comunemente un livello di complessità molto
elevato rispetto ai problemi comunemente trattati dalle altre
ingegnerie;
Perseveranza nell’affrontare problemi difficili, fino alla loro
soluzione;
Tolleranza per l’ambiguità, questa deve essere conciliata con il
necessario rigore per assicurare la correttezza della soluzione;
Abilità nel trattare problemi non deterministici;
Abilità nel trattare problemi con un misto di aspetti umani e
tecnici curandone la dimensione umana, bisogni degli utenti,
qualità dell’interfaccia utente …;
Abilità nel lavorare e comunicare con altri professionisti per
raggiungere obiettivi comuni.
13
Presentazione del corso
… Valore del “pensare informatico”
 Pratiche operative:




Creatività, molti modi per risolvere uno stesso problema,
spesso da inventare perché non ne esiste uno già noto;
Abitudine alla costruzione, gli informatici producono
“cose”, anche se immateriali, di notevole complessità;
Capacità di dominare la complessità, nell’informatica si
risolvono problemi complessi o se ne supporta la
soluzione di quelli che sono considerati irrisolvibili in
altre aree;
Consuetudine al ragionamento rigoroso, scrivere
programmi funzionanti richiede precisione e rigore.
14
Presentazione del corso
Contenuti del corso
15
Presentazione del corso
Scopo
 Conoscenze:
 Caratteristiche degli studi empirici quantitativi,
 Processi per la progettazione ed esecuzione
degli studi empirici;
 Estrazione di conoscenze ed esperienze circa
l’usabilità di una tecnologia attraverso i risultati
degli studi empirici.
 Abilità:
 Progettare, pianificare ed eseguire indagini
empiriche;
 Eseguire analisi sistematiche dei risultati di
studi empirici;
 Produzione e gestione di un pacchetto di
conoscenza ed esperienza per il trasferimento
tecnologico.
Presentazione del corso
Nota sullo scopo
Il corso si focalizza sulle tecnologie della
Ingegneria del Software, ma le
conoscenze acquisite sono trasferibili a
tutte le altre discipline informatiche.
17
Presentazione del corso
Prerequisiti del Corso
 Principi di produzione e manutenzione del
software.
 Tecnologie di base per la produzione e la
manutenzione del software.
 Principi di statistica.
Presentazione del corso
Argomenti
 Studi empirici per estrarre esperienza utile nelle decisioni di
innovazione di processi e di prodotti




Tipi di studi empirici, loro caratteristiche e loro utilizzabilità.
Processo di realizzazione di indagini empiriche, dalla definizione del quesito
di ricerca alla presentazione dei risultati; disegno di esperimenti;
valutazione delle minacce alla validità; test delle ipotesi.
Replica delle indagini empiriche e famiglie di esperimenti.
Framework per la definizione di una teoria a supporto degli studi empirici.
 Metodi e strumenti per formalizzare e diffondere la conoscenza



Paradigma per migliorare la qualità degli studi empirici: modello di indagine
e processo di miglioramento.
Analisi sistematica dello stato dell’arte e della pratica
Fabbrica delle esperienze.
 Innovazione tecnologica


Innovazione di prodotto e di processo.
Processo per l’innovazione tecnologica: rapporto tra ricerca e sviluppo
industriale.
19
Presentazione del corso
Aspetti rilevanti
Il corso tratterà di indagini quantitative,
saranno solo accennate quelle qualitative.
Il corso curerà tutti gli aspetti inerenti le
indagini uomo-centriche che hanno molti
più problemi delle indagini incentrate sulle
tecnologie e sono più utili per le discipline
informatiche.
20
Presentazione del corso
Materiale didattico
21
Presentazione del corso
Materiale fornito
 Dispense in via di produzione, utilizzabile
come libro di testo di base per il corso:


Saranno integrate in sincronia con l’esecuzione del
corso;
Potranno essere modificate durante il corso anche
per capitoli già discussi.
 Le slides proiettate a lezione, utilizzabili solo
come guida degli argomenti esposti dal
docente.
 Tutti i questionari utilizzati durante
quest’anno accademico e negli anni
precedenti per gli esami.
22
Presentazione del corso
Note sul materiale didattico
Gli studenti, con spirito di partecipazione,
sono invitati ad operare anche come
verificatori della versione in bozza, quindi,
a fornire al docente tutte le loro
osservazioni sulla chiarezza del libro ed
anche su eventuali difetti riscontrati.
Per eventuali approfondimenti degli
argomenti trattati nelle dispense, si può
fare riferimento alla letteratura in
bibliografia, seguendo le note riportate nel
testo delle dispense stesse.
23
Presentazione del corso
Partecipazione attiva e Incentivi alla
frequenza
24
Presentazione del corso
Partecipazione attiva - Previsioni
 1 Project Work, con scadenze assegnate nelle lezioni
in cui avviene la partenza di ogni fase:


I fase - Mapping study.
II Fase - Systematic Review su uno degli aspetti evidenziati
nella I fase.
 In entrambi le fasi gli elaborati, selezionati dal
docente, saranno discussi in aula, per rafforzare la
loro ricaduta didattica.

Se lo studente non è all’altezza di difendere l’elaborato, o è
assente quando si deve discutere il suo elaborato, questo è
annullato.
 4 questionari, previsti, per la verifica in itinere su vari
argomenti del corso. Date non pianificate.
 1 Esperimento controllato, previsto, da eseguire in
aula. Il piano dell’esperimento sarà concordato a
lezione.
25
Presentazione del corso
Incentivi alla frequenza
 Non si prendono le firme di frequenza.
 Il Project Work consegnato con le scadenze
assegnate a lezione avrà una Premialità da 0 a 4,
secondo la qualità dei risultati prodotti valutati
unilateralmente dal docente.
 Per essere considerato frequentante uno studente
deve consegnare tutti i questionari, o almeno
tutti meno un questionario.

Gli studenti frequentanti hanno diritto ad accedere alla
prova finale del corso che sarà considerata esame. Il
voto della prova finale + premialità = voto dell’esame.
 Premialità e voto della prova finale saranno validi
per tutti gli appelli della prima sessione (3 appelli
nei mesi di Gennaio e Febbraio), come indicati sul
Manifesto.
26
Presentazione del corso
Esame
27
Presentazione del corso
Processo per l’esame
 Frequentanti che non hanno superato la prova finale o
non hanno accettato il voto della stessa prova. Fanno
l’esame

voto della prova orale + premialità = voto dell’esame
 Gli studenti che non hanno consegnato gli elaborati
del Project Work alla scadenza e i non frequentanti o
che pur essendo frequentanti sostengono gi esami
fuori dalla prima sessione:




Producono gli elaborati del Project Work, se non li hanno
già consegnati;
Consegnano al docente gli elaborati nella “data prova
scritta” e prendono un voto del progetto;
Fanno la prova orale nella “data della prova orale” e
prendono il voto della prova orale;
Media del “voto del progetto” con il “voto della prova orale”
= Voto dell’esame.
28
Presentazione del corso
Svolgimento dell’esame
 La prova scritta consiste in:



Presentazione degli elaborati da parte dello studente;
Discussione degli elaborati, condotta dal docente, a
durante la prova orale;
Assegnazione del voto dello scritto dipendente dalla
capacità dello studente di difendere i contenuti degli
elaborati e dalla qualità ed approfondimento dei
contenuti.
 Prova orale

Secondo il numero di studenti che si presentano
all’appello la prova orale consisterà
 In un questionario a domande aperte
 In un colloquio con il docente in cui allo studente saranno
sottoposti quesiti analoghi a quelli dei questionari.
29
Presentazione del corso
Servizi agli Studenti
30
Presentazione del corso
Chiarimenti e spiegazioni
La porta del mio ufficio è sempre aperta,
compatibilmente con gli impegni che mi
allontanano dall’ufficio. Pertanto:


Ricevo tutti giorni che sono in ufficio,
indipendentemente dal giorno di ricevimento
ufficiale;
Quando arrivano, gli studenti avranno la
pazienza di attendere che io sbrighi eventuali
impegni istituzionali urgenti per cui potrei
essere impegnato.
31
Presentazione del corso
Posta elettronica: buone pratiche di uso
 Cancello sistematicamente le mail che:

Non hanno un indirizzo mittente “professionale”;
Non hanno un oggetto;
Non hanno un oggetto che sia consistente con una della attività che io svolgo.

Non sono firmate da uno studente riconoscibile da me.


 Non rispondo alle mail che:
 Le mail servono a fare domande a cui si risponde brevemente; pertanto non
rispondo a:


Mail “lunghe” che, quindi, hanno distribuito la domanda su un lungo ragionamento, in
genere risultano anche noiose o hanno raccolto più domande;
Mail che chiedono spiegazioni.
 Non sono un funzionario di segreteria; quindi, non rispondo a mail che vogliono
sapere:





Le date degli esami o di prenotazione degli esami;
Le date di inizio delle lezioni;
La data in cui sarà approvata una richiesta che lo studente ha inoltrato al CICSI o al
Dipartimento;
Le modalità per risolvere uno dei tanti problemi curriculari dello studente scrivente;
Quant’altro è reperibile su fonti di informazioni pubbliche di cui uno studente deve
conoscerne l’esistenza e deve saper consultare.
32
Distribuzione del materiale didattico
in formato digitale
Presentazione del corso
Processo fruizione corso
1. Registrazione alla piattaforma

Serve per avere la possibilità di accedere al
materiale didattico dei corsi gestiti. La
registrazione non ha vincoli e può eseguita in
autonomia.
2. Richiesta iscrizione al corso

Serve per ottenere l’accesso ad un corso specifico.
La procedura necessità di approvazione da parte
del docente.
3. Fruizione materiale didattico

Serve per visionare i contenuti. La fruizione non
ha vincoli e può eseguita in autonomia.
34
Presentazione del corso
Registrazione alla piattaforma …
La fase di registrazione può essere saltata se
per altri esami ci si è iscritti alla piattaforma
 Accedere, utilizzando un browser, alla
schermata di avvio della piattaforma

URL: http://serlab13.di.uniba.it/learning
Presentazione del corso
… Registrazione alla piattaforma …
Avviare la fase di registrazione utilizzando
il pulsante [Registra/Register]
36
Presentazione del corso
… Registrazione alla
piattaforma …
Compilare i campi
contenuti nella scheda
di registrazione e
successivamente
premere il tasto
[Invio/Submit]
37
Presentazione del corso
… Registrazione alla piattaforma
Registrazione completata
38
Presentazione del corso
Richiesta iscrizione al corso …
Accedere, utilizzando un browser, alla
schermata di avvio della piattaforma

URL: http://serlab13.di.uniba.it/learning
39
Presentazione del corso
… Richiesta iscrizione al corso …
 Autenticarsi inserendo


La username scelta in fase di registrazione nel
campo [Nome Login/Login Name]
La password scelta in fase di registrazione nel
campo [Password]
Presentazione del corso
… Richiesta iscrizione al corso …
Accedere all’elenco dei corsi fruibili
utilizzando il link [Mostra corsi]
41
Presentazione del corso
… Richiesta iscrizione al corso …
Selezionare il corso a
cui ci si vuole
iscrivere

Metodi Sperimentali
per la Produzione del
Software 2015/2016
Selezionare il link
[Accedi al corso]
42
Presentazione del corso
… Richiesta iscrizione al corso …
Premere il pulsante [Richiesta di
Iscrizione]
Attendere l’approvazione di iscrizione.
Per avere l’approvazione è necessario che
il docente la autorizzi.

Per ricevere l’autorizzazione bisogna recarsi dal
docente con la certificazione dell’iscrizione al
corso ( per esempio il libretto di
riconoscimento).
43
Presentazione del corso
… Richiesta iscrizione al corso
Richiesta iscrizione al corso completata
44
Presentazione del corso
Fruizione materiale didattico …
È possibile visionare il materiale didattico
una volta eseguiti e completati i passi
precedenti


Registrazione
Richiesta iscrizione
Accedere, utilizzando un browser, alla
schermata di avvio della piattaforma

URL: http://serlab13.di.uniba.it/learning
Autenticarsi inserendo nei campi contenuti
nel riquadro [Login]
45
Presentazione del corso
Fruizione materiale didattico
Selezionare il corso ed utilizzare l’albero di
navigazione dei contenuti a destra della
pagina.
Scarica

Presentazione del corso