Treffer: JDFD- Java data flow detection tool
Weitere Informationen
Testing is vital for effective software development. Object-oriented programs however cause unique issues in testing by introducing anomalous behavior in software due to inheritance and polymorphism. Generics allows parameters for a method to be inferred with diverse types causing behavioral anomaly among classes in an inheritance hierarchy. This research presents JDFD, a web-based tool built on top of Soot which identifies potential sources of anomaly due to object-orientation and generics using static call graph, data-flow and type-flow graphs. JDFD is applied to the Employee program and the ResultCheck program case studies which exhibit behavioral anomalies, to verify the effectiveness of the graph visualizations in identifying the potential sources of faults or anomalies present in the program. It was found that by backtracking through data flow and call graphs the source of anomaly due to polymorphic calls could be identified. Using the type-flow graph, the source of anomaly due to generics could be identified effectively. This tool can be extended to include dynamic sync between source code and the visualizations. It could be further extended to identify security leaks in source code.