A language and environment for architecture-based software development and evolution
Proceedings of the 21st international conference on Software engineering
Query by outlines: a new paradigm to help manage programs
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
A survey of software reuse libraries
Annals of Software Engineering
Efficient Specification-Based Component Retrieval
Automated Software Engineering
Specification-Based Browsing of Software Component Libraries
Automated Software Engineering
Towards Brokering Problem-Solving Knowledge on the Internet
EKAW '99 Proceedings of the 11th European Workshop on Knowledge Acquisition, Modeling and Management
Torture Tests: A Quantitative Analysis for the Robustness of Knowledge-Based Systems
EKAW '00 Proceedings of the 12th European Workshop on Knowledge Acquisition, Modeling and Management
Adaptive Saturation-Based Reasoning
PSI '02 Revised Papers from the 4th International Andrei Ershov Memorial Conference on Perspectives of System Informatics: Akademgorodok, Novosibirsk, Russia
The unified problem-solving method development language UPML
Knowledge and Information Systems
Limited resource strategy in resolution theorem proving
Journal of Symbolic Computation - Special issue: First order theorem proving
SPARTACAS Automating Component Reuse and Adaptation
IEEE Transactions on Software Engineering
Method redefinition: ensuring alternative behaviors
Information Processing Letters
A formal approach to component adaptation and composition
ACSC '05 Proceedings of the Twenty-eighth Australasian conference on Computer Science - Volume 38
Cooperation of heterogeneous provers
IJCAI'99 Proceedings of the 16th international joint conference on Artifical intelligence - Volume 1
Automated reasoning: past story and new trends
IJCAI'03 Proceedings of the 18th international joint conference on Artificial intelligence
Splitting without backtracking
IJCAI'01 Proceedings of the 17th international joint conference on Artificial intelligence - Volume 1
A framework for systematic synthesis of transactional middleware
Middleware '98 Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing
Method redefinition---ensuring alternative behaviors
Information Processing Letters
Supporting program indexing and querying in source code digital libraries
AOIS'05 Proceedings of the 7th international conference on Agent-Oriented Information Systems III
Embedded Systems Design
Hi-index | 0.00 |
Deduction-based software component retrieval uses pre- and postconditions as indexes and search keys and an automated theorem prover (ATP) to check whether a component matches. This idea is very simple but the vast number of arising proof tasks makes a practical implementation very hard. We thus pass the components through a chain of filters of increasing deductive power. In this chain, rejection filters based on signature matching and model checking techniques are used to rule out non-matches as early as possible and to prevent the subsequent ATP from "drowning". Hence, intermediate results of reasonable precision are available at (almost) any time of the retrieval process. The final ATP step then works as a confirmation filter to lift the precision of the answer set. We implemented a chain which runs fully automatically and uses SETHEO for model checking and the automated prover SETHEO as confirmation filter. We evaluated the system over a medium-sized collection of components. The results encourage our approach.