Continuous development

Continuous development, continuous deployment, continuous integration. Deze termen klinken je misschien wat technisch in de oren - dat zijn ze ook. Maar de essentie ervan is eenvoudiger dan je denkt.

Continuous watte?

Misschien heb je er al wel eens iets over gelezen. Er is in ieder geval al genoeg over geschreven. Hier dus geen uitgebreide uiteenzetting over wat deze termen precies inhouden. Veel interessanter zijn de voordelen die deze werkwijze opleveren. Het gaat ons vooral om de kern van continuous development: het continu testen, aanpassen en vernieuwen. Dat is waar software ontwikkelen volgens ons om draait.

Een constante werkflow

Software ontwikkelen is geen statisch gebeuren. Technologische ontwikkelingen volgen elkaar in rap tempo op en wij vinden het belangrijk om hier als softwarebedrijf op in te spelen. Daarom werken wij volgens de AGILE-methode SCRUM; in korte sprints naar een eindproduct. Het idee hierachter is dat je per sprint kijkt wat de prioriteiten zijn, waar knelpunten zitten en hoe je deze gaat oplossen. Resultaat- en oplossingsgericht te werk gaan dus.

Testen is weten

Niet alleen moet je als organisatie flexibel zijn, ook je gereedschap moet je hierop aanpassen. Eerder hadden we het al even over de OTAP-straat, waarbij de testfase essentieel is. Hier komen eventuele problemen meteen boven water. Ieder stukje code dat wij schrijven wordt in deze fase namelijk direct getest. Niet alleen op correctheid, maar ook op veiligheidslekken. Dit testen gebeurt automatisch en continu. Zo weten we altijd of dat wat we ontwikkelen, ook daadwerkelijk werkt. Zonder hier extra tijd aan kwijt te zijn.

Alles en iedereen up-to-date

Alles wat getest is moet natuurlijk direct beschikbaar zijn voor het hele team. Met andere woorden: alles moet niet alleen continu getest worden, alles moet ook continu geïntegreerd worden. Hier komt ook een goed versiebeheersysteem weer om de hoek kijken. Dit zorgt er namelijk voor dat ieder teamlid op elk moment beschikt over de laatste versie. Geen gehannes met verschillende versies of verwarring over wie wat aan het doen is. Geen onnodig gedoe, daar houden wij van.

Samen werkt beter dan alleen

Het mooie van alle systemen die wij hanteren, is dat ze elkaar aanvullen. OTAP en versiebeheer zijn op zichzelf handige tools, maar samen vormen ze een gouden duo. Versiebeheer houdt niet alleen bij wie wat wanneer heeft gedaan, maar ook in welke fase van de OTAP-straat versies zich bevinden. Dit geldt voor alle systemen die wij gebruiken; we gebruiken ze niet zomaar, maar omdat ze bijdragen aan het schrijven van efficiënte en gestructureerde code. Ze versterken elkaar en zorgen zo voor continuous development.