- La définition d’une plateforme
Un terme de plus en plus courant aujourd’hui dans le monde informatique est le terme « plateforme ». Si nous reprenons notre dictionnaire de Stuff as a Service nous voyons apparaitre le mot PaaS pour Plateforme as a Service. Ce terme signifie qu’on met à disposition des informaticiens un environnement déjà configuré où ils n’ont plus qu’à développer ou déployer leurs applications. On définit souvent la plateforme comme une ensemble de technologies et d’infrastructures cohérentes afin de faciliter le développement d’autres applications.
En plus de gagner en rapidité vous vous assurez que le développement fait sur la plateforme est en adéquation avec les règles du système d’information. Vous offrez donc un cadre sécurisé à vos employés tout en leur laissant une grande liberté dans la création. Les plateformes peuvent aussi être des applications qui servent à bâtir d'autres applications.
La plateforme devient donc souvent le moyen de réunir le savoir-faire technique de la DSI et la connaissance métier des utilisateurs afin de fournir une application la plus utile possible. Dans cette méthode de co-conception c’est en effet le métier qui est facteur du succès de son application car il décide lui-même de comment les processus doivent être informatisés. La DSI prendra alors vraiment un rôle de conseil et de support notamment sur la façon d’intégrer l’application et les données métier au système d’information. Cette posture que prend la DSI doit dans les années à venir, être de plus en plus la norme. On considère souvent que la DSI doit commencer à se positionner en tant que coach digital et la mise en place de plateformes va dans ce sens.
- Le Citizen Developer 2
Souvenez-vous de ce qu’on vous disait en dans de précédents billets. Nous vous parlions du Citizen Developer, ce personnel très proche du métier, voire lui appartenant, est souvent la réponse du métier à une DSI trop longue à mettre en place les solutions demandées. Nous avions conclu que ce rôle allait de plus en plus apparaitre au sein des entreprises grâce à des compétences informatiques de plus en plus faciles à avoir. Si l’idée du Citizen Developer est donc bonne, c’est en général sa mise en pratique qui est nocive au système d’information. Une solution pour encadrer ce développement hors DSI est donc vous l’aurez compris la mise en place de plateformes.
En effet si on ne peut pas gérer tous les développements faits par le métier, nous pouvons l’encadrer. La plateforme offre un environnement conforme, permet de sécuriser les données de l’application et de gérer toutes les applications qui tournent sur cette plateforme. En combinant Plateforme et Citizen Developer vous créez un écosystème homogène, sécurisé et facile à gérer pour la DSI, en plus d’offrir au métier des applications agiles et efficaces.
En plus d’un cadre technologique, il est aussi important de mettre en place un cadre légal. Une application créée par un utilisateur métier qui n’a pas le mandat pour le faire lui appartient, si elle devient majeure dans l’utilisation des processus de l’entreprise vous avez alors une application majeure voir critique qui n’appartient pas à votre entreprise et qui peut disparaitre à tout moment. Comment cela se fait-il ?
La loi de la propriété intellectuelle en informatique est très stricte. Un logiciel créé par un employé appartient par défaut à l’entreprise qui l’emploie, la création du dit logiciel devra voir été faite dans l’exercice de ses fonctions ou d’après les instructions de son employeur, de plus aucune clause de son contrat de travail ne doit avoir pour effet de priver d’effet les dispositions précitées. Ce n’est généralement pas dans les prérogatives de l’utilisateur métier de créer des applications, l’article L.113-9 du code de propriété intellectuelle (http://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006069414&idArticle=LEGIARTI000006278890) ne s’applique donc pas aux utilisateurs métier.
Faire rentrer du développement de logiciel dans la fiche métier d’un utilisateur le transforme en Citizen Developer et par conséquent les logiciels créés appartiennent légalement à l’entreprise.
- Generative Object
Pour prouver ce que nous avançons nous allons regarder de plus près une plateforme et voir ainsi les fonctionnalités qu’elle propose qui pourrait réellement aider à lutter contre le Shadow IT. La première est Generative Object, qui nous propose donc une plateforme qui dit répondre aux besoins de productivité des utilisateurs métiers tout en satisfaisant les contraintes de sécurité et de flexibilité de la direction informatique.
D’abord on peut créer une application sans ligne de code et donc sans connaissance technique en matière de développement. Idéal pour un Citizen Developer ou un autre utilisateur final donc. Le développement d’une application ne prend que quelques jours.
Un projet qui a nécessité de consolider une trentaine de sources de donnée et de suivre tout le processus de la gestion des pièces d’ingénierie jusqu’au suivi des expéditions a été réalisé en 6 mois. Un très bon Time-to-Market pour le métier.
Nous avons avec cette plateforme un seul endroit qui répertorie plusieurs solutions métier et d’où on peut gérer les droits d’accès des utilisateurs. Ce référentiel d’applications métier permet donc de facilité l’accès et la gestion des applications construites sur cette plateforme.
Le cœur des applications étant les données qu'elles manipulent, Generative Object permet de se connecter à différentes sources d'information, les bases de données, les fichiers, les API. Il est possible de remonter des informations dans l'application pour s'en servir et la partager facilement.
Generative Object le défende eux même, leur plateforme permet au DSI de réduire le Shadow IT en standardisant les développements, mieux maitriser leur système d'information en ayant des applications qui manipulent les données de façon fiable et sécurisée. Les nombreux connecteurs au format de donnée permettent même de passer de tableur Excel ou base Access en mode Shadow IT à des applications métier connues et pouvant être gérées par la DSI. La plateforme a donc un effet curatif et permet ensuite un développement du système d'information plus sain.
- Microsoft PowerApps
Début décembre 2015 Microsoft a annoncé le produit PowerApps, une plateforme permettant aussi de créer des applications. Une plateforme permettant à des personnes qui ne savent pas coder (comprenez donc le métier) de pouvoir quand même développer les applications dont ils ont besoin. Vu la fraicheur de l’application il a encore peu de retour dessus, en revanche l’application est aujourd’hui testable par tous avec déjà des guides pour apprendre à créer ou modifier des applications PowerApps. D'après les tutoriels pour bien démarrer avec PowerApps, disponibles sur leur blog on voit que la construction d'une IHM est en effet assez aisée même pour un novice car tout se fait avec la souris.
La plateforme de Microsoft permet aussi de se connecter à différentes sources de données et applications afin d'effectuer des workflows. On peut faire très vite le parallèle avec le site web IFTTT qui propose de se connecter à des applications et de mettre en place un trigger pour qu'un événement provoque une certaine action. Par exemple pour ces recherches j'ai, grâce au site, créé un workflow qui m'envoie un courriel quand un tweet comportant le hashtag #ShadowIT est posté. Même si c'est encore un peu tôt pour le dire, PowerApps propose des fonctionnalités similaires, plus poussées pour satisfaire bon nombre de besoins.
Ce qu'on apprend avec PowerApps ou IFTTT c'est qu'on peut avoir de nombreux besoins qui peuvent être complétés en quelques instants pour peu qu'on nous donne les outils nécessaires. Auparavant, pour créer un workflow de twitter jusqu'à mes mails j'aurais dû ouvrir mon IDE, me connecter à l'API de twitter, requêter dessus, puis coder l'envoi de courriel à mon adresse. On voit bien que la solution offerte par la plateforme est bien plus facile à utiliser, bien plus modulable car je peux changer mon workflow facilement, il n'y a pas besoin de compétences poussées en informatique pour le réaliser et surtout le service n'est fourni que par un seul outil facilement gérable par la DSI.
- L'avantage pour les DSI
En plus de ces avantages pour le métier, la DSI y trouve aussi son compte. Elle guide le métier dans cette nouvelle façon de créer des applications. Elle ne doit plus maintenant gérer des applications, mais plutôt les plateformes qui permettent la mise en œuvre d'applications. Même si concrètement la DSI restera responsable des gros systèmes informatisés de l'entreprise qui gèrent les données importantes de l'entreprise, elle peut laisser le métier gérer les petites applications qui répondent à de plus petits besoins, créées grâce à la mise en œuvre de plateforme.
La plateforme soutient donc plusieurs applications et c'est très important pour un système d'information qui devient de plus en plus connecté. Concrètement l'avantage d'une plateforme c'est d'avoir un socle technologique commun, on évite donc ainsi la dispersion dans plusieurs technologies parfois similaires. Ce socle commun facilite aussi l'homogénéité du système d'information et les montées en versions des applications.
Imaginez que vous ayez 10 applications tournant sur la plateforme Generative Object. Si vous décidez de développer en interne un connecteur pour que votre plateforme communique directement avec votre Active Directory, vous venez en un développement de relier 10 applications en même temps.
Plus important encore les plateformes offrent un cadre sécurisé, ce qui permet de s’assurer que les données de l'entreprises ne deviennent pas hors de contrôle en étant utilisées dans des systèmes dont nous n'avons aucun moyen de contrôler les accès.
 
- En conclusion
Les plateformes sont donc un des moyens techniques les plus efficace pour refaire travailler métier et DSI ensemble. Elle offre une grande agilité pour le métier tout en permettant à la DSI de contrôler le système d'information. Elles vont être amenées à se développer de plus en plus et feront à coup sûr partie du paysage applicatif de demain. L'avantage est que la DSI trouve dans les plateformes une place qui lui convient. Elle garde le contrôle sur les données et aide le métier à réaliser leurs propres applications. Nous avions dit au début de nos recherche que le problème des DSI avec la digitalisation était que les éditeurs préférèrent s'adresser maintenant directement au métier. Ce n'est pas le cas avec les éditeurs de plateforme qui tentent aussi bien de séduire le métier que la DSI, ce qui lui permet de retrouver son rôle de gardien de l'information. Les plateformes servent à bâtir les DSI de demain qui fourniront aux utilisateurs finaux un accès libre aux outils informatiques dont ils ont besoin tout en maintenant une gouvernance informatique.