6 research outputs found

    A dependency-aware, context-independent code search infrastructure

    Full text link
    Over the last decade many code search engines and recommendation systems have been developed, both in academia and industry, to try to improve the component discovery step in the software reuse process. Key examples include Krugle, Koders, Portfolio, Merobase, Sourcerer, Strathcona and SENTRE. However, the recall and precision of this current generation of code search tools are limited by their inability to cope effectively with the structural dependencies between code units. This lack of “dependency awareness” manifests itself in three main ways. First, it limits the kinds of search queries that users can define and thus the precision and local recall of dependency aware searches (giving rise to large numbers of false positives and false negatives). Second, it reduces the global recall of the component harvesting process by limiting the range of dependency-containing software components that can be used to populate the search repository. Third, it significantly reduces the performance of the retrieval process for dependency-aware searches. This thesis lays the foundation for a new generation of dependency-aware code search engines that addresses these problems by designing and prototyping a new kind of software search platform. Inspired by the Merobase code search engine, this platform contains three main innovations - an enhanced, dependency aware query language which allows traditional Merobase interface-based searches to be extended with dependency requirements, a new “context independent” crawling infrastructure which can recognize dependencies between code units even when their context (e.g. project) is unknown, and a new graph-based database integrated with a full-text search engine and optimized to store code modules and their dependencies efficiently. After describing the background to, and state-of-the-art in, the field of code search engines and information retrieval the thesis motivates the aforementioned innovations and explains how they are realized in the DAISI (Dependency-Aware, context-Independent code Search Infrastructure) prototype using Lucene and Neo4J.DAISI is then used to demonstrate the advantages of the developed technology in a range of examples

    GVSU Undergraduate and Graduate Catalog, 2008-2009

    Get PDF
    Grand Valley State University 2008-2009 undergraduate and/or graduate course catalog published annually to provide students with information and guidance for enrollment.https://scholarworks.gvsu.edu/course_catalogs/1083/thumbnail.jp

    Bowdoin College Catalogue (2009-2010)

    Get PDF
    https://digitalcommons.bowdoin.edu/course-catalogues/1290/thumbnail.jp
    corecore