UML as a cell and biochemistry modeling language.
The systems biology community is building increasingly complex models and simulations of cells and other biological entities, and are beginning to look at alternatives to traditional representations such as those provided by ordinary differential equations (ODE). The lessons learned over the years by the software development community in designing and building increasingly complex telecommunication and other commercial real-time reactive systems, can be advantageously applied to the problems of modeling in the biology domain. Making use of the object-oriented (OO) paradigm, the unified modeling language (UML) and Real-Time Object-Oriented Modeling (ROOM) visual formalisms, and the Rational Rose RealTime (RRT) visual modeling tool, we describe a multi-step process we have used to construct top-down models of cells and cell aggregates. The simple example model described in this paper includes membranes with lipid bilayers, multiple compartments including a variable number of mitochondria, substrate molecules, enzymes with reaction rules, and metabolic pathways. We demonstrate the relevance of abstraction, reuse, objects, classes, component and inheritance hierarchies, multiplicity, visual modeling, and other current software development best practices. We show how it is possible to start with a direct diagrammatic representation of a biological structure such as a cell, using terminology familiar to biologists, and by following a process of gradually adding more and more detail, arrive at a system with structure and behavior of arbitrary complexity that can run and be observed on a computer. We discuss our CellAK (Cell Assembly Kit) approach in terms of features found in SBML, CellML, E-CELL, Gepasi, Jarnac, StochSim, Virtual Cell, and membrane computing systems.
Webb
Ken
K
Symbium Corporation, Canada. kwebb@symbium.com
White
Tony
T
D000465:Algorithms; D000818:Animals; D001695:Biology / Q000379:methods; D003585:Cell Biology; D019295:Computational Biology / Q000379:methods*; D003198:Computer Simulation; D003201:Computers; D006801:Humans; D008051:Lipid Bilayers / Q000378:metabolism; D008928:Mitochondria / Q000378:metabolism; D011381:Programming Languages; D012984:Software; D012985:Software Design; D049490:Systems Biology / Q000379:methods*
D008051:Lipid Bilayers