Freitag, 19. April 2013

Das Prinzip der hohen Kohäsion

Die letzten Blogeinträge haben bereits ausführlich gezeigt, dass Kopplung und Kohäsion zwei komplementäre Konzepte sind. Das Prinzip der losen Kopplung, das im letzten Blogeintrag katalogisiert wurde, ist demgemäß auch in vielerlei Hinsicht komplementär zum hier zusammengefassten Prinzip der hohen Kohäsion.

Name, Kurzform Prinzip der hohen Kohäsion
Synonyme -
Beschreibung Die Kohäsion innerhalb eines Software-Elements sollte so hoch wie möglich sein.
Erläuterung Analog zum Prinzip der losen Kopplung stellt die obige Formulierung nicht auf konkrete Element-Typen („Module“, „Klassen“, …) ab. Sie kann überall angewendet werden, wo Zerlegung von Software-Elementen möglich ist.
Beispiele
  • Die Attribute einer Klasse sollten von möglichst vielen Methoden der Klasse gemeinsam verwendet werden. (Keine „Partitionierung“ der Attribute und Methoden einer Klasse.)
  • Analogie: Eine Person, die zu viele unzusammenhängende Verantwortungen übernimmt, arbeitet nicht effizient.
Historie Siehe Prinzip der losen Kopplung.
Art des Prinzips
  • Grundlegende Einteilung: Produktprinzip.
  • Technologiebezug: Allgemeingültig.
  • Entwurfsgüte: Zerlegungskriterium.
  • Handlungsbezug: Erleichterung von Änderung, Wiederverwendung und Verstehen.
  • Kognitionsbezug: Komplexitätsreduktion.
(Siehe Kategorisierung der Prinzipien.)
Grad der formalen Spezifikation In der allgemeinen Form gering. In verschiedenen Spezialisierungen jedoch besser formalisierbar.
Vorteile Siehe Prinzip der losen Kopplung.
Nachteile Siehe Prinzip der losen Kopplung.
Übergeordnete Prinzipien
  • Prinzip der Änderungsnotwendigkeit
  • Lokalitätsprinzip
Abgleitete Prinzipien
  • Single Responsibility Prinzip
  • Interface Segregation Prinzip
Qualitätsmerkmale
(+) Änderbarkeit, (+) Wiederverwendbarkeit, (+) Verständlichkeit