Er bestaat niet één universeel geaccepteerde grafische weergave voor een programmatype, bestand of functie. De weergave is sterk afhankelijk van de context en het doel van het diagram. Er bestaan echter verschillende algemene notaties binnen verschillende diagramtechnieken:
Voor programmabestanden (algemene structuur):
* Bestandspictogrammen: De eenvoudigste weergave is een algemeen bestandspictogram (vaak een lege pagina of een documentsymbool) met een label dat de naam van het bestand en mogelijk het type ervan aangeeft (bijvoorbeeld `.exe`, `.py`, `.java`). Dit is gebruikelijk in bestandssysteemdiagrammen of stroomdiagrammen die de gegevensoverdracht weergeven.
* Vakken in stroomdiagrammen: In een stroomdiagram op een hoger niveau dat de programma-uitvoering weergeeft, kan het programmabestand worden weergegeven door een rechthoek of een afgeronde rechthoek met de naam van het bestand.
* Knooppunten in UML-diagrammen: UML-diagrammen (Unified Modeling Language) kunnen een programmabestand weergeven als een component of pakket, waarbij de relaties met andere componenten worden weergegeven.
* Gegevensstroomdiagrammen (DFD): Een programmabestand kan worden weergegeven als een gegevensopslag of als een proces in een DFD, afhankelijk van of het wordt behandeld als een statische gegevensbron of als een actief verwerkingselement.
Voor functies (interne structuur en relaties):
* Rechthoeken in stroomdiagrammen: Functies worden in stroomdiagrammen doorgaans weergegeven als rechthoeken, met de naam van de functie erin.
* UML-diagrammen (activiteit, volgorde, klasse):
* Activiteitsdiagrammen: Toon de controlestroom binnen een functie als een reeks acties en beslissingspunten.
* Volgordediagrammen: Illustreer de interacties tussen verschillende functies of objecten en laat de volgorde van oproepen en het doorgeven van berichten zien.
* Klassediagrammen: Als functies methoden binnen klassen zijn, worden ze in het klassendiagram weergegeven als onderdeel van de klassendefinitie.
* Controlestroomgrafieken (CFG): Dit zijn meer formele representaties die worden gebruikt bij programmaanalyse en compilerontwerp. Knooppunten vertegenwoordigen basiscodeblokken en randen vertegenwoordigen de besturingsstroom tussen blokken. Een functie zou binnen de CFG worden weergegeven als een subgraaf.
* Oproepgrafieken: Deze diagrammen visualiseren de aanroeprelaties tussen functies en laten zien welke functies welke anderen aanroepen. Knooppunten vertegenwoordigen functies en randen vertegenwoordigen oproepen.
* Nassi-Shneiderman-diagrammen (N-S-diagrammen): Deze gestructureerde programmeerdiagrammen vertegenwoordigen functies met behulp van geneste rechthoeken om de besturingsstroom en -structuur duidelijk weer te geven.
De beste keuze voor grafische weergave hangt af van het benodigde detailniveau en het publiek. Een eenvoudig bestandspictogram is bijvoorbeeld voldoende voor een systeemoverzicht op hoog niveau, terwijl een UML-activiteitendiagram of CFG nodig kan zijn voor gedetailleerd ontwerp of analyse. |