DevOps   Dev, Ops & DevOps

DevOps

DevOps combineert de dev en de ops afdelingen. Dat doen we bij Virtual Sciences al jaren, ook al toen het nog geen DevOps heette. DevOps integreert tools en processen over projectenontwikkeling en beheer.
De afgelopen jaren hebben we ons georiënteerd op een goede toolsetup en dat blijven we doen want DevOps tooling is continue in beweging. 

DevOps processen

Enkele uitgangsprincipes van DevOps zijn:
  • Je zelf afvragen 10 keer per dag naar productie, waarom niet? Het is een fundamenteel ander beheersmechanisme. Door vaak naar productie te gaan ontstaat er een leerervaring en een neiging om herhalende processen te automatiseren en is de change en het bijbehorende risico elke keer maar klein;
  • Production like development (ontwikkelen op dezelfde versie van de middleware die ook in productie staat, testen tegen dezelfde dataset);
  • Fail fast and often. Liever snel de fout vinden dan hem per ongeluk in productie zetten. En er van leren natuurlijk;
  • Geautomatiseerde levering van onderliggende hardware in de OTAP omgeving (Het hardware is code perspectief);
  • Component-gebaseerde architectuur.

De Automatisering van de Automatisering.

Met de introductie van Scrum zijn organisatie veel iteratiever gaan werken. Dat betekent ook dat er vaker opgeleverd moet worden. Hierdoor zijn de bouwprocessen voor applicatieontwikkeling geautomatiseerd. Dit wordt aangeduid met Continuous Build. Deze processen zijn verrijkt met test- en kwaliteitsbewakingssoftware. 
Toch zie je veel projecten een aantal SCRUM iteraties doen waarin de software steeds verder wordt uitgebouwd, maar aan het eind van elke sprint gaat de software alleen naar een Test omgeving en niet in Productie. Pas na een flink aantal sprints worden de Ops (Operation of Beheer) medewerkers betrokken en wordt de software door een Acceptatieproces en dito omgeving naar Productie gebracht.
DevOps integreert bouw en beheer en daarmee wordt de automatisering van het bouw proces uitgebreid over meerdere omgevingen (Ontwikkel, Test, Acceptatie, Productie). Ook de omgevingen die onder verantwoordelijkheid van de Ops medewerkers vallen. We spreken dan niet meer van Continuous Build maar van Continuous Integration (CI).  In de uitbreiding van CB naar CI zitten aspecten als het geautomatiseerd passeren van quality gates tussen OTAP omgevingen, het managen van welke versie op welke omgevingen staat en het automatisch deployen van software op een omgeving.

Lees meer over DevOps in onze DevOps tooling sectie.