SaaS snello o agile: funzioni di implementazione / rilascio durante o dopo lo sprint

2

Per SaaS (software come servizio), quando si utilizza un processo di sviluppo snello o agile con brevi sprint / iterazioni (ad esempio da 1 a 3 settimane), quale approccio produce una migliore qualità: distribuzione / rilascio di funzioni ...

  1. durante lo sprint in cui sono sviluppati, o
  2. dopo lo sprint (probabilmente molto più avanti se vengono utilizzate versioni alfa / beta o flag di funzionalità limitata)?

Io chiamo "features" in particolare perché con SaaS, potremmo aver bisogno di rilasciare hot fix in qualsiasi momento, 24/7.

Quali criteri possono aiutare a determinare quale sia la scelta migliore?

Alcuni vantaggi di strawman per la distribuzione (1) durante lo sprint:

  • Ottiene l'intero team di sviluppo più focalizzato sulle funzionalità di inserimento fino alla distribuzione
  • Un programma leggermente precedente e probabilmente più prevedibile per la consegna ai consumatori a valle (clienti, gestione del prodotto)
  • Se hai un "giorno dimostrativo", puoi dimostrare le funzioni implementate

... e per (2) dopo :

  • Se il processo di rilascio richiede meno risorse rispetto allo sviluppo e al test, il pipelining in questo modo può portare a un throughput più elevato perché lo sviluppo e il testing possono continuare fino a più tardi nello sprint
  • È possibile che il tempo di implementazione preciso possa essere controllato in modo più flessibile, ad es. per rilasci alfa / beta limitati (ma forse diciamo che è "implementato" quando è in alpha / beta), flag di funzionalità (idem all'ultimo commento), comunicazioni di marketing
  • Se le risorse di ingegneria di rilascio sono insufficienti (ad esempio a causa di malattia), il rilascio non deve attendere un altro sprint completo, ma può verificarsi invece non appena le risorse sono disponibili (ovviamente, l'alternativa durante non non è assolutamente da escludere)
  • Meh, perché no? Dovresti essere in grado di rilasciare SaaS in qualsiasi momento, giusto? (Un po 'di lingua in bocca lì.)
posta Will 05.10.2015 - 22:35
fonte

1 risposta

2

Proporrei di rilasciare immediatamente il completamento dello sprint, o il più presto possibile. Per questi motivi

  1. Durante lo sprint viene richiesto al team di disporre di un incremento potenzialmente disponibile per la spedizione disponibile in qualsiasi momento durante lo sprint * Vedere la nota in basso in questo
  2. Troppo lontano dopo che lo sprint è stato completato, si apre ai problemi segnalati con un lavoro che è stato a lungo dimenticato dal team. Più corto è il divario tra qualcuno che sta completando un po 'di lavoro e problemi con cui viene registrato con esso il veloce sarà quello di risolvere.
  3. Distribuisci subito dopo lo sprint e poi risolvendo eventuali problemi ti dà più fiducia che tutto il lavoro precedente sia effettivamente fatto e non tornerà e morderà la tua agenda nel culo.

* Nota: Se i processi di controllo del codice sorgente sono configurati in modo tale che sia possibile la consegna continua, adottare un approccio basato sul rilascio del rilascio in cui i rilasci vengono pubblicati in base a un programma e tutti cambiamenti recenti. Suggerisco ancora di distribuire il più frequentemente possibile per ottenere lavoro là fuori e nelle mani dei clienti al più presto.

Penso che il principio generale qui sia che il lavoro completo ma non distribuito non ha valore o negativo. Ti è costato lo sforzo di creare ma finché non è nelle mani dei tuoi clienti non stai realizzando il valore che può creare. Quindi, dovresti sempre cercare di ottenere un lavoro ai clienti il prima possibile.

    
risposta data 08.10.2015 - 16:08
fonte