SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
Die Anwender im Fokus




                 Userexperience - messen und fühlen




                       Rainer Schuppe
                       Manager Technical Services, codecentric AG

codecentric AG
Agile Software Factory



                 Performance Solutions



                   Document Solutions

codecentric AG
Wer kennt jemanden, der sich
                     noch nie über die
                Geschwindigkeit einer Website
                       geärgert hat?




© babykrul - sxc.hu
codecentric AG                          4
                               © NLTeddy - sxc.hu




Etwas eigentlich Entspannendes hat die genau gegenteilige Wirkung auf den User
codecentric AG   5
© ross666 - sxc.hu
Agenda

 Der heilige Gral: Enduser Experience

 Merlins Aufgabe - Das Schwert im Stein

 Des Zauberers Werkstatt - So kann‘s gehen

 Alles keine Hexerei - Lösungen

 Fazit




codecentric AG                               6
Der heilige Gral
                    Enduser Experience

© Ayla87 - sxc.hu
M     )
                                                           (RU
                                                      ring
                                                 onito                                      End
                                                                                                  Use
                                              rM                                                     rM
                                      l   Use                                                           onit
                                  Rea                                                                       or      ing
                                                                                                                           (EU
                                                                                                                              M)
                                                         End 2 End Monitoring (E2E)

                                                         End
                                                               Use
                                                                  r Ex
                                                                       per
                                                                           ienc
                                                                                eM
                                                                                   onit
                                                                                        orin
                                                                                             g      (EU
                                                                                                          EM
                                                                                                             )
                                           User Experience Monitoring (UEM)                                            EM)
                                                                                                                  g (C
                                                                                                        nit   orin
                                                                                                e   Mo
                                                                                         erienc
                                                                                  r   Exp
                                                                            to me
                                                                         Cus




Es gibt viele Buzzwords / TLAs auf dem Markt, die versprechen dieses Thema zu adressieren, bzw. eine Lösung
dafür anbieten.
Bei den meisten findet sich das User im Namen oder zumindest ein Customer. Alle betonen, dass ohne man ohne
User Monitoring Komponente keine glücklichen Kunden bekommt
Es tummeln sich hier viele Lösungen und jeder grosse Softwarehersteller hat hier was im Angebot. Sei es IBM, HP,
CA, Oracle, Compuware, BMC, etc. Aber wovon ist hier eigentlich die Rede?
Schlechte User Experience ist schlecht für‘s
                                                    Geschäft




                                                                        ... und auch für interne Anwendungen
                                                                              Auch Kollegen sind Kunden




                                                     Der Betreiber merkt aber davon oft nichts




                                    codecentric AG                                                             9




Wenn die Userexperience schlecht ist, dann geht es auch dem Business schlecht. Das gilt für e-commerce shops ebenso
wie für Anwendungen, die nicht direkt vom Kunden bedient werden, aber z.B. von Sachbearbeitern. ich selbst habe am
Kölner Flughafen erlebt, wie Kunden bei einer Autovermietung in langen Schlangen standen, weil jeder Vorgang 10 Minuten
dauerte. Nach 15 Minuten war an den benachbarten Autovermietern aber der Trubel weg und die Kunden sind dahin
abgewandert. Der Grund war eine äußerst langsame Anwendung, welche alles aufgehalten hat.
Wenn dann der Betrieb nichts davon mitkriegt oder erst am nächsten Tag, wird das Problem meist noch verschärft.
Was ist überhaupt User Experience? Gefühlte
                                               Wahrnehmung?




                                                                          ISO 9241-210
                                                   Das ist die Wahrnehmung und Reaktionen einer Person, die sich
                                                      bei der Benutzung oder der erwarteten Verwendung eines
                                                                        Produktes ergeben.




                                 Wie schnell vermittelt sich dem User Sinn, Konzept und
                                                 Zweck einer Website?




                                  codecentric AG                                                               10




Was ist über die User Experience? Ist das die gefühlte Wahrnehmung des Benutzers einer Website? Man kennt das ja
von der gefühlten Temperatur aus den Wetterberichten. Treffender ist der englische Ausdruck „Wind-Chill Factor“.
Hier wird aufgrund physikalischer Grössen wie Windgeschwindigkeit und Oberflächentemperatur ein Faktor
errechnet. Ob mir dann auch wirklich so kalt ist, kann man nicht messen.

Definition User Experience laut ISO 9241-210: Wahrnehmung, etc., also die physiologische und psychologische
Komponente. Für die Messung hier, braucht man Usability Labs, Eye Tracker und geschultes Personal - damit lässt
sich die Frage nach „ Wie schnell vermittelt sich dem User Sinn, Konzept und Zweck einer Website?“ auch nur
generell, aber nicht im Einzelfall klären. Das hat aber nichts mit dem Thema Performance aus einer technischen
Sicht zu tun; das ist nicht die Art von User Experience, wie wir sie messen wollen.

Was im Java / Web Umfeld meist mit UE gemeint ist, drück sich mit „Real User Measurement / Monitoring (RUM)“
oder „End User Monitoring (EUM)“ besser aus.
First rule of usability? Don't listen to users...




                                                                   „To design an easy-to-use interface
                                                                     pay attention to what users do,
                                                                      not what they say" (J.Nielsen)




                                       codecentric AG                                                       11




Um das zu erreichen, gibt es Firma wie GfK, Nielsen oder Infratest, welche Marktanalysen, Fokusgruppen Interviews und Usability
Labs benutzen, um festzustellen, ob die Gestaltung passt.
Aber Moment mal, ich bin hier ja auf der JAX - Was hat das alles mit Java oder Architektur oder Web Technologien zu tun?
Die JAX ist ja schliesslich keine Designer Veranstaltung.

Das Hauptaugenmerk unserer User Experience liegt auf dem technischen Aspekt: Ist es schnell genug beim User? Und wie weit
kommt sie? Also kommt ein Geschäft zustande oder nicht.
Ganz ehrlich: Wenn die Seite noch zu schön gestaltet ist, aber nach 30 Sekunden ist der Suchen-Button immer noch nicht klickbar,
dann hilft das auch nicht. Die Technik und die Gesataltung sind hier untrennbar miteinander verwoben. Ist es schlecht gestaltet,
aber schnell kann es immer noch erfolglos bleiben, weil der User einfach nicht findet, was er braucht.
Das passt aber wieder zu Herrn Nielsen: Wir wollen beobachten, was die User tun, nicht nur, was sie sagen, speziell zum Thema
Performance. Wie schnell ist langsam?
Sicher wird Geschwindigkeit von einem Zen Mönch anders empfunden als von einem Wallstreet Banker zur Stosszeit
Messen ist Wissen




                                                       Betrachten wir das Thema von der technischen
                                                                           Seite




                                 codecentric AG                                                       12




Das Hauptaugenmerk unserer User Experience liegt auf dem technischen Aspekt: Ist es schnell genug beim User?
Und wie weit kommt sie (die Userin)? Also kommt ein Geschäft zustande oder nicht.
Ganz ehrlich: Wenn die Seite noch zu schön gestaltet ist, aber nach 30 Sekunden ist der Suchen-Button immer
noch nicht klickbar, dann hilft das auch nicht. Die Technik und die Gesataltung sind hier untrennbar miteinander
verwoben. Ist es schlecht gestaltet, aber schnell kann es immer noch erfolglos bleiben, weil der User einfach
nicht findet, was er braucht.
Das passt aber wieder zu Herrn Nielsen: Wir wollen beobachten, was die User tun, nicht nur, was sie sagen,
speziell zum Thema Performance. Wie schnell ist langsam?
Sicher wird Geschwindigkeit von einem Zen Mönch anders empfunden als von einem Wallstreet Banker zur
Stosszeit
Merlins Aufgabe
                     Das Schwert im Stein

© pautina - sxc.hu
Gesamtlandschaft

                                                                                                        Identity                           ERP
                                                                                                        Manager

                                                                                                                                                   CRM


                                                                                                                                                         Order

                                                                                              Load
                                                      Network            Firewall            Balancer              Portal                        Mainframe



                                                                Router                                                                                       Database
                                                                                    Switch
                                                                                                         Web
                                                                                                                            Applications
                                         End User                                                       Servers


                                                                                                                                                         Web Services



                                                                                                                                                         Databases



                                                                                                                                                 ESB




                                            codecentric AG                                                                                                         14




Moderne Architekturen sind 1. sehr verteilt und 2. meistens Laufzeit-getrieben, d.h. die benutzten Komponenten und Services werden erst
innerhalb einer Transaktionen genau definiert. Man kann also quasi keine volle Architektur mehr zeichnen.
Dazu kommt, dass alles über‘s Netzwerk geht, d.h. dieser Teil der Strecke muss auch mit betrachtet werden. Alles in allem sind eine Menge
beweglicher Teile im Spiel und alles was der User tun muss ist klicken.
Die Überwachung der Transaktion aber ist eine Aufgabe ähnlich derer von Merlin gestellten.
Im Detail


                                               •    SOA
                                               •    Cloud
                                               •    Virtualization                                        Amazon EC2
                                               •    Open-source                                           Public Cloud

                                               •    Horizontal Scaling
                                               •    Stateless Architectures
                                                                                  Tomcat

                                                                          Jboss
                                                                                                               MQ        VMware
                                                                                           Spring                        Private Cloud




                                                                                                    Weblogic




                                         codecentric AG                                                                                  15




Wenn man sich nun den rechten Teil noch mal genauer ansieht, wird einem schnell klar, das es hier äußerst komplex zugehen kann.
Transaktionen sind der Schlüssel




                                                                             Vom Klick des Users bis zur Darstellung der Anwort
                                                                                            durch alle Schichten




                                                   Wie schnell sind verschiedene Transaktionen für den
                                                                          User?




                                                codecentric AG                                                                    16




Eine vernünftige Einteilung oder Mesung der User Experience ist nur möglich, wenn man den fachlichen Zusammenhang kennt.
Was macht der User gerade und wie wichtig ist das?
Das lässt sich eigentlich nur mit Hilfe von Transaktionen erreichen. Mit TX ist hier der fachliche Zusammenhang von Klick und technischem Ergebnis gemeint. Was
passiert in den Systemen, wenn der Benutzer etwas anfordert?
Um die User Experience zu messen ist ein Aspekt besonders wichtig. Die Transaktion.
Definieren wir der Einfachheit halber die Transaktion als einen HTTP Request, der durch einen Klick ausgelöst wird.
Fertig ist die Transaktion dann, wenn die letzte Response vom Server wieder zurück zum User gekommen ist.
Alleine das kann mit Hilfe von AJAX, etc. schon sehr komplex werden. Man denke nur an die nachgeladenen Komponenten, an JavaScript Bibliotheken und
ähnliches.
Was noch dazu gehört ist die fachliche Zuordnung. Ist das eine Suche? Eine Überweisung oder eine Kontoänderung? Eine Bezahlvorgang, etc. pp.

Jetzt erst weiss man, wie lange verschiedene Vorgänge beim Kunden dauern, bzw. wie weit er kommt. Also bricht er schon nach der Suche ab, oder ist der
Bezahlvorgang langsam.
Daraus lassen sich dann auch Schlüsse ziehen, was die Akzeptanz angeht.

Diese Transaktionen sind der grosse Knackpunkt für jedes User Experience Monitoring System.
Warum wird auf den nächsten Slides deutlicher
Die Aufgabe




                                                          k




                                                                                   Br
                                                      Brea




                                                                                                           k
                                                                                    eak




                                                                                                       ea
                                                                                                       r
                                                                                                                           Database




                                                                                                       B
                                                                                           Thread 01               P /IP
                                                              TCP/IP              TCP/IP                        TC
                                                   JS NW
                                                   Browser             Netzwerk            Thread 02                        App
                                                                                             JVM                           Server
                                                                                                             TCP/IP           -
                                                                                           Thread 03                        Web
                                                                                                                           Service

                                                                                            JVM
                                                                                                           TC
                                                                                                              P/
                                                                                                                IP

                                                                                                                             ESB


                                                                                                             eak
                                                                                                           Br




                                  codecentric AG                                                                              17




Man wird nie bis zum Hirn des Users durchkommen - Selbst die Daten aus dem Browser sind nicht 100%
Es funktioniert nur, wenn JS aktiviert ist; wenn der Browser mit macht; wenn der PC nicht zu alt ist, also keine
100%
Netzwerkpakete können bis zum Browser verfolgt werden, aber eben auch nur bis dahin. Was im Browser mit den
Daten passiert, das weiss man nicht.

In der vereinfachten Ansicht hier habe ich die 3-4 Knackpunkte, die Medienbrüche dargestellt. Eine Transaktion
von vorne nach hinten und zurück zu verfolgen stellt ein paar Aufgaben.
Verfolgung der TX durch die Schichten: Bruch Browserrenderzeit / Netzwerkzeit, dann TCP/IP-Sockets / JVM
Threads und umgekehrt.

Paketservice Beispiel - Trucks rein, Trucks raus, aber was hat sich in den Paketen getan?
Legacy / Netzwerk
  Gesamtlandschaft

                                                                  Identity                                   ERP
                                                                  Manager                                                          Legacy
   Browser / Endgeräte                                                                                                            Netzwerk
       JavaScript                                                                                                    CRM


                                                                                                                            Order

                                                        Load
             Network               Firewall            Balancer                  Portal                            Mainframe



                         Router                                                                                                Database
                                              Switch
                                                                   Web
                                                                                              Applications
End User                                                          Servers


                                                                                                                           Web Services



                                                                                                                            Databases
                                  Netzwerk - TCP/IP                          JVM / CLR / OS
Robot

                                                                                                                   3rd Party
         Verfügbarkeit                                                                                             Applications



   codecentric AG                                                                                                                    18
                                                                                                       Legacy / Netzwerk
System Monitoring /
  Gesamtlandschaft                                                                          NPM / APM




                                                                 Identity                           ERP
                                                                                                                           System
                                                                 Manager                                              Monitoring / NPM /
         EUM - UEM                                                                                                          APM
                                                                                                            CRM


                                                                                                                   Order

                                                       Load
             Network              Firewall            Balancer              Portal                        Mainframe



                         Router                                                                                       Database
                                             Switch
                                                                  Web
                                                                                     Applications
End User                                                         Servers


                                                                                                                  Web Services



                                                                                                                   Databases
                                      NPM                                   APM
Robot

                                                                                                          3rd Party
         Verfügbarkeit                                                                                    Applications



   codecentric AG                                                                            System Monitoring /             19

                                                                                                 NPM / APM
Des Zauberers Werkstatt


© val-j - sxc.hu
ring                 App
                                                 nito                          lica
                                              Mo                                   tion
                                        tem                                                 Per
                                    Sys                                                         forma
                                                                                                      n  ce M
                                                                                                              ana
                                                                                                                 gem
                                                Network Performance Management                                       ent



                                                             Rea
                                                                 l   Use
                                                                          rM
                                                                            onit
                                                                                    orin
                                                                                        g



                                                              JavaScript Monitoring
                                                                                                     ring
                                                                                                nito
                                                                                             Mo
                                                                                      SLA
                                                                                   y/
                                                                           bilit
                                                                     Availa




Es gibt viele Buzzwords / TLAs auf dem Markt, die versprechen dieses Thema zu adressieren, bzw. eine Lösung
dafür anbieten.
Bei den meisten findet sich das User im Namen oder zumindest ein Customer. Alle betonen, dass ohne man ohne
User Monitoring Komponente keine glücklichen Kunden bekommt
Es tummeln sich hier viele Lösungen und jeder grosse Softwarehersteller hat hier was im Angebot. Sei es IBM, HP,
CA, Oracle, Compuware, BMC, etc. Aber wovon ist hier eigentlich die Rede?
Die Story - 8 Monitoring
                                       System


                                     Cons
                                      Pros

                               1. Keinemir, ob alle Komponenten genug Systemressourcen haben
                                  Sagt Überprüfung der Funktionalität ohne grossen
                               2. Aufwand Legacy Applikationen und Backends ab
                                  Deckt auch
                               2. In der Cloud oder auch der virtualisierten Umgebung
                               3. nutzlos
                                  Reife Technologie (manche sagen überreif)
                               3. Viel Handarbeit nötig, um alle Komponenten zusammen
                                  zu bringen
                               4. Keine richtige Enduser Überwachung




                               codecentric AG                                                  22




Beispiele: Tivoli, BMC, CA Unicenter, HP OpenView, ...
Keine Transaktionen, oder wenn, dann als Ausnahme und nur aufgepfropft. Praktisch keine Enduser Komponente
mit dabei.
System Monitoring


                                                                Identity                           ERP
                                                                Manager

                                                                                                           CRM


                                                                                                                  Order

                                                      Load
             Network             Firewall            Balancer              Portal                        Mainframe



                        Router                                                                                       Database
                                            Switch
                                                                 Web
                                                                                    Applications
End User                                                        Servers


                                                                                                                 Web Services



                                                                                                                  Databases



                                                                                                         3rd Party
                                                                                                         Applications



   codecentric AG                                                                                                          23
Network Performance Monitoring


                                            Cons
                                              Pros

                                              1. PassivAgenten Korrelation-ID einfügbar
                                                 Keine - keine - nicht invasiv
                                              2. Nur Netzwerkpakete zur Analyse
                                                 Schnelle Business Übersicht
                                              3. Meist nur HTTP/s - Kein Overhead
                                                 Produktionstauglich
                                              4. Sicherheitsbedenken bei HTTPS - Zertifikate müssen
                                                 erreichbar sein
                                              5. Nutzlos bei cloud-basierten Lösungen (SPAN port /
                                                 Taping)
                                              6. Keine Browser Render Zeit (keine Mash-Ups, etc.)
                                              7. Hardware und konfigurations-intensiv




                                  codecentric AG                                                     24




Braucht meist noch eine Hardware Komponente, da ansonsten die Analyse nicht in Echtzeit passieren kann
(zuviele Daten)
Extrahop verspricht einen neuen Ansatz, aber das Socket/Thread Problem kann es auch nicht lösen. Hier
tummeln sich sehr viele Anbieter. Die meisten originären Hersteller sind inzwischen von grösseren Firmen
aufgekauft worden, um den Bereich EUM abdecken zu können.
Die Cloud bringt hier grosse Unruhe hinein, da man bei Systemen wie z.B. AWS gar nicht an den benötigten
Switch mit SPAN Port kommt, um die Daten abzugreifen.
Es spielt sich ja auch nicht mehr in meinem Netzwerk ab, sondern geht über das Internet, d.h. es jetzt eine Frage
der Bandbreite.
Umgedreht nutzen Hersteller wie SOASTA die Cloud zur Generierung von Last auf Produktionssystemen
Network Performance Monitoring
 Network Performance Monitoring


                                                                              Identity
                                                                              Manager




                                                                    Load
                            Network            Firewall   Switch   Balancer              Portal



                                      Router
                                                                               Web
                                                                              Servers             Applications
                 End User

                                                          NPM




codecentric AG                                                                                                   25
http://www.real-user-monitoring.com/the-complete-list-of-
                                end-user-experience-monitoring-tools/




                                codecentric AG                                              26




Eine gute Sammlung verfügbarer Lösungen findet sich auf diesem Blog. Auch wenn sie schon länger nicht mehr
gepflegt wurde.
Application Performance Monitoring


                                 Pros
                               Cons

                                1. Agenten in die JVM / CLR
                                   Einsicht Installation notwendig
                                   Produktionstauglich
                                2. Braucht Bytecode (nur Java/.NET)
                                3. Standardmässig keine Enduser werden
                                   Korrelations-ID kann eingebaut Sicht
                                4. ÄltereJavaScript Lösung integrierenpflegen
                                   Kann Lösungen sind aufwendig zu
                                5. Braucht Zusatz integriert werden
                                   Kann mit NPM für EUM
                                6. Geeignet für die Cloud




                             codecentric AG                                    27




Kommen wir zum Erzfeind von NPM - dem APM. Warum Erzfeind?
Klassische APM Lösungen wie WIly Introscope, Precise, Quest Performasure sind aufwendig zu pflegen, da sie
nicht für die modernen, verteilten Architekturen oder agile Entwicklung konzipiert wurden. Der Gegensatz
NPM / APM beruht auf diesen alten Architekturen.
Neuere Lösungen nehmen den NPM Aussagen den Wind aus den Segeln.
Will man eine komplette E2E Sicht auf Transaktionsbasis, dann kommt man um APM nicht rum, aufgrund der
Socket / Thread Problematik. Im Gegensatz zu NPM, kann man eine Korrelations-ID einhängen und damit die
Kette schliessen.
Application Performance Monitoring


                                                                Identity                            ERP
                                                                Manager

                                                                                                            CRM


                                                                                                                   Order


             Network
                                           Blackbox
                                                  Load
                                Firewall             Balancer               Portal                        Mainframe



                       Router                                                                                         Database
                                            Switch
                                                                 Web
                                                                                     Applications
End User                                                        Servers


                                                                                                                  Web Services



                                                                                                                   Databases
                                                                           APM

                                                                                                          3rd Party
                                                                                                          Applications



   codecentric AG                                                                                                           28
Browser / JavaScript Monitoring


                                Cons
                                   Pros                                               YSlow
                                1. Teilweise aufwendig im Browser - Echtes EUM
                                1. Liefert Rendertime zu implementieren
                                2. Was tun beiLösungen vorhanden
                                2. Kostenlose Rich Clients / RIA
                                3. Was ist zum Smartphones Apps?
                                3. Perfekt mit Debuggen
                                4. Für Monitoring wird ein Server benötigt
                                5. Integration mit APM ist nicht kostenlos zu haben




                                  codecentric AG                                              29




Hier tummeln sich viele kostenlose Lösungen, hauptsächlich zum Debugging. Wenn es um das Monitoring geht,
wird es manchmal aufwändig, das hängt von der Komplexität der Applikation (AJAX, RIA, etc.) und des Netzwerks
(Proxies, CDNs, etc.) ab. Für das live Monitoring gibt es keine richtige kostenlose Lösung, hier ist man auf
kommerzielle Angebote angewiesen.
Browser / JavaScript Monitoring

                                                                ERP



                                                                        CRM


                                                                               Order


             Network
                                                                      Mainframe



                                                       Backends                   Database
                                        Web
                                                 Applications
End User                               Servers


                                                                              Web Services



                                                                               Databases



                                                                      3rd Party
                       JS Monitoring                                  Applications



   codecentric AG                                                                       30
Availability Monitoring


                                Pros
                              Cons

                              1. Prüftsynthetische Transaktionen / Robots
                                 Nur globale Verfügbarkeit meiner Applikation
                              2. 24x7 Daten
                                 Hoher Konfigurationsauswand bei Agilität
                              3. Externer mit Smartphones Apps?
                                 Was ist Service - Kostenkontrolle
                               4. Teuer
                               5. Reiner Blick von Aussen




                                codecentric AG                                  31




Mit den gängigen Lösungen kann hauptsächlich die Verfügbarkeit geprüft werden, aber keine echten User
Transaktionen. Das ist wichtig für die Proaktivität, ersetzt aber keine Monitoring Lösung. Ebenso brauche ich für
die Diagnose noch eine zusätzliche Komponente. Auch bei den Preisen wird es eher hoch. Zum Glück kann man
die Services unter voller Kontrolle mieten.
Availability Monitoring




             Network


                                              Blackbox

End User




Robot


         Verfügbarkeit



   codecentric AG                                        32
Alles keine Hexerei

© vailiki - sxc.hu
SLA Überwachung - Reporting


                                     Anforderungen                       Lösung
                                !    Reines Business Reporting       !   Network Performance Monitoring
                                !    Keine Rootcause Analyse nötig
                                !    Renderzeiten unnötig
                                !    SLA Überwachung




                                    codecentric AG                                                        34




Wenn ich eine reine SLA Überwachung brauche und keinen Wert auf Rootcause Analyse oder Diagnose
Möglichkeiten lege, dann bin ich wahrscheinlich mit einer NPM Lösung am Besten bedient. 1 Tool, das mir
eigentlich alles an Reporting liefert was ich brauche. Durch die nicht invasive Installation und das passive
Monitoring, habe ich keinen Einfluss auf mein produktives System.
Allerdings bekomme ich nur Netzwerkpaketzeiten (keine Render Zeiten im Browser), auch aus der JVM gibt es
keine Daten und die Anschaffung ist in der Regel teuer.
Wenn ich eine Cloudlösung habe, dann wird es auch noch schwieriger, hier sind die Anbieter eingeschränkt.
Integration in DataWarehouses oder ähnliches ist hier wahrscheinlich am Einfachsten, wenn man eine Lösung
eines grossen Anbieters nimmt.
SLA Überwachung + Problemdiagnose


                                     Anforderungen                      Lösung
                                !    SLA Überwachung                !   APM
                                !    Alarmierung im Problemfall     !   NPM oder JavaScript Lösung
                                !    Triage und Rootcause Analyse
                                !    Renderzeiten gewünscht




                                    codecentric AG                                                   35




NPM Lösungen sind für das SLA Monitoring sehr gut geeignet, aber nicht für die Diagnose. Dazu braucht es ein
APM System, welches Transaktionsbasiert arbeitet. Alte Legacy APM (Introscope, ITCAM, Precise,) sind hier nur
bedingt geeignet. Bei modernen Architekturen braucht es die TX Fähigkeit im System. Das gibt es bei
AppDynamics, Compuware / DynaTrace und New Relic. Eine Integration mit einem NPM System ist zumindest bei
AD und DT möglich.
Es geht aber auch ohne die teuren NPM Komponenten, wenn ich den JavaScript Weg wähle. AD, DT gehen diesen,
wobei AD hier den einfacheren Weg eingeschlagen hat, der weniger Optionen hat, aber auch einfacher
umzusetzen ist. Generell kostengünstiger als NPM und liefert noch die Renderzeiten mit.
Preistipp: AD, alles in einer Lizenz, aber die Benutzbarkeit muss sich noch weisen, ist noch nicht so lange auf
dem Markt.
Auto Baselining ist auf alle Fälle etwas, was die Kosten noch weiter drückt, da man niemanden zum Konfigurieren
abstellen muss.
Availability Monitoring


                                    Anforderungen                             Lösung
                               !    Globale 24x7 Überprüfung             !    Verfügbarkeitslösung
                               !    Alarmierung im Problemfall           !    Gomez, Keynote, Apica, etc...
                               !    Trending und Proaktivität
                               !    Keine Rootcause Analyse
                               !    Renderzeiten gewünscht




                                   codecentric AG                                                             36




Wenn ich die Antwortzeiten von globalen Standorten brauche, auch zu Zeiten, in denen das Geschäft eher mau
ist, dann ist ein Service á la Gomez oder Keynote das Richtige.
Diese Dienste rufen Seiten oder komplexere Transaktionen von verschiedensten Standorten weltweit rund um die
Uhr auf, so dass ich auch dann die Performance messen kann, wenn gerade kein Business läuft. Dadurch kann ich
evtl. technische Probleme erkennen, bevor sie sich auf den Kunden auswirken.
Für die Rootcause Analyse brauche ich dann allerdings wieder ein NPM / APM System.
Auch ist, wie vorher schon angesprochen, der Konfigurationsaufwand teilweise recht hoch, da sich die Systeme
nicht selbst konfigurieren können und bei jedem Release Skripte, etc. angepasst werden müssen.
Monitoring und Rootcause Analyse


                                    Anforderungen                           Lösung
                               !    24x7 Monitoring mit Enduserzeiten   !   APM + JavaScript EUM
                               !    Rootcause Diagnose über             !   NPM zu teuer
                                    Renderzeit, Netzwerkzeit und
                                    Serverzeit
                               !    Agile Entwicklung




                                   codecentric AG                                                  37




Wenn mich die nur die Browserrenderzeiten und die dazu gehörenden Serverantwortzeiten interessieren, um
schnell eine Antwort auf die Frage: Wie geht es meinen Usern in den verschiedenen Teilen der Welt? zu
bekommen. Das APM wird dazu benötigt, bei langsamen Serverzeiten auch die
Browser / JavaScript Debugging


                                     Anforderungen                              Lösung
                                !    Performance Optimierung von JS         !   JS Debugger
                                     Code                                   !   FireBug, DT AJAX Edition, YSlow
                                !    Browserspezifische Anpassungen
                                !    Test / Entwicklung




                                    codecentric AG                                                                38




Will ich nur die Browserperformance optimieren, dann reichen kostenlose Tools in der Regel aus. Es geht hier
auch nicht um Produktionsmonitoring, sondern wirklich Debugging in der Entwicklung oder im Test.
Mobile Applikationen


                                     Anforderungen                          Lösung
                                !    Native iOS / Android               !   Neuland - noch keine richtigen
                                     Unterstützung                          Lösungen etabliert
                                !    Symbian? Bada? Andere?             !   Erste Ansätze bei SOASTA, etc.
                                !    HTML 5
                                !    Reporting
                                !    Troubleshooting




                                    codecentric AG                                                           39




Für mobile Endgeräte sieht das noch anders aus. Hier gibt es zwar 2 grosse Plattformen, aber noch keinen
richtigen Standard.
Die ersten Hersteller sind dabei etwas zu entwickeln, aber so richtig los gegangen ist es hier noch nicht.
Fazit


                                                  Enduser Monitoring ist wichtig und technisch anspruchsvoll




                                                               Es gibt keine technische einheitliche Lösung für die
                                                                                gesamte Strecke



                                    EUM mit APM ist die Lösung mit dem geringsten Aufwand und
                                                             Kosten




                                 codecentric AG                                                                       40




Was machen wir jetzt mit diesem Wissen?
Ich hoffe, Sie sind nun in der Lage den Markt etwas zu beurteilen und wissen, was Sie ungefähr brauchen.
Die Komplettlösungen sind alle sehr teuer und aufwändig in der Umsetzung. Die grossen Softwarehäuser haben
zwar meist alle Teillösungen unter einen Hut gebracht, aber sie sind meist technisch nicht komplett integriert.
Fragen?



                             • Besuchen Sie mich am Stand der codecentric AG

                             • email an: rainer.schuppe(at)codecentric.de




                                 codecentric AG                                41




Danke für die Aufmerksamkeit. Bei Fragen bitte einfach eine email an mich

Mais conteúdo relacionado

Destaque

Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...
Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...
Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...philippkumar
 
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...eparo GmbH
 
Uability und User Experience - Ein bisschen darüber geplaudert ...
Uability und User Experience - Ein bisschen darüber geplaudert ...Uability und User Experience - Ein bisschen darüber geplaudert ...
Uability und User Experience - Ein bisschen darüber geplaudert ...Maria Rauschenberger
 
Media User Experience - A Walkthrough
Media User Experience - A WalkthroughMedia User Experience - A Walkthrough
Media User Experience - A WalkthroughThorsten Jonas
 
User (Experience) Stories #iak13
User (Experience) Stories #iak13User (Experience) Stories #iak13
User (Experience) Stories #iak13Screamin Wrba
 
User Experience - Design für die Nutzer
User Experience - Design für die NutzerUser Experience - Design für die Nutzer
User Experience - Design für die NutzerMatthias Mueller-Prove
 

Destaque (7)

Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...
Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...
Mobil, innovativ, benutzerfreundlich: Die Bedeutung von User Experience in de...
 
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...
eparo – User Experience Design und Usability. Niemand sagt mehr "Konzeption" ...
 
Uability und User Experience - Ein bisschen darüber geplaudert ...
Uability und User Experience - Ein bisschen darüber geplaudert ...Uability und User Experience - Ein bisschen darüber geplaudert ...
Uability und User Experience - Ein bisschen darüber geplaudert ...
 
Media User Experience - A Walkthrough
Media User Experience - A WalkthroughMedia User Experience - A Walkthrough
Media User Experience - A Walkthrough
 
User (Experience) Stories #iak13
User (Experience) Stories #iak13User (Experience) Stories #iak13
User (Experience) Stories #iak13
 
Ahoi User Experience Design
Ahoi User Experience DesignAhoi User Experience Design
Ahoi User Experience Design
 
User Experience - Design für die Nutzer
User Experience - Design für die NutzerUser Experience - Design für die Nutzer
User Experience - Design für die Nutzer
 

Die Anwender im Fokus - User experience fühlen und messen

  • 1. Die Anwender im Fokus Userexperience - messen und fühlen Rainer Schuppe Manager Technical Services, codecentric AG codecentric AG
  • 2. Agile Software Factory Performance Solutions Document Solutions codecentric AG
  • 3. Wer kennt jemanden, der sich noch nie über die Geschwindigkeit einer Website geärgert hat? © babykrul - sxc.hu
  • 4. codecentric AG 4 © NLTeddy - sxc.hu Etwas eigentlich Entspannendes hat die genau gegenteilige Wirkung auf den User
  • 5. codecentric AG 5 © ross666 - sxc.hu
  • 6. Agenda Der heilige Gral: Enduser Experience Merlins Aufgabe - Das Schwert im Stein Des Zauberers Werkstatt - So kann‘s gehen Alles keine Hexerei - Lösungen Fazit codecentric AG 6
  • 7. Der heilige Gral Enduser Experience © Ayla87 - sxc.hu
  • 8. M ) (RU ring onito End Use rM rM l Use onit Rea or ing (EU M) End 2 End Monitoring (E2E) End Use r Ex per ienc eM onit orin g (EU EM ) User Experience Monitoring (UEM) EM) g (C nit orin e Mo erienc r Exp to me Cus Es gibt viele Buzzwords / TLAs auf dem Markt, die versprechen dieses Thema zu adressieren, bzw. eine Lösung dafür anbieten. Bei den meisten findet sich das User im Namen oder zumindest ein Customer. Alle betonen, dass ohne man ohne User Monitoring Komponente keine glücklichen Kunden bekommt Es tummeln sich hier viele Lösungen und jeder grosse Softwarehersteller hat hier was im Angebot. Sei es IBM, HP, CA, Oracle, Compuware, BMC, etc. Aber wovon ist hier eigentlich die Rede?
  • 9. Schlechte User Experience ist schlecht für‘s Geschäft ... und auch für interne Anwendungen Auch Kollegen sind Kunden Der Betreiber merkt aber davon oft nichts codecentric AG 9 Wenn die Userexperience schlecht ist, dann geht es auch dem Business schlecht. Das gilt für e-commerce shops ebenso wie für Anwendungen, die nicht direkt vom Kunden bedient werden, aber z.B. von Sachbearbeitern. ich selbst habe am Kölner Flughafen erlebt, wie Kunden bei einer Autovermietung in langen Schlangen standen, weil jeder Vorgang 10 Minuten dauerte. Nach 15 Minuten war an den benachbarten Autovermietern aber der Trubel weg und die Kunden sind dahin abgewandert. Der Grund war eine äußerst langsame Anwendung, welche alles aufgehalten hat. Wenn dann der Betrieb nichts davon mitkriegt oder erst am nächsten Tag, wird das Problem meist noch verschärft.
  • 10. Was ist überhaupt User Experience? Gefühlte Wahrnehmung? ISO 9241-210 Das ist die Wahrnehmung und Reaktionen einer Person, die sich bei der Benutzung oder der erwarteten Verwendung eines Produktes ergeben. Wie schnell vermittelt sich dem User Sinn, Konzept und Zweck einer Website? codecentric AG 10 Was ist über die User Experience? Ist das die gefühlte Wahrnehmung des Benutzers einer Website? Man kennt das ja von der gefühlten Temperatur aus den Wetterberichten. Treffender ist der englische Ausdruck „Wind-Chill Factor“. Hier wird aufgrund physikalischer Grössen wie Windgeschwindigkeit und Oberflächentemperatur ein Faktor errechnet. Ob mir dann auch wirklich so kalt ist, kann man nicht messen. Definition User Experience laut ISO 9241-210: Wahrnehmung, etc., also die physiologische und psychologische Komponente. Für die Messung hier, braucht man Usability Labs, Eye Tracker und geschultes Personal - damit lässt sich die Frage nach „ Wie schnell vermittelt sich dem User Sinn, Konzept und Zweck einer Website?“ auch nur generell, aber nicht im Einzelfall klären. Das hat aber nichts mit dem Thema Performance aus einer technischen Sicht zu tun; das ist nicht die Art von User Experience, wie wir sie messen wollen. Was im Java / Web Umfeld meist mit UE gemeint ist, drück sich mit „Real User Measurement / Monitoring (RUM)“ oder „End User Monitoring (EUM)“ besser aus.
  • 11. First rule of usability? Don't listen to users... „To design an easy-to-use interface pay attention to what users do, not what they say" (J.Nielsen) codecentric AG 11 Um das zu erreichen, gibt es Firma wie GfK, Nielsen oder Infratest, welche Marktanalysen, Fokusgruppen Interviews und Usability Labs benutzen, um festzustellen, ob die Gestaltung passt. Aber Moment mal, ich bin hier ja auf der JAX - Was hat das alles mit Java oder Architektur oder Web Technologien zu tun? Die JAX ist ja schliesslich keine Designer Veranstaltung. Das Hauptaugenmerk unserer User Experience liegt auf dem technischen Aspekt: Ist es schnell genug beim User? Und wie weit kommt sie? Also kommt ein Geschäft zustande oder nicht. Ganz ehrlich: Wenn die Seite noch zu schön gestaltet ist, aber nach 30 Sekunden ist der Suchen-Button immer noch nicht klickbar, dann hilft das auch nicht. Die Technik und die Gesataltung sind hier untrennbar miteinander verwoben. Ist es schlecht gestaltet, aber schnell kann es immer noch erfolglos bleiben, weil der User einfach nicht findet, was er braucht. Das passt aber wieder zu Herrn Nielsen: Wir wollen beobachten, was die User tun, nicht nur, was sie sagen, speziell zum Thema Performance. Wie schnell ist langsam? Sicher wird Geschwindigkeit von einem Zen Mönch anders empfunden als von einem Wallstreet Banker zur Stosszeit
  • 12. Messen ist Wissen Betrachten wir das Thema von der technischen Seite codecentric AG 12 Das Hauptaugenmerk unserer User Experience liegt auf dem technischen Aspekt: Ist es schnell genug beim User? Und wie weit kommt sie (die Userin)? Also kommt ein Geschäft zustande oder nicht. Ganz ehrlich: Wenn die Seite noch zu schön gestaltet ist, aber nach 30 Sekunden ist der Suchen-Button immer noch nicht klickbar, dann hilft das auch nicht. Die Technik und die Gesataltung sind hier untrennbar miteinander verwoben. Ist es schlecht gestaltet, aber schnell kann es immer noch erfolglos bleiben, weil der User einfach nicht findet, was er braucht. Das passt aber wieder zu Herrn Nielsen: Wir wollen beobachten, was die User tun, nicht nur, was sie sagen, speziell zum Thema Performance. Wie schnell ist langsam? Sicher wird Geschwindigkeit von einem Zen Mönch anders empfunden als von einem Wallstreet Banker zur Stosszeit
  • 13. Merlins Aufgabe Das Schwert im Stein © pautina - sxc.hu
  • 14. Gesamtlandschaft Identity ERP Manager CRM Order Load Network Firewall Balancer Portal Mainframe Router Database Switch Web Applications End User Servers Web Services Databases ESB codecentric AG 14 Moderne Architekturen sind 1. sehr verteilt und 2. meistens Laufzeit-getrieben, d.h. die benutzten Komponenten und Services werden erst innerhalb einer Transaktionen genau definiert. Man kann also quasi keine volle Architektur mehr zeichnen. Dazu kommt, dass alles über‘s Netzwerk geht, d.h. dieser Teil der Strecke muss auch mit betrachtet werden. Alles in allem sind eine Menge beweglicher Teile im Spiel und alles was der User tun muss ist klicken. Die Überwachung der Transaktion aber ist eine Aufgabe ähnlich derer von Merlin gestellten.
  • 15. Im Detail • SOA • Cloud • Virtualization Amazon EC2 • Open-source Public Cloud • Horizontal Scaling • Stateless Architectures Tomcat Jboss MQ VMware Spring Private Cloud Weblogic codecentric AG 15 Wenn man sich nun den rechten Teil noch mal genauer ansieht, wird einem schnell klar, das es hier äußerst komplex zugehen kann.
  • 16. Transaktionen sind der Schlüssel Vom Klick des Users bis zur Darstellung der Anwort durch alle Schichten Wie schnell sind verschiedene Transaktionen für den User? codecentric AG 16 Eine vernünftige Einteilung oder Mesung der User Experience ist nur möglich, wenn man den fachlichen Zusammenhang kennt. Was macht der User gerade und wie wichtig ist das? Das lässt sich eigentlich nur mit Hilfe von Transaktionen erreichen. Mit TX ist hier der fachliche Zusammenhang von Klick und technischem Ergebnis gemeint. Was passiert in den Systemen, wenn der Benutzer etwas anfordert? Um die User Experience zu messen ist ein Aspekt besonders wichtig. Die Transaktion. Definieren wir der Einfachheit halber die Transaktion als einen HTTP Request, der durch einen Klick ausgelöst wird. Fertig ist die Transaktion dann, wenn die letzte Response vom Server wieder zurück zum User gekommen ist. Alleine das kann mit Hilfe von AJAX, etc. schon sehr komplex werden. Man denke nur an die nachgeladenen Komponenten, an JavaScript Bibliotheken und ähnliches. Was noch dazu gehört ist die fachliche Zuordnung. Ist das eine Suche? Eine Überweisung oder eine Kontoänderung? Eine Bezahlvorgang, etc. pp. Jetzt erst weiss man, wie lange verschiedene Vorgänge beim Kunden dauern, bzw. wie weit er kommt. Also bricht er schon nach der Suche ab, oder ist der Bezahlvorgang langsam. Daraus lassen sich dann auch Schlüsse ziehen, was die Akzeptanz angeht. Diese Transaktionen sind der grosse Knackpunkt für jedes User Experience Monitoring System. Warum wird auf den nächsten Slides deutlicher
  • 17. Die Aufgabe k Br Brea k eak ea r Database B Thread 01 P /IP TCP/IP TCP/IP TC JS NW Browser Netzwerk Thread 02 App JVM Server TCP/IP - Thread 03 Web Service JVM TC P/ IP ESB eak Br codecentric AG 17 Man wird nie bis zum Hirn des Users durchkommen - Selbst die Daten aus dem Browser sind nicht 100% Es funktioniert nur, wenn JS aktiviert ist; wenn der Browser mit macht; wenn der PC nicht zu alt ist, also keine 100% Netzwerkpakete können bis zum Browser verfolgt werden, aber eben auch nur bis dahin. Was im Browser mit den Daten passiert, das weiss man nicht. In der vereinfachten Ansicht hier habe ich die 3-4 Knackpunkte, die Medienbrüche dargestellt. Eine Transaktion von vorne nach hinten und zurück zu verfolgen stellt ein paar Aufgaben. Verfolgung der TX durch die Schichten: Bruch Browserrenderzeit / Netzwerkzeit, dann TCP/IP-Sockets / JVM Threads und umgekehrt. Paketservice Beispiel - Trucks rein, Trucks raus, aber was hat sich in den Paketen getan?
  • 18. Legacy / Netzwerk Gesamtlandschaft Identity ERP Manager Legacy Browser / Endgeräte Netzwerk JavaScript CRM Order Load Network Firewall Balancer Portal Mainframe Router Database Switch Web Applications End User Servers Web Services Databases Netzwerk - TCP/IP JVM / CLR / OS Robot 3rd Party Verfügbarkeit Applications codecentric AG 18 Legacy / Netzwerk
  • 19. System Monitoring / Gesamtlandschaft NPM / APM Identity ERP System Manager Monitoring / NPM / EUM - UEM APM CRM Order Load Network Firewall Balancer Portal Mainframe Router Database Switch Web Applications End User Servers Web Services Databases NPM APM Robot 3rd Party Verfügbarkeit Applications codecentric AG System Monitoring / 19 NPM / APM
  • 20. Des Zauberers Werkstatt © val-j - sxc.hu
  • 21. ring App nito lica Mo tion tem Per Sys forma n ce M ana gem Network Performance Management ent Rea l Use rM onit orin g JavaScript Monitoring ring nito Mo SLA y/ bilit Availa Es gibt viele Buzzwords / TLAs auf dem Markt, die versprechen dieses Thema zu adressieren, bzw. eine Lösung dafür anbieten. Bei den meisten findet sich das User im Namen oder zumindest ein Customer. Alle betonen, dass ohne man ohne User Monitoring Komponente keine glücklichen Kunden bekommt Es tummeln sich hier viele Lösungen und jeder grosse Softwarehersteller hat hier was im Angebot. Sei es IBM, HP, CA, Oracle, Compuware, BMC, etc. Aber wovon ist hier eigentlich die Rede?
  • 22. Die Story - 8 Monitoring System Cons Pros 1. Keinemir, ob alle Komponenten genug Systemressourcen haben Sagt Überprüfung der Funktionalität ohne grossen 2. Aufwand Legacy Applikationen und Backends ab Deckt auch 2. In der Cloud oder auch der virtualisierten Umgebung 3. nutzlos Reife Technologie (manche sagen überreif) 3. Viel Handarbeit nötig, um alle Komponenten zusammen zu bringen 4. Keine richtige Enduser Überwachung codecentric AG 22 Beispiele: Tivoli, BMC, CA Unicenter, HP OpenView, ... Keine Transaktionen, oder wenn, dann als Ausnahme und nur aufgepfropft. Praktisch keine Enduser Komponente mit dabei.
  • 23. System Monitoring Identity ERP Manager CRM Order Load Network Firewall Balancer Portal Mainframe Router Database Switch Web Applications End User Servers Web Services Databases 3rd Party Applications codecentric AG 23
  • 24. Network Performance Monitoring Cons Pros 1. PassivAgenten Korrelation-ID einfügbar Keine - keine - nicht invasiv 2. Nur Netzwerkpakete zur Analyse Schnelle Business Übersicht 3. Meist nur HTTP/s - Kein Overhead Produktionstauglich 4. Sicherheitsbedenken bei HTTPS - Zertifikate müssen erreichbar sein 5. Nutzlos bei cloud-basierten Lösungen (SPAN port / Taping) 6. Keine Browser Render Zeit (keine Mash-Ups, etc.) 7. Hardware und konfigurations-intensiv codecentric AG 24 Braucht meist noch eine Hardware Komponente, da ansonsten die Analyse nicht in Echtzeit passieren kann (zuviele Daten) Extrahop verspricht einen neuen Ansatz, aber das Socket/Thread Problem kann es auch nicht lösen. Hier tummeln sich sehr viele Anbieter. Die meisten originären Hersteller sind inzwischen von grösseren Firmen aufgekauft worden, um den Bereich EUM abdecken zu können. Die Cloud bringt hier grosse Unruhe hinein, da man bei Systemen wie z.B. AWS gar nicht an den benötigten Switch mit SPAN Port kommt, um die Daten abzugreifen. Es spielt sich ja auch nicht mehr in meinem Netzwerk ab, sondern geht über das Internet, d.h. es jetzt eine Frage der Bandbreite. Umgedreht nutzen Hersteller wie SOASTA die Cloud zur Generierung von Last auf Produktionssystemen
  • 25. Network Performance Monitoring Network Performance Monitoring Identity Manager Load Network Firewall Switch Balancer Portal Router Web Servers Applications End User NPM codecentric AG 25
  • 26. http://www.real-user-monitoring.com/the-complete-list-of- end-user-experience-monitoring-tools/ codecentric AG 26 Eine gute Sammlung verfügbarer Lösungen findet sich auf diesem Blog. Auch wenn sie schon länger nicht mehr gepflegt wurde.
  • 27. Application Performance Monitoring Pros Cons 1. Agenten in die JVM / CLR Einsicht Installation notwendig Produktionstauglich 2. Braucht Bytecode (nur Java/.NET) 3. Standardmässig keine Enduser werden Korrelations-ID kann eingebaut Sicht 4. ÄltereJavaScript Lösung integrierenpflegen Kann Lösungen sind aufwendig zu 5. Braucht Zusatz integriert werden Kann mit NPM für EUM 6. Geeignet für die Cloud codecentric AG 27 Kommen wir zum Erzfeind von NPM - dem APM. Warum Erzfeind? Klassische APM Lösungen wie WIly Introscope, Precise, Quest Performasure sind aufwendig zu pflegen, da sie nicht für die modernen, verteilten Architekturen oder agile Entwicklung konzipiert wurden. Der Gegensatz NPM / APM beruht auf diesen alten Architekturen. Neuere Lösungen nehmen den NPM Aussagen den Wind aus den Segeln. Will man eine komplette E2E Sicht auf Transaktionsbasis, dann kommt man um APM nicht rum, aufgrund der Socket / Thread Problematik. Im Gegensatz zu NPM, kann man eine Korrelations-ID einhängen und damit die Kette schliessen.
  • 28. Application Performance Monitoring Identity ERP Manager CRM Order Network Blackbox Load Firewall Balancer Portal Mainframe Router Database Switch Web Applications End User Servers Web Services Databases APM 3rd Party Applications codecentric AG 28
  • 29. Browser / JavaScript Monitoring Cons Pros YSlow 1. Teilweise aufwendig im Browser - Echtes EUM 1. Liefert Rendertime zu implementieren 2. Was tun beiLösungen vorhanden 2. Kostenlose Rich Clients / RIA 3. Was ist zum Smartphones Apps? 3. Perfekt mit Debuggen 4. Für Monitoring wird ein Server benötigt 5. Integration mit APM ist nicht kostenlos zu haben codecentric AG 29 Hier tummeln sich viele kostenlose Lösungen, hauptsächlich zum Debugging. Wenn es um das Monitoring geht, wird es manchmal aufwändig, das hängt von der Komplexität der Applikation (AJAX, RIA, etc.) und des Netzwerks (Proxies, CDNs, etc.) ab. Für das live Monitoring gibt es keine richtige kostenlose Lösung, hier ist man auf kommerzielle Angebote angewiesen.
  • 30. Browser / JavaScript Monitoring ERP CRM Order Network Mainframe Backends Database Web Applications End User Servers Web Services Databases 3rd Party JS Monitoring Applications codecentric AG 30
  • 31. Availability Monitoring Pros Cons 1. Prüftsynthetische Transaktionen / Robots Nur globale Verfügbarkeit meiner Applikation 2. 24x7 Daten Hoher Konfigurationsauswand bei Agilität 3. Externer mit Smartphones Apps? Was ist Service - Kostenkontrolle 4. Teuer 5. Reiner Blick von Aussen codecentric AG 31 Mit den gängigen Lösungen kann hauptsächlich die Verfügbarkeit geprüft werden, aber keine echten User Transaktionen. Das ist wichtig für die Proaktivität, ersetzt aber keine Monitoring Lösung. Ebenso brauche ich für die Diagnose noch eine zusätzliche Komponente. Auch bei den Preisen wird es eher hoch. Zum Glück kann man die Services unter voller Kontrolle mieten.
  • 32. Availability Monitoring Network Blackbox End User Robot Verfügbarkeit codecentric AG 32
  • 33. Alles keine Hexerei © vailiki - sxc.hu
  • 34. SLA Überwachung - Reporting Anforderungen Lösung ! Reines Business Reporting ! Network Performance Monitoring ! Keine Rootcause Analyse nötig ! Renderzeiten unnötig ! SLA Überwachung codecentric AG 34 Wenn ich eine reine SLA Überwachung brauche und keinen Wert auf Rootcause Analyse oder Diagnose Möglichkeiten lege, dann bin ich wahrscheinlich mit einer NPM Lösung am Besten bedient. 1 Tool, das mir eigentlich alles an Reporting liefert was ich brauche. Durch die nicht invasive Installation und das passive Monitoring, habe ich keinen Einfluss auf mein produktives System. Allerdings bekomme ich nur Netzwerkpaketzeiten (keine Render Zeiten im Browser), auch aus der JVM gibt es keine Daten und die Anschaffung ist in der Regel teuer. Wenn ich eine Cloudlösung habe, dann wird es auch noch schwieriger, hier sind die Anbieter eingeschränkt. Integration in DataWarehouses oder ähnliches ist hier wahrscheinlich am Einfachsten, wenn man eine Lösung eines grossen Anbieters nimmt.
  • 35. SLA Überwachung + Problemdiagnose Anforderungen Lösung ! SLA Überwachung ! APM ! Alarmierung im Problemfall ! NPM oder JavaScript Lösung ! Triage und Rootcause Analyse ! Renderzeiten gewünscht codecentric AG 35 NPM Lösungen sind für das SLA Monitoring sehr gut geeignet, aber nicht für die Diagnose. Dazu braucht es ein APM System, welches Transaktionsbasiert arbeitet. Alte Legacy APM (Introscope, ITCAM, Precise,) sind hier nur bedingt geeignet. Bei modernen Architekturen braucht es die TX Fähigkeit im System. Das gibt es bei AppDynamics, Compuware / DynaTrace und New Relic. Eine Integration mit einem NPM System ist zumindest bei AD und DT möglich. Es geht aber auch ohne die teuren NPM Komponenten, wenn ich den JavaScript Weg wähle. AD, DT gehen diesen, wobei AD hier den einfacheren Weg eingeschlagen hat, der weniger Optionen hat, aber auch einfacher umzusetzen ist. Generell kostengünstiger als NPM und liefert noch die Renderzeiten mit. Preistipp: AD, alles in einer Lizenz, aber die Benutzbarkeit muss sich noch weisen, ist noch nicht so lange auf dem Markt. Auto Baselining ist auf alle Fälle etwas, was die Kosten noch weiter drückt, da man niemanden zum Konfigurieren abstellen muss.
  • 36. Availability Monitoring Anforderungen Lösung ! Globale 24x7 Überprüfung ! Verfügbarkeitslösung ! Alarmierung im Problemfall ! Gomez, Keynote, Apica, etc... ! Trending und Proaktivität ! Keine Rootcause Analyse ! Renderzeiten gewünscht codecentric AG 36 Wenn ich die Antwortzeiten von globalen Standorten brauche, auch zu Zeiten, in denen das Geschäft eher mau ist, dann ist ein Service á la Gomez oder Keynote das Richtige. Diese Dienste rufen Seiten oder komplexere Transaktionen von verschiedensten Standorten weltweit rund um die Uhr auf, so dass ich auch dann die Performance messen kann, wenn gerade kein Business läuft. Dadurch kann ich evtl. technische Probleme erkennen, bevor sie sich auf den Kunden auswirken. Für die Rootcause Analyse brauche ich dann allerdings wieder ein NPM / APM System. Auch ist, wie vorher schon angesprochen, der Konfigurationsaufwand teilweise recht hoch, da sich die Systeme nicht selbst konfigurieren können und bei jedem Release Skripte, etc. angepasst werden müssen.
  • 37. Monitoring und Rootcause Analyse Anforderungen Lösung ! 24x7 Monitoring mit Enduserzeiten ! APM + JavaScript EUM ! Rootcause Diagnose über ! NPM zu teuer Renderzeit, Netzwerkzeit und Serverzeit ! Agile Entwicklung codecentric AG 37 Wenn mich die nur die Browserrenderzeiten und die dazu gehörenden Serverantwortzeiten interessieren, um schnell eine Antwort auf die Frage: Wie geht es meinen Usern in den verschiedenen Teilen der Welt? zu bekommen. Das APM wird dazu benötigt, bei langsamen Serverzeiten auch die
  • 38. Browser / JavaScript Debugging Anforderungen Lösung ! Performance Optimierung von JS ! JS Debugger Code ! FireBug, DT AJAX Edition, YSlow ! Browserspezifische Anpassungen ! Test / Entwicklung codecentric AG 38 Will ich nur die Browserperformance optimieren, dann reichen kostenlose Tools in der Regel aus. Es geht hier auch nicht um Produktionsmonitoring, sondern wirklich Debugging in der Entwicklung oder im Test.
  • 39. Mobile Applikationen Anforderungen Lösung ! Native iOS / Android ! Neuland - noch keine richtigen Unterstützung Lösungen etabliert ! Symbian? Bada? Andere? ! Erste Ansätze bei SOASTA, etc. ! HTML 5 ! Reporting ! Troubleshooting codecentric AG 39 Für mobile Endgeräte sieht das noch anders aus. Hier gibt es zwar 2 grosse Plattformen, aber noch keinen richtigen Standard. Die ersten Hersteller sind dabei etwas zu entwickeln, aber so richtig los gegangen ist es hier noch nicht.
  • 40. Fazit Enduser Monitoring ist wichtig und technisch anspruchsvoll Es gibt keine technische einheitliche Lösung für die gesamte Strecke EUM mit APM ist die Lösung mit dem geringsten Aufwand und Kosten codecentric AG 40 Was machen wir jetzt mit diesem Wissen? Ich hoffe, Sie sind nun in der Lage den Markt etwas zu beurteilen und wissen, was Sie ungefähr brauchen. Die Komplettlösungen sind alle sehr teuer und aufwändig in der Umsetzung. Die grossen Softwarehäuser haben zwar meist alle Teillösungen unter einen Hut gebracht, aber sie sind meist technisch nicht komplett integriert.
  • 41. Fragen? • Besuchen Sie mich am Stand der codecentric AG • email an: rainer.schuppe(at)codecentric.de codecentric AG 41 Danke für die Aufmerksamkeit. Bei Fragen bitte einfach eine email an mich