DevOps: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
ValterVBot (discussione | contributi)
m Note: Sostituzione template reference, replaced: {{references}} → <references/>
Antox27 (discussione | contributi)
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti.
 
(45 versioni intermedie di 27 utenti non mostrate)
Riga 1:
'''DevOps''' (dalla contrazione [[Lingua inglese|inglese]] di ''development'', "[[Sviluppo software|sviluppo]]", e ''[[operations]]'', qui simile a "messa in produzione" o "''[[deployment]]''") è una [[metodologia di sviluppo del software]] utilizzata in [[informatica]] che punta alla comunicazione, collaborazione e integrazione tra [[Sviluppatore software|sviluppatori]] e addetti alle ''[[operations]]'' della dell''[[information technology]]'' (IT).<ref>{{Cita web
In [[informatica]] '''DevOps'''
(dalla contrazione inglese di ''[[Processo software|development]]'', "sviluppo", e ''[[operations]]'', qui simile a "messa in produzione" o "deployment")
è una [[metodologia di sviluppo del software]] che punta alla comunicazione, collaborazione e integrazione tra [[Sviluppatore software|sviluppatori]] e addetti alle [[operations]] dell'[[information technology]] (IT).<ref>{{Cita web
| url = http://www.rajiv.com/blog/2009/03/17/technology-department/
| titolo = Organizing a Digital Technology Department of Medium Size in a Media Company
Line 8 ⟶ 6:
| accesso = 15 luglio 2015
}}</ref>
DevOps vuole rispondere all'interdipendenza tra sviluppo software e IT operations., Puntapuntando ad aiutare un'organizzazione a sviluppare in modo più rapido ed efficiente prodotti e servizi [[software]].<ref>
{{Cita web
| url = http://somic.org/2010/03/02/the-rise-of-devops/
| autore = Dmitriy Samovskiy
| titolo = The Rise of DevOps
| opera= Fubaredness is contagious - preventing its spread in IT one post at a time (Dmitriy Samovskiy's Blog)
| data=2 marzo 2010
| lingua = inglese
| accesso = 15 luglio 2015
}}</ref><ref>
{{Cita web
| url = http://somic.org/2010/03/02/the-rise-of-devops/
| autore = Dmitriy Samovskiy
| titolo = The Rise of DevOps
| opera = Fubaredness is contagious - preventing its spread in IT one post at a time (Dmitriy Samovskiy's Blog)
| data = 2 marzo 2010
| lingua = inglese
| accesso = 15 luglio 2015
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20110107130221/http://somic.org/2010/03/02/the-rise-of-devops/
|dataarchivio = 7 gennaio 2011
}}</ref><ref>{{Cita web
| url = http://dev2ops.org/blog/2010/2/22/what-is-devops.html
| titolo = What is DevOps?
Riga 24:
| lingua = inglese
| accesso = 15 luglio 2015
| urlarchivio = https://web.archive.org/web/20120909013310/http://dev2ops.org/blog/2010/2/22/what-is-devops.html
| dataarchivio = 9 settembre 2012
| urlmorto = sì
}}</ref><ref name=mixing>
{{Cita web
| url = http://blogs.the451group.com/opensource/2010/03/03/devops-mixing-dev-ops-agile-cloud-open-source-and-business/
| titolo = DevOps mixing dev, ops, agile, cloud, open source and business
| data = 3 marzo 2010
| lingua = inglese
| accesso = 15 luglio 2015
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20150914010853/https://blogs.the451group.com/opensource/2010/03/03/devops-mixing-dev-ops-agile-cloud-open-source-and-business/
|dataarchivio = 14 settembre 2015
}}
</ref><ref>
Line 43 ⟶ 49:
</ref>
 
==Descrizione==
Le aziende che tipicamente potrebbero avere maggiori benefici da un orientamento DevOps sono quelle con rilasci di software frequenti. [[Flickr]] ha utilizzato lail metodologiametodo DevOps per supportare la necessità di dieci rilasci al giorno;<ref>
{{Cita web
| url = http://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
Line 49 ⟶ 56:
| lingua = inglese
| accesso = 15 luglio 2015
}}</ref> tale ciclo di rilasci potrebbe essere più frequente in organizzazioni che producano applicazioni multi-focus o multi-funzione, spesso indicato come "''[[deployment]]'' continuo"<ref>{{Cita web
| url = http://www.cutter.com/promotions/itj1108/itj1108.pdf
| titolo = Why Enterprises Must Adopt Devops to Enable Continuous Delivery
Line 58 ⟶ 65:
| accesso = 15 luglio 2015
}}
</ref> e associato spesso allaal metodologiametodo ''[[Lean Startup|lean startup]]''.<ref>
{{Cita web
| url = http://www.slideshare.net/pascallouis/applied-lean-startup-ideas-continuous-deployment-at-kaching
| titolo = Applied Lean Startup Ideas: Continuous Deployment at kaChing
}}
Line 77 ⟶ 84:
| accesso = 15 luglio 2015
}}
</ref><ref>{{Cita web
{{Cita web
| url = http://dev2ops.org/blog/2010/4/26/devops-meetup-recap.html
| titolo = DevOps Meetup Recap
Line 86 ⟶ 92:
| lingua = inglese
| accesso = 15 luglio 2015
| urlarchivio = https://web.archive.org/web/20120720183845/http://dev2ops.org/blog/2010/4/26/devops-meetup-recap.html
}}
| dataarchivio = 20 luglio 2012
</ref>
| urlmorto = sì
}}</ref><ref>
 
LaIl metodologiametodo DevOps aiuta le aziende nella gestione dei rilasci, standardizzando gli ambienti di sviluppo. Le aziende con problemi di automazione dei rilasci solitamente hanno già un processo automatico in essere ma lo vorrebbero più flessibile e controllabile, senza per questo dover agire da [[Interfaccia a riga di comando|riga di comando]] per ottenere ciò. Idealmente tale automazione potrebbe essere utilizzata anche da risorse non operative (non appartenenti allalle ''IT Operationsoperations'') su ambienti non di produzione.; Inin questo modo gli sviluppatori hanno a disposizione un maggiore controllo degli ambienti, dando all'infrastruttura una visione più incentrata sull'applicazione.
 
L'integrazione DevOps ha come obiettivo il rilascio del prodotto, il [[collaudo del software]], l'evoluzione e il mantenimento (correzione di ''[[Bug|bug fixing]]'' e "minor''[[Release (informatica)|release"]]'' minori) in modo tale da aumentare affidabilità e sicurezza e rendere più veloci i cicli di sviluppo e rilascio. Molte delle idee che costituiscono DevOps provengono dalla gestione di sistemi aziendali e dalla [[Metodologia agile]].<ref name=AgileInf2010>
{{Cita web
| titolo=Agile Infrastructure
Line 101 ⟶ 109:
</ref>
 
== =Storia ===
Il termine "devopsDevOps" è stato coniato da Patrick Debois<ref name=debois-devops>{{Cita web
| titolo=Patrick Debois on the State of DevOps
| url=http://www.infoq.com/interviews/debois-devops
Line 111 ⟶ 119:
| accesso = 15 luglio 2015
}}</ref> e reso popolare attraverso una serie di "DevOps Days" iniziati nel 2009 in Belgio.<ref name="devopsdaysghent"/>
Da allora si sono svolte conferenze "DevOps Days" in India, USA, [[Brasile]], [[Australia]], Germania, Svezia e SveziaSvizzera.<ref name="devopsdays"/>
 
[[File:Devops.svg|thumb|widthpx|L'illustrazione mostra la DevOps come intersezione di Sviluppo (software engineering), technology operations e garanzia di qualità (Quality Assurance)]]
Le metodologie di sviluppo (ad esempio la [[Metodologia agile]]) che vengono attuate nelle organizzazioni tradizionali mediante distinte divisioni tra IT operations e [[Garanzia di qualità|QA]] da un lato, sviluppo e rilascio dall'altro, sono prive di una profonda integrazione interdipartimentale. DevOps promuove un insieme di processi e metodi indirizzati alla comunicazione e collaborazione tra le divisioni.<ref>{{Cita web
| url = http://www.kartar.net/2010/02/what-devops-means-to-me/
| titolo = What DevOps means to me...
| nome = James
| cognome = Turnbull
| lingua = inglese
| accesso = 15 luglio 2015
|urlmorto = sì
|urlarchivio = https://web.archive.org/web/20101230030814/http://www.kartar.net/2010/02/what-devops-means-to-me/
|dataarchivio = 30 dicembre 2010
}}</ref>
 
Line 129 ⟶ 140:
| url = http://www.it20.info/misc/virtualizationscomparison.htm
| titolo = Virtual Infrastructure products: features comparison
| opera = Welcome to IT 2.0: Next Generation IT infrastructures
| lingua = inglese
| accesso = 15 luglio 2015
| dataarchivio = 21 luglio 2011
| urlarchivio = https://web.archive.org/web/20110721214150/http://www.it20.info/misc/virtualizationscomparison.htm
| urlmorto = sì
}}</ref> e in [[Cloud computing|cloud]]
# Incremento nell'uso di [[data center]] automatizzati<ref>{{Cita web
| url = http://www.information-management.com/infodirect/20071026/10000120-1.html
| titolo = Bringing Order to Chaos through Data Center Automation
| nome = Jennifer
| cognome = Ellard
| opera = Information Management
| editore = SourceMedia
| lingua = inglese
| accesso = 15 luglio 2015
|urlmorto = sì
}}</ref> e strumenti di [[configuration management]]
|urlarchivio = https://web.archive.org/web/20100611073000/http://www.information-management.com/infodirect/20071026/10000120-1.html
|dataarchivio = 11 giugno 2010
}}</ref> e strumenti di [[configuration management]] e [[Infrastructure as Code]]
 
La metodologia DevOps è spesso descritta come una relazione più collaborativa e produttiva tra i gruppi di sviluppo e quelli di operation. Ciò incrementa l'efficienza e riduce i rischi di frequenti modifiche in produzione. Per quantificare tale effetto si sta ragionando su alcuni possibili parametri.<ref>{{Cita web
Line 150 ⟶ 167:
| cognome = Booth
| lingua = inglese
| accesso = 15 luglio 2015}}</ref>
| urlarchivio = https://web.archive.org/web/20120723194935/http://zeroturnaround.com/blog/how-to-measure-the-effectiveness-of-implementing-devops/
| dataarchivio = 23 luglio 2012
| urlmorto = sì
}}</ref>
 
Il ruolo di un professionista DevOps ricorda molto la figura dell'ingegnere capo all'interno del cosiddetto "[[Toyota Production System]]".<ref>
{{Cita libro
| titolo = The Toyota Way
| anno = 2004
| url = https://archive.org/details/toyotaway14manag00like
| editore = McGraw-Hill
| data = 17 dicembre 2003
Line 167 ⟶ 190:
 
In molte aziende i rilasci applicativi sono eventi ad alto impatto e rischio, coinvolgendo più gruppi di lavoro. Con la metodologia DevOps tale rischio si riduce per i seguenti motivi:
[[File:Agile-vs-iterative-flow.jpg|thumb|widthpx|L' illustrazione mostra l'effetto della metodologia agile nell'incrementare la frequenza degli eventi di rilascio, spesso misurati in giorni o settimane, in contrasto a grossi, rari rilasci, misurati in quadrimestri o anni, con le tradizionali metodologie di sviluppo.]]
; Numero ridotto di modifiche: L'adozione del modello agile o [[modello incrementale]], in contrasto con il tradizionale [[modello a cascata]], comporta minori modifiche, anche se più frequenti, con minore impatto e rischio.
; Accresciuto coordinamento dei rilasci: La presenza di una coordinazione del rilascio riduce le distanze tra sviluppo e gestione.
; Automazione: Una completa automazione assicura la facile ripetibilità dei rilasci e riduce gli errori nell'operazione.
 
=== Coordinatore del Rilasciorilascio ===
Si tratta di un ruolo relativamente nuovo nelle aziende IT, il cui compito è di coordinare i rilasci in ambienti pre-produzione (di test). La necessità di tale figura viene da:
 
Line 186 ⟶ 209:
==Note==
<references/>
 
== Voci correlate ==
* [[Metodologia agile]]
* [[Lean innovation management]]
 
{{portale|informatica|linguistica}}
 
[[Categoria:Information technology management]]
[[Categoria:Terminologia informatica]]