Team:Michigan Software/Project


Michigan Software



Choosing reliable protocols for new experiments is a problem laboratories routinely face. Experimental practices differ immensely across laboratories, and precise details of these practices may be lost or forgotten as skilled members leave the lab. Such fragmentation in protocol methods and their documentation often hampers scientific progress. Indeed, there are few well-defined protocols that are generally agreed upon by the scientific community, in part due to the lack of a system that measures a protocol’s success. In turn, the lack of commonly accepted protocols and inadequate documentation affects experimental reproducibility through method inconsistencies across laboratories. Review studies even estimate that only 10-25% of published scientific results are reproducible, and up to 54% of materials/antibodies/organisms are not identifiable for reproducibility studies ( This is an alarming figure and suggests that many of the results we base continued research and development on are inaccurate or cannot be replicated independently.

To attempt to address these problems, we set out to build a database that integrates a crowd-sourced ratings and comments system to clearly document, rate, elaborate, review, and organize variants of experimental protocols in order to increase the likelihood of reproducible scientific results. This would streamline some of the confusion associated with finding and replicating protocols by creating a database where investigators can upload protocols, comment on them, and even use a rating system to allow the best protocols to rise to the top. Before starting, we designed a survey (which you can check out here) to poll a range of scientific researchers on their experiences trying new protocols. We disseminated it across our networks and over social media to judge the interest and usefulness of our project. For those still interested, the survey will be available here for people to take at least through the end of 2014. So far, we've found that among a diverse and experienced set of respondents, every single scientist has struggled with replicating protocols from other experimenters, with >50% of respondents having difficulty more than 25% of the time.

Additionally, our survey identified that unclear language and missing steps of protocols as the greatest contributors to the irreproducibility of protocols. Furthermore, 100% of respondents indicated they would use a database like this to browse and download protocols, and over 85% indicated they would upload and maintain their own protocols if such a site existed (click here for a complete list of results). With these data and interest in hand, we set out to build ProtoCat.


The aims of this project were threefold:

  • To start an iGEM software team at the University of Michigan and populate it with a diverse population of students.
  • To construct useful software for laboratory scientists. We designed the protocol database project based on our own and other's frustrations in identifying reliable and effective scientific protocols.
  • To use our basic project idea to survey a wide range of scientific students and professionals to determine exactly what the best iteration of this project would do and adapt our goals as such.


Our project is based on Django, a free, open-source web framework, written in Python. Django allows us to create a simple, database-driven website which:

• can be hosted on any server (or locally).

• is modular and can be molded to specific individual needs.

• is built on a well-documented , easy to learn framework.

Our web application can be downloaded from Github and easily installed on any computer with Django/Python. Our implementation uses an embedded SQLite database, although a number of databases can be used.

Concept map.png


- Formed a brand new iGEM team! On top of that, we all learned new languages for this :)

- Reached out to and engaged the scientific community to create awareness for the problem and prioritize the development of a solution.

- Created ProtoCat, a functional registry for laboratory procedures.

Future Directions

- Variable protocols with integrated calculators: Our next step is to allow users to create calculator functions for specific tasks, and embed them with the protocol.

- vendor information: allow direct linking to reagents, materials, etc. from vendors.

- in-app purchasing: allow users to directly purchase reagents, materials, etc. that are included in the protocol, through third-party vendors.

- protocol timer

-As far as the team goes, we plan to reach out to more people next year; as fun as this smaller group was, we want to ensure that we have a greater variety of skillsets and thought processes to contribute to the best project possible

contact info: