Using Refactoring Miner to detect refactorings Description: The purpose of this assignment is to understand how to
Question:
Using Refactoring Miner to detect refactorings Description: The purpose of this assignment is to understand how to detect refactorings and design improvements, performed by developers as part of their daily development activities. For this, we will use Refactoring Miner. Refactoring Miner is a library/API written in Java that can detect refactorings applied in the history of a Java project. Task: For this part, you will need to use Refactoring Miner. You can either run the mining tool to detect all refactoring in all the history of a given project. Or you can use the Chrome extension, which will help you detect refactroings for a given commit. You will have it analyze one version of a JAVA software of your choice (you can use your previous assignment project if it is feasible). You will then be asked to report the refactoring decisions, performed by developers, and then measure their impact using the Understand tool. Follow these steps:
1. Install the Refactoring Miner or Chrome extension
2. Run the tool on a project of your choice and select 1 commit preferably containing a large number of refactorings (more than 5).
3. Report the number and types of commits detected, explain the intent behind them if possible.
4. Now use Understand to analyze the impact of these refactorings. Input your project checked out before the commit and after the commit. Run Understand on the two checked out instances.
5. Check the CK metric values for the files associated with refactorings (and not the all the files in the project).
6. Analyze the impact of these refactorings on the metrics, and report your findings.
Concepts In Federal Taxation
ISBN: 9780324379556
19th Edition
Authors: Kevin E. Murphy, Mark Higgins, Tonya K. Flesher