Seite 1 von 1

Übung 7.2 b) Kohäsion interpretieren

Verfasst: 25. Feb 2013 23:36
von kayonewonder
Hallo zusammen,

in der Übung 7.2 b) musste man den Kohäsion-Wert aus a) interpretieren. Nun haben wir den Wert LCOM = 8 von 26 ermittelt. Laut Interpretation liegt hier eine schwache Kohäsion vor.
Meine Frage lautet: Wie sehe ich denn, ab welchem Wert die Kohäsion schwach bzw stark ist? Woran erkenne ich das?
Aus den Folien geht hervor, ich zitiere: "A high value indicates a low cohesion" (VL 8 Folie 19)

Danke für die Hilfe :)

Gruß

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 00:22
von Capono
Hi Kashif Bruder ;).
Durch die LCOM = 8 von 26 erkennt man das die Kohäsion schwach ist was bedeutet das es viele Code duplicate geben kann, dass erkennt man davon das man 26 Methoden in 8 zusammenfassen konnte. Würde man 26 von 26 haben würde man eine hohe Kohäsion haben was normalerweise auch das Ziel sein sollte. Hoffe ich habe das richtig verstanden... Ich geb keine Gewähr dafür, hoffe das, dass jemand bestätigen kann.

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 00:25
von kayonewonder
Danke für deine Antwort Asamah Bruder :D

Ok, so verstehe ich das jetzt genau ^^

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 00:52
von genix
Hallo,

am LCOM Wert erkennt man, ob eine Klasse eine oder mehrere Abstraktionen enthält. Die Idee ist nun, sollte eine Klasse nun mehrer Abstraktionen haben (also einen hohen LCOM Wert), diese in mehrere Klassen aufzuteilen.

Ein hoher LCOM Wert stellt also eine niedrige Kohäsion dar, und ein niedriger LCOM Wert (hohe Kohäsion) ist normalerweise das Ziel. Eine hohe Kohäsion weißt normalerweise auch auf nur eine Verantwortung der Klasse hin (Single-Responsibility-Prinzip).

Grüße.

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 01:14
von Capono
danke, hatte das vollkommen falsch verstanden gehabt :)

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 13:29
von kayonewonder
Hi,

ist der LCOM Wert 8 dann nicht niedrig? Wie weise ich die niedrige oder hohe Kohäsion zu :shock: ???

Re: Übung 7.2 b) Kohäsion interpretieren

Verfasst: 26. Feb 2013 14:53
von genix
Hallo,

LCOM 8 von 26 deutet meiner Meinung nach auf eine niedrige Kohäsion hin. Nun bleibt es dem Entwickler überlassen zu prüfen, ob es sinnvoll ist die Klasse so zu lassen oder mehrere Klassen aufzuteilen (Aufteilung der Verantwortungen).
Eine rein objektive Betrachtung durch den LCOM Wert ist nicht möglich bzw. empfehlenswert, er dient eher zur evtl. Schwachstellenfindung im Design.

Grüße.