Une audience connue mais exigente
L'application professionnelle se distingue d'un logiciel classique de plusieurs manières. D'une part celle-ci est développée au sein de l'entreprise et répond à un usage interne. En outre elle a le plus souvent pour objectif de permettre la manipulation de données hébergées au sein de la société (SAP, Oracle...). Le commercial souhaitera par exemple accéder à son outil ERP et le technicien à son planning quotidien d'interventions.Contrairement à un service ouvert, l'audience de l'application est restreinte et identifiée. Par ailleurs ses besoins sont connus (accès à des ressources de l'entreprise, intégration d'outils tiers, accès à des fonctionnalités avancées...). Selon M. Durand, cela en fait des utilisateurs particulièrement exigents.
En contre-partie, le développeur maitrise le parc des terminaux sur lesquels cette application sera déployée. Dans certains cas, cela peut alléger la contrainte, par exemple au niveau de la prise en charge des résolutions d'écran.
Une application fonctionnelle et sécurisée
Parmi les besoins principaux identifiés, M. Av note l'importance d'avoir un accès continu. L'usage de l'application ne devra pas reposer entièrement sur la disponibilité d'une connexion 3G/4G. Par ailleurs, si une requête Web est nécessaire, celle-ci devra être rapide. Pour éviter ce type de dysfonctionnements, il est alors conseillé d'effectuer une synchronisation du contenu au démarrage de l'application avec une mise en cache des données. Le processus pourra par exemple permettre de ne rappatrier que les mises à jour effectuées depuis la dernière connexion pour limiter la bande passante et donc les coûts de data.M. Durand précise par ailleurs que certaines interfaces de programmation sont interdites sur Windows RT, ce qui peut donc limiter les fonctionnalités du service. Aussi, la réutilisation de code n'est pas systématique et un pilote développé pour Windows Mobile ne sera plus forcément fonctionnel. « Si vous avez conçu une application WPF pour gérer des contrats d'assurance avec un moteur de calcul il faudra s'assurer que ce code pourra bien être intégré, si vous souhaitez le porter sur Windows Phone », affirme-t-il.
L'application professionnelle nécessite le plus souvent une couche de sécurité. Microsoft propose plusieurs options comme l'authentification Active Directory via le Web, le Credential Manager, plusieurs interfaces de programmation de chiffrement (Windows Security Cryptography) ainsi que PasswordVault. Ce dernier composant propose de stocker les informations de connexion de l'utilisateur pour les synchroniser sur ses différents appareils.
Marrier le bureau à Modern UI
Sur Windows 8.1, il est également possible de créer des passerelles entre l'environnement Modern UI et le bureau pour proposer une meilleure ergonomie. Une première solution consiste à créer un hôte WCF (Windows Communication Foundation) associé à un serveur. Ce composant pourra ensuite être directement appelé depuis une application Modern UI. De cette manière, une Windows app pourra indirectement tirer parti de l'ensemble des fonctionnalités du framework .NET.Il est également possible d'utiliser un composant brokered permettant d'exécuter simultanément un code conçu pour un logiciel de type legacy et un autre développé pour une Windows App au sein d'une seule application. Toutefois les performances sont moins bonnes et dans les deux cas, il y aura deux composants à déployer sur les machines des utilisateurs.
Notons que si Microsoft autorise ces passrelles, l'application ne pourra pas être publiée au sein du Windows Store. Toutefois dans le cadre d'une application professionnelle, la société choisira probablement de ne pas la rendre publique.