Cargando…

A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture

Simulator interoperability and extensibility has become a growing requirement in computational biology. To address this, we have developed a federated software architecture. It is federated by its union of independent disparate systems under a single cohesive view, provides interoperability through...

Descripción completa

Detalles Bibliográficos
Autores principales: Cornelis, Hugo, Coop, Allan D., Bower, James M.
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2012
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3252298/
https://www.ncbi.nlm.nih.gov/pubmed/22242154
http://dx.doi.org/10.1371/journal.pone.0028956
_version_ 1782220616519122944
author Cornelis, Hugo
Coop, Allan D.
Bower, James M.
author_facet Cornelis, Hugo
Coop, Allan D.
Bower, James M.
author_sort Cornelis, Hugo
collection PubMed
description Simulator interoperability and extensibility has become a growing requirement in computational biology. To address this, we have developed a federated software architecture. It is federated by its union of independent disparate systems under a single cohesive view, provides interoperability through its capability to communicate, execute programs, or transfer data among different independent applications, and supports extensibility by enabling simulator expansion or enhancement without the need for major changes to system infrastructure. Historically, simulator interoperability has relied on development of declarative markup languages such as the neuron modeling language NeuroML, while simulator extension typically occurred through modification of existing functionality. The software architecture we describe here allows for both these approaches. However, it is designed to support alternative paradigms of interoperability and extensibility through the provision of logical relationships and defined application programming interfaces. They allow any appropriately configured component or software application to be incorporated into a simulator. The architecture defines independent functional modules that run stand-alone. They are arranged in logical layers that naturally correspond to the occurrence of high-level data (biological concepts) versus low-level data (numerical values) and distinguish data from control functions. The modular nature of the architecture and its independence from a given technology facilitates communication about similar concepts and functions for both users and developers. It provides several advantages for multiple independent contributions to software development. Importantly, these include: (1) Reduction in complexity of individual simulator components when compared to the complexity of a complete simulator, (2) Documentation of individual components in terms of their inputs and outputs, (3) Easy removal or replacement of unnecessary or obsoleted components, (4) Stand-alone testing of components, and (5) Clear delineation of the development scope of new components.
format Online
Article
Text
id pubmed-3252298
institution National Center for Biotechnology Information
language English
publishDate 2012
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-32522982012-01-12 A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture Cornelis, Hugo Coop, Allan D. Bower, James M. PLoS One Research Article Simulator interoperability and extensibility has become a growing requirement in computational biology. To address this, we have developed a federated software architecture. It is federated by its union of independent disparate systems under a single cohesive view, provides interoperability through its capability to communicate, execute programs, or transfer data among different independent applications, and supports extensibility by enabling simulator expansion or enhancement without the need for major changes to system infrastructure. Historically, simulator interoperability has relied on development of declarative markup languages such as the neuron modeling language NeuroML, while simulator extension typically occurred through modification of existing functionality. The software architecture we describe here allows for both these approaches. However, it is designed to support alternative paradigms of interoperability and extensibility through the provision of logical relationships and defined application programming interfaces. They allow any appropriately configured component or software application to be incorporated into a simulator. The architecture defines independent functional modules that run stand-alone. They are arranged in logical layers that naturally correspond to the occurrence of high-level data (biological concepts) versus low-level data (numerical values) and distinguish data from control functions. The modular nature of the architecture and its independence from a given technology facilitates communication about similar concepts and functions for both users and developers. It provides several advantages for multiple independent contributions to software development. Importantly, these include: (1) Reduction in complexity of individual simulator components when compared to the complexity of a complete simulator, (2) Documentation of individual components in terms of their inputs and outputs, (3) Easy removal or replacement of unnecessary or obsoleted components, (4) Stand-alone testing of components, and (5) Clear delineation of the development scope of new components. Public Library of Science 2012-01-05 /pmc/articles/PMC3252298/ /pubmed/22242154 http://dx.doi.org/10.1371/journal.pone.0028956 Text en Cornelis et al. http://creativecommons.org/licenses/by/4.0/ This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are properly credited.
spellingShingle Research Article
Cornelis, Hugo
Coop, Allan D.
Bower, James M.
A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title_full A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title_fullStr A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title_full_unstemmed A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title_short A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture
title_sort federated design for a neurobiological simulation engine: the cbi federated software architecture
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3252298/
https://www.ncbi.nlm.nih.gov/pubmed/22242154
http://dx.doi.org/10.1371/journal.pone.0028956
work_keys_str_mv AT cornelishugo afederateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture
AT coopalland afederateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture
AT bowerjamesm afederateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture
AT cornelishugo federateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture
AT coopalland federateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture
AT bowerjamesm federateddesignforaneurobiologicalsimulationenginethecbifederatedsoftwarearchitecture