Effectief software ontwikkelen? Dat gaat écht niet alleen over code kloppen. Want vanaf het eerste idee tót het moment dat de software helemaal naar behoren draait, moet alles werken als een goed lopend uurwerk. Elk tandwieltje grijpt in het volgende tandwieltje. Daarom is het van belang om development, operations en security goed te integreren.
Dev(Sec)Ops als integraal onderdeel
Dev(Sec)Ops is niet alleen een term: het is een integraal onderdeel het ontwikkelproces en een way of working.
Het proces richt zich op:
- het ontwikkelen,
- beveiligen
- en operationeel houden van een applicatie door één team.
Hierbij is het belangrijk dat alle kennis en kunde binnen het team aanwezig is om alle drie deze facetten te kunnen beheersen.
Het proces staaft op een aantal regels of principes:
Het “shift left” principe.
Shift left wil zeggen dat je steeds vroeger in het proces gefocust bent op issues. Er kunnen issues zijn op basis van codekwaliteit en beveiliging maar ook op basis van bijvoorbeeld performance. Hoe sneller de organisatie issues identificeert en meeneemt in de oplossing, des te minder effort zal het oplossen ervan kosten. “Threadmodelling” en “Secure by Design” zijn methodieken om potentiële beveiliging issues inzichtelijk te maken.
Automatiseer wat kan
Alles wat meer dan één keer wordt uitgevoerd, moet je automatiseren. Althans, dat zou je moeten willen! Dit gaat niet alleen over deployment, maar ook over processen in de ontwikkeling. Hoe je dat aanpakt? Het checken van codekwaliteit door middel van unit-testen of static code analysis zijn mogelijkheden om te automatiseren. Hoe minder handmatige handelingen je uitvoert, hoe minder fouten er gemaakt kunnen worden.
En bovendien: alles wat complex is of risicovol is, wil sowieso automatiseren. We geven een voorbeeld: is je deployment lastig en vraagt het veel stappen? Dan is automatiseren dé oplossing. Het voorkomt dat de mens fouten maakt in het proces en het scheelt je bovendien tijd. En dat geeft weer rust in de organisatie. En, ook niet onbelangrijk, saaie repeterende taken worden voortaan geautomatiseerd uitgevoerd waardoor de betrokken developer of andere IT-specialist ruimte krijgt voor nieuwe, meer interessante taken.
Maak het proces traceerbaar en beheersbaar
Vanaf het moment dat er een idee is, tot het moment dat het idee in productie geplaatst is, hoort het proces traceerbaar en beheersbaar te zijn. Backlog items die gekoppeld zijn aan versies, bugs die gekoppeld zijn aan backlog items, testresultaten gekoppeld aan versies en uiteindelijk ook versies gekoppeld aan deployments.
Dev(Sec)Ops vraagt initieel meer van je ontwikkelteam maar zal uiteindelijk de kwaliteit van de code verbeteren en zorgen dat het ontwikkelteam meer impact kan maken. Benieuwd naar wat we voor jouw organisatie kunnen betekenen? Neem dan vrijblijvend contact met ons op.