Mobile Applikationen für Smartphones und Tablets sind aus der Geschäftswelt nicht mehr wegzudenken:
Mitarbeiter und Geschäftspartner können mobil in Unternehmensprozesse eingebunden werden, Kunden mit mobilen Applikationen auf Daten und Dienstleistungen zugreifen. Oder Neukunden werden durch mobile Applikationen erst auf das Unternehmen aufmerksam.
Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für die Umsetzungsphase
1. Entwicklung, Roll-Out, Wartung:
Tipps & Tricks für die Umsetzungsphase
iks Thementag
„Mobile Applikationen – Es lebe die Vielfalt?!“
20.11.2012
Autor:
Paul Dziwoki
2. Ausgangssituation
Idee ist bereits ausgearbeitet
Plattform & Geräte ausgewählt
Mock-Up ist fertig
Zahlungsmodell steht fest
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 3 / 42
3. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 4 / 42
4. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 5 / 42
5. 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)
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 6 / 42
6. Klickprototyp Tool: Blueprint App (iOS)
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 7 / 42
7. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 8 / 42
8. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 9 / 42
9. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 10 / 42
10. Native Apps – Android
Java in Verbindung mit Eclipse
Alle Systeme auf denen Eclipse läuft
Kostenpflichtiger Google Play Account ($25 einmalig)
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 11 / 42
11. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 12 / 42
12. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 13 / 42
13. Open Source Komponenten – Qualität bewerten
Anzahl Forks (Abspaltungen)
Anzahl Empfehlungen (Stars)
Aktivität: Anzahl Commits
Aktualität: letzter Commit
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 14 / 42
14. Open Source – richtige Komponente finden
Android, WP, iOS:
– http://www.verious.com/
– http://www.developergarden.com/
iOS
– http://www.cocoacontrols.com
GitHub
– Forks beachten!
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 15 / 42
15. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 16 / 42
16. 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)
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 17 / 42
17. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 18 / 42
18. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 19 / 42
19. Fragmentierung – Android
Umfeld wird immer heterogener
Android 4 zu dem Zeitpunkt kaum vertreten
Alte Versionen noch sehr verbreitet
http://opensignalmaps.com/reports/fragmentation.php?
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 20 / 42
20. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 21 / 42
21. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 22 / 42
22. Distribution & Rollout
iOS Android WP Webapp
Internet
X X X
Intranet Enterprise- Enterprise-
X X
Programm Programm
App Store
X X X
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 23 / 42
23. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 24 / 42
24. App Store Distribution – Registrieren
App Store Unternehmensdaten und Abrechnungsdaten
Registrierung
hinterlegen
App im App Store
anlegen
Unklarheiten führen zu Verzögerungen
App signieren
– Handelsregisterprüfung
– Umlaute im Namen führen zu Problemen
Signierte App
hochladen
Benutzerverwaltung
Freigabe +
Reviewprozess
– Normale Nutzer / Admin: Entwickler,
Marketing, Einkauf, Verkauf
App im Store
– Agent: kann App im Store freigeben
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 25 / 42
25. App Store Distribution – App anlegen im Portal
App Store
Registrierung Applikationsbeschreibung
Screenshots
App im App Store
anlegen
– In allen Sprachen hinterlegen!
Support-URL + Support Email Address
App signieren – z.B. Blog (Updates ankündigen) mit Forum
– Kontakt zum Kunden
Signierte App Kategorien (Erst- & Zweitkategorie)
hochladen
Suchwörter
Freigabe + Verfügbarkeitsdatum
Reviewprozess
– Im Einklang mit Backend Livestellung und evtl.
Marketingkampagnen
App im Store Veröffentlichungsraum (Länder)
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 26 / 42
26. App Store Distribution – App signieren
App Store
Registrierung
App im App Store App Store Anbieter stellt ein Distributions-
anlegen
Zertifikat zur Verfügung
App signieren App Signierung sorgt für Kopierschutz
Signierte App
hochladen
Freigabe +
Reviewprozess
App im Store
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 27 / 42
27. App Store Distribution – App hochladen
App Store
Registrierung
App im App Store
anlegen
App signieren
Upload über Webseite des App Stores (Google
Signierte App Play, etc.) oder direkt aus Entwicklungsumgebung
hochladen
(Apple App Store) heraus
Freigabe +
Reviewprozess
App im Store
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 28 / 42
28. App Store Distribution – Freigabe & Review
App Store
Registrierung
Allgemein:
App im App Store
anlegen
– Review: Überprüfung auf Einhaltung der
Richtlinien (bzgl. Dateisystem, GUI, APIs, etc.)
App signieren
Apple App Store & Windows Market Place
Signierte App – Review dauert ca. 5 Werktage
hochladen
Freigabe + Google Play, etc.
Reviewprozess
– Automatische Freigabe, sofortige Verfügbarkeit
App im Store
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 29 / 42
29. App Store Distribution – App ist online!
App Store
Registrierung Im Katalog gelistet + auffindbar über Keywords
App im App Store Downloadstatistiken einsehbar
anlegen
App signieren
Signierte App
hochladen
Freigabe +
Reviewprozess
App im Store
verfügbar
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 30 / 42
30. App Store Distribution - Zeitverlauf
App Store 2 Tage bis mehrere Wochen
Registrierung
Tipp: Rechtzeitig registrieren!
App im App Store
anlegen
App signieren Wenige Stunden bis mehrere Tage
Tipp: Rechtzeitig benötigte Informationen sammeln
Signierte App
hochladen
Freigabe +
Reviewprozess
Ca. 5 Werktage (wenn Review erfolgreich!)
App im Store
Google Play: sofort
verfügbar Tipp: Bei Risiko für Ablehnung mehr Zeit einplanen!
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 31 / 42
31. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 32 / 42
32. 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!
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 33 / 42
33. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 34 / 42
34. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 35 / 42
35. Agenda
Entwicklung:
– Prototyping
– Implementierung
– Tests
Distribution & Roll-Out
Wartung
Zusammenfassung
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 36 / 42
36. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 37 / 42
37. 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
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 38 / 42
38. Fazit III
Aufwand für Wartung einplanen
Über Updates neue Features liefern
Ständiges Überwachen der
Kommunikationskanäle
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 39 / 42
39. 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“
iks Thementag: Mobile Applikationen – Entwicklung, Roll-Out, Wartung: Tipps & Tricks für die Umsetzungsphase Seite 40 / 42