Selon Gartner, « Au fur et à mesure que les besoins de l'entreprise évoluent, les organisations doivent être en mesure d'innover rapidement et d'adapter les applications de manière dynamique, en rassemblant les capacités à l'intérieur et à l'extérieur de l'entreprise. Pour ce faire, elles doivent comprendre et mettre en oeuvre "entreprise composable". »
Il s'agit d'un concept séduisant pour les entreprises recherchant un bon équilibre entre des technologies et des systèmes d'information hautement centralisés et distribués.
En matière d'informatique d'entreprise, l'utilisation d'une infrastructure composable - constituée de composants indépendants qui peuvent être remplacés en cas de besoin - est déjà largement répandue. L'automatisation des processus d'entreprise (BPM) est un autre domaine dans lequel la composabilité est source de bénéfices. Pourquoi ? Parce que les DSI sont confrontés à un certain nombre de pressions :
- Les équipes commerciales ont besoin de réactivité et de rapidité de la part des équipes informatiques, afin d’optimiser leur "time to market".
- Les plateformes actuelles d'automatisation des processus métier déploient des applications qui dépendent toutes de ressources partagées. En matière de développement, de déploiement et de maintenance, les équipes DevOps doivent prendre en compte l'interopérabilité et l'intégration au sein d’un groupe d'applications utilisant toutes des ressources partagées. Cela peut s'avérer complexe, prendre du temps et nécessiter des tests approfondis avant de pouvoir déployer des mises à jour.
- De même, chaque fois que la plateforme d'applications des processus bénéficie d’une mise à jour (nouvelle version bénéficiant de nouvelles fonctionnalités), ou lorsqu’une application nécessite une action de maintenance, toutes les autres applications sont affectées, nécessitant la mise "hors ligne" de tout le système et engendrant des coûts importants.
- La mise à jour d'applications de processus métier de manière groupée peut également engendrer des coûts inutiles, car toutes les applications n'ont pas forcément besoin d'être mises à jour en même temps.
L'approche consistant à construire des applications commerciales à partir d'éléments interopérables permet de répondre à certaines de ces questions clés.
La modularité et les systèmes à base de composants sont déjà utilisés avec succès en matière de développement logiciel. Les infrastructures sont composables ; nous n'achetons plus des machines mais des unités centrales, de la mémoire, de l'espace disque, de la bande passante, etc. En matière de développement logiciel, le principe de composabilité s’applique au travers des technologies de conteneurisation, cette approche étant aujourd’hui la norme pour les équipes DevOps, comme le démontre notamment l'utilisation croissante de plateformes telles que Docker et Kubernetes.
Les « Applications Indépendantes », tout comme les applications composables basées sur les processus BPM, s'inscrivent parfaitement dans l'approche des architectures composables. Les applications elles-mêmes sont déjà constituées en interne d'éléments composables : processus, sous-processus, connecteurs, services, éléments de code réutilisables, règles métier et widgets d'interface utilisateur, pour n'en citer que quelques-uns.
L'approche des « applications indépendantes » combine les avantages des approches et des technologies de conteneurisation avec la puissance des technologies de la plateforme d'application BPM pour le développement d'applications. La base BPM offre une grande extensibilité pour s'intégrer à l'informatique de l'entreprise, avec une bonne auditabilité, traçabilité et conformité ; le déploiement d'applications individuelles à l'aide de conteneurs offre une livraison plus rapide, une portabilité et une gestion plus facile.
Avec les « Self-Contained Apps », les équipes DevOps peuvent déployer plus facilement des applications complexes, les livrer en continu et soutenir ainsi l'innovation pour accélérer leur mise sur le marché. Chaque application indépendante peut être déployée individuellement, indépendamment et rapidement, afin d’offrir toujours plus de valeur ajoutée.
Les DSI et leurs équipes techniques se réjouiront de voir se développer les Applications Indépendantes pour les raisons suivantes :
- Le déploiement des Applications Indépendantes se traduit par une mise en production plus rapide des applications. Comme il n'est pas nécessaire de prendre en compte l'interopérabilité et l'intégration entre un groupe d'applications lors du développement, celui-ci est plus rapide, les tests plus faciles et les applications plus faciles à maintenir.
- La mise à l'échelle des Applications Indépendantes est plus simple et elle peut être appliquée à chaque application individuellement.
- Les coûts de maintenance des applications sont réduits, car des mises à jour moins importantes et plus régulières sont enfin possibles.
- Il devient plus facile de mettre en œuvre plusieurs projets, optimisant l'efficacité et la productivité des équipes de développement et donc, le retour sur investissement.
- Les projets d'automatisation et d'application métier s'adaptent plus facilement aux évolutions de l'entreprise ; les équipes informatiques peuvent réagir plus rapidement et en confiance en raison d’une interdépendance moindre entre les différentes applications.
- L'accélération de l'innovation offre une réponse plus rapide aux nouveaux besoins de l'entreprise et, de fait, un certain avantage concurrentiel.
- Les équipes contrôlent mieux leur maintenance et les temps d'arrêt, car chaque Applications Indépendante ne dépend plus d'un calendrier lié à une plateforme partagée.
En savoir plus sur les applications indépendantes avec Bonita ici.