Transparent Gif

Department of Computer Science

University of California, Santa Barbara

Abstract

Binary Component Adaptation

by: Ralph Keller and Urs Hï½lzle

Abstract:

Binary component adaptation (BCA) allows components to be adapted and evolvedin binary form and on-the-fly (during program loading). BCA rewrites componentbinaries before (or while) they are loaded, requires no source code access andguarantees release-to-release compatibility. That is, an adaptation isguaranteed to be compatible with a new binary release of the component as longas the new release itself is compatible with clients compiled using the earlierrelease. We describe our implementation of BCA for Java and demonstrate itsusefulness by showing how it can solve a number of important integration andevolution problems. Even though our current implementation was designed foreasy integration with Sun\'s JDK 1.1 VM rather than for ultimate speed,measurements show that the load-time overhead introduced by BCA is small, inthe range of one or two seconds. With its flexibility, relative simpleimplementation, and low overhead, binary component adaptation couldsignificantly improve the reusability of Java components.

Keywords:

software engineering, software components, versioning, integration, dynamic loading, Java, Holzle, Hoelzle

Date:

December 1997

Document: 1997-20

XHTML Validation | CSS Validation
Updated 14-Nov-2005
Questions should be directed to: webmaster@cs.ucsb.edu