• Aucun résultat trouvé

Le projet de développement d’un système d’information pour l’analyse du transcriptome a été initié par un groupe d’étudiantes (C. Truntzer, A. Laugraud, C. Keime et C. knibbe) de la filière Bioinformatique et Modélisation de l’INSA de

Lyon en 2002. L. Duby (IUT informatique, Grenoble II) a poursuivi le travail au cours d’un stage de trois mois au laboratoire BF2I. Puis, avec l’aide de l’action bioinformatique des génopoles, un ingénieur CDD (D. Crisan) a été recruté pour une période d’un an, ce qui a permis une implémentation du modèle de la base de données. Le projet a ensuite été poursuivi par T. Chaari (Thèse LIRIS), et enfin A. Cros (Master BF2I/LIRIS) est en train de le finaliser. Ces étudiants ont tous été encadrés pour la partie informatique par F. Laforest (MdC, INSA) et A. Tchounikine (MdC, INSA) que je remercie très chaleureusement. La base a été publiée (Laforest

et al. 2005), seul un résumé succinct suivi d’une analyse critique sera présenté

ci-après. SITRANS est consultable à l’URL suivante : http://sitrans.insa-lyon.fr.

Spécification de la base de données

La base SITRANS est conçue pour l’archivage des données d’analyse du transcriptome. Cet archivage doit permettre la consultation, l’échange et la publication de données d’expression (Stoeckert et al. 2002). Le groupe international MGED (http://www.mged.org) a défini un standard de description d’une expérience de puce à ADN, le format MIAME (Minimal Information About Microarray Experiment). Ce standard est très peu formalisé et possède de nombreux champs descriptifs en texte libre. Il n’est donc pas très performant pour effectuer des requêtes de consultation. La base SITRANS est construite en suivant le processus expérimental de l’amont vers l’aval, elle respecte le formalisme MIAME, mais possède une description plus précise. Enfin, elle permet une gestion qualitative des ressources de la plateforme (date de réception, type de conditionnement, localisation des produits).

Le schéma de la base a été défini grâce à une modélisation UML permettant une description de l’ensemble des tables et de leurs relations. Ce schéma a été construit à partir du schéma de la base Mediante (http://www.microarray.fr:8080/mediante) développée initialement par H. Prieto et P. Barbry (Génopole Nice). Elle comprend un total de 44 tables. Elle est organisée en cinq grandes parties : (1) description de l’expérience ; (2) description et dépôt des sondes ; (3) description des échantillons et du marquage ; (4) description des hybridations ; et (5) description des images (figure 7). Dans chacune de ces étapes, l’utilisateur renseigne de très nombreux champs comme les protocoles utilisés, les dates des différentes étapes d’expérimentation, et les noms et localisation des tubes et plaques utilisés. Les fichiers de sorties des robots « rearrayer », « spotter », station d’hybridation et scanner sont téléchargeables. Le système assure donc une traçabilité complète de l’analyse. Les règles de cohérence de la base ont été établies, un certain nombre de champs sont obligatoires, d’autres sont facultatifs. Des champs en texte libre ont été conservés pour recevoir les commentaires généraux, mais la majorité des informations ont été structurées.

Figure 7. L’interface de saisie de SITRANS présente les différentes étapes du

processus dans un menu déroulant situé sur la gauche de l’écran..

En plus des données saisies par l’utilisateur, il existe des « données fournies » définies par l’administrateur de la plateforme. Ces données ne peuvent pas être modifiées par l’utilisateur. Ce sont par exemple les lots de lames stockées, les noms des comptes utilisateurs et les protocoles des appareillages. De même, il existe une hiérarchisation des utilisateurs avec un administrateur (gestion des comptes et des données fournies), des utilisateurs (saisie et consultation) et des visiteurs (consultation uniquement). Enfin, un utilisateur peut interdire la consultation de ces expériences pour préserver des données confidentielles.

Implémentation de la base de données

SITRANS est une application Web. L’architecture du système est de type 4-tier, c’est-à-dire que les différentes parties de la base et les différentes taches sont gérées à quatre niveaux de service différents (figure 8). La couche la plus profonde est la base de données. Le système de gestion de base de données (SGBD) est PostgreSQL. Ce SGBD a été choisi pour sa fiabilité. La base de donnée dialogue avec le serveur d’applications (JBOSS) au moyen d’objets Entreprise JavaBeans de type Entity (EJB). Ces EJB sont des classes java de différents types. Par exemple, les « entity » correspondent à la formalisation objet de la base UML (les tables), alors que les « sessions » représentent les fonctionnalités de la base. Le serveur JBOSS reçoit des instructions du serveur http Apache. Ce dernier interprète les

requètes émises par le client Web, pour les transmettre à la couche inférieure. Enfin, la couche « présentation » (interprétée par le navigateur Web) permet à l’utilisateur d’interagir avec les fonctionnalités offertes par SITRANS à travers une interface graphique. Cette couche se base sur des Servlets et des JSPs qui sont des technologies utilisées pour développer des pages Web dynamiques. Les Servlets sont des classes Java appelées par des requêtes http, dont le rôle est de générer des pages HTML. Typiquement, les Servlets accèdent au système d’information (par l’intermédiaire des deux serveurs JBOSS et Apache) pour générer le contenu des pages HTML demandées. La technologie JSP est complémentaire aux Servlets. Une page JSP est une page HTML contenant du code Java délimité par des tags XML. Ce code est chargé de générer le contenu dynamique des pages HTML. Dans l’architecture de SITRANS, à chaque étape de description du projet correspond une Servlet. Chaque Servlet gère deux pages JSP : une pour la saisie et l’affichage des informations concernant l’étape courante et la deuxième présentant une synthèse de l’étape en cours.

Figure 8. Architecture technique de SITRANS.

Analyse critique

La conception de la base SITRANS a été une expérience de travail interdisciplinaire très enrichissante. Même si le développement n’a pas été réalisé de

novo, l’adaptation du modèle Mediante aux spécificités de la plateforme Lyonnaise a

nécessité une interaction très forte entre les informaticiens et les biologistes. Les deux partenaires ont tiré des bénéfices de cette expérience.

Pour les biologistes, le système SITRANS représente un cahier de laboratoire électronique assurant un meilleur contrôle des biais techniques au sein d’un même projet, mais également entre les différents projets de la plateforme. La réflexion sur la modélisation de la base a permis une prise de conscience de la nécessité du développement d’une démarche qualité dans ce type d’expériences coûteuses et

complexes. A. Cros (Master, BF2I) développe actuellement un module permettant l’exportation au format MAGEML (format XML pour la description d’une expérience de transcriptome) de façon à publier automatiquement un projet dans une base de données internationale depuis SITRANS. Enfin, le système peut s’avérer intéressant pour l’aide à la conception de plans expérimentaux. D’une façon très simple, un utilisateur pourra rechercher un projet similaire dans la base de façon à s’en inspirer pour construire sa propre expérience. De façon plus élaborée, quatre étudiantes de la promotion BiM 2005 (V. Fasolo, F. Defay, V. Perie, N. Oudin), travaillent à la mise en place d’un système d’aide pour la construction de plans d’expérience, l’analyse qualité et la normalisation des données d’expression. Ce travail, réalisé dans le cadre de leur projet annuel, devra être raccroché au système SITRANS.

Pour les informaticiens, la conception d’un système d’information de la taille et de la complexité de SITRANS représente un intérêt en soi. Par ailleurs, la thèse de T. Chaari (LIRIS, INSA) est focalisée sur l’adaptabilité des applications au contexte d'utilisation dans les systèmes d'informations. Elle consiste à définir et développer des méthodes de représentations des données qui soient adaptées et adaptables pour chaque utilisateur d’un même système d’information. Par exemple, dans le cas de SITRANS, la consultation linéaire des projets (sur le même modèle que celui de la saisie) ne présente que très peu d’intérêt. Un prototype a été développé permettant d’accéder aux données de la base à partir de n’importe quel objet (par exemple un type de lame). Il est ensuite possible de naviguer dans la base en effectuant des requêtes liées à cet objet, les requêtes pouvant porter sur les liens associés à cet objet ou sur des contraintes de la liste visualisée :

- Quels sont les utilisateurs ayant utilisé ce type de lame ? - Quels types de protocoles de marquage ont-ils utilisés ?

- Parmi ceux qui ont utilisé le type Y, a quelle date ont-ils réalisé les expériences et ont-ils fait référence à des problèmes spécifiques ?

Un système d’onglet permet de retrouver l’historique des requêtes et de se situer dans la base. Une représentation sous forme d’arborescence permet d’avancer ou de reculer dans les données par simples « clic ». Cet exemple de requête simple montre la pertinence d’un tel système permettant à chaque utilisateur de construire une visualisation personnalisée de la base pour répondre à des questions spécifiques.