A New Technique for Utility-Class Detection in Object-Oriented Software

Understanding a very large execution trace is not a simple task due to the complexity of typical traces. Detecting and removing utilities is beneficial in that it decreases the size and complexity of the trace and will make the software comprehension process easier. This study concentrates on detect...

Full description

Bibliographic Details
Main Authors: Thamer Al-Rousan, Hasan Abualese
Format: Article
Language:English
Published: UIKTEN 2019-05-01
Series:TEM Journal
Subjects:
Online Access:http://www.temjournal.com/content/82/TEMJournalMay2019_354_363.pdf
Description
Summary:Understanding a very large execution trace is not a simple task due to the complexity of typical traces. Detecting and removing utilities is beneficial in that it decreases the size and complexity of the trace and will make the software comprehension process easier. This study concentrates on detecting utility classes from an execution trace of object-oriented software and removing them. To achieve this goal, two novel utility detection class metricsare proposed to determine the extent that a certain class can be counted as a utility class. These detection metrics mainly depend on dynamic coupling analysis to address object-oriented features such as polymorphism and late binding. A case study was conducted to demonstrate the effectiveness of the proposed technique where the results in this case study conform to the results in earlier studies. In addition, the case study demonstrates the practical usefulness of proposed technique which shows that, when 10%, 20% and 30% of total classes are excluded, the final execution trace size is reduced by 41%, 63% and 90% of its original size respectively.
ISSN:2217-8309
2217-8333