UML is een manier om een softwareprogramma te visualiseren met behulp van een verzameling diagrammen. De notatie is voortgekomen uit het werk van Grady Booch, James Rumbaugh, Ivar Jacobson en Rational Software Corporation voor gebruik in objectgeoriënteerd ontwerp.
Maar sindsdien is het uitgebreid naar een breder scala aan software-engineeringprojecten. Tegenwoordig accepteert de Object Management Group (OMG) UML als standaard voor het modelleren van softwareontwikkeling.

Wat betekent UML?
UML betekent Uniforme modelleringstaal (Unified Modeling Language). UML 2.0 hielp bij het uitbreiden van de oorspronkelijke UML-specificatie om een breder deel van de softwareontwikkelingsinspanningen te dekken, inclusief agile praktijken.
- Verbeterde integratie tussen structurele modellen zoals klassendiagrammen en gedragsmodellen zoals activiteitendiagrammen.
- Toegevoegd het vermogen om een hiërarchie te definiëren en een softwaresysteem opsplitsen in componenten en subcomponenten.
- De originele UML specificeerde negen diagrammen; UML 2.x verhoogt dat aantal naar 13. De vier nieuwe diagrammen heten: communicatiediagram, samengesteld structuurdiagram, interactieoverzichtsdiagram en timingdiagram. Het hernoemde ook statechart-diagrammen naar toestandsmachinediagrammen, ook wel toestandsdiagrammen genoemd.
Wat is een UML-lay-outdiagram?
De uniforme modelleringstaal (UML) kan u helpen bij het modelleren van systemen op verschillende manieren. Een van de meest populaire vormen van UML is het lay-outdiagram. Populair onder software-ingenieurs voor het documenteren van software-architectuur, zijn klassediagrammen een soort structuurdiagram omdat ze beschrijven wat aanwezig moet zijn in het systeem dat wordt gemodelleerd.
UML werd ontwikkeld als een gestandaardiseerd model om een aanpak te beschrijven voor programmering objectgericht. Omdat klassen de bouwstenen van objecten zijn, zijn klassendiagrammen de bouwstenen van UML. De verschillende componenten van een klassendiagram kunnen de klassen vertegenwoordigen die feitelijk worden geprogrammeerd, de hoofdobjecten of de interacties tussen klassen en objecten.
Soorten UML-diagrammen
De huidige UML-standaarden vereisen 13 verschillende soorten diagrammen: klasse, activiteit, object, use case, volgorde, pakket, staat, component, communicatie, samengestelde structuur, interactieoverzicht, timing en implementatie.
Deze diagrammen zijn onderverdeeld in twee verschillende groepen: structurele diagrammen en gedrags- of interactiediagrammen.
klasse diagram
Klassendiagrammen vormen de ruggengraat van bijna alle objectgeoriënteerde methoden, inclusief UML. Ze beschrijven de statische structuur van een systeem.
Pakketdiagram
Pakketdiagrammen vormen een subset van klassendiagrammen, maar ontwikkelaars behandelen ze soms als een aparte techniek. Pakketdiagrammen organiseren de elementen van een systeem in verwante groepen om de afhankelijkheden tussen pakketten te minimaliseren.
Objectdiagram
Objectdiagrammen beschrijven de statische structuur van een systeem op een bepaald moment. Ze kunnen worden gebruikt om de nauwkeurigheid van klassendiagrammen te testen.
Samengesteld structuurdiagram
Samengestelde structuurdiagrammen tonen het interne deel van een klasse.
Use case-diagram
Use case-diagrammen modelleren de functionaliteit van een systeem met behulp van actoren en use-cases.
Activiteitendiagram
Activiteitsdiagrammen illustreren de dynamische aard van een systeem door de controlestroom van de ene activiteit naar de andere te modelleren. Een activiteit vertegenwoordigt een bewerking op een bepaalde klasse van het systeem die resulteert in een verandering in de status van het systeem. Normaal gesproken worden activiteitendiagrammen gebruikt om workflow- of bedrijfsprocessen en interne werking te modelleren.
Volgordediagram
Volgordediagrammen beschrijven interacties tussen klassen in termen van een uitwisseling van berichten in de loop van de tijd.
Interactieoverzichtsdiagram
Interactieoverzichtsdiagrammen zijn een combinatie van activiteiten- en sequentiediagrammen. Ze modelleren een reeks acties en stellen u in staat complexere interacties te deconstrueren tot beheersbare gebeurtenissen. In interactieoverzichtdiagrammen moet u dezelfde notatie gebruiken als in een activiteitendiagram.
timingdiagram
Een timingdiagram is een type UML-gedrags- of interactiediagram dat zich richt op processen die gedurende een specifieke tijdsperiode plaatsvinden. Ze zijn een speciaal voorbeeld van een sequentiediagram, behalve dat ze worden weergegeven als de tijd neemt toe van links naar rechts in plaats van van boven naar beneden.
Communicatiediagram
Communicatiediagrammen modelleren interacties tussen objecten in volgorde. Ze beschrijven zowel de statische structuur als het dynamische gedrag van een systeem. In veel opzichten is een communicatiediagram een vereenvoudigde versie van een samenwerkingsdiagram geïntroduceerd in UML 2.0.
Staatsdiagram
Toestandsdiagrammen, nu bekend als toestandsmachinediagrammen, en toestandsdiagrammen beschrijven het dynamische gedrag van een systeem als reactie op externe stimuli. Toestandsdiagrammen zijn vooral handig voor het modelleren van reactieve objecten waarvan de toestand wordt geactiveerd door specifieke gebeurtenissen.
Componentdiagram
Componentdiagrammen beschrijven de organisatie van de fysieke componenten van software, inclusief broncode, runtime (binaire) code en uitvoerbare bestanden.
Implementatiediagram
Implementatiediagrammen vertegenwoordigen de fysieke bronnen van een systeem, inclusief knooppunten, componenten en verbindingen.

Voordelen van diagrammen
UML-diagrammen bieden een aantal voordelen voor elke organisatie. Gebruik dit type diagrammen om:
- Illustreer datamodellen voor informatiesystemen, hoe eenvoudig of complex deze ook zijn.
- Begrijp het schemaoverzicht van een applicatie beter.
- Breng visueel eventuele specifieke behoeften aan een systeem tot uitdrukking en verspreid die informatie door het hele bedrijf.
- Maak gedetailleerde afbeeldingen die elke specifieke code benadrukken die moet worden geprogrammeerd en geïmplementeerd in het beschreven raamwerk.
- Geef een implementatie-onafhankelijke beschrijving van de typen die in een systeem worden gebruikt en die vervolgens tussen de componenten worden doorgegeven.
Basiscomponenten van een diagram
Het standaard UML-diagram bestaat uit drie secties:
- Bovenste gedeelte: bevat de naam van de klasse. Deze sectie is altijd vereist, of het nu de classificator of een object is.
- Middelste gedeelte: bevat de attributen. Gebruik dit gedeelte om de kwaliteiten te beschrijven. Dit is alleen nodig bij het beschrijven van een specifiek exemplaar.
- Onderste gedeelte: omvat operaties (methoden). Elke bewerking wordt weergegeven in lijstformaat en beslaat een eigen regel. Operaties beschrijven hoe gegevens op elkaar inwerken.
Wijzigingen in de toegang van leden
Alle klassen hebben verschillende toegangsniveaus, afhankelijk van de toegangsmodifier (zichtbaarheid). Hier zijn de toegangsniveaus met hun Symbolen overeenkomend:
- Openbaar (+)
- Privé (-)
- Beschermd (#)
- Pakket (~)
- Afgeleid van (/)
- Statisch (onderstreept)
Lidbereiken
Er zijn twee bereiken voor leden: classificaties en instanties.
Classificatoren zijn statische leden, terwijl instanties de specifieke instanties van de klasse zijn. Als je bekend bent met de basistheorie van OO, is dit niets baanbrekends.
Aanvullende klassendiagramcomponenten
Afhankelijk van de context kan een diagram de belangrijkste objecten, de interacties in de applicatie of de te programmeren klassen weergeven. Om de vraag "Wat is een UML-diagram?" te beantwoorden Je moet eerst de basissamenstelling ervan begrijpen.
- klassen: een sjabloon voor het maken van objecten en het implementeren van gedrag in een systeem. In UML vertegenwoordigt een klasse een object of een reeks objecten die een gemeenschappelijke structuur en gedrag delen. Ze worden weergegeven door een rechthoek die rijen bevat met de klassenaam, de attributen en de bewerkingen ervan. Wanneer u een klasse in een klassendiagram tekent, hoeft u alleen de bovenste rij in te vullen; de andere zijn optioneel als u meer details wilt verstrekken.
- Naam: de eerste rij in een klasformulier.
- attributen: de tweede rij in een klassenvorm. Elk attribuut van de klasse wordt op een aparte regel weergegeven.
- Methoden: Methoden, ook bekend als bewerkingen, worden weergegeven in lijstindeling, waarbij elke bewerking op een eigen regel staat.
- Signalen: Symbolen die asynchrone eenrichtingscommunicatie tussen actieve objecten vertegenwoordigen.
- Soort gegevens: classificatoren die gegevenswaarden definiëren. Gegevenstypen kunnen zowel primitieve typen als opsommingen modelleren.
- Pakketjes: vormen die zijn ontworpen om gerelateerde classificaties in een diagram te ordenen. Ze worden gesymboliseerd door een grote rechthoekige vorm met tabbladen.
- Interfaces: een verzameling bewerkingssignaturen en/of attribuutdefinities die een samenhangende reeks gedragingen definiëren. Interfaces zijn vergelijkbaar met klassen, behalve dat een klasse één exemplaar van zijn type kan hebben en dat een interface ten minste één klasse moet hebben om deze te implementeren.
- opsommingen: representaties van door de gebruiker gedefinieerde gegevenstypen. Een opsomming omvat groepen identificatiegegevens die waarden in de opsomming vertegenwoordigen.
- Voorwerpen: exemplaren van een klasse of klassen. Objecten kunnen aan een diagram worden toegevoegd om concrete of prototypische voorbeelden weer te geven.
- Artefacten: Modelelementen die de concrete entiteiten in een softwaresysteem vertegenwoordigen, zoals documenten, databanken, uitvoerbare bestanden, softwarecomponenten, enz.
interacties: De term 'interacties' verwijst naar de verschillende relaties en koppelingen die kunnen bestaan in klassen- en objectdiagrammen. Enkele van de meest voorkomende interacties zijn:
- erfelijkheid: Het proces waarbij een kind- of subklasse de functionaliteit van een ouder- of superklasse verwerft, ook wel generalisatie genoemd. Het wordt gesymboliseerd door een rechte lijn verbonden met een gesloten pijlpunt die naar de superklasse wijst.
- Tweezijdige associatie: de standaardrelatie tussen twee klassen. Beide klassen kennen elkaar en hebben betrekking op elkaar. Deze associatie wordt weergegeven door een rechte lijn tussen twee klassen.
- Eenrichtingskoppeling: een iets minder vaak voorkomende relatie tussen twee klassen. De ene klas is zich bewust van en communiceert met de andere. De eenrichtingsassociatie wordt gemodelleerd met een rechte verbindingslijn die met een open pijlpunt wijst van de kennende klasse naar de bekende klasse.
Hoe maak je een UML-diagram?
Het is verrassend eenvoudig om vanuit het niets een klassendiagram te maken, vooral als je Lucidchart. Volg gewoon deze stappen:
- Open een leeg document of begin met een sjabloon.
- Schakelt de UML-formulierenbibliotheek in. Klik aan de linkerkant van de Lucidchart-editor op ‘Vormen’. Zodra u in Shape Library Manager bent, vinkt u “UML” aan en klikt u op “Opslaan”.
- Selecteer uit de nieuw toegevoegde bibliotheken de gewenste vorm en sleep deze van de gereedschapskist naar het canvas.
- Modelleer de stroom van het proces door lijnen tussen vormen te tekenen terwijl u tekst toevoegt.
Laatste woorden
De UML-diagrammen Ze brengen de structuur van een bepaald systeem duidelijk in kaart door de klassen, attributen, operaties en relaties tussen objecten te modelleren. Met het gebruik van bepaalde UML-diagramsoftware is het maken van deze diagrammen niet zo lastig als het lijkt.
Mijn naam is Javier Chirinos en ik ben gepassioneerd door technologie. Zolang ik me kan herinneren was ik dol op computers en videogames en die hobby mondde uit in een baan.
Ik publiceer al meer dan 15 jaar over technologie en gadgets op internet, vooral in mundobytes.com
Daarnaast ben ik expert op het gebied van online communicatie en marketing en heb ik kennis van WordPress ontwikkeling.