Benutzer-Werkzeuge

Anti-Pattern

Der Begriff „Anti-Pattern“ stammt aus der Softwareentwicklung und beschreibt einen naheliegenden, aber bekanntermaßen in vielen Fällen ungeeigneten Problemlösungsansatz, d.h. eine Vorgehensweise, die mit hoher Wahrscheinlichkeit zu einem negativen Ergebnis führt.

Beispielsweise kann die Versuchung für Projektmanager groß sein, ein Projekt, das bereits aus dem Zeitplan gelaufen ist und bei dem die Programmierer am Rande ihrer Kapazitäten arbeiten, durch die Einstellung zusätzlicher Arbeitskräfte zu „retten“.

Was in einer solchen Situation aber mit hoher Wahrscheinlichkeit passieren wird, ist, dass die neuen Mitarbeiter, die ja zunächst von den Erfahreneren eingearbeitet und geschult werden müssen, das Projekt als Ganzes eher noch weiter verzögern, anstatt es zu beschleunigen (diese Beobachtung ist auch bekannt als „Brooks’s law“).

Herkunft des Namens

Design-pattern (Entwurfsmuster)

Um den Begriff „anti-pattern“ zu verstehen, ist es sinnvoll, zunächst dessen Gegenstück, das „design-pattern“ (meist als „Entwurfsmuster“ übersetzt) zu erklären:

Dieser Begriff stammt ursprünglich aus der Architektur und Stadtplanung, wo er benutzt wurde, um dokumentierte Musterlösungen für typische Entwurfsprobleme zu bezeichnen1). Solche Entwurfsmuster beschrieben bekanntermaßen sinnvolle Lösungen für typische architektonische Probleme – zum Beispiel für die Frage, wie die Zufahrt und der Eingangsbereich eines Gebäudes zueinander angeordnet werden können, bis hin zur Frage, wie man Gemeinschaftsbereiche am besten gestaltet, oder wie geeignete Orte zur Ansiedlung von Gastronomie aussehen sollten.

Während sich das Konzept in diesem Rahmen nur bedingt durchgesetzt hat, wurde es im Bereich der Softwareentwicklung enthusiastisch aufgenommen. Dazu hat insbesondere das Buch „Design Patterns2) von 1995 beigetragen, worin das Konzept auf etablierte „beste Praktiken“ bei der Softwareentwicklung übertragen wurde. Dies ist bis heute ein Standardwerk der Softwareentwicklung und die darin beschriebenen Muster sind heute in praktisch jeder professionell entwickelten Software auf die eine oder andere Weise zu finden.

Anti-pattern (Gegenmuster)

In diesem Zusammenhang wurde auch schnell klar, dass es nicht nur positive Entwurfsmuster gibt („best practices“), sondern auch negative, also wiederkehrende Fehler und Handlungsweisen („bad practices“), die möglichst vermieden werden sollten.

Auch hier wurde der Begriff durch ein gleichnamiges Buch3) geprägt, in dem solche Negativbeispiele gesammelt und dokumentiert wurden.

Es gibt zahlreiche Praktiken, die als „Anti-Pattern“ bezeichnet wurden. In vielen Fällen sind die Bedingungen, unter denen dies gerechtfertigt ist, durchaus diskussionswürdig. Es liegt auch außerhalb des Themenbereiches dieser Website, diese vollständig darzustellen, oder im Detail diskutieren zu wollen.

Auswahl von Anti-Pattern

In dieser Rubrik wird nur eine Auswahl von dokumentierten „Anti-Pattern“ aufgelistet, nämlich vorranging solche, welche die anderen Denkfehler dieser Site illustrieren. Sie dienen dazu, aufzuzeigen, wie dieselben grundlegenden Denkfehler in sehr verschiedenen Bereichen immer wieder auftreten.

Dies soll nicht implizieren, dass andere Anti-Pattern irgendwie weniger wichtig wären. Wenn sie hier nicht erwähnt werden, passen sie nur nicht in den Themenbereich dieser Site.
 

FIXME Diese Rubrik ist derzeit noch im Aufbau und daher unvollständig.

Weitere Informationen

1)
C. Alexander & al.: A Pattern Language, 1977, Oxford University Press, ISBN: 0-19-501919-9.
3)
W. Brown & al.: AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis (1998), John Wiley & Sons, ltd. ISBN 978-0-471-19713-3.

Diese Web­site verwendet Cookies. Durch die Nutz­ung der Web­site er­klären Sie sich mit der Speich­er­ung von Cookies auf Ihrem Com­puter ein­ver­standen. Darüber hinaus be­stät­igen Sie, dass Sie unsere Daten­schutzbestimm­ungen ge­lesen und ver­standen haben. Wenn Sie damit nicht ein­ver­standen sind, ver­lassen Sie bitte die Web­site.

Weitere Information