A Java Program Feature Envy Detection Method Based on Dataflow Analysis with Soot

Autor: CHEN, JIH-YANG, 陳日揚
Rok vydání: 2019
Druh dokumentu: 學位論文 ; thesis
Popis: 107
Feature Envy is a code smell indicating that a method seems more interested in a class other than the one it actually is in. The removal of Feature Envy is important since a code with Feature Envy may increase the coupling and decrease the cohesion between classes. Previosuly, by using dataflow analysis, a Feature Envy detection approach, called FEED (FEature Envy Detector), was proposed to detect the code statements of C# programs that are Feature Envy. In this thesis, we apply the detection rules of FEED and propose a Feature Envy detection approach for Java program. We first use Soot to transform Java program into Shimple, an intermediate representation, and then perform dataflow analysis to detect Feature Envy. A Java program Feature Envy detection tool, called JFEED (Java FEature Envy Detector), was developed. We evaluate our approach with an open-source application, JUnit. The results showed that the proposed approach can detect more Feature Envy instances in comparison to JDeodorant.
Databáze: Networked Digital Library of Theses & Dissertations