Organisaties veranderen continu; het weken lang werken aan één applicatie en aan het einde opleveren naar de productie-omgeving is niet meer van deze tijd. Tegenwoordig worden de behoeftes om “Time to Market” te versnellen en het continu uitleveren van nieuwe software steeds belangrijker. Twee populaire voorbeelden van DevOps zijn Facebook en Office365 waar dagelijks wijzigingen aan het platform worden toegevoegd of bijgewerkt.
Om dit proces te kunnen ondersteunen moet een aantal factoren zijn ingeregeld.
1 Plannen
2 Ontwikkelen
3 Testen
4 Deployment voorbereiden
5 Releasen
6 Feedback ontvangen
7 Optimaliseren
8 Meten
Tijdens het ontwikkelproces van een software-applicatie worden in de analysefase functionaliteiten beschreven in een product backlog, doorontwikkeld, getest en opgeleverd. Tot zover nog niet heel veel nieuws, echter onderscheidt DevOps zich door het verder kunnen meten en monitoren van de applicatie. Met de klant in gesprek om Feedback te verzamelen over de geleverde functionaliteit en het meten van de applicatie. Na een aantal weken is er inzage of er moet worden bijgestuurd of dat de functionaliteit volledig naar wens is. De omvang van functionaliteiten zijn overzichtelijk waardoor de applicatie snel in gebruik genomen kan worden.
DevOps bevat het proces om ervoor te kunnen zorgen dat “Afdelingen” samen gaan werken. DevOps implementeren in uw organisatie zorgt ervoor dat mensen die onderdeel uit maken van projecten operationele kennis vergaren door samen te werken met de beheerorganisatie. Vanuit de projectenorganisatie worden nieuwe technologieën en kennis terug geleverd aan de beheerorganisatie. Op deze manier kan de samenwerking binnen de totale organisatie worden versterkt.
In traditionele ICT bedrijven zijn de bekende kreten als “het is over de schutting gegooid”, systemen zijn niet goed overgedragen een helaas vaak voorkomend probleem. DevOps zorgt voor een dusdanige Cultuur en mindset verandering dat het verschil tussen project en beheer kleiner wordt of zelfs verdwijnt.
Tooling
Microsoft pretendeert alle tooling in huis te hebben om zowel “On-Premise” als “Cloud applicaties” te kunnen uitvoeren in het DevOps proces. Visual Studio met Team Foundation server in combinatie met Azure Services fungeren als hoofdrol in het kunnen uitvoeren in de vorm van een DevOps trajecten.
DevOps beschrijft werkzaamheden vanuit de Infrastructuur om tijdens de uitvoering meer te automatiseren en het vastleggen van versiebeheer over de infrastructuur. Het maken van Load testen, Unit testen en het volledige geautomatiseerd testen zijn hier zeker onderdeel van.