Pianificare con GitHub
Sia GitHub che Azure DevOps supportano una gamma di funzionalità di pianificazione DevOps. Considerando che l'organizzazione nello scenario di esempio prevede di basarsi su GitHub per la transizione DevOps, con particolare attenzione al precedente. In particolare, esplorare Progetti GitHub e Project Boards, disponibili per tutti i clienti GitHub.
Che cosa sono i progetti GitHub?
GitHub Projects è una funzionalità ospitata dalla piattaforma GitHub che consente di organizzare, tenere traccia e gestire il lavoro in modo collaborativo e visivo. Questa funzionalità è adatta per la gestione del ciclo di vita dello sviluppo software, anche se può essere usata in praticamente in qualsiasi scenario che comporta il lavoro correlato al progetto. Si integra strettamente con altri componenti di GitHub, ad esempio repository, problemi e richieste pull. Offre un modo per pianificare, tenere traccia dello stato di avanzamento e coordinare le attività all'interno di un repository e tra repository.
Ogni progetto è accessibile automaticamente nella tabella, nella lavagna e nel layout della roadmap. È anche possibile creare visualizzazioni filtrando, raggruppando e ordinando i componenti inclusi nel progetto, generando grafici configurabili e aggiungendo campi personalizzati in base alle singole preferenze o esigenze.
GitHub Projects supporta i traguardi, che rappresentano le date di destinazione di obiettivi specifici o risultati finali. Le attività cardine implementano una sequenza temporale per il progetto e consentono ai team di tenere traccia dello stato di avanzamento.
I progetti includono flussi di lavoro predefiniti che è possibile usare per aggiornare lo stato degli elementi in base a eventi predefiniti, ad esempio l'impostazione automatica dello stato di un problema appena creato su Todo o l'impostazione automatica dello stato su Fine quando il problema viene chiuso. Per impostazione predefinita, due flussi di lavoro sono abilitati in un progetto appena creato:
- Quando i problemi o le richieste pull nel progetto vengono chiuse, il relativo stato è impostato su Fine
- Quando le richieste pull nel progetto vengono unite, il relativo stato viene impostato su Fine.
Che cos'è una bacheca di GitHub Projects?
Una bacheca di GitHub Projects offre una rappresentazione visiva del progetto corrispondente. È accessibile tramite il layout della lavagna e supporta un'esperienza Kanban. È costituito da colonne e schede che consentono di organizzare e tenere traccia dei problemi e delle richieste pull. Le colonne possono essere personalizzate per rappresentare diverse fasi del progetto. Le schede rappresentano elementi di lavoro, come problemi, bozze di problemi o pull request. È possibile trascinare le schede tra le colonne per riflettere lo stato corrente o la fase di completamento e il valore di tali elementi viene modificato in modo che corrisponda alla colonna in cui vengono trascinati. Ogni scheda può contenere molti campi, tra cui etichette, assegnatari, date di scadenza e descrizioni. Questi campi consentono di specificare informazioni aggiuntive sul lavoro monitorato.
Usando la funzionalità viste, è possibile creare più schede all'interno di un repository, ognuna con un proprio set di colonne distinto. Puoi anche impostare un limite per il numero di schede di una determinata colonna in un layout della lavagna per implementare un limite WIP.
Come iniziare con le bacheche di GitHub Projects?
Prima di avviare un nuovo progetto GitHub, creare un repository. Un repository archivia tutti i file del progetto e fornisce una piattaforma per la gestione del lavoro e la collaborazione con altri utenti. Per tenere traccia degli elementi di lavoro correlati al progetto, utilizzare le questioni. I problemi offrono un metodo pratico per comunicare e prendere decisioni all'interno di un team, incluse discussioni sui dettagli del ciclo di vita dell'applicazione, ad esempio bug o report sulle prestazioni, pianificazione del progetto o brainstorming di una nuova idea. Per fornire suggerimenti per i miglioramenti, usare le richieste pull contenenti le modifiche proposte.
È anche consigliabile usare le etichette predefinite incluse in ogni repository o crearne di personalizzate. Le etichette consentono di tenere traccia degli obiettivi del progetto, di designare bug, di differenziare i vari tipi di lavoro e di indicare lo stato dei problemi o delle richieste pull. Ad esempio, è possibile individuare tutti i bug nel progetto filtrando i problemi relativi all'etichetta corrispondente.
Quando si crea un progetto, è possibile iniziare da zero o usare molti modelli di progetto con strutture di schede predefinite destinate ai casi d'uso più comuni, tra cui, ad esempio, Pianificazione del team, Versione delle funzionalità, Kanban, Sviluppo iterativo o Rilevamento bug.