Architecture mobile moderne

Slides:



Advertisements
Présentations similaires
Projet de fin d'étude pour l'obtention du Diplôme Nationale d'Ingénieur en Informatique Conception et développement des modules de GED pour l’ indexation.
Advertisements

GCstar Gestionnaire de collections personnelles Christian Jodar (Tian)
Page 1 La problématique du décideur La solution du « décisionnel » Les outils existants Mener un projet décisionnel Démo on line Sommaire.
Auteur : Patrice LEPISSIER Animation & Stimulation  L’animation des vendeurs –Les objectifs de l’animationLes objectifs de l’animation –Les méthodes d’animation.
1 UML: applications, études de cas ● Processus (Extreme Programming, Unified Process) ● Architectures ● Expression du besoin technique Conception Préliminaire.
L’intérêt de sauvegarder certaines données stockées localement sur les postes clients est souvent trop sous-estimée par nos utilisateurs. Casse matérielle,
A partir du 1er mars 2016 : 2 offres
ScoRify We are TOEFL Test for IT !
Windows NT/2000/XP Enjeux et contraintes techniques
Le long périple vers la culture Qualité
Outils (MailIntegration et autres)
Licence Informatique DEVELOPPEUR ANDROID
Micro Informatique au Cellier
Mise en place d’un système de partage de fichiers
Le CMS Joomla La mise en place du CMS est inscrite dans le dossier d’homologation Attente : avoir une plateforme commune de travail et de publication.
PPE : Gestion de parc informatique
Systèmes d’Information
RESEAUDENTREPRISE.COM Solution de communication d’entreprise et de vente en ligne.
CONSEILLER ET ACCOMPAGNER LES CHEFS D’ENTREPRISE AU QUOTIDIEN
Les P G I Les Progiciels de Gestion Intégrés
Socrative.
J’ai un bug, qu’est-ce que je peux faire ? Samuel Thibault 7 Mars 2017
SOMMAIRE 1: ORALE 2: Les 3 systèmes de gestion de base de donnés 3:ORACLE DATA BASE 4:MY SQL 5:Oppen Office.org Base 6:Concurrence Conclusion.
Clients riches RIA (Rich Internet Application) / RDA
Centralisation de logs
Batterie TSE.
Créez votre entreprise part 1
Développement d’une application Android destinée aux commerciaux
Réalisation d’une application web sous le thème: «Mon vétérinaire » par : Benzineb Asmaa et Meftahi Oualid Présentation à Université Saad Dahlab Blida.
Comment améliorer l’adoption des applicatifs internes ?
Présenter par : Ayari hela. plan 1. Architecture d’application android 2. Comparaison entre Android et iOs mobile 3. Les types des applications mobiles.
Développement d’un réseau social de collaboration destiné aux médecins radiologues Soutenance de projet de fin d’étude En vue de l’obtention du diplôme.
Août 2009.
LES SOURCES D’INFORMATIONS
Présentation initiale
PACK Security Audit/management
Programmation Android Introduction à Android
Hajri khalil Seyah mohamed Aziz El aid Oussama Mejri abir
Mise en œuvre d’une solution de portail
Circuit technique Forum du CEG 2017 Nicolas Joye Polyvalence Qualité
Gestion du patrimoine informatique
Modèles de représentation des systèmes d’information
Expose : Web Application Firewall.
Plan d'urbanisation Version / 02 / Nov Mai 2013 Passation des marchés Sommaire Une vision unifiée de l'urbanisation et de l'approche.
Outils et principes de base. Exemple d’application  Gestion de données d’enquête : Interface de saisie en ligne  insère directement les données dans.
Microsoft Office 365 Qu’est ce que c’est ?. 2 Introduction En quelques mots… Qu'est-ce que Office 365 ? Tout comme Google Apps, Office 365 est une suite.
Chapitre2: SGBD et Datawarehouse. On pourrait se demander pourquoi ne pas utiliser un SGBD pour réaliser cette structure d'informatique décisionnelle.
Aastra Marketing Self Service
Le Projet S’intègre dans S’inscrit dans la continuité
Application par la composition de micro-services
Exposé de système / réseaux IR3
FENIX Aperçu GLOBAL DU Système
Ecran 1 de 14 Techniques de collaboration et de plaidoyer Techniques pour améliorer le travail en collaboration Objectifs d’apprentissage Comprendre les.
Le Cycle SCrum SPRINT et release.
Niveau de confidentialité
Développement d’une application mobile. ► Classé a l’échelle national et mondial, L’ISG était parmi les meilleurs instituts en Tunisie :2009 par "Eduniversal.
Parcours partenaire & client
Terraform dans Azure Meetup 20/11/2018 DevCon #7 13/12/2018.
PLATE FORME DE GESTION ÉLECTRONIQUE DE DOCUMENTS Présenté par: Amine LARIBI.
ONE, le numérique pour l’école Enfin simple et intuitif !
iTop, la gestion de votre panne
DMP Comité opérationnel de déploiement Ille et Vilaine
Conception de sites web marchands: TD 2
Test de performances. Test de performances:  Un test de performance est un test dont l'objectif est de déterminer la performance d'un système informatique.
1 O ffice De La F ormation P rofessionnelle Et De La P romotion De T ravail I nstitut S pécialiste en T echnologie A ppliquée -ASSA Prof. : Omar BOUNHAS.
ATELIER DE FORMATION DES DIRECTEURS D’ÉCOLES SUR LA COLLECTE DES DONNÉES SUR AGCP ET AGCP_CL Présenté par M. KOUMAN ATTA ELIE EXPOSE DE RECADRAGE.
Présentation PISTE pour les partenaires raccordés en API
Votre réseau social éducatif spécialement pensé pour l’école : enfin une solution simple et intuitive ! Rentrée scolaire.
2.5. La réorientation des prospects Textes de référence Exigence de la norme AFNOR NF X §3.2 « c) Assurer un accueil physique et/ou téléphonique.
Business Intelligence en ACube OLAP et Reporting avec ACubeOLAP et GRaM.
Transcription de la présentation:

Architecture mobile moderne John Thiriet Mobility Technical Manager @Cellenza Microsoft MVP

Jeu-concours Twitter Un pack Surface Go à gagner* ! 1 2 3 1 Prenez une photo de la session à laquelle vous participez 2 Ajoutez #experienceslive et #experiences18 à votre tweet 3 Partagez ! 2 3 *Voir toutes les conditions dans le règlement lié au jeu concours Le tweet cumulant le plus de Retweets remporte la Surface Go (1 lot/jour) #experienceslive 

Nous devrions moins mettre l’accent sur la qualité de façon à pouvoir livrer plus de fonctionnalités lors de notre prochaine release Quelqu’un qui a changé de poste depuis

Quizz ! Que signifie « architecture » ?

Que signifie « architecture » ? Décisions qui doivent être prises en début de projet ? Décisions qu’on aurait aimé avoir prises en début de projet ? Tout ce qui est important, peu importe ce que c’est ? Décisions difficiles à changer plus tard ? Un peu tout ça en fait Décisions difficiles à changer ? (Par exemple langage de programmation ou Framework applicatif)

Le projet mobile idéal Ou comment chacun tire la couverture vers soi

L’application mobile idéale Du point de vue de l’utilisateur 1 1 Une application légère 2 Une application rapide 3 Une application stable 2 Une application intelligente 2 3 Intelligent signifie pro-active, qui me donne les informations les plus pertinentes au moment le plus pertinent 4

Le projet mobile idéal 1 2 3 4 Du point de vue du développeur 1 Facile à développer 2 Facile à maintenir 3 Facile à déployer 2 Facile à tester 2 3 Pas forcément les dernières nouveautés tout le temps mais c’est important 4

Le projet mobile idéal 1 2 3 4 Du point de vue du business 1 Satisfaction utilisateur 2 Bonnes métriques 3 Application sécurisée 2 Facilement scalable 2 3 Des utilisateurs qui reviennent souvent sur l’application Analytics poussé Un investissement contrôlé La possibilité de tester de se déployer sur de nouveaux marchés 4

Le projet mobile idéal Utilisateur Une application légère, rapide, stable et qui me comprend. Développeur Une application facile à créer, maintenir, deployer et tester. Business Mes utilisateurs sont satisfaits, je peux suivre la qualité de ce que je livre et réagir au mieux aux opportunités du marché.

On ne peut pas échanger la qualité pour le coût en informatique On a besoin de livrer souvent de nouvelles fonctionnalités ou des améliorations Ce qui est important ce n’est pas le nombre mais la qualité et la sécurité Le plus important c’est les utilisateurs, ils viennent de toute part (Browser, Mobile, IoT Devices) Ou alors vraiment pas longtemps

La qualité Une interface utilisateur agréable Qualité externe Peu de défauts Qualité externe Qualité interne Une bonne architecture modulaire

La qualité Une interface utilisateur agréable Peu de défauts Visible par les utilisateurs et les clients Visible par les développeurs et le business Une bonne architecture modulaire

Design Stamina Hypothesis https://martinfowler.com/bliki/DesignStaminaHypothesis.html

Une application mobile c’est quoi ? Pour remettre un peu de contexte à la qualité L’objectif est que l’ensemble fonctionne parfaitement

Comment architecturer son projet On a besoin de livrer souvent de nouvelles fonctionnalités ou des améliorations Ce qui est important ce n’est pas le nombre mais la qualité et la sécurité Ou l’histoire des trois petits cochons

L’architecture choisie dépend des objectifs Entre construire une maison et un immeuble il y a une différence. En informatique On utilise souvent des techniques de maçon classique pour construire des grattes-ciels Mais il faut toujours du béton  L’architecture dépend du besoin mais il y a toujours des lignes directrices et des tendences.

DevOps Ce béton c’est le DevOps Il y a des impondérables et il faut s’entourer d’outils DevOps En mobilité, le meilleur outils DevOps c’est AppCenter

AppCenter

Démo - AppCenter 11 minutes de démo Timing de début 12 minutes Timing de fin 23 minutes Commit/Push d’un code qui fix un clic sur un bouton Démonstration du build en cours Tour dans AppCenter (Organisation, Deploiement etc...) Push notifications depuis le portail Après update finie ouverture de l’application, popup de mise à jour et téléchargement d’update

AppCenter Construit, teste, déploie et suit vos applications pour chaque plateforme. Intégration continue Supporte GitHub, VSTS ou BitBucket Supporte les applications mobiles hybrides et natives Lance des tests UI automatisés Met à disposition l’application Monitoring Crash et error reporting Analytics et live events Exporter ces données où vous le souhaitez Push notifications Simplifie l’envoi de notifications push Supporte iOS, Android et Windows Fournit des APIs Analytics : Who? What? Where? When? Why? How? AppCenter répond aux problématiques : -

Un projet mobile utilisant AppCenter Du point de vue du business Du point de vue du développeur Du point de vue de l’utilisateur 1 1 1 1 Satisfaction utilisateur 2 Bonnes métriques 3 Application sécurisée 2 Facilement scalable 1 Facile à développer 2 Facile à maintenir 3 Facile à déployer 2 Facile à tester 1 Une application légère 2 Une application rapide 3 Une application stable 2 Une application intelligente 2 2 2 3 3 3 Des utilisateurs qui reviennent souvent sur l’application Analytics poussé Un investissement contrôlé La possibilité de tester de se déployer sur de nouveaux marchés 4 4 4

Le back-end Maintenant qu’on a parlé du process et du suivi de dev on va parler un peu de ce qui permet à une application de récupérer ses informations Comme vu précédemment, une application mobile c’est également un backend

Le back-end L’accès à des données distantes implique des choix techniques Localisation de mes utilisateurs Type de connexion utilisée Présence ou non d’un mode offline Niveau de sécurité Plus de lecture ou plus d’écriture Format de données #experiences18

Les certitudes Afin de proposer des applications performantes et sécurisées certains choix font consensus Communication JSON est le format d’échange privilégié Pour charger un écran il ne faut pas plus d’un appel réseau Plus le serveur est prêt de l’utilisateur, mieux c’est OpenID/OAuth (authentification et l’autorisation) Données Le mobile déporte sa logique métier au serveur. Le mode offline est compliqué à gérer Tout ce dont l’application n’a pas besoin ne doit pas être chargé Il n’y a pas que SQL pour stocker des données Chaque plateforme propose des facilités de stockage Une bonne application est Async et secure by design et ça nécessite un backend compatible JSON vs Protobuf etc... SSL is not enough mais la base Moins le mobile est intelligent, plus l’application est facile à mettre à jour Sécurité => Ce que je n’ai pas, tu ne peux pas me le voler

Les certitudes Afin de proposer des applications performantes et sécurisées certains choix font consensus Cloud On a de moins en moins besoin d’administrer des machines Avènement des microservices et du serverless Interconnexion entre systèmes facilitée API Management pour exposer à tous vos APIs existantes Sécurité La sécurité des données est au cœur des esprits SSL est un strict minimum Toute donnée non persistée sur le mobile est moins vulnérable Contraintes légales et géographiques Utiliser les fonctionnalités de chiffrement des plateformes Une bonne application est Async et secure by design et ça nécessite un backend compatible JSON vs Protobuf etc... SSL is not enough mais la base Moins le mobile est intelligent, plus l’application est facile à mettre à jour Sécurité => Ce que je n’ai pas, tu ne peux pas me le voler

Démo – Backend moderne 10 minutes de démo Timing de début 30 minutes Timing de fin 40 minutes Démo LogicApp (création d’une logic app, explication de la version finie) Démo Azure Function (voir le code dans VS2017) expliquer le concept etc...

API Management Api Management

Intelligence artificielle Cognitive Services dans le cloud Mais utiliser les fonctionnalités d’IA dans le mobile directement : - CoreML - TensorFlow

Le future des architectures pour le mobile Le temps où on déployait manuellement nos propres machines s’éloigne plus que jamais grâce à Azure Besoin d’un serveur ? Non, besoin d’API Voire juste de fonctions Utiliser Cosmos Db pour le stockage de données Besoin de tout réécrire ? API Management pour exposer toutes vos APIs de manière propre Logic Apps pour définir tous vos workflows Besoin d’intégrer de l’IA Azure propose tout ce qu’il faut pour démarrer Les plateformes mobiles elles-mêmes intégrent des capacités IA

Un projet mobile utilisant AppCenter et Azure Du point de vue du business Du point de vue du développeur Du point de vue de l’utilisateur 1 1 1 1 Satisfaction utilisateur 2 Bonnes métriques 3 Application sécurisée 2 Facilement scalable 1 Facile à développer 2 Facile à maintenir 3 Facile à déployer 2 Facile à tester 1 Une application légère 2 Une application rapide 3 Une application stable 2 Une application intelligente 2 2 2 3 3 3 On a coché pas mal de cases, il ne vous reste qu’à coder l’app 4 4 4

Quelle techno mobile ? Xamarin

Notez maintenant cette session Rendez-vous sur la fiche de la session sur http://experiences18.microsoft.fr Cliquez sur le bouton « Evaluer » #experienceslive 

Merci. @johnthiriet