You are on page 1of 4

Improving the Plug-in interface for CellDesigner March 19, 2014 1.

Abstract
Producing computational representations of the biological cell has always been difficult due to the sheer number of network components interacting with one another. However, software tools such as CellDesigner provide an intuitive graphical user interface (GUI) that combines both a graphical editor and numerical solving capabilities to model biochemical networks. Version 4.3 of CellDesigner uses the Systems Biology Simulation Core Library, which requires a Java function library for the Systems Biology Markup Language (JSMBL). However, CellDesigner itself is based on libSBML, a hybrid C/C++ library with Java wrappers. Unfortunately, the usage of libSBML introduces platform-dependency. In order to eliminate this problem, subsequent versions of CellDesigner will be based on JSBML rather than libSBML, as the Java language itself is platform-independent. This would lead one to assume that programs written in JSBML would easily be used with a JSBML-based CellDesigner. However, this is not the case. CellDesigner does not allow plugins to directly access its internal data structure, but rather through an API. As such, a program written in JSBML would need to be substantially re-written in order to function in CellDesigner. To mitigate this problem, the JSBML/CellDesigner plug-in interface has been augmented to allow a program written in JSBML to map CellDesigners plug-in data structure to a JSMBL data structure. This will guarantee inter-operability between programs written in JSBML and CellDesigner and will also automatically update JSBML data structures upon changes within CellDesigner. However, CellDesigners plug-ins can access additional information that the existing JSBML/CellDesigner interface cannot import. This includes in particular the layout of the network with node position, size etc. as well as rendering information about the color of network components, their shapes, line widths and styles, and much more. This proposal attempts to alleviate these issues via a three-pronged approach. First, the SMBL Layout Extension and Render Extension will be used to clone the CellDesigner network layout and other related information. Second, JSBML-based plugins will pull data from CellDesigner so the holistic qualities (node position, color, shape, etc.) of the CellDesigner model will be equivalently represented in JSBML. Finally, a test plug-in will be developed that will randomly generate a biochemical network (with certain node positions, colors, sizes, etc) and will be written in JSBML. This program would be able to be converted into a CellDesigner plug-in very easily while testing all new functions.

2. Personal Information/Background
Name: Ibrahim Vazirabad Address: 3011 East Cudahy Avenue, Saint Francis WI, USA E-mail: yvazirabad@gmail.com Telephone: +1-414-482-4299 I graduated in May 2013 with a Bachelors degree in BioMolecular Engineering from the Milwaukee School of Engineering in the USA. My bachelors degree introduced me to statistics, linear algebra, molecular biology, synthetic biology, and bioinformatics, among other fields. I have previously worked in the bioinformatics field developing a team-built clinical genomic software package called Carpe Novo. Carpe Novo is a program that annotates pathogenic genetic variants for clinicians and is based on in-house genetic variant databases with a webbased interface for easy access. Through this experience, I have found that I want to continue merging my passion for biology and computational analysis via bioinformatics algorithm development. I have been primarily using Java for my algorithm development, although I have used JavaScript and HTML/CSS when needed. I also work routinely in both Windows and Linux environments, which would allow me to test new code on both platforms. I am interested in working with JSBML and the CellDesigner application because the complexity of biochemical pathways has always been an interest of mine. Systematically applying computational principles to detangle the web of biochemical network interactions gives me a much better sense of how large-scale real world applications are structured as well as the desire to work within this framework.

3. Project Plan
Every week: Communicate with mailing list and advisors often. Calendar Week Proposed Tasks 17 This is the pre-coding stage. I intend on becoming settled into the JSBML development community via communication with senior members. During this time, I hope to communicate with developers at the HARMONY conference during week 17. I will also look into Systems Biology Graphical Notation (SBGN). 18-20 I will read the relevant literature on SBML, CellDesigner, and JSBML. Proposed literature is detailed in Section 5 of this document. I will also familiarize myself with the JSBML and CellDesigner code base. 21 Continue CellDesigner and JSBML code base analysis, tinker and test. 22 Becoming familiar with SMBL Layout Extension and Render Extension. 23 Begin work on updating SBML via CellDesigner listeners.

24 25 26 27 28 29 30 31 32 33

Continue work on cloning network layout. Finish up work. Make sure all code is documented and User Guide addition drafts are written. Clone CellDesigner network state/node qualities into JSBML. Clone CellDesigner network state/node qualities into SBML format. Clone CellDesigner network state/node qualities into SBML format. Begin writing test plug-in that checks newly written functions Continue plug-in work. Prepare for end of project. Wrap up loose ends if necessary. I would use this as a buffer period if I fell behind.

4. Availability
I currently work as a part-time contractor performing 16S rRNA analysis for a small waste-water analysis company. I have also been accepted to a Masters program in Bioinformatics at Marquette University in the USA which starts at the end of August 2014. As such, I have no doubts that my first priority would be to accomplish the goals set forth in my Project Plan as I have no other coursework or employment that would distract me from applying full effort. As I intend on pursuing a career in bioinformatics, I would be very willing to continue contributing time and effort towards the JSBML project after the summer is completed. I have not applied to any other GSoC project.

5. List of JSBML-related Literature


SBML Specifications: http://sbml.org/Documents/Specifications Drger, A., Hassis, N., Supper, J., Schrder, A. & Zell, A. SBMLsqueezer: a CellDesigner plug-in to generate kinetic rate equations for biochemical networks. BMC Syst. Biol. 2, 39 (2008). Gauges, R., Rost, U., Sahle, S. & Wegner, K. A model diagram layout extension for SBML. Bioinformatics 22, 187985 (2006). Shen, S. Y., Bergmann, F. & Sauro, H. M. SBML2TikZ: supporting the SBML render extension in LaTeX. Bioinformatics 26, 27945 (2010). Drger, A. et al. JSBML: a flexible Java library for working with SBML. Bioinformatics 27, 21678 (2011).

Funahashi, A. et al. CellDesigner : a process diagram editor for gene-regulatory and. 1, 159162 (2003). Funahashi, A et al. CellDesigner: A Graphical Biological Network Editor and Workbench Interfacing Simulator. Introduction to Systems Biology. 422-434 (2007). Gauges, R., Sahle, S., Wegner, K. Complementing layout information with render information in SBML files, 1-69 (2011). Bergmann, F., Gauges, R., Sahle, S., Rost, U., Wegner, K. SBML Level 3 Package: Layout (layout). 1-52 (2013). http://co.mbine.org/specifications/sbml.level-3.version-1.layout.version-1.release1.pdf

You might also like