L’Entreprise 2.0: quand les tests et la mesure des performances applicatives deviennent aussi vitaux que complexes

L’avènement du Web 2.0  au sein des entreprises révèle de nouvelles orientations de marché, parmi lesquelles :

•    Une mise sur le marché toujours plus rapide des nouveaux modèles économiques et d’applications : aujourd’hui, les mises à jour se doivent d’être hebdomadaires plutôt que trimestrielles et parfois même quotidienne.

•    Des applications de plus en plus complexes : la simplicité des langages de programmation comme RoR et les nouvelles attentes des clients alimentent la complexité des applications (la compatibilité du streaming vidéo avec les smartphones par exemple).

•    Des navigateurs toujours plus puissants : le modèle de services applicatifs à la demande (SaaS- Software as a Service) et la richesse des technologies Web comme AJAX rendent les applications Web plus lourdes et font du navigateur web un client universel.

Cet état des lieux invite les entreprises à mettre davantage l’accent sur le monitoring des performances de leurs applications mobiles et Internet.

Pourtant, le Web 2.0 n’a pas fait table rase des carences qui pèsent sur le Web traditionnel lorsqu’il s’agit d’évaluer avec précision la qualité technique d’un site. 
Une entreprise qui ne dispose pas de réelle volonté et de procédures interne pour gérer les performances, et plus précisément dans l’optique de l’utilisateur final (navigateur, réseau et équipement utilisateur), ne progressera pas sur le sujet si elle se contente simplement d’utiliser XML et Flash. Pour beaucoup d’entreprises, la gestion et le monitoring des performances s’effectuent encore au prisme d’un modèle centralisé client/serveur: on mesure les performances des serveurs, des réseaux et des composants de l’architecture, mais on ne se soucie guère de ce qui se passe au-delà du périmètre de contrôle.
 
Cette vision à très court terme est, dans le monde de l’Internet, totalement inefficace et il est illusoire d’évaluer la qualité de votre site Internet en fonction du temps de réponse de votre serveur et du débit de votre propre réseau.
 
Pour autant, les entreprises restent nombreuses à privilégier la gestion des performances : elles comprennent le lien avec la satisfaction des utilisateurs, un lien d’autant plus évident lorsqu’elles passent au Web 2.0. Ces entreprises, de manière générale, comprennent la nécessité d’effectuer des mesures à partir d’un navigateur du marché, cet outil étant devenu incontournable avec l’utilisation des technologies Web 2.0. Les mesures doivent alors s’effectuer à partir d’un navigateur et à partir de différents lieux externes de connexion et d’équipements mobiles, sur l’intégralité du site Web, et non sur la page d’accueil ou sur certaines pages clés.

Une des grandes tendances émergentes et appelée à durer est le mouvement général vers le Cloud et le Cloud Computing. Le Cloud Computing, un nouveau paradigme pour l’analyse des performances Web, d’autant qu’il soulève de nouveaux défis liés au développement et à la gestion de services applicatifs complexes. Les développeurs qui activaient et hébergeaient les applications sur leurs propres serveurs, s’ouvrent désormais vers le Cloud Computing. Ils stockent, via Internet, leurs fichiers et leurs données sur des réseaux et plateformes distants. Si les équipes réseaux pouvaient jusqu’à présent pallier les défaillances de performances dans un environnement défini et sous leur contrôle, il s’agit désormais de gérer les performances applicatives sur l’ensemble des sphères Internet.

Avec le Cloud Computing, nous allons constater une forte augmentation du nombre d’applications Web conçues, hébergées et exécutées directement sur Internet ainsi qu’ un nombre toujours plus important de développeurs qui utiliseront les plateformes de développement en ligne (PaaS / Platform-as-a-Service) comme celles de Apps Engine, Force.com, Microsoft Mesh ou encore Bungee Connect.

Puisque les performances sont souvent affectées par l’architecture de l’application (applications composites) et par la performance de l’infrastructure Internet sous-jacente, il est essentiel de tester les applications sur diverses plateformes pour diagnostiquer les problématiques et y apporter des réponses pertinentes. Les performances d’une application sont influencées par les performances de chaque sphère Internet dont elle dépend et par l’interaction de ces sphères entre elles.

Les entreprises gagneraient à avoir une visibilité au cœur des performances de leur application, de la phase de conception à la mise en production. En effet, la clé de réussite est de tester l’application en amont du cycle de développement, dès le début de la phase de conception et avant que l’application soit soumise pour validation aux équipes d’assurance qualité ou mise en production.