Comparaison entre IBM Worklight et les plateformes mobiles «do-it-yourself»



Documents pareils
Point sur les solutions de développement d apps pour les périphériques mobiles

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Tirez plus vite profit du cloud computing avec IBM

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

Android 4 Les fondamentaux du développement d'applications Java

Optimiser pour les appareils mobiles

Environnements de développement (intégrés)

IBM Rational Application Developer pour WebSphere Software V8.5 accélère le développement d'applications de haute qualité.

IBM Business Process Manager

Modernisation et développement d applications IBM i Stratégies, technologies et outils

4D Web 2.0 Pack DATA LIVES HERE. TM. Internet Riche et Solutions Mobiles en toute simplicité. 4D Ajax Framework 4D Ajax for Dreamweaver 4D for Flex

DEVELOPPEMENT MOBILE - ETAT DE L ART DES SOLUTIONS

Installation et prise en main

LA MOBILITE : ACTEURS, OUTILS,

Le nouvel espace de travail : Prise en charge du modèle BYOD («Bring your own device»)

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Java pour le Web. Cours Java - F. Michel

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Configuration matérielle et logicielle requise et prérequis de formation pour le SYGADE 6

Introduction à. Oracle Application Express

APPLICATIONS MOBILES Catalogue de services Econocom-Osiatis

Utilisation de Jakarta Tomcat

RSA ADAPTIVE AUTHENTICATION

Financial Insurance Management Corp.

Système de stockage IBM XIV Storage System Description technique

Urbanisme du Système d Information et EAI

FileMaker Server 12. publication Web personnalisée avec XML

Chapitre 1 Retour en arrière

Introduction au développement SharePoint. Version 1.0

Iphone vs. Android. Mardi 17 Novembre 2009 Paris, la Défense. Xavier PARADON, Directeur Technique Valtech Training

Livre Blanc WebSphere Transcoding Publisher

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

Guide d utilisation. Version 1.1

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

IBM Endpoint Manager for Mobile Devices

Compte Rendu d intégration d application

Suite Jedox La Business-Driven Intelligence avec Jedox

arcopole Studio Version 3.3

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

Optimisez vos processus informatiques, maximisez le taux de rendement de vos actifs et améliorez les niveaux de service

FileMaker Server 14. Guide de démarrage

Solution de Mobilité SAP SUP & AFARIA. Meltz Jérôme

emuseum PUBLIEZ VOS COLLECTIONS SUR INTERNET Pourquoi choisir emuseum? Intégration facile avec TMS Puissante fonction de recherche

Bases Java - Eclipse / Netbeans

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

30 ans d ingénierie, 23 ans de conseil en architecture de SI

Logiciels Open Sources et le Secteur Privé

Simplifier l intégration des logiciels SaaS (Software as a Service)

workshop javascript crm

Garantir la sécurité de vos solutions de BI mobile

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Avanade et Xamarin : la voie rapide vers la réussite mobile.

Silk Portfolio : Une démarche allégée pour les tests, le développement et la gestion de vos applications

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février Exposé Système et Réseaux : ApEx, Application Express d Oracle

IBM DB2 Alphablox. d administration GC

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Catalogue des Formations Techniques

IBM Tivoli Compliance Insight Manager

Projet de développement

Joomla! Création et administration d'un site web - Version numérique

App vs. WebApp Best Of Mobile 5 avril 2012

Hébergement de sites Web

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É PHP. 27 ans - 6 ans d'expérience

Quick Start Installation de MDweb version 2.3

1 JBoss Entreprise Middleware

de logiciels Web 2.0, SaaS Logiciels collaboratifs Portails pour entreprises Développement iphone, Android WebApp HTML5 Mobile marketing

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Programmation Web. Madalina Croitoru IUT Montpellier

IBM Software Big Data. Plateforme IBM Big Data

Fonctions. Solution professionnelle pour le stockage de données, la synchronisation multi- plateformes et la collaboration

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

Famille IBM WebSphere Application Server

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Configuration système requise

DotNet. Plan. Les outils de développement

Jean-Philippe VIOLET Solutions Architect

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Atelier WEB20 : IBM WebSphere CAST IRON

JACi400 Développement JACi400 Déploiement

Offres de stages 2011/2012

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

IBM Maximo Asset Management for IT

IBM Social Media Analytics

CAST IRON. Une plateforme d intégration complète pour connecter l Entreprise avec le Cloud. Magali Boulet IT Specialist magali.boulet@fr.ibm.

Environnement Zebra Link-OS version 2.0

TD/TP 1 Introduction au SDK d Android

CQP Développeur Nouvelles Technologies (DNT)

Stratégie IBM de Mobilité d'entreprise

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Qu'est-ce que le BPM?

Approches innovantes vers le Cloud, la Mobilité et les outils sociaux de formation

Optimisation des niveaux de service dans le cadre de déploiements de Clouds publics

Projet de Java Enterprise Edition

Vue d ensemble technique

Transcription:

Comparaison entre IBM Worklight et les plateformes mobiles «do-it-yourself» Sommaire 2 Synthèse 8 Similitudes entre les deux options 9 Avantages de la solution IBM Worklight 11 Conclusions 11 Annexe Ce document propose une comparaison du module complémentaire de Worklight Developer Edition par rapport aux options «do-it-yourself» non prises en charge. Les outils abordés concernent le développement d applications mobiles web, hybrides et natives. IBM Competitive Project Office comparait IBM Worklight Developer Edition 6.1 à une option basée sur un environnement de développement intégré (IDE) Eclipse, un kit de développement logiciel (SDK) Android et des structures connues, telles que jquery, Jersey (pour les services REST), Apache Cordova, entre autres. Les solutions présentent certaines similitudes. Les solutions Worklight et «do-it-yourself» sont toutes téléchargeables et utilisables gratuitement, reposent sur des composants Open Source, permettent la création de différents types d applications mobiles sur diverses plateformes cibles, et peuvent déployer et déboguer des applications sur des émulateurs de plateformes. Toute ressemblance s arrête cependant là. IBM Worklight propose de nombreux avantages que n offrent pas les options «do-it-yourself», dont : Installation et configuration. Worklight propose une documentation approfondie et centralisée pour l installation et la configuration des divers composants de la solution. Conception et développement. Les caractéristiques de conception et de développement de Worklight sont plus productives. Les commandes d interface utilisateur les plus courantes sont accessibles depuis les assistants, éditeurs visuels d interface utilisateur, cadres d interface utilisateur pré-conditionnés et l interface de programmation d applications (API) JavaScript. Vous pouvez également ajouter des plateformes «à la volée» (tout en continuant la promotion de la réutilisation des codes).

Connectivité back-end. Worklight permet une recherche plus aisée des services back-end. Worklight facilite la création et le test d adaptateurs vers des sources et destinations de communications intermédiaires front-end et back-end. Déploiement en environnements de développement. Les capacités de Worklight permettent un déploiement d applications et d adaptateurs mobiles dans des environnements de serveurs de développement embarqués (à l aide d IBM Worklight Console). Les développeurs peuvent rapidement procéder au déploiement de l application à des fins de test, et ce avant même de rendre la version disponible pour le déploiement et le test dans les environnements d assurance-qualité et de production. Tests et Debugging. Les caractéristiques de test et de debugging de Worklight vous permettent d utiliser le simulateur de navigateur mobile, des émulateurs SDK et des appareils réels. Le simulateur de navigateur mobile vous servira à tester une application plus rapidement et de manière plus efficace qu à l aide des émulateurs plutôt lents ou qu en acquérant à prix fort et en entretenant de nombreux appareils réels. Worklight dispose également d un composant optionnel et gratuit intitulé le Mobile Test Workbench. Il vous servira à procéder à des tests fonctionnels automatiques d applications mobiles sur des émulateurs ou appareils réels. Synthèse Prenez le temps de vous plonger dans les composants de projet qui vous intéressent, et découvrez les similitudes et différences entre une option «do-it-yourself» (DIY) de développement mobile non prise en charge et les composants de la solution IBM Worklight. Il est important de procéder à cette comparaison, car la décision de procéder à un développement mobile DIY a des conséquences immédiates pour votre organisation informatique : savoir de quels composants vous avez besoin, puis assurer leur installation, configuration, intégration et maintenance. Bien que IBM Worklight Developer Edition repose sur les mêmes composants Open Source réputés qu une solution DIY, tout ce dont vous avez besoin est pré-conditionné avec l installation de Worklight ou bien documenté et référencé pour être facilement téléchargé, installé et configuré. De plus, Worklight élargit ces capacités centrales Open Source afin d offrir une plateforme de développement et de fourniture d application mobiles d entreprise supérieure. Prêt à l emploi, Worklight Developer Edition (module complémentaire d IDE Eclipse) inclut Worklight Studio et la solution WebSphere Application Server Liberty Profile Edition. Ces deux composants proposent des capacités que l on ne retrouve pas dans l option DIY au niveau de la conception, du développement, du déploiement, du debugging et du test des applications mobiles (tel qu indiqué dans la section Avantages de la solution Worklight du présent document). Composants de la solution Examinons les principaux blocs modulaires de chaque solution avant d étudier en détail leurs différents composants. La Figure 1 présente les principaux blocs modulaires de la solution DIY, que sont l IDE Eclipse, le SDK Android et des outils de développement, un serveur Tomcat pour héberger les services back-end et une bibliothèque REST afin d accéder au service back-end. La Figure 2 présente les principaux blocs modulaires de la solution Worklight, que sont Worklight Studio et Android SDK pour le développement, une bibliothèque d exécution sur appareil, le moteur d exécution du serveur Worklight (qui utilise, entre autres, WAS Liberty Profile pour lancer les adaptateurs responsables de la connexion avec les services backend) et le serveur Tomcat pour l hébergement des services back-end. 2

SDK ECLIPSE + ANDROID Code d'application IBM Worklight Developer Edition 6.1 est une version légère, simplifiée et gratuite de la solution IBM Worklight Enterprise Edition. Cette version contient le même code et la plupart des composants de la version entreprise de Worklight, ainsi qu un accès au support technique IBM de niveau exceptionnel dans le monde entier. Remarque : Les autres versions de la gamme Worklight sont : IBM Worklight Consumer Edition et IBM Worklight Enterprise Edition. Bibliothèque REST Service back-end Tomcat L équipe du IBM Competitive Project Office a comparé la solution Worklight Developer Edition v6.1 à une option DIY qui repose sur Eclipse, SDK Android et d autres composants recherchés. Les deux environnements que l équipe d IBM a comparés disposent des éléments suivants : Figure 1 : Principaux blocs de la solution DIY Métadonnées Derby Worklight Studio + Android SDK Worklight Server Adaptateurs WebSphere Application Server Liberty Profile Moteur d exécution sur appareil Figure 2 : Principaux blocs de la solution IBM Worklight Code d'application Service back-end Tomcat Eclipse Juno v4.2 Module complémentaire Android Development Toolkit (ADT) pour Eclipse v22.3.0 Android SDK v22.3 JDK 1.7.0_45 et JRE7 Apache Tomcat 7.0.47 Jersey 1.17.1 (implémentation des caractéristiques JAX-RS ou JSR 311) Bibliothèque JQuery Mobile 1.3.2 PhoneGap 2.9.0 Worklight Developer Edition est installé en tant que module complémentaire de l IDE Eclipse. L environnement de développement est IBM Worklight Studio. Worklight Studio élargit l offre d outils de base d Eclipse à l aide de diverses caractéristiques fournies par le module complémentaire, et Worklight Studio s intègre aux divers SDK des appareils pris en charge. Entre autres caractéristiques, Worklight est fourni avec un serveur de développement embarqué (IBM WebSphere Application Server Liberty Profile) pour le déploiement d applications et d adaptateurs. Seul le noyau JQuery fait partie de l installation de Worklight Studio - JQuery Mobile devra être téléchargé et installé séparément. Les outils Dojo Mobile peuvent également être installés, mais n entrent pas dans le cadre de la présente étude. 3

Le cadre Cordova est disponible avec l installation Worklight. PhoneGap était utilisé dans la solution DIY, mais Cordova et PhoneGap disposent de contenus similaires. Cordova est un projet Open Source de l organisation Apache. PhoneGap est une distribution de Cordova fournie par Adobe. Types d applications mobiles Dans le cadre de cette recherche, l équipe d IBM a créé des exemples d applications mobiles pour expérimenter et comparer chacune de ces solutions du point de vue du développement. Vous trouverez, ci-après, une définition des principaux types d applications mobiles. Applications web mobiles Il s agit, en général, de sites web qui ressemblent fortement à des applications mobiles. Les applications web mobiles peuvent être conçues en HTML5 comme des applications à page unique, et simuler le déplacement d une page à l autre à l aide d ancrages. Ces applications fonctionnent dans un navigateur de l appareil, mais il se peut qu il n y ait aucune barre, ni bouton de navigateur, et il devient alors difficile de les distinguer d une application hybride ou native. Les utilisateurs accèdent à l application en navigant vers une URL et peuvent ajouter un signet à cette page sur le navigateur de leur appareil. Avantages : Elles ressemblent à des applications natives mais leur développement coûte moins cher. Les utilisateurs profitent instantanément des modifications déployées. Elles sont une solution multi-plateforme plus abordable, évolutive et puissante que les applications natives. Inconvénients : Elles ne donnent accès qu à des fonctions de base de l appareil, tels que les fichiers d emplacement ou média. Les navigateurs mobiles peuvent prendre plus d espace sur l écran. Ces types d applications mobiles n entrent pas dans le cadre de la présente étude, puisque leur développement est différent de celui de toute application web. Applications hybrides En deux mots, les applications hybrides sont un mélange d applications natives et web. Tout comme les applications natives, les applications hybrides peuvent s appuyer sur plusieurs des caractéristiques disponibles de l appareil. Les applications sont téléchargeables depuis un magasin d applications. Et tout comme les applications web, les applications hybrides sont conçues à l aide de technologies web, telles que le HTML, JavaScript et CSS. L application est proposée dans un navigateur embarqué sur l appareil ; il n y a ainsi aucune URL à saisir. Les responsables d entreprise décident de la conception d applications hybrides en tant qu encapsuleurs pour une application web existante, et ce afin que les applications soient présentes dans un magasin d applications. Sans déployer trop d effort dans un nouveau développement de l application, une application hybride permet un développement multi-plateforme puisque le même code HTML peut être réutilisé sur différents systèmes d exploitation mobiles. Avantages : Une interface entre les fonctions et le matériel (géolocalisation, appareil photo, etc.) natifs de l appareil avec des caractéristiques avancées Le HTML est disponible pour l affichage de pages sur des navigateurs mobiles. Inconvénients : Le processus du magasin d applications doit être suivi pour ce qui concerne l approbation, la qualité et la sécurité. Les utilisateurs doivent procéder manuellement au téléchargement, à l installation et à la maintenance. Application native Les applications natives sont disponibles dans un magasin d applications et sont à installer sur l appareil. Ces applications étant développées pour une plateforme spécifique, elles peuvent accéder à l ensemble des caractéristiques de l appareil, dont l appareil photo, les capteurs (GPS, accéléromètre et boussole inclus), la liste des contacts et bien plus. Des opérations sur l interface utilisateur peuvent également être incorporées à l application. Ces applications peuvent utiliser le système de notification de l appareil, et fonctionner hors ligne. 4

Avantages : Interface possible avec les fonctions et le matériel natifs de l appareil Plus rapides que les applications web mobiles Inconvénients : Le processus du magasin d applications doit être suivi pour ce qui concerne l approbation, la qualité et la sécurité. Les utilisateurs doivent procéder manuellement au téléchargement, à l installation et à la maintenance. Leur développement est coûteux et chronophage. Nécessitent un investissement coûteux à long terme du fait de la fragmentation (plusieurs langues et versions pour plusieurs systèmes d exploitation, par exemple). L approche Worklight Worklight prend en charge le développement des types d applications mobiles courants décrits précédemment, avec une différence au niveau des applications hybrides : Applications hybrides - web et Applications hybrides - mixtes. Avec les Applications hybrides - mixtes, il est possible de créer des applications qui utilisent un conteneur pour accéder aux capacités de l appareil, mais vous pouvez également utiliser d autres composants natifs spécifiques à la plateforme, tels que les librairies, ou des éléments spécifiques à l interface utilisateur afin d améliorer l application mobile. Les différents modèles de développement d applications mobiles pris en charge par Worklight sont présentés à la Figure 3 : Accès par navigateur Applications hybrides - web Applications hybrides - mixtes Applications natives Écrit en HTML5 JavaScript et CSS3. Développement rapide et abordable, mais moins puissant que le code natif. Code HTML5 et bibliothèques d exécution Worklight conditionnées dans l application et exécutées dans un shell natif. L utilisateur peut ajouter du code web au langage natif pour répondre à des besoins spécifiques et assurer une expérience utilisateur optimale. Spécifique à une plateforme. Nécessite une expertise particulière, processus coûteux et long à développer. Permet d assurer une meilleure expérience utilisateur. Navigateur mobile Shell natif Shell natif Application native Code web Code web web Natif API d appareil API d appareil API d appareil Accès par navigateur Téléchargeable Téléchargeable Téléchargeable Figure 3 : Modèles de développement d applications mobiles pris en charge par Worklight 5

Comment choisir lequel utiliser Il n y a pas de réponse toute faite. Les responsables de chaque entreprise doivent mettre les différents facteurs, tels que ceux présentés dans le Tableau 1, dans la balance, pour décider du type d application qui servira au mieux les intérêts de leurs opérations, leur public cible et leur expertise dans le domaine du développement. Aspect Développement Web Développement hybride Développement hybride mixte Formation aisée à l utilisation de la plateforme Développement natif Simple Moyenne Moyenne Difficile Performance de l application Lente Modérée Modérée Rapide Connaissances de l appareil requises Cycle de vie du développement (construire,tester,déployer) Portabilité de l application vers d autres plateformes Prise en charge de fonctionnalités natives de l appareil Diffusion avec mécanismes inclus Possibilité d écrire des extensions de capacités pour l appareil Aucune Partielle Relative Beaucoup Court Moyenne Moyenne Longue Importante Importante Moyenne Aucun Relative Majoritaire Tous Tous Non Oui Oui Oui Non Oui Oui Oui Tableau 1. Comparaison entre des solutions de développement mobile Scénario d un exemple d application Pour les besoins de l utilisation de Worklight et de l option DIY du point de vue du développement, l équipe d IBM a créé des exemples d applications mobiles pour une société fictive appelée JKE. L exemple d application offre un accès à des activités bancaires, telles qu une liste de transactions effectuées sur un compte et le solde du compte. L application permet également aux utilisateurs de localiser les organismes de charité les plus près et de faire don de dividendes de leurs comptes à l organisme de charité de leur choix. Deux versions de l application ont été créées pour chaque solution : une application hybride (à l aide de technologies telles que Cordova, JavaScript, HTML5 et CSS) et une application native (à l aide de Java, voulue pour une plateforme Android). Les exemples de l interface utilisateur de l application (sur un émulateur Android) sont présentées à la Figure 4. 6

Figure 4 : L application hybride de l entreprise (gauche) et l application native de l entreprise (droite) sur un émulateur Android L application communique avec un service REST back-end (JKE Service) qui authentifie l utilisateur et récupère les informations relatives au compte, telles que les transactions et le solde de chaque compte. Le service est déployé sur un serveur Tomcat dans tous les scénarios. Tomcat ne dispose cependant pas d une implémentation JAX-RS native pour prendre en charge les services REST, contrairement au WebSphere Application Server Liberty Profile. Pour que Tomcat puisse fonctionner à cette fin, les fichiers jar de bibliothèque Jersey ont été ajoutés manuellement dans le dossier d installation de Tomcat. Les fichiers jar Jersey auraient aussi pu être conditionnés avec le fichier war de JKE Service pour être déployés dans Tomcat. D un autre côté, WebSphere Application Server Liberty Profile peut héberger des services REST sans configuration supplémentaire. Dans l environnement Worklight, l utilisation de Tomcat aurait très bien pu être omise, et le JKE Service aurait pu être déployé directement dans le Liberty Profile sans nécessité d ajouter les fichiers de bibliothèque Jersey à la solution, puisque Liberty Profile prend en charge les services REST en natif. L équipe d IBM souhaitait néanmoins mettre en pratique un scénario avec des environnements hétérogènes, dans lesquels une entreprise pourrait avoir des services existants opérationnels et où la solution Worklight viendrait s ajouter à ce back-end à l aide d adaptateurs. Pour accéder au service back-end depuis le front-end, l équipe d IBM a utilisé plusieurs technologies différentes. Dans le scénario DIY, différentes technologies ont été utilisées : des appels Ajax JavaScript pour accéder au service depuis l application hybride et des appels HTTP Apache depuis l application native. Au contraire, la solution Worklight permet de créer un adaptateur pour le service back-end qui, dans ce cas, a été utilisé à la fois par l application hybride et la native. 7

Les applications natives peuvent également utiliser des adaptateurs pour accéder à des services back-end. L équipe d IBM a utilisé Worklight pour créer et déployer des adaptateurs à l aide du projet Worklight Library API. Cette API offre l interface qui permet aux applications natives d appeler les procédures d adaptateurs (initialement écrites en JavaScript) depuis le code (Java) natif. L équipe d IBM a créé deux projets Worklight distincts : un pour les adaptateurs et l autre pour l application native. Pour les applications hybrides, puisque le code de l adaptateur et le code de l application reposent tous deux sur JavaScript, les adaptateurs et le code de l application peuvent être dans le même projet Worklight. Dans cet exemple, l application native accède au service existant JKE exécuté sur Tomcat à l aide d un adaptateur Worklight exécuté sur un serveur WebSphere Application Server Liberty Profile. Le service de géolocalisation utilisé pour trouver les organismes de charité dépendait également des environnements. Pour les applications hybrides dans les deux environnements, l équipe d IBM a utilisé Cordova pour renvoyer les coordonnées qui localisent et dessinent les organismes de charité (marqueurs) sur la carte. Pour les applications natives, l équipe d IBM a utilisé l API de géolocalisation Android dans l environnement Open Source, et l API de géolocalisation Worklight dans l environnement Worklight. Similitudes entre les deux options De nombreuses similitudes entre les deux solutions ont été présentées dans les sections précédentes. Toutes deux sont téléchargeables et utilisables gratuitement (ne pas oublier que nous traitons ici de Worklight Developer Edition, la version allégée et simplifiée de Worklight Enterprise Edition). Les deux solutions reposent sur des composants Open Source communs et disponibles auprès de sources réputées, tel que cela a été expliqué à la section Composants de la solution ci-dessus. Nous avons vu à la section Exemple d application JKE ci-dessus que les deux solutions reposent sur des technologies semblables qui permettent la création d applications mobiles web, hybrides ou natives. Les deux solutions proposent des technologies d accès aux services back-end. Et toutes deux reposent sur les SDK spécifiques des plateformes (Android ou ios, par exemple), et incluent le développement d applications et le déploiement d émulateurs à des fins de debugging et de test. Le Tableau 2 présente un résumé des technologies utilisées pour chaque type d application, dans chaque environnement. Scénario DIY Worklight Application hybride Application native Application hybride Application native Technologies front-end HTML, JavaScript, CSS, Java HTML, JavaScript, CSS, Java JQuery Mobile JQuery Mobile Serveurs back-end Tomcat Tomcat Tomcat WebSphere Application Server Liberty Profile Tomcat WebSphere Application Server Liberty Profile Accès au service back- end JavaScript Ajax Apache HTTP API Adaptateur Worklight Adaptateur Worklight Géolocalisation Cordova API géolocalisation Android Cordova API géolocalisation Worklight Cartes et lieux Cartes API (Google) Cartes API (Android) Cartes API (Google) Cartes API (Android) Tableau 2. Technologies utilisées pour la création d exemples d applications mobiles 8

Avantages de la solution IBM Worklight Worklight Developer Edition offre de nombreux avantages par rapport à une solution DIY. Installation et configuration Avec la solution DIY, l utilisateur doit choisir les composants Open Source qui seront installés et configurés ensemble. L utilisateur de la solution DIY doit ainsi connaître les sources de téléchargement et comprendre la compatibilité entre différentes versions de composants, les références de la documentation, les didacticiels, les forums de discussion et plus encore. Avec Worklight, il vous suffit de télécharger et installer quelques composants pour préparer la configuration de l environnement. Cependant, le choix des composants à installer, leur ordre et où les trouver sont très clairement documentés. De plus, l installation du module complémentaire de Worklight dans une instance existante d Eclipse inclut les composants Worklight Studio et Worklight Server. Ces composants viennent ajouter des caractéristiques avancées de conception, développement et fourniture d applications mobiles. Le composant Worklight Server utilise WebSphere Application Server Liberty Profile pour développer les adaptateurs et applications. En savoir plus à propos de l installation et la configuration de Worklight Developer Edition. Conception et développement Worklight facilite la conception et le développement d applications mobiles plus productives en fournissant les capacités suivantes : L assistant de création de projet crée la structure initiale de l application, y compris la structure des composants d interface utilisateur et logiques, les adaptateurs back-end et assure le déploiement de l application sur le serveur Worklight. L aperçu de la conception, y compris l option WYSIWYG, et des éditeurs glisser-déposer sont des commandes incluses. Dans les applications web et hybrides, la solution Worklight prend en charge les commandes HTML et les widgets jquery Mobile et Dojo Mobile. Dans les applications natives Android, Worklight prend en charge les commandes d interface utilisateur Java. La boîte à outils Dojo et les outils embarqués qui peuvent être utilisés pour développer des applications web mobiles. JQuery encapsulé que vous pouvez ajouter au projet avec une seule ligne de code. JavaScript API permettant d invoquer les commandes d interface utilisateur communes, peu importe l environnement, et d afficher ces commandes automatiquement en natif pour chaque plateforme. Des skins qui permettent de fournir différentes structures dans un seul fichier exécutable pour les appareils d une même famille de système d exploitation. Un cadre permettant la traduction d applications dans d autres langues. Vous pouvez ainsi ajouter des environnements «à la volée». Attendez-vous à une séparation des codes entre les environnements pris en charge (ce qui incite à la réutilisation de codes). Cadre pour l optimisation de l environnement L architecture et les principes directeurs de la conception de l application sont écrits à l aide de technologies web (par ex. HTML, CSS et Java Script), et la logique et les principes directeurs de la conception sont communs à tous les environnements. L optimisation propre à un environnement donné peut être ajoutée au besoin. Le cadre Cordova est intégré dans tous les environnements mobiles. Le cadre Worklight utilise la bibliothèque Cordova. Worklight propose les API Cordova de manière à ce que les développeurs puissent accéder aux caractéristiques natives de l appareil par le biais de ces services. Vous avez ainsi la capacité d améliorer les applications hybrides avec une interface utilisateur native. Utilisez l API Worklight pour mélanger pages web et pages natives sur une même application (ou utilisez Cordova pour accéder aux caractéristiques natives depuis les applications hybrides). L API Java Script client de Worklight assure la passerelle vers les API de plateformes mobiles et permet un chargement dynamique de HTML et d autres éléments. Vous pouvez optimiser la performance de votre application mobile web avec la réduction et la concaténation (réduction du nombre de fichiers), ou via le cache d application HTML5. 9

Alors que la solution DIY offre des capacités de base pour le développement d applications mobiles, elle n offre pas aux développeurs le genre d expérience améliorée que leur offre Worklight, dont les éditeurs WYSIWYG, la réutilisation de codes et l ensemble des autres caractéristiques détaillées précédemment. Connectivité back-end Dans l option DIY, un développeur peut utiliser des cadres ouverts pour accéder aux services REST back-end, tels que JavaScript Ajax pour les applications web et hybrides, et l API Apache HTTP pour les applications natives. Cette situation nécessite différentes technologiques pour différents types d applications, et les développeurs doivent alors disposer d une vaste gamme de compétences. De plus, les appels au serveur back-end résident côté client, ce qui n est pas une architecture d application idéale. Pour éviter les problèmes de latence (lorsque le client attend que le serveur réponde à une requête), par exemple, un développeur doit s assurer de l implémentation d appels asynchrones, de la gestion d une indisponibilité de service, etc. Avec la solution Worklight, vous pouvez toujours utiliser des technologies ouvertes, telles que mentionnées précédemment, pour accéder aux services back-end, mais Worklight offre aussi la possibilité de créer des adaptateurs spécialement conçus pour cela. La création d adaptateurs dans Worklight peut également être entièrement automatisée pour les services SOAP (pointez vers le fichier WSDL de service et suivez les instructions de l assistant). Pour les autres types de back-end, tels que les services REST, vous devez toujours déclarer et implémenter les procédures afin d accéder aux opérations de services back-end, mais Worklight crée la structure des adaptateurs en tant que point de départ. Les adaptateurs sont définis dans JavaScript, mais ils peuvent également être invoqués par un code Java. Une même implémentation d adaptateur peut être utilisée par des applications web, hybrides et natives. Les adaptateurs offrent également comme avantage supplémentaire d agir en tant qu intermédiaires dans les communications entre le client et le service back-end. Les adaptateurs sont déployés dans le serveur Worklight inclus dans la solution (WebSphere Application Server Liberty Profile) ou tout autre serveur pris en charge (consultez la section du présent document intitulée Déploiement dans un environnement de développement). Autres avantages de l utilisation d adaptateurs, en comparaison avec les technologies ouvertes courantes : Recherche du service back-end (pour les services SOAP ou SAP). Adaptateur auto-généré comprenant des procédures qui reposent sur le fichier WSDL de service. Établissement de scripts côté serveur pour améliorer les capacités de l adaptateur (pré- et post-logique, traitement réalisé en une seule opération, mashups de différentes sources). Capacité à utiliser Java dans les adaptateurs (invoque le code Java depuis une procédure de l adaptateur, et invoque la procédure de l adaptateur depuis le code Java). API client Worklight native pour gérer l authentification et l accès au back-end, et pour profiter de davantage de fonctionnalités serveur. Capacité à utiliser un mécanisme de cache crypté pour stocker les données sensibles du côté client. Capacité des applications Android natives à communiquer avec un serveur Worklight à l aide de la bibliothèque API Worklight native. Déploiement dans un environnement de développement Worklight inclut un serveur de développement embarqué (WebSphere Application Server Liberty Profile) pour le déploiement d adaptateurs et d applications. Vous pouvez également déployer des adaptateurs dans le serveur Worklight et tester les procédures de l adaptateur avant d utiliser le code dans une application. 10

Il est possible de faire en sorte que le serveur Worklight utilise d autres serveurs, tels que Apache Tomcat, pour le déploiement d adaptateurs et d applications dans des environnements d assurance-qualité et de production. Cette option nécessite une configuration supplémentaire réalisée manuellement ou à l aide de scripts Ant. Pour les besoins de la présente étude, l équipe d IBM a utilisé le WebSphere Application Server Liberty Profile fourni. Dans la solution DIY, le déploiement peut être réalisé en déployant manuellement (installant) l application dans l émulateur de la plateforme à des fins de debugging et de test manuels. Une forme plus évolutive de déploiement, telle que le déploiement d application dans un magasin d applications privé, ne fait pas l objet de la présente étude. Il ne semble cependant pas y avoir de solution DIY pour cela. Il y a lieu de mentionner que les versions entreprise complètes de Worklight fournissent un composant pour cela : la plateforme Worklight Application Centre permet aux équipes de mettre en œuvre un magasin d applications d entreprise facilitant la diffusion et la gestion des applications mobiles en préversion ou dans des versions opérationnelles. Tests et Debugging Worklight fournit une API de debugging. Vous pouvez imprimer des messages dans le journal de messages de l environnement que vous utilisez. Les API sont multiplateforme, la destination de sortie est modifiée en fonction de la plateforme sur laquelle fonctionne l application. Worklight fournit un simulateur de navigateur mobile pour les applications de prévisualisation et de debugging. Worklight simule également les API Cordova. Cela vous permet d obtenir un aperçu de l application dans un navigateur, et non dans un simulateur, ce qui accélère d autant plus le chargement et l aperçu de l application. Worklight inclut également un composant optionnel dénommé Mobile Test Workbench. Ce composant vous permet d automatiser les tests fonctionnels des applications mobiles Android et ios incluses dans Worklight. La solution DIY ne dispose pas d une API de debugging. Un développeur devra utiliser les modalités habituelles de publication de messages dans la console ou sur l écran de l appareil pour déboguer une application. La solution DIY ne dispose pas non plus de simulateur de navigateur web, donc le debugging et les tests doivent être réalisés sur un émulateur de plateforme, qui est généralement plus lent que le simulateur de navigateur mobile, mais qui reste acceptable pour les tests manuels ou automatiques. La solution DIY ne propose cependant pas d outil de test fonctionnel à usage immédiat, contrairement à la solution Worklight. La solution DIY aurait besoin pour cela de l installation et de la configuration d un outil de test séparé, dont l intégration parfaite avec l environnement de développement intégré est garantie. Conclusions La présente étude a démontré à quel point la solution IBM Worklight Developer Edition est supérieure à une solution DIY, avec ses nombreuses caractéristiques utilisables immédiatement. Et gardez à l esprit que la solution IBM Worklight Developer Edition est disponible gracieusement. Et mieux encore, cette solution d IBM peut évoluer vers les versions complètes de déploiement d applications mobiles de Worklight pour entreprise. Testez-la par vous-même. Téléchargez Worklight Developer Edition dès aujourd hui. 11

Annexe Comparaison entre les caractéristiques de développement de IBM Worklight Developer Edition et celles d une option DIY (Android development entre dans le cadre de cette étude). Catégorie Caractéristique Sous-caractéristique Prend en charge la caractéristique (O/N) Plateformes cibles Téléphone Android O O Tablette Android O O Page web embarquée Application web mobile Standard Web O O Classement de catégorie 4 étoiles = avancée 1 étoile = basique Worklight DIY Worklight DIY O O O O Commentaire **** **** Les deux solutions doivent installer et configurer Android SDK (ou toute autre plateforme désirée prise en charge). Type d application (canal) Web O O HTML 5 O O HTML 5 page unique (SPA) O O HTML basique O O Mobile Web O O Hybride O O En natif O O Site Web (normal) O O Solution de shell/ O N application interne Utilise un conteneur pour l hybride O N **** *** Worklight prend en charge la solution de shell interne, qui aide à distinguer les compétences et responsabilités lors du développement d applications d entreprise. Prise en charge API native Android O O **** **** Repose sur les SDK installés Plateforme d outils Windows O O **** **** 12

Catégorie Caractéristique Sous-caractéristique Prend en charge la caractéristique (O/N) Mac OS X O O Linux O O Classement de catégorie 4 étoiles = avancée 1 étoile = basique Worklight DIY Worklight DIY Commentaire IDE **** ** Worklight augmente la productivité du développeur en prenant en charge plusieurs cibles dans un même projet et en facilitant la création de l interface utilisateur graphique. Niveau du O O développeur Repose sur Eclipse O O Émulateur de O O plateformes cibles Debugging intégré O O Projet unique pour O N plusieurs cibles Constructeur O N d interface utilisateur graphique glisser-déposer Peut utiliser O O Cordova (PhoneGap) Gestion de la O O Outil tiers qui s intègre à Eclipse version WYSIWYG complète O N DIY n a pas d éditeur visuel de glisser- déposer HTML (un aperçu est cependant possible). La solution propose néanmoins un éditeur visuel glisser- déposer pour les éléments d interface utilisateur Java (application native Android). Modèles OOTB O O DIY : cela dépend des modèles disponibles avec la plateforme SDK. Réutilisation de code O N Worklight permet d ajouter des plateformes à la volée et sépare mieux le code commun du code spécifique à la plateforme. Langages Java O O JavaScript O O **** **** 13

Catégorie Caractéristique Sous-caractéristique Prend en charge la caractéristique (O/N) Bibliothèques de scripts Classement de catégorie 4 étoiles = avancée 1 étoile = basique Worklight DIY Worklight DIY Commentaire **** *** DIY : nécessite d installer chaque bibliothèque ; Worklight : certaines bibliothèques sont pré- conditionnées avec l outil. jquery O O Inclus dans Worklight ; installation supplémentaire dans DIY Dojo Mobile O O Inclus dans Worklight ; installation supplémentaire dans DIY Sencha Touch O O Installation supplémentaire Comprenait des bibliothèques de plateformes écrites en JavaScript O N Worklight dispose d une bibliothèque JavaScript qui augmente la productivité et permet de créer plus facilement des applications indépendantes des plateformes. Cadres mobiles tiers **** *** JQuery Mobile O O Nécessite une installation supplémentaire Dojo Mobile O O Nécessite une installation supplémentaire Sencha Touch O O Nécessite une installation supplémentaire Node.js O O Nécessite une installation supplémentaire Cordova (PhoneGap) O O Cordova est pré- conditionné avec Worklight ; doit être installé séparément avec DIY Simulation **** * Worklight utilise un simulateur de navigateur mobile et un émulateur de plateforme dont le chargement est plus rapide et l utilisation plus aisée pour les tests des développeurs. Via un navigateur O N Reconnaissance O N de l appareil Simule Cordova O N Utilise un émulateur SDK d appareil O O 14

Catégorie Caractéristique Sous-caractéristique Prend en charge la caractéristique (O/N) Classement de catégorie 4 étoiles = avancée 1 étoile = basique Worklight DIY Worklight DIY Commentaire Connectivité back-end Adaptateurs/ connecteurs directs Création de service back-end sans code Simulateur de services back-end Prise en charge de SMS Intégration de middleware SAP O N HTTP O N JDBC O N Services web SOAP O N REST XML O N REST JSON O N JMS/MQ O N Base de données O N Cast Iron O N MQTT O N O N O N O N N IIB (WMB) O N MQ O N Cast Iron O N Intégration BPM O N **** * DIY dispose de bibliothèques tierces pour accéder aux services back- end, et l implémentation revient entièrement au développeur. Licence d essai ou de développement gratuite O O **** **** 15

Pour plus d informations Pour en savoir plus sur IBM Worklight Developer Edition 6.1, contactez votre représentant ou votre partenaire commercial IBM. Vous pouvez également consulter le site web suivant : ibm.com/developerworks/mobile/worklight/ De plus, IBM Global Financing (IGF) peut vous aider à acquérir les logiciels dont votre entreprise a besoin de façon plus rentable et stratégique. Nous nous associerons à des clients susceptibles de prétendre à un crédit pour personnaliser une solution de financement adaptée à votre entreprise et à vos objectifs de développement, mettrons en place une gestion efficace de la trésorerie et améliorerons votre coût total d acquisition. Financez vos investissements informatiques indispensables et propulsez votre entreprise vers l avenir grâce à IGF. Pour en savoir plus, consultez le site : ibm.com/financing/fr/ A propos de l auteur Ricardo Balduino Ricardo Balduino est ingénieur logiciel senior au sein d IBM Competitive Project Office. Il axe son travail sur les processus et outils du cycle de vie du développement complet des logiciels. Son objectif est d aider les décideurs d entreprise à adopter les outils et bonnes pratiques qui viennent soutenir un développement de logiciels à la fois supérieur et plus prévisible. IBM France 17 Avenue de l Europe 92275 Bois Colombes Cedex La page d accueil d IBM est accessible à l adresse suivante : ibm.com/fr IBM, le logo IBM, ibm.com, WebSphere et Worklight sont des marques ou des marques déposées d International Business Machines Corporation aux États-Unis et/ou dans d autres pays. L association d un symbole de marque déposée ( ou ) avec des termes protégés par IBM, lors de leur première apparition dans le document, indique qu il s agit, au moment de la publication de ces informations, de marques déposées ou de fait aux États-Unis. Ces marques peuvent également être des marques déposées ou de fait dans d autres pays. Une liste actualisée des marques déposées IBM est accessible sur le Web sous la mention «Copyright and trademark information» à l adresse ibm.com/legal/copytrade.shtml Java ainsi que tous les logos et marques mentionnant Java sont des marques ou des marques déposées d Oracle et/ou de ses filiales. Les autres noms de sociétés, de produits et de services peuvent être les marques ou marques de services de tiers. Ces informations concernent les produits et services commercialisés par IBM France et n impliquent aucunement l intention d IBM de les commercialiser dans d autres pays. Toute référence à un produit, programme ou service d IBM n implique pas que seuls des produits, programmes ou services d IBM peuvent être utilisés. Tout produit, programme ou service de portée équivalente peut être utilisé. Les matériels IBM peuvent contenir des composants neufs, ou un mélange de pièces neuves et non neuves. Dans certains cas, le produit matériel peut ne pas être neuf et peut avoir été déjà installé. Ceci ne modifie en rien le régime des garanties contractuelles IBM applicables. Cette publication a uniquement un rôle informatif. Les informations peuvent être modifiées sans préavis. Contactez votre agence commerciale ou votre revendeur IBM pour obtenir les toutes dernières informations sur les produits et les services IBM. Cette publication contient des adresses Internet non-ibm. IBM ne peut pas être tenu responsable des informations publiées sur ces sites. IBM ne fournit aucun avis juridique, comptable ou de contrôle et ne garantit pas non plus que ses produits et services soient conformes à la législation. Il incombe aux clients de s assurer que la législation et la réglementation applicables en matière de titres sont respectées, notamment au niveau national. Les photographies présentées dans ce document peuvent représenter des maquettes. Copyright IBM Corporation 2014 WSW14226-FRFR-00