Cookie

Fachartikel von Ivo Jaster, IT Quality Architect bei der Telekom MMS

Zehn Tipps, wie Sie Ihr Business durch Application Performance Management stärken

 

1. Sei der Beste der Branche

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.

 

2. Nutzerzufriedenheit kennen

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.

 

3. Ausrichtung am Nutzererlebnis

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.

 




4. Qualitätskriterien für APM

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.

Diese Qualitätskriterien sind wie folgt kategorisiert:

  • Leistungseffizienz: Beinhaltet die Leistung meiner Anwendung in Bezug auf Antwortzeitverhalten, Ressourcennutzung und Kapazitätsauslastung bei verschiedenen Lastszenarien (z.B. normale Tageslast oder Spitzenlast bei Werbeaktion).
  • Zuverlässigkeit: Beinhaltet, wie zuverlässig meine Anwendung ihre Funktionalitäten unter bestimmten Bedingungen (Fehlerfall, Ausfall einer Systemkomponente, etc.) bereitstellen kann. Betrachtet werden hierbei die Verfügbarkeit, Reife, Fehlertoleranz und Wiederherstellbarkeit.

Um diese Qualitätskriterien zu prüfen, sind folgende Maßnahmen möglich:

  • Performancetest: Durchführung von Performancetests in den verschiedenen Ausprägungen: Lasttest (maximale Last im normalen Tagesverlauf), Stresstest (Last, welche die maximale Normallast übersteigt), Dauerlasttest (konstante Last über einen langen Zeitraum zur Prüfung der Stabilität), Fail-Over-Test (Prüfen des Anwendungsverhaltens bei Ausfall von Systemkomponenten).
  • Monitoring: Monitoring der Anwendung im Rahmen der Performancetests, um das Verhalten der Anwendung bei verschiedenen Lastzuständen zu dokumentieren. Monitoring der produktiven Anwendung (User Experience Monitoring, E2E-Monitoring, Full Stack Anwendungsmonitoring), um proaktiv negativen Einflüssen entgegen zu wirken, oder reaktiv eine schnelle Problembeseitigung zu ermöglichen.

 

5. Das richtige APM Setup

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.

 


6. Automatisierung und Self Healing

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.

Je nach Automatisierungsgrad können Sie verschiedene Optimierungen Ihrer Anwendung in Bezug auf APM vornehmen:

  • Self Healing: Die Anwendung reagiert selbstständig auf Ereignisse in der Produktion und ist in der Lage proaktiv Maßnahmen durchzuführen oder reaktiv Problemlösungen zu finden, um den störungsfreien Betrieb der Anwendung zu gewährleisten.
  •  DevOps/NoOps: Beinhaltet einen vollautomatisierten Prozess zur Durchführung und Auswertung aller Qualitätstests bis hin zum Ausrollen des Releases in der Produktion. Im Bereich NoOps kann dies weiterhin durch eine automatisierte Ressourcensteuerung in der Cloud (ACM- Autonomous Cloud Management) unterstützt werden.

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.

 

7. Integration und Tools

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.

 


8. Datenschutz und Compliance

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.

 

9. Make or Buy

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.

Um APM in Ihren Unternehmen zu verankern bieten sich folgende Ansätze eines Center of Excellence (CoE) an:

  • Zentrales APM CoE: Schaffung eines APM CoE innerhalb des Unternehmens, von dem alle APM Aktivitäten gesteuert, umgesetzt und weiterentwickelt werden. Hierfür benötigen sie die APM Experten dauerhaft Inhouse.  
  • Dezentrales APM CoE: Schaffung einer APM CoE Schnittstelle z.B. durch einen APM Beauftragten. Dieser steht mit einem zentralen APM CoE in Verbindung. Das zentrale CoE stellt Ressourcen und Know-How bereit und entwickelt die APM Prozesse weiter. Diese können von der dezentralen APM CoE- Schnittstelle in Ihrem Unternehmen abgerufen werden.

Die Vorteile eines APM Dienstleisters:

  • zugeschnittene Skills, Know-how und Best Practices für Ihre Anforderungen
  • Kein zusätzlicher Personalaufbau notwendig
  • Projektbezogener Einsatz des Dienstleisters (nur temporäre Kosten)
  • Unabhängigkeit bei Durchführung von Performancetest
  • Dienstleister sind teilweise zertifiziert, welches eine Standardqualität gewährleistet und auch die Außenwirkung Ihres Produktes verbessern kann.

 

10. Return of Investment

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.

  • Reduzierung von Ausfallzeiten Ihrer Anwendung (MTTR), somit höhere Verfügbarkeit Ihres Business.
  • Steigende Kundenzufriedenheit durch hohe Verfügbarkeit und Performance Ihrer Anwendung.
  • 24/7 Überwachung und Steuerung Ihrer Anwendung. Dies geschieht automatisiert, d.h. ohne Einsatz von Personal.
  • Effizienzsteigerung in der Entwicklung und/oder Weiterentwicklung Ihrer Anwendung, durch Vermeidung von Fehlentwicklungen anhand von regelmäßigen Performancetest sowie Anwendungsmonitoring.
  • Mehrwertzentriert: Anhand der Monitoring-Daten sind Sie in der Lage eine effiziente Kapazitätsplanung Ihrer Infrastruktur vorzunehmen.  
  • Marktvorteil: Ihre Anwendung ist dauerhaft performant, verfügbar und kundenorientiert.

 

 

Über den Experten

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".