Definition

Agnostisch

Im IT-Umfeld hat das Wort agnostisch eine besondere Bedeutung. Es bezieht sich auf etwas, das soweit verallgemeinert wird, dass es auch unter verschiedenen Umgebungen funktionieren kann – also interoperabel ist. Der Begriff wird vor allem im englischen Sprachraum genutzt und dort nicht nur für Hard- und Software, sondern auch für Geschäftsprozesse verwendet.

Das Wort agnostisch selbst stammt aus dem Griechischen und bedeutet in etwa „ohne Wissen“. In der IT lässt es sich in etwa mit etwas übersetzen, das auch ohne die zugrundeliegenden Details eines Systems funktioniert. Ähnlich wie beim Begriff Interoperabilität wird eine Agnostik üblicherweise mit der Einhaltung weit verbreiteter Standards oder mit zusätzlichen Elementen erreicht, die es einem System ermöglichen, in den unterschiedlichsten Umgebungen zu funktionieren.

Vor- und Nachteile eines agnostischen Designs

Die Entwicklung von agnostischen Systemen hat sowohl für die Anbieter als auch für Kunden mehrere Vor- und Nachteile.

Vorteile

Breiteres Publikum und größerer Kundenkreis. Die meisten Menschen und Organisationen verfügen bereits über Computer oder Server und wissen, wie man sie bedient und wartet. Wenn ein Produkt herstellerunabhängig konzipiert ist, kann es von jedem Kunden gekauft und verwendet werden, unabhängig davon, welche Art von System er bereits besitzt. Da dies für die Kunden von Vorteil ist, kann dieser Ansatz den Anbietern helfen, Marktanteile zu gewinnen.

Leichtere Einführung. Kunden können ein Produkt, das nach einem agnostischen Ansatz entwickelt wurde, schneller in ihre bestehenden Systeme integrieren. Dies kann die Einführungszeit verkürzen und erfordert weniger Schulungen für die Endbenutzer.

Höhere Langlebigkeit. Agnostische Hardware oder Software ist nicht von anderen Systemen oder Komponenten abhängig, die der Hersteller im Laufe der Zeit überholen oder ausmustern könnte. Die Lebensdauer dieser agnostischen Produkte ist in der Regel länger als bei Produkten, deren Funktionalität teilweise oder vollständig von anderen Systemen abhängt.

Nachteile

Komplexer. Agnostische Produkte erfordern in der Regel zusätzliche Funktionen, um ein Spektrum unterschiedlicher Hardware oder Software zu unterstützen. Dabei kann es sich um alles Mögliche handeln, vom einfachen Code für Websites bis zur Pflege separater Codebasen und Compiler für verschiedene Betriebssysteme. Zusätzliche Komplexität führt zu höheren Erstellungs- und Wartungskosten.

Geringere Leistung. Um ein Produkt mit vertretbarem Aufwand plattformunabhängig zu machen, wird es oft auf den kleinsten gemeinsamen Nenner hin entwickelt, das heißt auf den einfachsten Satz gemeinsamer Funktionalitäten der möglichen Plattformen. Dies bedeutet oft, dass plattformspezifische Optimierungen fehlen, die der Effizienz und den Fähigkeiten des Produkts zugute kommen könnten. Darüber hinaus können die Anpassungen zur Unterstützung mehrerer Plattformen zu Redundanz oder Überfrachtung führen, was die Leistung weiter beeinträchtigt.

Schwerer zu erstellen und zu pflegen. Die zusätzliche Komplexität führt zu einer längeren Entwicklungszeit, was wiederum zu einer längeren Markteinführungszeit und höheren Kosten führt. Außerdem muss das Produkt häufig für die Updates und Änderungen der zugrunde liegenden Plattformen aktualisiert werden.

Beispiele für Agnostik in der IT

In der IT gibt es zahlreiche Beispiele für die Anwendung des agnostischen Ansatzes:

  • Plattformunabhängige Software läuft auf jeder Kombination von Betriebssystem und zugrunde liegender Prozessorarchitektur. Solche Anwendungen werden manchmal als plattformübergreifend oder „Cross-Plattformfähig“ bezeichnet. Beispiele hierfür ist Software, die unter Windows, macOS und Linux ausgeführt werden kann.
  • Geräteunabhängige Software funktioniert auf verschiedenen Arten von Geräten, darunter Desktop-Computer, Notebooks, Tablet-PCs und Smartphones. Die meisten Webanwendungen sind so konzipiert, dass sie geräteunabhängig sind und können zu diesem Zweck ein responsives Design verwenden.
  • Datenbankunabhängige Software funktioniert mit dem Datenbankmanagementsystem (DBMS) eines beliebigen Anbieters. Typische datenbankunabhängige Produkte sind Business-Analytics- und ERP-Software. Solche Software könnte beispielsweise auf MySQL oder der Microsoft SQL-Datenbank laufen.
  • Protokollunabhängige Software ist unabhängig von oder kann mit mehreren Kommunikationsprotokollen verwendet werden. Sie handelt mit ihrer Gegenstelle ein Protokoll aus oder kann mit diesem konfiguriert werden und nimmt die Kommunikation auf. Multiprotocol Label Switching (MPLS) und Generalized Multiprotocol Label Switching (GMPLS) sind Beispiele für protokollunabhängige Netzwerkstandards.
  • Geschäftsprozessagnostische Software funktioniert in verschiedenen Geschäftsumgebungen. Ein Beispiel ist ein geschäftsprozessagnostischer Dienst, der die Logik im Zusammenhang mit einer bestimmten Geschäftseinheit wie „Rechnung“ oder „Forderung“ kapselt.
  • Herstellerunabhängige Middleware kann zwischen Software verschiedener Hersteller und nicht nur zwischen zwei bestimmten Anwendungen vermitteln.
Middleware
Abbildung 1: Middleware ist zwischen den Anwendungen und dem Betriebssystem angesiedelt.
  • Bei der hardwareunabhängigen Lizenzierung handelt es sich um ein Modell pro Gerät oder pro Benutzer und nicht um ein Modell, bei dem jede Lizenz an ein bestimmtes Gerät oder eine virtuelle Maschine gebunden ist.
  • Bei der sprachunabhängigen Programmierung wird die Programmiersprache nach ihrer Eignung für die Aufgabe und nicht nach den Präferenzen oder Fähigkeiten des Programmierteams ausgewählt.
  • Cloud-agnostische Software ist so konzipiert, dass sie auf allen gängigen Systemen von Public-Cloud-Anbietern läuft und aus Kostengründen oder nach Kundenwunsch leicht zwischen ihnen gewechselt werden kann. Beispielsweise kann die meiste Cloud-agnostische Software auf AWS, Google Cloud oder Microsoft Azure ausgeführt werden.
Diese Definition wurde zuletzt im Oktober 2022 aktualisiert

Erfahren Sie mehr über Data-Center-Betrieb

ComputerWeekly.de
Close