→ familie van grafische notaties met een achterliggend metamodel
om OO-software systemen te beschrijven en te ontwerpen
→ open standaard
→ gecontroleerd door de OMG (Object Management Group)
Een meta-model is een expliciet model van de constructies en regels die nodig zijn
om specifieke modellen voor een bepaald vakgebied te bouwen.
→ samenvoegsel van 3 Object georiënteerdemodelleertechnieken en methodes:
o Booch (Rational Software)
o Jacobson’s OOSE (Object Oriented Software Engineering) met use cases
o Rumbaugh’s OMT (Object Modelling Technique)
BELANG VAN VISUEEL MODELLEREN
Software bouwen is als een huis bouwen. Je begint met een model en werkt zo alles
verder uit tot je het verwachte resultaat bekomt.
“Een model is een vergemakkelijking van de realiteit.”
“We bouwen modellen zodat we het systeem dat we aan het ontwikkelen zijn
beter kunnen begrijpen.”
Een model kan structureel zijn: organisatie van het systeem
Een model kan ook gedragingen bevatten
Een visueel model kan een verzameling gerelateerde UML diagrammen zijn.
Voor een volledig model moeten we zeker zijn dat er:
o Niets ontbreekt
o Geen duplicaten zijn
o De elementen een naam hebben en in elk diagram waarin ze voorkomen op
dezelfde manier gedefinieerd zijn.
o De relaties tussen elementen gedefinieerd zijn op dezelfde manier in elk
diagram waarin ze voorkomen
Vanaf een zeker grootte hebben we software nodig voor het beheer van deze
complexiteit, om het model op te slaan en de integriteit te waarborgen.
,WAAROM SOFTWARE MODELLEREN
o Een model helpt ons het systeem te visualiseren.
o Een model laat ons toe om structuur of gedrag in kaart te brengen.
o Een model geeft ons een template.
o Modellen documenteren de beslissingen die we hebben genomen.
o Een model is een abstractie dat een systeem of een subset ervan beschrijft.
(weglaten van alle niet-essentiële informatie en secundaire aspecten)
(= vereenvoudiging)
o Een view geeft de geselecteerde aspecten van een model weer.
o Een notatie is set grafische of tekstuele regels om een view weer te geven.
Modellen zijn een abstractie van de werkelijkheid,
abstractie hangt af van het perspectief van de viewer.
De ontwerper van het model kiest welke informatie
beschouwd wordt als relevant en wenst te communiceren.
Bijvoorbeeld:
Een kaart is een abstractie: toont wegen en gebouwen
Maar, verbergt de kleur van de gebouwen, geeft geen hoogteverschillen weer, …
Code is vaak niet direct begrijpbaar voor ontwikkelaars die niet hebben
deelgenomen aan de ontwikkeling, daarom hebben we eenvoudigere weergaven
nodig voor complexe systemen. Modelleren is een manier om met die complexiteit
om te gaan.
KENMERKEN VAN UML
Hoe UML gebruiken?
o Sketch (communicatiemiddel: informeel en dynamisch)
o Blueprint (volledigheid)
o Programmeertaal (MDA = Model Driven Architecture)
o Reverse Engineering (van software naar ontwerp)
,UML is:
o Geen methode: hoe het gebeurt of hoe je het moet doen
o Geen methodologie: onderzoek naar de methoden
o Wel een modelleertaal:
kunstmatige formele taal, die gebruikt kan worden om definities van
begrippen en informatie, kennis en/of vereisten over producten,
systemen en/of processen weer te geven
o De standaard voor het modelleren van object georiënteerde software.
o Een “nonproprietary approach”, OMG onderhoudt de UML-standaard
o Methode-onafhankelijk en bevoordeelt geen methodologie
o Ondersteunt de volledige levenscyclus van ontwikkeling:
van conceptualisatie, analyse tot architectuur en ontwerp, constructie en
documentatie.
o Werkt voor kleine en grote systemen
o Zowel begrijpbaar door software tools als mensen
o Verenigt zowel OO-aanpak als niet OO-aanpak bij ontwikkelen van systemen
o Onafhankelijk van de keuze van een programmeertaal
o Heeft een formeel metamodel: definieert de abstracte syntax (grammar)
‘UML is a standard language for writing software blueprints.’
‘The UML is a language for … the artifacts of a software-intensive system
o Visualizing
o Specifying
o Constructing
o Documenting
Notatie (symbolen) en regels (rules):
Syntax: voorstellingswijze van symbolen
Semantiek: betekenis van symbolen (Bv. zoals een woord in een zin)
UML is zelf een tool: je kan diagrammen op papier of op white board maken.
Er zijn veel tekentools voor UML-diagrammen. (UMLet, Draw- io, Astah, LucidChart)
Er zijn ook UML-case tools:
- ondersteunen (of verplichten) de semantische verificatie van de diagrammen
- voorzien ondersteuning voor een specifieke methodologie
- genereren code skeletons vanuit de UML-diagrammen
- organiseren alle diagrammen voor een project
- automatische generatie van modelelementen voor ontweppatronen.
, UML FIRST PASS
USE CASE DIAGRAMS
KLASSENDIAGRAM
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
√ Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, Bancontact of creditcard voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper DeKeyser. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €2,99. Je zit daarna nergens aan vast.