* * * * *

Abonnez-vous !

Innovablog, Le Web où l’Innovation ordinaire : design, ergonomie, interfaces riches, web 2.0, eCommerce,…

  • A propos de l’auteur
  • Archives
  • Contacts
  • 5
    déc 07
    Catégorie : Web application

    Faut-il héberger ses applications web ?



    Ce billet se focalisera sur le débat ou du moins de l’opposition entre applications hébergées et applications installables (sur un poste client). Comprenons bien la dichotomie. Avec l’apparition des applications web, cette distinction prend une importance accrue. En effet, par essence les applications dites “web” sont des logiciels hébergés, sur un serveur distant, mutualisées pour l’ensemble des utilisateurs. On constate une architecture de type 1>n : sur une application (un serveur ou une ferme de serveurs) se connectent n clients utilisateurs. Par opposition aux applications de bureau “traditionnelles” qui s’installent sur votre poste client (ex. : Microsoft Office versus Google Documents) (de type 1 pour 1).

    Construire sa Web application

    37signalsJe vous propose ci-après la traduction d’un billet de 37signals (Ask 37signals: Installable software?) justement sur ce thème, donc l’auteur répond à la question :

    Avez-vous déjà songé à proposer vos applications pouvant être installées localement chez le client ?

    Ce serait fortement improbable que nous vendions des logiciels installés. Cette question est en fait plus une question de business que de logiciel pur.

    Nous serions une entreprise différente

    Voici pourquoi : Nous devrions être une entreprise fondamentalement différente pour développer, vendre et distribuer des logiciels en pack. Nous ne pourrions très certainement pas être aussi petits ni aussi agiles. Nous ne serions définitivement pas heureux.

    Si nous construisions des logiciels de bureau, nous devrions passer bien plus de temps sur le support technique, la rédaction de documentation, ce qui ralentirait notre process de développement, et nous ferait ainsi perdre un certain contrôle sur notre expérience client. Pour certaines entreprises ce ne serait pas insurmontable, mais pour nous ce serait une réelle cassure.

    Hébergé = Environnements de développement et de déploiement contrôlés

    Web application serveur

    La production de logiciels est déjà assez difficile lorsque l’on contrôle l’ensemble des variables. Avec les applications web, nous bénéficions d’un code source optimisé pour un unique environnement d’exécution. Nous devons assembler d’une façon optimale software et hardware permettant l’exécution de nos produits. L’importance de cette tâche ne saurait être sous-estimée.

    Installable = Nombreuses possibilités d’erreur

    Avec les logiciels de bureau ou basés sur un serveur, vous n’avez qu’un unique code source (tant que vous n’avez pas réalisé de version spécifique), mais vous avez à domestiquer des variations sans fin de systèmes d’exploitation qui ne sont pas sous votre contrôle. Lorsque quelque chose tourne mal, il est plus difficile d’en trouver la cause si vous n’êtes pas sous contrôle de l’OS ou du tiers logiciel ou matériel pouvant interférer avec l’installation, la mise à jour ou la performance générale de votre produit. Et c’est encore plus compliqué avec des installations sur serveurs distants lorsque différentes versions de Ruby, Rails, MySql, etc. sont en causes.

    Les maux de têtes des compatibilités ascendantes

    Web application

    De plus lorsque vous vendez des logiciels installables par le client, vous devez faire face aux problèmes de compatibilité ascendante. Si votre dernière version est la 3.2 et que quelques milliers de clients en sont encore à la 3.0 au lieu de la 3.1, que faire avec la procédure de mise à jour ? Et que faire des clients encore sous la version 2.9 ou 2.8.7 ? Maintenir une compatibilité ascendante est probablement le plus grand obstacle au progrès des logiciels.

    Bien sur les applications web hébergées ont des problèmes similaires au regard des différents navigateurs et différentes versions de ces derniers, mais ces problèmes sont les mêmes pour les applications web installées. Un partout, balle au centre.

    Les cycles de mise à jour

    Enfin, les applications web peuvent être mises à jour et améliorées instantanément pour chacun des clients et ce au même instant sans aucun effort de leur part. La mise à jour peut se faire chaque jour – même plusieurs fois par jour – sans encombrement pour la clientèle. Les logiciels installables ont généralement des cycles de mise à jour plus lents car il est plus judicieux de grouper ces mises à jour : on ne peut pas demander aux utilisateurs de télécharger quotidiennement une mise à jour.

    Aucun de ces arguments n’essaie de déclarer morts ou inintéressants les logiciels lourds ou installables. Mais tant que cela se construit nous pensons que nous nous en tiendrons à ce que nous aimons : développer et vendre des applications web hébergées.

    Cet article vous a plu ? Ne perdez plus aucune info : abonnez-vous gratuitement !

    A vous de jouer ! Laissez un commentaire :

    XHTML: Vous pouvez utiliser ces tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

    Innovablog motorisé par WordPress
    Theme Wordpress par Olivier Favre
    Site Map
    RSS Feed
    Contenu intégralement sous licence Creative Commons