Il gruppo televisivo di NBCUniversal a New York è un esempio di come il percorso DevOps dell'organizzazione abbia preso forma. Questa particolare unità di business è il braccio di distribuzione televisiva di NBCUniversal ed è, in parte, responsabile della programmazione dei contenuti in onda per tutte le emittenti di proprietà di NBCUniversal. Come notato in precedenza, l'applicazione Compass è fondamentale in tutto questo.
Comas e il suo team hanno migrato lo sviluppo di Compass, una grande applicazione basata su .net. app, alla piattaforma UrbanCode circa 18 mesi fa. "Descriverei il precedente processo di Compass come un processo in parte manuale e in parte automatico: si eseguiva il commit del codice nel repository, si faceva clic manualmente sul pulsante di build e poi si distribuiva in un ambiente. Una volta distribuito in un ambiente, la gestione veniva sostanzialmente lasciata al team di controllo qualità", afferma. "Quindi trascorreva una settimana o giù di lì e si ottenevano alcuni risultati, si faceva un'altra build e si mandava di nuovo al QA, e così via. Di conseguenza, il time to market di un'applicazione era molto elevato: 20 settimane per rilasciare una release. Uno dei motivi per cui ci voleva così tanto tempo è che il team QA eseguiva test su larga scala su una release che poteva o meno soddisfare i requisiti aziendali".
L'obiettivo del team di Compass era di ridurre questo tempo del 75%, fino a cinque settimane. "Dopo essere passati alla piattaforma UrbanCode, sono riusciti a raggiungere questo obiettivo. In effetti, ora stiamo cercando di ridurre il time to market a due settimane", afferma Comas. Innanzitutto, il suo team ha integrato l'automazione QA con il workflow di Compass, eliminando la necessità di eseguire manualmente numerosi test QA per ogni distribuzione. “Abbiamo iniziato con i test shift-left. Abbiamo testato la release dell'applicazione e fatto un'analisi di copertura del codice, avviando anche un piccolo test funzionale in cui abbiamo osservato i diversi requisiti aziendali e creato test che li esercitassero. In questo modo, prima ancora che la release arrivasse al team QA affinché fosse resa operativa e sottoposta a test di regressione, potevamo ottenere un feedback immediato sulla qualità della release. Questo, di per sé, ha accelerato notevolmente le cose".
L'approccio DevOps di NBCUniversal ha anche abbattuto i silos nell'implementazione. "In passato, i rilasci potevano avvenire solo in determinati giorni della settimana, in genere martedì e giovedì sera, e se si perdeva quella finestra non si potevano rilasciare release fino alla finestra successiva", afferma Comas. "Quindi, lavorando con il team Compass Run, ora possiamo effettuare lanci in produzione molto più frequentemente, con conseguenti rilasci più piccoli e più frequenti. Hanno quindi un’agilità molto maggiore e possono soddisfare i requisiti aziendali molto più velocemente. In breve, la qualità del codice è migliorata, il processo è più veloce e siamo in grado di soddisfare le esigenze aziendali molto più rapidamente".
Da un punto di vista tecnologico, Comas afferma che la piattaforma UrbanCode offre al suo team la possibilità di integrare un'ampia gamma di strumenti in un unico workflow automatizzato, eliminando l'eccessiva dipendenza dagli sviluppatori. “Con UrbanCode, quando uno sviluppatore esegue il commit del codice senza adeguati test unitari, viene segnalato. Se non facesse parte del workflow di uno sviluppatore, non sarebbe possibile saperlo. Non ci sarebbe alcun feedback, nel processo, a indicare lo stato della domanda. Il nostro workflow Compass è probabilmente l'automazione più completa di cui disponiamo e la tecnologia ci aiuta a migliorare la qualità delle applicazioni, migliorando la qualità della build in modo esponenziale. Non solo: stiamo apportando i cambiamenti che l'azienda desidera molto più velocemente. Questi sono gli obiettivi finali, i motivi per cui abbiamo intrapreso questo percorso DevOps".
Per Williams e Comas, DevOps significa promuovere fiducia e sicurezza e istituire prevedibilità, velocità e qualità nel ciclo di vita della distribuzione software. "Stiamo fornendo una solida infrastruttura che garantisce un certo livello di qualità e di servizio ai nostri team addetti alle applicazioni", afferma Comas. In effetti, il team DevOps si sta guadagnando abbastanza fiducia da spingere le unità di business a rivolgersi a loro per progetti più ampi. "Avendo dimostrato che le funzionalità sono flessibili ed espandibili e che ci consentono di rispettare tempi molto stretti, abbiamo visto aumentare di sei volte il volume dei progetti, passando da dieci a oltre 60 applicazioni. Stiamo fornendo un percorso verso la produzione di applicazioni che genera un livello di fiducia che non abbiamo mai avuto prima".