CellML in practice: modularity & reuse; versioning & provenance; embedded workspaces David Nickerson Auckland Bioengineering Institute University of Auckland.

Slides:



Advertisements
Similar presentations
Logical and Physical Design of an Information System
Advertisements

28 March 2003e-MapScholar: content management system The e-MapScholar Content Management System (CMS) David Medyckyj-Scott Project Director.
Presentation by Priyanka Sawarkar
HP Quality Center Overview.
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Depositing e-material to The National Library of Sweden.
1 The IIPC Web Curator Tool: Steve Knight The National Library of New Zealand Philip Beresford and Arun Persad The British Library An Open Source Solution.
1 Archiving Workflow between a Local Repository and the National Library Archive Experiences from the DiVA Project Eva Müller, Peter Hansson, Uwe Klosa,
Concepts of Version Control A Technology-Independent View.
Version Control Systems Phil Pratt-Szeliga Fall 2010.
The Open Archives Initiative Simeon Warner (Cornell University) Symposium on “Scholarly Publishing and Archiving on the Web”, University.
Introducing Symposia : “ The digital repository that thinks like a librarian”
Page 1 Building Reliable Component-based Systems Chapter 18 - A Framework for Integrating Business Applications Chapter 18 A Framework for Integrating.
1 Copyright © 2014 Tata Consultancy Services Limited Source Code Management using Rational Team Concert IBM Rational, Alliance & Technology Unit 2 July.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
The iPlant Collaborative Community Cyberinfrastructure for Life Science Tools and Services Workshop Discovery Environment Overview.
The chapter will address the following questions:
IDigBio is funded by a grant from the National Science Foundation’s Advancing Digitization of Biodiversity Collections Program (Cooperative Agreement EF ).
Chapter 2 The process Process, Methods, and Tools
1 Project Planner Michael Adcock & KFTF Research Team Lab Meeting 12/13/06.
Why you should be using Version Control. Matt Krass Electrical/Software Engineer November 22, 2014.
Distributed Transactions March 15, Transactions What is a Distributed Transaction?  A transaction that involves more than one server  Network.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Sept 19,  Provides a common set of terminology and definitions  A framework for describing resources and processes  Enables computer based interoperability.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
This material was developed by Duke University, funded by the Department of Health and Human Services, Office of the National Coordinator for Health Information.
© 2008 IBM Corporation ® IBM Cognos Business Viewpoint Miguel Garcia - Solutions Architect.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
LIS 654 BUILDING DIGITAL LIBRARIES FALL 2011 NOVEMBER 03, 2011 The OAI-PMH Harvester Plugin for The Omeka Content Management System JAMES R. GRIFFIN III.
Accelerating Scientific Exploration Using Workflow Automation Systems Terence Critchlow (LLNL) Ilkay Altintas (SDSC) Scott Klasky(ORNL) Mladen Vouk (NCSU)
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
I Power Higher Computing Software Development The Software Development Process.
The Physiome Model Repository – PMR David Nickerson Auckland Bioengineering Institute The University.
The iPlant Collaborative Community Cyberinfrastructure for Life Science Tools and Services Workshop Discovery Environment Overview.
Modelling epithelial transport David P. Nickerson¹, Kirk L. Hamilton², Peter J. Hunter¹ ¹Auckland Bioengineering Institute, Auckland, New Zealand ²Department.
DSpace vs Fedora Ralph LeVan OCLC Research. What Do You Want From a Repository? How do you create your metadata? How do you assemble your objects? How.
CSC480 Software Engineering Lecture 10 September 25, 2002.
Improving the Technical report Process Random ideas from Tim Budd.
L.T.E :: Learning Through Experimenting Using google-svn for MtM Docs Development Denis Thibault Version 3.2 Mar 12 th, 2009.
IBM Software Group ® Managing Reusable Assets Using Rational Suite Shimon Nir.
A. Aimar - EP/SFT LCG - Software Process & Infrastructure1 SPI Software Process & Infrastructure for LCG Project Overview LCG Application Area Internal.
Advanced Object-oriented Design Patterns Creational Design Patterns.
CPSC 372 John D. McGregor More EPF Module 2 Session 4.
Information Systems and Network Engineering Laboratory I DR. KEN COSH WEEK 1.
1 Ivan Marsic Rutgers University LECTURE 2: Software Configuration Management.
Group collaborative Projects: TECHNOLOGICAL TOOLS TO ASSESS INDIVIDUAL CONTRIBUTION.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
1 April 14, Starting New Open Source Software Projects William Cohen NCSU CSC 591W April 14, 2008.
Information Systems and Network Engineering Laboratory II
Software Configuration Management
Lesson Objectives Aims You should be able to:
Using E-Business Suite Attachments
LECTURE 2: Software Configuration Management
John D. McGregor Eclipse Process Framework Module 2 Session 4
Osmium: helping PMR support the VPH requirements for identifiable and discoverable computational models Tommy Yu, Peter Hunter, David Nickerson Auckland.
Distribution and components
CVS revisions UML diagram
Object oriented system development life cycle
Maintaining software solutions
Mercurial & TorToise-HG
VI-SEEM Data Repository
LECTURE 3: Software Configuration Management
The Re3gistry software and the INSPIRE Registry
Academy Hub An eUnomia Factory Solution.
Smart Integration Express
Introduction to K2 Designer
CAD DESK PRIMAVERA PRESENTATION.
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Academy Hub An eUnomia Factory Solution.
Chapter 2: Building a System
Presentation transcript:

CellML in practice: modularity & reuse; versioning & provenance; embedded workspaces David Nickerson Auckland Bioengineering Institute University of Auckland New Zealand

2 A useful reference tutorial/tutorials/embc13/index.htmlhttp://abibook.readthedocs.org/en/EMBC tutorial/tutorials/embc13/index.html

3

Modularity & reuse in CellML CellML provides the framework for encoding mathematical models in a very modular manner –separation of mathematical model and a specific instance of the model (parameterization). –unambiguous definition of all physical quantities to allow automated translation between units across connections. Following some best practice guidelines ensures the modules are “easily” reusable by the widest possible audience. Some examples… 4

5

6

7

8

9

10

11

12

13

14

15

16

Versioning and provenance 17

The mechanics When using text-based model encoding formats (SBML, CellML, SED-ML, …) there is no excuse not to use a version control system of some description. PMR2 uses the distributed version control system Mercurial and provides access controls –makes it really trivial to share your work while it is still under progress! Don’t wait until it is perfect before sharing it or putting it into a repository. Be free when creating workspaces –modules should be in their own workspace to enhance reusability 18

The mechanics Exposures provide a permanent URL by which you can unambiguously reference a specific revision of the contents of a workspace. The user is able to configure specific items in the workspace to be processes for web-display or other tasks –e.g., Think of the person trying to reproduce you simulations in 10 years time when you write you commit messages! –or perhaps the scientist reviewing your paper next week? 19

20 Embedded workspaces PMR Workspaces –Independent mercurial repositories. –Detailed provenance record. –Contains many types of data. CellML 1.1 model hierarchies –Modularity and reuse. –Ability to ‘import’ arbitrary CellML components to assemble and create powerful models. –Define common models once and reuse them where necessary (libraries of modules).

The Problem? When importing existing models, what happens when the source model changes? –Imported components may no longer exist. –Parameterizations may no longer match requirements. –… What happens when bugs are fixed in the source model(s)? –Provenance tracking. –Versioning and model differences. And in the other direction, what about when I find bugs in models that I use? 21

A solution – embedded workspaces Mercurial subrepositories –A little concerning: 22

A solution – embedded workspaces Mercurial subrepositories –A little concerning: (but we can help avoid problems with some best practice guidelines?) A little technical but very powerful –Currently requires working directly with mercurial –And knowing what you are doing (mostly) PMR2 web interface presents information, but no other tools making use of this feature at present (I think). Allows relative URLs to be used for all imports, irrespective of the actual location of the source content. Can be nested to any depth, but need to be careful about doing so. 23

In CellML (my-model.xml) 24

On the local file system… My Model/ –HH/ gating-variable.xml … –physical-constants/ mohr_taylor_newell_2008.cellml –my-model.xml –.hgsub, defines: HH  huxley-model physical-constants  newell_

…on the local file system My Model/ –… –.hgsubstate, defines: Use HH changeset 755e83040c8ea71167d2bb50c2593f4f0092fa67 Use physical-constants changeset c506f07a2d935261f0117d8ed7d2667b7dcf7b78 26

The benefits….hgsub and.hgsubstate are normal resources in the “My Model” workspace, so all changes are tracked in the history of the workspace –If the source location for an embedded workspace is changed, you know exactly who, when, and why for the change. –Similarly for the version of the source workspace being used. Requires specific user action to change “My Model” workspace to a different version of the HH model –Protected from potentially incompatible upstream changes. 27

…the benefits Local changes in ‘HH’ or ‘physical-constants’ can easily be contributed back to original source –Accurately reflecting provenance of any changes in the source workspace(s). Because this is all done in mercurial, collaborating independent of the central PMR server is trivial. When making a PMR exposure, all embedded workspaces are unambiguously described and permanently available. Similarly, zipping up the top-level MyModel folder into a COMBINE archive will capture all the relevant versioning data. 28