BBC News : l’info tout de suite, partout et pour tous grâce à Symfony2

Le client

  • Client : BBC News
  • Secteur d'activité : Groupe média - diffusion d’actualités nationales (UK) et internationales
  • Groupe : BBC (British Broadcasting Company)
  • Siège social : London, UK
  • Taille : + 24 000 salariés
  • Site : www.bbc.com/news/

Mots clés

Symfony2,
Responsive Design
Pimple, Varnish
près de 1,5 millions de pages disponibles en 27 langues - 1er site d'information en Grande-Bretagne - 1er média de service public au monde - 30 millions de visiteurs uniques par semaine sur le site web - 2,7 millions de visiteurs uniques par semaine sur le site mobile

Le projet en bref

Lancé en 1997, le site d’informations britannique BBC News commençait à atteindre ses limites en ne parvenant plus à répondre aux attentes de ses lecteurs de plus en plus nombreux, de plus en plus dispersés et de plus en plus diversement équipés (PC, mobiles, tablettes, TV). BBC News a donc choisi le framework Symfony 2 et plusieurs de ses composants pour refondre son site et améliorer l’expérience de ses quelques 30 millions de visiteurs hebdomadaires. En adoptant une démarche « Responsive », BBC News a conçu un site capable de s’adapter automatiquement aux contraintes de chaque terminal web, tout en optimisant les processus de développement, de mises à jour et de maintenance.

Les bénéfices en bref :

  • Une approche « Responsive » : concevoir un site adaptatif pour optimiser l’expérience utilisateur quel que soit le terminal utilisé (PC, mobiles, tablettes, TV…)
  • Une architecture souple et simplifiée : avec la combinaison de plusieurs composants Symfony2 découplés et indépendants
  • Une base de code unique : les fonctionnalités sont intégrées une seule fois, sans duplication nécessaire par type de plateforme
  • Une montée en compétences des développeurs : par l’acquisition de bonnes pratiques de programmation

Les enjeux

Lancé à la fin des années 1990, le site d’informations britannique BBC News s’est petit à petit imposé comme un média d’information majeur dans le monde entier, drainant près de 30 millions de visiteurs uniques par semaine. Face à un tel succès, le poids des ans s’est fait de plus en plus ressentir : un site statique au graphisme désuet, sur lequel la publication de contenus s’avérait longue et fastidieuse, dans un environnement Internet où réactivité et instantanéité régnaient désormais en maîtres.

Ce besoin de dynamiser le site a par ailleurs été accéléré par l’explosion des nouveaux terminaux d’accès au web. « Il y a encore pas si longtemps, les choses étaient simples, se souvient John Cleveley, responsable technique chez BBC News. On avait d’un côté les ordinateurs, de l’autre les mobiles. Deux applications différentes suffisaient. » Mais les choses ont rapidement évolué. PC, mobiles, tablettes, TV… : en l’espace de quelques années, l’augmentation et la diversification de ces terminaux a considérablement complexifié les processus de développement, en même temps qu’elle a créé de nouvelles problématiques et de nouveaux enjeux.

BBC News ne pouvait pas ignorer les besoins et les attentes de ses lecteurs, qui en plus d’être très dispersés géographiquement, sont très diversement équipés en termes d’appareils comme de vitesse de connexion. « Nous avions besoin d’une solution pour optimiser les temps de développement, tout en garantissant à chaque utilisateur le même niveau de service, quel que soit le terminal utilisé. L’essentiel était que le contenu que nous voulions rendre disponible le soit rapidement » explique John Cleveley.

La force de Symfony, c'est son architecture. Avec des composants découplés et indépendants les uns des autres, nous avons pu choisir les briques qui nous intéressaient, sans subir la rigidité d'un framework ”monolithique”. - John Cleveley, Responsable Technique chez BBC News

La solution

sf

Le site de BBC News pâtissait d’un code trop ancien pour être correctement maintenu et sur lequel plus personne ne voulait – ou ne pouvait – travailler. Refondre le site ne signifiait pas pour autant faire table rase de tout ce qui existait, ne serait-ce que pour conserver l’accès aux articles archivés depuis plus de 15 ans… Dans ce contexte, BBC News s’est tourné vers le framework Symfony2. « La force de Symfony, c’était son architecture, poursuit le responsable technique. Avec des composants découplés et indépendants les uns des autres, nous avons pu choisir les briques qui nous intéressaient, sans subir la rigidité d’un framework ”monolithique” ».

Associé à Varnish pour optimiser la gestion des caches et à Pimple pour simplifier l’injection de dépendances, Symfony a permis au site de BBC News, non seulement de décupler ses performances, mais aussi de considérablement simplifier les développements. Tout en s’inscrivant dans la démarche ”responsive” adoptée par BBC News.

Cette approche, centrée sur l’utilisateur, vise à adapter automatiquement les contenus à chaque terminal sans développement supplémentaire. Ainsi, BBC News est aujourd’hui capable de détecter le terminal d’accès à son site pour mettre automatiquement le contenu à l’échelle de l’écran et ajouter d’éventuels contenus additionnels. « Le ”responsive design” était la solution idéale pour nous, explique John Cleveley, puisqu’il permet de faire la meilleure utilisation possible de chaque terminal. »

Les bénéfices

Concevoir un site adaptatif à tout type de terminal n’en complexifie pas pour autant la maintenance. La nouvelle architecture ”responsive” du site de BBC News permet au contraire de gagner en souplesse et en efficacité puisque l’ensemble du dispositif s’appuie sur une seule base de code. « Cela simplifie évidemment considérablement le back-end, précise John Cleveley. Les fonctionnalités ne sont intégrées qu’une seule fois, sans duplication nécessaire par type de plateforme. » Et comme le site est hébergé sur un espace URL unique, il n’y a pas non plus de sous-domaine à gérer.

Cette refonte a également impacté l’organisation des équipes de développement. Là où elles étaient auparavant segmentées par type de plateforme, elles travaillent aujourd’hui de concert tout en montant en compétences par l’acquisition de bonnes pratiques de programmation. « La prise en main de Symfony par nos développeurs a été relativement rapide, grâce à une documentation très complète et à une communauté formidable. Quels qu’aient été nos problèmes, nous avons toujours trouvé une réponse auprès de la communauté Symfony » se souvient John Cleveley.

Prochain défi pour BBC News : améliorer la prise en charge de la publicité, notamment pour les utilisateurs à l’international. Un challenge pour lequel le média britannique fera sans aucun doute appel à Symfony2 et à ses composants.