Samenvoegen van de toestandsdiagrammen

Voor de parkeersensor zijn de twee deelproblemen apart opgelost. Dat is mooi, het werk kon binnen het team worden verdeeld, daardoor gaat het twee keer zo snel. Nu moet je echter nog de twee systemen samenvoegen tot één systeem. Daarvoor moet je eerst de toestandsdiagrammen samenvoegen, daarvoor zijn grofweg twee manieren:

  1. Maak een nieuw toestandsdiagram waarin de beide toestandsdiagrammen worden samengevoegd. Het kan zijn dat je veel meer toestanden nodig hebt dan daarvoor omdat ze worden gecombineerd. Het is helaas vaak niet mogelijk om ze simpelweg aan aan elkaar te plakken.
  2. Je kunt de toestandsdiagrammen ook gescheiden houden en werken met signalen. Dat gaat als volgt.

Vanuit het ene toestandsdiagram voeg je één of meerdere acties toe, zoals:

verstuur signaal 'zoemerAan'

In het andere toestandsdiagram kan dit een toestandsovergang zijn

ontvang signaal 'zoemerAan'

Door te werken met signalen hoef je vaak niet zo veel te veranderen aan de beide toestandsdiagrammen (behalve de signalen toevoegen natuurlijk). Het hangt van de situatie af welke van de twee bovenstaande oplossingen het makkelijkste is. Het belangrijkste is dat je het nieuw toestandsdiagram goed controleert voordat je gaat programmeren.

 

Opdracht: samenvoegen van de toestandsdiagrammen

Voeg nu beide toestandsdiagrammen samen. Je mag zelf kiezen of je werkt met signalen of niet. Controleer het nieuwe toestandsdiagram goed.