Human-Computer Interaction - A.A. 2002/03 Un po' di background sui processi agili Fabio Vitali.

Slides:



Advertisements
Presentazioni simili
ARI sezione di Parma Sito ariparma ARI sezione di Parma.
Advertisements

6/12/2000 Un esperimento di programmazione estrema Una nuova metodologia di programmazione Tesi di Marco Tamanti.
Sistemi informativi e Sistemi informatici
CARDUCCI ALTRE SINGOLE OSSERVAZIONI GENERALI ALTRE OSSERVAZIONI SONO DIPONIBILI RELATIVAMENTE AD OGNI SINGOLA CLASSE.
Il Colloquio di lavoro Lecce, 31 gennaio 2012
I contenuti di questa presentazione sono stati realizzati a cura di M
15 aprile 2002 Modulo di Comunicazione Mirko Tavosanis
Processo software il processo.
Utilizzo di XP in ambienti distribuiti
IL GENIO DELLA PORTA ACCANTO.
16/17 Novembre 2007 Hotel de Ville,Avellino Il Governo clinico nel paziente cardiopatico cronico Franco Ingrillì Centro di riferimento Regionale per lo.
IL COLLOQUIO DI SELEZIONE
TW Analisi dei documenti n Classificazione dei componenti n Selezione dei componenti, costruzione della gerarchia, dei blocchi informativi e degli elementi.
Tecnologia Web Quest per l’apprendimento: [titolo]
Formazione sul campo: presentazione esperienze Pescara, 10 settembre 2012.
1 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dellutente? Introdurremo i concetti di verifica e validazione.
PROVINCIA DI LECCE – AGENZIA DI
La valutazione di impatto netto: alcune riflessioni a margine Gruppo Nazionale Placement Roma, 27 Febbraio 2013.
A. Martini Y* Y Y Siamo abituati a pensare che se 2 orologi sono sincronizzati quando sono fermi luno rispetto allaltro, lo saranno anche se uno dei.
Jidoka.
Progettazione dei Sistemi Interattivi (a.a. 2004/05) - Lezione 13 1 La Manipolazione Diretta Sensazione di interagire con un mondo di oggetti piuttosto.
C’è chi dice che quando le donne sono amiche, sono insopportabili...
XXV DOMENICA DEL TEMPO ORDINARIO ANNO C
Il Gruppo di Lavoro.
Restituzione questionario
Area gestione documentale
Raramente sei in ottima forma?
Parlare per farsi ascoltare
Recenti approcci gestionali: IL METODO TOYOTA.
Materiali didattici (D7)
Ancora tra sviluppo e apprendimento
Conclusioni Workshop n. 1: La progettazione e la dimensione europea Montecatini 11 ottobre 2006 a cura di:Gabriella Orlando (USR Abruzzo) Alexandra Tosi.
Canale Alfa Srl – Copyright 2013
Università degli Studi C. Bo – Urbino Scienze della Formazione Primaria.
Video rental management system
User stories Claudio Maccari Mail:
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 1 - Cicli di vita Ernesto Damiani Università degli Studi di Milano.
Ingegneria del software Modulo 4 -Processi software Unità didattica 2 -eXtreme Programming Ernesto Damiani Università degli Studi di Milano Lezione 3 –
Design Goals Definiamo le fondamenta dello sviluppo del sistema.
Lavori di gruppo sulla Mesopotamia
Welcome to…. Il mondo sta cambiando La crisi è la causa principale del cambiamento.
La matassa PROGETTO PER: Bambini età 4 anni Obiettivi:
MODELLI DI PROCESSO DI PRODUZIONE SOFTWARE
Scuola di Management per le Università, gli Enti di ricerca e le Istituzioni Scolastiche Lavorare per obiettivi di progetto IL CASO INTRANET-REGIONE Y.
Lezione 1 Panoramica sui paradigmi di programmazione
Automatismi Scacchistici
Marcella Mulazzani1 La qualità dei servizi pubblici locali e il Total quality management Appunti delle lezioni di: Marcella Mulazzani Dipartimento di Scienze.
LABORATORIO DI INFORMATICA Ingegneria Informatica a. a
Sistemi basati su conoscenza (agenti intelligenti) Prof. M.T. PAZIENZA a.a
Extreme Programming Genova, 29 Ottobre /06/20152 Cosa è XP? È una delle metodologie cosiddette agili per lo sviluppo di software. Le metodologie.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
1 Linguaggi: guardando la semantica §esistono un insieme di concetti semantici e di strutture di implementazione in termini dei quali si descrivono in.
Ingegneria del software Modulo 4 -Processi software Unità didattica 2 – eXtreme Programming Ernesto Damiani Università degli Studi di Milano Lezione 1.
PREGHIERA INIZIALE.
Ingegneria del software Modulo 2 -Il software come prodotto Unità didattica 2 - I costi del software Ernesto Damiani Università degli Studi di Milano Lezione.
Napoli che bella…….munnezzz!!!!
Francesco Maiorano PIST Peucetia: LA MAPPA DI COMUN ITA’
Ciascuno di noi ha, dunque, la sua storia...io vi racconto la mia...
DIT Department of Information and Communication Technology Information System Ingegneria del Software: un caso di studio.
Eprogram SIA V anno.
Sperimentazione Rete Innova Corso Metodologico: METACOGNIZIONE
Frasi d’amore da dedicare a tutte le persone che amate in ogni occasione By lolita.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 2 – Info B Marco D. Santambrogio – Matteo Ferroni –
UML Unified Modelling Language Linguaggio per la modellazione unificato.
La differenziazione del prodotto Davide Vannoni Corso di Economia Manageriale e Industriale a.a
A CHE GIOCO GIOCHIAMO? A cura di Adriana Rubagotti e Chiara Fracassi.
Dal problema al programma – ciclo di sviluppo del software La scrittura del programma è solo una delle fasi del processo di sviluppo di un'applicazione.
Gli strumenti di misura
Corso di comunicazione efficace Carlo Bosna
LE TECNOLOGIE PDM A SUPPORTO DELLO SVILUPPO DI NUOVI PRODOTTI Esame di Gestione dell’ innovazione e dei progetti L-S Chiar. mo Prof. Ing. Federico Munari.
Transcript della presentazione:

Human-Computer Interaction - A.A. 2002/03 Un po' di background sui processi agili Fabio Vitali

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Modelli di progettazione software Totale mancanza di regole, o processi ad hoc, o hack casuali e senza regole di qualcosa mai realmente progettato. Questa è la situazione standard in molte realtà aziendali. Tecniche heavy weight Gestione sistematica del processo attraverso l'uso di management delle attività di sviluppo, in una sequenza rigorosa e controllata di step successivi dalle interfacce chiare e dalle responsabilità ben definite. Ad esempio, Unified Process (UML) Techniche light weight: manipolazione controllata di soluzioni già funzionanti, in evoluzione continua e senza burocrazia di nessun tipo. Ad esempio, Extreme Programming.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 I processi heavy weight Step controllati e in sequenza Interfacce controllate e rigorose tra step diversi Chiara suddivisione di ruoli (progettisti, implementatori e tester) Scambio di informazioni attraverso documentazione rigorosa, estesa, controllata. Grande enfasi sulla documentazione di progetto Gestione del progetto controllata e predicibile.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 I processi light weight Soluzione people-oriented piuttosto che process-oriented. Enfasi su flessibilità e adattabilità piuttosto che su descrizioni sistematiche e rigorose. Processi per piccoli passi (evoluzioni successive) da un sistema funzionante ad un sistema funzionante Voluta commistione di fasi tra design, implementazione e testing. Team di programmatori snello, con pieno potere sul codice, si occupano della progettazione, dell'implementazione e del testing tutti insieme XP: Team di due persone davanti ad UNA tastiera: uno programma, l'altro suggerisce, critica, sta attento agli errori, pensa.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Ancora sui processi light-weight Cicli di rilascio molto corti (settimane o giorni) Implementazioni minimali senza abbellimenti Nessuno spreco di tempo per analisi e design, si inizia subito a programmare (analisi e design li si fanno per strada) Descrizione dei problemi in termini di piccoli pezzi distinti implementati in iterazioni successive Sviluppo di sistemi affidabili iniziando dal piccolo e procedendo per incrementi piccoli. Stretta comunicazione tra implementatori e clienti Test continuo e sistematico del risultato prodotto

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Vantaggi dei sistemi light-weight Poca zavorra, poca tara: tutto il tempo di lavoro è dedicato alla realizzazione della soluzione (uso sistematico di lavagne, post-it e cartoncini invece che voluminosi documenti di design) Risultati immediati: qualcosa di funzionante lo si vede fin dall'inizio del lavoro). Ogni iterazione produce un sistema funzionante. Ottima qualità del codice: riduzione radicale di bug di prima generazione e di ritorno Sorprendentemente di successo: le storie dell'orrore su XP sono di gran lunga minori di quelle di altri sistemi più pesanti.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Svantaggi dei sistemi light- weight Tutt'altro che nuovi (già negli anni sessanta esisteva la metodologia chiamata chief programmer team, usata con successo prima, e poi abbandonata, da IBM) Dipende fortemente dall'abilità del team (richiede buoni programmatori) e dalla capacità dei manager di entusiasmarli Non può scalare all'infinito come dimensioni di team (UP ha gestito progetti di centinaia di programmatori, XP si ferma a 12-15) … e dunque neanche come dimensioni del progetto (UP: decine di milioni di righe di codice, XP: centomila, massimo duecentomila righe). Non tutti gli sviluppi possono essere soddisfacentemente divisi in blocchi di release da giorni.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Infine Processi light-weight (o agili) sono molti, diversi e variegati Hanno pregi in comune: poca burocrazia, velocità, interesse al risultato funzionante e solido Hanno difetti: non è scalabile, richiede ottimi programmatori ben disciplinati e motivati, non è usabile in tutti i progetti. Infine: non esistono metodi light-weight che si occupano della realizzazione di sistemi usabili. Le interfacce sono aspetti completamente ignorati in tutti i metodi light.weight.

Human-Computer Interaction - A.A. 2002/03 Conclusioni del corso

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Il corso Non è fatto per imparare a pappagallo concetti o tecniche, ma per avere una visibilità sui problemi e le soluzioni cercate. Non siete pronti per gestire un progetto di usabilità (manca la conoscenza dettagliata e l'uso sistematico delle tecniche viste), ma sapete della loro esistenza. Sperabilmente, un giorno che vi doveste trovare nella situazione di organizzare la progettazione dell'interazione di un sistema, andrete a rileggervi (con diversa attenzione) questi testi e li userete in maniera appropriata e non affrettata.

Human-Computer Interaction - A.A. 2002/03 Fabio Vitali - IUM 1999/2000 Le mie valutazioni Io sono soddisfatto della vostra partecipazione al corso, sia nelle lezioni, sia nei progetti. Ovviamente, ho opinioni diverse su ciascuno di voi, che si rifletteranno nei voti. Ma saranno tutti alti (≥ 27). Ci vediamo il 15 gennaio 2003 alle ore 14:30 qui per la registrazione dei voti. Un voto in meno a chi arriva senza statino.