À mesure que sélection végétale - et l'agriculture en général - devient numérique et axée sur les données, un problème commun émerge : Comment les sélectionneurs et les biologistes peuvent-ils accéder à ces données et, surtout, les utiliser avec agilité et efficacité pour éclairer leur prise de décision ? La richesse des informations actuellement générées nécessite des solutions qui permettent l'interopérabilité des sources de données, la connectivité et la réutilisation des données entre les membres participants de la communauté. L'initiative Breeding API (BrAPI), dont la mission principale est de "permettre l'interopérabilité entre les bases de données sélection végétale ",rend déjà l'interopérabilité possible. Mais va-t-elle assez loin ?

Comme en témoigne le grand intérêt suscité par le dernier hackathon BrAPI, un nombre croissant de développeurs adoptent la norme ouverte pour les systèmes actuels et nouveaux de gestion des informations sur l'élevage. Une norme ouverte atténue le problème de l'interopérabilité des bases de données, réduisant ainsi le temps de mise sur le marché des applications, ainsi que des moteurs d'analyse, de la collecte de données sur le terrain, etc. Une fois l'interconnexion des bases de données réalisée, l'étape suivante consiste à rendre ces sources de données interconnectées plus faciles à utiliser par les membres de la communauté et les parties prenantes qui n'ont pas forcément d'expertise en programmation ou en informatique. Nous pensons que BrAPI peut être utilisé ici aussi.

BrAPI nous permet déjà de créer des applications qui peuvent être utilisées par l'ensemble de la communauté sans avoir besoin de connexions spécifiques au système, mais nous avons l'idée d'aller encore plus loin.

Et si nous pouvions tirer parti de la norme BrAPI combinée à des outils de génération de code pour créer des applications à portée limitée pour l'usage unique et le prototypage rapide ?

Quelle valeur cela pourrait-il apporter aux laboratoires et aux chercheurs qui n'ont pas accès à de grandes équipes de développement ? Combien de temps pouvons-nous réduire entre l'idée et l'exécution ?

En tant qu'équipe detechnologie de sélection des plantes sur Laboratoire d'Innovation pour l'Amélioration des Cultures, nous posons quelques questions essentielles.

A quoi cela ressemblerait-il ?

Imaginez une page web où un chercheur pourrait très rapidement sélectionner un ensemble de points de terminaison BrAPI avec les paramètres appropriés pour récupérer des données. L'utilisateur disposerait ensuite d'une zone de texte pour saisir le code R afin d'analyser les données récupérées. Il est ensuite invité à sélectionner les points de terminaison BrAPI pour télécharger les résultats. Une fois qu'il a terminé le processus, il télécharge un fichier avec un logiciel pour faire exactement cela. Après avoir ajusté quelques paramètres, le chercheur peut l'exécuter directement depuis son ordinateur ou le déployer sous forme d'image Docker. Ce fichier peut facilement être partagé et distribué pour que d'autres puissent s'en inspirer et l'améliorer.

Comment cet outil réduirait-il le temps de développement ?

Pour les petits groupes de recherche, le plus grand obstacle au développement des applications logicielles nécessaires peut être de soutenir une équipe de développement complète. Dans de nombreux cas, l'une des plus grandes dépenses de temps en termes de ressources de développement consiste à poser les bases. Bien que leur portée soit beaucoup plus limitée que celle d'un cadre entièrement fonctionnel, ces systèmes à usage unique peuvent être créés beaucoup plus rapidement, la plupart de leurs couches de transaction et de formatage des données étant générées par des algorithmes et entièrement réutilisables. Pour un chercheur, cela signifie que le seul composant restant à coder est le calcul lui-même. Mieux encore, ce segment de calcul est écrit en R, ce qui réduit la courbe d'apprentissage de l'outil.

Est-ce que c'est possible ?

D'un point de vue technique, la construction d'un tel système semble tout à fait réalisable. La norme BrAPI est stockée dans GitHub sous forme de fichiers yml et exploite déjà des outils de génération de code comme Swagger-codegen et Openapi-generator pour mettre rapidement en place des clients et des serveurs de test. Ces deux outils de génération de code sont des produits open-source qui sont déjà extensibles et qui nécessiteraient quelques modifications pour répondre à notre cas d'utilisation. Si nous pouvons encapsuler cette génération de code dans un ensemble de paramètres, il serait alors facile de créer une interface web avec laquelle un chercheur pourrait interagir. La dernière étape consisterait à envelopper l'application résultante dans une application déployable et à la livrer à l'utilisateur.

Quelqu'un a-t-il déjà essayé de construire ce système ? La réponse est oui, en quelque sorte. L'idée de rendre le processus de création d'applications logicielles plus accessible n'est pas nouvelle ; en fait, des logiciels qui résolvent un type de problème similaire existent déjà. Des outils comme Galaxy et Biocontainers font partie d'une constellation d'applications conçues pour faciliter l'écriture et le partage de flux d'analyse reproductibles pour les non-développeurs dans différents domaines. Notre idée, à la base, partage ces principes, mais avec la distinction principale que nous visons à tirer parti de la connaissance du domaine qui est déjà capturée dans la spécification BrAPI. Tirer profit de cette connaissance du domaine devrait, au moins en principe, rendre ces applications spécifiques à l'élevage plus faciles à écrire.

Conclusions

Les "Brapid Apps" résultant de notre boîte à outils prototype as-a-service pourraient permettre aux programmes de sélection de personnaliser les applications pour les systèmes de gestion de la race existants afin de mieux répondre à leurs besoins.

Et une fois qu'il sera opérationnel, il sera possible de construire de nouvelles fonctionnalités. Une intégration Kubernetes pourrait permettre de déployer à l'échelle un ensemble de ces Brapps pour répondre à des besoins de haut débit. Avec un ensemble diversifié de "Brapid Apps", un marché d'applications pourrait même être créé pour rendre la collaboration rapide et facile.

Le service Brapid App n'est qu'un rêve pour l'instant, mais il pourrait un jour révolutionner l'espace technologie de sélection des plantes . N'hésitez pas à nous dire ce que vous en pensez !

Cet article a été rédigé par les ingénieurs logiciels de l'ILCI Sam Bouabane et Francisco Agosto-Pérez.

Apprenez-en davantage sur leur travail avec l'équipe de Laboratoire d'Innovation pour l'Amélioration des Cultures technologie de sélection des plantes .