Vous êtes sur la page 1sur 78

M i n i s t r e d e

l' E d u c a t i o n N a t i o n a l e

UNIVERSITE MONTPELLIER II
- Facult des Sciences -

Master Intgration de Comptences Parcours Bioinformatique

RAPPORT DE STAGE
effectu

De Mars Septembre 2010 par

DJARI Anis
Directeur du stage de lentreprise : Ich Alexandra, Responsable systmes dexpression Directeur du stage de lUniversit : RANWEZ Vincent

Mise en place dun portail bioinformatique ddi lannotation de plasmides dexpression.

R E M E R C IIE M E N T S REM ERC EM ENTS


Je tiens remercier dans un premier temps Pascale Bouill pour mavoir accueillie au sein de Vectalys et mavoir permis dy raliser ce stage. Je souhaite ensuite exprimer toute ma reconnaissance Alexandra Ich. En tant que responsable de stage elle ma accord confiance et autonomie tout au long de ces 6 mois. Je la remercie pour sa patience, sa disponibilit et ses prcieux conseils, notamment en bioinformatique analytique. Je tiens remercier tout particulirement Isabel Cassa, secrtaire de direction, pour son soutien et sa bonne humeur au quotidien durant ces 6 mois o nous avons partag le mme bureau. Je tiens enfin tmoigner mes remerciements toute lquipe de Vectalys qui ma accueilli trs chaleureusement et qui a grandement contribu au bon droulement de ce stage.

T A B L E D E S M A T IIE R E S T AB L E D E S M AT E R E S
Chapitre 1 : IPrsentation entreprise ................................................................................. 7

Fondation.................................................................................................................... 7 I.1 Conditions et Avantages dune JEI : .................................................................... 7

II - Activit ........................................................................................................................ 8 III - Localisation ................................................................................................................. 9 IV - Organisation des diffrents services : ........................................................................10 Chapitre 2 : IContexte et Objectifs du projet .....................................................................13

Contexte Biologique ...................................................................................................13 I.1 I.2 La Transgnse ..................................................................................................13 Les Vecteurs Viraux............................................................................................15

II - Positionnement du projet ...........................................................................................20 II.1 Objectifs dtaills du stage..............................................................................20

III - Organisation du stage ................................................................................................21 Chapitre 3 : IProblmatique Mthodologie Outils .......................................................22

Problmatique et besoins ..........................................................................................22

II - Listing des fonctionnalits et cahier des charges .......................................................23 III - Mthodologie .............................................................................................................25 III.1 III.2 III.3 III.4 Chapitre 4 : IMoyens informatiques .....................................................................................25 logiciels utiliss ...............................................................................................25 Langages utiliss ............................................................................................27 Organisation du Dveloppement .....................................................................28 SYNTHESE DE LA SOLUTION APPORTEE ...............................................30

Analyse ......................................................................................................................30 I.1 Fonctionnalits et limites de PlasMapper ............................................................31

II - Mise en place du portail Intranet ................................................................................32 II.1 II.2 Mise en Place et Traitement des Donnes ......................................................32 Interfaces graphiques et Design Web ..............................................................45
1

Chapitre 5 : I-

CONCLUSION.............................................................................................57

Rsultats Obtenus .....................................................................................................57

II - Difficults Rencontres ..............................................................................................62 III - Apports ......................................................................................................................62

ANNEXES IDfinition des Technologies utilises .........................................................................65

II - Les diffrents formats de squence ADN utiles pour le projet : ..................................68 III - Diagramme de cas dutilisations du portail Bioinformatique .......................................70 IV - Diagramme de cas dutilisations de PlasMapper ........................................................71 V - Diagramme de classes Simplifi de PlasMapper .......................................................72 VI - Diagramme de cas dutilisations de GbFeatExtractor .................................................73 VII - Fichier Web.xml de configuration de PlasMapper ......................................................74 VIII - Diffrents styles utiliss pour le portail Bioinformatique ............................................75

T A B L E D E S IIL L U S T R A T IIO N S T AB L E D E S L L U S T R AT O N S
Figure 1 Les diffrentes applications du transfert de gnes ............................................... 8 Figure 2 Organigramme du personnel ..............................................................................12 Figure 3 coupe dun rtrovirus .........................................................................................16 Figure 4 gnome dun rtrovirus ......................................................................................16 Figure 5 Cycle rplicatif d'un vecteur rtroviral .................................................................17 Figure 6 diffrences entre le virus naturel et le vecteur driv du virus ............................18 Figure 7 La tri-transfection : 3 plasmides pour 1 vecteur ...................................................19 Figure 8 Construction dun Vecteur dfectif ......................................................................19 Figure 9 Rpartition du temps durant le stage..................................................................21 Figure 10 Fonctionnement du serveur d'application Tomcat ..............................................26 Figure 11 le modle MVC : design pattern dont le but est de dcomposer la vue, la couche mtier et le modle de donnes. ..........................................................................................29 Figure 12 - mthode pour l'intgration des informations sur le mismatch et l'organisme de l'lment gntique ..............................................................................................................39 Figure 13 - Optimisation du temps de traitement de GbFeatExtractor ..................................43 Figure 14 - Squelette Html utilis pour la charte graphique ..................................................46 Figure 15 - Accueil du portail Bioinformatique ......................................................................47 Figure 16 - Choix du Blast ....................................................................................................48 Figure 17 Interface Blast standard ....................................................................................49 Figure 18 - Interface Blast de deux squences .....................................................................49 Figure 19 Interface du Blast de deux squences ...............................................................49 Figure 20 - Interface PlasMapper .........................................................................................50 Figure 21 - PlasMapper : Paramtres optionnels ..................................................................51 Figure 22 - Interface Swing de GbFeatExtractor ...................................................................52 Figure 23 GbFeatExtractor : Rsultat aprs traitement ......................................................53 Figure 24 - Manipulation de Squence .................................................................................54 Figure 25 - Interface de Multalin ...........................................................................................55 Figure 26 - Multalin : Rsultat d'alignement ..........................................................................56 Figure 27 - rsultat annotation manuelle VNTI .....................................................................58 Figure 28 - Annotation PlasMapper ......................................................................................58 Figure 29 - motifs GenBank issues de PlasMapper ..............................................................59 Figure 30 - Squence GenBank issue de PlasMapper .........................................................60 Figure 31 - Visualisation d'un GenBank PlasMapper sous VNTI...........................................61

L IIS T E D E S A B R E V IIA T IIO N S L S T E D E S AB R E V AT O N S

AAV ADN ADNc API ARN Blast CDS CMV CSS EF1 EGFP IN IRES Jsp LTR MA MLV NCBI ORF ORI polyA PR RT VSV-G WPRE

Adeno Associated Virus Acide DsoxyriboNuclique ADN complmentaire Application Programming Interface Acide RiboNuclique Basic local alignment search tool CoDing Sequence Cytomegalo Virus Cascading Style Sheet Elongation Factor 1 Enhance Green Fluorescent Protein intgrase Internal ribosome Entry Site Java Server Page Long Terminal Repeat Matrice Murin Leukaemia Virus National Center for Biotechnology Information Open Reading Frame ReplicationOrigin poly Adnine Protase Rtrotrancscriptase virus de la stomatite vsiculaire pseudotyp avec glycoprotine G Woodchuck (hepatitus virus) Post trans Regulatory Element

IIN T R O D U C T IIO N NTRODUCT ON

La bioinformatique est un champ de recherche multidisciplinaire regroupant des domaines aussi varis que la biologie, linformatique, les mathmatiques et la physique. Elle a pour fonction principale la rsolution de problmes scientifiques poss par la biologie. En effet, elle seule permet dacclrer le traitement, lanalyse, ainsi que la gestion du flux dinformations quantitativement considrable notamment en gnomique. Par ailleurs, le bioinformaticien, de par ses connaissances en biologie, est en mesure de mieux communiquer et dapprhender de faon plus prcise les problmes des biologistes. Lors de mon stage de fin dtudes, ce sont surtout les aspects biologiques et informatiques que je dsirais dvelopper et cest donc ce qui a motiv mes recherches. Par ailleurs, deux autres critres me semblaient importants. Dune part, travailler dans une petite structure pour le dynamisme, la polyvalence et la constante volution de ce type de socit, dautre part, le secteur priv afin davoir une vision claire et concrte des besoins et du positionnement des biotechnologies dans le paysage industriel franais. Cest donc trs naturellement que le choix sest port sur Vectalys, start-up toulousaine cre il y a 5 ans, et spcialise dans la gnomique fonctionnelle. Bien que lactivit bioinformatique fasse partie du travail de Vectalys, il nexiste pas proprement parler de service bioinformatique. En effet, en raison de la petite taille de la socit, les activits bioinformatiques sont intgres celles de lquipe plasmide dirige par Alexandra Ich. Il tait donc trs intressant pour moi davoir lopportunit de participer la mise en place et la construction doutils informatiques ayant pour objectif lamlioration de lefficacit et de la productivit de lactivit de lentreprise.

Cela sest traduit par la mise en place dun portail intranet regroupant une srie doutils ddis principalement lannotation de plasmides dexpression, mais galement dautres manipulations faisant partie intgrante de lactivit quotidienne des biologistes molculaires. Ce projet regroupant une partie analyse/traitement de linformation et une partie Design web a pleinement rpondu mes attentes.

RESUM E RESUM E
Dpourvue de service bioinformatique proprement parl, Vectalys intgre ce type dactivit lquipe plasmide dont le rle principal est la construction de plasmides utiles la production de vecteurs viraux. La production ncessite plusieurs analyses bioinformatiques en amont, notamment pour lannotation manuelle des diffrents motifs gntiques constituant les squences fournies par les clients. Lors de ce stage jai pu automatiser cette tche ce qui a permis un gain de temps et de productivit pour lquipe plasmide. La mise en place de ce systme a galement t loccasion de crer un portail bioinformatique accessible toutes les quipes de lentreprise. Il sagit dune section regroupant des outils hbergs localement, mais galement la centralisation de liens vers des outils externes utiles toutes les quipes scientifique de lentreprise. Ce portail, qui est aujourdhui sa premire version devra voluer au grs des besoins internes de la socit.

Ce stage a t pour moi loccasion de mieux apprhender le mtier de bioinformaticien, et pour Vectalys, loccasion de donner plus de poids et defficacit la partie bioinformatique de ses activits.

C h a p iittr e 1 :: Chap re 1
I - F ONDATION

P R E S E N T A T IIO N E N T R E P R IIS E P RES EN T AT O N EN TREP R SE

Vectalys est une entreprise de biotechnologie spcialise dans la production de vecteurs viraux. Fonde en 2005 par le docteur Pascale Bouill, virologiste fondamentaliste du VIH. Il sagit dune socit par actions simplifies (SAS) au capital initial de 70 010 euros. Lentreprise bnficie du statut de Jeune Entreprise Innovante (JEI). Ce statut, mis en place par la loi de finances 2004, a vocation apporter un soutien significatif de jeunes entreprises trs actives en Recherche et Dveloppement (R&D) et leur permettre ainsi de passer le cap difficile des premires annes de leur dveloppement, sous rserve qu'elles rpondent certaines conditions.

I.1 -

C ONDITIONS ET A VANTAGES D UNE JEI :

Il faut remplir 5 conditions pour pouvoir prtendre au statut JEI : tre une PME au sens de l'Union europenne, avoir moins de huit ans, avoir un volume minimal de dpenses de recherche, tre indpendante, tre rellement nouvelle. Les avantages lis au statut de JEI concernent surtout les charges patronales : Exonrations sociales pour les chercheurs, les techniciens, les

gestionnaires de projet de recherche-dveloppement, les juristes chargs de la protection industrielle et des accords de technologie lis au projet et les personnels chargs de tests prconcurrentiels. Allgements fiscaux : exonration totale des bnfices pendant trois ans, suivie d'une exonration partielle de 50 % pendant deux ans.
7

II - A CTIVITE

Vectalys a dtourn les vecteurs viraux de leur premire application, la thrapie gnique, pour les utiliser en tant quoutils sur le march du dveloppement de modles cellulaires pour la validation de gnes candidats et le criblage de molcules. Fournisseur de produits et prestataire de service en Biotechnologie, lentreprise propose son expertise dans la construction et la production de vecteurs viraux. Elle offre un service de production faon pour ses clients issus principalement de lindustrie pharmaceutique, ou de la biotechnologie. Le transfert de gnes par vecteur viral, activit fondamentale de Vectalys, est principalement ddi aux applications suivantes : LIdentification et validation de gnes cibles in vitro et in vivo (gnes impliqus dans des pathologies par exemple) Dveloppement de lignes de cellules gntiquement modifies pour la production de protines ou des tests fonctionnels Test et criblage de nouvelles molcules (afin didentifier de nouveaux mdicaments potentiels) Thrapie gnique

Figure 1 Les diffrentes applications du transfert de gnes

Aprs stre consacre au dveloppement de technologies de production et de concentration/purification des vecteurs viraux, Vectalys sest lance fin 2008 dans le dveloppement de modles cellulaires issus de cellules souches et de modles animaux adultes pour la validation de gnes cibles. Avec une part importante de R&D, Vectalys participe galement des programmes de recherche au niveau europen tels que le programme Liv-es (dveloppement de thrapies innovantes pour les maladies associes au foie) ou encore le programme inter8

ples Ship-In (dveloppement de nouveaux systmes cellulaires innovants), tous deux runissant des experts acadmiques et industriels dans diffrents domaines. Le modle conomique initialement retenu de prestation de services volue progressivement vers un modle mixte de produits/services/royalties bas sur trois segments dactivits comprenant la vente de vecteurs viraux, la construction de modles cellulaires gntiquement modifis et enfin le dveloppement de modles animaux gntiquement modifis. Pour parvenir cet objectif, Vectalys prvoit un plan de dveloppement sur trois ans et une leve de fonds dun million deuros, dont 800 k de frais de R&D et 200 k de lancement commercial. En 2009, la socit a fait 708.000 de chiffre daffaires, dont 15 % provenant de linternational.

III -

L OCALISATION

En tant que jeune entreprise, Vectalys est actuellement domicilie dans une ppinire dentreprises : le Prologue Biotech . Il sagit dune structure dappui et daccueil pour les jeunes entreprises. Avec lappui des collectivits territoriales, le prologue assure lhbergement, laccompagnement et des services aux entreprises. Lentreprise bnficie dun suivi rgulier de ses activits et de son dveloppement, ainsi quune facilitation dans lintgration au sein du tissu local. Les locaux proposs sont adapts aux besoins de lentreprise. Les contrats de location ont une dure maximale de 6 ans. Les services proposs par la ppinire sont divers et varis, allant de laccueil des visiteurs, reprographie, internet, salles de runion et de confrence des quipements plus spcialiss tels que chambres froides, autoclaves. Autant dappareils qui ncessitent un investissement lourd pour une jeune entreprise.

Lentreprise dispose actuellement de 200 m de laboratoire agencs en plusieurs niveaux de confinement selon la rglementation en vigueur : 1 laboratoire de type L1 2 laboratoires de type L2 1 de type L3 1 quarantaine de type L2 Par ailleurs, 60 m de bureaux sont situs ltage. Depuis le mois de juin, lhtel dentreprise BioStep ( proximit du prologue) accueille les bureaux ainsi que le nouveau laboratoire L1 de 95m.

IV -

O RGANISATION DES DIFF ERENTS SERVICES :

Vectalys dveloppant plusieurs activits, une structure divisionnelle t mise en place. Ainsi, selon lactivit, on retrouve 4 services : Construction et production de plasmides Production, purification et concentration de vecteurs viraux Modles cellulaires gntiquement modifis (CGM) Modles animaux gntiquement modifis (AGM) Equipe Plasmides : Construction et production de plasmides dexpression ncessaires la fabrication des vecteurs viraux Accompagnement des clients dans le choix de systmes de sur ou sous-expression de gnes Activit bioinformatique qui comprend : Analyses de squences pralables aux constructions de plasmides (design de shRNA,

10

recherche

de

variants

dpissage,

de

polymorphismes ) Analyses de donnes de puces ADN Equipe Vecteurs : Production, purification et titration de Vecteurs viraux Dveloppement procds Equipe Modles Cellulaires : Etablissement et caractrisation de modles cellulaires gntiquement modifis. Equipe Modles Animaux : Gnration de modles animaux partir de cellules gntiquement modifis ou de vecteurs viraux. La gestion de projets est assure soit par une personne ddie, soit par le manager de lquipe concerne. Des personnes interviennent, de faon transversale, notamment pour la gestion qualit et la veille technologique. Deux services, qui ont pour objectifs le respect des normes, le support et la consolidation des techniques utiliss par Vectalys.

11

Direction Gnrale Pascale Bouill

Ressources Humaines

Finances

Veille

Qualit

Plasmides

Vecteurs

Modles CGM

Modles AGM

Manager : Alexandra Ich

Manager

Manager

Manager

2 Techniciens 1 stagiaire

1 Ingnieur 4 Techniciens

2 Techniciens

1 Technicien

Figure 2 Organigramme du personnel

12

C h a p iittr e 2 :: Chap re 2

C O N T E X T E E T O B J E C T IIF S D U P R O J E T CO N TE X TE E T O BJ EC T FS DU P RO JE T

I - C ONTEXTE B IOLOGIQUE
I.1 L A T RANSGENESE

Le gnie gntique dsigne l'ensemble des techniques permettant la manipulation in vitro de matriel gntique, notamment l'introduction et lexpression dans une cellule dun ou de plusieurs gnes. Les applications touchent plusieurs secteurs dactivits, parmi lesquels lindustrie pharmaceutique et le secteur de la sant tiennent une place privilgie. On distingue les techniques de biologie molculaire qui permettent de prparer les squences d'ADN qui seront introduites, on parle de construction gntique, et celles qui permettent de transfrer le gne, ou techniques de transgnse. La transgnse peut tre effectue principalement selon deux mthodes qui se distinguent par le type de vhicule utilis : la transfection (non mdi par un virus) la transduction (par utilisation dun vecteur viral) En biologie molculaire et en gnie gntique, les vecteurs sont des vhicules permettant la propagation de squences d'intrt. Beaucoup de ces vecteurs drivent de plasmides, de bactriophages ou de virus. Des constructions plasmidiques sont couramment utilises pour le transfert de gnes. Il sagit de molcules d'ADN surnumraire dorigine bactrienne, distincte de l'ADN chromosomique et capables de rplication autonome. Les plasmides servent la fois doutils de biologie molculaire permettant la manipulation et lamplification de molcules dADN, ainsi que de vecteurs non viraux utiliss pour la transfection. Dans ce dernier cas, on parle de plasmides dexpression car le ou les gnes transfrer doivent tre munis de squences annexes permettant leur expression dans la cellule (promoteurs, signal de polyadnylation )

13

I.1.1 -

L A TRANSFECTION

La transfection, par opposition la transduction, est le processus par lequel de lADN exogne est introduit dans une cellule eucaryote, et cela sans laide dun vecteur viral. Il implique louverture transitoire de pores dans la membrane de la cellule pour permettre lintroduction du matriel gntique. Plusieurs techniques permettent, ensuite, lintroduction des constructions dADN dans le noyau : prcipitation avec phosphate de calcium, lectroporation : application dun champ lectrique qui permet lentre dADN dans le cytoplasme, micro-injection (mthode mcanique), utilisation de liposomes (saccule dont les parois sont formes d'une bicouche de phospholipides qui fusionne avec la membrane cytoplasmique de la cellule et libre ainsi son contenu dans le cytoplasme de la cellule).

I.1.1.a -

L E S L I MI T E S D E L A T R A N S F E C T I O N :

Ltape initiale dintroduction du transgne est le premier obstacle majeur (Kaplan, et al., 2007). En effet, deux problmes sont rapidement soulevs par la transfection notamment dans le cadre de la thrapie gnique : la non-permissivit de certains types cellulaires tels que les cellules primaires (fraichement prleves sur des organes) limite lutilisation de la simple transfection. Lintgration est le plus souvent transitoire dans le cadre de la transfection. Ainsi les modifications gntiques sont perdues au cours des divisions cellulaires (Kaplan, et al., 2007). Lobtention de transfectant stable est videment possible, mais il sagit dun processus complexe au rendement trs faible, ce qui le rend moins intressant dans un contexte industriel. Enfin une certaine toxicit peut apparatre, notamment avec lutilisation de liposomes comme moyen dintroduction.

14

Cest justement ce type de problmes que lon veut rsoudre en incluant le transgne dans un autre type de vhicule, le vecteur viral.

I.2 -

L ES V ECTEURS V IRAUX

Lorsque le transgne est transfr dans la cellule cible via un vecteur viral, on parle de transduction. Du fait de leur processus de pntration sans effraction, ainsi que de la grande efficacit de celui-ci, les virus reprsentent les vecteurs naturels les plus volus pour le transfert dune information gntique trangre dans une cellule (Kaplan, et al., 2007). Ainsi, de nombreux virus ont donc fait lobjet dadaptation en vecteur (cf. Annexe).

Parmi les rtrovirus, on pourra citer en particulier les lentivirus, dont fait partie le Virus dimmunodficience acquise (VIH). Trs prometteur, ce type de virus est capable de pntrer activement dans le noyau et transduire aussi bien les cellules quiescentes (qui ne se divise pas), que celles en prolifration. Ce sont donc les virus les plus utiliss pour ltablissement de modles cellulaires et constituent la part principale de la production de Vectalys. Cest la raison pour laquelle jai fait le choix de dvelopper leur fonctionnement :

I.2.1 -

S TRUCTURE D UN R ETROVIRUS :

On distingue : une enveloppe : dans laquelle sont incluses deux glycoprotines virales (fonction de reconnaissance du rcepteur et fonction de fusion enveloppe/membrane cellule hte).La protine MA (MA pour matrice) tapisse la face interne de l'enveloppe et constitue la matrice. une capside : forme par l'assemblage d'une protine virale. La capside contient le gnome viral et les enzymes RT,IN, et PR. le gnome diplode : 2 ARN monocatnaires identiques d'environ 10 KB.

15

Figure 3 coupe dun rtrovirus

I.2.2 -

G ENOME DES R ETROVIRUS :

Le gnome (fig.4) code les protines virales et il est encadr par 2 rgions non codantes. De 5' en 3' on trouve : la rgion non codante 5' Le gne gag (pour group specific antigens) code une polyprotine qui sera dcoupe en protines (de capside, de nuclocapside et de matrice) par la protase virale ; le gne pol (pour polymrase) code in fine les trois enzymes : la rtrotranscriptase, l'intgrase et la protase ; le gne env (pour enveloppe) code une protine prcurseur membranaire (la gp160) qui sera glycosyle puis clive en TM gp41 et SU gp120. de part et d'autre du gne env on trouve, chez les Lentivirus, des gnes de rgulation. la rgion non codante 3'

Figure 4 gnome dun rtrovirus


16

Il est important de noter que les rgions non codantes sont des rgions stratgiques du virus. On y trouve des signaux de rgulation de la transcription (en ARN) et de la traduction (en protines), des squences d'amorage de la rplication, des signaux pour l'intgration (LTR) et pour l'encapsidation (PSI).

I.2.3 -

C YCLE D UN R ETROVIRUS /V ECTEUR V IRAL :

Le cycle viral naturel se divise en deux phases distinctes : infection et rplication. Linfection consiste en lintroduction du gnome viral dans la cellule. Lexpression des gnes viraux aboutit dans un second temps la formation de nouvelles particules virales. Au cours de la production de virus recombinants, les particules virales encapsident un gnome modifi contenant la cassette sexpression du gne dintrt la place de tout ou partie du gnome viral. La transduction se dfinit alors comme une infection abortive (fig.5) par ce virus recombinant dfectif (incapable daccomplir son cycle infectieux) pour la rplication qui introduit seulement une information gntique fonctionnelle dans la cellule cible (fig.5 fig.6).

Figure 5 Cycle rplicatif d'un vecteur rtroviral

17

Figure 6 diffrences entre le virus naturel et le vecteur driv du virus

I.2.4 -

P RODUCTION DE V ECTEURS V IRAUX : L A T RI -T RANSFECTION

La mthode employe par Vectalys pour la construction de Vecteur est base sur un processus de tri-transfection, et donc lutilisation de trois plasmides Les 3 gnes gag, pol et env sont supprims et remplacs par le transgne ce qui aboutit un provirus dfectif. En effet, linformation gntique codant pour les protines virales ne peut pas tre supprime, mais ces protines peuvent tre codes par des constructions spares (plasmides). Cela augmente considrablement la scurit biologique des constructions virales. Ainsi concernant les constructions bases sur les rtrovirus (fig.7 et 8), un premier plasmide, dit dexpression, contiendra le gnome recombinant au sein duquel le gne dintrt aura pralablement t insr. un second plasmide contiendra les gnes gag et pol pralablement spars du virus dorigine. Enfin un dernier plasmide contiendra le gne env, codant pour les protines denveloppes. Ce dernier est souvent remplac par celui de VSV-G afin de donner au vecteur un tropisme plus large.
18

Figure 7 La tri-transfection : 3 plasmides pour 1 vecteur

En rsum les squences en Cis sont les squences conserves dans le gnome du vecteur (plasmide dexpression), tandis-que les squences en trans sont spares du gnome et fournies sous forme de deux plasmides, dits helpers , au moment de la production en masse (fig.7).Cette procdure permet la scurisation des vecteurs viraux.

Ltape finale consiste en la mise en contact des 3 plasmides avec des cellules HK293T (cellule embryonnaire rnale humaine) en prsence dagent de transfection. Aprs un temps dincubation il sera possible de rcuprer les surnageants contenant les vecteurs viraux construits.

Figure 8 Construction dun Vecteur dfectif

19

II - P OSITIONNEMENT

DU PROJET

Dans ce contexte, une des tapes fondamentales pour Vectalys est lannotation pralable des plasmides dexpression fournis par les clients, ainsi que ceux construits par lquipe Plasmide. En effet cette tape est importante plusieurs gards : Pour des raisons de scurit : vrification de la dltion des lments pathognes ou impliqus dans la multiplication virale. Pour des raisons analytiques (identification de la gnration de vecteurs) : identification des lments plasmidiques identification des lments dexpression identification des lments viraux.

II.1 - O BJECTIFS DETAILLES D U STAGE Au dpart la lettre de mission se prsentait de la manire suivante :

En interaction avec lquipe de biologie molculaire, lobjectif du stage sera de mettre en place un serveur bioinformatique afin de rpondre aux besoins de lquipe. Dveloppement dun systme dannotation automatique de squences de plasmides dexpression viraux Les diffrentes tapes de ce projet seront : installation dun serveur BLAST (sous Linux Debian) rapatriement et mise jour automatique des bases de donnes publiques cration de banques de squences internes (qui ncessitera ponctuellement des tudes bibliographiques pour dfinir certaines squences virales) dveloppement dun outil dannotation automatique de squences dveloppement dune interface de consultation et de partage de la banque interne de cartes plasmidiques

20

Cependant, le projet a rapidement volu en quelque chose de plus consquent. En effet, paralllement lannotation, dautres applications telles que les alignements et autres manipulations de squence font partie intgrante des oprations quotidiennes pour les quipes de biologie molculaire. Aussi ai-je propos non plus de se limiter un programme dannotation, mais plutt de mettre en place tout un systme daide lannotation qui se traduira par un portail intranet regroupant plusieurs outils dutilit. Aussi, avec les conseils de ma responsable, nous avons slectionn une srie doutils permettant de faciliter le travail de lquipe de biologistes, dune part par lapport doutils dont ils ne disposaient pas jusque-l, et dautre part, en regroupant au sein dun mme emplacement les outils dont ils se servent dj par le biais de sites web prexistants.

III -

O RGANISATION DU STAGE

Le planning a t schmatiquement organis en trois parties qui se sont succdes : Mise en place dun systme dannotation et ses outils annexes Design Web du portail informatique Rdaction du rapport En effet, la priorit allant au systme dannotation, la plus grande partie du stage lui a t consacre. Ainsi 3 mois et demi ont t ncessaires la mise en place de tous les outils. La partie design web a ncessit 1 mois et demi. Enfin 1 mois a t accord la rdaction du Rapport.

Figure 9 Rpartition du temps durant le stage

21

C h a p iittr e 3 :: Chap re 3

P R O B L E M A T IIQ U E M E T H O D O L O G IIE O U T IIL S P RO BLEM AT Q U E M ETHO DO LO G E O UT L S

I - P ROBLEMATIQUE

ET BESOINS

Jusqu prsent, toute la procdure dannotation sest faite manuellement. Cela se traduit par lidentification de chaque gne directement sur le programme Vector NTI . Lannotation se fait par comparaison des squences des lments recherchs avec celles prsentes sur la squence plasmidique fournie par le client. Une tche qui demande du temps et de la concentration et qui ralentit le processus de production. Lautomatisation de cette dmarche par la mise en place dun systme informatis permettra donc un gain de temps certain dans lanalyse en amont et en aval de la construction plasmidique. Par ailleurs, les analyses de squences ralises par lquipe Plasmide requirent lutilisation de nombreux programmes situs sur des serveurs trangers la socit. Cela implique plusieurs problmes tels que : La confidentialit des donnes qui transitent par un rseau non scuris, ainsi que leur devenir au niveau des applications sollicites sur des sites externes . La vitesse, la capacit et parfois lindisponibilit des serveurs externes peuvent limiter le traitement des donnes. Limpossibilit, ou du moins, la difficult intgrer les diffrents rsultats externes au sein dune chaine de traitement automatique. Tous ces facteurs tendent mettre en place une srie doutils accessibles localement. Aussi la solution dun portail intranet accessible depuis le rseau de lentreprise a t choisie.

22

II - L ISTING

DES FONCTIONNALITE S ET CAHIER DES CHAR GES

Une runion regroupant les membres de lquipe plasmide, premiers concerns par le projet, a permis de dfinir une premire liste dapplications utiles. Dans le cadre du systme dannotation, il faudra mettre en place, et par ordre de priorit : Un serveur Blast pour lidentification dlments gntiques : BLAST standard Alignement de deux squences bas sur BLAST Intgration dune slection de bases de donnes NCBI : (nt/nt, Refseq RNA et genomic, Est human et Mouse, Swissprot) Cration de BDD personnalises, notamment bases sur les lments gntiques utiles la construction de vecteur : permet lidentification dlments gntiques rcurrents dans les squences fournies par les clients permet une la banque recherche de dune squence particulire dans toute plasmides Vectalys.) Simplification de linterface aux options utiles

Un programme dannotation automatique en relation avec Blast : Annotation base sur BLAST Possibilit de dfinir, catgoriser et denrichir les lments dannotation Squence requte au format Fasta Faire apparatre les mismatch issues du BLAST Permettre une sortie au format GenBank pour une relecture dans Vector NTI

23

Visualisation de la carte plasmidique annote (optionnel) Un Programme de manipulation de squences : Calcule du complment, reverse et reverse complment Afficher la squence requte et le rsultat sur la mme page Afficher le type de traitement demand avec le rsultat afin dviter de se perdre Un programme dalignement tel que Multalin : Squences requte au format Multi-Fasta Possibilit dintgrer des squences passer au reverse-complment avant alignement, utile dans le cas de vrification des plasmides construits en sortie de squenceur. Rsultat lisible et facilement intgrable dans des documents tels que des rapports clients.

En complment au systme dannotation, Une page regroupant les liens vers les outils externes utiles aux biologistes (cela vite de se perdre sur la toile et permet dhomogniser les outils utiliss par les diffrents biologistes). ReadSeq , un programme de conversion de formats de squence biologique pour la reconnaissance et le traitement dun maximum de formats de squence. Primer-BLAST , version de Blast spcialise dans lanalyse des primers. FinchTv , pour la visualisation de chromatogramme de squenceur. Serial Cloner pour la visualisation des fichiers GenBank annots pour les postes dpourvus de Vector NTI.

24

Toutes ces applications doivent tre accessibles par le biais dune interface web facile apprhender pour les biologistes. En effet, ceux-ci ne sont pas familiers avec le terminal de commande et ne sont pas censs avoir connaissance de laspect informatique du traitement. Par ailleurs, lutilisation doit rester suffisamment aise pour ne pas ncessiter de formation interne pour un ventuel nouveau venu au sein de lquipe. Enfin la mise en place devra tre documente pour permettre une maintenance facilite pour les personnes qui devront sen occuper aprs mon dpart.

III -

M ETHODOLOGIE

III.1 - M OYENS INFORMATIQUES

Vectalys bnficie de linfrastructure rseau de la ppinire dentreprise qui inclut un accs Internet haut dbit. Le parc informatique se compose dune vingtaine de postes, dont la majorit fonctionne sous Windows. Seuls deux postes sont sous Linux (Debian) : Un serveur de donnes mettant disposition de tous les utilisateurs un espace disque scuris pour le partage et/ou le backup de donnes personnelles. Ce serveur hberge par ailleurs une base de donnes lie la gestion demploi du temps des employs de la socit. Le poste avec lequel jai travaill pendant ces 6 mois de stage. Etant relativement familiaris avec lenvironnement Ubuntu , jai fait le choix dinstaller la distribution Karmic Koala 9.10

III.2 - LOGICIELS UTILISES

III.2.1 -

I NSTALLATION ET A DMINISTRATION :

Pour linstallation et ladministration du poste linux Bash a t un des programmes les plus utiliss durant mon stage.

25

Il sagit dun logiciel libre publi sous GNU GPL. Il est l'interprte par dfaut sur de nombreux Unix libres, notamment sur les systmes GNU/Linux. La mise en place dun portail intranet ncessite en premier lieu, linstallation dun serveur Web et ventuellement un ou plusieurs serveurs dapplications. Cela permettra de rendre les interfaces graphiques des diffrents outils accessibles par le biais de lexplorateur internet. Dans une optique de gratuit et de facilit dinstallation, le choix sest port sur Apache (serveur web open source le plus rpandu, avec prs de 55 % de taux dutilisation selon les statistiques Netcraft 2010).Toute la partie dynamique du portail a t code en java, ce qui a impliqu lutilisation du serveur dapplication Tomcat (fig.10).

Figure 10 Fonctionnement du serveur d'application Tomcat

III.2.2 -

D EVELOPPEMENT ET D ESIGN W EB :

Pour la partie dveloppement, le choix sest port sur lIDE Netbeans . Relativement simple dutilisation, il permet de coder dans plusieurs langages de programmation. Il possde, en outres, un module permettant la prvisualisation et laide la cration dinterface graphique.
26

Pour la partie modlisation, qui ma t utile aussi bien pour schmatiser de faon globale les fonctionnalits du portail intranet, que pour analyser le fonctionnement des applications existantes, jai fait le choix de Visual Paradigm . Enfin the Gimp , logiciel libre de retouche dimage, ma permis de traiter la partie graphique par la cration et/ou la modification des lments du portail : Cration de boutons dans le style Web 2.0 Menu du portail Personnalisation de la bannire Vectalys

III.2.3 -

A NALYSE B IOINFORMATIQUE :

Pour la visualisation et lannotation des constructions plasmidiques, Vectalys utilise VECTOR NTI dInvitrogen . Il sagit dun programme spcialis dans la gestion et lanalyse de molcules biologiques (ADN ou protines). Pour des raisons de cot des licences, seuls quelques postes en sont dots. VECTOR NTI contient, en outre, la base de donnes des plasmides dj construits par la socit. Pour ma part, son utilisation a t utile dans la mesure o il a fallu tudier la faon dont le programme gnre et interprte des fichiers GenBank contenant des annotations. Dans le cas o je navais besoin que de visualiser les cartes plasmidiques issues de VECTOR NTI, le logiciel libre Serial Cloner a suffi. Enfin, avant son installation locale, le serveur BLAST du NCBI ma t utile lors de la lanalyse des lments gntiques dintrt en vue de les intgrer une base de donnes personnalise pour lannotation.

III.3 - L ANGAGES UTILIS ES Avec pour critre principal un dveloppement relativement simple et efficace avec des rsultats observables assez rapidement, le choix des diffrentes techniques et langages employer ma t confi.
27

Pour le travail de rflexion et de modlisation du projet, le langage UML a t utilis. Couramment employ dans les projets logiciels, il peut tre appliqu toutes sortes de systmes ne se limitant pas au domaine informatique Concernant la partie traitement des donnes, jai fait le choix demployer le langage objet Java. Il sagit, en effet, dun langage portable, facile apprhender et maintenir. De plus, la formation que jai suivie ma apport de solides bases en java qui mont permis une plus grande autonomie et une meilleure productivit au niveau du dveloppement. Pour la partie design web, jai utilis, principalement et selon les besoins, xhtml, javascript (notamment avec plugin jQuery). La gestion des styles a t spare et confie du CSS (Cascading Style Sheets). Pour la communication de la partie traitement des donnes et linterface graphique, jai utilis Java EE sur serveur dapplication Tomcat. Dans un environnement Linux, le langage de script shell fait galement partie du paysage quotidien. Aussi, ces 6 mois de stage ont t loccasion de consolider leur cration et leur utilisation. Enfin, de faon plus marginale, jai galement t amen analyser et/ou adapter du code source en perl et en C dont certains programmes se servent.

III.4 - O RGANISATION DU D EVELOPPEMENT Bien que la programmation ne concerne pas une quipe de dveloppeurs, le travail a t paul par un systme de gestion de version : Mercurial (cf. Annexe I). Cela a permis, entre autres de garder un historique des modifications apportes aux cours des mois de dveloppement. Un logiciel de VCR (Version Control System) tel que Mercurial, agit sur une arborescence de fichiers afin de conserver toutes les versions des fichiers, ainsi que leurs diffrences. Ce systme permet de mutualiser un dveloppement, stocker toute volution du code source. Le systme gre les mises jour des sources pour chaque dveloppeur, conserve une trace de chaque changement accompagn d'un commentaire. Le systme travaille par

28

fusion de copies locales et distantes, et non par crasement de la version distante par la version locale. Gnralement, chaque nouvelle version d'un fichier est appele rvision et son numro de version est incrment de 1 par rapport la prcdente. (Wikipedia) Bien que lon ne soit pas dans un respect strict du design pattern MVC, dont la mise en place peut se rvler lourde, tous les programmes et outils qui ont fait lobjet dun dveloppement ont t penss dans un souci de sparation des diffrentes couches logiciels. En effet, la distinction Model, Vue et Contrleur permettra, terme de modifier certaines couches des programmes sans forcment tre oblig de repenser tout le dveloppement. Une personne spcialise dans la cration dinterface graphique pourra, par exemple, modifier la partie interface Homme-Machine sans pour autant se proccuper du traitement li la soumission du formulaire.

Figure 11 le modle MVC : design pattern dont le but est de dcomposer la vue, la couche mtier et le modle de donnes.

29

C h a p iittr e 4 :: Chap re 4
I - A NALYSE

S Y N T H E S E D E L A S O L U T IIO N A P P O R T E E S Y N T H E S E D E L A S O L U T O N AP P O R T E E

Pour certains des outils mettre en place tels que Blast ou Multalin , des versions locales avec codes sources sont disponibles sur les sites des dveloppeurs. Leur documentation respective et des recherches sur le web ont permis de mieux apprhender leur fonctionnement et leur installation. Concernant la manipulation de squence, les travaux raliss durant la formation en Algorithmes pour la biologie ont constitus une excellente base pour la cration de ce type doutils. Cest vritablement la mise en place dun outil dannotation automatique qui a constitu le plus gros du travail. Suite une recherche sur lexistent, il sest avr que ce type de programmes, li lactivit de chaque laboratoire, bnficie souvent dun dveloppement interne. Do la raret doutils open-source rpondant aux critres recherchs. Il est, malgr tout apparu que des bioinformaticiens de luniversit dAlbertaEdmonton au Canada ont dvelopp une application java potentiellement capable de rpondre aux besoins du projet : PlasMapper (Dong, et al., 2004). Bas sur lAPI CGView, Circular Genome Viewer(Stothard, et al., 2004) et des cartes plasmidiques. Biojava est un Framework java open-source ddi au traitement des donnes biologiques. Il fournit, notamment, une srie de classes java intgrant des mthodes facilitant le parsing (traitement de flux textuel) de fichiers spcialiss (Fasta, GenBank, EMBL) ainsi que la manipulation de squence ADN ou ARN. CGView est un package spcialis dans la gnration dimages de cartes gnomiques circulaires en haute qualit. Ce package a justement t dvelopp en tant que composant au sein dun pipeline dannotation de squence. Il utilise les bibliothques awt.graphic2Dpour le dessin 2D, et Batik (DeWeese, et al., 2000-2001) pour la gestion dimages au format vectoriel. le

Framework Biojava(Holland, et al., 2008), ce programme permet de gnrer et dannoter

30

I.1 -

F ONCTIONNALITES ET LIMITES DE P LAS M APPER

PlasMapper est spcialis dans lannotation de plasmide. A cet effet, une base de donnes assez consquente est dj fournie avec les codes sources de lapplication. Le programme fonctionne de la manire suivante : 1) Soumission dune squence au format Fasta, 2) Blast de la squence contre la base de donnes PlasMapper, 3) Rcupration dune liste de motifs issus du Blast et rpondant certains critres : a) Taille de lalignement quivalent la taille de la cible b) Identit dau moins 95 % 4) annotation dune carte textuelle de la squence soumise partir de la liste prcdente. 5) gnration soit a) dune image du plasmide reprsentant la squence annote b) dune carte textuelle comportant les annotations c) dun fichier GenBank contenant les diffrents Features ou lments identifis par le Blast. Ce qui manque PlasMapper pour rpondre aux besoins de lquipe plasmide : La base de donnes dorigine de PlasMapper ne convient pas lquipe de biologistes nomenclature diffrente, absence de certains lments, catgorisation des lments non conforme celle utilise par Vectalys De nombreux lments des fichiers GenBank issus de PlasMapper sont perdus lors de leur interprtation par Vector NTI, PlasMapper ne fait pas la diffrence entre une squence linaire et une squence circulaire, Linformation concernant les ventuels mismatch lors du Blast est perdue, Beaucoup doptions actives par dfaut ne sont pas ncessaires, voire mme gnantes, dans la visualisation du rsultat Pour que PlasMapper puisse tre envisag comme programme dannotation, il sera donc ncessaire den tudier le code source afin dapporter les modifications mme de le spcialiser lanalyse et la production propre Vectalys.

31

II - M ISE

EN PLACE DU PORT AIL I NTRANET

Le travail a t organis en deux phases. Dans un premier temps, je me suis consacr la partie traitement des donnes. Lobjectif tant de rendre lapplicatif fonctionnel soit directement dans lIDE, soit en ligne de commande, sans tenir compte de linterface utilisateur. Dans un second temps, un travail a t effectu pour la mise en place dune interface graphique homogne pour toutes les applications du portail.

II.1 - M ISE EN P LACE ET T RAITEMENT DES D ONNEES

II.1.1 -

B LAST

Le Serveur Blast est disponible sur le serveur ftp du NCBI sous la forme package installer sur un serveur web : ftp://ftp.ncbi.nih.gov/blast/executables/LATEST/

II.1.1.a -

INSTALLATION

Linstallation est surtout lie celle du serveur web Apache : $ sudo apt-get install libapr1 apache2 apache2.2-common apache2-utils Une fois le serveur web install il faut dcompacter le package dans le dossier suivant : /var/www/ (dossier utilis par dfaut par le serveur web Apache pour stocker les sites web hbergs localement. $ cd /var/www/ $ sudo tar zxvpf wwwblast-2.2.23-ia32-linux.tar.gz Les problmes dinstallation ont surtout t lis au fait que la procdure dcrite par la documentation officielle NCBI concerne une version antrieure apache2, ce qui induit quelques changements quil a fallu trouver par une multiplication dessais.

32

Il faut tout dabord diter le fichier /etc/apache2/sites-available/default afin dy ajouter avant la balise fermante </VirtualHost> les lignes suivantes :

<Directory "/var/www"> AddHandler cgi-script cgi REAL Options Indexes FollowSymLinks MultiViews +ExecCGI Order allow,deny Allow from all </Directory> Il sagit des droits daccs et dexcution du site web grs par Apache. Le serveur Apache devrait alors dtre relanc afin dassurer le bon fonctionnement du serveur Blast : $ sudo /etc/init.d/apache2 restart

II.1.1.b -

INTEGRATION DE BASE DE DONNEES

Une fois le package Blast tlcharg, il convient de rcuprer les bases de donnes utiles sur le serveur ftp du NCBI : ftp://ftp.ncbi.nih.gov/blast/db

Les bases de donnes du serveur Blast sont contenues dans le dossier /var/www/blast/db. Certaines bases de donnes faisant plusieurs Gigas octets il peut tre utile, suivant la taille de disques contenant le serveur web, de stocker les bases de donnes un autre endroit. Cela peut se faire trs simplement par lutilisation des liens symboliques que permet Linux par la commande ln : $sudo ln -s /data/databases/blast /var/www/blast/db Il convient ensuite de modifier les fichiers de configuration rc (un par type de blast) : il sagit, en fait, de dclarer les diffrentes bases de donnes afin que le serveur puisse les reconnaitre. Il ne reste plus qu ajouter les options dans le code html du formulaire de requtes : /var/www/blast/blast.html : <select name = "DATALIB"> <option VALUE = "nr"> nr <option VALUE = "swissprot"> swissprot <option VALUE = "pdbaa"> pdbaa </select>
33

Plus gnralement : <select name = "DATALIB"> <option VALUE = "[nom de la bdd personnelle a]">[nom du fichier de la bdd a] <option VALUE = "[nom de la bdd personnelle b]">[nom du fichier de la bdd b]] </select> Dans le cas o lon veut crer des bases de donnes personnalises, il faut tout dabord crer un fichier au format multi-Fasta contenant toutes les squences ncessaires. Ensuite pour convertir ce fichier dans un format de reconnu par Blast il faut utiliser la commande suivante dans le terminal : formatdb .

$ Formatdb -i [chemin du fichier source multi-Fasta] -p {F/T} -o {F/T}

Options : -i = input File -p = squence protique : {False/True} -o = option du parsing : {True = rcupration de lId des squences et cration dindex} {False = pas de cration dindex}

II.1.1.c -

MISE A JOURS DES BASES DE DONNEES ET DIFF ICULTES


RENCONTREES

Le maintien des bases de donnes depuis les serveurs du NCBI passe par lutilisation de scripts, Shell ou perl. Le script perl blastdb_update.pl fourni par le NCBI rend la procdure relativement simple puisquil compare les bases du NCBI avec celles prsentes localement et en cas de diffrence il tlcharge la dernire version. La mise en place du serveur Blast a t plutt aise, les difficults tant seulement lies aux droits daccs des fichiers et dossiers, problme inhrent la gestion des fichiers sous Linux.

34

II.1.2 -

P LAS M APPER

II.1.2.a -

INSTALLATION :

Linstallation de PlasMapper a demand plus dattention. Utilisant le serveur dapplication Tomcat ainsi que des fichiers de configuration propre lapplication, PlasMapper ncessite la configuration de deux fichiers distincts : Il faut dans un premier temps configurer le fichier web.xml, ncessaire au fonctionnement de toute application web fonctionnant sous Tomcat : Dclaration par balise xml des diffrentes servlets et ventuellement, lindication de la page daccueil (annexe VII).

Puis il faut configurer le fichier plasMapConfiguration_en_CA.properties contenant les informations suivantes :

#configuration files of PlasMapper vectorFeature_db=chemin vers la base de donnes PlasMapper blastallDir=chemin vers lapplication Blast blast_db_dir=chemin vers la base de donnes Blast plasMapRoot=chemin de lapplication PlasMapper lib_dir=chemin vers les librairies db_user=Login de connexion la base de donnes SQL. db_passwd=Mot de passe de connexion la base de donnes SQL. db_url=jdbc:mysql://wishart.biology.ualberta.ca/plasMap?autoReconnect=true db_driver=org.gjt.mm.mysql.Driver

A partir de l, il suffit de lancer le serveur dapplication pour que PlasMapper soit fonctionnel. Une page de formulaire appelle lune des trois servlets suivantes selon laction dsire (annexe V) : Affichage dune carte plasmidique annote : DrawVectorMap.java Affichage dune carte textuelle annote : TextMap.java Affichage de la squence annote au format GenBank : GenBankOutput.java

35

II.1.2.b -

MO DIFI CAT IO NS APP O RTEE S A L A PPL ICA TIO N :

v Cration dune nouvelle base de donnes personnalise : La base de donnes des lments dannotation que devra utiliser PlasMapper est construite partir des annotations manuelles effectues sur Vector NTI et qui ont t valides. Pour cela le dveloppement dun outil dextraction des motifs a t ncessaire. Celui-ci a permis dobtenir en sortie des fichiers multi-Fasta contenant les squences des diffrents motifs ncessaire lannotation. (cf. II.1.3) Une fois le fichier multi-Fasta obtenu, analys et corrig, il convient de le convertir au format Blast avec la commande fomatdb.

v Adapter les catgories de Features, en crer de nouvelles : Pour cela il a fallu analyser le fonctionnement de PlasMapper afin de comprendre la manire dont celui-ci diffrencie les diffrentes catgories : Concrtement les enttes Fasta sont reconnus par PlasMapper selon le pattern suivant :

> String [key] {String}, \d bases,

Type dlment Dtail sur llment (Organisme notamment) Cl de reconnaissance du type dlment Nombre de bases formant llment

Exemple concret : >promoter[PRP]{CMV_promoter},678 bases, ccattgcatacgttgtatccatatcataatatgtacatttatattggctcatgtcc()

36

A lorigine PlasMapper prend en charge les catgories suivantes : Cls SEL REP PRO REG TAG ORI CDS MIS Type Selectable Marker(s) Reporter(s) Promoter(s) Regulatory Sequence(s) Tag(s) Replication Origin(s) CoDing Sequence(s) Miscellaneous dtails Marqueurs de slection Gne rapporteur Promoteurs eucaryotes et procaryotes Squences rgulatrices Marqueurs Origines de rplication Rgions codantes Autres lments

A cette liste jai ajout les catgories suivantes : Cls VIR INS FUL Type Virus Unit(s) Insert(s) Full Feature(s) Eukaryotic Promoter(s) Prokaryotic Promoter(s) Dtail(s) Tous les lments viraux Tous les transgnes (remplace CDS) Catgorie cre pour contenir tout ce qui ne rentre pas dans une autre catgorie. (remplace MIS) Sous-catgorie de promoteur regroupant les eucaryotes (remplace PRO) Sous-catgorie de promoteur regroupant les procaryotes (remplace PRO)

PRE PRP

Ainsi une refonte de la base de donnes de PlasMapper tenant compte des nouvelles catgories a t mise en uvre. Les promoteurs ont t diviss en deux sous-groupes afin de diffrencier le type dorganisme (Procaryote/Eucaryote). Evidemment, lajout de nouvelles catgories doit saccompagner de mthodes pour leur reconnaissance au moment du parsing.

37

Voici donc un exemple de mthode utilise pour la reconnaissance des promoteurs : public Vector getPromoter() { String temp = ""; int index = 0; int last = 0; Vector pro = new Vector(5); FeatureSite site = null; for (int i = 0; i <hitFeature.size(); i++) { site = (FeatureSite) hitFeature.elementAt(i); temp = site.getLabel(); if ((temp.indexOf("[PRO]") >= 0)||(temp.indexOf("[PRP]") >= 0)||(temp.indexOf("[PRE]") >= 0)){ index = temp.indexOf('{'); last = temp.indexOf('}'); site.setLabel(temp.substring(index + 1, last)); pro.add(site); } } return pro; }

v Prise en charge de lorganisme pour les promoteurs au niveau de la sortie GenBank (gestion des VNTI fkey) : Vector Nti utilise certains attributs au sein de fichiers GenBank pour diffrencier lorganisme do proviennent les promoteurs (Eucaryote/Procaryote). Cela se traduit par les proprits : VNTIfkey 29 dans le cadre dun Eucaryote VNTIfkey30 dans le cadre dun Eucaryote En labsence de cette proprit, VNTI considre tous les promoteurs comme provenant de procaryotes. Ainsi, pour rester dans lide de sparer les promoteurs par type dorganisme, Une mthode a t ajoute la servlet de cration des fichiers GenBank afin dajouter la proprit adquate selon le cas.

38

privateorg.biojava.bio.seq.Feature.TemplatecreateTemplate(FeatureSite site, String type, String label) throws Exception { Template template= new Template(); template.type = type; template.source = " "; template.location = new RangeLocation(site.getStart(), site.getEnd()); Annotation annotation = new SmallAnnotation(); annotation.setProperty(label, site.getLabel()); // add mismatch display in Features properties annotation.setProperty("mismatch", site.getMismatch()); // add VNTI specs for promoters if (site.getLabel().contains("Prokaryotic")) { annotation.setProperty("vntifkey", "30"); } else if (site.getLabel().contains("Eucaryotic")) { annotation.setProperty("vntifkey", "29"); } template.annotation = annotation; returntemplate; }
Figure 12 - mthode pour l'intgration des informations sur le mismatch et l'organisme de l'lment gntique

v Intgration du mismatch dans la sortie GenBank : Afin de rcuprer les informations concernant le mismatch, il a fallu intervenir plusieurs niveaux : Modification de la classe FeatureSite, qui instancie les lments dannotation (label, dbut et fin de squence, sens de la squence), pour y ajouter lattribut mismatch ainsi que les accesseurs ncessaires Modification de la classe PlasmidFeatureAnnotate.java, dont le rle est dexcuter un blast sur la squence requte et de rcuprer les lments rpondant une srie de critres. Il a fallu ainsi intervenir au moment o le rsultat du Blast est pars pour rcuprer galement les mismatch et les intgrer chaque FeatureSite . Modification de la servlet de gnration du GenBank pour ajouter llment mismatch aux proprits des diffrents Features (motifs) (fig.12).

39

v Ajout dune option pour les gnomes circulaires ou linaires : La version de Biojava utilis dans PlasMapper est la version 1.3. Plusieurs fonctionnalits ne sont pas prises en charge par cette version, notamment la diffrenciation des gnomes circulaires et linaires. Etant donn que la mise jour des de toutes les fonctions utilises par PlasMapper la dernire version de Biojava aurait ncessit un temps non ngligeable pour un rsultat incertain, jai fait le choix de modifier le fichier GenBank la fin du traitement PlasMapper. Ainsi la diffrenciation se fait par lattribut circular ou linear la suite de la taille de la squence au niveau du fichier GenBank (en labsence dattribut, la squence est considre comme linaire). Il a fallu donc de crer une mthode ddition du fichier GenBank pour y ajouter lattribut. Il sagit de la mthode setCircular(), qui rcupre le fichier GenBank fraichement gnr pour lditer et ajouter lattribut circular ou linear selon la slection faite par lutilisateur au niveau du formulaire requte.

v Modifications des options par dfaut : Par dfaut PlasMapper annote les lments suivants : Les sites de restriction Les ORF (Open Reading Frame(s)

Ces lments ne reprsentent pas lintrt premier de lannotation automatique pour lquipe plasmide et ils alourdissent inutilement les cartes plasmidiques. Aussi, pour rgler ce problme, une modification du formulaire de requte pour y changer les options par dfaut a t effectue.

II.1.2.c -

DIFFICULTES RENCONTREES

v Dun point de vue dveloppement : lanalyse approfondie du fonctionnement de PlasMapper a t une tape cl difficile dans la mesure o il a fallu dcortiquer le code source pour comprendre le cheminement des diffrents traitements de la squence soumise lapplication. Une Schmatisation UML des principales classes a aid la comprhension globale (cf. Annexe V). Les packages Biojava et CGView ont d tre modifis pour la prise en compte des nouvelles catgories, notamment pour les codes couleurs et les lgendes sur la carte plasmidique annote (image). Pour cela les packages ont t

40

dcompacts pour faire lobjet de nouveaux projets modifiable avant dtre compils nouveau et rintgrs PlasMapper. La rigueur de reconnaissance des enttes Fasta a demand beaucoup dattention dans la cration de la base de donnes dfinitive pour viter que certains lments ne soient pas pris en compte. v Dun point de vue bioinformatique analytique : La sous-division des lments PRO, en procaryotes et eucaryotes, a demand beaucoup danalyses Blast afin de dterminer pour chaque promoteur son origine. La gestion des doublons de motifs a t particulirement complexe car il existe des versions longues et des versions courtes dun mme lment. Des filtres pour minimiser les doublons ont t intgrs, mais une analyse bioinformatique manuelle et plus approfondie est ncessaire pour faire le tri entre les variants de motifs utiles et inutiles.

II.1.3 -

G B F EAT E XTRACTOR

Afin de construire une base de donnes personnalise utile lannotation, il est ncessaire de lister tous les lments (Features) que lon retrouve dans les constructions dj valides par lquipe plasmide. Cela reprsente plusieurs centaines de plasmides enregistrs dans lapplication Vector NTI. Il serait donc intressant de crer un programme permettant lextraction des diffrents lments dj annots dans VNTI. En effet, Vector NTI est en mesure dexporter les constructions plasmidiques sous forme de fichiers GenBank contenant les informations relatives aux annotations manuelles effectues depuis 5 ans par lquipe Plasmide. II.1.3.a M E T H O D E E T F O N C T I O N N E ME N T D E L A P P L I C A T I O N

Biojava contenant plusieurs mthodes permettant dexploiter les informations des fichiers GenBank, jai fait le choix dutiliser ce Framework, ainsi que son extension Biojavax, pour dvelopper un outil dextraction des lments dans un format directement exploitable par PlasMapper et Blast : le multi-Fasta.

41

Ce multi-Fasta sera construit en tenant compte du pattern de reconnaissance des enttes utilis par PlasMapper (cf. partie PlasMapper) Lide est de soumettre un fichier GenBank au programme qui extraira chaque soussquence en se basant sur les informations rcupres sous lattribut FEATURE. Concrtement si le Fichier GenBank contient une squence de 1500 bases et que lun des attributs FEATURE indique que le promoteur lablis X est constitu de 100 bases stendant de la base numro 900 1000, GbFeatExtractor devra produire le rsultat suivant : > X promotor 100

Enchainement des bases formant le promoteur

Pour cela les classes RichSequence et RichFeature, ainsi que les mthodes associes ont t utilises 3 options ont t intgres au programme : Extraction depuis un seul fichier GenBank : Besoin dune seule annotation Vrification dannotations Extraction en masse pour la mise en place dune base de donnes Enregistrement du rsultat sous la forme dun fichier multi-Fasta

Extraction depuis un dossier contenant une liste de fichiers GenBank :

Puis aprs rflexion une quatrime option a t intgre afin de permettre une mise jour de bases de donnes existantes sans avoir faire ddition manuelle des fichiers multi-Fasta. Toutes ces fonctionnalits sont prsentes dans le diagramme UML figurant en annexe VI.

II.1.3.b -

DIFFICULTES RENCONTREES :

La non-prise en charge de tous les attributs des fichiers GenBank produits par VNT. Attributs propres au programme dInvitrogen.

42

Il a donc fallu modifier quelques bibliothques Biojavax pour modifier et parfois liminer certains contrles au niveau des algorithmes de parsing des fichiers GenBank utiliss par Biojavax. La classe org.biojavax.bio.seq.io.Genbankformat a notamment t modifie. Lors du traitement dun seul fichier texte, le temps dexcution a toujours sembl trs court. Lors de traitements en masse, le temps dexcution sest trouv dmultipli. Il a donc fallu opter pour lutilisation des mthodes utilises par les New Input Output . Ces mthodes utilisent des Buffers en remplacement des String simples.

Type utilis String StringBuffer avec FileReader StringBuffer avec FileChannel

Temps de traitement pour 200 fichiers Gb 90000ms / 1mn30s 218ms 23ms

Figure 13 - Optimisation du temps de traitement de GbFeatExtractor

Enfin le programme ayant pour objectif principal de construire et mettre jours des bases de donnes exploitables par PlasMapper, il a fallu respecter le pattern de reconnaissance des enttes Fasta utilis par celui-ci. Cela a demand de nombreux affinages pour obtenir un rsultat satisfaisant.

II.1.4 -

S EQUENCE

Deux versions de la mme application ont t dveloppes. La premire version est une application web dveloppe en Java sur Serveur Tomcat : Elle permet dobtenir le complment, le reverse ou le reverse-complment dune squence requte. La seconde version est une application de bureau interface en Swing. Cette version prsente lavantage dtre indpendante dune fentre web et permet donc un traitement parallle dautres manipulations sur des applications web. Cette seconde version devait tre dploye par Java Web Start ce qui aurait simplifi laccessibilit au programme pour les diffrents postes. Cependant, la signature de
43

lapplication java pour permettre la sortie du mode bac sable aurait eu une validit de 6 mois et aurait d tre mise jour rgulirement. Aussi cette possibilit de dploiement a t mise de ct pour le moment. Le programme sera compil en jar et sera transform en excutable Windows laide du programme open-source launch4j afin de simplifier son excution. Que ce soit dans sa version application web ou application de bureau, le programme se prsente sous la forme de deux TextArea (zone de texte): une requte, une pour le rsultat. Et quatre boutons (un par action) : Reverse, Complment, Reverse-Complment, Effacer la TextArea requte.

Les algorithmes utiliss sont bass sur ceux tudis dans le cadre de lunit denseignement Algorithme pour la biologie . Un contrle plus rigoureux de la squence requte a t ajout, notamment avec lutilisation dun filtrage sur les caractres utilisables. La version bureau intgre, en outre, une fonction automatique de copie du rsultat dans le presse-papier de Windows pour faciliter la diffusion du rsultat vers un autre outil.

II.1.5 -

M ULTALIN

Le programme Multalin est surtout utilis pour contrler que le produit fini (plasmide dexpression construit) corresponde bien la demande du client. Multalin a t dvelopp en C, la version tlchargeable tant disponible pour une utilisation en ligne de commande. Il sagit donc de mettre en place une interface Homme-Machine permettant lutilisateur dobtenir des rsultats dalignement exploitable dans le cadre dun compte rendu Client (rsultat utilisable avec le presse-papier)

44

Multalin permet plusieurs sorties : .msf (GCG), .mul (Multalin), et directement au format .doc de Microsoft Word. Malheureusement le document Word nest pas exploitable directement car il ne fait pas ressortir les lments informatifs par un code couleur. La solution la plus simple mettre en place a t lutilisation dun script perl, fourni avec le code source, permettant la conversion du document Word en une page html utilisant un code CSS pour la coloration informative. Il a suffi donc dintgrer en fin de traitement lappel ce script. Ainsi lutilisation de JEE sest faite de la manire suivante : VUE : jsp requte (formulaire) et rsultat html CONTRLEUR : servlet permettant de faire un appel via le terminal au programme Multalin, de rcuprer la sortie au format doc qui sera converti en html par un appel au script perl avant dtre renvoy la VUE (rsultat). MODELE : on peut considrer le modle comme tant le traitement Multalin.

II.2 - I NTERFACES GRAPHIQUES ET D ESIGN W EB

Tout le portail a t pens dans un souci dhomognit de linterface quel que soit loutil utilis. Par ailleurs, pour faciliter le choix dfinitif du design une maquette a t ralise avec la prise en charge de plusieurs fichiers CSS que lon appelle par lintermdiaire de fonctions Js (cf. Annexe VIII). Un Squelette commun a donc t dfini toutes les applications pour viter les problmes de mise en forme. La maquette, contenant les diffrents CSS, a t soumise aux diffrents responsables afin de valider la charte graphique. Dans les pages qui vont suivre, la charte graphique valide a t illustre, les autres styles tant disponibles en Annexe.

45

Le squelette suivant a servi de base pour la mise en place des diffrents fichiers CSS, son agencement est directement li aux diffrents effets mettre en place avec ce langage.

<body> <p id="header"></p> <div id="menucontainer"> <ul class="menu"> <li><a href="" title="Accueil"><span>Accueil</span></a></li> <li><ahref="" title="Blast"><span>Blast</span></a></li> <li><a href="" title="PlasMapper"><span>PlasMapper</span></a></li> <li><a href=""title="Sequence" id="current"><span>Sequence</span></a></li> <li><a href="" title="Multalin"><span>Multalin</span></a></li> <li><a href="" title="Readseq"><span>Readseq</span></a></li> <li><ahref="" title="Intranet"><span>Intranet</span></a></li> </ul> </div> <div id="contenu"> <form>Selonlapplication</form> </div> <hr> <address id="footer">Problmes? Questions? Suggestions? Contacter : <a id="mail"href="mailto:Administrator@vectalys.com">Administrateur</a> </address> </body>

Figure 14 - Squelette Html utilis pour la charte graphique

46

II.2.1 -

A CCUEIL DU PORTAIL I NTRANET

Laccueil du portail prsente brivement les applications auxquelles il donne accs.

Figure 15 - Accueil du portail Bioinformatique

La structure se divise en 4 parties, dont 3 sont communes toutes les applications: La bannire identifie par header mettant en scne le Logo de lentreprise, sur lequel jai t autoris exprimer un ct artistique . Une zone identifie comme le menu avec une mise en valeur de la section courante par lidentifiant current . La zone centrale, ou corps, identifie par contenu . Cette zone diffre selon lapplication. Enfin, chaque bas de page contient un lien permettant de joindre ladministrateur du portail. Cette zone est identifie en tant que footer .

47

II.2.2 -

B LAST

La premire application accessible est le Blast. Lutilisateur a dabord accs une page linvitant choir le type de Blast utiliser (fig. 16).

Figure 16 - Choix du Blast

Blast standard : Pour une comparaison de squences avec des banques NCBI ou personnalises Blast de deux squences : Alignement de deux squences avec utilisation de lalgorithme Blast, ce qui permet dobtenir, dans certains cas, des rsultats plus complets quavec lalgorithme de Multalin.

48

Les interfaces du Blast standard et celle du Blast de deux squences sont proches de celles que lon retrouve sur le site du NCBI.

Figure 17 Interface Blast standard

Les modifications de linterface concernent simplement le respect de la charte graphique retenue pour le portail.

Figure 18 - Interface Blast de deux squences

49

II.2.3 -

P LAS M APPER

PlasMapper se prsente de la mme manire que le Blast, avec des zones de Texte pour la soumission de la squence et/ou le nom que lon veut donner la squence, et des options diverses accessibles par boutons simples, boutons radio ou encore des cases cocher.

Figure 20 - Interface PlasMapper

50

Afin dallger linterface dorigine, certaines options ont t caches par dfaut par lutilisation de fonction Js.

Figure 21 - PlasMapper : Paramtres optionnels

51

II.2.4 -

G B F EAT E XTRACTOR

Linterface graphique de GbFeatExtractor a t dveloppe avec Swing sur la mme base que le programme de manipulation de Squence savoir Une JTextArea (zone de texte java de la bibliothque Swing) et plusieurs JButtons pour les diffrentes actions possibles du programme : Le traitement dun fichier GenBank, Le traitement en masse dun dossier contenant une liste de fichiers GenBank, La Mise jour de la base de donnes PlasMapper sur la base dun traitement en masse.

Figure 22 - Interface Swing de GbFeatExtractor

52

Toutes ces actions fournissent un affichage du rsultat dans la JTextArea. Le contenu de cette dernire peut tre sauvegard au format multi-Fasta grce loption Save Fasta

Figure 23 GbFeatExtractor: Rsultat aprs traitement

53

II.2.5 -

S EQUENCE

Le programme de squence offre une interface minimaliste munie de deux zones de texte. Une concerne la squence soumettre, lautre affiche le rsultat. Chaque bouton appelle une servlet diffrente qui met jour la zone de rsultat.

Figure 24 - Manipulation de Squence

54

II.2.6 -

M ULTALIN

Deux zones sont distinguables dans linterface de Multalin : La premire permet de soumettre plusieurs squences aligner La seconde permet la soumission de squence(s) passer au Reverse-Complment avant alignement. Ce cas peut se prsenter pour lalignement de squences en sortie de squenceur (contigs sens et anti-sens).

Figure 25 - Interface de Multalin

55

Le rsultat se prsente sous la forme dune page html. Celle-ci est gnre par le script perl qui convertit le fichier rsultat de Multalin en code Html.

Figure 26 - Multalin : Rsultat d'alignement

56

C h a p iittr e 5 :: Chap re 5

C O N C L U S IIO N CONCLUS ON

I - R ESULTATS O BTENUS

Pour se rendre compte de lapport de systme qui a t mis en place, nous allons illustrer un cas concret. Soit la squence dun plasmide client soumise Vectalys :
>plasmide client
aatgtagtcttatgcaatactcttgtagtcttgcaacatggtaacgatgagttagcaacatgccttacaaggagagaaaaagcaccgtgcatgccgattggtggaagtaaggtggtacgatcgtgcct tattaggaaggcaacagacgggtctgacatggattggacgaaccactgaattgccgcattgcagagatattgtatttaagtgcctagctcgatacataaacgggtctctctggttagaccagatctga gcctgggagctctctggctaactagggaacccactgcttaagcctcaataaagcttgccttgagtgcttcaagtagtgtgtgcccgtctgttgtgtgactctggtaactagagatccctcagaccctttta gtcagtgtggaaaatctctagcagtggcgcccgaacagggacttgaaagcgaaagggaaaccagaggagctctctcgacgcaggactcggcttgctgaagcgcgcacggcaagaggcgag gggcggcgactggtgagtacgccaaaaattttgactagcggaggctagaaggagagagatgggtgcgagagcgtcagtattaagcgggggagaattagatcgcgatgggaaaaaattcggtt aaggccagggggaaagaaaaaatataaattaaaacatatagtatgggcaagcagggagctagaacgattcgcagttaatcctggcctgttagaaacatcagaaggctgtagacaaatactgg gacagctacaaccatcccttcagacaggatcagaagaacttagatcattatataatacagtagcaaccctctattgtgtgcatcaaaggatagagataaaagacaccaaggaagctttagacaa gatagaggaagagcaaaacaaaagtaagaccaccgcacagcaagcggccgctgatcttcagacctggaggaggagatatgagggacaattggagaagtgaattatataaatataaagtagt aaaaattgaaccattaggagtagcacccaccaaggcaaagagaagagtggtgcagagagaaaaaagagcagtgggaataggagctttgttccttgggttcttgggagcagcaggaagcact atgggcgcagcgtcaatgacgctgacggtacaggccagacaattattgtctggtatagtgcagcagcagaacaatttgctgagggctattgaggcgcaacagcatctgttgcaactcacagtctgg ggcatcaagcagctccaggcaagaatcctggctgtggaaagatacctaaaggatcaacagctcctggggatttggggttgctctggaaaactcatttgcaccactgctgtgccttggaatgctagtt ggagtaataaatctctggaacagatttggaatcacacgacctggatggagtgggacagagaaattaacaattacacaagcttaatacactccttaattgaagaatcgcaaaaccagcaagaaa agaatgaacaagaattattggaattagataaatgggcaagtttgtggaattggtttaacataacaaattggctgtggtatataaaattattcataatgatagtaggaggcttggtaggtttaagaatagtt tttgctgtactttctatagtgaatagagttaggcagggatattcaccattatcgtttcagacccacctcccaaccccgaggggacccgacaggcccgaaggaatagaagaagaaggtggagagag agacagagacagatccattcgattagtgaacggatctcgacggtatcgataagcttgggagttccgcttacataacttacggtaaatggcccgcctggctgaccgcccaacgacccccgcccatt gacgtcaataatgacgtatgttcccatagtaacgccaatagggactttccattgacgtcaatgggtggagtatttacggtaaactgcccacttggcagtacatcaagtgtatcatatgccaagtacgcc ccctattgacgtcaatgacggtaaatggcccgcctggcattatgcccagtacatgaccttatgggactttcctacttggcagtacatctacgtattagtcatcgctattaccatggtgatgcggttttggca gtacatcaatgggcgtggatagcggtttgactcacggggatttccaagtctccaccccattgacgtcaatgggagtttgttttggcaccaaaatcaacgggactttccaaaatgtcgtaacaactccg ccccattgacgcaaatgggcggtaggcgtgtacggtgggaggtctatataagcagagctctccctatcagtgatagagatctccctatcagtgatagagatcgtcgactagtccagtgtggtggaat tgatcccttcaccatgggtagcaacaagagcaagcccaaggatgccagccagcggcgccgcagcctggagcccgccgagaacgtgcacggcgctggcgggggcgctttccccgcctcgca gacccccagcaagccagcctcggccgacggccaccgcggccccagcgcggccttcgcccccgcggccgccgagcccaagctgttcggaggcttcaactcctcggacaccgtcacctccccg cagagggcgggcccgctggccggtggagtgaccacctttgtggccctctatgactatgagtctaggacggagacagacctgtccttcaagaaaggcgagcggctccagattgtcaacaacaca gagggagactggtggctggcccactcgctcagcacaggacagacaggctacatccccagcaactacgtggcgccctccgactccatccaggctgaggagtggtattttggcaagatcaccaga cgggagtcagagcggttactgctcaatgcagagaacccgagagggaccttcctcgtgcgagaaagtgagaccacgaaaggtgcctactgcctctcagtgtctgacttcgacaacgccaagggc ctcaacgtgaagcactacaagatccgcaagctggacagcggcggcttctacatcacctcccgcacccagttcaacagcctgcagcagctggtggcctactactccaaacacgccgatggcctgt gccaccgcctcaccaccgtgtgccccacgtccaagccgcagactcagggcctggccaaggatgcctgggagatccctcgggagtcgctgcggctggaggtcaagctgggccagggctgctttg gcgaggtgtggatggggacctggaacggtaccaccagggtggccatcaaaaccctgaagcctggcacgatgtctccagaggccttcctgcaggaggcccaggtcatgaagaagctgaggca tgagaagctggtgcagttgtatgctgtggtttcagaggagcccatttacatcgtcacggagtacatgagcaaggggagtttgctggactttctcaagggggagacaggcaagtacctgcggctgcct cagctggtggacatggctgctcagatcgcctcaggcatggcgtacgtggagcggatgaactacgtccaccgggaccttcgtgcagccaacatcctggtgggagagaacctggtgtgcaaagtg gccgactttgggctggctcggctcattgaagacaatgagtacacggcgcggcaaggtgccaaattccccatcaagtggacggctccagaagctgccctctatggccgcttcaccatcaagtcgga cgtgtggtccttcgggatcctgctgactgagctcaccacaaagggacgggtgccctaccctgggatggtgaaccgcgaggtgctggaccaggtggagcggggctaccggatgccctgcccgcc ggagtgtcccgagtccctgcacgacctcatgtgccagtgctggcggaaggagcctgaggagcggcccaccttcgagtacctgcaggccttcctggaggactacttcacgtccaccgagccccag ttccagcccggggagaacctctagaagggctcgagtctagagggcccgcggttcgaaggtaagcctatccctaaccctctcctcggtctcgattctacgcgtaccggttagtaatgagtttggaatta attctgtggaatgtgtgtcagttagggtgtggaaagtccccaggctccccagcaggcagaagtatgcaaagcatgcatctcaattagtcagcaaccaggtgtggaaagtccccaggctccccagc aggcagaagtatgcaaagcatgcatctcaattagtcagcaaccatagtcccgcccctaactccgcccatcccgcccctaactccgcccagttccgcccattctccgccccatggctgactaattttttt tatttatgcagaggccgaggccgcctctgcctctgagctattccagaagtagtgaggaggcttttttggaggcctaggcttttgcaaaaagctccccctgttgacaattaatcatcggcatagtatatcg gcatagtataatacgacaaggtgaggaactaaaccatggccaagttgaccagtgccgttccggtgctcaccgcgcgcgacgtcgccggagcggtcgagttctggaccgaccggctcgggttctc ccgggacttcgtggaggacgacttcgccggtgtggtccgggacgacgtgaccctgttcatcagcgcggtccaggaccaggtggtgccggacaacaccctggcctgggtgtgggtgcgcggcct ggacgagctgtacgccgagtggtcggaggtcgtgtccacgaacttccgggacgcctccgggccggccatgaccgagatcggcgagcagccgtgggggcgggagttcgccctgcgcgacccg gccggcaactgcgtgcacttcgtggccgaggagcaggactgacacgtgctacgagatttaaatggtacctttaagaccaatgacttacaaggcagctgtagatcttagccactttttaaaagaaaa ggggggactggaagggctaattcactcccaacgaagacaagatctgctttttgcttgtactgggtctctctggttagaccagatctgagcctgggagctctctggctaactagggaacccactgctta agcctcaataaagcttgccttgagtgcttcaagtagtgtgtgcccgtctgttgtgtgactctggtaactagagatccctcagacccttttagtcagtgtggaaaatctctagcagtagtagttcatgtcatctt attattcagtatttataacttgcaaagaaatgaatatcagagagtgagaggaacttgtttattgcagcttataatggttacaaataaagcaatagcatcacaaatttcacaaataaagcatttttttcactg cattctagttgtggtttgtccaaactcatcaatgtatcttatcatgtctggctctagctatcccgcccctaactccgcccatcccgcccctaactccgcccagttccgcccattctccgccccatggctgact aattttttttatttatgcagaggccgaggccgcctcggcctctgagctattccagaagtagtgaggaggcttttttggaggcctagggacgtacccaattcgccctatagtgagtcgtattacgcgcgctc actggccgtcgttttacaacgtcgtgactgggaaaaccctggcgttacccaacttaatcgccttgcagcacatccccctttcgccagctggcgtaatagcgaagaggcccgcaccgatcgcccttcc caacagttgcgcagcctgaatggcgaatgggacgcgccctgtagcggcgcattaagcgcggcgggtgtggtggttacgcgcagcgtgaccgctacacttgccagcgccctagcgcccgctcctt tcgctttcttcccttcctttctcgccacgttcgccggctttccccgtcaagctctaaatcgggggctccctttagggttccgatttagtgctttacggcacctcgaccccaaaaaacttgattagggtgatggt tcacgtagtgggccatcgccctgatagacggtttttcgccctttgacgttggagtccacgttctttaatagtggactcttgttccaaactggaacaacactcaaccctatctcggtctattcttttgatttataa gggattttgccgatttcggcctattggttaaaaaatgagctgatttaacaaaaatttaacgcgaattttaacaaaatattaacgcttacaatttaggtggcacttttcggggaaatgtgcgcggaacccct atttgtttatttttctaaatacattcaaatatgtatccgctcatgagacaataaccctgataaatgcttcaataatattgaaaaaggaagagtatgagtattcaacatttccgtgtcgcccttattcccttttttgc ggcattttgccttcctgtttttgctcacccagaaacgctggtgaaagtaaaagatgctgaagatcagttgggtgcacgagtgggttacatcgaactggatctcaacagcggtaagatccttgagagtttt cgccccgaagaacgttttccaatgatgagcacttttaaagttctgctatgtggcgcggtattatcccgtattgacgccgggcaagagcaactcggtcgccgcatacactattctcagaatgacttggttg agtactcaccagtcacagaaaagcatcttacggatggcatgacagtaagagaattatgcagtgctgccataaccatgagtgataacactgcggccaacttacttctgacaacgatcggaggacc gaaggagctaaccgcttttttgcacaacatgggggatcatgtaactcgccttgatcgttgggaaccggagctgaatgaagccataccaaacgacgagcgtgacaccacgatgcctgtagcaatg gcaacaacgttgcgcaaactattaactggcgaactacttactctagcttcccggcaacaattaatagactggatggaggcggataaagttgcaggaccacttctgcgctcggcccttccggctggct ggtttattgctgataaatctggagccggtgagcgtgggtctcgcggtatcattgcagcactggggccagatggtaagccctcccgtatcgtagttatctacacgacggggagtcaggcaactatggat gaacgaaatagacagatcgctgagataggtgcctcactgattaagcattggtaactgtcagaccaagtttactcatatatactttagattgatttaaaacttcatttttaatttaaaaggatctaggtgaag atcctttttgataatctcatgaccaaaatcccttaacgtgagttttcgttccactgagcgtcagaccccgtagaaaagatcaaaggatcttcttgagatcctttttttctgcgcgtaatctgctgcttgcaaac (..)

57

Bien souvent Vectalys reoit une squence Fasta ou une squence brute sans complment dinformation. Aussi ds de le dbut de la chaine de production il faut analyser le contenu de cette squence laide de loutil Vector NTI. Avant la mise en place de PlasMapper, on recherchait manuellement (recherche de texte) les motifs les plus importants pour la production. Il est, par ailleurs, trs difficile dannoter le plasmide en entier (il faudrait faire plusieurs BLAST, portion par portion ce qui est trs long et fastidieux), sans parler des problmatiques qui se posent en cas de mismatch.

Figure 27 - rsultat annotation manuelle VNTI

Avec PlasMapper, une simple soumission de la squence produit le rsultat suivant :

Figure 28 - Annotation PlasMapper

58

Le rsultat permet non seulement de visualiser les motifs les plus importants, mais il fait ressortir galement dautres informations potentiellement utiles et qui aurait ncessit tude complmentaire de la squence. En outre, la sortie GenBank, permet lintgration de ces informations au sein de Vector NTI, ou toute autre application permettant la visualisation de carte plasmidique.

Figure 29 - motifs GenBank issus de PlasMapper

59

Lintgration du fichier GenBank dans Vector NTI permet, entre autres, dliminer laffichage des lments non utiles.

Figure 30 - Squence GenBank issue de PlasMapper

60

Ainsi, aprs suppression de quelques doublons et annotation manuelle du TRANSGENE (lment potentiellement absent de la base de donnes), on a accs des informations importantes comme le promoteur (CMV-tetO), le RSV U3 et autres lments viraux (qui peuvent diffrer selon les plasmides).

Figure 31 - Visualisation d'un GenBank PlasMapper sous VNTI

Il faut environ 5 minutes pour faire toute la dmarche ce qui acclre considrablement le processus danalyse. Il faut cependant noter quil reste encore un travail fournir au niveau du raffinage de la base de donnes, qui contient actuellement des pseudo-doublons . En effet, malgr les diffrents contrles mis en place pour viter la multiplication dlments doubles. Il est toujours dlicat dliminer des lments au motif de leur grande ressemblance. Certains lments diffrent de quelques bases dautres sont des versions longues des mmes lments. Il y a donc toute une bio-analyse fournir pour rendre la base parfaitement propre et solide. Un travail qui demande un retour dexprience aprs quelque temps dutilisation.

61

II - D IFFICULTES R ENCONTREES

Globalement la principale difficult rencontre est lie au fait que mon stage ne se soit pas droul dans un service bioinformatique regroupant plusieurs informaticiens et/ou bioinformaticiens avec un panel largi de connaissances techniques. En effet, spcialise en bioinformatique analytique, ma responsable na pas t forme la programmation Java, et elle na pas t amene programmer depuis plusieurs annes, il a fallu donc faire preuve de beaucoup dautonomie. Cela sest traduit par de nombreuses recherches lors de confrontations des problmes de programmation. Beaucoup plus laise aujourdhui avec ladministration de poste Linux, jai parfois prouv quelques difficults dans la mise en place de certains outils, l o la procdure est souvent automatise sous environnement Windows. Jai donc d me documenter rgulirement pour matriser certains aspects du systme dexploitation.

III -

A PPORTS

v Pour lentreprise : Lors de ces 6 mois de stage, jai pu apporter mon savoir-faire dans les domaines touchants la biologie et linformatique au sein de lentreprise. Les objectifs ont t atteints mme si la mise en place dune base de donnes quelle quelle soit ncessite un travail en aval afin daffiner et damliorer son contenu. Jai notamment permis lamlioration des protocoles danalyse bioinformatiques par le regroupement et lautomatisation des outils ncessaires lannotation des plasmides. Cela sest traduit par un gain en rapidit et donc en productivit pour lquipe Plasmide. Lutilit du portail bioinformatique sest tendue dautres quipes, telles que le service Vecteur dans le cadre du projet Ship-in et le service qualit pour les vrifications sur les lments ncessaires la bio-scurisation des vecteurs. Jai, par ailleurs, particip activement la maintenance du parc informatiq ue avec rdaction de protocoles de maintenance. Jai galement t acteur dans lextension du parc informatique (choix du matriel, analyse de devis)

62

Enfin lors de mon stage, le site internet de la socit a t victime dune attaque dun robot, ce qui a ncessit les actions suivantes : Contrle de lintgrit du site, Pr-nettoyage, Rcupration des logs depuis les serveurs de lhbergeur laide dun script shell, Contact avec lhbergeur et les dveloppeurs du site pour lidentification et la rsolution des failles de scurit.

v A titre personnel : Sur le plan personnel, ces 6 mois ont t trs enrichissants car jai, tout dabord pu dcouvrir la ralit du terrain avec le type de besoins que peuvent avoir les structures prives de cette taille. Jai dcouvert ce qui ma sembl tre une des forces du bioinformaticien, savoir la polyvalence. Jai pu dvelopper une plus grande matrise dans ladministration de postes et de serveur sous environnement Linux. Jai normment appris en matire de construction de sites web, de design et des difficults lies la mise en place dune interface simple, efficace, sans pour autant dlaisser laspect esthtique. Jai pu galement amliorer de faon significative les connaissances acquises en License de microbiologie, notamment en virologie, biotechnologie des vecteurs et plus gnralement en gntique. Enfin la valorisation de mon travail et de mes activits au sein de Vectalys a suscit en moi une vraie passion, confortant mes choix dorientation au-del des mes attentes.

63

R E F E R E N C E S B IIB L IIO G R A P H IIQ U E S R E F E R E N C E S B B L O G R AP H Q U E S


DeWeese, et al. 2000-2001. Apache batik project. xmlgraphics. [En ligne] 2000-2001. http://xmlgraphics.apache.org/batik/. Dong, Xiaoli, et al. 2004. PlasMapper. PlasMapper : a web server for drawing and autoannotating plasmid maps. 2004. Holland, R.C.G., et al. 2008. Biojava. an Open-Source Framework for Bioinformatics. aot 2008. Kaplan, Jean-Claude et Delpech, Marc. 2007.Biologie Molculaire et Mdecine. 3e dition. Paris : Flammarion Mdecine-Sciences, 2007. p. 815. 978-2-2571-3488-2. Pasquier, Christophe, et al. 2005.Virologie Humaine et Animale. Paris : SCIENCES SUP, 2005. p. 281. 2-10-048845-7. Stothard, Paul et Wishart, David S. 2004. CGView. Circular genome visualization and exploration using CGView. 2004. Sun Microsystems. jcp.org. [En ligne] http://www.jcp.org.

64

AN N E X E S AN N E X E S

I - D EFINITION

DES

T ECHNOLOGIES UTILISEES

Tomcat : Le moteur de servlet Tomcat est souvent employ en combinaison avec un serveur Web Apache ou d'autres serveurs Web. Il sagit dun conteneur libre de servlets Java Enterprise Edition (JEE). Issu du projet Jakarta, Tomcat est un projet de la fondation Apache qui implmente les spcifications des servlets et des JSP du Java Community Process (Sun Microsystems). Il est paramtrable via des fichiers XML et inclut des outils pour la configuration et la gestion. Il comporte galement un serveur HTTP.

Mercurial : est un systme de gestion de versions permettant en particulier la gestion de version dcentralise. Il est disponible sur plusieurs plates-formes : systmes Unix, Windows, Mac OS X. Le crateur et principal dveloppeur de Mercurial est Matt Mackall. C'est un logiciel libre, l'ensemble des sources du logiciel tant sous la GNU GPL version 2. Mis disposition pour la premire fois le 19 avril 2005, il est disponible pour les systmes d'exploitation Microsoft Windows, Mac OS X, et sur la plupart des systmes d'exploitation du type Unix. Mercurial est crit principalement en Python. Il a t cr pour s'utiliser via des lignes de commande.

Le parsing est une technique qui consiste analyser un flux de caractres, fourni en input. Le parsing peut conduire soit segmenter le flux fourni en entre, en lments plus petits et caractristiques, soit utiliser un motif, un modle ou plusieurs (patterns) servants extraire du flux exclusivement les donnes qui correspondent au motif, en vue de les manipuler. Le parsing va donc tre trs utile pour : tester l'existence de donnes manipuler un flux de donnes extraire des informations choisies de ce flux de donnes.

65

BASH : C'est aussi le shell par dfaut de Mac OS X et il a t port sous Windows par le projet Cygwin. Comme tous les interprteurs en ligne de commande de type script, Bash excute quatre oprations fondamentales : 1) Il fournit une liste de commandes permettant d'oprer sur l'ordinateur (lancements de programmes, copies de fichiers) ; 2) Il permet de regrouper ces commandes dans un fichier unique, appel script ; 3) Il vrifie la ligne de commande lors de son excution ou lors d'une ventuelle procdure de vrification, et renvoi un message d'erreur en cas d'erreur de syntaxe; 4) En cas de validation, chaque ligne de commande est interprte, c'est--dire traduite dans un langage comprhensible par le systme d'exploitation, qui l'excute alors.

LHypertext Markup Language, gnralement abrg HTML, est le format de donnes conu pour reprsenter les pages web. Cest un langage de balisage qui permet dcrire de lhypertexte, do son nom. HTML permet galement de structurer smantiquement et de mettre en forme le contenu des pages, dinclure des ressources multimdias dont des images, des formulaires de saisie, et des lments programmables tels que des applets. Il permet de crer des documents interoprables avec des quipements trs varis de manire conforme aux exigences de laccessibilit du web. Il est souvent utilis conjointement avec des langages de programmation (JavaScript) et des formats de prsentation (feuilles de style en cascade). HTML est initialement driv du Standard Generalized Markup Language (SGML). Successeur du HTML, le XHTML est le premier pas accomplir vers le Web de demain : la fois compatible avec les navigateurs dhier et avec le XML, sa rigueur en fait un puissant langage de structuration de contenu, laissant le soin de la prsentation aux CSS. Pour laborder, ceux qui connaissent le HTML des annes 90 devront surtout apprendre oublier les balises obsoltes et respecter lusage normalis de celles qui avaient t dtournes de leur fonction.

CSS (Cascading Style Sheets : feuilles de style en cascade) est un langage informatique qui sert dcrire la prsentation des documents HTML et XML. Lobjectif majeur de ce langage est de sparer la structure d'un document de ses styles de prsentation

66

JavaScript est un langage de programmation de scripts principalement utilis dans les pages web interactives, mais aussi cot serveur. C'est un langage orient objets prototype, c'est--dire que les bases du langage et ses principales interfaces sont fournies par des objets qui ne sont pas des instances de classes, mais qui sont chacun quips de constructeurs permettant de gnrer leurs proprits, et notamment une proprit de prototypage qui permet d'en gnrer des objets hritiers personnaliss. Le langage a t cr en 1995 par Brendan Eich pour le compte de Netscape Communications Corporation

jQuery est une bibliothque JavaScript libre qui porte sur l'interaction entre JavaScript (comprenant AJAX) et HTML, et a pour but de simplifier des commandes communes de JavaScript. La premire version date de janvier 2006.

67

II - L ES

DIFFERENTS FORMAT S DE SEQUENCE

ADN UTILES POUR LE PROJE T :

v format brut (plain sequence) Une squence au format brut contient uniquement les caractres IUPAC et des espaces (pas de chiffre). Un fichier dans ce format ne peut contenir quune seule squence alors que dautres formats acceptent plusieurs squences dans un fichier. Exemple :
AACCTGCGGAAGGATCATTACCGAGTGCGGGTCCTTTGGGCCCAACCTCCCATC CGTGTCTATTGTACCCTGTTGCTTCGGCGGGCCCGCCGCTTGTCGGCCGCCGGG GGGGCGCCTCTGCCCCCCGGGCCCGTGCCCGCCGGAGACCCCAACACGAACAC TGTCTGAAAGCGTGCAGTCTGAGTTGATTGAATGCAATCAGTTAAAACTTTCAAC AATGGATCTCTTGGTTCCGGC

v Fasta : Un fichier de squence au format FASTA peut contenir plusieurs squences, il sagit alors dun fichier multi-Fasta. Une squence Fasta commence avec une seule ligne de description, suivie par plusieurs lignes contenant les donnes de squence. La ligne description doit commencer par le symbole plus grand que ( > ) Exemple :
>U03518 Aspergillus awamori internal transcribed spacer 1 (ITS1) AACCTGCGGAAGGATCATTACCGAGTGCGGGTCCTTTGGGCCCAACCTCCCATC CGTGTCTATTGTACCCTGTTGCTTCGGCGGGCCCGCCGCTTGTCGGCCGCCGGG GGGGCGCCTCTGCCCCCCGGGCCCGTGCCCGCCGGAGACCCCAACACGAACAC TGTCTGAAAGCGTGCAGTCTGAGTTGATTGAATGCAATCAGTTAAAACTTTCAAC AATGGATCTCTTGGTTCCGGC

68

v GCG: Un fichier au format GCG contient une seule et unique squence, qui commence par des lignes dannotations. La premire ligne de la squence est identifie par la ligne qui la prcde, cette dernire se terminant par deux points (".."). Ces lignes contiennent galement lidentifiant, la longueur et la somme de contrle de la squence. Ce format ne devrait tre utilis que si le fichier est cr avec le package GCG. Exemple :
ID AA03518 standard; DNA; FUN; 237 BP. XX AC U03518; XX DE Aspergillus awamori internal transcribed spacer 1 (ITS1) and 18S DE rRNA and 5.8S rRNA genes, partial sequence. XX SQ Sequence 237 BP; 41 A; 77 C; 67 G; 52 T; 0 other; AA03518 Length: 237 Check : 4514 .. 1 61 121 181 aacctgcggaaggatcattaccgagtgcgggtcctttgggcccaacctcccatccgtgtc tattgtaccctgttgcttcggcgggcccgccgcttgtcggccgccgggggggcgcctctg ccccccgggcccgtgcccgccggagaccccaacacgaacactgtctgaaagcgtgcagtc tgagttgattgaatgcaatcagttaaaactttcaacaatggatctcttggttccggc

v GenBank : Un fichier GenBank commence par Lattribut LOCUS suivi dun nombre variable de lignes dannotations. Le dbut de la squence est identifi par lattribut ORIGIN et sa fin est marque par deux slash ( // ). Lattribut FEATURES contient les annotations relatives aux lments identifis sur la squence gntique (promoteurs, sites de restrictions...) Exemple :
LOCUS DEFINITION ACCESSION BASE COUNT FEATURES ORIGIN 1 aacctgcggaaggatcattaccgagtgcgggtcctttgggcccaacctcccatccgtgtc 61 tattgtaccctgttgcttcggcgggcccgccgcttgtcggccgccgggggggcgcctctg 121 ccccccgggcccgtgcccgccggagaccccaacacgaacactgtctgaaagcgtgcagtc 181 tgagttgattgaatgcaatcagttaaaactttcaacaatggatctcttggttccggc // AAU03518 237 bp DNA PLN 04-FEB-1995

Aspergillus awamori internal transcribed spacer 1 (ITS1) and 18S rRNA and 5.8S rRNA genes, partial sequence. U03518 41 a 77 c 67 g 52 t

69

III -

D IAGRAMME DE CAS D UTILISATIONS DU PORT AIL B IOINFORMATIQUE

70

IV -

D IAGRAMME DE CAS D UTILISATIONS DE P LAS M APPER

71

V - D IAGRAMME

DE CLASSES

S IMPLIFIE DE P LAS M APPER

72

VI -

D IAGRAMME DE CAS D UTILISATIONS DE G B F EAT E XTRACTOR

73

VII -

F ICHIER W EB . XML DE CONFIGURATION DE P LAS M APPER

<web-app> <servlet> <servlet-name>DrawVectorMap</servlet-name> <servlet-class>servlet.DrawVectorMap</servlet-class> </servlet> <servlet> <servlet-name>TextMap</servlet-name> <servlet-class>servlet.TextMap</servlet-class> </servlet> <servlet> <servlet-name>GenbankOutput</servlet-name> <servlet-class>servlet.GenbankOutput</servlet-class> </servlet>

<servlet-mapping> <servlet-name>DrawVectorMap</servlet-name> <url-pattern>/servlet/DrawVectorMap</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>TextMap</servlet-name> <url-pattern>/servlet/TextMap</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>GenbankOutput</servlet-name> <url-pattern>/servlet/GenbankOutput</url-pattern> </servlet-mapping> </web-app>

74

VIII -

D IFFERENTS STYLES UTI LISES POUR LE PORTAIL B IOINFORMATIQUE

75

76