Software Engineering >> Strukturiertes Design >> Kohäsion

Kohäsion


Kohäsion klingt zwar wie eine Krankheit, ist aber ein Begriff aus dem Software-Engineering. Kohäsion bedeutet: innere Bindung der Funktionen, Anweisung einer Komponente.

Man könnte auch sagen, dass Kohäsion die Stärke der Bindung von Funktionen einer Komponente beschreibt. ("Grad der funktionalen Zusammengehörigkeit")


Wodurch zeichnet sich optimales Systemdesign aus?
  • Maximierung der Kohäsion - Funktionen einer Komponente sollten eine starke Bindung haben
  • keine Aufteilung von Funktionen auf mehreren Komponenten
  • keine Zusammenfassung nicht zusammengehöriger Komponenten

Kohäsion - normale Bindung


Man unterscheidet die Kohäsion nach verschiedenen Arten. Die erst Art der Kohäsion ist die normale Bindung. Bei der normalen Bindung enthält jedes Modul nur Funktionen, die inhaltlich zusammenpassen und mit gemeinsamen Daten arbeiten.

Arten der Normalen Bindung


Funktionale Bindung
  • Das Modul enthält nur Elemente, die eine einzige Funktion ausführen
  • Modul mit funktionaler Bindung ist oft erkennbar an seinem aussagekräftigen Namen
  • Modul verfolgt einen klaren Zweck

Sequentielle Bindung
  • Das Modul enthält eine Folge von Aktivitäten, die sequentiell abgearbeitet werden.
  • Modul verfügt über eine gute Kopplung und ist leicht wartbar
  • Nachteil: schlechte Wiederverwendbarkeit

Kommunizierende Bindung
  • Das Modul führt verschiedene Funktionen aus, die alle die selben Ausgabe- und Eingabeparameter nutzen
  • Die Funktionen stehen jedoch nicht im funktionalen Zusammenhang.

Weitere Bindungsarten


Prozedurale Bindung
  • Modul enthält verschiedene Funktionen, bei denen Kontrolldaten von Funktion zu Funktion weitergegeben werden.
  • Es sind kaum Beziehungen zwischen Eingangs- und Ausgangsparametern vorhanden

Temporäre Bindung
  • Modul enthält Aktivitäten, die zeitlich unabhängig voneinander sind.
  • Klassische Beispiel für eine temporäre Bindung: Initialisierung einer Variablen

Logische Bindung
  • Das Modul enthält Funktionen, die fest zusammenhängen und einen logischen Zusammenhalt bilden.
  • Gefahr bei der logischen Bindung: Programmteile werden untrennbar miteinander verbunden, wodurch die Wartung des Softwaresystems sehr erschwert wird.
Zufällige Bindung
  • Die Aktivitäten / Funktionen stehen in keiner Beziehung zueinander ("zufällig").
  • Keine Verbundenheit durch Datenflüsse oder Kontrollflüsse
  • Hierbei handelt es sich um eine Bindungsart, die noch schlechter ist als die logische Bindung.


Werbung
Buch - Empfehlung
Letzte Forenbeiträge