Letondal
Le manque de flexibilité des nombreux outils d'analyse disponibles pour les biologistes limite souvent leur utilité. La solution la plus connue à ce problème est la programmation. Mais comment donner accès à cette discipline complexe à ceux des biologistes pour qui cela n'est pas un but en soi ? Pour répondre à cette question nous avons d'abord constaté que la nature du problème - la programmation, son apprentissage et son utilisation effective dans le cadre de travail - n'était pas bien définie. L'objectif que nous devions nous fixer était-il de transformer des biologistes en informaticiens, ou bien de leur permettre de bénéficier de la programmation pour faciliter leur travail lorsque cela est nécessaire ? Nous pensons qu'à force de considérer la programmation d'une part comme un but en soi et d'autre part comme une activité parfaitement définie par la théorie informatique (Turing) et par les pratiques professionnelles (programmer c'est construire un logiciel), à force de constater qu'un logiciel est quelque chose qui s'utilise, mais qu'il est quasiment interdit d'en faire autre chose, il y a peut-être des solutions au problème que nous posons ici qui n'apparaissent pas aisément. Il nous a notamment semblé utile de re-situer l'activité de programmation comme une activité secondaire et non-professionnelle, ayant sa place dans le cadre d'une utilisation avancée et des interactions normales avec le logiciel, en tenant compte de l'idée que le travail de construction du logiciel ne peut qu'être partagé entre professionnels et experts du domaine de la biologie. C'est pour ces raisons et afin de répondre au problème de manière concrète et située dans un contexte que nous avons adopté une démarche de conception participative à travers l'organisation d'ateliers de brainstorming et maquettage (papier, vidéo...). Nous sommes ainsi arrivés à l'idée d'application complètement programmable à partir de son interface, principe ayant pour avantage de constituer d'abord un outil de travail utilisable sans programmation, tout en donnant aux utilisateurs une liberté de décision, guidée mais totale, sur la manière dont l'outil fonctionne, c'est-à-dire son code, ainsi qu'un environnement d'apprentissage riche d'exemples centrés sur le travail réel de l'utilisateur et permettant une programmation incrémentale. Un prototype, biok, a été réalisé. Il comporte des composants pour l'analyse de séquences comme un éditeur d'alignement, un outil d'affichage de courbes... L'éditeur d'alignement fonctionne comme un tableur, et dispose d'un mécanisme programmable d'étiquetage graphique pour visualiser des propriétés biologiques. L'architecture de cet environnement repose sur la notion d'objet graphique, permettant la composition d'objets biologiques par des formules et l'accès structuré au code de l'application grâce à des technique réflexives. L'originalité de ce prototype est d'ouvrir plusieurs niveaux d'utilisation/programmation au biologiste, allant de l'utilisation interactive à la programmation par objets en passant par la programmation de formules ou de scripts et de fonctions d'étiquetage graphique.
Beaudouin-Lafon Michel
Dernière mise à jour : 3 septembre, 2013 - 17:50