Quel modèle après les applications en ligne ?

L’avenir est aux applications en ligne entend t-on. Des applications tout en ligne auxquelles on accède de n’importe où à partir d’un navigateur. On y trouve des leaders (en terme de « Mindshare » à tout le moins) (Google Apps, Saleforce), des startups « web2.0″ (Zimbra racheté par Yahoo, Highrise), et même des éditeurs traditionnels (SAP avec SAP by Design)…y compris Microsoft (avec ses offres Business Productivity On Line et Office Live).

Le modèle se développe mais deux écueils en freinent l’application généralisée :

  • L’absence insistante de connexion généralisée haut débit n’importe où à n’importe quel moment (pourtant promise depuis des années mais sans cesse repoussée)
  • Le problème de la garantie de la qualité de serviceEt accessoirement les faiblesses induites de l’expérience utilisateur.

    Je ne crois plus à la connexion généralisée. Il y a une telle accumulation d’expériences et d’éléments contraires que les dépasser devient peu crédible :

  • La qualité médiocre des connexions 3G
  • Le wifi défaillant ou à couverture toujours partielle (les salles de réunions au sous-sol. Sans parler des salles de conférence des hôtels lors des conférences Web2.0)
  • Et quand le wifi est disponible, il est rarement « sans couture ». Il nécessite en fonction du lieu de mettre en œuvre de multiples modalités d’activation voire de paiement car la gratuité est encore très loin d’être la norme.
  • Cette situation est aggravée en voyage : le wifi est inexistant dans les transports et encore très peu accessible dans les hôtels, gares et espaces de transit (et je ne parle pas de la situation lorsque l’on est à l’étranger).
  • Le WiMax est encore non déployée en France et ne semble apparemment pas tenir ses promesses.
  • Les futures générations de 3G (Long Term Evolution) me semblent frappées par la loi de Moore inversée des ordinateurs (plus on a de puissance et plus on en consomme pour des performances qui ne font que se maintenir) appliquée à la bande passante (plus on en a, plus on en consomme pour un niveau de qualité qui ne fait que se maintenir).La garantie de la qualité de service de ces applications pose tout autant de problèmes :
  • Ces applications en ligne nécessitent un haut niveau de service du fait qu’elles ne sont plus utilisables lorsqu’elles ne sont plus accessible du fait d’une panne ou d’une saturation des serveurs.
  • Ces pannes et indisponibilités ont touché tous les services les plus représentatifs tels Amazon Web Services, Salesforces ou Googles Apps.
  • L’obtention de cette qualité de service nécessite la mise en place d’infrastructure de datacenters géants hautement redondés et avec une exploitation très maîtrisée. Internet c’est comme la sidérurgie, le ticket d’entrée en terme d’investissement c’est le milliard de dollar.Les faiblesses induites de l’expérience utilisateur découlent du choix exclusif de l’interface internet et de ses limitations :
  • L’interactivité y est plus complexe à développer et plus sujette à lenteur (problème auquel Google tente de remédier avec Chrome)
  • La linéarité de la séquence des pages n’est pas adaptée à toutes les applications (cf la multiplicité des pages à parcourir pour obtenir une information unitaire sur la version web d’un ERP ou d’un CRM ou l’impossibilité de travailler en multifenêtrés).
  • L’intégration de nouvelles interfaces de visualisation et d’interaction (interface tactile, haptique, surfaces interactives telle la table Microsoft Surface ou le TouchWall, senseurs, manettes de type Wii, …) n’est actuellement pas faisable (c’est pourquoi les applications iPhone proposées sur l’AppStore sont des « applications » et non des services en ligne).Rappelons que les applications en ligne se situent actuellement plutôt dans une phase émergente. Elles seront amenées à se développer dans le futur mais actuellement elles sont encore très marginales. Et je pense qu’elles n’occuperont jamais la plus grande partie de la scène car déjà d’autres modèles d’application alternatifs apparaissent déjà.

    La nécessité de pouvoir fonctionner en mode déconnecté, en attendant l’hypothétique « Grand Soir » de la connectivité, a conduit à plusieurs développements :

  • La réplication locale des données utilisées par une application exécutée dans un navigateur : Google Gear et Firefox Prism
  • Des applications internet riche (RIA) s’exécutant dans le navigateur et qui bénéficieraient d’une capacité de stockage local (Microsoft Silverlight, Adobe Flash)
  • Des applications exécutées sur le PC de manière autonome, alimentée et interagissant avec internet, voire mise en place et mise à jour par internet (des Rich Desktop Applications tels que Adobe Air ou Microsoft avec les technologies WPF (Windows Presentation Foundation) et « Click Once » (déploiement en un clic et mise à jour via internet).Cela constitue un premier niveau de réponse mais on n’y est pas encore car d’autres scénarios d’usage ne sont pas couverts par ces technologies.

    En effet :

  • J’ai déjà plusieurs ordinateurs (un professionnel et un personnel), je vais en acheter un nouveau (un UMPC) mais je peux aussi vouloir accéder à mon application via internet ou sur un téléphone mobile (un smartphone).
  • Donc une application c’est n’est plus une interface (sur internet ou en local). C’est un service avec des données et un profil, liés à un utilisateur et consommable de différentes manières selon les contextes (en ligne, sur une application locale déconnectée, sur un mobile, voire de manière vocale ou accessible chez des amis ou sur des interfaces banalisées dans des endroits publics…). C’est un droit d’usage complètement indépendant de la manière de le consommer.
  • Et si l’on veut compliquer les choses, on peut envisager un continum des scénarios de connexion/réplication des données :
    • Connecté / Non connecté
    • Local avec connexion continue
    • Local avec stockage local et synchronisation à date
    • Local avec stockage local et synchronisation régulière.

    Nous voila donc avec un tout autre modèle d’application dont « l’application en ligne » ne constitue qu’une des déclinaisons et pas forcement la plus importante.

    Un autre aspect fondamental dans ce modèle est représenté par les mécanismes de réplications des données. Microsoft est très actif dans ce domaine avec :

  • Sync, le framework de développement inclus dans .NET, offrant la plus large gamme de scénarios de réplication de données
  • LiveMesh, l’infrastructure de service internet de réplication de données.Nous avons jusqu’ici envisagé des applications mais si nous poussons un peu plus loin en nous demandant : qu’est-ce que pourrait être un système d’exploitation dans le futur ?
    • Une couche de virtualisation qui permettrait de « désynchroniser » les applications et les données de telle manière à pouvoir les « resynchroniser » et les mettre à disposition dans d’autres contextes d’usage
    • Un ensemble de services locaux qui disposeraient de leur pendant de services internet.

    On voit bien que l’on est très loin des balbutiantes applications en ligne existantes.

    Et qui est le mieux placé pour réaliser cette évolution ? Microsoft bien sur !

  • Pourquoi ?
    • D’abord parce que cela requiert des investissements énormes en R&D pour redévelopper les applications et services dans l’ensemble des contextes d’usage ainsi que les mécanismes de synchronisation entre eux et les datacenters géants qui vont les supporter.
    • Ensuite parce c’est le plus à même d’apporter cette innovation dans le parc existant des applications desktop traditionnelles (ce qui a d’ailleurs toujours été le cas car la démocratisation de l’innovation est le mantra de Microsoft).
  • Microsoft est déjà en train de mettre en place progressivement les briques de cette évolution. J’ai cité Sync et LiveMesh mais on retrouve aussi cette évolution dans Windows Live Hotmail qui possède un client « riche » qui peut être présent et synchronisé sur plusieurs PC, une version « full internet » et une version mobile. Toutes synchronisées entre elles avec les mêmes données.
  • A quand la même chose avec Word, Excel et Powerpoint (en mode partagé entre plusieurs personnes bien sur) ?