UML 

UML staat voor Unified Modeling Language. Dat laat zich naar het Nederlands vertalen als Algemene  Modelleertaal. De (grafische) taal kent twee soorten diagrammen: statische en dynamische. Zie onderstaande  schema voor een overzicht. 

  De functie van deze modelleertaal is om een (grafisch) overzicht van het ontwerp en functies te geven van een te  bouwen (software)systeem. Hierdoor hebben alle betrokkenen (ontwerper, bouwer, klant, etc.) sneller een  overzicht van de functies van een te bouwen systeem dan door een louter tekstuele beschrijving.  Vanuit een gedegen UML‐ontwerp kan relatief eenvoudig door een CASE‐applicatie een software applicatie  gebouwd worden. Hierbij kun je op het Microsoft‐platform met name aan MS Visio denken. Via deze applicatie kun  je vrijwel geautomatiseerd een (Windows of web)toepassing bouwen. 

Use‐cases in diagrammen 
Een use‐case diagram is één van de meest gebruikte onderdelen van UML. Met een use‐case diagram kun je op  een eenvoudige manier vastleggen wat voor soorten gebruikers (actors) er zijn en wat voor handelingen (use  cases) die met een systeem kunnen verrichten. Het mooie van use‐case diagrammen is dat ze zo gemakkelijk zijn te  begrijpen dat je ze goed kunt gebruiken voor overleg met een klant. In onderstaande voorbeelden gaan we uit van  een pinautomaat. 

Actors  
Een actor geef je aan met een poppetje met daaronder de naam.   In de figuur hiernaast is pinklant een voorbeeld van een actor.   Een actor is een object dat direct communiceert met een systeem.   Dat kan dus een mens of een ander systeem zijn. 

Use‐cases 
Een use‐case wordt weergegeven met een ellips, met daarin de titel van de use‐case. Een use‐case staat voor een  bepaalde handeling of interactie die de actor met het systeem kan hebben. Meestal is de titel van de use‐case dan  ook iets met een werkwoord. In de figuur hiernaast is "geld_opnemen" een voorbeeld van een use‐case. Met een  pijl kun je aangeven dat een bepaalde actor een bepaalde use‐case mag uitvoeren.  

   Deze actie wordt een sub‐case genoemd. Meestal heb je meerdere actoren en meerdere  use‐cases. Naast de actor pinklant is er nog een actor bankmedewerker die het  pinapparaat regelmatig aanvult.   Je ziet in dit diagram dat er vanuit de actie geld_opnemen een vervolgactie binnen het systeem ontstaat. waartussen include staat worden guillemets genoemd.  Je hebt bijvoorbeeld de pinklant.     o o o o Het systeem staat in een grote rechthoek. Behalve het diagram wordt  ook altijd nog een beschrijving toegevoegd. Die actor staat rechts van het systeem. dat kun je ook een object  noemen. en een pinpas. en een woord tussen die tekens wordt een  stereotype genoemd.   Links staan de actoren die gebruikers voorstellen die het systeem gebruiken met een bepaald doel.Use‐case diagrammen   Een figuur als hierboven wordt een use‐case diagram genoemd. Je ziet dat je zo snel een duidelijk overzicht krijgt van de interacties binnen het  systeem.  En natuurlijk zal bij het pinnen de database van de bank geraadpleegd moeten worden.  . en met een diagram kun je dan duidelijk maken wie wat mag of moet doen.  Dan hebben we de pinautomaat zelf. niet hoe het systeem  dat doet. dat is ook een object. anders kan hij  of zij niet pinnen.  o o   Klassen. dat zijn de zaken die bepaalde handelingen  verrichten.  Verder is er een object.   Je ziet in het diagram nog meer. en een use‐case wordt met een sub‐case verbonden door een pijl  (met streepjeslijn) waarbij <> staat. Hieronder zie je een uitgebreider use‐case diagram. Methoden en diagrammen  Objecten  Bij de pinautomaat heb je te maken met een aantal objecten. daar worden de actoren getekend die een dienst  verzorgen. De software wordt als een black‐box beschouwd. de  use‐case vind_rekening.   De tekens. Dat is het eerste object. De derde actor is de computer die geraadpleegd wordt vanuit de sub‐case  vind_rekening. De actor  pinklant heeft nog een tweede use‐case: saldo_opvragen. Die zal een rekening hebben bij een bepaalde bank. waarin het geld zit dat gepind kan worden. maar we nemen toch maar aan dat het een apart object is. Objecten. Dat object zal  vast heel dicht in de buurt van de pinautomaat zitten. Daarom noemen we de pinklant vanaf nu een rekeninghouder. Vanuit deze use‐case vindt ook weer de  vervolgactie vind_rekening binnen het systeem plaats. Daarin wordt beschreven wat het systeem doet. Dat noemen we de pin_geldkluis.

  Je hebt een methode die we maar "werk_hoeveelheid_bij". Daarin zie je dat er ook klassen zijn die geen attributen hebben. met bovenin een vak waarin de naam van de klasse. En het wordt ook wel een instantie van de klasse pin_geldkluis genoemd.  Als je een diagram maakt met daarin alle klassen.  Methoden  Die aantallen veranderen natuurlijk voortdurend. van der Beek.  De attributen en methoden van de klasse worden weergegeven in twee andere vakken binnen de rechthoek. Het programma‐ onderdeel dat daarvoor zorgt noem je een methode.  Als je de pin_geldkluis van de pinautomaat van de Frieslandbank in Buitenpost als voorbeeld neemt.  Attributen  In die pin_geldkluis van de pinautomaat van de Frieslandbank in Buitenpost zit een bepaalde hoeveelheid  bankbiljetten. Die aantallen noem je de attributen  van de klasse pin_geldkluis. Het  wordt ook wel een instantie van de klasse rekeninghouder genoemd. Van het pinproject zie je  het het klassendiagram hieronder.Klassen  Er zijn natuurlijk een heleboel rekeninghouders. en een aantal biljetten van 20 euro en een aantal biljetten van 10 euro. en in de geheugenplaatsen moeten die veranderingen ook  worden bijgehouden. dan is dat een object. de methode die daarvoor zorgt noemen we "geef_geld".  De verzamelnaam voor alle pin_geldkluisen is de klasse pin_geldkluis. En die 200 euro moet dan in de la van de pinautomaat  worden gelegd. En de pin_geldkluis bevat vast ook wel een chip met geheugenplaatsen. De verzamelnaam voor al die rekeninghouders is een klasse. dan noem je dat het klassendiagram.  En als je een bepaalde rekeninghouder hebt.  In UML worden klassen door rechthoeken voorgesteld. Er zitten misschien wel 200 biljetten van 100 euro in. en misschien ook wel 200 biljetten van 50  euro. Dus een klasse bevat ook een aantal methoden. bijvoorbeeld de heer R. daar gaan we nu nog niet op in. de  attributen in het middelste vak en de methoden in het onderste vak.     .  Als er 200 euro is gepind (4 keer 50 euro) dan moet het aantal 50jes met 4 worden verminderd.  Verder bestaan er vaak nog relaties tussen de klassen. dan is dat een  object. waarin die  aantallen worden vastgelegd.J.

 en afgekort tot OO (object‐oriënted). je  ziet in welke chronologische volgorde de verschillende acties worden uitgevoerd. vd Beek zijn pinpas in het pinapparaat duwt. dan wordt die gebeurtenis in UML  omschreven als: het object R.  Daarna stuurt het pinapparaat een seintje naar de erop aangesloten computer om in de database het pasnummer  te controleren.  Het pinapparaat voert vervolgens de methode "lees_pasnummer" uit.   Het uitgangspunt voor het maken van een sequentiediagram is de use‐case. vd Beek stuurt de volgende boodschap naar het pinapparaat: controleer mijn  pinpas.  Als we bovenstaand use‐case diagram nemen dan zijn er een aantal gebeurtenissen die achter elkaar plaatsvinden. Deze methode wordt object‐geöriënteerd genoemd.    Sequentiediagram  Een sequentiediagram of volgordediagram is een diagram waarin interactie in de tijd zichtbaar wordt gemaakt.  Het basis‐idee van object‐georiënteerd modelleren is dat de wereld bestaat uit objecten die met elkaar  communiceren door elkaar boodschappen te sturen.  En zo gaat dat verder.  Die gebeurtenis wordt in UML omschreven als: het object pinapparaat stuurt de volgende boodschap naar het  object computer: controleer het pasnummer. die er gebeuren.J. en het uitvoeren van methoden door de objecten.  Bij Geld opnemen zijn dat:  o o o o o o stop de pas in de gleuf  toets de pincode in  kies Geld opnemen  toets de hoeveelheid geld in  neem de pas uit  neem het geld  .Object‐geöriënteerd  In UML worden de dingen.  Als de rekeninghouder R. meestal omschreven als het versturen van boodschappen door  objecten.J.

 en een actie wordt hier altijd opgevat als een  verzoek of boodschap aan een ander object.  Is een object actief.  voorafgegaan door een dubbele punt. hebben we hierboven gezien.    .  We hebben daarbij te maken met een aantal objecten. en in de rechthoek wordt de naam van het object vermeld. de database. dan wordt dat met een verdikking van de tijdlijn (het wordt een rechthoek) aangegeven. en dan wordt er vaak een boodschap  teruggestuurd. zijn weggelaten.  Een actie wordt met een pijl naar het object toe weergegeven.  Als reactie wordt meestal een methode uitgevoerd door het object. en de pin_geldkluis.  Onder het object wordt een vertikale tijdlijn aangegeven.  Het diagram is onvolledig. voor de andere scenario's wordt  dan een apart sequentiediagram gemaakt.  Meestal wordt er in een sequentiediagram maar één mogelijkheid uitgewerkt.  Dat zijn: een rekeninghouder. de pinautomaat.  Objecten worden met rechthoeken aangegeven. Dat wordt dan ook weergegeven met een pijl. maar dat is dan een pijl met een streepjeslijn  (zie pasnummer_akkoord en pincode_akkoord en leg_geld_klaar).Een voorbeeld van het bijbehorende sequentiediagram staat hieronder:    o o o o o o o o Een rekeninghouder wil geld opnemen. want de situaties waarin het pasje geweigerd wordt enz.

 dan  wordt die pas gecontroleerd en dan wordt er een vervolgactie ingezet.   In het begin toont het scherm een welkomstscherm. een kleinere stip in een cirkel is het eindpunt. Een grote gele stip geeft een keuzeblokje  (choicepoint) aan. Is er een persoon die zijn pinpas in het apparaat duwt. Een afgeronde  rechthoek geeft een toestand weer.    . en daarbij kunnen voorwaarden  worden opgenomen.     Een grote zwarte stip geeft het startpunt aan. en hoe  die toestand verandert door de operaties die op het object worden uitgevoerd. Wat die vervolgacties zijn is gemakkelijk uit  onderstaand toestandsdiagram af te lezen. Als voorbeeld nemen we wat er op  het scherm van de pinautomaat verschijnt na bepaalde acties.Toestandsdiagram  Een toestandsdiagram of statechartdiagram geeft aan op welke wijze een object van toestand kan veranderen als  reactie op gebeurtenissen. vandaaruit vertrekken twee pijlen: één voor de actie die wordt ondernomen als de voorwaarde  waar is. en één voor de actie die wordt ondernomen als de voorwaarde niet waar is. die er tussen haken bij worden geplaatst. een pijl geeft een toestandsovergang weer. Een statechartdiagram beschrijft dus de mogelijke toestanden van een object.

Sign up to vote on this title
UsefulNot useful