Documenteren kan je leren, maar nog beter: automatiseren! En daar draait deze opdracht om. Je gaat onderzoeken hoe je communicatiestromen binnen een applicatie in kaart kan brengen om dit vervolgens real-time in te zetten.

Benodigde interesse(s)

  • .NET development

Wat krijg je

  • Een uitdagende afstudeeropdracht
  • € 1000 vergoeding, € 500 + leaseauto of € 600 + woonruimte
  • Professionele begeleiding
  • Trainingen gericht op jouw afstudeertraject
  • Sparren met andere afstudeerders en collega’s
  • Twee vakantiedagen per maand

Wat je gaat doen

  • 35% Afstudeeronderzoek
  • 40% Analyseren, ontwerpen, realiseren
  • 25% Documentatie

Het is interessant om te weten hoe communicatiestromen verlopen binnen en tussen applicaties. Door real-time performance te meten op gedetailleerde plekken binnen de codebase kunnen bottlenecks efficiënt en snel gedetecteerd worden en daardoor ook makkelijker opgelost.

Wanneer er gebruik gemaakt wordt van verschillende systemen die met elkaar communiceren via zowel HTTP-calls en events, als ook binnen grote(re) applicaties, kan het snel onoverzichtelijk worden om goed te zien hoe communicatiestromen lopen en hoe deze performen. In een ideale wereld wordt dit netjes gedocumenteerd en bijgehouden. In de praktijk zien we echter dat dit niet of slecht gebeurt, waardoor het al snel nodig is om de code in te duiken om zo communicatiestromen te achterhalen of om handmatig performance-metingen uit te voeren. Dit kost vaak veel tijd, effort en dus ook geld. Met dit probleem ga jij aan de slag.

De opdracht

Er zijn verschillende manieren om communicatiestromen binnen een applicatie in kaart te brengen om zo de performance van een applicatie op detailniveau te analyseren en vervolgens de communicatie tussen applicaties via events of HTTP in kaart te brengen.

Aan jou de taak om te onderzoeken welke manieren dit zijn (denk hierbij aan zaken als statische code analyse, distributed tracing, etc.) en hoe deze zo real-time mogelijk ingezet kunnen worden, eventueel met behulp van een buildstraat.

Door middel van een zo real-time mogelijk gegenereerd dashboard moet via gegenereerde diagrammen live inzicht worden gegeven in:

de communicatiestromen binnen en tussen applicaties op de performance van deze communicatiestromen.
zowel performance op het niveau van specifieke blokken/regels code als performance van communicatie tussen applicaties.