Software-Patterns – Architektur-Design-Anti

Software-Patterns sind Muster-Vorlagen im Bereich der Informatik, angefangen von Architektur Patterns bis hin zu Design Patterns. Es gibt sie auch als Anti-Patterns, also als Muster, das man nicht verwenden soll bis hin zu Dark Patterns vor allem im Bereich Design, die den User manipulieren soll.

Patterns stehen für verschiedene Elemente und deren Wirkung im Rahmen einer Software. Daraus wurde der Software-Architekt als besondere Tätigkeit geboren. Dieser kümmert sich um die Planung und das High-Level-Design von neuer Software. Eine Software-Architektur gehört zu einem Software-Entwurf, in dem sie als Gliederung der Elemente fungiert. Der Software-Entwurf bezieht sich auf die lokalen Faktoren im Zusammenhang mit der Software und ist aufgrund dessen sehr genau. Die Software-Architektur bezieht sich auf das ganze System.

Anti-Patterns

Das Anti-Pattern oder zu Deutsch das Antimuster ist eine Bezeichnung für Verhaltensmuster, die sich vor allem auf die Software-Entwicklung beziehen und auch auf generelle Organisationen bezogen sein kann. Das Anti-Pattern ist ein Lösungsansatz, der nicht gut oder sogar schädlich für eine Organisation oder ein Projekt sind. Es ist das Gegenteil zu einem Pattern, das positiv und bewährt als Lösungsansatz für Probleme dient.

Anti-Pattern werden aktuell noch genauer unterschieden. Sie setzen sich aus der Software-Programmierung, der Architektur und dem Design zusammen und sind in den Bereichen des Projektmanagements, in Unternehmensorganisationen, Unternehmensprozessen und im Management aktiv. Zudem kommen praktisch auch Meta-Patterns vor. Sie sind eine Kombination aus einzelnen und neuen Patterns. Alternativ können sie auch in neue Dimensionen münden oder abstraktere Klassifizierungen führen.

Dark-Patterns

Das Dark-Pattern ist ein Design für Benutzerschnittstellen, das den User zu einer Handlung bringen soll, die sich gegen seine Interessen wenden. Dark-Patterns zählen zu den Antimustern, die aber trotzdem gezielt verwendet werden. Hinter diesem Begriff versteckt sich das Bewusstsein, dass Produkte nicht nur auf der Basis rationaler Entscheidungen gekauft werden. Vielmehr sind anerzogene und emotionale Entscheidungen dafür ebenfalls verantwortlich. Darüber hinaus lassen sich Dark-Patterns auch im Zuge der Verhaltensökonomie definieren. Auf dieser Ebene sind das Designs, die ein unnormales Verhalten nutzen, um den Konsumenten zu einem Verhalten zu führen, das für ihn von Nachteil ist. Dark-Patterns befinden sich rechtlich gesehen in einem Grenzgebiet. Sie sind teilweise sogar vom Gesetz her verboten. Hier kommt es auf die Gesetze des Landes an, da so die Verbraucher geschützt werden sollen.

Design-Patterns

Design-Patterns oder Entwurfsmuster sind erprobte Lösungsschablonen, wenn es um häufig auftretende Entwurfsprobleme in der Entwicklung und Architektur von Software geht. Es handelt sich also um Muster für Problemlösungen, die mehr als einmal verwendet werden können. So werden z.B. für eine Analyse Software wie z.B. Google Analytics ähnliche Design Patterns verwendet wie auch bei dem Datenvisualisierungstool Grafana.

Vor allem in jüngster Vergangenheit hat sich dieser Ansatz ebenfalls im Zuge des Zusammenspiels zwischen Menschen und Computern etabliert. Eigentlich stammt die Bezeichnung aus der Architektur und wurde von Christopher Alexander erschaffen. Es sind unterschiedliche Entwurfsmuster vorhanden. Anfangs gab es eine Unterscheidung von verschiedenen Mustern. So zum Beispiel das Erzeugungsmuster. Mit diesem sollen Objekte erzeugt werden. Es teilt die Konstruktion von Objekten von der Darstellung. Strukturmuster oder auch Structural-Patterns vereinfachen mit Schablonen den Entwurf einer Software für die Relation verschiedener Klassen. Verhaltensmuster oder Behavioral-Patterns können kompliziertes Verhalten einer Software erstellen. Damit verstärken sie das flexiblere Verhalten der Software. Muster zur Übermittlung von Nachrichten oder Messaging-Patterns sind zum Erschaffen, Weiterleiten und Transformieren von Nachrichten gedacht. Dazu zählen auch die erforderlichen Nachrichtenendpunkte und Nachrichtenkanäle. Ebenso die Elemente zur Verwaltung des Systems.

Architektur-Patterns

Geht es um die Entwicklung von Software, gibt es Architekturmuster oder Architektur-Patterns wie z.B. Arc42. Diese werden wiederum in verschiedene Muster im obersten Bereich eingeteilt. Im Gegensatz zu Idiomen oder Entwurfsmustern sind sie nicht für exakte Teilprobleme verantwortlich. Vielmehr bestimmen sie das eigentliche Zusammenspiel und die Organisation der Elemente von Anwendungen. Architektur-Patterns können in verschiedene Bereiche eingeteilt werden. Hierbei handelt es sich um adaptive Systeme. Die Muster helfen vor allem bei der Anpassung und Erweiterung von Software. Sie sind als Mikrokernel, Dependency Injection und Reflexion bekannt. Die Muster sind bei der Organisation der unzähligen Objekte und Elemente von Software behilflich.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert