Team:USTC-Software/Engineering

Document

Engineering Success

Overview

With 13 talented students from different departments, our teams is full of variety of abilities, possibilities and sparks of thought. Given the size of our team, we draw on the overall development mindset of agile development. In software development, agile (sometimes written Agile) is a set of practices intended to improve the effectiveness of software development professionals, teams, and organizations. It involves discovering requirements and developing solutions through the collaborative effort of self-organizing and cross-functional teams and their customer(s)/end user(s). So we take iterative development.

Investigation and Research

After reading a lot of papers related to synthetic biology, we found that traditional synthetic biology often relies on a large number of repetitive experiments to obtain results, and the failure of the experiments often means the passage of time and the stagnation of project progress. With the rapid development of data science, researchers can use machine learning or deep learning to find patterns or discover new phenomena in huge amounts of data. A presentation on the application of machine learning in materials science during the research gave us the idea of conducting a project about machine learning.

Project Reorientation

As the project progressed, we found that there were many fields with similar requirements. We thought that if we developed a model with our own knowledge and technology, it might only help a small number of researchers and iGEMers, so we conducted another research effort and found that there are some mature machine learning models and results in certain biological fields. Thus, we talked with our teachers again and decided to build a tool that provides various biology-related machine learning models.

Birth of Educational Version

After our platform was built to provide some tools to predict four properties of proteins, we introduced out platform to teachers and students in related labs at school, in addition to some iGEMers. During this period, we tried to do some science popularization, and at the same time we found that education has an extremely important role in synthetic biology development, so we had the idea to make an educational version. The purpose of the educational version is to introduce the basics of synthetic biology to students who do not know about synthetic biology, and to introduce the basics of machine learning to some biology researchers who want to combine machine learning with synthetic biology.

Hot-plug Extensible Module

During CCiC, the Conference of China iGEMer Community, we start a collaboration with team SJTU-Software from Shanghai Jiao Tong University. We needed to introduce their model of predicting RNA secondary structure in our project. To facilitate the addition of models, we designed the hot extension model, which is for more modules to be directly inserted into our service. Our background structure was born with hot-plug features. To be specific, each of scripts from contributors are packed into different python modules. And each module should export a class with the same name of module. This makes it possible to conveniently add more models to the platform.

Improvement

After CAT was basically completed, we printed brochures about our project and related knowledge. The main content is as follows:

Project Effectiveness

We introduced the platform after the iterations to teachers and students in school labs and got a lot of positive feedback. We used the educational version to popularize science to students of all ages, and they were almost interested about this, which made us have a great day. We are very glad that we chose the iterative mode for development. We also got a lot of valuable suggestions during the Human Practices process, and we will make this project better in the future.
Contact Us

Mail:
USTC_Software2021@163.com

University of Science and Technology of China, No.96, JinZhai Road Baohe District, Hefei, Anhui, 230026, P.R.China