22.08.2013 Views

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

Transformatie Natuurlijke Taal Object Georiënteerd Analyse ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Figuur 2-7 KISS-model klant en rekening<br />

Naast het sterke en het zwakke objecttype wordt er nog een derde soort objecttype onderscheiden: het Gerundium.<br />

Een gerundium is een objecttype dat van twee of meer objecttypen afhankelijk is. Een voorbeeld is het<br />

objecttype verzekering dat ontstaat door de actie verzekeren uit te voeren op de objecttypen auto en maatschappij.<br />

Het begrip gerundium is overigens afkomstig uit de Nederlandse taal waar het een verzelfstandiging van een<br />

werkwoord voorstelt; verzekeren := verzekering, betalen := betaling. Dit procédé is nodig omdat in de Nederlandse<br />

taal niet twee actieve werkwoorden achter elkaar gebruikt kunnen worden zonder het voegwoord en te<br />

gebruiken. Men kan niet zeggen: “We betalen verzekeren de auto bij de maatschappij.” Een van de twee<br />

werkwoorden moet verzelfstandigd worden tot een gerundium met als resultaat: We betalen de verzekering van<br />

de auto bij de maatschappij” of “We verzekeren de betaling van de auto bij de maatschappij”. Merk op dat de<br />

twee zinnen een totaal verschillende betekenis hebben wat tot uitdrukking zou komen in de bestaansafhankelijkheid<br />

tussen de verschillende objecttypen. Het gerundium geeft een impliciete afhankelijkheid weer. Zo<br />

moet in de eerste zin eerst de auto verzekerd zijn alvorens de verzekering betaald kan worden. In de tweede zin<br />

moet eerst de betaling bestaan alvorens die verzekerd kan worden.<br />

In het vervolg wordt met objecttype zowel het sterke objecttype, het zwakke objecttype als het gerundium bedoeld.<br />

Alleen als een van drie specifiek bedoeld wordt zal deze bij de naam worden genoemd. De volgende<br />

symbolen worden voor het sterk objecttype, het zwak objecttype en het gerundium gebruikt.<br />

sterk objecttype zwak objecttype gerundium<br />

Figuur 2-8 Symbolen typeniveau<br />

2.4.5.2 Classificatie: <strong>Object</strong>klasse, Specialisatie en Categorie<br />

Bij het modelleren van objecttypen is vaak te zien dat objecten van verschillende objecttypen gelijksoortig gedrag<br />

of kenmerken vertonen in een bepaalde situatie. In zo’n situatie kunnen dan de objecttypen gegroepeerd<br />

worden. Hiervoor worden drie groeperingssymbolen gebruikt: <strong>Object</strong>klasse, Specialisatie en Categorie.<br />

De objectklasse ontstaat door het groeperen van objecten van één objecttype. Bijvoorbeeld de objecten van het<br />

objecttype persoon worden gegroepeerd in de objectklasse Personen. Meestal wordt voor de naamgeving de<br />

meervoudsvorm gebruikt om aan te geven dat men met meerdere objecten te maken heeft.<br />

De specialisatie komt altijd voor in combinatie met een generalisatie. De generalisatie geeft een beschrijving<br />

van de generieke kenmerken van objecten. Een specialisatie classificeert objecten op basis van lokale kenmerken<br />

waarbij de algemene kenmerken van de generalisatie geldig blijven.<br />

Een specialisatie ondergaat niet zelf de acties die bij de objecten horen. Deze worden altijd uitgevoerd op de<br />

generalisatie. Voor een specialisatie wordt dan ook geen KISS-model opgesteld. Met behulp van één IS-A symbool<br />

wordt aangegeven welke specialisaties bij een generalisatie horen. Vaak zijn er twee of meer specialisaties<br />

omdat een specialisatie een verschil tussen twee objecttypen uitdrukt. Het is echter mogelijk om één specialisatie<br />

te hebben. Als intuïtief voorbeeld kan men het objecttype persoon nemen met de specialisaties medewerker<br />

en student.<br />

Een categorie wordt gebruikt voor het groeperen van verschillende objecttypen die dezelfde actie kunnen ondergaan,<br />

Denk bijvoorbeeld aan het actietype eten dat kan worden uitgevoerd op de objecttypen banaan, appel<br />

en peer. Om te voorkomen dat er drie verschillende actietypen geïntroduceerd moeten worden (eten_appel,<br />

eten_banaan en eten_peer) worden de drie objecttypen gegroepeerd in de Categorie fruit waarvoor het actietype<br />

eten opgenomen wordt. De ouders van de Categorie zijn dan de objecttypen appel, banaan en peer. Een Categorie<br />

heeft altijd twee of meer ouder objecttypen. Ook hier wordt de relatie weer aangegeven met één IS-A<br />

symbool. Ook voor de categorie wordt geen KISS-model opgesteld. Dit gebeurt voor de ouderobjecttypen. Actietypen<br />

die met een categorie geassocieerd zijn, komen dan ook op alle KISS-modellen van de ouderobjecttypen<br />

voor.<br />

© KISS b.v. 22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!