Tesi di laurea triennale in Ingegneria del software al Politecnico di Bari sulla metodologia Devops per migliori cicli di sviluppo e rilascio software. Tesi svolta da Davide Gallitelli (uploader), con relatrice la prof.ssa Marina Mongiello e correlatore il dott. ing. Francesco Nocera.
Tecniche Innovative di sviluppo Agile: Metodologia DevOps per un migliore ciclo di sviluppo e rilascio software
1. Tesi di laurea
In
Ingegneria del Software
POLITECNICO DI BARI
DIPARTIMENTO DI INGEGNERIA ELETTRICA E DELL’INFORMAZIONE
Relatore:
Prof.ssa Marina MONGIELLO
Laureando:
Davide GALLITELLI
A.A. 2015/2016
Correlatore:
Dott. Ing. Francesco NOCERA
TECNICHE INNOVATIVE DI SVILUPPO AGILE:
METODOLOGIA DEVOPS PER UN MIGLIORE
CICLO DI SVILUPPO E RILASCIO SOFTWARE
Corso di laurea in
Ingegneria Informatica e dell’Automazione
2. Corso di laurea in
Ingegneria Informatica e dell’Automazione
Presentation Structure
I
Introduzione
1. Perchè DevOps
2. Sfide da affrontare
3. Problemi nell’ Adozione
Definizione del Modello
III
Applicativi
1. Gli Strumenti per DevOps
2. Pipelining attraverso applicativi
IV
Conclusioni
1. I successi di DevOps
II
1. Il Modello C.A.L.M.S.
2. Le Tre Vie di DevOps
3. Continuous Deployment
4. Un’azienda è competitiva se
può rilasciare aggiornamenti
e servizi più velocemente
della concorrenza
Competitività
Il riscontro dell’utenza è
fondamentale per stabilire
obiettivi e strutturare il
lavoro, per aggiungere
“valore” al prodotto
Feedback
Un giusto equilibrio fra stabilità
e aggiornamenti permette di
ridurre al minimo le interruzioni
di servizi
Disponibilità
Qualcosa rallenta il ciclo di vita del prodotto. Ma cosa?
Corso di laurea in
Ingegneria Informatica e dell’Automazione
5. Conflittualità fra team di Sviluppo (Dev) e sistemisti (Ops)
Instabilità causate da differenze di configurazione fra
ambiente di sviluppo, test e produzione
Rilasci lenti in produzione, ovvero limitata produttività
«Un business ottiene migliori risultati quando gli
sforzi sono coordinati e basati sulla collaborazione»
Corso di laurea in
Ingegneria Informatica e dell’Automazione
6. Conoscono i concetti
chiave di DevOps
Corso di laurea in
Ingegneria Informatica e dell’Automazione
77%
Stanno implementando
approcci o metodi
derivati da DevOps
55%
Non conoscono i
vantaggi di DevOps o
gli steps fondamentali
51%
Hanno riscontrato benefici economici misurabili,
Fra cui maggiore soddisfazione del cliente,
riduzione dei costi e minori interruzioni di servizi.
93% 2014 DevOps Adoption Report
8. C A L SM
Culture: collaborazione e comunicazione fra team
Automation: ridurre le rischiose operazioni manuali, creando una pipeline
Lean: ridurre sprechi e lavoro inutile, che non apportano valore aggiunto
Measurement: analizzare le metriche di ogni fase e rifinire i processi
Sharing: condividere esperienze, di successo o no, per migliorarsi
Corso di laurea in
Ingegneria Informatica e dell’Automazione
9. Gene Kim
American entrepreneur, researcher, and author of “DevOps Cookbook” and
“The Phoenix Project: A novel about IT, DevOps, and Helping your Business Win”
System Thinking
• Visualizzare e intendere il sistema nella sua interezza
• Permette di ottimizzare i processi e ridurre i colli di
bottiglia
Amplify Feedback Loops
• Migliorare i processi produttivi grazie al feedback dei
team
• Migliorare il prodotto grazie al feedback del cliente
Continual Experimentation and Learning
• Rischiare ed imparare dagli errori
• Migliorarsi e sfidarsi quotidianamente
Corso di laurea in
Ingegneria Informatica e dell’Automazione
11. Your Company Slogan Here and some Business Information E-Mail: me@materialdesigntemplate l Phone: +49 89 1726182
Applicativi
12. Corso di laurea in
Ingegneria Informatica e dell’Automazione
13. Corso di laurea in
Ingegneria Informatica e dell’Automazione
commit
Version ControlProduction Team
checkout
CI Server
Automatic build
Build status &
Docker Image
Build Server Test Environment
Deploy
Test
status
Deploy Metrics
Production Environment
Production Feedback
14. Your Company Slogan Here and some Business Information E-Mail: me@materialdesigntemplate l Phone: +49 89 1726182
Conclusioni
15. Pipeline per l’intero
ciclo produttivo,
tempo per
aggiornare il sito
ridotto da quattro ore
con servizio
interrotto a 50 rilasci
continui senza
interruzioni.
Migrati I servizi su
AWS e creato
Simian Army, si
sta ora
espandendo
globalmente con
grande velocità.
Altri:
Target
Walmart
Adobe
Sony Pictures Ent.
Nordstrom
Fidelity Investments
Riduzione delle
interruzioni di servizi
utilizzando Chef e
migrando al cloud la
propria infrastruttura.
Riduzione dei costi
per la capacità e
scalabilità dei server.
Svliuppatori ed
ingegneri rilasciano
codice ogni 11.7
secondi in media.
Tutte le aziende che hanno adottato DevOps hanno
riscontrato grandi benefici da questa transizione, e
rappresentano prove viventi del successo ottenibile su
tutti I livelli attraverso questa metodologia, a
prescindere dalle dimensioni o dalla storia dell’azienda.
La maggior parte di esse ha potuto ridurre le
interruzioni di servizio, aumentato la velocità di rilascio
di servizi sul mercato, e ridotto i costi per le
infrastrutture. In media, nuove funzionalità vengono
aggiunte 30 volte più frequentemente, i servizi sono
interrotti 60 volte in meno ed il recupero da tali
interruzioni o disastri avviene 168 volte più
velocemente.
Corso di laurea in
Ingegneria Informatica e dell’Automazione