Wanneer een klant met een idee bij ons komt, starten we met een verkenning. Daarna leggen we de wensen vast in een System Requirement Specification (SRS). Dit document bevat functionele én technische eisen. Zo ontstaat er een concreet beeld van wat we gaan bouwen en waaraan het moet voldoen.
De SRS is het referentiepunt in het hele traject. Verandert er iets onderweg? Dan stemmen we dat af met de klant en werken we het document bij. Zo zorgen we ervoor dat verwachtingen en realiteit bij elkaar blijven.
Op basis van de SRS gaan we aan de slag in refinement sessies. Tijdens deze sessies vertaalt ons team de eisen naar concrete ‘user stories’. Elke story beschrijft een stukje functionaliteit. Gezamenlijk vormen ze de complete scope van het project. Door vooraf alles uit te denken en op te delen, creëren we overzicht. We gebruiken hier tools als Atlassian Jira voor. Zo is voor iedereen duidelijk wat, door wie en wanneer er gebouwd moet worden.
Desondanks kunnen we een project pas écht perfectioneren als we tussendoor de juiste aanpassingen kunnen maken. Daarom werken we agile, zodat we tijdens de ontwikkeling flexibel kunnen schakelen.
Software schrijven is één ding. Maar om de kwaliteit te waarborgen gebruiken wij verschillende elementen. Tijdens de implementatie houden we de controle met behulp van een vaste build environment (toolchain), verpakt in docker containers. Zo werkt iedereen met exact dezelfde tools en blijven de resultaten altijd reproduceerbaar. Zelfs jaren later wanneer iemand anders eraan werkt. De implementatie van de code wordt daarnaast altijd door een andere developer uit het team gecontroleerd via Pull Requests. Dit draagt bij aan de traceerbaarheid.
Voor onze CI/CD pipeline gebruiken we Jenkins. Die controleert automatisch elke wijziging die naar Gitea wordt gepusht. Denk aan checks voor code-style (linters), structuur (SonarQube volgens de MISRA C-standaard), documentatie (Sphinx) en compilatie. Pas als alles klopt accepteert Jenkins de samenvoeging van de code.
Interesse in de mogelijkheden van embedded systems voor jouw organisatie? We gaan graag met je in gesprek om deze mogelijkheden te bespreken. Neem contact op voor een verkennend gesprek.
Wij kijken ernaar uit om van je te horen!