Il ritmo in rapida accelerazione del cambiamento tecnologico e il desiderio di ottenere un vantaggio competitivo stanno costringendo un numero crescente di organizzazioni a rivalutare l’approccio convenzionale consistente semplicemente nel destinare risorse a vari progetti e sfide aziendali.
Sviluppo agile che pone lo sviluppo software in primo piano concentrandosi su una collaborazione più ampia e profonda insieme a un approccio più iterativo è emersa come una strategia aziendale e IT chiave. Un numero crescente di organizzazioni sta adottando questa metodologia per rispondere alla necessità di cicli di rilascio più frequenti e di software di qualità superiore.
Tuttavia, lo sviluppo agile è complesso e complicato. Di conseguenza, molte organizzazioni hanno difficoltà con questo concetto. Ecco l'essenza di base delle cose-
- Individui e interazioni su processi e strumenti
- Software funzionante su documentazione completa
- Collaborazione con il cliente nella negoziazione del contratto
- Rispondere al cambiamento seguendo un piano
Metodi agili
La scelta di una metodologia di sviluppo software agile adeguata è il secondo pilastro di un progetto agile di successo. Molti metodi agili si sono evoluti nel corso di molti anni. Alcuni popolari sono Scrum, Feature Driven Development (FDD) e Dynamic System Development Model (DSDM), tra gli altri.
Mischia:
Scrum è un approccio popolare per la collaborazione del team e lo sviluppo del prodotto. Scrum consente la creazione di team auto-organizzati incoraggiando la comunicazione faccia a faccia tra tutti i membri del team coinvolti nel progetto. Un progetto Scrum è facilitato da uno Scrum Master il cui obiettivo principale è rimuovere gli ostacoli per il team invece di “tenerli per mano”. Il lavoro viene svolto in brevi sprint (iterazioni) di meno di 4 settimane.
FDD:
Jeff De Luca e Peter Coad hanno creato il metodo Feature Driven Development. FDD è un processo semplice ma ben definito che evita i costi generali del processo. Inoltre, è logico e il valore è immediatamente evidente per ogni membro del team.
DSDM:
DSDM ha la particolarità unica di disporre della formazione e della documentazione meglio supportate tra tutte le tecniche di sviluppo software agile. La filosofia alla base di DSDM è che nulla viene costruito perfettamente la prima volta. DSDM lo riconosce sviluppo software è uno sforzo esplorativo in cui la chiarezza emerge maggiormente durante la fase di sviluppo del progetto. DSDM sostiene il coinvolgimento attivo degli utenti e team responsabilizzati.
È interessante notare che tutti e tre questi metodi agili non menzionano specificamente le pratiche di ingegneria del software richieste per lo sviluppo del software. Sfortunatamente, molti progetti software che abbracciano l’agile sembrano seguire le regole e seguire i framework senza rendersi conto che sono solo una luce guida e non un manuale di processo. In questo senso, si tratta probabilmente solo di strutture e non di metodologie vere e proprie. Trascurare l’aspetto ingegneristico nei progetti agili è una ricetta sicura per il fallimento.
Mettiti in contatto con noi.