La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright 2008 - The McGraw-Hill Compianies Srl 1 Principi di.

Presentazioni simili


Presentazione sul tema: "Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright 2008 - The McGraw-Hill Compianies Srl 1 Principi di."— Transcript della presentazione:

1 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 1 Principi di Ingegneria del Software - quinta edizione Capitolo 4 Sviluppo Agile I contenuti di questa presentazione sono stati realizzati a cura di M. Cerioli e G. Reggio utilizzando e integrando con contributi originali i materiali gentilmente concessi da R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005.

2 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 2 Manifesto for Agile Software Development Scopriamo modi migliori di sviluppare il software facendolo ed aiutando gli altri a farlo. Da queste esperienze, siamo giunti a privilegiare i seguenti elementi : Gli individui e le loro interazioni rispetto ai processi ed agli strumenti Gli individui e le loro interazioni rispetto ai processi ed agli strumenti Software funzionante rispetto ad unampia documentazione Software funzionante rispetto ad unampia documentazione La collaborazione col cliente rispetto alla negoziazione dei contratti La collaborazione col cliente rispetto alla negoziazione dei contratti La pronta risposta ai cambiamenti rispetto allesecuzione di un piano La pronta risposta ai cambiamenti rispetto allesecuzione di un piano Ovvero, anche se attribuiamo un valore agli elementi riportati a destra, riteniamo più importanti quelli a sinistra Kent Beck et al

3 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 3 Che cosè lAgilità? Reazione efficace (rapida e adattiva) ai cambiamenti Reazione efficace (rapida e adattiva) ai cambiamenti Comunicazione efficace fra tutti gli stakeholder Comunicazione efficace fra tutti gli stakeholder Assorbimento del cliente nel team di sviluppo Assorbimento del cliente nel team di sviluppo Organizzazione del team che lo ponga in diretto controllo del proprio lavoro Organizzazione del team che lo ponga in diretto controllo del proprio lavoro Producendo … Consegne incrementali e frequenti di software Consegne incrementali e frequenti di software

4 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 4 Processi agili Guidati dalle descrizione del cliente di che cosa gli serve (scenario) Guidati dalle descrizione del cliente di che cosa gli serve (scenario) Basati sullassunzione che i piani hanno vita breve Basati sullassunzione che i piani hanno vita breve Sviluppano software in maniera iterativa con forte enfasi sulle attività di costruzione Sviluppano software in maniera iterativa con forte enfasi sulle attività di costruzione Producono e consegnano molteplici incrementi software Producono e consegnano molteplici incrementi software Si adattano ai cambiamenti Si adattano ai cambiamenti

5 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 5 Extreme Programming (XP) Il più largamente adottato dei processi agili, proposto inizialmente da Kent Beck Il più largamente adottato dei processi agili, proposto inizialmente da Kent Beck Il planning in XP Il planning in XP Inizia con la creazione di varie user story Inizia con la creazione di varie user story Il team agile valuta ciascuna user story e le assegna un costo Il team agile valuta ciascuna user story e le assegna un costo Le varie user story sono raggruppate per determinare un incremento da consegnare in tempi brevi Le varie user story sono raggruppate per determinare un incremento da consegnare in tempi brevi Si stabilisce la data di consegna Si stabilisce la data di consegna Dopo il primo incremento la velocità del progetto viene usata per definire le date delle consegne successive Dopo il primo incremento la velocità del progetto viene usata per definire le date delle consegne successive

6 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 6 Extreme Programming (XP) Il design in XP Il design in XP Segue il principio KISS (Keep It Simple, Stupid!) Segue il principio KISS (Keep It Simple, Stupid!) Incoraggia luso di schede CRC (si veda il capitolo 10) Incoraggia luso di schede CRC (si veda il capitolo 10) Per problemi di design difficoltosi, suggerisce la creazione di spike solutions prototipi operativi per il design Per problemi di design difficoltosi, suggerisce la creazione di spike solutions prototipi operativi per il design Incoraggia il refactoring un raffinamento iterativo del design interno del programma Incoraggia il refactoring un raffinamento iterativo del design interno del programma La programmazione in XP La programmazione in XP Prevede la costruzione di unit test per le varie user story prima di iniziare a implementare il sistema Prevede la costruzione di unit test per le varie user story prima di iniziare a implementare il sistema Incoraggia il pair programming Incoraggia il pair programming Il Testing in XP Il Testing in XP Tutti gli unit test vengono eseguiti quotidianamente Tutti gli unit test vengono eseguiti quotidianamente Gli acceptance test sono definiti dal cliente ed eseguiti per verificare le funzionalità visibili al cliente Gli acceptance test sono definiti dal cliente ed eseguiti per verificare le funzionalità visibili al cliente

7 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 7 Extreme Programming (XP)

8 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 8 Sviluppo Adattivo di Software (ASD - Adaptive Software Development) Proposto originariamente da Jim Highsmith Proposto originariamente da Jim Highsmith ASD aspetti caratteristici ASD aspetti caratteristici Planning Mission-driven (guidato dalla mission del cliente) Planning Mission-driven (guidato dalla mission del cliente) Focus basato sulle componenti Focus basato sulle componenti I rischi sono esplicitamente presi in considerazione nel planning I rischi sono esplicitamente presi in considerazione nel planning Enfatizza la collaborazione per la raccolta dei requisiti Enfatizza la collaborazione per la raccolta dei requisiti Enfatizza lapprendimento durante tutto il processo Enfatizza lapprendimento durante tutto il processo

9 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 9 Adaptive Software Development

10 Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright The McGraw-Hill Compianies Srl 10 Il metodo DSDM (Dynamic Systems Development Method) Promosso e supportato dal DSDM Consortium (www.dsdm.org) Promosso e supportato dal DSDM Consortium (www.dsdm.org)www.dsdm.org DSDM aspetti caratteristici DSDM aspetti caratteristici Simile sotto molti aspetti a XP e/o ASD Simile sotto molti aspetti a XP e/o ASD Nove principi guida Nove principi guida Il coinvolgimento attivo degli utenti è indispensabile Il coinvolgimento attivo degli utenti è indispensabile Il team DSDM deve avere lautonomia per prendere decisioni Il team DSDM deve avere lautonomia per prendere decisioni Ci si focalizza su frequenti consegne incrementali Ci si focalizza su frequenti consegne incrementali La rispondenza agli scopi del business è il criterio essenziale per laccettazione dei prodotti intermedi La rispondenza agli scopi del business è il criterio essenziale per laccettazione dei prodotti intermedi Lo sviluppo iterativo ed incrementale è necessario per convergere su una soluzione accurata dal punto di vista del business Lo sviluppo iterativo ed incrementale è necessario per convergere su una soluzione accurata dal punto di vista del business Tutti i cambiamenti durante lo sviluppo devono essere reversibili Tutti i cambiamenti durante lo sviluppo devono essere reversibili I requisiti sono stabiliti ad un alto livello I requisiti sono stabiliti ad un alto livello Il testing è integrato durante tutto il ciclo di vita del progetto Il testing è integrato durante tutto il ciclo di vita del progetto Continua…


Scaricare ppt "Roger S. Pressman, Principi di Ingegneria del software, a cura di M. Cerioli e G. Reggio, Copyright 2008 - The McGraw-Hill Compianies Srl 1 Principi di."

Presentazioni simili


Annunci Google