"Les API, c'est une porte d'entrée, c'est le coeur du projet. Cependant ce coeur n'est pas forcément testable facilement" explique Romain Sylvian. C’est à partir idée de rendre la gestion de l’API plus aisément modulable que Romain Sylvian et Mohamed Errbel, étudiants à Epitech et à HEC, ont fondé Goopil, la startup lauréate du Startup Engineering Challenge organisé par l’Université de Stanford. Goopil est un testeur d'API, derrière cet acronyme se cache l'interface de programmation, le système qui permet d'utiliser un service. Or si l'on souhaite apporter des modifications à une API, il s'agit de travailler sur le système en fonctionnement, ce qui peut s'avérer coûteux tant en termes de temps que de ressources. Goopil est donc un système qui permet de virtuellement tester les modifications apportées à celles-ci sans toucher réellement au système. "Nous sommes partis d'un constat assez simple" explique Mohamed Errbel, "Il faut faire des test et personne n'aime les faire, personne ne les fait vraiment en réalité, il s'agit plutôt aujourd'hui d'une démarche à posteriori, on observe l'apparition d'éventuels problèmes et on les répare." L'utilité de Goopil est ainsi celle de simplificateur du processus, en proposant une interface permettant de rationaliser l'approche en réduisant les taches annexes nécessaires aux tests grâce à une structure plus intuitive.
Simplifier ce qui existe
"Concrètement, au fil de nos expériences professionnelles nous avons eu l'occasion de voir que les API posaient certains problèmes. Dans les grandes entreprises des services entiers dédiés aux tests sont mis en place mais leur fonctionnement en est long et fastidieux due au grand nombre de tests", rappelle Mohamed Errbel, "Les tests qui existent en ce moment n'ont pas réellement été développés pour cette utilisation, il s'agit plutôt de "bricoler" avec les outils que l'on a pour essayer de tester" rajoute Romain Sylvian. De même dans les entreprises de taille réduite, la technicité nécessaire à la modification d'API ne permet pas une flexibilité suffisamment importante. A partir de ce constat, les co-créateurs de Goopil ont mis en place un programme permettant de réduire le temps dévolu au test en développant un service spécialisé. Goopil permet ainsi de simuler des actions sur l'API comme si les utilisateurs interagissaient avec le service, et permettre ensuite de faire un bilan des éventuelles erreur dans la programmation. L'outil est modulable et s'appuie sur le fait que toutes les API ont un tronc commun, ce qui permet, après téléchargement de la version Alpha disponible sur le site, d'adapter Goopil a sa propre API.
Répondre à l'évolution des besoins
L'équipe de Goopil ne compte pas en rester là, et si la version présentée au concours leur a permis de remporter l'épreuve, celle-ci n'en est pas encore à son potentiel maximal. "Nous sommes des adeptes du lean startup, nous construisons avec les développeurs des produits qui répondent directement à leurs besoins réels" explique Mohamed Errbel. L'équipe a ainsi décidé, afin de remercier la communauté de développeurs qui, grâce à leur soutien, leur a permis de gagner le concours, de proposer leur système sous format Open Source afin d'en élargir l'utilisation. Le but, selon Romain Sylvian, est "d'améliorer l'outil, en Open Source nous donnons la possibilité aux développeurs qui se sont intéressés à notre projet de prendre quelques minutes pour l'améliorer pour en faire l'outil le plus complet possible". Cette version Open Source qui devrait être mise en ligne courant Novembre devrait permettre, selon les voeux de Mohamed Errbel, de "faire avancer la communauté technique grâce au partage." Si cet outil peut paraître très technique, son application ne s'en avère pas moins utile dans l'amélioration de la productivité : à défaut de données chiffrées qui devraient être collectées dans le courant de la semaine, Mohamed Errbel s'est cependant essayé à une estimation du gain de rapidité. Avec une accélération entre 2 et 5 fois plus forte, Goopil pourrait devenir un outil essentiel du traitement de l'API au sein des entreprises.