Download - Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für die Umsetzungsphase
iks Thementag
„Mobile Applikationen – Es lebe die Vielfalt?!“
20.11.2012
Entwicklung, Roll-Out, Wartung:
Tipps & Tricks für die Umsetzungsphase
Autor:
Paul Dziwoki
Seite 3 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Ausgangssituation
Idee ist bereits ausgearbeitet
Plattform & Geräte ausgewählt
Mock-Up ist fertig
Zahlungsmodell steht fest
Seite 4 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 5 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 6 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Prototyping
Klickprototyp mit Dummydaten
Gründe für Prototyping
– Akzeptanz schaffen bei Budgetverantwortlichen
– Entwurf optimieren
– Neuartiges Userinterface testen
– Backend testen
Quelltext des Prototyps wird größtenteils weiter verwendet!
Einfache Klickprototypen können ohne Programmierkenntnisse
erstellt werden mit:
– Blueprint (iOS)
– iPlotz (Android & iOS)
– Storyboard (Teil der Entwicklungsumgebung Xcode) (iOS)
Seite 7 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Klickprototyp Tool: Blueprint App (iOS)
Seite 8 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 9 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Native Apps - Einarbeitung
Voraussetzung: OO-Hochsprache
Einarbeitungsaufwand:
– Hält sich bei den unterschiedlichen Systemen
die Waage
Selbst bei Sprachkenntnis ist immer noch
Einarbeitung in die unterschiedlichen
Frameworks + Best Practices notwendig
Sehr umfangreiche Dokumentation vorhanden,
Durcharbeiten empfohlen
Seite 10 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Native Apps – iOS
Objective-C in Verbindung mit
– XCode (kostenfrei)
• Beinhaltet Interface Builder / Storyboard
– JetBrains AppCode (175 €)
Mac OS X 10.7+
Kostenpflichtiger Apple Developer Account ($99 p. a.)
– Tipp: Gebühr rechtzeitig zahlen, sonst fliegt App aus dem Store!
Zugang zu Beta-Firmware und Dokumentation
Seite 11 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Native Apps – Android
Java in Verbindung mit Eclipse
Alle Systeme auf denen Eclipse läuft
Kostenpflichtiger Google Play Account ($25 einmalig)
Seite 12 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Native Apps – WP8 & weitere Plattformen
Windows Phone 8.0
– .NET in Verbindung mit Windows Phone Developer Tools
– Windows 7 / Windows 8
– Kostenpflichtiger Entwicklerzugang ($99 p. a.)
Weitere Plattformen:
– RIM Blackberry OS
– Amazon (angepasstes Android ICS)
– Mozilla Firefox OS
– Symbian
– Web OS
– MeeGo
Seite 13 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Das Rad nicht neu erfinden
Frameworks/Komponenten der
Betriebssysteme nutzen
– Datenstruktur / ORM
– GestureRecognizer (PinchToZoom,
Drag&Drop, ...)
– Umfangreiche GUI-Bibliothek (Buttons,
TableView, WebView, ...)
– Große Open Source Community (Github,
Google Code, ...)
• Barcode-/QR-Scanner
• PDF-Reader
Seite 14 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Open Source Komponenten – Qualität bewerten
Anzahl Forks (Abspaltungen)
Anzahl Empfehlungen (Stars)
Aktivität: Anzahl Commits
Aktualität: letzter Commit
Seite 15 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Open Source – richtige Komponente finden
Android, WP, iOS:
– http://www.verious.com/
– http://www.developergarden.com/
iOS
– http://www.cocoacontrols.com
GitHub
– Forks beachten!
Seite 16 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 17 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Test (1)
Tools der Entwicklungsumgebungen
– Simulator / Emulator
• Android: sehr langsam, da Emulator
• iOS: Druckersimulator (Airprint)
• iOS: GPS-Positionen und Routen simulieren
• iOS: SlowMotion um Animationen zu prüfen
– Debugger
– Unit Testing
– Performance Tools
• Speicherlecks finden
• Batterieverbrauch / Ressourcenverbrauch / FPS messen
Darüber hinaus sind weitere Testframeworks verfügbar
– z.B. Monkeytalk (iOS&Android), Robotium (Android)
Seite 18 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Test (2)
Wann soll mit dem Testen begonnen werden?
– Idealerweise bereits parallel zur Implementierungsphase
– Frühzeitiges Finden von Ressourcenproblemen
Test im Simulator keinesfalls ausreichend
– Touch-Oberflächen lassen sich am besten auf einem Touchscreen
testen, nicht mit Tastatur und Maus
– Insbesondere gestenbasierte Steuerungen auf dem Gerät testen
– Speicher- & Prozessorauslastung
– Usabilitytests mit Anwendern
Herausforderung hierbei: Fragmentierung
Seite 19 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fragmentierung – Herausforderung
Android: viele unterschiedliche Geräte und OS Versionen
– Unklarheit ob der Benutzer das entsprechende OS Update erhält
• Hersteller trifft die Entscheidung
– Hardwareausprägungen
• Bildschirmauflösung
• Physikalische Tastatur
• Kamera
• Prozessor, RAM
iOS und Windows Phone aufgrund von Regeln weniger betroffen
Seite 20 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fragmentierung – Android
Umfeld wird immer heterogener
Android 4 zu dem Zeitpunkt kaum vertreten
Alte Versionen noch sehr verbreitet
http://opensignalmaps.com/reports/fragmentation.php?
Seite 21 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fragmentierung – Lösung
Testgeräte entsprechend der Vorbedingungen bereitstellen
– Hardwareausprägungen + OS Versionen abdecken
– 100% Testabdeckung bei Android nicht möglich
Nicht nur der Dienstleister sollte testen, auch der Auftraggeber
– Tipp: Möglichst viele zum Testen mobilisieren, nicht nur
Entwickler!
OTA-Distribution nicht ungeschützt online stellen
Seite 22 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 23 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Distribution & Rollout
iOS Android WP Webapp
Internet X X X
Intranet Enterprise-
Programm X
Enterprise-
Programm X
App Store X X X
Seite 24 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Distribution & Rollout - Unterschiede
Internet / Intranet
– Distribution & Zahlungsabwicklung muss selbst abgewickelt werden
App Store
– Distribution & Zahlungsabwicklung durch den App Store Betreiber
– Suchfunktion: App wird schnell gefunden
– Nutzer erhalten automatisch Informationen über Updates
– Kopierschutz
– „Review“-Prozess
Seite 25 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – Registrieren
App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Unternehmensdaten und Abrechnungsdaten
hinterlegen
Unklarheiten führen zu Verzögerungen
– Handelsregisterprüfung
– Umlaute im Namen führen zu Problemen
Benutzerverwaltung
– Normale Nutzer / Admin: Entwickler,
Marketing, Einkauf, Verkauf
– Agent: kann App im Store freigeben
Seite 26 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – App anlegen im Portal
Applikationsbeschreibung
Screenshots
– In allen Sprachen hinterlegen!
Support-URL + Support Email Address
– z.B. Blog (Updates ankündigen) mit Forum
– Kontakt zum Kunden
Kategorien (Erst- & Zweitkategorie)
Suchwörter
Verfügbarkeitsdatum
– Im Einklang mit Backend Livestellung und evtl.
Marketingkampagnen
Veröffentlichungsraum (Länder) App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Seite 27 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – App signieren
App Store Anbieter stellt ein Distributions-
Zertifikat zur Verfügung
App Signierung sorgt für Kopierschutz
App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Seite 28 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – App hochladen
Upload über Webseite des App Stores (Google
Play, etc.) oder direkt aus Entwicklungsumgebung
(Apple App Store) heraus
App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Seite 29 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – Freigabe & Review
Allgemein:
– Review: Überprüfung auf Einhaltung der
Richtlinien (bzgl. Dateisystem, GUI, APIs, etc.)
Apple App Store & Windows Market Place
– Review dauert ca. 5 Werktage
Google Play, etc.
– Automatische Freigabe, sofortige Verfügbarkeit
App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Seite 30 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution – App ist online!
App im Store verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung Im Katalog gelistet + auffindbar über Keywords
Downloadstatistiken einsehbar
Seite 31 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
App Store Distribution - Zeitverlauf
Wenige Stunden bis mehrere Tage
Tipp: Rechtzeitig benötigte Informationen sammeln
2 Tage bis mehrere Wochen
Tipp: Rechtzeitig registrieren!
Ca. 5 Werktage (wenn Review erfolgreich!)
Google Play: sofort
Tipp: Bei Risiko für Ablehnung mehr Zeit einplanen! App im Store
verfügbar
Freigabe + Reviewprozess
Signierte App hochladen
App signieren
App im App Store anlegen
App Store Registrierung
Seite 32 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 33 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Wartung - Allgemeines
Neue Betriebssysteme + neue Geräte
Open Source kann bei Wartung
vorteilhaft sein
Sonderfall Web-Applikation
– Wartung wie bei jeder
Client-Server-Entwicklung
Tipp: Updates mit neuen Funktionen nachreichen!
Seite 34 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Wartung – Intranet
Mitarbeiter geben in der Regel schnell Feedback
Kontrollierte Bedingungen durch Vorgabe bzw. bekannt
sein der Hardware
Auslesen des Gerätes, auf dem der Fehler aufgetreten ist,
ist grundsätzlich möglich
Schnelles Beheben von Fehlern durch Update in
Eigenverantwortung
Seite 35 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Wartung – App Store / App aus dem Internet
Benutzer melden Fehler / Feature-Wünsche:
– App Store Bewertung
– Besser: Supportseite
– Idealfall: In-App-Bewertung
Direkter Kontakt zum Kunden geht verloren
Problem des Herausfindens der
Fehlerursache
Verzögerung der Behebung durch Review-Prozess
Seite 36 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
Seite 37 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fazit I
Protoyping
– Sollte möglichst gründlich durchgeführt werden
– Späte Änderungen wirken sich mit hohem Aufwand in der
Implementierungsphase aus
Implementierung
– Die einzelnen Entwicklungsumgebungen sind sehr ausgereift
– Frameworks und Open Source Komponenten nehmen einem
viel Arbeit ab
Tests
– Kann sehr umfangreich werden (Plattformabhängig)
– Betriebssystemversionen & Geräte definieren: Test- &
Implementierungsaufwand senken
Seite 38 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fazit II
Verschiedene Distributionskanäle möglich
– Für jede App einzeln abwägen, welcher Weg der Richtige ist
Vertrieb durch App Store hat Vorteile...
– Keine eigene Infrastruktur nötig
– Keine eigene Abrechnung
– Rudimentäre Bekanntmachung
... aber auch Nachteile
– Keine vollständige Kontrolle über den Prozess
– Review-Prozess
Seite 39 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Fazit III
Aufwand für Wartung einplanen
Über Updates neue Features liefern
Ständiges Überwachen der
Kommunikationskanäle
Seite 40 / 42 iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase
Weiterführende Literatur
Apple
http://developer.apple.com
Google Android
http://developer.android.com/
Windows Phone
http://msdn.microsoft.com/de-de/windowsphone/
Kevin Mullet & Darrell Sano, „Designing Visual Interfaces“
Dave Mark, „Beginning iPhone 4 Development“
Fragen?
www.iks-gmbh.com