Download - The Day after
Lars Röwekamp (a.k.a. @mobileLarson)
ÜBER MICH
LR
#WISSENTEILEN
Wer bin ich - und wen ja, wie viele?
• CIO New Technologies • Enterprise & Mobile • Author, Speaker, Coach & Mentor
• Snowboard & MTB Enthusiast• dreifacher Vater, einfacher Ehemann
#WISSENTEILEN
Back to Work ...
Fehler erkennenProbleme behebenZum Upgrade motivierenKEINE negative Bewertung
Warum crashen Apps?
#WISSENTEILEN
QUALITY
33%Hardware
67%Software
10% Display – Density, colors, quality
10% Memory – Type and amount
7% Sensors – Accelerometer, Gravity
Gyroscope, GPS
4% Chipset - CPU, GPU, Silicon
2% Other HW – Keyboard, WiFi
32% Platform – OS Version
29% OEM customizations– specific UI layers, customized SW,
middleware, drivers
6% Other SW– Dependencies to e.g.
pre-installed apps. processes
The Day After
QUALITY
#WISSENTEILEN
Anforderung an Testabdeckung
• Alles „Offensichtliche“ plus ...• ... Lifecycle Events & Config Changes• ... Datenbank & Filesystem• ... Umwelteinflüsse & Störungen• ... zu unterstützende Device Konfigurationen• ... zu unterstützende Versionen, Locales, etc.
The Day After
QUALITY
#WISSENTEILEN
Anforderung an Testabdeckung
• ... Reaktion auf Batteriestatus• ... App Installation & Update• ... Verhalten im Standby Modus• ... Standardkonformität• ... Plattformkonformität• ... Sicherheit
The Day After
QUALITY
#WISSENTEILEN
Unit Tests
• Testen der korrekten Funktionsweise einzelner, isolierter Komponenten
• automatisiert • regelmäßig• wiederholbar
The Day After
QUALITY
#WISSENTEILEN
Integration Tests
• Testen der Interaktion von „unit tested“ Komponenten mit ihrer direkten Umgebung
• Life Cycle Behaviour• Klickpfade, State-Saving/Restoring• Änderung von Konfiguration, Ressourcen• Umwelteinflüsse und Störungen
The Day After
QUALITY
#WISSENTEILEN
Acceptance Tests
• Testen der Korrektheit und Vollständigkeit von Use Cases und User Stories
• Remote Installation und Remote Ablauf• paralleles Testen von verschiedenen „Devices“• Vergleich von Bildschirmfotos
The Day After
QUALITY
#WISSENTEILEN
Stress Tests
• Testen der App gegen Umwelteinflüsse und „beliebige“ Störungen
• Simulation „beliebiger“ Störungen• Simulation „beliebiger“ Umwelteinflüsse• Forciertes „gegen die Wand“ fahren
Wer bitte soll das allestesten?
25
The Day After
QUALITY
• Ich?• Du?• Er, sie, es? • Oder besser doch ... ?
#WISSENTEILEN
Dafür gibt es doch bestimmt eine „App“, äh sorry ich meinte einen Test-Provider, oder?
QUALITY
#WISSENTEILEN
Klingoninthe2010Dragon*con Parade,by vladeb,CCby 2.0flickr.com/photos/28122162@N04/4968698797
The Klingon Programmer?http://gradha.sdf-eu.org/textos/klingon_programmer.en.html
Rule 18:„Perhaps it ISagood day to die!
Isay we ship it!“
The Day After
ROLLOUT
#WISSENTEILEN
Rollout Strategien
• Klingon Rollout• „Dogfood“ Builds• Interne oder externe Beta-Phase
• BTW: Single- oder Multi-Plattform Rollout• BTW: App „only“ oder App & Server Rollout
The Day After
ROLLOUT
#WISSENTEILEN
Alpha / Beta Channels
• Community als „Tester“ • „Tester“ bekommen normale Store Updates
• Wenn Alpha/Beta Rollout beendet, sind die „Tester“ wieder Teil der normalen User-Base, ohne Deinstallation
The Day After
ROLLOUT
#WISSENTEILEN
Staged Rollout
• App geht nur an einen Teil der Nutzer: 5%, 10%, 20%, 50%
• Features auf Akzeptanz testen• Kritische Fehler betreffen nur Teilgruppen • Langsames Steigern ist möglich
The Day After
ROLLOUT
#WISSENTEILEN
Rollout Zyklen
• Balance zwischen zu oft und zu selten• Balance zwischen
„App ist buggy“ (HotFix Flut)„App wird nicht gepflegt“
The Day After
ROLLOUT
#WISSENTEILEN
Rollout Zyklen
• Hard Facts:Jedes Update bringt Traffic! „Newsletter of Mobile World“Neue Berechtigungen kosten Nutzer
• Erfahrungswert: Update alle 2-6 Wochen wird akzeptiert
The Day After
ANALYTICS
#WISSENTEILEN
„Meine App ist am Markt! Aber wie bekomme ich jetzt sinnvolle Informationen über Nutzerverhalten und Conversion als Grundlage für strategische Entscheidungen?“
The Day After
ANALYTICS
#WISSENTEILEN
Schritt 1: Notwendige Daten identifizieren
• Was sind die Business relevanten Metriken?• Was sind die technischen Metriken? • Was sind weitere Erfolgsmetriken?
The Day After
ANALYTICS
#WISSENTEILEN
Schritt 2: Nutzbarkeit prüfen
• Kann ich die gewünschten Daten sammeln?• Habe ich die notwendigen Analysetools?• Habe ich die notwendige Analyseerfahrung?
The Day After
ANALYTICS
#WISSENTEILEN
Worum geht es beim In-App Logging
• Laufzeitinformationen ...sammeln, senden & auswerten
• Und was Bitte? Relevantes!User-Verhalten, Values & Crashes
The Day After
ANALYTICS
#WISSENTEILEN
a.k.a. Poor-Mans Analytics
• „einfach“ im Sinne von trivial zu realisieren• „einfach“ im Sinne von wenig komfortabel
• Wie kommen die Daten zum Entwickler?• Wie kommen die Daten zum Server? • Was ist mit Security?
The Day After
ANALYTICS
#WISSENTEILEN
Worum geht es beim Crash Reporting
• Kritische Laufzeitinformationen ...sammeln, senden & auswerten
• Und was Bitte? Unerwartetes!User-Verhalten, Values & Crashes
The Day After
ANALYTICS
#WISSENTEILEN
„Collect & send Data“, aber wie?
• Silent Mode • PopUp / Toast• Notification• Dialog
The Day After
ANALYTICS
#WISSENTEILEN
Main Features des Crash Reporting?
• klinkt sich bei „Ausnahmen“ dazwischen• erstellt „Crash Reports“• reichert „Crash Reports“ um Kontext an• sendet „Crash Reports“ an Backend(s)
• benötigt i.d.R. „lediglich“ Internet-Permission
The Day After
ANALYTICS
#WISSENTEILEN
Main Players beim Crash Reporting?
• Crashlytics (Teil von Fabric)• New Relic• Cittercism• Splunk (ehemals Bugsense)• HockeyApp• TestFlight, Testfairy
The Day After
ANALYTICS
#WISSENTEILEN
Worum geht es beim App Monitoring
• Relevante Laufzeitinformationen ...sammeln, senden & auswerten
• Nutzerverhalten• Nutzer-Feedback
The Day After
ANALYTICS
#WISSENTEILEN
Monitore deine Ratings
• Ratings unbedingt ernst nehmen!• Bester Kanal hin zu den Nutzern
• Nächstes Feature ist wahrscheinlich schon alsReview in den Ratings und nicht im Backlog
The Day After
ANALYTICS
#WISSENTEILEN
Monitore dein Traffic
• Erkennen von Serverproblemen• Probleme werden auf die App geschoben.
• App ist nicht Web. Einmal deinstalliert ist immer deinstalliert!
The Day After
ANALYTICS
#WISSENTEILEN
Monitore die UX
• Nutzerverhalten verstehen lernen• App Performance messen• Netzwerklatenz erkennen
• In welchen Geräten/Ländern/Regionen?
The Day After
ANALYTICS
#WISSENTEILEN
Monitore die UX
• „Number of active Users using the App“• „Where in the World the App is being used“• „Adoption and Usage of specific Features“• „In-App Purchases and Transactions“• „Crashes and Exceptions“
• „And many other useful metrics ... “
The Day After
ANALYTICS
#WISSENTEILEN
Main Player beim App Monitoring
• Google Analytics• New Relic• Telerik Analytics• Apteligent (ehemals Cittercism)
LARS RÖWEKAMPCIO NEW TECHNOLOGIES
[email protected]+49 (0)441 4082 – 101
@mobileLarson@_openknowledge
OFFENKUNDIGGUT
KOTAKT
69#WISSENTEILEN
#7: © vasakna – fotilia.com#8: © vadymvdrobot – fotilia.com#27: © flickr.com/photos/28122162@N04/4968698797
#4, #5, #6, #10, #11. #23, #38. #41, #54: pixabay.com
Icons in this presentation designed by “Freepik”, “Nice and Serious” and“Elegant Themes” from www.flaticon.com
BILDNACHWEISE
#WISSENTEILEN