Modello Agile - P.M. Consulting

Cerca
Vai ai contenuti

Menu principale:

Spazio P.M. > Pratiche di Project Mgmt > Metodi di Sviluppo SW


Sviluppo SW - Modello "Agile"



La sempre crescente pressione cui è sottoposto il mondo dell'"Information Technology", con la necessità di produrre in tempi sempre più ridotti risultati che possano migliorare la competitività, anche in presenza di budget decrescenti, ha favorito lo sviluppo, a partire dalla fine del XX secolo, di metodologie capaci di indirizzare le esigenze di un cambiamento rapido senza per questo rinunciare alla qualità del risultato.

Queste metodologie si richiamano ai principi definiti dalla cosiddetta "Agile Alliance" un gruppo di sviluppatori che nel 2001 ha pubblicato l'"Agile Manifesto", un insieme di valori, principi e pratiche per la modellazione del software secondo criteri di maggior flessibilità rispetto ai metodi di sviluppo tradizionali.


METODI "AGILE"


Agile Unified Process

Si tratta di una versione semplificata dell'IBM Rational Unified Process (RUP). Descrive un approccio semplice per lo sviluppo di software applicativo utilizzando tecniche agili e concetti propri del RUP.


Leggi tutto



Dynamic System Development Process

Si tratta di un metodo basato sul Rapid Application Development. Si tratta di un approccio iterativo e incrementale che enfatizza il continuo coinvolgimento di utenti e cliente.

E' focalizzato su progetti di sviluppo di sistemi informativi caratterizzati da schedulazioni e budget ridotti e indirizza le più comuni cause di fallimento di un progetto, come il superamento del budget, il mancato rispetto delle date di consegna, il mancato coinvolgimento degli utenti finali e del top management.

Il suo obiettivo è di consegnare progetti nei tempi ed entro i costi previsti adattando le modifiche ai requisiti in corso d'opera.


Leggi tutto


I principi sottostanti al Manifesto Agile


1.  La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua.

2.  Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo.

3.  I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente.

4.  Consegniamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi.

5.  Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto.

6.  Fondiamo i progetti su individui motivati. Diamo loro l'ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine.

7.  Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all'interno del team.

8.  Il software funzionante è il principale metro di misura di progresso. I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitamente un ritmo costante.

9.  La continua attenzione all'eccellenza tecnica e alla buona progettazione esaltano l'agilità.

10.  La semplicità - l'arte di massimizzare la quantità di lavoro non svolto - è essenziale.

11.  Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano.


12.  A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.

L'utilizzo di questo approccio rispetto ai processi più tradizionali di sviluppo (a cascata o iterativi) risulta più idoneo per progetti di dimensioni medio-piccole, con gruppi di lavoro non superiori alle 8-10 persone. Gruppi più grandi rischiano infatti di non riuscire ad applicare con efficacia le discipline collaborative previste dal modello Agile.


XTreme Programming

Extreme Programming (XP) è una disciplina che organizza i gruppi di lavoro verso la produzione di software di alta qualità in modo più produttivo che con metodi tradizionali. XP cerca di ridurre i costi delle modifiche ai requisiti decomponendo le attività di sviluppo in molti cicli brevi piuttosto che in un unico lungo ciclo.


Leggi tutto



Feature Driven Development

Un processo di sviluppo software iterativo ed incrementale che miscela una serie di buone pratiche in un insieme coeso. Queste pratiche sono orientate allo sviluppo di funzionalità nel rispetto delle esigenze del cliente, suddividendo l'attività di sviluppo in singole componenti (Feature) che procedono parallelamente.


Leggi tutto



Scrum

Un framework iterativo e incrementale per la gestione di progetti, inizialmente ideato per progetti di sviluppo prodotti e successivamente utilizzato per progetti di tipo Agile.


Leggi tutto

P.M. Consulting s.a.s. di Donato Dolini & C. | chi siamo | dove siamo | contattaci

 
Torna ai contenuti | Torna al menu