A practical soft type system for Scheme
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Design and use of software architectures: adopting and evolving a product-line approach
Design and use of software architectures: adopting and evolving a product-line approach
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Algorithms on Trees and Graphs
Algorithms on Trees and Graphs
Interface Theories for Component-Based Design
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
Static Consistency Checking for Distributed Specifications
Proceedings of the 16th IEEE international conference on Automated software engineering
Flow Analysis of Code Customizations
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Modal I/O automata for interface and product line theories
ESOP'07 Proceedings of the 16th European conference on Programming
Towards a type system for analyzing javascript programs
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
Interface input/output automata
FM'06 Proceedings of the 14th international conference on Formal Methods
Guided development with multiple domain-specific languages
MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
A modular model composition technique
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
TexMo: a multi-language development environment
ECMFA'12 Proceedings of the 8th European conference on Modelling Foundations and Applications
Hi-index | 0.02 |
Evolution and customization of component-based systems require an explicit understanding of component inter-dependencies. Implicit assumptions, poor documentation and hidden dependencies turn even simple changes into challenges. The problem is exacerbated in XML-intensive projects due to the use of soft references and the lack of information hiding. We address this with dependency tracking interface types for models and metamodels. We provide automatic compatibility checks and a heuristic inference procedure for our interfaces, which allows easy and incremental adoption of our technique even in mature projects. We have implemented a prototype and applied it to two large cases: an enterprise resource planning system and a healthcare information system.