Un esperimento di programmazione estrema Una nuova metodologia di programmazione Tesi di Marco Tamanti 6/12/2000 Nuove esigenze Internet Globalizzazione Tempi ristretti Specifiche dinamiche Rapida evoluzione 6/12/2000 Il costo delle modifiche Proibito modificare i piani 6/12/2000 Il cambiamento è la norma Nuovi strumenti Processori veloci e costi dell’hardware ridotti Ambienti di sviluppo integrati Programmazione OO, modulare Database relazionali ad oggetti Insieme di tecniche che XP introduce 6/12/2000 I valori Buon senso Semplicità Comunicazione Retroazione Coraggio 6/12/2000 Il codice L’uomo Le tecniche Utente sempre presente Veloce pianificazione 40 ore settimanali Semplici obiettivi La metafora Ristrutturazione del codice Piccoli cicli produttivi Test automatici Proprietà collettiva 6/12/2000 Programmazione in coppia Regole standard di codifica Continua integrazione Pratiche isolate Test automatici – – – – – Qualità del codice Sicurezza personale Correzioni singole Adesione alle specifiche Ridotti test pre-release Programmazione in coppia – – – – – Qualità del codice Sicurezza personale Meno errori Comunicazione … 160 Tempo 140 120 Individuali 100 80 In coppia 60 Totale in coppia 40 20 0 1° Prog. 2° Prog. 3° Prog. 100 90 Qualità 80 70 60 50 Individuali In coppia 40 30 20 10 0 6/12/2000 1° Prog. 2° Prog. 3° Prog. 4° Prog. XP non è per tutti XP non può funzionare quando il manager: pretende specifiche complete dall’inizio richiede un lungo ciclo per assicurarsi della qualità prima di entrare in produzione XP non può funzionare se: Ciclo compilazione-testing è troppo lungo Gruppi con più di 10 persone Alcuni membri del gruppo non aderiscono a XP e non accettano le responsabilità 6/12/2000 Conclusioni XP è semplice, ma non è così semplice applicarla Rivoluzionaria Molti la criticano perché non ci sono risultati misurabili Difficile testare XP: bisognerebbe confrontare progetti identici www.egroups.com extremeprogramming Internet - aziende giovani - piccoli gruppi 6/12/2000 IbnDbTestingKit setUp test1 { doWork checkWork } tearDown 6/12/2000 dB