BioUML Development Roadmap
This document is an outline of releases for BioUML project for this year. In parallel we will work on the user guide, developer documentation, and bug fixes.
Release | | Description | | Estimated Completion Date |
|---|
| v. 0.7.1 | | Custom JavaScript functions support, SBW integration using JavaScript | | July 20, 2003 |
| v. 0.7.2 | | Library of predefined kinetic low functions, equations editor, own simulation engine | | August 30, 2003 |
| v. 0.7.3 | | Diagram editor enhancements | | September 15, 2003 |
| v. 0.7.4 | | Graph layouts and graph search support | | October 15, 2003 |
| v. 0.7.5 | | Database modules: GeneNet, KEGG, TRANSPATH | | November 15, 2003 |
| v. 0.7.6 | | Rule concept support, event concept support | | December 15, 2003 |
| v. 0.7.7 | | Update for Eclipse 3.0, Eclipse plugin registry as visible plugin, workbench update from the site | | December 30, 2003 |
Features listed below can be implemented in future. Your comments and suggestions regarding the new features as well as feature implementation priorities is welcome. Please contact info (at) itcsoftware.com. We really appreciate your feedback.
| Features for future | | Priority |
|---|
| Hierarchical models | | high |
| Petri nets | | high |
| Data exchange between different modules and databases | | high |
| Diagram HTML publishing | | medium |
| SBML 2.0 format support | | medium |
| CellML format support | | medium |
| Markov models | | low |
| Using relational database for data storage | | low |
| Client/server mode | | low |
| DAE support | | low |

v. 0.7.1. Custom JavaScript functions, SBW integration using JavaScript
While our simulation engine will use JavaScript extensively some enhancements for JavaScript support are essential. biouml.plugins.javascript.function extension point will allow plug-in to contribute its JavaScript functions. This functions will be available from JavaScipt shell. Plug-in functions will be shown in JavaScript/functions section the in repository tree. Function help will be shown in View/Edit tab when the function item will be selected in repository tree. When the JavaScript function is called the specified by extension class method will be invoked.
Special host object will be provided for SBW services to allow customer start SBW services using JavaScript shell.

v. 0.7.2. Library of predefined kinetic low functions, equations editor, own simulation engine
Currently user should write manually the equation for chemical reaction rate. To make this step more easy a library predefined kinetic low functions will be defined in BioUML standard module. The library will include all rate low functions defined in SMBL Level 1 specification.
User interface to specify kinetic law function will be similar that is used by Gepasy software.
Own simulation engine
Currently BioUML workbench uses MATLAB for model simulation and result visualization.
In this version we planning to implement our own simulation engine. The basic technologies for this task are following:
- JavaSript will be used to formulate mathematical model;
- Rhino will be used as JavaScript translator;
LSODA and LSODAR will be used for ODE solving, for this purpose these libraries will be ported from FORTRAN to Java;
TcPlot will be used for results visualization.

v. 0.7.3. Diagram editor enhancements
We plan to extend diagram editor functionality by following way:
arbitrary images for graph nodes
user can use arbitrary gif, jpeg or png image as graph node view. These images will be stored in special table /Data/images.
complex line path for graph edge
currently editor uses straight lines to show graph edges. In this release we plan introduce complex line path that will consist from straight lines, and quadratic and cubic (Bézier) curves. It can contain multiple subpaths. java.awt.geom.GeneralPath is planned to be used for this purpose.
comments diagram element
special diagram element 'comment' and corresponding edge type will be introduced to be shown on the diagram. They will allow users draw arbitrary comments on the diagram and specify for what diagram elements they are used.
diagram markup language enhancements
diagram markup language will be extended to adopt the diagram enhancements described above.

v. 0.7.4. Graph layouts and graph search support
We plan to add following standard graph layout algorithms:
- hierarchical graph layout
- force directed graph layout
- orthogonal graph layout
However there is some problem - these graph layouts can be applied to graph without compartments, so there will be some limitations: graph layout can be applied to diagram without internal compartments or graph layout can be applied to nodes and edges that are belong to the specified compartment only.
We will try to implement some simple algorithms for compartmentalized graphs.
Graph search will allow user to find related/interacting components of biological systems and show them as a graph. These graph can be edited or interactively extended during further search. Indeed this functionality was implemented in some form in BioUML version 0.5, however due to major changes in architecture that have occurred in version 0.7 corresponding code should be refactored.

v.0.7.5. Database modules: GeneNet, KEGG, TRANSPATH
We introduce a concept of modules that serve for incorporation of different databases on biological pathways into BioUML framework. To demonstrate this concept some demo modules for GeneNet, KEGG/PATHWAY and TRANSPATH databases were developed in BioUML version 0.5.
BioUML v. 0.7.5. will provide full fledged modules for seamless integration of these databases into BioUML workbench. Modules for GeneNet and KEGG/PATHWAY databases will be free, while module for TRANSPATH database will be commercial.
Some additional info:
| Database | | GeneNet |
| URL | | http://wwwmgs.bionet.nsc.ru/mgs/systems/genenet/ |
| Location | | Institute of Cytology and Genetics, Novosibirsk, Russia. |
| Description | | GeneNet system is designed to accumulate the information on gene networks, groups of coordinately working genes providing for performing vital organism functions; their visualization; and simulation of gene network dynamics. The GeneNet system consists of three modules: GeneNet database, GeneNet viewer, and GeneNet modeling. |
| References | | Kolpakov F.A., Ananko E.A., Kolesov G.B. and Kolchanov N.A. GeneNet: a database for gene networks and its automated visualization. Bioinformatics. 1998;14(6):529-537. [PMID: 9694992] [Abstract] Kolpakov F.A., Ananko E.A. Interactive data input into the GeneNet database. Bioinformatics. 1999;15(7-8):713-714. [PMID: 10487877] [Abstract] [PDF 120kb] |
| | | |
| Database | | KEGG/PATHWAY |
| URL | | http://www.kegg.com |
| Location | | |
| Description | | KEGG is a suite of databases and associated software, integrating our current knowledge on molecular interaction networks in biological processes (PATHWAY database), the information about the universe of genes and proteins (GENES/SSDB/KO databases), and the information about the universe of chemical compounds and reactions (COMPOUND/REACTION databases). |
| References | | Kanehisa, M., Goto, S., Kawashima, S., and Nakaya, A. The KEGG databases at GenomeNet. Nucleic Acids Res. 30, 42-46 (2002). [pubmed] Goto, S., Okuno, Y., Hattori, M., Nishioka, T. and Kanehisa, M. LIGAND: database of chemical compounds and reactions in biological pathways. Nucleic Acids Res. 30, 402-404 (2002). [pubmed] |
| | | |
| Database | | TRANSPATH |
| URL | | http://www.biobase.de/pages/products/transpath.html |
| Location | | BIOBASE GmbH, Wolfenbüttel, Germany |
| Description | | TRANSPATHR Professional comprises data about molecules participating in signal transduction and the reactions they undergo, thus spanning a complex network of interconnected signalling components. TRANSPATHR Professional focuses on signaling cascades that aim at transcription factors and thus alter the gene expression profile of a given cell. |
| References | | Krull, M., Voss, N., Choi, V., Pistor, S., Potapov, A., Wingender, E. TRANSPATHR: an integrated database on signal transduction and a tool for array analysis. Nucleic Acids Res. 31, 97-100 (2003). PMID: 12519957. |

v. 0.7.6.
Rule concept support, event concept support
Rules provide a way to create constraints on variables for cases in which the constraints cannot be expressed using the reaction components.
SBML specification defines following three different possible functional forms, corresponding to the following three general cases (where x and y are variables, f is some arbitrary function, and P is a vector of parameters):
| 1. | left-hand side is zero | 0 = f(x; P) |
| 2. | left-hand side is a scalar | x = f(P) |
| 3. | left-hand side is a rate-of-change | dx/dt = f(x; P) |
Rule types 2 and 3 will be supported by BioUML v. 0.7.6, while support for rule type 1 possibly will be added latter when BioUML will support DAE formalism.
Two types of event will be introduced in this version:
1) time events - some events will occur at the specified time, for example some parameter or variable value should be changed at the specified time.
2) conditional events - event will occur when some equation value will be null. This type of event will allow customer to use BioUML for simulation heterogeneous systems like classical bouncing ball. LSODAR method will be used for event location.

v. 0.7.7. Update for Eclipse 3.0 and related issues
Stable version of Eclipse 3.0 should be released at the end of year (see Eclipse Project Draft 3.0 plan).
This Eclipse release will introduce major new functionality. Some of the changes can break compatibility with existing plug-ins. Thus we plan to port all BioUML workbench plug-ins for Eclipse 3.0 runtime.
We are planning to show Eclipse plug-in registry as a tree in repository 'plugins' tab. This will allow user to see what plug-ins are installed into BioUML workbench, add, remove, activate, deactivate or update installed plug-ins.
