Ci sono molti motivi diversi per cui varie organizzazioni possono passare a DevOps.
Proverò ad elencare quelli che vengono fuori spesso.
Riduci il tempo di cambiare ciclo
C'è spesso molto tempo tra fare una richiesta di cambiamento e in realtà viene distribuito e utilizzato nell'organizzazione. Prima è pianificato in uno dei cicli di sviluppo dagli sviluppatori e dopo che è stato consegnato è pianificato in uno dei cicli di rilascio delle operazioni. Entrambi i cicli includono test e in caso di problemi rilevati, entrambi i cicli vengono ripristinati. Integrando i dipartimenti di sviluppo e operativi, possiamo semplificare entrambi i processi.
Problemi software vs hardware
Ricorda il cartone animato Bugs Bunny dove Bugs e Daffy stanno discutendo se è stagione di anatra o stagione dei conigli? Ora immaginiamo di averlo fatto con sviluppatori e operazioni in cui gli sviluppatori sostengono che si tratta di un problema hardware e le operazioni sostengono che si tratta di un problema software. Per l'utente finale questa è una distinzione senza differenze. Vogliono solo riparato.
Portando insieme gli sviluppatori e le operazioni, dovranno risolvere i problemi. E potrebbe rivelarsi un problema di software e hardware.
Noi contro loro
In molte aziende la distanza tra tester e sviluppatori era in crescita perché erano reparti separati e il ciclo di sviluppo stava diventando sempre più formalizzato e standardizzato.
Con l'avvento di Agile, sviluppatori e tester hanno lavorato a stretto contatto e abbiamo iniziato a vedere il punto di vista reciproco sul ciclo di sviluppo e forse addirittura a rispettarlo.
Qualcosa di simile deve accadere tra gli sviluppatori e le operazioni, perché quando entrambi i campi maturano e i processi si formalizzano e standardizzano ulteriormente, la distanza tra questi reparti è in aumento.
Quindi uno dei problemi con il modello tradizionale è che sembra "noi" contro "loro" per gli sviluppatori e le operazioni simili. Entrambi non comprendono completamente la difficoltà delle responsabilità dell'altro.
Aspettative / Upsides
Con DevOps entrambe le specialità impareranno alcune delle abilità tradizionalmente eseguite dall'altro. Nessuno si aspetta che un amministratore di sistema diventi un ingegnere del software o uno sviluppatore per diventare un ingegnere di rete, ma entrambi dovrebbero assumersi alcune delle responsabilità dell'altro. Ciò significa che quando hai davvero bisogno di alcune mani in più, sono lì.
E ci sono alcuni aspetti positivi per gli sviluppatori: ora hai più controllo sugli ambienti di test, troverai più facile distribuire il software agli utenti e avere più persone della tua organizzazione con cui condividere il tuo amore per il mestiere.