Si è iniziato a parlare di Agile e DevOps già da molti anni e queste metodologie sono state ormai apparentemente adottate dalla maggior parte delle imprese. Come mai, quindi, ci si interroga ancora su queste tematiche come se si trattasse di concetti totalmente nuovi?
Nonostante il notevole inchiostro versato su questi temi, infatti, le grandi imprese non sono ancora riuscite a cogliere esattamente l’essenza di queste metodologie e, per tale ragione, sia il DevOps che l’Agile possono essere considerati dei concetti relativamente nuovi.
Gli Executive, infatti, trovano di fronte a sé una grande sfida nel momento in cui devono applicare questi approcci all’intero ciclo di vita del software, in quanto nella maggior parte dei casi il DevOps e l’Agile sono stati adottati solo teoricamente e non a livello pratico.
Sono pochissime le aziende che al giorno d’oggi sono realmente in grado di applicare il DevOps su tutto il processo di software development. E, generalmente, una delle aeree principali che viene trascurata è proprio il database.
Il database, a differenza di altri componenti software e codici compilati, non è un insieme di file. Non è qualcosa che si può semplicemente copiare dallo sviluppo al testing e alla produzione, in quanto il database è un vero e proprio contenitore dei nostri asset e dei nostri dati di maggior valore. Il database possiede tutti i contenuti dell’applicazione, le informazioni dei clienti, ecc. Tutti i dati aziendali devono essere preservati. Per questo motivo, gestire in maniera automatica il DB potrebbe apportare molteplici vantaggi alle imprese.
Tuttavia, il DevOps applicato al database risulta passare in secondo piano rispetto al codice sorgente, i cui strumenti e metodologie sono stati perfezionati, lasciando l’automazione del database in una situazione ad elevato rischio.
Sorge una domanda spontanea: com’è possibile ridurre il divario esistente tra l’automazione del codice sorgente e l’automazione del database?
La risposta è più semplice di quanto si possa pensare: è necessario applicare gli stessi processi di Continuous Delivery per il codice sorgente anche al database. Ebbene sì, questo è un concetto del tutto nuovo!
Il DevOps per il database richiede l’applicazione delle best practices utilizzate generalmente per il codice sorgente. Tuttavia, garantire la Continuous Delivery per il database non è così semplice. Per far sì che l’automazione del database funzioni efficacemente occorre, infatti, avere un codice di transizione solido creato per gestire l’intera struttura del database, il codice del DB, e i contenuti presenti nel database stesso (come ad esempio i metadati). Inoltre, è fondamentale che sia i DBA sia i C-level adottino queste metodologie e sostengano insieme l’automazione del database.
Tuttavia, gli amministratori del DB sono spesso ostili o timorosi nell’automatizzare il database; la domanda che si pongono è: “Cosa potrebbe andar male qualora mettessimo in pratica la CD e il Devops per il DB?”. Noi, invece, vorremmo capovolgere la questione e chiedervi: “Cosa potrebbe andar bene se implementaste pratiche DevOps e di Continuous Delivery per il vostro database?”.
Come specificato prima, l’automazione del database non è un processo semplice ma la possibilità di garantire la Continuous Delivery alla propria banca dati può tradursi in molteplici vantaggi, tra i quali:
– maggiore produttività;
– time-to-market più rapido;
– gestione automatica delle change del DB;
– merge, deploy e generazione di script di rollback automatici;
– mitigazione del rischio;
– riduzione dei bug.
Secondo Gartner il 2016 sarà un anno all’insegna dell’Agile e, per tal motivo, le imprese devono essere all’altezza di affrontare questo cambiamento, adottando una nuova cultura fondata sulla collaborazione e abbracciando la metodologia DevOps. E voi, siete pronti?
Quali sono i rischi e le conseguenze derivanti dall’adozione del DevOps?
Perchè anche il database necessita della metodologia DevOps?
Qual è il business value generato dall’automazione del DB?
Scarica il whitepaper “Pitfalls to avoid when evaluating DevOps for DB solutions” per avere una risposta a queste e molte altre domande!
Per maggiori informazioni contatta Emerasoft all’indirizzo mail sales@emerasoft.com o telefonicamente allo 0110120370 (sede di Torino) o allo 0687811323 (sede di Roma).