The Z notation: a reference manual
The Z notation: a reference manual
Reconciling environment integration and software evolution
ACM Transactions on Software Engineering and Methodology (TOSEM)
Formalizing the Object Management Group's core object model
Computer Standards & Interfaces - Special issue on formal description techniques
A formal description of the OMG's Core Object Model and the meaning of compatible extension
Computer Standards & Interfaces - Special issue on formal description techniques
Mediators: easing the design and evolution of integrated systems
Mediators: easing the design and evolution of integrated systems
Evaluating The Mediator Method: Prism as a Case Study
IEEE Transactions on Software Engineering
Using formal methods to reason about architectural standards
ICSE '97 Proceedings of the 19th international conference on Software engineering
Inside COM
Developing active Web controls
Developing active Web controls
Developing Java beans
Professional Dcom Programming
Modeling the C++ Object Model, An Application of an Abstract Object Model
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
Multiple mass-market applications as components
Proceedings of the 22nd international conference on Software engineering
COM revisited: tool-assisted modelling of an architectural framework
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Behavioural analysis of the enterprise JavaBeans component architecture
SPIN '01 Proceedings of the 8th international SPIN workshop on Model checking of software
The coming-of-age of software architecture research
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Automatic synthesis of deadlock free connectors for COM/DCOM applications
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Towards a formalization for COM part i: the primitive calculus
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
JAVA Wrappers for Automated Interoperability
DNIS '00 Proceedings of the International Workshop on Databases in Networked Information Systems
Developing a High-Quality Software Tool for Fault Tree Analysis
ISSRE '99 Proceedings of the 10th International Symposium on Software Reliability Engineering
The Golden Age of Software Architecture
IEEE Software
Reasoning About Multi-Lingual Exception Handling Using RIPLS
Electronic Notes in Theoretical Computer Science (ENTCS)
A declarative formal approach to dynamic reconfiguration
Proceedings of the 1st international workshop on Open component ecosystems
A survey of component based system quality assurance and assessment
Information and Software Technology
Component contract-based formal specification technique
ICCSA'05 Proceedings of the 2005 international conference on Computational Science and Its Applications - Volume Part III
Pol: specification-driven synthesis of architectural code frameworks for platform-based applications
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
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. This 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.