Kurs 20022 objektorientiertes Programmieren

Einsendeaufgaben zu Lerneinheit 1


Anwendungsfallbeschreibung:

Erstellen Sie eine Anwendungsfallbeschreibung eines Bankautomaten. Damit sollen die Funktionen, die es ermöglichen, mit der EC-Karte Bargeld abzuheben und den Kontostand abzufragen, dargestellt werden. Stellen Sie bitte die Anwendungsfälle und Akteure in grafischer (3 Punkte) und zwei Anwendungsfallbeschreibungen in tabellarischer Form (5 Punkte) dar!

Folgen Sie dazu dem Muster im Kurs!

Für die Grafik können Sie eines der Werkzeuge benutzen, auf die auf der Startseite hingewiesen wird.

Klassendiagramm: (5 Punkte)

Entwickeln Sie zu den oben genannten Anwendungsfallbeschreibungen ein Klassendiagramm!

Einführung in BlueJ: (4 Punkte)

Bei dieser Aufgabe soll mit Hilfe des BlueJ-Werkzeugs ein Auto aus geometrischen Figuren zusammengebaut werden. Dabei gehen Sie wie folgt vor:

Erzeugen Sie mit Hilfe der 3 im Projekt "Golf" definierten Klassen Kreis, Rechteck und Dreieck einen Wagen vom Typ "Golf I" durch Verschieben, Vergrössern und Veränderung der Farbe der Objekte.

Hierzu benötigen Sie:

  • 2 schwarze Kreise für die Räder
  • 3 Dreiecke für Front, Frontscheibe und Heckscheibe
  • 3 gleichfarbige Rechtecke für Chassis, Mittelbau und Fahrgastzelle.

Die Farbgebung bleibt Ihnen (im Rahmen der möglichen Farben) überlassen.

Hierzu müssen Sie die Projektdatei "golf" mit BlueJ öffnen, alle Klasse übersetzen (compile) und durch Erzeugung von Exemplaren der Klassen "Rechteck", "Kreis" und "Dreieck" und Änderungen der Attribute dieser Exemplare das Auto zusammensetzen. Senden Sie uns ein Abzug (Screenshot) ihres Bildschirms, worauf "Ihr" Wagen und das BlueJ-Arbeitsfenster zu sehen sind, an den Kursbetreuer.


Sortieren von Begriffen: (5 Punkte)

Suchen Sie in der folgenden Projekt die Begriffe heraus, von denen Sie meinen, dass sie in eine der folgenden Kategorien passen. Sortieren Sie sie in die richtige Kategorie ein (4 Begriffe pro Kategorie):

Es gibt folgende Kategorien:

  • Klasse,
  • Objekt,
  • Attribut und
  • Methode.

Projektbeschreibung

Es ist eine Vereinsverwaltung zu realisieren, bei der zunächst einmal die Mitglieder administriert werden sollen. Jedes Mitglied hat eine Adresse, eine Mitgliedsnummer und eine oder mehrere Funktionen und muss genau eine Betragart zahlen.

Es gibt in dem Verein eine unbestimmte Anzahl von Rollen, z. B. Mitglied des Vorstand, Abteilungsleitung, Arbeitsgruppenmitglied usw. Die Verwaltung soll es ermöglichen, dass neue Funktionen eingegeben, verändert oder auch gelöscht werden können.

Weiterhin gibt es in dem Verein verschiedene Beitragssätze, die nicht direkt den Funktionen zugeordnet werden können. Jedes Mitglied zahlt nur eine Art von Betrag. Da es dem Vorstand und dem Mitgliederversammlung möglich sein soll, nachträglich neue Beitragssatzarten zu schaffen oder vorhandene zu ändern oder abzuschaffen, müssen die Beitragssatzarten entsprechend bearbeitbar sein. Es soll auf jeden Fall die Beitragsarten Beitrag für aktive Mitglieder" und "Beitrag für Fördermitglieder" geben.

Zur Klärung späterer Unstimmigkeiten und zur Vermeidung von unnötiger Papierflut sollen die Rechnungen im System gespeichert werden. Eine Rechnung enthält unter anderem eine eindeutige Rechnungsnummer, die Mitgliedsnummer des Adressaten, den Rechnungsbetrag und die Betragsart.

Es soll möglich sein, eine alphabetisch sortierte Liste aller Mitglieder auszugeben und alle Jahresbetragsrechnungen zu drucken. Weiterhin muss es aber auch möglich sein, die Rechnung mit der Nummer 2521 für das Mitglied Meier zu drucken.

Die verschiedenen Vorstandspositionen sollen als Funktionen realisiert werden, so ist z. B. das Mitglied Müller der Vorstandsvorsitzende, d. h. "Vorstandsvorsitzende/r" ist eine Funktion.

Sind folgende Aussagen richtig oder falsch? (3 Punkte)

  • In dem Augenblick, in dem eine Klasse mit individuellen Eigenschaften versehen wird, wird sie zu einem Objekt.
  • Das Verhalten eines Objekts wird nur durch seine Methoden bestimmt.
  • Der Zustand eines Objekts wird durch die Werte seiner Attribute eindeutig bestimmt.