Artifact Representation Techniques for Large-Scale Software Search Engines
The first generation of software retrieval systems developed some 25 years ago used simple bibliographic indexing techniques adapted from library science to support the retrieval of relatively small numbers of in-house software artifacts. While these were sufficient at the time, they were completely...
Saved in:
Published in | Finding Source Code on the Web for Remix and Reuse pp. 81 - 101 |
---|---|
Main Authors | , , |
Format | Reference Book Chapter |
Language | English |
Published |
New York, NY
Springer New York
2013
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | The first generation of software retrieval systems developed some 25 years ago used simple bibliographic indexing techniques adapted from library science to support the retrieval of relatively small numbers of in-house software artifacts. While these were sufficient at the time, they were completely unscaleable to the vast numbers of software artifacts available today. The second generation of software search engines, representing the state-of-the-practice today, tackles this problem by using full-text search frameworks such as Lucene to support text-based searches on large software collections. However, these typically provide no inherent support for sophisticated search use cases which exploit the structure and “meaning” of software artifacts. In this chapter we describe the core techniques used in current text-based code search engines and advanced techniques that can be used to support sophisticated forms of searches that exploit the structure of software. We then survey the challenges and opportunities encountered in the development of the next (third) generation of software search engines based on new, currently emerging data storage platforms. |
---|---|
ISBN: | 1461465958 9781461465959 |
DOI: | 10.1007/978-1-4614-6596-6_5 |