Description |
1 online resource (xxi, 323 pages) : illustrations |
Contents |
Programmers and Practices. Unweaving Code Search Toward Remixing-Centered Programming Support / Kumiyo Nakakoji, Yasuhiro Yamamoto, Yoshiyuki Nishinaka -- Archetypal Internet-Scale Source Code Searching / Medha Umarji, Susan Elliott Sim -- A Controlled Experiment on the Process Used by Developers During Internet-Scale Code Search / Susan Elliott Sim, Megha Agarwala, Medha Umarji -- From Data Structures to Infrastructure. Artifact Representation Techniques for Large-Scale Software Search Engines / Oliver Hummel, Colin Atkinson, Marcus Schumacher -- Krugle Code Search Architecture / Ken Krugler -- Experiences and Lessons Learned with the Development of a Source Code Search Engine / Eduardo Santana de Almeida -- Infrastructure for Building Code Search Applications for Developers / Sushil Krishna Bajracharya -- Reuse: Components and Projects. Developing Software with Open Source Software Components / Claudia Ayala, Xavier Franch, Reidar Conradi, Jingyue Li, Daniela Cruzes -- Open Source Reuse and Strategic Imperatives / Rahul De', Ravi A. Rao -- Applying Program Analysis to Code Retrieval / Joel Ossher, Cristina Lopes -- Test-Driven Reuse: Key to Improving Precision of Search Engines for Software Reuse / Oliver Hummel, Werner Janjic -- Remix: Snippets and Answers. Software Problems That Motivate Web Searches / Rosalva E. Gallardo-Valencia, Susan Elliott Sim -- Novel and Applied Algorithms in a Search Engine for Java Code Snippets / Phitchayaphong Tantikul, C. Albert Thompson, Rosalva E. Gallardo-Valencia -- Facilitating Crowd Sourced Software Engineering via Stack Overflow / Ohad Barzilay, Christoph Treude, Alexey Zagalsky -- Looking Ahead. Intellectual Property Law in Source Code Reuse and Remix / Susan Elliott Sim, Erik B. Stenberg -- Richie Boss: Private Investigator Manager / Micah Joel -- Introduction: Remixing Snippets and Reusing Components / Susan Elliott Sim |
Summary |
In recent years, searching for source code on the web has become increasingly common among professional software developers and is emerging as an area of academic research. This volume surveys past research and presents the state of the art in the area of "code retrieval on the web." This work is concerned with the algorithms, systems, and tools to allow programmers to search for source code on the web and the empirical studies of these inventions and practices. It is a label that we apply to a set of related research from software engineering, information retrieval, human-computer interaction, management, as well as commercial products. The division of code retrieval on the web into snippet remixing and component reuse is driven both by empirical data, and analysis of existing search engines and tools. Contributors include leading researchers from human-computer interaction, software engineering, programming languages, and management. "Finding Source Code on the Web for Remix and Reuse" consists of five parts. Part I is titled "Programmers and Practices," and consists of a retrospective chapter and two empirical studies on how programmers search the web for source code. Part II is titled "From Data Structures to Infrastructures," and covers the creation of ground-breaking search engines for code retrieval required ingenuity in the adaptation of existing technology and in the creation of new algorithms and data structures. Part III focuses on "Reuse: Components and Projects," which are reused with minimal modification. Part IV is on "Remix: Snippets and Answers," which examines how source code from the web can also be used as solutions to problems and answers to questions. The book concludes with Part V, "Looking Ahead," that looks at future programming and the legalities of software reuse and remix and the implications of current intellectual property law on the future of software development. The story, "Richie Boss: Private Investigator Manager," was selected as the winner of a crowdfunded short story contest." |
Analysis |
Computer science |
|
Software engineering |
|
Database management |
|
Software Engineering/Programming and Operating Systems |
|
User Interfaces and Human Computer Interaction |
|
Information Storage and Retrieval |
|
computerwetenschappen |
|
computer sciences |
|
man-machine interaction |
|
computers |
|
gebruikersinterfaces |
|
user interfaces |
|
informatieontsluiting |
|
information retrieval |
|
informatieopslag |
|
information storage |
|
operating systems |
|
databasebeheer |
|
Information and Communication Technology (General) |
|
Informatie- en communicatietechnologie (algemeen) |
Bibliography |
Includes bibliographical references |
Notes |
Print version record |
Subject |
Computer software -- Reusability.
|
|
Computer software -- Development.
|
|
Software engineering.
|
|
Electronic information resource searching.
|
|
Computer software.
|
|
Computer programs.
|
|
Software
|
|
software.
|
|
COMPUTERS -- Programming -- Software Development.
|
|
Computer programs
|
|
Computer software
|
|
Computer software -- Development
|
|
Computer software -- Reusability
|
|
Electronic information resource searching
|
|
Software engineering
|
Form |
Electronic book
|
Author |
Sim, Susan Elliott, editor
|
|
Gallardo-Valencia, Rosalva E., editor
|
ISBN |
9781461465966 |
|
1461465966 |
|
1461465958 |
|
9781461465959 |
|