This page is old. Its information is no longer valid. Please go to the 2015 Software Track page for updated information.

This page was created for the iGEM 2012 Software Division.

Welcome to iGEM Software Tools Development

iGEM software development is based on an ecosystem of four concepts:

A repository of open source software tools.

Community driven data exchange standards.

Specific software frameworks built explicitly for synthetic biology.

Part information in the Registry of Standard Biological Parts.

These four concepts find a home in a revamped iGEM competition software track. The software track now complements the other tracks in iGEM with new goals, medal criteria, and awards to reflect the distinct requirements of tools in this domain.

The first concept will be supported by archiving each team's software in a centralized location. This will increase software reuse, interoperability, and collaboration. Ideally software will be reused in much the same way that the BioBrick parts are used by wet labs.

Concepts

The Registry of Software Tools is the computational analog to the Registry of Biological Parts. Driven by the large library of software tools generated by iGEM teams annually, the Registry of Software Tools will be a central location to store and access this growing resource.

Synthetic Biology Open Language (SBOL) is a language for the description and the exchange of standard biological part designs. You can start using SBOL in your software by reading about the file format, checking out the library libSBOLj, and for more details see the specification.

The BBF is a public-benefit organization which looks to promote the standardizing of BioBrick parts. One such effort is through the Request for Comments (RFC) mechanism. RFCs are static documents or digital objects like videos intended to get an idea, proposed standard, or method out to the rest of the community for comment. RFCs are numbered, for ease of referencing, and the numbers are assigned by the BBF.

There are a number of software efforts which look to make the specification, design, assembly, simulation, and data management activities in synthetic biology more efficient, automated, predictive, collaborative, and standardized. These efforts will allow us to develop more complex systems and incorporate advanced modeling methodologies. These frameworks are created by small research groups. iGEM provides an opportunity to improve upon these tools.

The Registry is a continuously growing collection of genetic parts that can be mixed and matched to build synthetic biology devices and systems. Founded in 2003 at MIT, the Registry is part of the Synthetic Biology community's efforts to make biology easier to engineer. It provides a resource of available genetic parts to iGEM teams and academic labs.

Starting in 2011 it is our intention to elevate the development of software tools for synthetic biology to the same level of community support and participation currently experienced by the general iGEM competition. To this end, it is our goal to re-energize the software development of iGEM participants by:

Reducing the amount of redundant code development.

Increasing the size and scope of software development by leveraging previous projects and experiences.

More closely couple the development of software with the experimental techniques and requirements of the wetlab.

This page will serve as the starting point for these efforts. So join us and help create the tools, algorithms, and infrastructure to power the next generation of Synthetic Biology. We can't wait to see what you create!!

Software Competition Overview

iGEM traditionally has been a venue for teams to create designs in wetlabs. Starting in 2008, area awards for software tools were introduced. These efforts produced a number of truly unique software projects. However, there were a number of aspects which could be improved. Our goal is to begin the process of making the software aspects of iGEM more fully featured. This will include a centralized repository for the software tools developed. This will help to not only preserve the projects but also allow others to avoid building existing tools as well as extend them. Second, we hope to help create a community of users around specific design frameworks and community standards.

This page is the beginning of this process!

Organizing Committee

The Chairs of the iGEM Software track are: Douglas Densmore and Randy Rettberg. Due to the truely international nature of the iGEM competition, each region will have a separate, local organizing committee. These members are listed in the table below:

Past Software Projects

(provided by Michal Galdzicki)

http://igem.synbioreview.com/ is a browsable collection of all the iGEM projects that created software. It has information about the Team, Year, Category, Availability (Free/Not available), and Software Dependencies.

We collected the information by crowd-sourcing the problem of collecting information about the iGEM projects. A group of volunteers browsed to every *.igem.org/* page that mentioned "software". We recorded a sample of pertinent information about each iGEM project. We hope to create a great reference to checkout what was done in the past.

The page is of course a work in progress. If you find something missing or incorrect please help. Please submit any feedback or comments here or use the Issues page on Github to submit feature requests (Enhancements) or bugs. https://github.com/mgaldzic/igemsoft/issues

You can also edit the data directly, look at bottom of iGEMsoft page for a link to the spreadsheet.

Skype Question and Answer Sessions

The following dates and times are proposed to have teleconferences with the regions to provide feedback and answer questions:

Asia - TBD

Europe - TBD

Latin America - TBD

America West - TBD

America East - TBD

Software Competition Judging

Judging for the Software Tools track will have area-specific requirements for medals as detailed below. Software Tools teams are also eligible for selection as Finalists, Grand Prizes, and Special Prizes. It is possible that the medals in the software track will be replaced with "Mousepads", which are of equivalent significance. This will depend on available funds and interest.

Bronze Medal

Register the team, have a great summer, and have fun attending the Jamboree.

Create and share a description of the team's project via the iGEM wiki.

Present a Poster and Talk at the iGEM Jamboree.

Develop and make available via the The Registry of Software Tools an open source software tool that supports synthetic biology based on BioBrick standard biological parts (remember, the iGEM judges will be looking for substantial team-based software projects).

Silver Medal

To earn a Silver Medal, in addition to the Bronze Medal requirements, a team must do ONE of the following:

Provide a detailed, draft specification for the next version of your software tool

Provide a demonstration of their software either as a textual or video tutorial made available on their wiki. This tutorial should explain all the features of the tool as well as provide sample input and output as appropriate.

Gold Medal

To earn a Gold Medal, in addition to the Silver Medal requirements, a team must:

1. Have another team utilize the software developed by your team. You must clearly show how your software was used and the results that were obtained.

Software Competition Special Awards

In addition to the best software tool overall award, six additional awards may be presented provided that enough qualified entries are received.

Best Clotho App

Clotho is for engineering synthetic biological systems and managing the data which is used to create them. It also provides a mechanism to begin the process of creating standardized data, algorithms, and methodologies for synthetic biology. You can find out more about Clotho here.

In order to qualify for this award you must:

Create a Clotho App which runs in Clotho v2.0 or higher. This will be written in Java and be fully documented both in the source code along with a user manual added to clothohelp.org. For more information on making a Clotho app read this.

Fully illustrate how that App uses the Clotho data model by retrieving, manipulating, and then storing data back in to a Clotho based database.

Make the Clotho App available and its source code to the larger Clotho project (details TBA).

If you are interested in creating a Clotho App, please see www.clothohelp.org for more information. In particular check out the pages related to "Developer Information". If you have further questions please contact dougd@bu.edu.

Best Eugene Based Design

The Clotho platform provides a special App (i.e. the EugeneScripter) for using the Eugene language, which offers a textual notation to specify novel synthetic biological designs using parts and devices, as well as to constrain their composition. Similar to computer programming languages, Eugene provides control structures (i.e., conditional branches and loops), as well as facilities to declare and invoke function prototypes. For further information, please consult http://eugene.sourceforge.net.

In order to qualify for this award you must:

Write one or more Eugene scripts in which you specify your novel design(s) by using include statements, control structures, loops, and function prototypes

Utilize Eugene's provided set of rules to constrain your design's composition (and try to keep the number of rules as low as possible)

Use Eugene's functions (product and permute) to generate the rule-compliant designs automatically

If your team has a wetware component, then you can earn additional points for

building and discussing your Eugene designs in the wetlab,

reporting and documenting the achieved outcomes (i.e. did the designs work?)

Ultimately, we will ask you to fill out an online questionnaire to report and Eugene's usability, applicability, expressiveness, and the completeness of Eugene's current rule set (further information will be provided soon).

If you have further questions please contact ernstl@bu.edu or huangh@bu.edu with your concerns. In case you discover any bug, please report a detailed bug description.

Best SBOL Based Tool

Adopt SBOL in your software to enable synthetic biology information sharing. To show that you are using SBOL you must demonstrate that the data you output conforms to the SBOL file format (as appropriate). For example, to demonstrate that it does conform, you could show that another SBOL compliant tool can read it (or vise-versa). Checkout the Tools menu on the Registry, http://partsregistry.org/Part:BBa_T9002, and read the documentation for the SBOL Converter. If you are using SBOL-visual, your software application should demonstrate its use in synthetic biology practice. For example, that your wet-lab team or another (wet-lab or software)team made use of the output of your SBOL-visual compliant tool in their project.

Document your use of SBOL by describing how it was used to perform information exchange. Be very clear to describe what was exchanged or communicated so the judges can assess your contribution.

Describe any challenges you faced in conforming to the SBOL standard. Tell the judges how SBOL should be changed to meet those challenges. SBOL is extensible, community driven, and evolving; consider writing a BBF RFC proposing an extension to overcome the challenges you faced.

Best Genome Compiler Based Design

Genome Compiler is built on the idea that biology is information technology.
Just like another information technology - computers, genetic engineers also need tools to design, debug and compile their code: A genome compiler.
Designed with the iGem competitors needs in mind, Genome Compiler contains the repository of standard biological parts with a beautiful, easy yet powerful tool for genetic engineers.

Best Characterization Based Design

Best Interaction with the Parts Registry

The Registry is a continuously growing collection of genetic parts that can be mixed and matched to build synthetic biology devices and systems. Founded in 2003 at MIT, the Registry is part of the Synthetic Biology community's efforts to make biology easier to engineer. It provides a resource of available genetic parts to iGEM teams and academic labs.

In order to qualify for this award you must do one of the following:

Provide a new software interface to both retrieve information from and store information to the Parts registry. You should clearly demonstrate how this approach is superior to using the Parts web site directly.

Develop a methodology to quantify BioBrick performance which is supported by a software tool. Characterization, user reviews, and formally tracking parts used successfully in designs are all examples. Users should be able to both query this information as well as add it themselves. This should complement what is in the registry.

Propose an alternate interaction with the registry. Clearly document this on your wiki in a page explicitly dedicated to this aspect of your tool. You should clearly show how to use this tool in a design flow used by experimental iGEM teams.