Skip to main content

An experiment in software retrieval

  • Conference paper
  • First Online:
Book cover Software Engineering — ESEC '93 (ESEC 1993)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 717))

Included in the following conference series:

Abstract

This paper evaluates a knowledge-based approach for software retrieval. It describes a knowledge-based software information system that uses an expressive terminological knowledge representation to represent software and that offers a natural language query interface. The system is used to implement a cross reference tool for C++ and a tool for locating UNIX commands. The retrieval effectiveness is compared to approaches based on automatic indexing. It is shown that the knowledge-based approach is more precise than three different automatic indexing approaches, while providing excellent recall and adequate runtime performance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Adams. Knowledge representation and acquisition in a natural language software information system (in German). PhD thesis, University of Karlsruhe, Faculty of Computer Science, November 1992.

    Google Scholar 

  2. F. Baader and B. Hollunder. A terminological knowledge representation system with complete inference algorithms. In International Workshop on Processing Declarative Knowledge, pages 67–86. Springer-Verlag, 1991.

    Google Scholar 

  3. Franz Baader and Bernhard Hollunder. KRIS: Knowledge representation and inference system. ACM SIGART Bulletin, 2(3):8–14, June 1991.

    Google Scholar 

  4. H. Beck, S. Gala, and S. Navathe. Classification as a query processing technique in the CANDIDE semantic data model. In International Conference on Data Engineering, pages 572–581, 1989.

    Google Scholar 

  5. A. Borgida, R. Brachman, D. McGuinness, and L. Alperin Resnick. CLASSIC: A structural data model for objects. In ACM SIGMOD International Conference on Management of Data, pages 59–67, 1989.

    Google Scholar 

  6. R. Brachman, D. McGuinness, P. Patel-Schneider, and L. Resnick. Living with CLASSIC: When and how to use a KL-ONE like language. In John Sowa, editor, Principles of Semantic Networks, pages 401–456. Morgan Kaufmann Publishers, 1991.

    Google Scholar 

  7. J. Browne, T. Lee, and J. Werth. Experimental evaluation of a reusability-oriented parallel programming environment. IEEE Transactions on Software Engineering, 16(2):111–120, February 1990.

    Google Scholar 

  8. B. Burton, R. Aragon, S. Bailey, K. Koehler, and L. Mayes. The reusable software library. In Tutorial: Software Reuse. Editor: W. Tracz. IEEE Computer Society Press, 1988.

    Google Scholar 

  9. Y.-F. Chen, M. Nishimoto, and C. Ramamoorthy. The C information abstraction system. Communications of the ACM, 16(3):325–334, March 1990.

    Google Scholar 

  10. P. Devanbu, R. Brachman, and P. Selfridge. LaSSIE — a knowledge-based software information system. Communications of the ACM, 34(5):34–49, May 1991.

    Google Scholar 

  11. P. T. Devanbu and D. J. Litman. Plan-based terminological reasoning. In International Conference on Principles of Knowledge Representation and Reasoning, pages 128–138, 1991.

    Google Scholar 

  12. Margaret A. Ellis and Bjarne Stroustrup. The Annotated C++ Reference Manual. Addison Wesley, Reading, Mass., 1990.

    Google Scholar 

  13. W. Frakes and B. Nejmeh. An information system for software reuse. In Tutorial: Software Reuse. Editor: W. Tracz. IEEE Computer Society Press, 1988.

    Google Scholar 

  14. P. Garg and W. Scacchi. A hypertext system to manage software life-cycle documents. IEEE Software, pages 90–98, May 1990.

    Google Scholar 

  15. Keith E. Gorlen, Sanford M. Orlow, and Perry S. Plexico. Data Abstraction and Object-Oriented Programming in C++. Wiley, Chichester, 1991.

    Google Scholar 

  16. J. Grass and Y.-F. Chen. The C++ information abstractor. In Usenix C++ Conference Proceedings, pages 265–278, 1990.

    Google Scholar 

  17. J. Heinsohn, D. Kudenko, B. Nebel, and H.-J. Profitlich. An empirical analysis of terminological representation systems. In Conference of the American Association of Artificial Intelligence, pages 767–773, 1992.

    Google Scholar 

  18. R. Helm and Y. Maarek. Integrating information retrieval and domain specific approaches for browsing and retrieval in object-oriented class libraries. ACM SIGPLAN Notices, 26(11):47–61, November 1991.

    Google Scholar 

  19. L. Latour and E. Johnson. Seer: A graphical retrieval system for reusable ada software modules. In International IEEE Conference on Ada Applications and Environments. IEEE Computer Society Press, 1988.

    Google Scholar 

  20. Y. Maarek. Software library construction from an IR perspective. SIGIR Forum, 25(2):8–18, Fall 1991.

    Google Scholar 

  21. Y. Maarek and F. Smadja. Full text indexing based on lexical relations. An application: Software libraries. In Proceedings of the ACM SIGIR Conference on Research and Development in Information Retrieval, pages 198–206, 1989.

    Google Scholar 

  22. Y. S. Maarek, D. M. Berry, and G. E. Kaiser. An information retrieval approach for automatically constructing software libraries. IEEE Transactions on Software Engineering, 17(8):800–813, August 1991.

    Google Scholar 

  23. R. MacGregor. A deductive pattern matcher. In Conference of the American Association of Artificial Intelligence, pages 403–408, 1988.

    Google Scholar 

  24. Robert MacGregor. Inside the LOOM description classifier. ACM SIGART Bulletin, 2(3):88–92, June 1991.

    Google Scholar 

  25. S. Meggendorfer and P. Manhart. A knowledge and deduction based software retrieval tool. In Knowledge-Based Software Engineering Conference, pages 127–133. IEEE Computer Society Press, 1991.

    Google Scholar 

  26. P. Patel-Schneider. Small can be beautiful in knowledge representation. In Proceedings of the IEEE Workshop on Principles of Knowledge-Based Systems, pages 11–16. IEEE Computer Society Press, 1984.

    Google Scholar 

  27. C. Peltason, A. Schmiedel, C. Kindermann, and J. Quantz. The BACK system revisited. Technical Report 75, Technische Universitaet Berlin, Fachbereich Informatik, Projektgruppe KIT, 1989.

    Google Scholar 

  28. L. Prechelt. The SIS project: Software reuse with a natural language approach. Interner Bericht 2/92, University of Karlsruhe, Department of Informatics, 1992.

    Google Scholar 

  29. L. Prechelt, F. D. Buo, and R. Adams. Transportable natural language interfaces for taxonomic knowledge representation systems. In International Conference on Artificial Intelligence Applications, 1993.

    Google Scholar 

  30. R. Prieto-Diaz and G. Jones. Breathing new life into old software. In Tutorial: Software Reuse. Editor: W. Tracz. IEEE Computer Society Press, 1988.

    Google Scholar 

  31. Ruben Prieto-Diaz and Peter Freeman. Classifying software for reusability. IEEE Software, 4(1):6–16, January 1987.

    Google Scholar 

  32. J. Quantz and C. Kindermann. Implementation of the BACK system version 4. Technical Report 78, Technische Universitaet Berlin, Fachbereich Informatik, Projektgruppe KIT, December 1990.

    Google Scholar 

  33. E. J. Rollins and J. M. Wing. Specifications as search keys for software libraries. In K. Furukawa, editor, Proceedings of the International Conference on Logic Programming, pages 173–187, 1991.

    Google Scholar 

  34. G. Salton and M. McGill. Introduction to Modern Information Retrieval. McGraw-Hill Book Company, 1983.

    Google Scholar 

  35. P. G. Selfridge. Knowledge representation support for a software information system. In International Conference on Artificial Intelligence Applications, pages 134–140. IEEE Computer Society Press, 1991.

    Google Scholar 

  36. T. Syvertsen. CPPREF — an information abstractor for C++. Master's thesis, University of Karlsruhe, April 1992.

    Google Scholar 

  37. W. Teitelman. The Interlisp Reference Manual. Xerox Palo Alto Research Center, Palo Alto, California, 1978.

    Google Scholar 

  38. W. Teitelman and L. Masinter. The Interlisp programming environment. IEEE Computer, pages 25–33, April 1981.

    Google Scholar 

  39. Walter F. Tichy. RCS — a system for version control. Software—Practice and Experience, 15(7):637–654, July 1985.

    Google Scholar 

  40. Murray Wood and Ian Sommerville. An information retrieval system for software components. Software Engineering Journal, 3(5):198–207, September 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ian Sommerville Manfred Paul

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Adams, R. (1993). An experiment in software retrieval. In: Sommerville, I., Paul, M. (eds) Software Engineering — ESEC '93. ESEC 1993. Lecture Notes in Computer Science, vol 717. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57209-0_26

Download citation

  • DOI: https://doi.org/10.1007/3-540-57209-0_26

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57209-1

  • Online ISBN: 978-3-540-47972-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics