Inscrivez-vous gratuitement à la Newsletter BFM Business
Grâce à un modèle objet abouti, PHP 5 remplace de plus en plus souvent Java EE pour le développement d'applications critiques basées sur des architectures web.
Le développement d'applications critiques est longtemps resté un domaine réservé aux prestataires et aux éditeurs de progiciels. Toutes les entreprises ne possèdent pas en effet en interne une équipe complète d'architectes et de
développeurs C++ ou Java. Avec l'essor des architectures web, PHP prend aujourd'hui la relève et apporte plus d'autonomie aux entreprises. Selon une étude de SitePoint réalisée auprès de 5 000 développeurs en 2006, 68 % des développeurs
web utilisent PHP contre 14 % Java (JSP/Servlet) et 30 %.NET (ASP).Cette évolution est en grande partie liée à l'introduction d'un véritable modèle objet dans PHP 5 et à l'arrivée à maturité des spécialistes de ce serveur d'applications. Les entreprises disposent ainsi d'une solution alternative aux
progiciels et à des développements client-serveur Java, C++ ou Visual Basic. Des PME comme le groupe Girard (transport ?" 1 000 salariés), Cogedim (promoteur immobilier ?" 360 salariés) et Perdigon (maintenance d'ascenseurs,
automatismes, chauffage, etc. ?" 80 salariés) ou des filiales de grandes entreprises comme Toyota Industrial Equipment Europe (distribution et SAV de chariots élévateurs ?" 70 salariés) et Alapage.com (vente en ligne ?" 160
salariés) ont déjà sauté le pas.
L'utilisation : des applications critiques
Chez Perdigon, les outils développés avec PHP 5 sont à la fois nombreux, critiques et complexes. Ils prennent en charge une grande partie de l'activité de l'entreprise, ' gestion du parc d'installations
techniques que nous supervisons à distance, planification, suivi et quittance des interventions via téléphone GPRS et badge RFID, extranet clients et usagers, etc. ', liste Thierry Boufflet, responsable informatique. Si ces
applications tombent en panne, c'est toute l'activité de l'entreprise qui s'arrête. Toyota Industrial Equipment Europe (TIEE) utilise, de son côté, PHP 5 pour son extranet métier, les outils de reporting, diverses applications techniques comme
l'authentification de toutes les applications du système d'information, et enfin le service de génération de PDF. ' Un service critique, car il génère toutes nos factures clients ', précise Cyril
Cottet, superviseur des systèmes d'information chez TIEE. Même son de cloche chez Cogedim, dont le site web engendre une part très importante des contacts se traduisant par des ventes. ' Dans notre profession, environ
50 % des contacts se font par le web. Ces contacts se transforment en ventes pour 30 % d'entre eux ', indique Franck Laudet, responsable du SI. C'est donc un tiers du CA de l'entreprise qui est en jeu. Complexe, le
site repose sur une architecture digne d'une véritable application métier. Quant au groupe Girard, son progiciel maison (400 écrans, gestion des contrats clients, prise de commandes, facturation, suivi des tournées, etc.) repose entièrement sur PHP
5.
La mise en ?"uvre : OO et framework
Le choix de PHP 5 plutôt que de Java EE n'est pas toujours évident. Mi-2005, le groupe Girard a, par exemple, ' formé plusieurs collaborateurs de l'équipe informatique à Java et à UML ',
explique Valentin Moyano, directeur informatique du groupe. Mais, très vite, cette technologie a montré ses limites. ' Nous n'arrivions pas à fournir rapidement des maquettes aux utilisateurs et les développements nous
semblaient vraiment complexes ', ajoute-t-il. Ayant déjà utilisé PHP, son équipe se réoriente vite vers PHP 5. L'expérience du groupe Girard résume bien les critères qui poussent les entreprises à choisir PHP 5 plutôt que
Java EE ou.NET. Plus flexible que Java EE, PHP est mieux adapté à l'organisation et à la méthodologie des petites équipes. Par ailleurs, PHP 5 répond mieux aux contraintes de coûts et au besoin d'ouverture de ces entreprises.
' Nous avons tenté une expérience malheureuse avec une solution " clés en main " basée sur Lotus Notes. Mais l'incapacité d'IBM et de notre prestataire à répondre à certaines questions relatives à
l'ouverture vers d'autres systèmes pour l'échange de données nous a conduits à revoir notre réflexion ', illustre Thierry Boufflet, de Perdigon. Quant à.NET, aucune des entreprises que nous avons interrogées ne l'a envisagé.
Medcost et Cogedim ont abandonné la plate-forme de Microsoft pour des raisons de coût. Toutes les entreprises qui utilisent PHP 5 ont essentiellement migré vers cette nouvelle version pour son modèle objet qu'elles utilisent abondamment dans leurs
nouveaux développements. ' PHP 5 permet de développer en objet sans la lourdeur de J2EE mais avec la même rigueur. Les coûts de développement, de maintenance et d'hébergement, sont plus bas en PHP qu'en Java
EE ', confirme Franck Laudet, chez Cogedim. Cependant, contrairement à.NET et à Java EE, PHP 5 est un langage plus permissif. Il mélange en effet une programmation orientée objet et une procédurale. La plupart des entreprises
suivent donc des règles méthodologiques et architecturales très strictes pour éviter de s'embrouiller. Elles recourent aussi à des cadres de développement. Medcost s'appuie, par exemple, sur le framework de Zend tandis que Toyota Industrial
Equipment Europe encadre ses développements à l'aide d'un framework maison. ' Au fil de nos projets, nous avons constitué un socle de développement maison exploité dans l'ensemble des applications ',
explique Cyril Cottet, superviseur des systèmes d'information chez TIEE.L'ensemble de ces bonnes pratiques méthodologiques facilite la migration des applications PHP 4 déjà en production vers PHP 5. En général, lorsque les entreprises en ont la possibilité, elles maintiennent deux serveurs PHP en
parallèle. Lorsque la migration vers PHP 5 est inévitable, elle se passe généralement sans problème, car les API des deux versions sont compatibles et la machine virtuelle (Zend Engine) de PHP 5 a été conçue pour exécuter du code PHP 4.
Les ressources nécessaires : des développeurs expérimentés
Quelles que soient la taille et la complexité des projets, ceux-ci nécessitent de ' vrais ' développeurs, rompus à la fois à la programmation orientée objet et aux méthodologies de
développement associées. Le recours à des outils professionnels peut, bien entendu, faciliter la tâche des développeurs. Les IDE les plus répandus sont Zend Studio de Zend et le plug-in PHP (PHP-eclipse) pour Eclipse... sans compter les
inconditionnels des éditeurs de texte standards Vi et Notepad. ' Nous utilisons Zend Studio sur le poste du développeur et Zend Platform sur les serveurs ', indique Emmanuel Lacroix, responsable
' e-business platform ' d'Alapage.com. ' Cela nous a fait franchir un pas décisif vers l'industrialisation de nos développements. On se rapproche vraiment des environnements
existants dans les mondes Microsoft et Java ', ajoute-t-il. Zend Platform est un outil qui permet d'optimiser en permanence les performances des serveurs tout en facilitant leur supervision et le débogage des applications.Sur les projets les plus complexes, les entreprises n'hésitent plus à se former et à recruter des développeurs expérimentés. Alapage et Medcost ont ainsi fait appel directement aux équipes de Zend tant pour la formation que pour le
conseil. Perdigon, Cogedim et Toyota ont préféré faire appel à des prestataires. ' Les développements sont assurés par notre prestataire. La complexité du MCD et la rigueur de développement nécessitaient le recours à des
professionnels ', explique Franck Laudet, chez Cogedim. Perdigon a eu recours aux services d'Anaska, et Toyota, à Globalis, deux prestataires historiques de PHP en France.
Les écueils : encore des lacunes par rapport à Java
PHP 5 n'est pas encore au niveau de Java en ce qui concerne la programmation orientée objet. Si son niveau suffit aux entreprises, ' il faut faire attention à ne pas coder du Java en PHP. L'approche objet doit
être en phase avec la réalité de ce que sait bien faire PHP ', met en garde Emmanuel Lacroix, chez Alapage.com. L'API de PHP 5 est en effet l'héritière de PHP 4. La syntaxe est donc un mélange de programmation procédurale et
de programmation objet.Mais, pour Étienne Sola, chef de projet chez Goaland qui développe les applications de Cogedim, il existe des lacunes encore plus importantes. ' PHP 5 n'utilise pas le modèle d'exception pour la gestion des
erreurs pour sa propre API. Comme c'est un langage interprété, beaucoup d'erreurs ne se révèlent qu'à l'exécution, alors qu'en Java ou en.NET, le compilateur les détecte avant ', explique-t-il. Par ailleurs, il n'existe pas
encore de framework stable et éprouvé comme Struts et Spring dans le monde Java. Cette lacune sera heureusement bientôt comblée par le Zend Framework que la plupart des utilisateurs attendent avec impatience.Pour Cyril Cottet, ' le plus gros souci de PHP, à l'heure actuelle, c'est l'absence d'une véritable extension pour développer des applications reposant sur l'architecture client riche ',
note-t-il. De fait, malgré quelques tentatives autour de PHP-GTK et des ponts vers la technologie Flex 2.0 d'Adobe, aucune solution aboutie n'est disponible aujourd'hui. PHP 5 est donc le champion du web, mais il y reste aussi cantonné pour le
moment.Reste le problème des compétences. Nombre de prestataires qui possèdent un véritable savoir-faire autour de PHP 4 ne sont plus assez qualifiés pour PHP 5. Le développement objet implique en effet des développeurs plus expérimentés.
' Nous n'avons pas eu ce souci. Mais de " vraies " compétences ne sont pas si simples à trouver. Beaucoup prétendent être compétents parce qu'ils savent mettre en ?"uvre des applicatifs PHP 4. Mais
peu de SSII sont réellement capables d'exploiter PHP 5 dans toutes ses limites, notamment ses aspects objet ', estime Cyril Cottet.
Les gains : une productivité exemplaire
Malgré ces lacunes, lorsqu'il est utilisé dans un contexte approprié, PHP 5 reste plus simple à mettre en ?"uvre que.NET et Java EE. ' Même orienté objet, il est facile à apprendre, stable et performant. PHP 5
dispose également d'une vaste communauté, très dynamique, qui garantit sa pérennité ', estime Thierry Boufflet, chez Perdigon. Et, au-delà de la productivité, les économies sont, elles aussi, bien réelles par rapport aux
outils propriétaires. ' Avant, nous utilisions une plate-forme Microsoft : IIS, ASP, SQL Server, etc. Pour mettre à jour nos soixante-dix serveurs, nous aurions dû dépenser 100 000 euros. C'est autant d'argent que
nous pouvons investir ailleurs ', constate Stéphane Menier, DSI de Medcost.
Votre opinion