To use a framework, developers often need to hook into and customise some of its functionality.
For example, a common way of customising a framework is to subclass a framework type and to override some of its methods.
Recently, Asaduzzaman et al. defined these customisations as extension points and proposed a new approach to mine large amounts of Java code examples and recommend the most frequently used example, so called extension patterns.
Indeed, recommending extension patterns that frequently occur at such extension points can help developers to adopt a new framework correctly and to fully exploit it.
In this paper, we present a differentiated replication study of the work by Asaduzzaman et al. on Java frameworks.
Our aim is to replicate the work in order to analyse extension points and extension patterns in the context of Scala frameworks.
To this aim, we propose SCALA-XP-MINER, a tool for mining extension patterns in Scala software systems to empirically investigate our hypotheses.

Our results show that the approach proposed by the reference work is also able to mine extension patterns for Scala frameworks and that our tool is able to achieve similar precision, recall and F-Measure compared to FEMIR.
Despite this, the distribution of the extension points by category is different and most of the patterns are rather simple.
Thus, the challenge of recommending more complex patterns to Scala developers is still an open problem.
Original languageEnglish
Title of host publicationProceedings of the 26th International Conference on Software Analysis, Evolution, and Reengineering (SANER 2019)
PublisherIEEE
Pages514-523
Number of pages10
Publication statusAccepted/In press - 2019
Event26th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2019) - Zhejiang University, Hangzhou, China
Duration: 24 Feb 201927 Feb 2019
Conference number: 26
https://saner2019.github.io

Conference

Conference26th IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER 2019)
Abbreviated titleSANER
CountryChina
CityHangzhou
Period24/02/1927/02/19
Internet address

    Research areas

  • Pattern Mining, Mining Software Repositories, Software Engineering

ID: 43881844