search menu icon-carat-right cmu-wordmark

Replaceable Components and the Service Provider Interface

Technical Note
This 2002 report considers the motivation for using replaceable components and defines the requirements of replaceable component models.
Publisher

Software Engineering Institute

CMU/SEI Report Number
CMU/SEI-2002-TN-009
DOI (Digital Object Identifier)
10.1184/R1/6583070.v1

Abstract

Several popular component-based standards have emerged recently, including JavaBeans and Enterprise JavaBeans from Sun Microsystems and the Component Object Model from Microsoft. These component models are being adopted for use in software development, as they eliminate opportunities for architectural mismatch and are supported by standard services. A highly touted property of component models is that they support the development of replaceable components. Unfortunately, a robust, commercial marketplace of replaceable components has not been established for any of these component models.  

On the other hand, the properties of the Service Provider Interface (SPI), used in many Java language packages, has resulted in the development of reusable components in several technology areas. Examples of successful SPI packages include Java Database Connectivity, Java Cryptography Extension, Java Naming and Directory Interface, and the Java Application Program Interface for XML Processing. 

This technical note considers the motivation for using replaceable components and defines the requirements of replaceable component models. It evaluates the properties of standard component models and the SPI approach that affect their ability to support replaceable components.

Cite This Technical Note

Seacord, R., & Wrage, L. (2002, July 1). Replaceable Components and the Service Provider Interface. (Technical Note CMU/SEI-2002-TN-009). Retrieved April 20, 2024, from https://doi.org/10.1184/R1/6583070.v1.

@techreport{seacord_2002,
author={Seacord, Robert and Wrage, Lutz},
title={Replaceable Components and the Service Provider Interface},
month={Jul},
year={2002},
number={CMU/SEI-2002-TN-009},
howpublished={Carnegie Mellon University, Software Engineering Institute's Digital Library},
url={https://doi.org/10.1184/R1/6583070.v1},
note={Accessed: 2024-Apr-20}
}

Seacord, Robert, and Lutz Wrage. "Replaceable Components and the Service Provider Interface." (CMU/SEI-2002-TN-009). Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, July 1, 2002. https://doi.org/10.1184/R1/6583070.v1.

R. Seacord, and L. Wrage, "Replaceable Components and the Service Provider Interface," Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, Technical Note CMU/SEI-2002-TN-009, 1-Jul-2002 [Online]. Available: https://doi.org/10.1184/R1/6583070.v1. [Accessed: 20-Apr-2024].

Seacord, Robert, and Lutz Wrage. "Replaceable Components and the Service Provider Interface." (Technical Note CMU/SEI-2002-TN-009). Carnegie Mellon University, Software Engineering Institute's Digital Library, Software Engineering Institute, 1 Jul. 2002. https://doi.org/10.1184/R1/6583070.v1. Accessed 20 Apr. 2024.

Seacord, Robert; & Wrage, Lutz. Replaceable Components and the Service Provider Interface. CMU/SEI-2002-TN-009. Software Engineering Institute. 2002. https://doi.org/10.1184/R1/6583070.v1