Hoe maak je een diagram? – Deel 1: Introductie

Het maken van een goed diagram is vaak lastig, zeker als je hier nog weinig ervaring mee hebt. Gelukkig is het zo dat veel diagrammen een specifiek doel hebben en volgens een vaste syntax werken. Hierdoor is het al vrij gemakkelijk om een eerste selectie te maken. Daarnaast kun je voor een hoop diagrammen volgens een vaste methode werken, die ook nog eens grotendeels overeenkomt.

Om houvast te bieden kun je een aantal stappenplannen toepassen om tot een correct diagram te komen. Ik zal in deze reeks artikelen een mogelijke werkwijze toelichten die kan helpen om tot de juiste onderdelen van je analyse en ontwerp te komen. Deze werkwijze heeft 3 stappen:

  1. Wat is het verhaal van je diagram?
  2. De mentale creatie van een diagram
  3. De fysieke creatie van een diagram

Mentale en fysieke creatie?

We zijn vaak geneigd om, als we iets maken, meteen te beginnen. Denk maar eens terug: is het je wel eens gebeurd dat je een klassendiagram maakt en meteen de tool (visio, draw.io, lucidchart, …) opent en daarin je diagram maakt? Als je deze vraag met ja beantwoord hebt, denk dan eens aan de keren dat je, terwijl je dit diagram aan het maken was meer ruzie met de tool had, dan dat je het ontwerp wat je wilde maken daadwerkelijk goed aan het opzetten was.

Wat er in bovenstaande geval gebeurt is dat je je brein laat switchtasken: je verdeelt je aandacht tussen het creatieve proces van het ontwerpen van een diagram (wat moet er in dit diagram) en het syntactische proces van dit op een goede manier in de tool krijgen. Je brein zal hier continu tussen moeten switchen, met als gevolg dat waarschijnlijk zowel het ontwerp als de syntax minder goed zal worden, of ten minste langer zal duren.

Je ziet dit op veel plaatsen terug en ook in persoonlijk leiderschapstrainingen komt dit concept terug. Stephen Covey spreekt in zijn theorieën over het concept van “Begin met het einde voor ogen”, ofwel: wat wil je aan het eind bereikt hebben. Hierbij maakt hij onderscheid tussen een eerste (mentale) creatie en een tweede (fysieke) creatie. Daarbij stelt hij ook: De kwaliteit van de fysieke creatie wordt bepaald door de kwaliteit van de mentale creatie.

Je denkt nu misschien: “Leuk, dat geneuzel over persoonlijk leiderschap, maar wat heeft dat met software engineering te maken?” Alles! Kijk maar naar het voorbeeld van eerder: Als je geen goede mentale creatie hebt (het creatieve ontwerpen) zal de fysieke creatie (het in de correcte syntax beschrijven) nooit goed kunnen zijn. Andersom kun je met een goede mentale creatie nog steeds een rommeltje maken van de syntax trouwens.

Mentale en fysieke creatie!

Sinds ik dit principe ken, ben ik mezelf aan gaan leren om de twee fasen altijd te scheiden. Ik maak eerste een mentale creatie, die ik bij voorkeur op een whiteboard maak. Daarna pas zet ik dat wat ik op het whiteboard heb gemaakt om naar de juiste syntax in de tool. Door deze werkwijze te gebruiken lukt het me steeds beter om een diagram meteen al beter op te zetten en minder fouten te maken, omdat ik in de fases niet afgeleid wordt door zaken die er (nog) niet toe doen.

Een bijkomend voordeel is dat ik in de mentale creatie aan het whiteboard nog kan beslissen dat het diagram toch niets toevoegt en stop ik gewoon. Ik heb dan nog geen diagram in een tool waarvan het zonde is weg te gooien: ik veeg het bord leeg en ik kan weer verder.

Hoe pak je het dan verder aan?

In de volgende artikelen zal ik de 3 stappen verder uitwerken, en daarbij voor elke stap bespreken hoe je een dergelijk proces aan zou kunnen pakken. Dit is geen wetmatigheid: het is een manier die voor mij goed werkt, waarvan ik gezien heb dat die redelijk goed toepasbaar is voor beginnende software engineers en eenvoudig aan te passen is naar je eigen situatie. Werkt deze methode niet voor jou? Gebruik hem dan vooral niet 🙂

Als ik met een software project bezig ben en ik een volgend onderdeel ga maken, gaat dat altijd volgens hetzelfde schema:

Stap 1: Wat is het verhaal wat ik wil vertellen?

Ik bepaal voor ik beslis wat voor onderdeel, diagram of document ik ga maken wat ik eigenlijk nodig heb om dichterbij het implementeren van de software te komen. Als ik weet wat ik nodig heb, kan ik gaan kijken hoe ik dit wil uitleggen. Deel 2 van deze reeks geeft hier meer informatie over.

Stap 2: De mentale (eerste) creatie van een diagram

Als ik weet wat ik wil gaan ontwerpen en weet welk verhaal dat ik wil vertellen, kan ik de mentale creatie gaan uitwerken. Dit doe ik op basis van een stappenplan, wat ik aanpas naar gelang het diagram ik wil maken. In deel 3 van deze reeks zal ik dit stappenplan toelichten.

Stap 3: De fysieke (tweede) creatie van een diagram

Als de mentale creatie af is, dan volgt de laatste stap: het diagram op zo’n manier in een tool zetten, dat anderen er ook wijs uit kunnen. Dit gaat vaak niet alleen over het in de juiste tool brengen, maar ook op een handige manier in een document opnemen, waarbij ook de onderbouwing achter de keuzes in het diagram terugkomen. In het vierde en laatste deel in deze reeks komt dit onderdeel terug.