Qualsiasi pipeline di integrazione e distribuzione continua dovrebbe essere automatizzata, semplice da gestire e rilevabile, per questo utilizziamo AWS. Ci consente di ottenere un livello di semplicità e trasparenza che con il precedente ambiente locale non eravamo in grado di raggiungere.
Sam Keen Direttore di architettura di prodotto

lululemon athletica è in grado di preparare ambienti di sviluppo in pochi minuti anziché diversi giorni, di automatizzare il proprio ambiente e di abilitare l'integrazione e la distribuzione continua utilizzando AWS. L'azienda canadese vende abbigliamento ispirato allo yoga e di altro tipo in oltre 350 sedi in tutto il mondo. Esegue sul cloud AWS i suoi ambienti di sviluppo e test e un'app mobile che sarà disponibile in futuro.

Diversi anni fa, lululemon ha deciso di offrire un maggior numero di servizi digitali e di rendere disponibili le nuove applicazioni e le nuove caratteristiche in tempi più brevi. L'azienda, tuttavia, poteva contare su una limitata capacità di sviluppare rapidamente nuove applicazioni per via del suo ambiente IT collocato. "Non eravamo in grado di muoverci con la rapidità necessaria", ha affermato Sam Keen, direttore di architettura di prodotto, che recentemente è stato assunto per progettare e implementare l'ambiente per i nuovi prodotti.

Ad esempio, in genere gli sviluppatori di lululemon impiegavano diversi giorni per preparare gli ambienti di sviluppo per il test delle nuove caratteristiche. "Il processo aveva costi troppo elevati e non era abbastanza rapido", ha affermato Keen. "Anche gli esperimenti su piccola scala richiedevano troppo tempo".

lululemon desiderava inoltre snellire i processi di sviluppo per supportare il suo obiettivo di integrazione e distribuzione continua. "Per la nostra pipeline di integrazione e distribuzione continua dovevamo semplificare la gestione e automatizzare il maggior numero di processi possibile", ha affermato Keen.

lululemon ha scelto Amazon Web Services (AWS) come piattaforma per i suoi ambienti di sviluppo, test e produzione. "AWS è un provider di servizi cloud collaudato, che avevo già utilizzato con eccellenti risultati in altre aziende in cui avevo lavorato. Offre una gamma di servizi ineguagliabile", ha aggiunto Keen. "Inoltre, il ricco catalogo in continua espansione di servizi AWS di base ci consente di dedicare più tempo alle basi di codice dei nostri prodotti specifici anziché all'implementazione e manutenzione di una soluzione di queueing personalizzata".

lululemon utilizza vari servizi AWS per progettare un sistema di integrazione e distribuzione continua completamente automatizzato. L'azienda utilizza i modelli di AWS CloudFormation per definire il suo intero ambiente di sviluppo. "Tutto ciò che distribuiamo, sia a livello di sviluppo che di produzione, si basa su CloudFormation", ha affermato Keen. L'infrastruttura dell'azienda utilizza componenti non modificabili che non richiedono configurazione aggiuntiva una volta distribuiti. lululemon distribuisce artefatti non modificabili tramite Amazon Simple Storage Service (Amazon S3). Essi vengono distribuiti ai server utilizzando AWS CodePipeline, un servizio di distribuzione continua che permette di aggiornare l'applicazione in modo rapido e affidabile. Dai server, gli artefatti vengono distribuiti a AWS Elastic Beanstalk, un servizio per la distribuzione e il dimensionamento dei servizi e delle applicazioni Web.

lululemon utilizza anche il servizio Amazon Cognito per creare identità univoche per gli utenti e autenticarli mediante pool di utenti interni.

Oltre al suo ambiente di sviluppo, l'azienda ha in programma di eseguire sul cloud AWS un'app mobile rivolta ai clienti utilizzando istanze di Amazon Elastic Compute Cloud (Amazon EC2). L'app include contenuti personalizzati specifici per le comunità in cui si trovano i punti vendita di lululemon.

Adottando i servizi AWS per automatizzare e semplificare i suoi ambienti di sviluppo e test, lululemon è in grado di ridurre i tempi di sviluppo. "Invece dei due giorni che ci occorrevano prima, ora possiamo creare un nuovo ambiente di produzione in pochi minuti utilizzando i modelli di AWS CloudFormation e AWS CodePipeline", ha affermato Keen. "In questo modo possiamo lanciare progetti su piccola scala a costi ridotti e in breve tempo. Questo livello di agilità ci consente di sperimentare e di ottenere le soluzioni migliori, invece che fermarci a ciò per cui abbiamo risorse disponibili. Grazie a AWS, possiamo offrire nuove caratteristiche e applicazioni in tempi decisamente più rapidi che in passato".

Adottando un approccio di sviluppo semplificato che include poche fasi manuali, lululemon ha anche migliorato la gestibilità del proprio ambiente. "Dal momento che l'intera infrastruttura è definita da AWS CloudFormation, possiamo contare su un sistema SSOT. Pertanto, è necessario che una modifica dell'infrastruttura si verifichi soltanto in un punto per consentirci di osservarne il potenziale impatto", ha affermato Keen. "Inoltre, dal momento che i modelli di CloudFormation si trovano nel controllo del codice sorgente, abbiamo a disposizione anche quell'aspetto del controllo delle modifiche. Il valore che AWS CloudFormation offre ai nostri sviluppatori è estremamente significativo".

lululemon ha inoltre migliorato la trasparenza del proprio sistema di sviluppo. "Con AWS otteniamo una vista molto semplice della pipeline", ha affermato Keen. "Qualsiasi pipeline di integrazione e distribuzione continua dovrebbe essere automatizzata, semplice da gestire e rilevabile, per questo utilizziamo AWS. Ci consente di ottenere un livello di semplicità e trasparenza che con il precedente ambiente locale non eravamo in grado di raggiungere".

Basando su AWS i servizi a supporto della sua app mobile, lululemon sta creando strumenti digitali che le consentiranno di migliorare il proprio coinvolgimento con le comunità locali. "In questo modo, i dipendenti di lululemon possono creare con maggiore semplicità contenuti più in linea con gli interessi dei clienti. Visto il successo ottenuto finora, abbiamo intenzione di creare ed eseguire altre nuove applicazioni su AWS. Scegliere AWS è stata un'ottima decisione per il nostro business".