The Object Repository, Pulling Objects out of the Ecosystem

Spasojevic, Boris; Ghafari, Mohammad; Nierstrasz, Oscar Marius (2016). The Object Repository, Pulling Objects out of the Ecosystem. In: IWST'16 Proceedings of the 11th edition of the International Workshop on Smalltalk Technologies. Prague, Czech Republic. 23.-24.08.2016. 10.1145/2991041.2991048

[img] Text
a7-Spasojevic.pdf - Published Version
Restricted to registered users only
Available under License Publisher holds Copyright.

Download (283kB)

In this paper we propose the idea of constructing an Object Repository — a repository of code snippets that, when executed, produce an instance of some class. Such a repository may be useful for several software engineering tasks like augmenting software documentation, testing object inspectors, improving program comprehension etc. We mine code snippets from existing software systems via brute force execution of code segments obtained through converting AST nodes of methods to source code. The gathered snippets are known to be executable, and this is a novelty which is not possible with existing approaches. We show that applying the proposed approach to 141 open source Pharo projects results in an Object Repository that can instantiate almost 80% of the available classes in these projects.

Item Type:

Conference or Workshop Item (Paper)

Division/Institute:

08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG) [discontinued]

UniBE Contributor:

Spasojevic, Boris, Ghafari, Mohammad, Nierstrasz, Oscar

Subjects:

000 Computer science, knowledge & systems
500 Science > 510 Mathematics

ISBN:

978-1-4503-4524-8

Language:

English

Submitter:

Oscar Nierstrasz

Date Deposited:

20 Feb 2017 14:51

Last Modified:

02 Mar 2023 23:28

Publisher DOI:

10.1145/2991041.2991048

Uncontrolled Keywords:

scg16 scg-pub jb16 snf-asa2 spasojevic

BORIS DOI:

10.7892/boris.94651

URI:

https://boris.unibe.ch/id/eprint/94651

Actions (login required)

Edit item Edit item
Provide Feedback