Qual è la differenza? Agile vs. Scrum vs. cascata vs. Kanban

Durante un progetto, dovrai prendere centinaia di decisioni. Una delle prime decisioni che prenderai è scegliere la corretta metodologia di project management da seguire.

Da Agile a Scrum, dal metodo a cascata a Kanban, sono disponibili diversi framework per la gestione dei progetti. Alcuni, come Scrum, seguono una metodologia più rigida e strutturata. Altri, come Kanban, sono più facili da introdurre e implementare nei processi esistenti. Hanno tutti dei pro e dei contro, quindi quale scegliere?

Questo articolo illustra le differenze tra Agile, Scrum, metodo a cascata e Kanban. Parleremo dei vantaggi, degli svantaggi, delle varie modalità e dei casi in cui è opportuno utilizzarle.

Metodologia Agile

Cosa è Agile?

Lo sviluppo di software Agile si basa su un approccio incrementale e iterativo. Rinunciando a una pianificazione approfondita all'inizio del progetto, le metodologie Agile sono aperte alla modifica dei requisiti nel tempo e incoraggiano un feedback costante da parte degli utenti finali. I team interfunzionali lavorano su iterazioni di un prodotto per un periodo di tempo e questo lavoro è organizzato in un backlog che è prioritario in base al valore del business o del cliente. L'obiettivo di ogni iterazione è di produrre un prodotto funzionante.

Nelle metodologie Agile, la leadership incoraggia il lavoro di squadra, la responsabilità e la comunicazione diretta e interpersonale. Gli stakeholder aziendali e gli sviluppatori devono collaborare insieme per allineare il prodotto alle esigenze dei clienti e agli obiettivi aziendali. 

Agile si riferisce a qualsiasi processo che si allinea ai concetti del Manifesto. Nel febbraio 2001, 17 sviluppatori di software si sono dati appuntamento nell'Utah per discutere i metodi di sviluppo più snelli. Hanno pubblicato il Manifesto for Agile Software Development, in cui esponevano i "modi migliori di sviluppare software facendo e aiutando gli altri a farlo". Inoltre, illustravano quattro valori fondamentali e 12 principi. L’Agile Manifesto si differenzia notevolmente dagli standard tradizionali e dalla classica Guide to the Project Management Body of Knowledge (PMBOK® Guide) .

Project Management Guide

Your one-stop shop for everything project management

the 101 guide to project management

Ready to get more out of your project management efforts? Visit our comprehensive project management guide for tips, best practices, and free resources to manage your work more effectively.

View the guide

I 12 principi della metodologia Agile

L’Agile Manifesto elenca 12 principi per guidare i team su come eseguire il lavoro con agilità. Eccone i principi:

  1. La nostra massima priorità è soddisfare il cliente attraverso la consegna tempestiva e continua di software di valore.
  2. Accogliamo con favore i requisiti mutevoli, anche in fase di sviluppo. I processi Agile sfruttano i cambiamenti per il vantaggio competitivo del cliente.
  3. Consegnare software funzionante frequentemente, entro due settimane fino a un paio di mesi, con preferenza per tempistiche più brevi.
  4. I responsabili aziendali e gli sviluppatori devono collaborare quotidianamente per tutta la durata del progetto.
  5. Costruire i progetti attorno a persone motivate. Fornisci loro l'ambiente e il supporto di cui hanno bisogno; accorda loro fiducia per portare a termine il lavoro.
  6. Il metodo più efficiente ed efficace per trasmettere informazioni a un team di sviluppo e al suo interno è la comunicazione faccia a faccia.
  7. Il software funzionante è la misura principale di progresso.
  8. I processi Agile favoriscono lo sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti devono essere in grado di mantenere un ritmo costante a tempo indeterminato.
  9. L'attenzione continua all'eccellenza tecnica e alla progettazione di qualità aumenta l'agilità.
  10. La semplicità, ovvero l'arte di massimizzare la quantità di lavoro non svolto, è essenziale.
  11. Le migliori architetture, requisiti e design emergono da team auto-gestiti.
  12. A intervalli regolari, il team riflette su come diventare più efficace, quindi mette a punto e regola il proprio comportamento di conseguenza. 

Vantaggi di Agile

Agile si è evoluto da diversi approcci più snelli di sviluppo software degli anni '90 ed è una risposta all'avversione di alcuni project manager per la metodologia Waterfall, rigida e lineare. Si basa su flessibilità, miglioramento continuo e velocità. 

Ecco alcuni dei principali vantaggi di Agile:

  • Accogliere il cambiamento: Con cicli di pianificazione più brevi, è facile integrare e accettare modifiche in qualsiasi momento durante il progetto. C'è sempre l'opportunità di perfezionare e ridefinire le priorità del backlog, consentendo ai team di introdurre modifiche al progetto nel giro di poche settimane.
     
  • L'obiettivo finale può essere sconosciuto: Agile è molto utile per i progetti in cui l'obiettivo finale non è chiaramente definito. Con l'avanzamento del progetto, gli obiettivi vengono alla luce e lo sviluppo può facilmente adattarsi a questi requisiti in evoluzione.
     
  • Consegna più rapida e di alta qualità: La suddivisione del progetto in iterazioni (unità gestibili) consente al team di concentrarsi sullo sviluppo, il testing e la collaborazione di alta qualità. Condurre dei test durante ogni iterazione significa che i bug vengono identificati e risolti più rapidamente. Questo software di alta qualità può essere consegnato più velocemente con iterazioni successive e coerenti.
     
  • Forte interazione di squadra: Agile sottolinea l'importanza della comunicazione frequente e delle interazioni faccia a faccia. I team lavorano insieme e le persone sono in grado di assumersi le proprie responsabilità e di essere titolari di parti dei progetti.
     
  • I clienti vengono ascoltati: I clienti hanno molte opportunità di vedere il lavoro che viene svolto, di condividere i loro contributi e di avere un impatto reale sul prodotto finale.. Possono acquisire un senso di appartenenza lavorando a stretto contatto con il team di progetto..
     
  • Miglioramento costante: I progetti Agile incoraggiano il feedback degli utenti e dei membri del team durante tutto il progetto, così che le lezioni apprese vengano utilizzate per migliorare le iterazioni future.

Suggerimenti e best practice per il prossimo progetto utilizzando la metodologia Agile.

Svantaggi di Agile

Sebbene il livello di flessibilità di Agile sia generalmente positivo, comporta anche alcuni compromessi. È difficile stabilire una data di consegna certa, la documentazione può essere trascurata o il prodotto finale può essere molto diverso da quello originariamente previsto. 

Ecco alcuni dei principali svantaggi di Agile:

  • La pianificazione può essere meno concreta: A volte può essere difficile stabilire una data di consegna certa. Poiché Agile si basa su consegne a tempo e i project manager spesso ridefiniscono le priorità, è possibile che alcuni elementi originariamente previsti per la consegna non vengano completati in tempo. Inoltre, ulteriori sprint possono essere aggiunti in qualsiasi momento nel progetto, aggiungendoli alla linea temporale complessiva.
     
  • Il team deve essere esperto e competente: Di solito i team Agile sono piccoli, pertanto i membri del team devono essere altamente esperti in una varietà di aree. Inoltre, devono comprendere e sentirsi a proprio agio con la metodologia Agile prescelta. 
     
  • Impegno di tempo da parte degli sviluppatori: Agile ha maggiore successo quando gli sviluppatori sono completamente dedicati al progetto. Il coinvolgimento attivo e la collaborazione sono necessari durante il processo Agile, il che richiede più tempo rispetto ad un approccio tradizionale. Significa anche che gli sviluppatori devono impegnarsi per l'intera durata del progetto.
     
  • La documentazione può essere trascurata: L’Agile Manifesto preferisce il software funzionante alla documentazione completa, quindi alcuni membri del team potrebbero pensare che sia meno importante concentrarsi sulla documentazione. Mentre una documentazione esaustiva non conduce di per sé al successo del progetto, i team Agile dovrebbero trovare il giusto equilibrio tra la documentazione e la discussione.
     
  • Il prodotto finale può risultare molto differente: Il progetto Agile iniziale potrebbe non avere un piano definitivo, quindi il prodotto finale può sembrare molto diverso da quello previsto inizialmente. Poiché Agile è così flessibile, è possibile aggiungere nuove iterazioni in base all'evoluzione del feedback dei clienti, il che può portare a un prodotto finale molto diverso. 

Ciclo di sviluppo Agile

 


Ecco le fasi del ciclo di sviluppo Agile. È importante notare che queste fasi non dovrebbero avvenire in successione; sono flessibili e in costante evoluzione. Molte di queste fasi avvengono in parallelo.  

  • Pianificazione: Una volta che un'idea è ritenuta valida e praticabile, il team di progetto si riunisce e lavora per identificare le funzionalità. L'obiettivo di questa fase è suddividere l'idea in segmenti di lavoro più piccoli (le funzionalità), quindi assegnare la priorità a ciascuna caratteristica e assegnarla a un'iterazione. 
     
  • Analisi dei requisiti: Questa fase prevede molte riunioni con manager, stakeholder e utenti per identificare i requisiti aziendali. Il team deve raccogliere informazioni, ovvero chi utilizzerà il prodotto e come lo utilizzerà. I requisiti devono essere quantificabili, pertinenti e dettagliati.
     
  • Design: La progettazione di sistema e del software viene preparata a partire dai requisiti identificati nella fase precedente. Il team deve pensare a come sarà il prodotto o la soluzione. Il team di test elabora anche una strategia o un piano di test per procedere.
     
  • Implementazione, coding o sviluppo: Questa fase consiste nel creare e testare le funzionalità e nel programmare le iterazioni per la distribuzione (seguendo l'approccio di sviluppo iterativo e incrementale [IID]). La fase di sviluppo inizia con l'iterazione 0, in quanto non esistono funzionalità da consegnare. Questa iterazione allinea le basi per lo sviluppo, con attività come la finalizzazione dei contratti, la preparazione degli ambienti e il finanziamento.
     
  • Testing: Una volta che il codice è stato sviluppato, viene testato rispetto ai requisiti per assicurarsi che il prodotto risponda effettivamente alle esigenze dei clienti e corrisponda alle esperienze degli utenti. Durante questa fase, vengono eseguiti test di unità, test di integrazione, test di sistema e test di accettazione.
     
  • Distribuzione: Dopo la fase di test, il prodotto viene consegnato ai clienti per essere utilizzato. Tuttavia, la distribuzione non rappresenta la fine del progetto. Una volta che i clienti iniziano ad utilizzare il prodotto, potrebbero incorrere in nuovi problemi che il team di progetto dovrà affrontare.

Metodologie utilizzate per implementare Agile

Agile è un quadro di riferimento ed esistono diversi metodi specifici del movimento Agile. Si può pensare a questi metodi come a diverse declinazioni di Agile: 

  • Extreme Programming (XP): Noto anche come XP, Extreme Programming è un tipo di sviluppo software destinato a migliorare la qualità e la reattività alle esigenze dei clienti in continua evoluzione. I principi di XP includono il feedback, il presupposto della semplicità e l'accettazione del cambiamento.
     
  • Sviluppo guidato dalle funzionalità (FDD): Questo processo di sviluppo software iterativo e incrementale fonde le migliori pratiche del settore in un unico approccio. Le attività fondamentali dell'FDD sono cinque: sviluppare il modello generale, costruire l'elenco delle funzionalità, pianificare per funzionalità, progettare per funzionalità e costruire per funzionalità.
     
  • Sviluppo del sistema adattivo (ASD): Lo sviluppo del sistema adattivo si basa sull'idea che i progetti dovrebbero sempre essere in uno stato di adattamento costante. L’ASD consta di un ciclo di tre serie che si ripetono: ipotizzare, collaborare e imparare.
     
  • Metodo di sviluppo di sistemi dinamici (DSDM): Questo framework Agile per la realizzazione di progetti viene utilizzato per lo sviluppo di software e soluzioni non informatiche. Affronta i comuni fallimenti dei progetti IT, come lo sforamento del budget, il mancato rispetto delle scadenze e la mancanza di coinvolgimento degli utenti. Gli otto principi del DSDM sono: concentrarsi sulle esigenze aziendali, rispettare i tempi di consegna, collaborare, non compromettere mai la qualità, costruire in modo incrementale partendo da basi solide, sviluppare in modo iterativo, comunicare in modo continuo e chiaro e dimostrare il controllo. 
     
  • Lean Software Development (LSD): Lo sviluppo di software Lean riprende i principi di produzione e Lean IT e li applica allo sviluppo software. Può essere caratterizzato da sette principi: eliminare gli sprechi, amplificare l'apprendimento, decidere il più tardi possibile, consegnare il più velocemente possibile, responsabilizzare il team, costruire l'integrità e avere una visione globale.
     
  • Kanban: Kanban, cioè "segno visivo" o "cartellino" in giapponese, è un quadro visivo per implementare Agile. Promuove piccole e continue modifiche del sistema attuale. I suoi principi includono: visualizzare il flusso di lavoro, limitare il lavoro in corso, gestire e migliorare il flusso, rendere esplicite le politiche e migliorare continuamente.
     
  • Crystal Clear: Crystal Clear fa parte della famiglia Crystal di metodologie. Può essere utilizzato con i team di sei e otto sviluppatori e si concentra sulle persone, non processi o artefatti. Crystal Clear richiede quanto segue: consegna frequente di codice utilizzabile agli utenti, miglioramento riflessivo e comunicazione osmotica, preferibilmente co-localizzata.
     
  • Scrum: Scrum è uno dei modi più popolari per implementare Agile. È un modello di software iterativo che segue un insieme di ruoli, responsabilità e riunioni che non cambiano mai. Gli sprint, che di solito durano da una a due settimane, consentono al team di consegnare il software con regolarità.

Altre pratiche di Agile

Esistono molte altre pratiche e framework che sono correlati a Agile. Tra questi vi sono:

  • Agile Modeling (AM): L’Agile Modeling è una metodologia utilizzata per modellare e documentare sistemi software ed è un complemento ad altre metodologie di Agile, quali Scrum, Extreme Programming (XP) e Rational Unified Process (RUP). L’AM non è un processo software completo e a sé stante. Contribuisce a migliorare i modelli con codice, ma non include attività di programmazione. 
     
  • Rational Unified Process (RUP): Creato dalla Rational Software Corporation, un reparto di IBM, RUP è un framework iterativo e adattivo per lo sviluppo di software. . Secondo Rational, RUP è come un mentore online che fornisce linee guida, modelli ed esempi per lo sviluppo di programmi. Gli aspetti chiave di RUP includono un processo guidato dal rischio, uno sviluppo incentrato sui casi d'uso e una progettazione incentrata sull'architettura.
     
  • Lean vs. Agile: Lo sviluppo Lean si concentra sull'eliminazione e la riduzione degli sprechi (attività che non aggiungono valore). Lo sviluppo di software Lean riprende i principi della produzione Lean e li applica allo sviluppo software. Questi principi sono molto simili ad Agile, tuttavia con Lean si assiste a un ulteriore passo avanti. Nella fase di sviluppo, è necessario selezionare, pianifica, sviluppare, testare e distribuire una sola funzionalità prima di ripetere il processo per la funzionalità successiva.
     
  • Test-Driven Development (TDD): Lo sviluppo basato sui test si basa su cicli di sviluppo ripetitivi e brevi. In primo luogo, uno sviluppatore scrive un caso di test automatizzato (inizialmente fallimentare) per una nuova funzionalità e aggiunge rapidamente un test con la quantità minima di codice per superarlo. Poi, rifattualizza il nuovo codice per standard accettabili. 
     
  • Scaled Agile Framework (logo del marchio SAFe): Lo Scaled Agile Framework è un metodo molto strutturato per favorire l'adozione di Agile da parte delle grandi aziende. SAFe si basa su principi Lean e Agile e affronta questioni difficili nelle grandi aziende, come l'architettura, l'integrazione, i finanziamenti e i ruoli in scala. SAFe dispone di tre livelli: team, programma e portfolio. 
     
  • Rapid Application Development (RAD): L'approccio RAD allo sviluppo di software pone più attenzione sullo sviluppo delle attività di pianificazione. Segue un modello incrementale, in cui ogni componente viene sviluppato in parallelo. Le fasi RAD sono: modelli aziendali, modellazione dei dati, modellazione dei processi, generazione dell'applicazione, test e turnover.
     
  • Empirical Control Method: Con lo sviluppo di software Agile è possibile utilizzare un metodo di controllo empirico, il che significa che si prendono decisioni basate sulle realtà osservate nel progetto effettivo. Il modello di controllo empirico dei processi si articola in tre parti: visibilità, ispezione e adattamento. 

Come stimare i budget in Agile

Senza una pianificazione approfondita e anticipata, molti project manager non sono in grado di calcolare i costi e il budget di un progetto Agile. 

Stimare i costi prima ancora di iniziare il progetto può sempre essere impegnativo, indipendentemente dalla metodologia di progetto utilizzata. Tuttavia, in un progetto Agile, è possibile collegare la quantità di tempo che il progetto richiederà con il suo costo totale. 

Per prima cosa, si crea un grafico di burndown e si utilizza il tasso di burndown per stimare quanti sprint ci saranno nel progetto e quando il progetto finirà. Quindi, si calcola il costo del team in base alle loro tariffe orarie. Si moltiplica la tariffa di ogni persona per il numero di ore lavorative settimanali, quindi si moltiplica il tutto per il numero di settimane in uno sprint. Una volta stimato il budget iniziale per il tuo team, puoi aggiungere eventuali altri costi, come tecnologia, tragitto o attrezzature. 

Si può anche suddividere ogni user story in attività. Una volta che si ha un'idea di quante ore occorre per completare ogni attività, puoi stimare il budget del progetto. 

Infine, è possibile utilizzare il poker di pianificazione per stimare lo sforzo richiesto per gli obiettivi di sviluppo. Il poker di pianificazione è una tecnica basata sul consenso per stimare l’impegno degli obiettivi di sviluppo. Ogni membro del team effettua la stima, posizionando cartellini numerati sulla tabella, invece di dirla ad alta voce. I cartellini vengono quindi scoperti e le stime discusse con l'intero team.

Programmazione Agile e pairing

La programmazione a coppie (nota anche come "pairing") fa parte delle pratiche di Extreme Programming (XP). Si tratta di due programmatori che condividono una singola postazione di lavoro, il che significa condividere uno schermo, una tastiera e un mouse. Lo scopo di questa tecnica è di favorire una migliore comunicazione, approfondimenti del problema e comprensione della soluzione. Il pairing è spesso utilizzato nei progetti Agile per fornire rapidamente prodotti di alta qualità, ma è sempre necessario?

La risposta dipende dai programmatori, dall'azienda e dagli obiettivi. Per alcuni progetti e programmatori, il pairing potrebbe migliorare la produttività. Tuttavia, potrebbe non essere sempre appropriato per ogni progetto. La cosa migliore da fare è sperimentarlo e vedere se funziona per te.

Come Agile affronta i requisiti del software

Agile aiuta i team di sviluppo a focalizzarsi sui requisiti più importanti dei clienti il più rapidamente possibile. Grazie al feedback continuo e alle frequenti interazioni faccia a faccia, il team di progetto e gli stakeholder comprendono e assegnano priorità ai requisiti giusti.

I team Agile utilizzano i backlog con user story per gestire i requisiti. Prima dell'inizio di un'iterazione, il team concorda quali requisiti soddisfare con la consegna successiva. Questo approccio collaborativo assicura che le funzionalità più importanti vengano classificate come prioritarie. Inoltre, i requisiti vengono continuamente aggiornati durante tutto il progetto, man mano che emergono nuove informazioni.

È possibile utilizzare Agile per progetti esterni al software?

Sebbene Agile sia stato creato in modo tradizionale per lo sviluppo software, può anche essere utilizzato in molti altri progetti e settori. 

È importante ricordare che lo sviluppo software Agile è nato dai principi di produzione e apprendimento organizzativo Lean. Queste idee non erano basate sul software. Inoltre, molte pratiche di Agile, come le riunioni di stand-up e il visual management, sono così comuni che possono essere applicate a qualsiasi settore. 

Non esistono molti casi di studio di team che utilizzano Agile al di fuori del software, ma ce ne sono un paio. Ad esempio, Kate Sullivan, avvocato aziendale del team legale di The Lonely Planet, ha trasformato la fornitura di servizi per gli affari legali grazie ad Agile. Il team utilizza lavagne e schede, riunioni mattutine di stand-up, definizione delle priorità, iterazioni settimanali e retrospettive regolari.

Agile può essere sicuramente applicato ai progetti al di fuori dello sviluppo software, devi solo trovare il metodo e l'approccio giusti per le tue esigenze. Puoi iniziare con i consigli di amministrazione e i cartellini, un backlog di lavoro, riunioni di stand-up o iterazioni (riunioni settimanali di pianificazione), per vedere come risponde il tuo team. 

Come iniziare con Agile

Un modo semplice per iniziare con Agile è di integrare riunioni di stand-up giornaliere nel tuo progetto. Le riunioni di stand-up giornaliere sono facili da integrare in qualsiasi altra metodologia del progetto già in uso (anche il metodo a cascata) e non richiede alcuna formazione né trasferimento di conoscenze. Incontratevi ogni giorno nello stesso punto per una decina di minuti e chiedi a tutti di parlare di ciò su cui hanno lavorato il giorno prima, di ciò su cui lavoreranno oggi e di eventuali ostacoli.

Se desideri passare interamente ad Agile in un’unica soluzione, inizia a capire perché il team e l'organizzazione vogliono intraprendere questa modifica. Cosa funziona e cosa non funziona? Cosa desiderano migliorare? Quindi, potresti condurre una valutazione Agile, ottenendo una visione completa delle persone, delle competenze e delle tecnologie utilizzate. 

Qualunque sia la strada che sceglierai, ricorda che Agile è flessibile per sua stessa natura. Non esiste un modo giusto o sbagliato per iniziare con Agile. Fai ciò che funziona per te e per il tuo team.

La nuova vista di Smartsheet, Card view, offre ai team Agile un modo più visivo di lavorare, comunicare e collaborare in Smartsheet. La Card view consente di focalizzare l'attenzione con schede ricche, di dare una prospettiva con viste flessibili, di assegnare priorità e regolare il lavoro in modo più visivo. Visualizza le informazioni sui cartellini, utilizzando i campi personalizzati, le immagini e la codifica a colori, per focalizzare meglio l'attenzione del tuo team. Suddividi le schede in file per organizzare il tuo lavoro in modo più visivo. 

Per saperne di più su Smartsheet per lo sviluppo software

Metodologia Scrum

Vantaggi di Scrum

Scrum è una struttura altamente descrittiva con ruoli e dati specifici. Sebbene possano essere molto impegnative da imparare, queste regole presentano molti vantaggi. I vantaggi di Scrum includono:

  • Maggiore trasparenza e visibilità dei progetti: Con le riunioni di stand-up giornaliere, tutto il team sa chi sta facendo cosa, eliminando molti malintesi e confusione. I problemi sono identificati in anticipo, consentendo al team di risolverli prima che sfuggano di mano.
     
  • Maggiore responsabilità del team: Non c'è un project manager che dice al team Scrum cosa fare e quando. Invece, il team si concentra collettivamente su ciò che può completare in ogni sprint. Tutti lavorano insieme e si aiutano a vicenda, migliorando la collaborazione e dando a ciascun membro del team la possibilità di essere indipendente.
     
  • Facilità di adattamento ai cambiamenti: Con brevi sprint e feedback costanti, è più facile affrontare e integrare le modifiche. Ad esempio, se il team scopre una nuova user story durante uno sprint, può facilmente aggiungere quella funzionalità allo sprint successivo durante la riunione di perfezionamento del backlog.
     
  • Maggiore risparmio sui costi: La comunicazione costante assicura che il team sia al corrente di tutti i problemi e le modifiche non appena si presentano, contribuendo a ridurre le spese e ad aumentare la qualità. Codificando e testando le funzionalità in piccole porzioni, il feedback è continuo e gli errori possono essere corretti tempestivamente, prima che diventino troppo costosi da correggere.

Svantaggi di Scrum

Sebbene Scrum offra diversi vantaggi concreti, presenta alcuni aspetti negativi. Scrum richiede un alto livello di esperienza e impegno da parte del team e e i progetti possono essere a rischio di scope creep.

Ecco gli svantaggi di Scrum:

  • Rischio di scope creep: Alcuni progetti Scrum possono subire uno scope creep a causa della mancanza di una data finale specifica. Senza una data di completamento, gli stakeholder possono essere tentati di continuare a richiedere funzionalità aggiuntive. 
     
  • Il team richiede esperienza e impegno: Con ruoli e responsabilità definiti, il team deve avere familiarità con i principi di Scrum per avere successo. Poiché non ci sono ruoli definiti nel team Scrum (tutti fanno tutto), è necessario che i membri del team abbiano esperienza tecnica. Il team deve anche impegnarsi a partecipare alle riunioni giornaliere di Scrum e a rimanere nel team per tutta la durata del progetto.
     
  • Lo Scrum master sbagliato può rovinare tutto: Lo Scrum master è molto diverso da un project manager. Lo Scrum master non ha autorità sul team; deve fidarsi del team che sta gestendo e non deve mai suggerire cosa fare. Se lo Scrum master cerca di controllare il team, il progetto fallirà.
     
  • Attività mal definite possono portare a imprecisioni: I costi e le tempistiche del progetto non saranno accurati se i compiti non sono ben definiti. Se gli obiettivi iniziali non sono chiari, la pianificazione diventa difficile e gli sprint possono richiedere più tempo di quanto originariamente stimato.

I ruoli in Scrum

 

Roles in scrum

In Scrum esistono tre ruoli specifici. Nella fattispecie:

  • Product owner: Il product owner di Scrum ha la visione di ciò che vuole costruire e la trasmette al team. Il product owner si concentra sulle esigenze di business e di mercato, dando priorità a tutto il lavoro da svolgere. Crea e gestisce il backlog, fornisce indicazioni sulle funzionalità da distribuire successivamente e interagisce con il team e gli altri stakeholder per assicurarsi che tutti comprendano le voci del backlog del prodotto. Il product owner non è un project manager. Invece di gestire lo stato e i progressi, il suo compito è motivare il team con un obiettivo e una visione. 
     
  • Lo Scrum master: Spesso considerato l'allenatore del team, lo Scrum master aiuta il team a lavorare al meglio. Questo significa organizzare riunioni, affrontare ostacoli e sfide e lavorare con il product owner per garantire che il backlog del prodotto sia pronto per il prossimo sprint. Inoltre, lo Scrum master si assicura che il team segua il processo Scrum. Non ha autorità sui membri del team, ma ha autorità sul processo. Ad esempio, lo Scrum master non può dire a qualcuno cosa fare, ma può proporre una nuova cadenza di sprint. 
     
  • Team Scrum: Il team Scrum comporta dai cinque ai sette membri. Tutti i membri del progetto lavorano insieme, si aiutano a vicenda e condividono un profondo senso di collaborazione. A differenza dei team di sviluppo tradizionali, non ci sono ruoli distinti come programmatore, progettista o tester. Tutti completano la sequenza di lavoro insieme. Il team Scrum possiede il piano per ogni sprint; prevede la quantità di lavoro che può essere completata in ogni iterazione.

Fasi del processo Scrum

 

Scrum cycle


Esiste un insieme specifico e immutabile di fasi nel flusso di Scrum. Tra queste vi sono:

  • Backlog del prodotto: Il product owner e il team Scrum si incontrano per stabilire la priorità degli elementi del backlog del prodotto (il lavoro sul backlog del prodotto deriva dalle user story e dai requisiti). Il backlog di prodotto non è un “elenco di cose da fare”, ma piuttosto un elenco di tutte le funzionalità desiderate per il prodotto. Il team di sviluppo estrae quindi il lavoro dal backlog del prodotto per completarlo durante ogni sprint.
     
  • Pianificazione degli sprint: Prima di ogni sprint, il product owner presenta gli elementi principali sul backlog al team in una riunione di pianificazione degli sprint. Il team quindi sceglie il lavoro che può completare durante lo sprint e sposta il lavoro dal backlog del prodotto al backlog di sprint (che è un elenco di attività da completare nello sprint).
     
  • Refinement/gestione del backlog: Alla fine di uno sprint, il team e il product owner si incontrano per assicurarsi che il backlog sia pronto per lo sprint successivo. Il team può rimuovere le user story non rilevanti, crearne di nuove, rivalutarne le priorità o dividerle in attività più piccole. Lo scopo di questa riunione è quello di garantire che il backlog contenga solo elementi rilevanti e dettagliati e che soddisfino gli obiettivi del progetto.
     
  • Riunioni Scrum giornaliere: Il daily Scrum è una riunione di 15 minuti in cui ogni membro del team parla dei propri obiettivi e di eventuali problemi emersi. Il daily Scrum si svolge ogni giorno durante lo sprint e aiuta a mantenere allineato il team.
     
  • Riunione di revisione sprint: Alla fine di ogni sprint, il team presenta il lavoro completato in una riunione di revisione sprint. Questa riunione dovrebbe essere caratterizzata da una dimostrazione dal vivo, non da un report o una presentazione di PowerPoint. 
     
  • Riunione retrospettiva degli sprint: Sempre alla fine di ogni sprint, il team riflette su quanto il modello Scrum stia funzionando e discute di eventuali cambiamenti da apportare allo sprint successivo. Il team può parlare di ciò che è andato bene durante lo sprint, ciò che è andato male e di ciò che si poteva fare diversamente.

Strumenti, artefatti e metodi in Scrum

 

Burndown chart


Oltre ai ruoli e ai dati aggiuntivi, i progetti Scrum includono anche alcuni strumenti e artefatti. Ad esempio, il team utilizza una bacheca di Scrum per visualizzare il backlog o un diagramma di burndown per mostrare un lavoro in sospeso. I metodi e gli artefatti più comuni sono:

  • Bacheca di Scrum: Puoi visualizzare il backlog degli sprint mediante una bacheca di attività Scrum. La bacheca può avere forme diverse; in genere comporta cartellini, post-it o una lavagna. La bacheca di Scrum è di solito divisa in tre categorie: da fare, in corso e fatto. Il team Scrum deve aggiornare la lavagna durante l'intero sprint. Ad esempio, se a qualcuno viene in mente una nuova attività, deve scrivere un nuovo cartellino e inserirlo nella colonna appropriata. 
     
  • User story: Una user story descrive una funzionalità software dal punto di vista del cliente. Include il tipo di utente, ciò che vuole e perché lo vuole. Queste brevi user story presentano una struttura simile: “come” “vorrei”, “affinché”. Il team di sviluppo utilizza le user story per creare codici che ne soddisfano i requisiti.
     
  • Diagramma di burndown: Un grafico di burndown rappresenta tutto il lavoro in sospeso. Il backlog è solitamente sull'asse verticale, mentre il tempo è indicato sull'asse orizzontale. Il lavoro rimanente può essere rappresentato da punti di user story, giorni ideali, giorni del team o altri parametri. Un diagramma di burndown può avvisare il team se le cose non vanno in base al piano e aiuta a mostrare l'impatto delle decisioni. 
     
  • Large-Scale Scrum (LeSS): Se desideri rendere scalabili gli elementi di Scrum a centinaia di sviluppatori, la struttura Scrum su larga scala (LeSS) aiuta ad estendere le regole e le linee guida senza perdere il nucleo di Scrum. I principi sono tratti direttamente da Scrum, ma si concentrano sulla scalabilità senza aggiungere ulteriori spese (come l'aggiunta di altri ruoli, artefatti o processi).
     
  • Timeboxing: Un timebox è un periodo di tempo stabilito durante il quale un team lavora per completare un obiettivo. Invece di lasciare che il team lavori fino al raggiungimento dell'obiettivo, l'approccio timebox interrompe il lavoro quando viene raggiunto il limite di tempo. Le iterazioni time-boxed sono spesso utilizzate in Scrum e in Extreme Programming.
     
  • Icebox: Eventuali user story registrate, ma non passate allo sviluppo vengono memorizzate nell’icebox.
    Il termine "icebox" è stato creato da Pivotal Tracker, uno strumento di gestione dei progetti Agile. 
     
  • Scrum vs. RUP: Sebbene sia Scrum che Rational Unified Process (RUP) seguano il framework Agile, il RUP prevede una definizione più formale dell'ambito, delle milestone e delle date specifiche (Scrum utilizza un backlog di progetto invece dell'ambito). Inoltre, il RUP prevede quattro fasi principali del ciclo di vita del progetto (inizio, elaborazione, costruzione e transizione), mentre Scrum prevede che l'intero "ciclo di vita tradizionale" rientri in un'unica iterazione. 
     
  • Lean vs. Scrum: Scrum è una struttura di sviluppo software, mentre Lean aiuta a ottimizzare quel processo. L'obiettivo principale di Scrum riguarda le persone, mentre Lean si concentra sul processo. Entrambe sono considerate tecniche Agile, ma Lean introduce due concetti principali: eliminare gli sprechi e migliorare il flusso.

Come iniziare con Scrum

Lavorare con Scrum spesso significa cambiare le abitudini del team. Il team deve assumersi maggiori responsabilità, aumentare la qualità del codice e incrementare la velocità di consegna. Questo livello di impegno funge da agente di cambiamento; poiché i team si impegnano a sprint sugli obiettivi, sono sempre più motivati a ottenere risultati migliori e più rapidi per offrire un prodotto di qualità.

Un buon punto di partenza per Scrum è parlare dei ruoli. Ogni progetto deve avere uno Scrum master, un product owner e un team Scrum. Potreste parlare di chi dovrebbe essere lo Scrum master e il product owner, oppure, se questi ruoli sono già assegnati, potresti voler chiarire i loro ruoli e le loro responsabilità.

A seconda della familiarità del tuo team con Scrum, potresti anche prendere in considerazione sessioni di formazione. I coach e i formatori certificati di Scrum e i fornitori di formazione autorizzati di Scrum Alliance possono aiutare il tuo team a imparare e ad adottare Scrum.

La nuova vista di Smartsheet, Card view, offre ai team Agile un modo più visivo di lavorare, comunicare e collaborare in Smartsheet. La Card view consente di focalizzare l'attenzione con schede ricche, di dare una prospettiva con viste flessibili, di assegnare priorità e regolare il lavoro in modo più visivo. Visualizza le informazioni sui cartellini, utilizzando i campi personalizzati, le immagini e la codifica a colori, per focalizzare meglio l'attenzione del tuo team. Suddividi le schede in file per organizzare il tuo lavoro in modo più visivo.

Utilizza Smartsheet Card View durante la tua prossima riunione Scrum.

Per saperne di più su Smartsheet per lo sviluppo software

Metodologia a cascata

In cosa consiste il Waterfall?

La metodologia a cascata segue un processo sequenziale e lineare ed è la versione più diffusa del ciclo di vita dello sviluppo dei sistemi (SDLC) per l'ingegneria del software e i progetti IT. A volte viene pianificata utilizzando un diagramma di Gantt, un tipo di diagramma a barre che mostra le date di inizio e fine di ogni attività. Una volta completata una delle otto fasi, il team di sviluppo passa alla fase successiva. Il team non può tornare a una fase precedente senza ricominciare l'intero processo dall'inizio. E prima che il team possa passare alla fase successiva, i requisiti dovrebbero essere esaminati e approvati dal cliente.

Il modello a cascata (Waterfall) ha origine nel settore edilizio e manifatturiero, ovvero in un ambiente notevolmente strutturato, in cui i cambiamenti possono essere troppo costosi e a volte, impossibili. La prima descrizione formale del metodo a cascata è attribuita a Winston W. Royce in un articolo del 1970, in cui descrive un modello software difettoso. 

Vantaggi del Waterfall

Il modello a cascata è il metodo migliore per i progetti semplici e non soggetti a cambiamenti. La sua natura lineare e rigida lo rende facile da utilizzare e consente una documentazione approfondita. 

I vantaggi del Waterfall includono:

  • Facilità di utilizzo e di gestione: Poiché il modello a cascata segue lo stesso schema sequenziale per ciascun progetto, è facile da utilizzare e comprendere. Il team non ha bisogno di alcuna conoscenza preliminare né di formazione prima di lavorare su un progetto a cascata. Si tratta inoltre di un modello rigido; ogni fase ha specifici deliverable e revisioni, quindi è facile da gestire e controllare.
     
  • Richiede disciplina: Ogni fase del metodo a cascata ha un punto di inizio e di fine, ed è facile condividere i progressi con gli stakeholder e i clienti. Focalizzandosi sui requisiti e sulla progettazione prima di scrivere codice, il team può ridurre il rischio di non rispettare le scadenze.
     
  • Richiede un approccio ben documentato: Il metodo a cascata richiede documentazione per ogni fase, che permette di comprendere meglio la logica che sta dietro al codice e ai test. Lascia anche una traccia cartacea per qualsiasi progetto futuro o se gli stakeholder hanno bisogno di maggiori dettagli su una determinata fase. 

Svantaggi del Waterfall

L'inconveniente principale del modello a cascata è la gestione dei cambiamenti. Poiché la cascata è un modello lineare e sequenziale, non è possibile passare da una fase all'altra, anche se si verificano cambiamenti imprevisti. Una volta terminata una fase, è tutto.

Ecco ulteriori informazioni sugli svantaggi del Waterfall:

  • Le modifiche non possono essere facilmente integrate: una volta completata una fase, il team non può tornare indietro. Se si arriva alla fase di test e ci si rende conto che una funzionalità mancava nella fase dei requisiti, è molto difficoltoso e costoso tornare indietro e correggerla. 
     
  • Il software viene consegnato soltanto molto tardi: il progetto deve completare da due a quattro fasi, prima che inizi effettivamente il coding. Di conseguenza, gli stakeholder vedranno un software funzionante soltanto molto tardi nel ciclo di vita.
     
  • La raccolta di requisiti accurati può risultare impegnativa: una delle prime fasi di un progetto a cascata è parlare con i clienti e gli stakeholder, per identificare le loro richieste. Tuttavia, può essere difficile individuare con esattezza quello che desiderano in anticipo nel progetto. Spesso i clienti non sanno cosa desiderano all’inizio, ma imparano e identificano i requisiti man mano che il progetto procede.

Fasi del Waterfall

 

Waterfall


Le fasi del modello a cascata sono otto e devono svolgersi tutte in ordine sequenziale. Ad esempio, il team di sviluppo non può tornare alla fase di analisi se si trova nella fase di testing.

  1. Ideazione: Questa fase inizia con un'idea. La fase di ideazione comporta una valutazione approssimativa del progetto, dei motivi per cui è vantaggioso ed esamina le stime iniziali dei costi. 
  2. Avvio: Una volta formata l'idea, è necessario assumere il team di progetto e definire obiettivi, ambito, scopi e deliverable.
  3. Raccolta e analisi dei requisiti: I requisiti vengono raccolti e analizzati per verificare se il progetto è effettivamente realizzabile. Tutte queste informazioni vengono riportate in un documento di specifica dei requisiti. 
  4. Design: Le specifiche di progettazione create in questa fase vengono utilizzate nella fase di codificazione per scrivere effettivamente il codice. I requisiti vengono studiati e valutati e viene messa a punto la progettazione di sistema. L'obiettivo del team è capire quali azioni devono essere intraprese e come devono apparire.
  5. Implementazione/coding: La codifica effettiva del software ha inizio. Qualsiasi diagramma di flusso o algoritmo creato nella fase di progettazione viene tradotto in un linguaggio di programmazione.
  6. Testing: Una volta completato il codice, il software deve essere testato per eventuali errori. Al termine del testing, il software viene consegnato al cliente. Alcuni team possono scegliere di includere il testing dell'accettazione dell'utente (UAT), dove gli utenti testano il software prima che venga distribuito al pubblico generale.
  7. Manutenzione: Una volta che i clienti utilizzano il software nel mondo reale, possono riscontrare ulteriori problemi. Il team di sviluppo dovrà intervenire e modificare il software, affinché continui ad essere efficace.

Sviluppo a cascata iterativo

Nel modello a cascata tradizionale, il team passa attraverso ogni fase per l'intero progetto. Ad esempio, esegue l'analisi per l'intero progetto, quindi esegue il design per l'intero progetto, ecc. 

In un modello a cascata iterativo, la pianificazione iniziale è ancora molto impegnativa. Una volta che il piano è pronto, il team segue lo stesso schema del Waterfall tradizionale, ma lo fa per ogni user story. Realizza l'analisi, la progettazione, tutto il coding e il testing per una user story. Quindi ripete il processo per un'altra user story. Il lavoro viene suddiviso in segmenti che vanno a vantaggio del team di sviluppo. 

Come il Waterfall affronta i requisiti del software

I progetti a cascata definiscono in anticipo tutti i requisiti del software. Il progetto non può procedere se questi requisiti non sono stati identificati e documentati.

Alcuni progetti a cascata possono avere un team dedicato per acquisire e raccogliere questi requisiti. Il team può utilizzare questionari, colloqui faccia a faccia o telefonici e strumenti di modellazione per acquisire i requisiti degli stakeholder e dei clienti.

Una volta definiti i requisiti iniziali, il team deve produrre un documento di specifica dei requisiti (a volte può crearne più di uno). Questo documento definisce ciò che deve essere realizzato, in modo che tutti comprendano l'ambito del progetto. 

Kanban

In cosa consiste Kanban?

Kanban in giapponese significa "segno visivo" o "cartellino.” È un quadro visivo utilizzato per implementare Agile e mostra cosa, quando e quanto produrre. Favorisce piccole modifiche incrementali al sistema attuale e non richiede un'impostazione o una procedura specifica (ciò significa che si può sovrapporre il Kanban ad altri flussi di lavoro esistenti).

Kanban è stato ispirato dalla Toyota Production System e Lean Manufacturing. Negli anni '40, Toyota migliorò il proprio processo di progettazione modellandolo sul modo in cui i supermercati riforniscono gli scaffali. L'ingegnere Taiichi Ohno notò che i supermercati immagazzinavano solo il prodotto sufficiente a soddisfare la domanda, ottimizzando il flusso tra il supermercato e il cliente. L'inventario veniva rifornito solo quando c'era spazio vuoto sullo scaffale (un segnale visivo).  E poiché l'inventario corrispondeva al consumo, il supermercato migliorava l'efficienza nella gestione delle scorte.

Toyota ha applicato questi stessi principi ai suoi stabilimenti. I diversi team creavano una scheda (o Kanban) per comunicare che avevano capacità extra ed erano pronti a prelevare altri materiali. Poiché tutte le richieste di segmenti venivano estratte dall'ordine, Kanban è talvolta chiamato "sistema pull".

Queste stesse idee si applicano oggi ai team di software e ai progetti IT. In questo contesto, il work-in-progress (WIP) di sviluppo prende il posto dell'inventario e il nuovo lavoro può essere aggiunto solo quando c'è uno "spazio vuoto" sulla lavagna visiva Kanban del team. Kanban adegua la quantità di WIP alla capacità del team, migliorando la flessibilità, la trasparenza e la produttività.

Secondo il blog di Kanban, "Kanban è una tecnica per la gestione di un processo di sviluppo software in un modo altamente efficiente. Kanban è alla base del sistema di prodotti "just-in-time" (JIT) di Toyota. Sebbene la produzione di software sia un'attività creativa e quindi diversa dalla produzione di automobili in serie, il meccanismo alla base della gestione della linea di produzione può comunque essere applicato".

Quando si mettono a confronto Kanban e Agile, è importante ricordare che Kanban è una variante di Agile. È uno dei tanti framework utilizzati per implementare lo sviluppo Agile di un software.

Informazioni sulla bacheca Kanban

 

Kanban board

Una bacheca Kanban è uno strumento per implementare il metodo Kanban per i progetti. Tradizionalmente, questo strumento era una lavagna fisica, con magneti, chip di plastica o note adesive per rappresentare gli elementi di lavoro. Tuttavia, negli ultimi anni, sempre più strumenti software di gestione dei progetti hanno creato lavagne Kanban online.

Una bacheca Kanban, sia fisica che virtuale, è composta da diverse file o colonne. Le bacheche più semplici presentano tre colonne: da fare, in corso e fatto. Le colonne per un progetto di sviluppo software possono essere costituite da colonne backlog, ready, coding, testing, approval e done.

I cartellini Kanban (come note adesive) rappresentano il lavoro e ogni cartellino è collocato sulla bacheca nella fila che rappresenta lo stato di quel lavoro. I cartellini comunicano lo stato a colpo d'occhio. È possibile anche utilizzare cartellini di colore diverso per rappresentare dati diversi. Ad esempio, i cartellini verdi potrebbero rappresentare una funzionalità, mentre i cartellini arancioni un'attività.

Vantaggi di Kanban

La natura visuale di Kanban offre un vantaggio unico quando si implementa Agile. La bacheca Kanban è facile da imparare e comprendere, migliora il flusso di lavoro e riduce il tempo del ciclo. 

I vantaggi del Kanban includono:

  • Aumento della flessibilità: Kanban è un modello fluido e in evoluzione. Non ci sono durate prestabilite delle fasi e le priorità vengono rivalutate man mano che arrivano nuove informazioni. 
     
  • Riduzione degli sprechi: Kanban si basa sulla riduzione degli sprechi, assicurando che i team non perdano tempo a svolgere lavoro non necessario o a eseguire il tipo lavoro sbagliato. 
     
  • Facilità di comprensione: La natura visiva di Kanban contribuisce a renderlo incredibilmente intuitivo e facile da imparare. Il team non ha bisogno di imparare una metodologia completamente nuova e Kanban può essere facilmente implementato in aggiunta agli altri sistemi esistenti.
     
  • Ottimizzazione del flusso di consegna: I team Kanban ottimizzano il flusso di lavoro verso i clienti. Come per il continuous delivery (CD), il modello Kanban è incentrato sulla consegna just-in-time del valore e sulla consegna del lavoro ai clienti con una cadenza regolare.
     
  • Riduzione del tempo del ciclo: Il tempo del ciclo è il tempo necessario al lavoro per spostarsi attraverso il flusso di lavoro del team. Nei progetti Kanban, l'intero team aiuta a garantire che il lavoro venga spostato rapidamente e con successo attraverso il processo.

Svantaggi di Kanban

Molti degli svantaggi associati a Kanban derivano dall'uso improprio o dalla cattiva gestione della bacheca Kanban. Una bacheca obsoleta o troppo complessa può creare confusione, imprecisioni o errori di comunicazione. 

Ecco ulteriori informazioni sugli svantaggi del Kanban:

  • Una lavagna obsoleta può causare problemi: Il team deve impegnarsi a mantenere aggiornata la bacheca Kanban, in caso contrario il team lavorerà con informazioni imprecise. E una volta che il lavoro è completato in base a una bacheca non aggiornata, può essere difficile rimettere le cose in carreggiata.
     
  • I team possono complicare eccessivamente la bacheca: la bacheca Kanban dovrà rimanere chiara e facile da leggere, ma alcuni membri del team possono imparare "nuovi trucchi" da applicare alla loro lavagna. L'aggiunta di accessori alla bacheca Kanban rischia di nascondere le informazioni importanti.
     
  • Mancanza di tempistica: Un’osservazione frequente sul Kanban è che non si sa quando le cose verranno eseguite. Le colonne della bacheca Kanban sono contrassegnate soltanto per fase (da fare, in corso, completa), non ci sono tempistiche associate a ciascuna fase, quindi non si sa quanto potrebbe durare la fase da realizzare.

Pratiche e principi fondamentali del Kanban

Ogni progetto Kanban dovrebbe seguire questi principi fondamentali:

  • Visualizzare il flusso di lavoro: Una rappresentazione visiva del lavoro consente di comprendere il quadro generale e di visualizzare come procede il flusso di lavoro. Rendendo visibile tutto il lavoro, compresi gli ostacoli e le code, è possibile identificare tempestivamente i problemi e migliorare la collaborazione.
     
  • Limitare il work in progress (WIP): I limiti di lavoro in corso (WIP) determinano la quantità minima e massima di lavoro per ogni colonna della bacheca o per ogni flusso di lavoro. Mettendo un limite su WIP, è possibile aumentare la velocità e la flessibilità e ridurre la necessità di dare priorità alle attività.
     
  • Gestire e migliorare il flusso: Il flusso di lavoro (il movimento del lavoro) in tutta la bacheca Kanban deve essere monitorato e migliorato al momento. L'ideale sarebbe un flusso veloce e scorrevole, che dimostri che il team sta creando valore rapidamente. Il team dovrebbe analizzare i problemi nel flusso e implementare le modifiche.
     
  • Rendere espliciti i criteri di processo: Al fine di apportare cambiamenti collaborativi nel sistema Kanban, i processi devono essere espliciti. Tutti hanno bisogno di capire come funzionano le cose o cosa significa veramente "fatto". È possibile modificare la bacheca per rendere questi processi più chiari; ad esempio, si può riprogettare per specificare come deve scorrere il lavoro.
     
  • Migliorare costantemente: Il metodo Kanban favorisce piccoli e continui cambiamenti che si mantengono nel tempo. Una volta che il sistema Kanban è in atto, il team sarà in grado di identificare e comprendere i problemi e di suggerirne i miglioramenti. I team misurano la loro efficacia monitorando il flusso, allineando i tempi del ciclo e aumentando la qualità del lavoro.

Domande comuni su Kanban

 

D: Come si organizzano le riunioni e si mantiene il focus senza Scrum master?

Un componente del team deve prendere l'iniziativa di programmare la riunione e di garantire che la conversazione rimanga sempre allineata. Anche senza uno Scrum master, di solito non è un problema grave. 

La bacheca Kanban aiuta a mantenere il focus durante la riunione. Durante la riunione, si può scorrere la bacheca da sinistra a destra e cercare user story che non sono state spostate dall'ultima riunione. Invece di parlare di risultati raggiunti, si può semplicemente osservare i cartellini sulla bacheca. L'unica domanda da porre durante una riunione riguarda gli ostacoli o le sfide che si frappongono al completamento di un elemento.

Potreste anche provare a organizzare una riunione Kaizen, invitando solo le persone coinvolte nell’attività in questione. Ciascuno discute di problemi e sfide e di come il proprio lavoro potrebbe essere svolto in modo più efficiente. Quindi, l'intero gruppo parla di soluzioni a tali problemi.

Kaizen può anche includere un facilitatore, che incoraggia il team a discutere apertamente le questioni critiche.


D: In che modo Kanban può soddisfare il desiderio del management di avere consegne prevedibili?

In un certo senso, Kanban scambia la prevedibilità con l'efficienza. Non ci sono vincoli temporali o di pianificazione, ma una volta che il team ha ottimizzato il flusso di lavoro e può farsi un'idea di quanto tempo richiedano certi compiti, ci sarà un certo livello di prevedibilità.

Se il management ha ancora bisogno di una prevedibilità più definita (che non è l'approccio Kanban), potrebbe essere necessario provare a gestire le aspettative. In un modello tradizionale, si ha una data di consegna prevedibile, ma in realtà nessuno consegnerà un prodotto entro quella data se non è completo. La gestione attenderà sempre il completamento del prodotto, indipendentemente dalla data originale impostata. Nel modello Kanban, le aspettative devono essere modificate per concentrarsi sulla consegna del prodotto quando è pronto e completo.


D: Come utilizzi Kanban quando hai una scadenza?

Esistono due modi diversi per gestire le scadenze in un modello Kanban. Puoi semplicemente scrivere le scadenze sui cartellini Kanban, assicurandoti che queste scadenze agiscano più come linee guida piuttosto che scadenze imminenti (in Kanban, non dovresti sacrificare la qualità per i tempi).

Puoi anche cambiare il modo in cui tu e il tuo team si avvicinano le scadenze. Nel vero modello Kanban, non è necessario specificare le scadenze. Il sistema farà in modo che tutte le attività siano completate il prima possibile, quindi le scadenze non sono più necessarie. 


D: Kanban può essere utilizzato per altri tipi di progetto oltre allo sviluppo software?

Sì, Kanban può migliorare i risultati dei processi, ridurre i tempi di produzione e aiutare a gestire i flussi di lavoro in quasi tutti i settori. Ad esempio, nel settore dello sviluppo di videogiochi, Kanban aiuta ad abbreviare i tempi del processo video e a ridurre gli sprechi. Nel settore immobiliare, aumenta l'efficienza tracciando i contratti, le prospettive e gli annunci su varie bacheche. E nel settore finanziario, Kanban può identificare rapidamente i punti deboli e aumentare la velocità di commercializzazione.


D: Il WIP è determinato dalla disponibilità delle risorse? 

Sì. Quando si stabiliscono i limiti del WIP, bisogna considerare quante persone ci sono nel team e quante attività si vuole che lavorino contemporaneamente.


D: Come verificare se il limite WIP è corretto?

Non esiste una formula per impostare i limiti WIP corretti. È molto comune che i limiti siano sbagliati all'inizio, ma è sufficiente regolarli man mano che il progetto procede. Un buon punto di partenza è 1,5 per le risorse disponibili, ma è necessario rivalutare costantemente questo parametro e modificarlo se necessario.

Agile vs. Scrum

Differenze e somiglianze tra Agile e Scrum

 

Scrum vs agile


Mentre Agile e Scrum seguono lo stesso sistema, ci sono alcune differenze quando si confronta Scrum con Agile. Agile prevede un insieme di principi, descritti nel Manifesto Agile, per la creazione di software attraverso uno sviluppo iterativo. D'altro canto, Scrum è un insieme specifico di regole da seguire quando si pratica lo sviluppo software Agile. Agile è la filosofia, mentre Scrum è la metodologia per implementare la filosofia Agile. 

Poiché Scrum è un modo per implementare Agile, entrambe condividono molte somiglianze. Si concentrano sulla fornitura di software in anticipo e spesso sono processi iterativi e si adattano al cambiamento. Favoriscono inoltre la trasparenza e il miglioramento costante.  

Come si concilia Scrum con Agile?

Scrum è uno dei tanti framework utilizzati per implementare un processo Agile. Agile è un termine generico che comprende altri processi, come Extreme Programming, Kanban, Crystal e Scrum. Scrum è Agile, mentre Agile non è Scrum. 

Quando utilizzare Scrum:

Consigliamo di utilizzare Scrum se: 

  • I requisiti del progetto cambiano e si evolvono 
  • È necessario un feedback costante
  • Devi capire come fare una grande parte del lavoro perché non lo hai fatto prima
  • Non è necessario impegnarsi per una data di rilascio fissa
  • Il team di progetto richiede autonomia
  • È necessario distribuire software su base regolare

Scrum funziona bene per i progetti che presentano molte incognite o che si evolvono nel tempo. Scrum gestisce questi cambiamenti in modo molto efficace, per poter integrare facilmente nuove informazioni o funzionalità nel corso del processo.

Quando utilizzare Agile:

La linea di demarcazione tra quando usare Agile e quando usare Scrum è molto labile. Scrum è un framework nel processo Agile, quindi entrambi hanno molto in comune. Un buon punto di partenza è capire se è il caso di utilizzare Agile in generale. Quindi, se una metodologia Agile sembra che funzioni per te, potresti scegliere quale struttura di Agile utilizzare in particolare (Scrum è appunto una di queste).

Consigliamo di utilizzare Scrum se:

  • Il prodotto finale non è chiaramente definito
  • I clienti/stakeholder devono essere in grado di modificare l'ambito
  • Le modifiche devono essere implementate durante l'intero processo
  • Gli sviluppatori sono in grado di adattarsi al cambiamento e di pensare autonomamente
  • È necessario ottimizzare la distribuzione rapida

Approccio ibrido

Se un approccio Scrum puro non funziona per il tuo progetto, puoi anche provare un modello ibrido. Esistono diverse metodologie che combinano i principi di Agile o di Scrum e si adattano alla struttura in modo più efficace.

Ad esempio, il Disciplined Agile Delivery (DAD) si basa sulle pratiche di Agile, Scrum e Lean per fornire una solida base da cui partire per scalare. Il DAD è stato sviluppato per fornire un approccio più coeso a Agile, prendendo strategie da Scrum, Kanban, Extreme Programming e altri. Anziché sprecare il tempo per imparare uno di questi framework esistenti e combinarli insieme secondo le necessità, DAD combina già tutte le tecniche pertinenti..

Altri metodi ibridi includono Large-Scale Scrum (LeSS), che estende Scrum con regole e linee guida scalabili e Scaled Agile Framework (SaFE), basato sui principi di Lean e Agile. 

Kanban vs. Scrum

Differenze e somiglianze: Scrum vs Kanban

 

Scrum vs kanban


Scrum e Kanban sono entrambe varianti di Agile, ma presentano alcune differenze distinte.

  • Scrum richiede ruoli specifici mentre Kanban non prevede ruoli obbligatori.
  • Scrum si basa su iterazioni a tempo, che combinano pianificazione, miglioramento dei processi e rilascio. In Kanban, si può scegliere di svolgere queste attività con una cadenza regolare o ogni volta che se ne ha bisogno.
  • Scrum limita il lavoro in corso (WIP) in ogni iterazione, mentre Kanban limita il WIP in ogni flusso di lavoro.
  • Scrum resiste al cambiamento, mentre Kanban lo accoglie facilmente. In Scrum, una volta che il team impegna user story in uno sprint, non è possibile aggiungere ulteriori user story in seguito. In Kanban, è possibile aggiungere o modificare user story a piacimento, a patto che si rientri nei limiti del WIP.
  • Una bacheca Scrum viene reimpostata dopo ogni sprint. Una bacheca Kanban viene utilizzata continuamente.
  • Un team Scrum è interfunzionale e un team è proprietario della bacheca Scrum. In Kanban, i team non hanno bisogno di essere interfunzionali e chiunque può possedere la bacheca Kanban.
  • I team Scrum richiedono valutazione, al contrario del modello Kanban.


E Scrum e Kanban hanno anche alcune somiglianze: 

  • sono empirici. È necessario sperimentare il processo per capire cosa funziona.
  • Entrambi consentono ai membri del team di lavorare su più prodotti contemporaneamente.
  • Sono modelli snelli (Lean) e agili (Agile).
  • Entrambi limitano il WIP (anche se con modalità diverse).
  • Utilizzano la programmazione pull.
  • Si concentrano sulla fornitura di software in anticipo e spesso
  • Entrambi utilizzano la trasparenza per migliorare il processo

Come si relazionano Kanban e Scrum?

Kanban e Scrum sono entrambe strutture per lo sviluppo di software Agile. Entrambe prendono attività ampie e complesse, per poi suddividerle in segmenti più piccoli. Inoltre Kanban e Scrum operano per un miglioramento costante e l'ottimizzazione dei processi, mantenendo il lavoro pienamente visibile. 

Sebbene Kanban e Scrum siano molto adattivi, Scrum è più rigido di Kanban. Scrum ha più vincoli, mentre Kanban è più flessibile.

Bacheca Scrum vs. bacheca Kanban

Mentre una bacheca di Scrum e una bacheca Kanban possono sembrare simili dal punto di vista visivo, si basano in realtà su principi molto diversi. 

Per creare una bacheca Scrum, il team Scrum deve prima creare gli sprint, assegnare punti alle user story e pianificare quali story devono essere inserite in quale sprint. Quindi, la bacheca Scrum visualizza lo sprint, mostrando quali user story sono di pianificazione o di lavoro. La bacheca Scrum viene reimpostata tra ogni sprint ed è di proprietà di un team specifico.

Una bacheca Kanban ha lo stesso layout a colonne di una bacheca Scrum, ma non richiede una pianificazione iniziale. Si può iniziare a lavorare e a muoversi attraverso il flusso della bacheca Kanban senza avere un piano strutturato. La bacheca Kanban può essere condivisa da più persone ed è permanente; non è necessario reimpostarla. A differenza della bacheca di Scrum, la bacheca Kanban prevede un numero massimo di user story consentite in ogni colonna alla volta. Continuerà a scorrere per tutta la durata del progetto, con l'aggiunta di nuove user story e la rivalutazione di quelle completate, se necessario.

Quando utilizzare Kanban

Consigliamo di utilizzare Kanban se:

  • Hai bisogno di aggiungere user story o cambiare sprint all’ultimo minuto
  • Non hai bisogno di iterazioni
  • La valutazione non è necessaria
  • Si vuole avere la possibilità di rilasciare in qualsiasi momento
  • Il miglioramento costante è già enfatizzato
  • Il tuo team non risponde bene ai grandi cambiamenti
  • Si vuole ottimizzare il flusso delle consegne
  • Il sistema deve essere facile e intuitivo

Scrum può essere meno flessibile rispetto a Kanban. I tempi si basano sugli sprint, con ogni sprint che dura da due a quattro settimane. In ogni sprint, il team ha ruoli specifici e segue procedure precise. 

In cosa consiste Scrumban?

Scrumban combina i principi di Scrum e Kanban in un sistema pull-based. Il team pianifica il lavoro che è stato stabilito all’avvio e ritrasmette continuamente il backlog. Le stesse riunioni Scrum devono essere svolte, ma la frequenza può variare a seconda del contesto e della necessità. La parte più importante di Scrumban è assicurarsi che i limiti di avanzamento del lavoro (limiti WIP) siano rispettati.

Scrumban prende elementi sia da Scrum che da Kanban. Ad esempio, include i ruoli definiti, lo Scrum giornaliero e altre riunioni Scrum. E da Kanban prende la bacheca Kanban, il flusso continuo e la capacità di apportare modifiche alla bacheca secondo necessità. 

Scrumban può sembrare più simile a Scrum a livello tecnico, ma a livello culturale, sarà più simile a Kanban. Invece di grandi cambiamenti in una sola volta, Scrumban favorisce le modifiche incrementali. Se il tuo team sta cercando di migrare da Scrum a Kanban, Scrumban può fornire una transizione graduale.

Qual è il migliore? Kanban vs. Scrum

Quando si confronta Kanban rispetto a Scrum, non esiste un vincitore definitivo. Il framework migliore dipende dal progetto, dal team e dagli obiettivi. Poiché sia Kanban che Scrum sono metodologie Agile flessibili, è possibile prendere facilmente principi da ciascuno e applicarli quando necessario.

È importante ricordare il vero Scrum è un cambiamento molto più importante rispetto a Kanban. Il team dovrà conoscere le regole, i ruoli specifici e le iterazioni. D'altra parte, Kanban incoraggia miglioramenti incrementali. È possibile applicare i principi Kanban a qualsiasi processo già presente, anche Scrum. Non è necessario alcun cambiamento significativo per iniziare a lavorare con Kanban.

Come regola generale, se il team o l'azienda sono davvero bloccati e necessitano di un grande cambiamento, Scrum potrebbe essere più appropriato. Se hai già un processo in atto di cui sei soddisfatto, ma desideri implementare alcune piccole modifiche, Kanban potrebbe essere una scelta migliore.

Agile vs. il modello a cascata (Waterfall)

Differenze e somiglianze: Waterfall vs. Agile

 

Waterfall vs agile


Le differenze tra la metodologia a cascata e il modello Agile possono essere riassunte in due parole: rigido contro flessibile. Il modello a cascata è un processo molto più restrittivo e rigido, mentre Agile è flessibile e in continua evoluzione. Ecco ulteriori informazioni sulle loro differenze:

  • Il modello a cascata è un processo strutturato in cui non si può iniziare una nuova fase finché quella precedente non è stata completata. D'altra parte, Agile è un processo flessibile, che consente di muoversi nel progetto a piacimento.
  • Il Waterfall è sequenziale e Agile non impone un processo lineare.
  • I progetti a cascata in genere prevedono requisiti definiti in anticipo , nei progetti Agile si prevede che i requisiti cambino ed evolvano.
  • Nei progetti a cascata, non si può modificare ciò che è stato fatto nelle fasi precedenti, tuttavia Agile è molto flessibile ad accogliere modifiche.

Non ci sono molte somiglianze tra Agile e modello a cascata; Agile è stato creato appositamente per essere l'opposto del Waterfall. Tuttavia, si può dire che sia Agile che Waterfall abbiano lo stesso obiettivo. Entrambi vogliono fornire prodotti di qualità in modo efficiente. Se hai altre somiglianze tra Agile e Cascata da condividere, lasciaci un commento! 

Quando dovresti utilizzare il metodo a cascata e quando Agile

Consigliamo di utilizzare il modello Waterfall se:

  • Non si prevedono cambiamenti nell'ambito e si lavora con contratti a prezzo fisso
  • Il progetto è molto semplice o è già stato fatto molte volte in passato
  • I requisiti sono ben noti e fissi
  • I clienti sanno esattamente cosa vogliono in anticipo
  • Stai lavorando con progetti ordinati e prevedibili


Dovresti usare Agile se:

  • Il prodotto finale non è chiaramente definito
  • I clienti/stakeholder devono avere la possibilità di modificare l'ambito
  • Prevedi qualsiasi tipo di cambiamento durante il progetto
  • L'obiettivo è un'implementazione rapida

Quando si decide tra Agile contro il modello a cascata, tutto si riduce a questo: se prevedi o ti aspetti eventuali modifiche nel corso del progetto, scegli Agile. Se invece sai che il progetto è fisso, immutabile e prevedibile, il Waterfall può essere la scelta migliore.

Qual è il migliore? Agile vs. il modello a cascata (Waterfall)

Agile e Cascata sono talmente opposti che è difficile dire quale sia il migliore. Dipende prima di tutto dal progetto, dal livello di chiarezza sui requisiti e dai margini di flessibilità.

Se avete un'immagine chiara di quello che dovrebbe essere il prodotto finale, hai requisiti fissi che non cambieranno e stai lavorando a un progetto relativamente semplice, alcuni sostengono che il modello Waterfall sia una scelta migliore di Agile. Se non prevedi di affrontare il cambiamento, il modello a cascata è un processo semplice ed efficiente. I problemi con il Waterfall si presentano quando si devono gestire i cambiamenti.

Se non hai una visione chiara del prodotto finale, prevedi delle modifiche e lavori su un progetto complesso, Agile è decisamente migliore. Agile è progettato per soddisfare i nuovi requisiti in evoluzione ogni volta nel corso del progetto, mentre il metodo a cascata non consente di rivedere una fase completata e apportare modifiche.

Ibrido: Agifall o Wagile

Se ti stai ancora interrogando su Waterfall e Agile, puoi sempre combinare i principi di entrambi e utilizzare un modello ibrido.

Agifall, ad esempio, aumenta la velocità e la qualità aggiungendo metodologie Agile al processo a cascata. In un progetto Agifall, le fasi di ricerca, strategia e pianificazione vengono suddivise in attività e si procede con gli sprint per completarle. La fase di sviluppo avviene proprio come in qualsiasi altro progetto Agile, con maggiori informazioni in anticipo. Inoltre, non è necessario attendere la fine di una fase per iniziare la fase successiva, come avviene tradizionalmente nel Waterfall puro. Con Agifall, quando il progetto può iniziare, deve iniziare.

Wagile ha una connotazione più negativa dell'Agifall. La definizione di Wagile su Wikipedia è: “un gruppo di metodologie di sviluppo software che derivano dallo scivolamento da Agile a Waterfall, facendo tanti, brevi Waterfall e pensando che sia Agile, un modello Waterfall mascherato da sviluppo software Agile".

Wagile adotta pratiche Agile come brevi iterazioni, stand-up giornalieri o integrazione continua in aggiunta al Waterfall, senza modificare realmente il modello tradizionale.

Kanban vs. Agile

Differenze e somiglianze: Agile vs. Kanban

 

Kanban vs agile


Sebbene Kanban sia un modo visivo di implementare Agile, le differenze sono molte:

  • Kanban sostiene il flusso costante, mentre Agile lavora per iterazioni.
  • Kanban può funzionare ugualmente bene per qualsiasi tipo di lavoro, mentre Agile può essere più adatto ad alcuni progetti più che ad altri.
  • Chiunque può imparare il Kanban, mentre alcune metodologie Agile richiedono conoscenze o formazione.
  • Kanban richiede una rappresentazione visiva del flusso di lavoro, al contrario di Agile.
  • Alcuni progetti Agile richiedono team interfunzionali, al contrario di Kanban.
  • Agile è una filosofia, mentre Kanban è un metodo.


Agile e Kanban hanno anche delle somiglianze:

  • Entrambi suddividono i progetti in segmenti più piccoli.
  • Prevedono un miglioramento continuo.
  • Danno estrema importanza alla trasparenza.
  • Nessuno dei due richiede molta pianificazione anticipata.
  • Lavorano per una consegna più rapida.

Quando dovresti utilizzare Kanban e quando Agile

Consigliamo di utilizzare Kanban se:

  • Il tuo progetto non richiede iterazioni
  • Vuoi avere la possibilità di rilasciare in qualsiasi momento
  • Il tuo team preferisce modifiche incrementali
  • Il tuo team lavora bene con le immagini
  • Vuoi ottimizzare il flusso delle consegne
  • Stai cercando un sistema di facile comprensione


Consigliamo di utilizzare Agile se:

  • Il prodotto finale non è chiaramente definito
  • Le modifiche devono essere implementate durante l'intero processo
  • Gli sviluppatori sono in grado di adattarsi al cambiamento e di pensare autonomamente
  • Stai cercando di apportare un cambiamento sostanziale

Qual è il migliore? Agile vs. Kanban

Come con qualsiasi metodologia di gestione dei progetti, non esiste un framework che si adatti perfettamente il 100% delle volte. Potresti scegliere Kanban per alcuni progetti, ma voler implementare Agile per altri.

Prendi in considerazione il livello di cambiamento che desideri presentare al tuo team. Se desideri aggiungere qualcosa a una struttura preesistente con piccole modifiche incrementali, Kanban è la scelta preferenziale. Se stai cercando di apportare un cambiamento più consistente al processo, l'implementazione di Agile (come Scrum) sarebbe meglio. 

Se desideri che il tuo team di progetto inizi subito con un nuovo metodo, Kanban è più facile da comprendere. Non necessita di formazione e può essere utilizzato in aggiunta a qualsiasi processo già esistente. D'altro canto, alcune metodologie Agile richiedono maggiori competenze da parte del team. Ad esempio, potrebbero aver bisogno di imparare ruoli, procedure precise.e terminologia specifici.

Risorse e post correlati

 

Scarica un modello gratuito di diagramma a cascata di Excel o scopri come creare un diagramma a cascata partendo da zero. Spiegheremo anche quando utilizzare un diagramma a cascata e le caratteristiche di un diagramma a cascata in Excel.

 

Hai a disposizione otto modelli di gestione dei progetti Agile in Excel: dal modello di product backlog Agile al modello di carta del progetto Agile. Scoprirai anche come utilizzare i modelli Agile in Smartsheet

Corsi:

  • PMI Agile Certified Practitioner (PMI ACP): Offerta dal Project Management Institute (PMI), questa certificazione riguarda molti approcci diversi alla metodologia Agile, come Scrum, Kanban, Lean, Extreme Programming (XP) e Test-Driven Development (TDD). I prerequisiti includono 2000 ore di esperienza generale di progetto in un team, 1500 ore di lavoro in team di progetto Agile e 21 ore di formazione sulle pratiche Agile.
  • Certified Scrum master (CSM): Questa certificazione di Scrum Alliance aiuta i team a utilizzare correttamente Scrum, comprenderne i valori e a evitare le distrazioni. In qualità di CSM, sarai in grado di ricoprire il ruolo di Scrum Master o di membro del team Scrum. Per ottenere il certificato CSM, è necessario seguire un corso CSM presso un trainer autorizzato di Scrum Alliance e dimostrare i propri progressi con un test online.
  • Certified Scrum product owner (CSPO): Un proprietario certificato di prodotto Scrum apprende la terminologia, le pratiche e i principi di Scrum per svolgere il ruolo di product owner in un team Scrum. È il più vicino all'aspetto commerciale del progetto, gestisce il backlog del prodotto e si assicura che tutti conoscano le priorità. Per ottenere questa certificazione da Scrum Alliance, è necessario partecipare a un corso CSPO di due giorni tenuto da un formatore Scrum certificato.
  •  
  • Certified Scrum professional (CSP): I professionisti certificati Scrum sfidano i loro team Scrum a migliorare il modo in cui Scrum viene implementato per ogni progetto. Per richiedere la certifcazione CSP, è necessario essere in possesso di credenziali CSM, CSPO o CSD, avere un minimo di 36 mesi di esperienza Agile/Scrum e raccogliere e dimostrare 70 unità di formazione Scrum negli ultimi tre anni.
  • Accredited Kanban practitioner (AKP): I professionisti accreditati Kanban hanno una comprovata conoscenza ed esperienza nell'implementazione del metodo Kanban per lo sviluppo di software. La certificazione è offerta dall'Agile Certification Institute, Inc. e richiede una formazione precedente nelle pratiche Agile e il superamento di un esame di certificazione AKP.

Gestisci qualsiasi progetto a modo tuo con Smartsheet

Potenzia il rendimento dei tuoi dipendenti con una piattaforma flessibile progettata per soddisfare le esigenze del tuo team e capace di adattarsi alle condizioni mutevoli del lavoro. La piattaforma Smartsheet semplifica la pianificazione, l'acquisizione, la gestione e la creazione di report sul lavoro da qualsiasi luogo, aiutando il tuo team a essere più efficace e ottenere di più. Crea report sulle metriche chiave e ottieni visibilità in tempo reale sul lavoro mentre accade con report di riepilogo, pannelli di controllo e flussi di lavoro automatizzati creati per mantenere il tuo team connesso e informato. Quando i team hanno chiarezza sul lavoro da svolgere, possono ottenere maggiori risultati in meno tempo. Prova Smartsheet gratuitamente, oggi.

Risorse e post correlati

Come creare un diagramma a cascata in Excel

Scarica un modello gratuito di diagramma a cascata di Excel o scopri come creare un diagramma a cascata partendo da zero. Spiegheremo anche quando utilizzare un diagramma a cascata e le caratteristiche di un diagramma a cascata in Excel.

I migliori modelli di Excel per la gestione di progetti Agile

Hai a disposizione otto modelli di gestione dei progetti Agile in Excel: dal modello di product backlog Agile al modello di carta del progetto Agile. Scoprirai anche come utilizzare i modelli Agile in Smartsheet

Pianificazione Agile: Best practice per i project manager

Risorse per la gestione dei progetti Agile One-Stop

Corsi:

  • PMI Agile certified practitioner (PMI ACP): Offerta dal Project Management Institute (PMI), questa certificazione riguarda molti approcci diversi alla metodologia Agile, come Scrum, Kanban, Lean, Extreme Programming (XP) e Test-Driven Development (TDD). I prerequisiti includono 2000 ore di esperienza generale di progetto in un team, 1500 ore di lavoro in team di progetto Agile e 21 ore di formazione sulle pratiche Agile.
  • Certificato Scrum master (CSM): Questa certificazione di Scrum Alliance aiuta i team a utilizzare correttamente Scrum, comprenderne i valori e a evitare le distrazioni. In qualità di CSM, sarai in grado di ricoprire il ruolo di Scrum master o di membro del team Scrum. Per ottenere il certificato CSM, è necessario seguire un corso CSM presso un trainer autorizzato di Scrum Alliance e dimostrare i propri progressi con un test online.
  • Certified Scrum product owner (CSPO): Un proprietario certificato di prodotto Scrum apprende la terminologia, le pratiche e i principi di Scrum per svolgere il ruolo di product owner in un team Scrum. È il più vicino all'aspetto commerciale del progetto, gestisce il backlog del prodotto e si assicura che tutti conoscano le priorità. Per ottenere questa certificazione da Scrum Alliance, è necessario partecipare a un corso CSPO di due giorni tenuto da un formatore Scrum certificato.
  • Certified Scrum developer (CSD): Gli sviluppatori Scrum certificati apprendono competenze specialistiche di progettazione Agile e dimostrano le loro conoscenze attraverso una formazione professionale e una valutazione delle competenze tecniche. Il corso CSD è destinato agli sviluppatori di software che operano in ambiente Scrum. Per ottenere una certificazione CSD dalla Scrum Alliance, è necessario seguire cinque giorni di formazione professionale impartita da un ente di formazione e da un istruttore autorizzati da Scrum Alliance.
  • Certified Scrum professional (CSP): I professionisti certificati Scrum sfidano i loro team Scrum a migliorare il modo in cui Scrum viene implementato per ogni progetto. Per richiedere la certifcazione CSP, è necessario essere in possesso di credenziali CSM, CSPO o CSD, avere un minimo di 36 mesi di esperienza Agile/Scrum e raccogliere e dimostrare 70 unità di formazione Scrum negli ultimi tre anni.
  • Accredited Kanban practitioner (AKP): I professionisti accreditati Kanban hanno una comprovata conoscenza ed esperienza nell'implementazione del metodo Kanban per lo sviluppo di software. La certificazione è offerta dall'Agile Certification Institute, Inc. e richiede una formazione precedente nelle pratiche Agile e il superamento di un esame di certificazione AKP.

Gestisci qualsiasi progetto a modo tuo con Smartsheet

Potenzia il rendimento dei tuoi dipendenti con una piattaforma flessibile progettata per soddisfare le esigenze del tuo team e capace di adattarsi alle condizioni mutevoli del lavoro. La piattaforma Smartsheet semplifica la pianificazione, l'acquisizione, la gestione e la creazione di report sul lavoro da qualsiasi luogo, aiutando il tuo team a essere più efficace e ottenere di più. Crea report sulle metriche chiave e ottieni visibilità in tempo reale sul lavoro mentre accade con report di riepilogo, pannelli di controllo e flussi di lavoro automatizzati creati per mantenere il tuo team connesso e informato. Quando i team hanno chiarezza sul lavoro da svolgere, possono ottenere maggiori risultati in meno tempo. Prova Smartsheet gratuitamente, oggi.

Scopri perché oltre il 90% delle compagnie Fortune 100 si affida a Smartsheet per eseguire il proprio lavoro.

Prova Smartsheet gratuitamente Get a Free Smartsheet Demo