Computational Grids have become an important asset in large-scale scientific and engineering research. By providing a set of services that allow a widely distributed collection of resources to be tied together into a relatively seamless computing framework, teams of researchers can collaborate to solve problems that they could not have attempted before. Unfortunately the task of building Grid applications remains extremely difficult because there are few tools available to support developers. To build reliable and re-usable Grid applications, programmers must be equipped with a programming framework that hides the details of most Grid services and allows the developer a consistent, non-complex model in which applications can be composed from well tested, reliable sub-units. This paper describes experiences with using a software component framework for building Grid applications. The framework, which is based on the DOE Common Component Architecture (CCA), allows individual components to export function/service interfaces that can be remotely invoked by other components. The framework also provides a simple messaging/event system for asynchronous notification between application components. The paper also describes how the emerging Web-Services model fits with a component-oriented application design philosophy. To illustrate the connection between web services and Grid application programming we describe a simple design pattern for application factory services which can be used to simplify the task of building reliable Grid programs. Finally we address several issues of Grid programming that better understood from the perspective of Peer-to-Peer (P2P) systems. In particular we describe how models for collaboration and resource sharing fit well with many grid application scenarios.
%0 Journal Article
%1 Gannon:cluster:2002
%A Gannon, Dennis
%A Bramley, Randall
%A Fox, Geoffrey
%A Smallen, Shava
%A Rossi, Al
%A Ananthakrishnan, Rachana
%A Bertrand, Felipe
%A Chiu, Kenneth
%A Farrellee, Matt
%A Govindaraju, Madhusudhan
%A Krishnan, Sriram
%A Ramakrishnan, Lavanya
%A Simmhan, Yogesh
%A Slominski, Aleksander
%A Ma, Yu
%A Olariu, Caroline
%A Rey-Cenvaz, Nicolas
%D 2002
%I Springer Netherlands
%J Cluster Computing
%K component, escience, grid, iu, peer reviewed service, web
%N 3
%P 325--336
%R 10.1023/A:1015633507128
%T Programming the Grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications
%V 5
%X Computational Grids have become an important asset in large-scale scientific and engineering research. By providing a set of services that allow a widely distributed collection of resources to be tied together into a relatively seamless computing framework, teams of researchers can collaborate to solve problems that they could not have attempted before. Unfortunately the task of building Grid applications remains extremely difficult because there are few tools available to support developers. To build reliable and re-usable Grid applications, programmers must be equipped with a programming framework that hides the details of most Grid services and allows the developer a consistent, non-complex model in which applications can be composed from well tested, reliable sub-units. This paper describes experiences with using a software component framework for building Grid applications. The framework, which is based on the DOE Common Component Architecture (CCA), allows individual components to export function/service interfaces that can be remotely invoked by other components. The framework also provides a simple messaging/event system for asynchronous notification between application components. The paper also describes how the emerging Web-Services model fits with a component-oriented application design philosophy. To illustrate the connection between web services and Grid application programming we describe a simple design pattern for application factory services which can be used to simplify the task of building reliable Grid programs. Finally we address several issues of Grid programming that better understood from the perspective of Peer-to-Peer (P2P) systems. In particular we describe how models for collaboration and resource sharing fit well with many grid application scenarios.
@article{Gannon:cluster:2002,
abstract = {Computational Grids have become an important asset in large-scale scientific and engineering research. By providing a set of services that allow a widely distributed collection of resources to be tied together into a relatively seamless computing framework, teams of researchers can collaborate to solve problems that they could not have attempted before. Unfortunately the task of building Grid applications remains extremely difficult because there are few tools available to support developers. To build reliable and re-usable Grid applications, programmers must be equipped with a programming framework that hides the details of most Grid services and allows the developer a consistent, non-complex model in which applications can be composed from well tested, reliable sub-units. This paper describes experiences with using a software component framework for building Grid applications. The framework, which is based on the DOE Common Component Architecture (CCA), allows individual components to export function/service interfaces that can be remotely invoked by other components. The framework also provides a simple messaging/event system for asynchronous notification between application components. The paper also describes how the emerging Web-Services model fits with a component-oriented application design philosophy. To illustrate the connection between web services and Grid application programming we describe a simple design pattern for application factory services which can be used to simplify the task of building reliable Grid programs. Finally we address several issues of Grid programming that better understood from the perspective of Peer-to-Peer (P2P) systems. In particular we describe how models for collaboration and resource sharing fit well with many grid application scenarios.},
added-at = {2023-04-07T07:37:58.000+0200},
author = {Gannon, Dennis and Bramley, Randall and Fox, Geoffrey and Smallen, Shava and Rossi, Al and Ananthakrishnan, Rachana and Bertrand, Felipe and Chiu, Kenneth and Farrellee, Matt and Govindaraju, Madhusudhan and Krishnan, Sriram and Ramakrishnan, Lavanya and Simmhan, Yogesh and Slominski, Aleksander and Ma, Yu and Olariu, Caroline and Rey-Cenvaz, Nicolas},
biburl = {https://www.bibsonomy.org/bibtex/2c047b3a61b53c7ff99db104c3caf5c4d/vinayaka2000},
doi = {10.1023/A:1015633507128},
interhash = {0da23ca26434de71108c282d472c266a},
intrahash = {c047b3a61b53c7ff99db104c3caf5c4d},
issn = {1386-7857},
journal = {Cluster Computing},
keywords = {component, escience, grid, iu, peer reviewed service, web},
note = {[IF 0.519]},
number = 3,
owner = {Simmhan},
pages = {325--336},
publisher = {Springer Netherlands},
timestamp = {2023-04-07T07:37:58.000+0200},
title = {Programming the Grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications},
volume = 5,
year = 2002
}