Probleme lösen reicht nicht

Dies ist ein Gastbeitrag von Karsten Flott, CER Sales Engineer Manager, AppDynamics

Applikationen werden immer komplexer. Das erschwert es, Fehlerursachen zu ermitteln. Einen Ausweg bietet ein umfassendes Performance-Management von Anwendungen.

Für Anwender werden Applikationen immer einfacher. So reicht ein Sprachkommando, und digitale Assistenten oder Smart-Home-Systeme spielen Musik ab, liefern Verkehrsinformationen und teilen dem User mit, welche Termine er hat. Aber diese Funktionsvielfalt und einfache Handhabung hat ihren Preis: Die Komplexität von Anwendungen nimmt zu. So hat eine moderne Applikation heute eine verteilte Struktur, die stark von anderen IT-Ressourcen abhängt. Zudem müssen Anwendungen eine hohe Verarbeitungsgeschwindigkeit aufweisen sich möglichst schnell updaten lassen.

Diese Faktoren erschweren es Entwicklern und IT-Experten, Fehler in Applikationen aufzuspüren und beseitigen. Das ist problematisch. Denn jede Minute, die eine solche Fehlersuche kostet und eine Applikation eine unbefriedigende Performance aufweist, kann sich negativ auf den Geschäftsbetrieb auswirken. Das gilt beispielsweise für Anwendungen, die im unpassenden Moment abstürzen oder zu lange Ladezeiten aufweisen. Für Unternehmen bedeutet dies, dass sie bessere Möglichkeiten finden müssen, um Probleme bereits im Vorfeld zu identifizieren und Ausfallzeiten zu vermeiden.

Schuldzuweisungen sind keine Option

Doch die Suche nach Problempunkten in Applikationen artet in der Praxis oft zu einem „Schwarzer-Peter-Spiel“ aus. Jede Abteilung macht ein anderes Team für Fehler verantwortlich und untermauert dies mithilfe von Monitoring-Daten, die sie selbst erfasst und interpretiert hat.

Daher ist es im ersten Schritt notwendig, mögliche Fehlerquellen zu identifizieren. Erschwert wird dies durch mehrere Faktoren:

  • Unternehmensinterne Abteilungen agieren als abgeschottete Silos.
  • Servicezentren sind in unterschiedlichen Zeitzonen angesiedelt.
  • Das Unternehmen nutzt externe Cloud Service Provider.
  • Veränderungen fallen in immer kürzeren Intervallen an.

Einheitliche Diskussionsgrundlage schaffen

Zunächst ein Blick auf das Problem mit den „Silos“. Abteilungen setzen häufig unterschiedliche Monitoring-Tools ein. Oft handelt es sich um handgestrickte Werkzeuge oder einfache Analyse-Programme, die direkt in IT-Systeme integriert werden. Der Nachteil dieses Ansatzes: Solche isolierten Lösungen zeigen meist nur Teilaspekte eines Problems, etwa die Folgen der mangelnden Performance von Anwendungen. Die Ursachen bleiben jedoch im Dunkeln.

Kenndaten wie die Antwortzeiten von Applikationen entscheiden über den Geschäftserfolg von Unternehmen, etwa Online-Händlern und Streaming-Services.

Kenndaten wie die Antwortzeiten von Applikationen entscheiden über den Geschäftserfolg von Unternehmen, etwa Online-Händlern und Streaming-Services.

IT-Fachleute haben keine Chance, mithilfe solcher Systeme die Auslöser von Performance-Engpässen zu erkennen. Sie benötigen vielmehr Lösungen, die ihnen in Echtzeit Informationen über alle involvierten IT-Komponenten liefern, also den gesamten „Stack“. Außerdem muss ein Performance-Monitoring feinkörnige Berechtigungen bereitstellen. Dadurch sind Fachleute in der Lage, detaillierte Analysen von Problemursachen durchzuführen. Solche Analysen sollten alle Aktionen des Nutzers einer Applikation erfassen, ebenso die Anforderungen, die bestimmte Aktivitäten eines Nutzers an die IT-Umgebung stellen.

Ein solches Performance-Monitoring-System hat einen entscheidenden Vorteil: Es ermöglicht es Entwicklern und dem IT-Betriebspersonal, eigene Untersuchungen durchzuführen. Die Resultate dieser Analysen landen jedoch nicht in Silos, sondern stehen anschließend allen Fachleuten zur Verfügung.

Applikations-Performance in Geschäftskennzahlen „übersetzen“

Allerdings neigen IT-Fachleute dazu, mit Begriffen wie „CPU Spikes“ oder „Response Times“ um sich zu werfen, wenn sie die Leistungsdaten von Applikationen beschreiben. Geschäftsführer oder Abteilungsleiter können damit nichts anfangen. Besser ist, wenn den IT-Experten ein System zur Verfügung steht, das Performance-Daten von Applikationen mit Geschäftskennzahlen und den Erfahrungen von Nutzern in Beziehung setzt. Nur diese Daten machen transparent, welche Auswirkungen Qualitätsmängel von Anwendungen auf das Geschäft haben. Das wiederum ermöglicht es der IT-Abteilung, eine Prioritätenlisten zu erarbeiten. Problempunkte mit den größten negativen Effekten werden umgehend beseitigt, andere Mängel später.

Dazu ein Beispiel: Ellenlange Ladezeiten seiner Web-Seiten sind für einen E-Commerce-Anbieter nicht akzeptabel. Denn für einen Kunden ist der nächste Online-Shop bekanntlich nur einen Mausklick weit entfernt. Daher hat es für die Entwickler und IT-Spezialisten eines E-Commerce-Unternehmens höchste Priorität, die Ladezeiten zu optimieren.

Ein „Baselining“ durchführen

Jedes Unternehmen muss wissen, wann die Leistung geschäftskritischer Applikationen in den roten Bereich abdriftet. Das setzt voraus, dass die Grenzwerte bekannt sind, die eine akzeptable Performance definieren. Allerdings gilt es dabei einen weiteren Faktor zu berücksichtigen: Die Auslastung von Applikationen kann sich drastisch ändern.

Wenn beispielsweise die Online-Services und die IT-Infrastruktur eines Lieferdienstes von Lebensmitteln an jedem Freitag besonders stark ausgelastet ist, ist das kein Indiz für eine Fehlfunktion. Vielmehr rührt die Nachfragespitze von Käufern her, die sich den Wochenendeinkauf im Supermarkt sparen möchten. Eine Lösung für das Performance Monitoring muss wissen, dass solche „Peaks“ normal sind. Nur dann kommt es zu keinen Fehlalarmen.

Nicht nur auf Problemlösung fixieren

Zu den Aufgaben von IT-Abteilungen gehört seit jeher, dass sie Probleme lösen. Doch IT-Fachleute haben heute eine viel wichtigere Funktion: Sie sollen innovative Ideen entwickeln und umsetzen, etwa im Rahmen von Digitalisierungsstrategien. Das heisst, je weniger Zeit die IT-Abteilung dafür aufwenden muss, um Probleme zu beseitigen, desto besser. Doch beide Faktoren, also Problemlösung und Innovationskraft, sind miteinander verknüpft. Denn Innovation bedeutet, Probleme auf eine kreative Weise zu lösen.

Um Ursachen von Performance-Problemen von Anwendungen zu ermitteln, müssen auch die IT-Infrastruktur und genutzten Services berücksichtigt werden, etwa Cloud-Dienste.

Um Ursachen von Performance-Problemen von Anwendungen zu ermitteln, müssen auch die IT-Infrastruktur und genutzten Services berücksichtigt werden, etwa Cloud-Dienste.

Ein Beispiel ist James Dyson, der Erfinder des Staubsaugers ohne Staubbeutel. Er stellte sich nicht die Frage, wie er die Beutel von Staubsaugern verbessern konnte. Sein Ansatz war vielmehr: „Wie lassen sich Staubpartikel und Luft auf effektive Weise trennen?“. Eine vergleichbare Vorgehensweise empfiehlt sich für IT-Abteilungen. Indem sie Performance-Daten analysieren, definieren sie die User Experience, also die alltäglichen Erfahrungen von Nutzern mit Anwendungen, auf eine neue Art. Dies wiederum ist der Ausgangspunkt, um kreative Lösungen für die Herausforderungen zu entwickeln, mit denen sich Unternehmen konfrontiert sehen.

Fazit: Ganzheitliche Sicht ist gefordert

Software-Entwickler und IT-Betriebsabteilungen sollten sich mit einem Gedanken anfreunden: Künftig wird es nicht mehr möglich sein, quasi im Handbetrieb Performance-Probleme von Applikationen zu erkennen und zu beseitigen. Dies alleine deshalb, weil sie nicht in der Lage sind, die Vielzahl von möglichen Fehlerquellen in akzeptabler Zeit zu analysieren. Der einzige Ausweg sind Lösungen, die in Echtzeit die Anwendungs-Performance und deren Abhängigkeit von bestimmten IT-Services und -Architekturen transparent machen. Im Idealfall geht eine solche Lösung noch einen Schritt weiter: Sie macht deutlich, welche Auswirkungen ein Fehler auf die Geschäftstätigkeit hat. Für IT-Fachleute heisst das letztlich, sie entwickeln sich von „Problemlösern“ zu Experten weiter, die Mitverantwortung für den Geschäftserfolg eines Unternehmens tragen.

Weitere Informationen unter:
www.appdynamics.com

CC BY-SA 4.0 DE

 
 
Sie dürfen:
  • Teilen — das Material in jedwedem Format oder Medium vervielfältigen und weiterverbreiten
  • Bearbeiten — das Material remixen, verändern und darauf aufbauen und zwar für beliebige Zwecke, sogar kommerziell.
  • Der Lizenzgeber kann diese Freiheiten nicht widerrufen solange Sie sich an die Lizenzbedingungen halten.
  • Bitte berücksichtigen Sie, dass die im Beitrag enthaltenen Bild- und Mediendateien zusätzliche Urheberrechte enthalten.
Unter den folgenden Bedingungen:
  • Namensnennung — Sie müssen angemessene Urheber- und Rechteangaben machen, einen Link zur Lizenz beifügen und angeben, ob Änderungen vorgenommen wurden. Diese Angaben dürfen in jeder angemessenen Art und Weise gemacht werden, allerdings nicht so, dass der Eindruck entsteht, der Lizenzgeber unterstütze gerade Sie oder Ihre Nutzung besonders.
  • Weitergabe unter gleichen Bedingungen — Wenn Sie das Material remixen, verändern oder anderweitig direkt darauf aufbauen, dürfen Sie Ihre Beiträge nur unter derselben Lizenz wie das Original verbreiten.
Über den Autor:

Karsten Flott ist seit 2014 Sales Engineer bei AppDynamics und ist im Bereich des Performance Testing und Application Performance Management tätig. Zuvor war Karsten über 10 Jahre in derselben Position bei Compuware angestellt. In seiner beruflichen Laufbahn bei den beiden Software-Unternehmen beschäftigte sich Flott intensiv mit Soft- und Hardware-Lösungen, die DevOps-, Analytics- und Application-Performance-Management-Prozesse verbessern. Sein Expertenwissen ist viel gefragt in zahlreichen IT-Fachmedien. Karsten Flott studierte von 1997 bis 2001 an der Fachhochschule Mittweida und machte seinen Diplomingenieur in Kommunikationstechnik. Neben Englisch und Deutsch spricht Karsten zusätzlich auch Russisch.