Pensez Applications Composites !

Depuis que je suis petit, je regarde « Le Bon, la Brute et le Truand » avec un plaisir qui ne s’estompe pas. Comme dans tout bon western, les colts et autres revolvers sont aussi importants que les gueules cassées, les saloons et les chevaux. Une scène m’a toujours frappée : celle où Tuco sortant du désert, se construit l’arme idéale en puisant dans les vitrines d’un armurier. Il assemble la crosse de l’un, le barillet de l’autre en y ajoutant le canon d’un troisième. Une belle cordelette pour suspendre le tout, et le voilà doté d’une arme redoutable, adaptée à ses besoins et à ses usages…

Finalement, Tuco ne réalise-t-il pas le rêve de la plupart des directions métiers ? Puiser dans le réservoir des applications existantes ou potentielles pour se construire des applications métiers, répondant à des besoins et usages spécifiques. Les composants s’estompent au profit de l’ensemble. La crosse tombe bien dans la main, l’arme est équilibrée, les dangers sont réels pour les adversaires, le duel peut commencer.

Bien sûr, cela est bien plus facile à dire qu’à faire. Les entreprises possèdent des actifs SI historiques importants, sous la forme d’applications verticales ou horizontales, résultant de l’intégration de solutions éditeurs ou de développements ad hoc. Ces applications ont très rarement été pensées et développées dans l’optique d’être utilisées par morceaux ou distribuées vers d’autres solutions. Dans les deux cas le temps et les ressources pour les faire évoluer manquent.

Pourtant les demandes des utilisateurs sont grandissantes…

Les demandes sont d’abord fonctionnelles : rassembler et assembler dynamiquement des fonctions se trouvant aujourd’hui dans plusieurs applications. Par exemple pouvoir concentrer les divers éléments concernant un client, depuis qui il est (nom, activité, chiffre d’affaire…) à comment il paie (conditions de paiement, nombre de litiges…), en passant par ce qu’il achète (portefolio produit, volume et récurrence, poids dans le total…). Une véritable vision 360° en somme. Sans être une nouveauté sur le fond, les demandes sont aujourd’hui beaucoup plus transverses qu’avant, avec un nombre croissants d’applications à intégrer : du collaboratif, des alertes, l’accès à des données historiques. Quand il y a quelques années il suffisait d’attendre une nouvelle release éditeur ou de mener un projet d’intégration entre deux applications, aujourd’hui ces solutions sont inadaptées pour combiner 3, 4 voir 10 applications. Complexe techniquement, impensable budgétairement.

Les demandes, est cela est nettement plus récent, vont très clairement vers des interfaces aux applications simples et ergonomiques, voire même, belles et designs. Dans ce domaine les exigences des utilisateurs professionnels convergent vers celles du grand public. Les révolutions digitales successives (Internet, smartphones…) imposent des standards d’interfaces au monde de l’entreprise. Est-il envisageable de faire un portail d’entreprise moins ergonomique que Facebook ? Peut-on mettre en oeuvre un poste conseillé moins bien pensé que le site d’une banque ?

Comment faire alors pour concilier les attentes des utilisateurs et les contraintes SI ? En s’affranchissant autant que possible des contraintes des applications d’origine pour reconstruire une nouvelle application composite. Les applications d’origine deviennent donc des enablers qui alimentent de nouvelles interfaces. Jusqu’à présent très théorique, les conditions sont aujourd’hui remplies pour que cette approche soit tout à fait réalisable d’un point de vue pratique :

  • Pour quasiment chaque application, des moyens de distribuer des services existent : certaines applications le permettent déjà (ex: architecture SOA) et d’autres fois il est possible de capitaliser sur les fronts existants (html, green screens…) pour construire des webservices structurés. Signe du temps et de la tendance, les éditeurs de verticaux eux-mêmes rendent leurs applications plus facilement distribuables (ex : Oracle ouvre désormais les couches basses de ses applications).
  • Ensuite, les services issus d’applications très diverses peuvent désormais être orchestrés entre eux. Les solutions de mashup d’entreprise offrent la possibilité côté back ou côté front de combiner dynamiquement des sources (en mélangeant par exemple les données d’un CRM avec les données d’un annuaire le tout sur un fond cartographie afin de construire et d’optimiser des itinéraires pour des commerciaux terrains).
  • Enfin, les solutions pour développer des interfaces riches prolifèrent (Flex, Air, Silverlight, HTML5…). Il devient facile et abordable de concevoir des interfaces professionnelles riches en exploitant les technologies RIA qui émanent d’Internet. Les technologies sont maîtrisées, les rendus sont très qualitatifs et les coûts de licence de développement et d’exploitation ridiculement bas.

En bref, ce qui n’était pas possible, le devient. Ce qui n’était pas envisageable en terme de coûts et de délais devient tout à fait réaliste.

Reste alors la question de la gestion du changement, et la capacité des directions métiers et des DSI à trouver, dans cette nouvelle philosophie, de nouveaux modes de fonctionnement. Les uns devront faire l’effort de clairement exprimer et hiérarchiser leurs besoins côté front, les autres devront « ouvrir » leur SI tout en assurant cohérence, pérennité et solidité.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *