Meteen naar de inhoud

Software ontwikkeling

Talen. Applicaties. Release train

TALEN

Naast verschillende talen om met mensen te kunnen communiceren, beheers ik een aantal talen voor de ontwikkeling van software

C#

C# is mijn favoriet. Gestart met versie 1.0 in 2002. De laatste jaren vooral veel met dotnetcore. Ook op Linux. API’s, desktop apps. Apps voor integratie.

HTML/CSS/JS

Vooral voor web-development. JS beperkt ik tot het minimum.

Applicaties

Een taal kan worden gebruikt voor verschillende types applicaties.

API

Met stip op 1. API’s zijn mijn ding. Zowel voor webdevelopment als voor integratietoepassingen.

INtegratie

Veelal gebaseerd op webapp technieken. De trigger kan een api call zijn, maar ook een timer voor het starten van een job of een bericht op een queue. Transformatie, mapping en het toepassen van businessrules zijn kernbegrippen.

Integreren is vooral praten met mensen en afdelingen.

Webapp

Webapps maak ik vooral voor ‘intern gebruik’. Voor large scale apps doe ik de architectuur en wellicht een deel van de API.

Desktop

WPF is een krachtig platform voor het maken van Windows Desktop Applicaties. Het lijkt een beetje op webdevelopment voor de desktop. WPF heb ik vooral gebruikt voor maken van apps waarbij buizen worden gescanned (barcode, QR, etc) en productiebanden worden aangestuurd. Maar ook voor de generatie van busroutes.

Message handling

High volume message handling. SMS, paging, financiele transacties. Ook relevant voor API’s in combinatie met microservices.

Document generation

Document generatie heeft veel aspecten van integratiesoftware omdat data uit verschillende bronnen wordt samengevoegd. Tevens lijkt het op webdevelopment omdat de layout belangrijk is.

REleasetrain (clickbait) / Ontwikkelstraat

Release management begint bij traceerbare requirements.
CI/CD is maar een klein deel van een beheersbare release cycle

Requirements

Jira. Userstories. Archi. Enterprise Architect. Visio. In de release notes wil je een referentie kunnen maken naar de requirements

Development

Bitbucket. Git. SourceTree. Visual Studio (Code). De code kan worden gekoppeld aan de requirements.

Test

Postman. Testable requirements. OTAP. Automated tests.

Testen is een integraal onderdeel van development

release

DevOps. Jenkins. Bamboo. SSH. Bash

RUN

Windows. Linux. Docker.