►Wo steht die Performance meiner Anwendung im Vergleich zur Konkurrenz in der Branche?
Um am Markt zu bestehen zu bleiben und Ihr Business auszubauen, sind Performance und Zuverlässigkeit ihrer Anwendungen ein entscheidender Erfolgsfaktor. Kunden sind es gewohnt, dass Anwendungen schnell und zuverlässig funktionieren. Ist dies nicht der Fall, wechseln diese umgehend zur Konkurrenz. Um zu definieren, was in Ihrer Branche eine performante und zuverlässige Anwendung auszeichnet, lohnt sich ein Vergleich Ihrer Anwendung mit den bereits am Markt bestehenden.
Nicht nur schnelle Antwortzeiten bei Nutzeraktionen, sondern auch die Verfügbarkeit der Anwendung ist für das Business essenziell. Antwortzeiten, welche nicht konkurrenzfähig sind, lassen Ihre Kunden zu anderen Markteilnehmern wechseln. Jeder Ausfall kostet Geld, da in diesem Zeitraum kein Geschäft generiert werden kann. Dies gilt nicht nur im Normalbetrieb, sondern besonders in Phasen der Hochlast. Beispielsweise wenn viele Kunden im Rahmen einer Werbekampagne oder Sonderangebot auf Ihre Anwendung zugreifen.
►Weiß ich wie meine Kunden die Anwendung nutzen und erfülle ich ihre Erwartungen?
Damit Sie Ihre Anwendung optimal an bestehende und potentiale Nutzer anpassen können, müssen Sie verstehen, wie sich Nutzer innerhalb Ihrer Anwendung verhalten. Was stellt Ihren Nutzer zufrieden? Was unzufrieden? Das faktische Wissen darüber, an welchen Stellen die Nutzerzufriedenheit nicht optimal ist, befähigt zu effizienten Verbesserungsmaßnahmen.
Die Basis dafür bietet ein User-Experience-Monitoring, mit dem genau diese Kennzahlen (Key-Performance-Indikatoren (KPI)) ermittelbar sind. In Kombination mit einem serverseitigen Full-Stack Monitoring, welches die Performance einzelner Prozesse sowie die Auslastung der Anwendung auf den verschiedenen Ebenen ermittelt, kann der Zusammenhang zwischen Nutzerzufriedenheit und existierenden Schwächen in der Systemlandschaft hergestellt werden.
►Wie verwende ich die gemessenen Nutzerinformation für die Verbesserung meines Business?
Damit Sie die Nutzerzufriedenheit hinsichtlich Performance verbessern können, ist eine Kombination der KPIs für Nutzerzufriedenheit Ihres Business, mit den KPIs Ihrer Anwendungsperformance notwendig. Hierbei könnte beispielhaft betrachtet werden: woher kommen Ihre Nutzer? An welcher Stelle der Anwendung verweilen sie? Wie viele Schritte benötigen sie, um an die gewünschte Funktion zu gelangen oder diese auszuführen? Was sind die am meist frequentiertesten Funktionen Ihrer Anwendung? Wenn Sie diese Daten mit den Informationen Ihrer Anwendungsperformanz, wie Antwortzeitverhalten, Fehleraufkommen und Ressourcenauslastung kombinieren, erhalten Sie wertvolle Rückschlüsse zur kundenorientierten Optimierung der Anwendung. Durch entsprechende Tools können diese visualisiert und Zusammenhänge manuell oder gestützt durch künstliche Intelligenz (KI) erkannt werden.
Um die gewonnenen Informationen gewinnbringend zur Verbesserung Ihres Business einzubringen, ist es wichtig, die erhobenen Daten für den Softwareentwicklungsprozess zugänglich zu machen, damit die Anwendung zielgerichtet an den Nutzer angepasst werden kann und dadurch seine Zufriedenheit gesteigert wird.
►Was sind die wichtigsten Qualitätskriterien und wie kann ich diese testen?
Zu beachtende Qualitätskriterien sind in der ISO/IEC 25010:2011 beschrieben. Diese Qualitätskriterien sollten nicht erst zur kontinuierlichen Verbesserung der Anwendung betrachtet werden, sondern im Idealfall schon bei der Anforderungsentwicklung Ihrer Anwendung.
►Was ist das richtige Setup für meine Anwendung?
Die Auswahl eines geeigneten APM Setups für Ihre Anwendung hängt zum einen davon ab, welche Qualitätskriterien an sie gestellt werden, zum anderen welches Vorgehen zur Anwendungsentwicklung genutzt wird. Entwicklung und Test sind eng verzahnt, das APM Setup nimmt daher einen wichtigen Stellenwert für die erfolgreiche Anwendungsentwicklung ein. Das Setup unterscheidet sich stark je nach Gestaltung des Entwicklungsprozess gestaltet. Zum Beispiel ob Sie agil oder im Wasserfallmodel entwickeln und ob Sie auf DevOps setzten oder bestimmte Ausprägungen der Automatisierung gewählt haben.
Um im Hinblick auf Kosten/Nutzen, das optimale Setup für Ihre Anwendung zu finden, ist eine individuelle Bewertung eines APM Experten anzuraten. Es existieren speziell zugeschnittene APM Reifegradmodelle am Markt, hier wird Ihre Anwendung durch Experten in einen IST-Zustand eingeordnet und der Weg für den Soll-Zustand aufgezeigt, um das optimale Setup zu erreichen. Ein entsprechendes Reifegradmodell wird unter anderem von der Telekom MMS angeboten.
►Welchen Vorteile bietet Ihnen der Einsatz neuer Technologien?
Es gibt verschiedene Grade der Automatisierung, vom einfachen Umsetzten manueller Tätigkeiten in automatisierte Prozesse bis zur Kombination mit Big Data und/oder künstlicher Intelligenz (KI), welches einen höheren Grad an Automatisierung durch beispielsweise Maschine Learning ermöglicht.
Die Vorteile sind: entsprechende Maßnahmen können ununterbrochen durchgeführt werden und die Systeme können sofort reagieren. Grundlage hierbei ist, dass das System selbst in einem vorher definierten Rahmen ausführen, messen, bewerten und steuern kann.
Um dies zu realisieren sind entsprechende Tools sowie entsprechende Experten notwendig, welche den Prozess einrichten und warten. Weiterhin muss für den Einsatz von Self Healing eine geeignete Anwendungsarchitektur gegeben sein, damit ein Rückkopplungskanal zum Steuern der Anwendung ermöglicht wird.
►Wie integriere ich APM in mein Unternehmen?
Die Basis für eine nachhaltige Integration von APM basiert auf der richtigen Unternehmenskultur, dem richtigen Tool-Setup, sowie dem Zusammenspiel aller Tools und Beteiligten.
Um APM effizient zu nutzen ist es wichtig, dass die richtigen Informationen zum richtigen Zeitpunkt beim richtigen Adressaten vorliegen. Das bedingt ein automatisiertes Filtern der erzeugten Informationen über Ihre Anwendung nach Relevanz und Dringlichkeit.
Um diesen Informationsfluss automatisiert zu steuern, gibt es verschiedene Möglichkeiten, wie die Tools untereinander sowie mit den Beteiligten integriert werden können. Je nach APM Setup können hierbei Technologien wie Robot Prozess Automation (RPA), ChatOps und diverse Möglichkeiten der M2M Kommunikation eingesetzt werden.
In der Unternehmenskultur sollte der Qualitätsgedanke verankert werden. Ein ebenfalls wichtiger Faktor wird durch die Agilität in der Produktion als auch im Entwicklungsprozess beschrieben, um schnell auf Ereignisse reagieren zu können. Nur eine effiziente Rückkopplung zwischen Messwertaufnahme, Bewertung und anschließender Anpassung schafft den maximalen Mehrwert.
►Wie behandle ich sensible Daten richtig?
Das Monitoring von produktiven Anwendungen und Ihren Nutzern verlangt immer nach besonderer Aufmerksamkeit des Datenschutzes. Sie müssen sich bewusst sein, dass Daten echter Nutzer in Ihren APM Tools verarbeitet werden. Je nach Anwendung können dies mehr oder minder sensible personenbezogene Daten sein. Auch die Durchführung von Performancetests benötigt produktionsnahe Testdaten, auch wenn diese üblicherweise nicht in der Produktion durchgeführt werden. Hier gelten die gleichen Anforderungen des Datenschutzes.
Im Rahmen von APM ist es daher wichtig die unternehmensinterne und -externe Compliance (Gesetze: z. B. DSGVO) strikt umzusetzen. APM Tools bieten für das Monitoring der produktiven Anwendung entsprechende Filter- und Maskierungsregeln. Für Performancetests besteht die Möglichkeit der Testdatenanonymisierung.
Die aufgezeichneten Daten aus Ihrem APM müssen gesichert werden um können Performancetrends darstellen. Daten lassen sich entweder bei einem Clouddienstleister oder im lokalen Netzwerk speichern. Je nach Anwendung sollten die Konsequenzen bewusst sein. Zu diesen gehören unter anderem die Möglichkeit der Wirtschaftsspionage oder der Einschränkung der permanenten Verfügbarkeit (Konnektivität) bei Cloudanbietern.
►Woher beziehe ich die nötige Expertise zur Umsetzung von APM in meinem Unternehmen?
Wenn Sie APM professionell umsetzen wollen, benötigen Sie entsprechendes Experten-Know-How. Hier kommt es ganz auf Ihre Mitarbeiter und die einzelnen Technologien und umzusetzenden Maßnahmen an.
Bei schon vorhandenen APM Experten im Unternehmen ist es ausreichend, an bestimmten Stellen einen externen Dienstleister zu beauftragen oder gegebenenfalls eigene Mitarbeiter zu schulen. Wenn Sie sämtliche APM-Mehrwerte nutzen möchten, werden Sie aufgrund der Breite und Tiefe des notwendigen Know-Hows zumindest initial auf externe Dienstleister zurückgreifen müssen.
Es ist in jedem Fall zu empfehlen, einen internen Mitarbeiter als APM Experten zu benennen. Dieser sollte grundlegende Kenntnisse besitzen, um APM in Ihrerm Unternehmen zu beurteilen und zu steuern. Dies kann über interne Mitarbeiter oder Dienstleister erfolgen.
►Wie rentiert sich APM für Sie langfristig?
Durch den Einsatz von APM in Ihrer Anwendung erzeugen Sie die folgenden Mehrwerte, welche Ihre initialen Investitionen decken und einen langfristigen Nutzen schaffen.
Ivo Jaster ist seit 2016 als IT Quality Architect bei der Telekom MMS in verschiedenen Kundenprojekten aktiv. Er ist Experte für das Themengebiet „Application Performance Management“ und zudem Portfoliolead für den Fachbereich "Monitoring Data Enrichment".