Summary of ProcessDB features and philosophy

From ProcessDB
Jump to: navigation, search

Diagrams

ProcessDB modeling always starts with a diagram. This was a conscious choice based on decades of experience in modeling and experimental biology. Again and again we have found that a mechanistic diagram is the common ground between modeling teams and an experimental teams. ProcessDB diagrams are beautiful because we used state-of-the-art diagram layout tools that are simple to use. ProcessDB diagrams are active, not passive; every element of the diagram has its own context menu so that you can quickly find out what you want to know and do what you want to do.

Diagrams are also active in the sense that you construct your model directly on the diagram screen using a simple and efficient set of drawing tools.


The Database

The "DB" in ProcessDB stands for "database." But the ProcessDB database is no mere repository of experimental data. Instead, it brings the awesome power of a relational database to the every aspect of model building and testing. Within the ProcessDB database there are more than 30,000 lines of PL SQL code and all of them were written to make your modeling and hypothesis testing work faster and easier.

When we started ProcessDB we intended to follow the usual software development practice of hiding database IDs from the users. To our surprise, users told us that exposing these unique IDs enabled faster, more precise communication among collaborators. No one needs to guess what process you are referring to if you call it P1374. At the same time every state and process also has an alphabetic name so that you know what it is when you see it displayed in diagrams or plots.


A Model is a Collection of Processes

Our bedrock organizational principle is that every model is a collection of Processes. This core idea allows you to compare models with a single click. You can extract subsystems from complex models and work on them independently. You can combine models with a single click. A searchable model tree structure is always immediately available to allow you to drill down quickly to the details of every element of your diagram.


Chemical System Differential Equations

In classical tracer kinetics, the underlying chemical system was treated as unchanged by a superimposed tracer experiment. A tracer was always treated as a negligible perturbation. But with the rise of stable isotope tracer experiments and a growing array of transfected gene constructs coding for fluorescent tracer versions of a protein of interest, this assumption of negligible perturbation is no longer sustainable. This fact is an inescapable consequence of the indistinguishability assumption that underlies all of tracer kinetics.

ProcessDB recognizes that every molecule, whether tagged by a tracer or not, contributes to the chemical potential that drives biological processes. This is why the first set of differential equations written for every ProcessDB model constitutes what we call the Chemical System differential equations. These equations track all the molecules of a certain type in a certain place whether those molecules are tagged with a tracer or not. Consequently, any experimental addition of tracer molecules is treated as an addition to the chemical system as well as an addition to the tracer differential equations. Since it is not uncommon for stable isotopes and transfected gene constructs to result in doubling or tripling the abundance of the molecules to be traced, you want to be sure that the underlying chemistry of your model is actually responding to these massive non-steady states, just as the biology is responding in the lab. Ignoring or neglecting this reality leads to serious errors.

One nice consequence of this choice for chemical system differential equations is that ratios of tracer states to chemical system states automatically have units of isotopic enrichment: tracer/(tracer + traced).

Hypothesis Testing

We think of all models as hypotheses and ProcessDB is specifically designed to test those hypotheses against experimental data.

The Simulator

Biology Separate from Experiments

As much as possible, ProcessDB separates your biological theory or model from the experiments to be performed on that model. Some modeling philosophies assert that there is no such thing as a model separate from an experiment, but biologists rarely think this way. ProcessDB supports the testing of models, simultaneously, against as many different experimental protocols and data sets as you like.