Dans un contexte où le mobile est devenu roi, la question de la qualité et la pérennité d'une application devient un véritable enjeu.
Nous ferons un point à date sur le marché, les technologies actuelles et présenterons une synthèse des meilleurs outils à votre disposition en 2015. Nous dresserons également un panorama utile sur les deux nouveaux OS d’Apple et Google (Swift et Kotlin).
Dans un deuxième temps, nous expliciterons la façon dont les entreprises doivent structurer leurs raisonnements et leur process dès lors qu’elles souhaitent adopter une stratégie mobile. Nous détaillerons les grandes étapes du cycle de vie d'une application, de la création à l'industrialisation, puis aborderons les solutions permettant de pérenniser vos applicatifs après leur sortie.
Nous évoquerons ainsi les avantages apportés par l'adoption des méthodes agiles.
XebiCon'18 - Ce que l'histoire du métro Parisien m'a enseigné sur la création...
Les bonnes pratiques du développement mobile - conférence Mobility for Business 2015
1. Les bonnes pratiques du
développement mobile
Salon MOBILITY FOR BUSINESS - 6 Octobre 2015 Nicolas THENOZ et Jean-Christophe PASTANT
2.
3. Comprendre
Le monde est mobile
Mobile First
Les Technologies mobiles
Les impacts sur le SI
Façonner
Agilité
Software Craftsmanship
Déployer
Faire (sur)vivre son application
Innover
Étendre le champ du mobile
Wearables
Le mobile, compagnon des objets connectés
Sommaire
9. ALLIANCE
Mobile First
Réaliser une application mobile n’est pas un
simple portage de l’existant
● Repenser l’interface utilisateur
● Ne mettre que les fonctionnalités clés
Mobile First
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
13. ALLIANCE
Sites web mobile
➔ C’est le choix du coût minimal
Coûts
Temps de développement
Disponible sur toutes les
plates-formes
Non disponible sur les
stores
Peu résilient
Interface moins fluide
Sites web mobile
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
14. ALLIANCE
Applications hybrides
➔ C’est le bon choix pour une application
simple
(envoi de formulaires par exemple)
Disponibles sur les stores
1 seul langage à gérer
Ratio Qualité / Coûts faible
Adaptations nécessaires en fonction des
plates-formes
Applications hybrides
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
15. ALLIANCE
Applications transcodées
➔ À ce jour, la technologie n’est pas
mûre
Interface adaptée au device
Accès à toutes les fonctionnalités du
terminal
Gestion des cas hors ligne
Pérennité : la technologie bouge
énormément
Développements spécifiques par plate-
forme nécessaires
Applications transcodées
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
16. ALLIANCE
Applications natives
➔ C’est le choix de la qualité optimale
Interface graphique avancée
Hautes performances
Accès à toutes les fonctionnalités
du téléphone
Disponible sur les stores
Utilisation hors-ligne possible
Coûts
Revoir le code pour tablette
Applications natives
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
17. ALLIANCE
Swift Technologies
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
Gestionnaires de
dépendance
IDE
Langages
Cocoapods Carthage Gradle
Xcode Android Studio
SwiftObjective-C KotlinJava
19. ALLIANCE Optimiser les échanges client / serveur
Les impacts sur le SI
Optimiser le format des données
Optimiser la quantité de données
à échanger
JSON XML
Les impacts sur le SI
Optimiser les échanges client / serveur6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
20. ALLIANCE Sécuriser les échanges client / serveur
Les impacts sur le SI
Sécuriser les sessions
● Connexions chiffrées (TLS)
● Authentification par token (OAuth)
Renforcer la robustesse des
validations des données côté
serveur
identifiant + password
token
token
données
token
données
Les impacts sur le SI
Sécuriser les échanges client / serveur6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
21. ALLIANCE
Gérer le multi-versioning
Anticiper les évolutions de services à
fort impact
2.1
2.2
2.2
Anticiper la gestion des mises à jour
Les impacts sur le SI
1.0
1.1
1.2
1.3
1.4
2.0
1.2
2.0
Les impacts sur le SI
Anticiper la gestion des mises à jour6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
24. ALLIANCE Software Development Done Right
Agilité
Un des fondements de l’Agile :
placer l’utilisateur au centre de la
création du produit
● Récupération régulière de feedbacks
● Accueil favorable des changements
● Partage quotidien entre les membres de l’
équipe
● Prédictibilité partagée
Agilité
Software Development Done Right6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
25. ALLIANCE
Mini lexique de l’agilité
Sprint Release Backlog Product
Owner
Mini lexique de l’Agilité
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
26. ALLIANCE Nos retours d’expérience
Comment réaliser un projet mobile en Agile ?
● Une équipe projet inspirée des Feature Teams
● Un backlog dédoublé
● Des sprints synchronisés
● Releases à géométrie variable
Comment réaliser un projet mobile en mode Agile
Nos retours d’expérience6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
28. ALLIANCE Le rôle de chacun
Tests unitaires et fonctionnels
Tests unitaires
● Tester le code applicatif
● Favoriser la collaboration entre développeurs
● Améliorer la productivité des développements
● Détecter les régressions pendant les phases de refactorisations
techniques
Tests fonctionnels
● Tester le code métier
● Favoriser la communication entre le client et l’équipe
développement
● Assurer une non-regression fonctionnelle
➔ Fournit des métriques de non régression
Tests unitaires et fonctionnels
Le rôle de chacun6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
30. ALLIANCE
DEVOPS : De la ligne de code à la mise en production
Les étapes du déploiement
Build du code
Exécution des tests
(unitaires, fonctionnels)
Analyse de la qualité du code
Analyse de la performance
applicative
Déploiement sur les
environnements de Dev
Mise à jour des stories dans
l’outil de tracking
Déploiement sur les
environnements de prod
1
2
3
4
5
6
7
Les étapes du déploiement
DevOps : de la ligne de code à la mise en production6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
31. ALLIANCE
DEVOPS : De la ligne de code à la mise en production
Les étapes du déploiement
Build du code
Exécution des tests
(unitaires, fonctionnels)
Analyse de la qualité du code
Analyse de la performance
applicative
Déploiement sur les
environnements de Dev
Mise à jour des stories dans
l’outil de tracking
Déploiement sur les
environnements de prod
1
2
3
4
5
6
7
Les étapes du déploiement
DevOps : de la ligne de code à la mise en production6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
32. ALLIANCE
Jenkins : Suivi builds par environnement
Sonar : Suivi qualité du code Android/iOS Spoon : Visualisation tests fonctionnels
Dashboard projet
“Dashboards” de suivi projet
Fabric : Suivi sessions & crash
Suivi du projet Suivi du projet
“Dashboards” de suivi projet6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
34. ALLIANCE
Page store, vitrine de votre application
● Screenshots clairs
● Texte simple (intro, bullet points, …)
● Commentaires
Utiliser les storesUtiliser les stores
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
35. ALLIANCE
Faire (sur)vivre son application
Mesurer la dette technique
Coût de correction de bug augmente avec le temps
Faire (sur)vivre son application
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
Valider vos hypothèses produit
A/B Tester
38. ALLIANCE
Extensions
Permet de partager du contenu entre applications, de manière transparente
Proposer des extensions si votre application a vocation à manipuler un
contenu utilisateur
Extensions
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
Édition photo Partage (photo, statut, …) Gestion de documents
39. ALLIANCE
App Indexing
Indexer votre application pour
permettre à l’utilisateur de
rechercher
Nouveau vecteur pour les téléchargements :
l’indexation est utilisé pour offrir des
recommandations
App Indexing
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
40. ALLIANCE
Univsersal linking
Support des url https
Le site web et l’application mobile ne font plus qu’un
À utiliser afin d’améliorer l’expérience utilisateur
Universal linking
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
42. ALLIANCE L’utilisateur physique
Wearables
Faire une application concise, avec peu de
fonctionnalités
Proposer des informations éphémères
● Prochain train
● Calories perdues
● Score du match de rugby
Se synchroniser avec le serveur plutôt qu’avec l’application
Optimiser ses webservices pour consommer le moins de bande
passante
Wearables
L’utilisateur physique6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
44. ALLIANCE
● Le mobile est le centre de contrôle des objets connectés
● Commodité : l’utilisateur a toujours son mobile sous la main
Le mobile, compagnon des objets connectésLe mobile, compagnon des objets connectés
6 OCTOBRE 2015 - MOBILITY FOR BUSINESS
La montre, premier objet connecté
notable, prolonge les fonctionnalités
du mobile.
Domotique : lampes, chauffage,
portes & serrures, ou même
commande de lessive via un bouton.
Automobile : musique, GPS, ...