Inheritance as an incremental modification mechanism or what like is and isn'tlike
on ECOOP '88 (European Conference on Object-Oriented Programming)
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Making Components Contract Aware
Computer
Behavior Protocols for Software Components
IEEE Transactions on Software Engineering
Component technology: what, where, and how?
Proceedings of the 25th International Conference on Software Engineering
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Software—Practice & Experience
Practical Verification of Component Substitutability Using Subtype Relation
EUROMICRO '06 Proceedings of the 32nd EUROMICRO Conference on Software Engineering and Advanced Applications
Component Updates as a Boolean Optimization Problem
Electronic Notes in Theoretical Computer Science (ENTCS)
Specification and verification challenges for sequential object-oriented programs
Formal Aspects of Computing
Verification of evolving software via component substitutability analysis
Formal Methods in System Design
Formalization of Component Substitutability
Electronic Notes in Theoretical Computer Science (ENTCS)
Automated Versioning in OSGi: A Mechanism for Component Software Consistency Guarantee
SEAA '09 Proceedings of the 2009 35th Euromicro Conference on Software Engineering and Advanced Applications
Automated and unanticipated flexible component substitution
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Experience with safe dynamic reconfigurations in component-based embedded systems
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Hi-index | 0.00 |
Consistency and compatibility in component-based applications have been the subject of many methods and approaches, from formally sound ones with difficult practical implementation to pragmatic rules for comparing version meta-data which offer only weak guarantees. This is especially true of many industrial component frameworks in routine use. In this paper we contribute a formal description of a method which ensures application run-time type consistency, by performing type-based substitutability checks as part of the component binding and update processes. The method takes into account the environment of the currently deployed component version and uses its so-called contextual complement in the checks. This novel approach overcomes the limitations of the standard notion of compatibility by allowing non-contravariant differences on the required side of the component@?s surface. The method was successfully implemented for the OSGi component framework, and in later parts of the paper we share the experiences gained through the implementation.