Abstract:
Software quality is defined as the degree to which a software
component or system meets specified requirements and specifications.
Objectively quantifying software quality is important as it reduces cost,
effort and time. Nonetheless, assessment of software quality is a difficult
task since most software quality characteristics such as maintainability,
reliability and reusability cannot be directly measured. However, they
can be predicted from other software quality attributes such as
complexity and inheritance. Many metrics to measure these software
quality attributes have been proposed. These metrics are used to build
software quality estimation models that take different forms: statistical
models, rule based models and decision trees. In our work, we will deal
with rule based estimation models for two main reasons: First, their
white box nature makes them easy to interpret by human experts.
Second, they supply guidelines that clearly show how to reach the
prediction. Since data used to build such estimation models is scarce in
the software quality estimation field, the accuracy of these rule based
models gravely deteriorates when applied on new unseen data. The goal
of this thesis is to explore and assess the use of hybrid heuristics to
improve and adapt the rule based models to the context specific datasets.