Presentation on theme: "1 BioUML - extensible workbench for systems biology Laboratory of Bioinformatics, Novosibirsk, Russia. www.itcsoftware.com 2004 -2010 ITC Software All."— Presentation transcript:
1 BioUML - extensible workbench for systems biology Laboratory of Bioinformatics, Novosibirsk, Russia. www.itcsoftware.com 2004 -2010 ITC Software All rights reserved.
2 Schedule 9.30 – 9.40Introduction 9.40 – 10.00Visual modeling, graphical notations 10.00 – 10.20BioUML main concepts and architecture overview 10.20 – 11.00Demonstration of BioUML workbench from the customer view point. 11.00 – 11.15Coffee break 11.15 – 11.30Simulations with BioUML. MATLAB plug-in, Java plug-in. 11.30 – 11.45Usage of BioUML in real life projects – Cyclonet and Biopath (codename) projects 11.45 – 12.15Current work and further development 12.15 – 12.30Discussion
3 The challenge "We now have unprecedented ability to collect data about nature but there is now a crisis developing in biology, in that completely unstructured information does not enhance understanding. We need a framework to put all of this knowledge and data into that is going to be the problem in biology. We've reached the stage where we can't talk to each other we've all become highly specialized. We need a framework, a framework where people can come back to us and say, 'Yes, I understand.' Driving toward that framework is really the big challenge. Sydney Brenner Sydney Brenner, 2002 Nobel Prize winner
5 Main BioUML concepts and ideas Visual modeling Plug-in based architecture (Eclipse platform runtime from IBM). Meta model – problem domain neutral level of abstraction that describes system as compartmentalized graph. It is also common contract for all parties (software developers, problem domains specialists, annotators, mathematicians). Diagram type concept – formally defines graphical notation and provides its incorporation into BioUML workbench. Module concept - allows developer to incorporate databases on biological pathways into BioUML framework taking into account database peculiarities.
6 Visual Modeling The problem of modeling and simulating of complex systems can be significantly simplified for customers by using computer systems providing visual modeling. These visual depictions offer alternative syntax to completely and formally specify models. A number of visual syntaxes were developed and implemented in computer systems for electrical engineering and computer science. The most known graphical language for computer science is UML – Unified Modeling Language.
7 The OMG specification states: "The Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system. The UML offers a standard way to write a system's blueprints, including conceptual things such as business processes and system functions as well as concrete things such as programming language statements, database schemas, and reusable software components."
8 UML diagrams use case diagram class diagram behavior diagrams: –statechart diagram –activity diagram –interaction diagrams: sequence diagram collaboration diagram implementation diagrams: –component diagram –deployment diagram
15 If we will consider UML architecture from developer view point then we will note: 1) UML was really designed for modeling software systems and are hardly suitable for other problem domains. 2) UML has complicated structure that is quite hard for implementation. OMG specification is more the 700 pages. 3)UML was not designed for visual modeling and simulation of dynamics of complex systems. That is why we need new language for modeling biological systems and we called this language BioUML.
17 Some graphical notations for biological pathways Kohn K.W. (1999). Molecular Interaction Map of the Mammalian Cell Cycle Control and DNA Repair Systems. Mol. Biol.Cell. 10, 2703-2734. Kitano H. (2003). A graphical notation for biochemical networks. BIOSILICO Vol. 1. No. 5. R. Maimon and S. Browning (2001). Diagrammatic Notation and Computational Grammar for Gene Networks. Proceedings of the International Conference on Systems Biology. 2001. Cook D.L. et al. (2001). A basis for a visual language for describing, archiving and analyzing functional models of complex biological systems. Genome Biol. 2. RESEARCH 0012. Database specific notations: - KEGG/Metabolic pathways; GeneNet system; TRANSPATH …
18 Kohn K.W. (1999). Molecular Interaction Map of the Mammalian Cell Cycle Control and DNA Repair Systems. Mol. Biol.Cell. 10, 2703-2734.
20 Representation of multimolecular complexes: stimulatory and inhibitory complexes of E2F1, DP1, and pRb. (a) E2F1:DP1 dimer; (b) E2F1:DP1:pRb trimer; (c) E2F1:DP1 bound to promoter element E2 (transcriptional activation shown); (d) E2F1:DP1:pRb bound to E2 (transcriptional inhibition shown). Note that the promoter element can be occupied either by E2F1:DP1 or by E2F1:DP1:pRb (alternative binding represented by interaction lines joined at an acute angle).
27 Formal description and modeling of biological systems require coordinated efforts of different group of researchers: programmers - they should provide computer tools for this task. problem domain experts - they should specify what and how should be described. experimenters and annotators - they should describe corresponding data following to these rules. mathematicians - they should provide methods for models analysis and simulations. BioUML architecture separates these tasks so they can be effectively solved by corresponding group of researchers and provides simple contract how these groups and corresponding software parts should communicate.
34 GeneNet system A chemical formalism was employed as a basis for describing the events occurring in biological pathways 2 types of relationships between entities: reaction - the interaction between the entities that leads to the appearance of new entity regulatory event - the effect of an entity on a certain reaction
39 Plug-in based architecture Plug-in - plugin.xml - Java jar files A plug-in is the smallest unit of BioUML workbench function that can be developed and delivered separately into BioUML workbench. A plug-in is described in an XML manifest file, called plugin.xml. The parsed contents of plug-in manifest files are made available programmatically through a plug-in registry API provided by Eclipse runtime. - extension points are well-defined function points in the system where other plug-ins can contribute functionality. - extension is a specific contribution to an extension point. Plug-ins can define their own extension points, so that other plug-ins can integrate tightly with them. Plug-in - plugin.xml - Java jar files Plug-in - plugin.xml - etc. Eclipse platform runtime
46 BioUML meta model The core of BioUML workbench is meta model. Unlike UML meta mode BioUML meta model is problem domain neutral and provides an abstract layer for comprehensive formal description of wide range of biological and other complex systems. Content of databases on biological pathways or SBML models are expressed in terms of meta model and then can be used by other workbench plug-ins.
47 A B eq1 eq2 R1 C eq3 eq4 R2 Соответствующая ему математическая модель Пример двух последовательных химических реакций 1000 0
48 A B -k1[A] R1 C -k2[B]K2[B] R2 100 0 0 System structure is described as a graph Mathematical model of the system Description of system components in the database ID A CC..... // ID R1 A->B... // ID B CC..... // ID R2 B->C... // ID C CC..... // A B -k1[A] R1 C -k2[B] K2[B] R2 1000 0 Example of formalized description of System from two chemical reactions
49 Main BioUML meta-model classes to describe system structure as compartmentalized graph
52 Diagram type concept Diagram type defines: what system components can be shown in the diagram; diagram view builder - it is used to generate view for each diagram element taking into account problem domain peculiarities; semantic controller - provides semantic integrity of the diagram during its editing; filters – hide or highlight diagram elements according to some selection criteria.
54 Module Concept The module concept allows to developer define new diagram types and incorporate other databases on biological pathways into BioUML framework. The module defines mapping of database content into diagram elements and diagram types that can be used with the database. Module also provides query engine that can be used by BioUML workbench to find interactiong components of the system.
55 Modules standard BioUML module for biological pathways; module for models in SBML format; module for models in CellML format (only biochemical models); GeneNet database module; module for KEGG/Pathways datbase (draft); module for TRANSPATH database (draft); GeneOntology (under development).
56 Standard BioUML module for biological pathways The module defines most common biological data types (gene, protein, RNA, substance, reaction, etc.), they mapping into simple text database and three diagram types for description of biological pathways on several semantic levels: 1. Semantic network (ontology) - this diagram type is used to describe semantic relationships between system components, system states, and related problem domain concepts. 2. Pathway diagram type is used for formalized description of biological pathway structure. This diagram type uses GeneNet graphical notation. 3. Pathway simulation diagram type is extension of pathway structure diagram, where variables are associated with graph nodes and differential equations with graph edges. This allows to BioUML workbench automatically generate mathematical model of the system and simulate its dynamics.
62 Formal description and modeling of biological systems require coordinated efforts of different group of researchers: programmers - they should provide computer tools for this task. problem domain experts - they should specify what and how should be described. experimenters and annotators - they should describe corresponding data following to these rules. mathematicians - they should provide methods for models analysis and simulations. BioUML architecture separates these tasks so they can be effectively solved by corresponding group of researchers and provides simple contract how these groups and corresponding software parts should communicate.
64 Biological databases Data search and retrieving Visual modeling Automated code generation for model simulation of model behavior Formal description of structure of biological system MATLAB codeJava code Simulating using MATLAB. JMatLink allows to BioUML workbench to start MATLAB and retrieve simulations results Java simulation plug-in. Contains ODE solvers ported from odeToJava and methods for hybrid models support. … code
66 Cyclonet database Using BioUML workbench we are developing Cyclonet database – a database on cell cycle regulation in eukaryotes. Using BeanExplorer Enterprise Edition database content is available via the Internet. The database contains information about cell cycle specific genes, proteins, protein complexes and their interactions, diagrams of cell cycle regulation for vertebrates, models of cell cycle and results of their analyses, microarray data, literature references and other related resources.
71 Biopath (codename) database Purpose of this project is create formal description of pathogeneses of chronic respiratory diseases and optimization of their treatment. The work is performed jointly with the Institute of Medical Problems of North (Krasnoyarsk) and the Institute of Pulmonology (Moscow).
72 Graph search engine –Graph search engine completion and testing –adaptation of new graph layout library Complete support of SBML level 2 –Time delay –Algebraic rules –Units –SBML semantic tests Formula editor State and transition diagrams. Current work
73 Force directed graph layout (takes nodes size into account) (lay-out time ~50ms, 300 iterations)
77 Library of predefined kinetic laws Stochastic modeling BioPAX support New diagram type for gene regulatory regions TRANSPATH support Microarray data support Further steps
78 Availability BioUML workbench (including source code) is freely available at www.itcsoftware.comwww.itcsoftware.com Cyclonet database } see site Biopath database } for details
79 Acknowledgments Part of this work was partially supported by following grants: Volkswagen-Stiftung (I/75941), INTAS Nr. 03-51-5218 and RFBR Nr. 04-04-49826-а. Author is grateful to for useful comments, discussions and technical support Alexander Kel Sergey Zhatchenko Software developers Annotators Mikhail Puzanov Igor Tyazhev Ruslan Sharipov Vasiliy Hudyakov Vlad Zhvaleev Elena Cheremushkina Alexandr Koshukov Oleg Onegov Artem Shaidukov
80 We hope you enjoyed our presentation ! ITC Software Tel. +1 978 287 4855 firstname.lastname@example.org www.itcsoftware.com