Das Abitur 2015 ist noch in vollem Gange und die Korrektur läuft, soweit ich das mit meiner aktuellen Magen-Darm-Erkrankung hinbekomme. Zumindest kann ich die Zeit auf dem Klo nutzen und mir so meine Gedanken zum diesjährigen Informatik-Abitur machen.

Mein erster Eindruck? Gut machbar, denn gerade der erste Teil scheint fast auf einer Idee zu basieren, die ich mal in meinem Blog darstellte. Nämlich die Implementierung von UNO ohne Sonderkarten. Das kann jetzt natürlich Zufall sein, aber wer weiß.

Worüber ich mir zur Ablenkung Gedanken machen, ist die Musterlösung. Hier gibt es u.a. folgendes Klassendiagramm (nur Aussschnitt):

Unbenanntes DiagrammEin Talon ist im Übrigen derjenige Kartenstapel mit den verdeckten Karten.

Was mich hier wundert, ist das „0..1“. Gemäß UML-Notation bedeutet das ja nur, dass es kein oder 1 Spiel gibt. Prof. Scheibl schreibt dazu:

Die Angabe einer Multiplizität, insbesondere einer variablen Vielfachheit wird meist durch eine angehängte Auflistung zu realisieren sein. Durch die Festlegung [0..1] wird das Attribut zum optionalen Attribut. Die Vorgabe [1] wird normalerweise weggelassen.

Die Attribute, welche die Beziehung zu Instanzen der Klasse Kartengruppe darstellt, soll optional sein?  Das macht in meinen Augen keinen Sinn.

Allerdings muss man bedenken, dass folgendes gilt (Zitat: Prof Scheibl):

(…)die Multiplizität (…) steht am Ende der Verbindungslinie, also ferne Schreibweise.

Das hieße also, dass „0..1“ sich auf die Sicht des Talons bzw. der Ablage zum Spiel bezieht. Ein Kartenstapel ohne Spiel macht aus meiner Sicht aber auch keinen Sinn.

Die Angabe halte ich auch nicht für sinnvoll, da die Beschreibung der Beziehung aus Sicht des Spiels angegeben wird: „hat als Ablage >“, „hat als Talon >“. Da würde die folgende 1 im Sinne der fernen Schreibweise völlig genügen.

Die Angabe beider Vielfachheiten würde zusätzlich Attribute bei beiden Klassen erzwingen, was ich nicht für sinnvoll halte.

Ich denke, dass die Angabe beider Multiplizitäten hier eher aus dem Datenbank-Denken heraus enstanden ist. Dort gibt es ja 1:1, 1:n und n:m Beziehungen. Oben wäre damit dann eine 1:n-Beziehung gemeint, was nur ein Attribut auf der n-Seite erfordern würde und damit beim Spiel, was wiederum ja sinnvoll wäre. Allerdings hätte dann auch eine 1:1-Beziehung genügt. Dann hätte man das Attribut entweder in die Kartengruppe oder die Spielklasse legen können. Bei mir wäre es in die Spielklasse gekommen, da es aus meiner Sicht nur die Beziehungen „hat“ und „ist“ gibt.