| dc.description.abstract | The early prediction of software failure is important in the
field of software engineering since it leads to the
development of better quality software, along with a
reduction in maintenance cost and effort. However, even
though there is growing interest in early prediction of
software failure, the existing literature shows some gaps.
While many studies are quite reliant on static code metrics
or test case execution data, they tend to miss out on vital
dynamic and contextual information which can be obtained
by analyzing software system logs. Log data is regularly
created by computing systems during their runtime and
contains rich information including event sequences,
timestamps, error messages, and system states that can
potentially being utilized in the identification of anomalies
and predictions of failures on real-time. The objective of this
work is to categorize the existing literature on the use of
system logs for predicting software, through systematic
literature review, with the help of the guidelines from
Barbara Kitchenham. The review categorizes system logs
into four primary parameters: resource/hardware logs,
workload/performance logs, network logs, and security logs.
It also highlights the machine learning models. The findings
reveal that log attributes such as CPU usage, memory
utilization, disk space, transaction processing, and network
errors are consistently identified as key predictors of
software failure. This finding aligns with expert opinions,
demonstrating strong agreement on the relevance of these
attributes for predicting software failure. This study
contributes to the growing body of knowledge on software
failure prediction, emphasizing the importance of integrating
machine learning with systematic log monitoring to enhance
proactive system failure management. Future work should
focus on developing real-time monitoring tools that leverage
machine learning models to automate failure detection and
prediction across various system components. | en_US |