Classificatie

Classificeren is niets anders dan ‘in hokjes stoppen’. In het dagelijks leven doen we dit vele malen zonder ons daarvan steeds bewust te zijn. We verdelen de maatschappij in sociale lagen, schapen in witte en zwarte, we kennen gabbers, punkers en nerds en we praten over planten en dieren. Steeds verdelen we een verzameling objecten in allerlei categorieën of klassen. Meestal hanteer je bij het classificeren een bepaald criterium, bijvoorbeeld gewicht, prijs of levensovertuiging, zodat er gewichtsklassen, prijsklassen of geloofsgemeenschappen ontstaan.

In het kader van objectmodellering is classificatie van belang zodra de ‘hokjes’ zelf een rol gaan spelen in de functies. Dat is het geval als eigenschappen van de afzonderlijke klassen het gedrag van het systeem bepalen. Zo zouden naast eigenschappen van individuele auto’s, ook eigenschappen van de automodellen een rol kunnen spelen, bijvoorbeeld bij het bestellen van auto’s. Er zijn twee manieren waarop de klasse zelf een rol kan spelen:

  1. eigenschappen van de klasse zelf zijn van belang, zoals het aantal verkochte exemplaren, het aantal klachten enzovoort;
  2. de functies maken gebruik van wetmatigheden, dat wil zeggen eigenschappen die voor elk van de elementen van de klasse gelden. Bijvoorbeeld de catalogusprijs, het motorvermogen, de duur van de carrosseriegarantie enzovoort.

We definiëren een classificatie formeel als volgt:

objecttype A is een classificatie van objecttype B als (en slechts als) geldt dat elk element van A een deelverzameling (een klasse) van B is.

Deze definitie stelt dat elk element van de classificatie zelf ook een verzameling gelijksoortige objecten is.

Het is, met andere woorden, mogelijk dat een object van de geclassificeerde soort deel uitmaakt van verschillende klassen. Iemand kan bijvoorbeeld zowel groenteboer als slager zijn.

Op welke wijze wordt nu de definitie van objecttype B gebruikt bij het herkennen van objecten van type A? Elk object van type A is een klasse van objecten van type B, dus bestaat uit objecten die voldoen aan definitie B én aan het classificatiecriterium. Elke definitie van een classificatie bevat een classificatiecriterium.

Het classificatiecriterium is een set van beslissingsprocedures, voor elke klasse één, waarmee van elk object van het geclassificeerde type bepaald kan worden of hij wel of niet tot de betreffende klasse behoort.

Beschouw als voorbeeld een productiebedrijf. We definiëren een product als een artikel dat door het bedrijf wordt geproduceerd. We definiëren een 'productmodel' als een klasse van producten die aan één van de specificaties uit het productassortiment voldoen. ‘Productmodel’ is daarmee een classificatie van ‘product’. De verzameling productspecificaties vormt het classificatiecriterium. Om te beoordelen of een aangereikt object van het type productmodel is, beoordelen we eerst:
  • of het object zelf een verzameling (een klasse) is;
  • zo ja, of elk element van die verzameling een product is;
  • zo ja, of voor één van de productspecificaties geldt dat de verzameling precies gelijk is aan de verzameling van alle producten die aan die specificatie voldoen.

Als we met deze definitie in de hand kijken naar telefoongesprekken, constateren we het volgende. De verzameling telefoongesprekken is:

  • een verzameling,
  • waarvan elk element een telefoongesprek is,
  • maar waarvoor bijvoorbeeld binnen het assortiment geen specificatie te vinden is waaraan alle telefoongesprekken voldoen.

‘Telefoongesprek’ is dus geen object van het type productmodel, terwijl ‘Voip’ dat bijvoorbeeld wel is.

Lees verder:specialisatie en generalisatie