Black Friday Spécial Anniversaire: -30% sur la formation et -10% sur les services Demandez un devis

BBC News Logo

BBC News - L’info tout de suite, partout et pour tous grâce à Symfony

« La force de Symfony, c’est son architecture, » nous confie John Cleveley, Responsable Technique de BBC News. Découvrez pourquoi et comment l'équipe technique de BBC News a choisi de migrer vers le framework Symfony pour son site web.

L’entreprise / BBC News

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 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 Symfony 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 solution

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 Symfony. « La force de Symfony, c’est 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 à Symfony et à ses composants.

Cela pourrait aussi vous intéresser

Symfony

Expert Symfony

Un Expert Symfony est un expert certifié de SensioLabs qui possède une vaste expérience de projets professionnels et clients. Améliorez la performance et la qualité de votre projet et surmontez les étapes les plus difficiles.

En savoir plus
Symfony

Symfony: Le framework PHP ultime pour des applications web haute performance

Symfony est le principal framework PHP pour les applications web, offrant une base robuste, évolutive et flexible pour les développeurs. Construisez des applications haute performance avec des composants réutilisables, une documentation étendue et une communauté dynamique.

En savoir plus
Symfony insight

SymfonyInsight: L'assurance qualié de vos projets PHP

Améliorez votre développement Symfony avec SymfonyInsight. Obtenez des revues de code approfondies, une surveillance en temps réel et des recommandations personnalisées pour améliorer la qualité et la performance de vos applications Symfony.

En savoir plus
Symfony cloud

Avec SymfonyCloud, créez vos projets en toute simplicité sur Symfony

SymfonyCloud met à disposition un PaaS robuste et évolutif pour le déploiement et l'hébergement de votre application Symfony. Optimisez votre flux de développement grâce au déploiement automatisé, à un scaling transparent et une sécurité hors pair. Faites décoller votre projet avec SymfonyCloud.

En savoir plus
Book cover "PHP framework migration: from legacy to Symfony"

Migrer vers un framework PHP : du Legacy à Symfony

Comment migrer en toute sécurité d'une application avec un legacy PHP ou un framework non maintenu vers Symfony ?

En savoir plus
Book cover "Why Symfony?"

Pourquoi choisir Symfony ?

Découvrez pourquoi Symfony est un framework PHP de premier plan, connu pour sa flexibilité, son soutien communautaire et ses performances robustes. Apprenez les principales raisons de choisir Symfony pour vos projets de développement.

En savoir plus
Image