Sviluppo Agile: Iterativo e Incrementale
Il Gennaio 8, 2022 da adminLa combinazione dei due approcci: iterativo e incrementale è stata a lungo suggerita per grandi sforzi di sviluppo. Attraverso cicli ripetuti (iterativo) e porzioni più piccole e semplici del software da sviluppare alla volta (incrementale), permettendo agli sviluppatori di software di trarre vantaggio da ciò che è stato appreso durante lo sviluppo di parti o versioni precedenti del sistema. L’apprendimento proviene sia dallo sviluppo che dall’uso del sistema, dove possibili passi chiave nel processo iniziano con una semplice implementazione di un sottoinsieme dei requisiti del sistema e migliorano iterativamente le versioni più grandi (o più complesse) in evoluzione fino a quando il sistema completo è implementato. Ad ogni iterazione, vengono apportate modifiche al design e vengono aggiunte nuove capacità funzionali.
Che cos’è il processo di sviluppo incrementale?
Un processo di sviluppo incrementale funziona sulla base del fatto che il lavoro viene suddiviso in pezzi (incrementi). Ogni incremento costruisce su ciò che è stato fatto prima. Così, moduli di funzionalità completamente funzionanti sono costruiti nel tempo, con ogni aggiunta a ciò che è già stato prodotto. Lo sviluppo iterativo è il processo di ripetere e raffinare un ciclo/modo di lavorare (un’iterazione).
Che cos’è il processo di sviluppo iterativo?
L’iterazione comporta la riprogettazione e l’implementazione dell’iterazione devono essere semplici, dirette e modulari, sostenendo la riprogettazione in quella fase o come un compito aggiunto alla lista di controllo del progetto. Il livello di dettaglio della progettazione non è dettato dall’approccio iterativo. In un progetto iterativo leggero, il codice può rappresentare la principale fonte di documentazione del sistema; tuttavia, in un progetto iterativo critico, può essere usato un documento formale di Software Design. L’analisi di un’iterazione si basa sul feedback dell’utente e sulle strutture di analisi del programma disponibili. Comporta l’analisi della struttura, modularità, usabilità, affidabilità, efficienza, & raggiungimento degli obiettivi. L’elenco di controllo del progetto viene modificato alla luce dei risultati dell’analisi.
Perché l’approccio Agile è sia iterativo che incrementale?
L’approccio Agile incorpora la filosofia dello sviluppo software iterativo e incrementale che è modellato intorno ad un graduale aumento delle aggiunte di caratteristiche e un modello ciclico di rilascio e aggiornamento. Il risultato dell’iterazione successiva è un incremento di lavoro migliorato del prodotto. Questo viene ripetuto fino a quando il prodotto realizza le funzionalità richieste.
Lo sviluppo agile come Scrum, comporta una serie di brevi cicli di sviluppo iterativo (1-4 settimane), e continue demo del software funzionante, feedback degli utenti, revisione e l’aggiunta incrementale di caratteristiche alla fine e tra le iterazioni come mostrato nella figura seguente:
Come detto da Mike Cohn, “Scrum e agile sono sia incrementali che iterativi. Sono iterativi in quanto prevedono che il lavoro di un’iterazione sia migliorato nelle iterazioni successive. Sono incrementali perché il lavoro completato viene consegnato durante il progetto.”
Agile con Visual Paradigm
Visual Paradigm fornisce un ricco set di strumenti agili che aiutano i team di progetto a pianificare e gestire i loro progetti. Diamo un’occhiata ad alcune di queste caratteristiche.
User Story Map
User story mapping fornisce un approccio visivamente strutturato per i team di scrum per gestire il product backlog. La visual story map permette la disposizione della dorsale del prodotto, dei compiti utente, delle epiche e delle storie utente in modo efficace in una struttura top-down gestibile, basata sulla natura, priorità e livello di sofisticazione degli elementi della mappa.
Strumenti di processo
Scrum Process Canvas
Seamlessly naviga l’intero processo di scrum in un singolo, bellissimo scrum process canvas. Esegui le attività di scrum rapidamente, facilmente e senza soluzione di continuità. Mantieni l’intero team completamente coinvolto. Scrum Process Canvas rende i progetti agili semplici ed efficaci.
Large-Scale Scrum Canvas
Large-Scale Scrum Canvas è uno strumento di scrum costruito per ogni team di scrum per pianificare, tracciare e gestire progetti di scrum attraverso un canvas visivo intuitivo. Sia che il tuo progetto software coinvolga un singolo team o più team in tutto il mondo, teniamo tutti sulla stessa pagina, lo stesso canvas.
Nexus Canvas
Nexus Canvas è una mappa di elementi di lavoro attivabili Nexus. Aiuta a migliorare l’efficienza del progetto per la consegna del prodotto con il framework Nexus.
Lascia un commento