A reuse and composition protocol for services

One important facet of software reuse is the reuse of autonomous and distributed computational services. Components or applications offering services stay at the provider's site, where they are developed, kept securely, operated, maintained, and updated. Instead of purchasing software components, the customer buys services by invoking methods provided by these remote applications over the Internet. Due to the autonomy of the services, this reuse model causes specific requirements that differ from those where one builds one's own system from components. These requirements have led to the definition of CPAM, a protocol for reusing remote and autonomous services. CPAM can be used on top of various distribution systems, and offers features like presetting of attributes, run-time estimation of costs and having several calls for setup, invocation and result extraction. The CPAM protocol has been successfully used within CHAIMS, a reuse environment that supports the generation of client applications based on CPAM.

[1]  David Maier,et al.  Persistent Object Systems , 1995, Workshops in Computing.

[2]  Grady Booch,et al.  Object-oriented analysis and design with applications (2nd ed.) , 1993 .

[3]  Stefano Ceri,et al.  Towards Megaprogramming: A Paradigm for Component-Based Programming , 1992 .

[4]  Russ B. Altman,et al.  Reuse, CORBA, and knowledge-based systems , 1998, Int. J. Hum. Comput. Stud..

[5]  Gio Wiederhold,et al.  CLAM: Composition Language for Autonomous Megamodules , 1999, COORDINATION.

[6]  Jeffrey D. Ullman,et al.  Principles of Database and Knowledge-Base Systems, Volume II , 1988, Principles of computer science series.

[7]  Stefano Ceri,et al.  Toward megaprogramming , 1992, CACM.

[8]  Naranker Dulay,et al.  Regis: a constructive development environment for distributed programs , 1994, Distributed Syst. Eng..

[9]  Peter Buneman,et al.  Challenges in Integrating Biological Data Sources , 1995, J. Comput. Biol..

[10]  Russ B. Altman,et al.  Standardized Representations of the Literature: Combining Diverse Sources of Ribosomal Data , 1997, ISMB.

[11]  Israel Ben-Shaul,et al.  HADAS: a network centric framework for interoperability programming , 1997, Proceedings of CoopIS 97: 2nd IFCIS Conference on Cooperative Information Systems.

[12]  Grady Booch,et al.  Object-Oriented Design with Applications , 1990 .

[13]  Louis Perrochon,et al.  A compiler for composition: CHAIMS , 1997, Proceedings Fifth International Symposium on Assessment of Software Tools and Technologies.

[14]  Pankaj Jain,et al.  A language and system for composing autonomous, heterogeneous and distributed megamodules , 1998, Proceedings Ninth International Workshop on Database and Expert Systems Applications (Cat. No.98EX130).

[15]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[16]  C. M. Sperberg-McQueen,et al.  Extensible Markup Language (XML) , 1997, World Wide Web J..

[17]  Simon Kasif,et al.  Computational methods in molecular biology , 1998 .

[18]  Keith D. Swenson,et al.  Simple Workflow Access Protocol (SWAP) , 1998 .