Team:Mexico-UNAM-CINVESTAV/Software

From 2010.igem.org

Revision as of 18:49, 26 October 2010 by Cjdg (Talk | contribs)

About the idea

Steps for design a Non-Coding BioBrick part

  1. Consult databases like NCBI, PUBMED, Etc. for a sequence with a function.
  2. Analyze our sequences looking for restriction sites (In case of BB RFC 10, EcoRI XbaI SpeI PstI NotI.
  3. In the case that there are one or more sites, we have to replace them, mostly depending on the published tables on the Codon Usage Database.
  4. Then we had to analyze again for restriction sites, if there are not any so we can continue.
  5. If we are going to take it from an organism, we have to design primer to amplify our BioBrick with a PCR, this primers has the prefix and suffix from the chosen standard, if not send the sequences for sinthesize.



Steps for design a Coding BioBrick part

  1. Consult databases like NCBI, PUBMED, Etc. for a sequence with a function.
  2. Retro-transcribe to the alphabet for our chassis, this can be done using the tables on Codon Usage Database.
  3. Analyze our sequences looking for restriction sites (In case of BB RFC 10, EcoRI XbaI SpeI PstI NotI.
  4. In the case that there are one or more sites, we have to replace them, mostly depending on the published tables on the Codon Usage Database.
  5. Then we had to analyze again for restriction sites, if there are not any so we can continue.
  6. If we are going to take it from an organism, we have to design primer to amplify our BioBrick with a PCR, this primers has the prefix and suffix from the chosen standard, if not send the sequences for sinthesize.


The problem

Folowing this steps almost involves the use of at least 3 different kind of platforms to work, plus the difficult to use them, and its related learning curve, this can be done easily, when we work with few parts, but gets complicated when working with hundreds of them.

The next table describes a little bit about the problematic:

http://sourceforge.net/projects/biobrick-jtools/


FeatureManual MethodCommercial SoftwareBioBrick jtools
Can connect with published databases?Mx-48px-Crystal Clear action apply.pngMx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action apply.png
Can read any file format?Mx-48px-Crystal Clear action apply.pngMx-48px-Crystal Clear action apply.pngMx-48px-Crystal Clear action apply.png
Allows to reflect changes in any step of the design?Mx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action apply.png
Can do a batch process for many files?Mx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action apply.png
Can export to any format?Mx-48px-Crystal Clear action apply.pngMx-48px-Crystal Clear action apply.pngMx-48px-Crystal Clear action apply.png
Source code available?SometimesSometimesMx-48px-Crystal Clear action apply.png
Based on OpenSource?SometimesSometimesMx-48px-Crystal Clear action apply.png
Can be extended?SometimesMx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action apply.png
Runs on any platform?Mx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action button cancel.pngMx-48px-Crystal Clear action apply.png

The Solution

Surfing on the web, we can look for different applications and frameworks used to work on Bioinformatics, which we can adapt to our needs, mostly available software is not designed to work with the special needs for Synthetic Biology and more with the iGEM Requirements, plus the chances to automate it the process to maximun allowing us to enhance productivity, and to let us to connect it with other software related.

This lack of software makes a great chance to explore the road to develop a software that can meet our requirements plus add the ability to be extended by anyone of the community, plus being free as in Free Speech.

The framework used

  1. look which language could be used, and plus taking all the advantajes was decided to use Java ™ language, which is object oriented and has ported runtimes in almost all Operating Systems, plus the availability of Open Source implementations.
  2. Use a framework thad can be extended,Biojava is a framework designed to work with biological data and can be extended, its OpenSource based so its source is fully available and can be viewed how it works from its inside.
  3. Design the logic of the application and test it.