Ce billet est une réflexion ; il évoluera sous doute dans les jours / semaines à venir...

Ces derniers mois, force est de constater que beaucoup d'entreprises / administrations / ... profitent de projet de refonte de leur système d'information (tout ou partie) pour "webifier" un certain nombre d'applications.

Une application web permet en effet de répondre à un certains nombres de problématiques :

  • Mobilité accrue des employés / salariés : ces derniers doivent pouvoir accéder depuis n'importe où aux ressources de leur entreprise pour mener leur travail à bien et une application web est vue comme une solution au problème,
  • Plus grande délégation des tâches : bon nombre de projets web ont lieu de part la décentralisation ou la délégation des tâches à des individus qui ne sont pas dans les mêmes services, ni dans les mêmes établissements. Une application web permet alors à n'importe quel individu de se connecter et de mener les actions nécessaires avec pour seul pré-requis un navigateur internet.
  • Opportunité du client léger qui remplace le client lourd : facilité de déploiement, coût, licences, etc peuvent alors entrer en ligne de mire,
  • (à compléter si besoin)

En outre la mouvance du "Web 2.0" montre qu'il est possible de faire de plus en plus de chose via un navigateur internet et l'arrivée d'applications bureautiques (Writely par ex ou l'annonce de Windows/Office Live) laissent imaginer que toute application est "webifiable".

La question que nous devons nous poser est non pas "comment webifier mon application ?" mais plutôt "est-ce que mon application est webifiable ?" et "Si elle l'est, jusqu'à quel point ?"

Pour ma part, pour ce que j'ai pu voir à ce jour, je dirais que : "Une application est webifiable si est seulement si elle est destinée à être utilisée sur et via le web et encore avec quelques réserves techniques"

  • Via le web : il suffit d'un navigateur internet pour y accéder ; je n'entre pas dans la problématique des clients riches.
  • Sur le web : l'application est alimentée et utilisée en mode web ; pas question de produire des documents papier en haute qualité (comme on pourrait le faire avec XPress par ex), de faire du Excel sur le net, etc.

Les limites pour moi sont :

  • Le langage HTML n'est pas fait pour produire autre chose que des contenus à destination du web. La transformation de ces documents en fichiers PDF, Excel, ou autre est longue, fastidieuse, coûteuse, pour un résultat moyen. Une page web n'est pas faite pour rentrer sur une page A4 en mode paysage quelque soit son contenu,
  • Si export dans des formats exotiques il doit y avoir, il faut passer par la case XML et encore, tous les éléments de mise en page / présentation ne pourront être satisfaits,
  • Internet Explorer comme navigateur qui nivelle tout par le bas ; il est pénible de voir que certaines mises en page ne soient pas réalisables ou du moins de voir des développeurs passer un temps important sur la gestion de l'affichage sous IE du fait de son retard et/ou de son non-respect des standards.
  • (à compléter)

Du coup, quelles sont les questions à se poser si on veut migrer une application au format web :

  • Mon application ne sera-t-elle utilisée que sur ce canal ?
  • Si export il y a, quel est le degré de qualité attendu pour ces exports ?
  • Les comportements que je souhaite sont-ils réalisables dans une application web ?
  • Si des éléments ne sont pas réalisables dans une application web, qu'est-ce que cela implique si je veux les mettre malgré tout à disposition ? (quels outils ? quelle structure ? etc.)
  • (à compléter)

Les divers conclusions que tout cela m'inspire :

  • On a déjà du mal à faire du WYSIWYG propre et totalement fonctionnel, ne nous emballons pas trop...
  • Ne sommes nous pas dans la période des attentes excessives si on définit une courbe du hype pour les applications métiers ?
  • Une application métier web peut-elle/doit-elle couper les ponts avec les applications non web ?
  • Et l'humain dans tout ça, qu'y gagne-t-il ?

Et toi cher public, qu'en penses-tu ?