DocumentCode
1258724
Title
Analysis of a conflict between aggregation and interface negotiation in Microsoft´s Component Object Model
Author
Sullivan, Kevin J. ; Marchukov, Mark ; Socha, John
Author_Institution
Dept. of Comput. Sci., Virginia Univ., Charlottesville, VA, USA
Volume
25
Issue
4
fYear
1999
Firstpage
584
Lastpage
599
Abstract
Many software projects today are based on the integration of independently designed software components that are acquired on the market, rather than developed within the projects themselves. A component standard, or integration architecture, is a set of design rules meant to ensure that such components can be integrated in defined ways without undue effort. The rules of a component standard define, among other things, component interoperability and composition mechanisms. Understanding the properties of such mechanisms and interactions between them is important for the successful development and integration of software components, as well as for the evolution of component standards. The paper presents a rigorous analysis of two such mechanisms: component aggregation and dynamic interface negotiation, which were first introduced in Microsoft´s Component Object Model (COM). We show that interface negotiation does not function properly within COM aggregation boundaries. In particular, interface negotiation generally cannot be used to determine the identity and set of interfaces of aggregated components. This complicates integration within aggregates. We provide a mediator-based example, and show that the problem is in the sharing of interfaces inherent in COM aggregation
Keywords
application program interfaces; distributed object management; open systems; project management; COM aggregation; COM aggregation boundaries; Microsoft Component Object Model; component aggregation; component interoperability; component standard; component standards; composition mechanisms; design rules; dynamic interface negotiation; independently designed software components; integration architecture; interface negotiation; mediator-based example; rigorous analysis; software projects; Aggregates; Computer architecture; Costs; Independent component analysis; Interference; Java; Mechanical factors; Software design; Software standards; Standards development;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/32.799960
Filename
799960
Link To Document