Objekt orientiertes Desing

Ist es so richtig? kann mir das einer sagen?

  • Richtig

    Stimmen: 2 66,7%
  • Falsch

    Stimmen: 2 66,7%

  • Anzahl der Umfrageteilnehmer
    3

suryoyo

Mitglied
Hallo Leute,

folgende Aufgabe:

Entwerfen Sie ein OO-Design in Form von Klassendiagrammen der Analyse mit folgenden
Eigenschaften:
• die Stadtwerke haben Busse und Bahnen (Attribute Kennnummer, Fahrzeugtyp)
• jedes Fahrzeug wird durch einen Fahrer/Fahrerin gesteuert (Attribute Namen, Alter und
Wohnort)
• Es gibt unterschiedliche Linien mit mehreren Haltestellen (Attribut: Haltestellenname)
Entwerfen Sie die hierfür benötigten Klassendiagramme (Vernachlässigen sie in der Darstellung
unwichtige oder naheliegende Variablen und Methoden, z.B. get- und set Methoden).

Hier mein Lösungsvorschlag:stadtwerke.jpg

Was meint ihr dazu?
 

Tobse

Top Contributor
Grundsätzlich sieht das ganz okey aus. Mir sind folgende Dinge aufgefallen:

  • Die Kardinalität Bus + Bahn zu Fahrer ist falsch: Das ist ein N:1 und nicht 1:N
  • Wozu die Klasse Liniennetz? Die wird im Text nicht erwähnt
  • Die Klasse "Bahnen" sollte "Bahn" heissen
  • Ist das ein UML in Excel?!??!??!!!!?!!!Einself?! Darf man ja keinem Erzählen... benutzt sowas wie ArgoUML oder Dia, mglw. sogar Visio. Excel ist das absolut falsche Werkzeug für diese Aufgabe (schonmal versucht mit einem Schraubenzier einen Brunnen zu graben?)
 

suryoyo

Mitglied
servus Tobse,
bin echt noch ein anfänger und unser lehrbeauftragte ist übelst am springen in den themen. ja über Excel :D die softwares die du aufgezählt hast kenn ich garnicht. dann werde ich mir mal eins aussuchen.
in der aufgabenstellung stand "unterschiedliche Linien mit mehreren Haltestellen" daher kam mir die idee.
danke dir vielmals für deinen support.
 

Tobse

Top Contributor

Joose

Top Contributor
Warum haben die Klasse "Bus" und "Bahn" denn eine Liste mit Kennnummern? Jeder Bus oder jede Bahn kann doch nur eine haben? Das ein Bus/eine Bahn von mehreren Fahrern gefahren wird ist so schon in Ordnung, man muss eben nur bedenken es kann nur einen aktuellen Fahrer geben.

Die Klasse Liniennetz würde ich einfach zu "Linie" umbenennen ;) ... ein Netz besteht aus mehreren Linien, du willst aber nur eine abbilden mit dieser Klasse oder?
Außerdem würde mir hier ein Attribut wie Linienbezeichnung oder ähnliches fehlen. Desweiteren kann es nur "Bus"linien geben, für Bahnen gibt es kein Attribut.
Generell würde ich für die Klasse Bus und Bahn eine gemeinsame Oberklasse Fahrzeug einführen (mit dem Attribut Kennzeichen und Fahrzeugtyp). Die Klasse Linie hat dann eine Liste von Fahrzeugen.
 

suryoyo

Mitglied
ich dachte es gibt mehrere Busse die eine Nummer haben und das wollte ich damit ausgeben.
ich wollte mit der Klasse Liniennetzt das ganze netzt zeigen.

Gute idee mit dem Fahrzugen und der Vererbung. Danke.
 

Joose

Top Contributor
ich dachte es gibt mehrere Busse die eine Nummer haben und das wollte ich damit ausgeben.

Das Klassendiagramm zeigt aber nur den Aufbau einer Klasse an. Die Klasse ist der Bauplan für ein Objekt ;)
Sprich aus der Klasse "Bus" wird ein Bus-Objekt erstellt. Und jeder Bus hat maximal ein Kennzeichen.
Natürlich hast du recht das es beliebig viele Busse mit unterschiedlichen Kennzeichen geben kann.

ich wollte mit der Klasse Liniennetzt das ganze netzt zeigen.
Dann würde ich zusätzlich aber eben eine Klasse Linie einführen (Attribute-> Bezeichnung: String, Haltestellen: Liste, Fahrzeuge: Liste) und das Liniennetz eben (Attribute-> Linie: Liste)
 

Oben