Les applications jetables : elles existent depuis les débuts de l'informatisation des grandes organisations, elles sont impossibles à éradiquer, elles sont le cauchemar de tous les DSI (« Directeur des Systèmes d'Information ») de la planète… Et si, malgré tout, l'avenir de l'entreprise dans le monde numérique dépendait d'elles ?
Voilà le thème d'un commentaire d'Adriaan van Wyk pour InformationWeek, qu'il faut tout de même apprécier avec une pincée de sel puisque l'auteur est le PDG de K2, une société de services dont une des spécialités est précisément de répondre à ce genre de besoins. Toujours est-il qu'une nouvelle réalité est en train d'émerger, qu'il est de plus en plus difficile de lutter contre et qu'il peut aussi être salutaire, parfois, de lâcher un peu la bride pour s'adapter à la révolution en cours.
La production d'applications jetables est déjà particulièrement fréquente sur mobile, grâce à la popularité du développement pour smartphone, désormais elle commence à atteindre les fonctions stratégiques de l'entreprise. La réalité est donc que le sujet est plus que jamais d'actualité, parce qu'il se situe à la convergence incontournable d'une multitude de facteurs, liés à l'environnement de l'organisation, aux attentes des utilisateurs et aux moyens disponibles.
Ainsi, l'environnement dans lequel vit l'entreprise moderne est en mouvement perpétuel, demandant des changements à un rythme effréné, par exemple pour suivre la concurrence ou pour répondre aux exigences d'innovation continue. Même les approches agiles « classiques », qui sont supposées répondre à cet enjeu, ont peine à s'aligner, surtout lorsqu'il faut tâtonner et savoir changer totalement d'orientation à tout moment.
Les attentes des utilisateurs sont naturellement dictées par ce contexte : pas question d'attendre plusieurs mois pour obtenir l'application mobile qui permettra de simplifier sa vie quotidienne ou l'outil qui va faire gagner du temps dans l'exécution de son travail. Évidemment, ce besoin peut être passager et ne justifie pas nécessairement de lancer un véritable projet informatique, mais si une solution est réalisable en quelques heures, alors le jeu en vaut la chandelle.
Or, justement, les moyens disponibles aujourd'hui rendent cette perspective possible : entre les plates-formes de développement par assemblage de composants, aisément accessibles via Internet (dans le « cloud »), les APIs (interfaces de programmation applicative) ouvertes qui facilitent la réutilisation de fonctions existantes (dans l'entreprise ou à l'extérieur)… tout est conçu pour donner à chacun le pouvoir de créer une application opérationnelle en quelques clics et à moindre coût.
Comment réagir face à cette situation ? Faut-il interdire ou faut-il laisser faire ? En réalité, il n'y a pas le choix : toute tentative d'endiguer le phénomène serait non seulement contre-productive – les bénéfices sont réels – mais, surtout, tiendrait de l'illusion puisque les éventuels moyens de contrôle sont absolument inefficaces. Il vaut donc mieux accepter les faits, participer au mouvement, et s'assurer qu'un minimum de bonnes pratiques sont bien mises en œuvre.
En premier lieu, il n'est pas question de considérer que toute application peut être jetable. Au contraire, quelques critères objectifs doivent être édictés pour permettre de faire le bon choix dès le départ. Cette étape est critique parce que (et ici je diffère de l'opinion d'A. van Wyk) une application qui a été décrétée « jetable » doit effectivement et impérativement être « jetée », dans un délai fixé a priori. Rien n'est plus dévastateur, avec une solution temporaire qui s'éternise, que les efforts et les frais à engager pour la maintenir en fonctionnement.
Si une telle discipline peut être réellement partagée largement dans l'organisation, celle-ci découvrira les vertus que peut porter ce nouveau mode de développement pour son agilité globale. Mais attention ! Les utilisateurs y prendront goût et, pour répondre à leurs attentes, il faudra également penser à leur offrir les services dont ont besoin leurs réalisations : il sera alors temps de penser à « API-ifier » (si je peux me permettre ce néologisme) l'ensemble du SI (ou, du moins, sa partie « durable »)…