OnRamp: enabling a new component-based development paradigm

  • Authors:
  • Geoffrey C. Hulette;Matthew J. Sottile;Robert Armstrong;Benjamin Allan

  • Affiliations:
  • University of Oregon, Eugene, OR;University of Oregon, Eugene, OR;Sandia National Laboratories, Livermore, CA;Sandia National Laboratories, Livermore, CA

  • Venue:
  • Proceedings of the 2009 Workshop on Component-Based High Performance Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Often the adoption of component-based scientific software requires the developer to abandon comfortable practices and embrace an unfamiliar software methodology. OnRamp provides a mechanism for the developer to generate CCA components, through commented markup in their original software, and keep their familiar software development practices. The developer uses these annotations to identify which methods in their code belong to which Port interfaces, and which Ports belong to which CCA components. Taken by itself, the markup is sufficient to create a skeleton of components representing the exported functionality of the original code, but because the entire code is available to OnRamp the implementation can also be generated. The functionality of the original code is wrapped in annotation-specified components, exporting part or all of its original functionality. OnRamp provides a model for component software engineering that allows developers to improve their code with their familiar software and in their established software practices and also interoperate with external developers easily when the need arises.