A
significant finding from the secondary research studies was that
software complexity and maintenance costs have a positive correlation.
This argues that software developers should work to simplify their
products in order to cut maintenance expenses and raise software
quality. By using this approach, developers can reuse pre-existing
software artifacts and components, saving time and effort compared to
creating new ones from scratch. Customer that increased software quality
was linked to cheaper maintenance costs, fewer faults, improved
maintainability, and higher customer satisfaction was another
significant discovery. This emphasizes the value of spending money on
software maintenance to keep software systems dependable and effective
over time. Developers should carefully examine the measurements to
employ when analyzing Developers should carefully examine the
measurements to employ when analyzing the influence of maintenance on
software quality, according to the studies, which also revealed that
different measures of software quality may have differing levels of
association with maintenance.
With regards to the survey conducted in order to collect primary data,
the analysis showed corrective, preventive, and adaptive maintenance as
the most effective hence implying that, depending on the scenario,
multiple forms of maintenance are required, and that a variety of
approaches may be required to assure software quality. In addition to
this, regular maintenance and testing were considered extremely critical
to guaranteeing software quality since regular maintenance may prevent
problems from happening and testing can discover problems that need to
be fixed.
Adaptive maintenance followed by preventative maintenance being the most
cost-effective maintenance techniques suggests that making modifications
or upgrades to the software to adapt to changes in the environment or
avoid future issues may be more cost-effective in the long term than
repairing problems after they arise. To elaborate more on this,
preventive maintenance is making alterations or updates to the program
to maintain a strategic distance from future faults or issues.
Developers can avoid expensive and time-consuming challenges afterward
within the software development process by proactively tending to be
planned concerns. This has influence to ensure that the program fits the
requirements and details and that it runs easily and without mistakes.
Preventive maintenance moreover ensures that the program is up to date
and able of adjusting to changes within the working framework or
equipment.to adjust to changes within the working framework or
equipment. Adaptive maintenance, on the other hand, involves upgrading
the program to suit changes within the environment, such as working
frameworks or equipment adjustments. This can be noteworthy since, as
the technological landscape advances, software must adjust to stay
pertinent and effective. Software may remain useable, utilitarian, and
high performing by responding to changes within the environment.
Adjusting computer programs to fit unused necessities or guidelines is
another case of adaptive maintenance.
Preventive and adaptive maintenance must work in pairs to guarantee
software quality. They help with the anticipation of issues and ensure
that the program proceeds to perform legitimately in changing settings.
Without this sort of support, the program can before long end up old and
out of date, coming about resulting in expanded costs, lower
effectiveness, and decreased execution. Besides, by diminishing the
prerequisite for remedial support, both shapes of maintenance can serve
to lower the fetch of software advancement. Designers can avoid more
exorbitant and time-consuming corrective maintenance endeavors down the
line by tending to conceivable issues early on. This will inevitably
assist in lower add up to software development costs and increase the
program’s return on the venture. Increase the program’s return on the
venture. Finally, preventative and adaptive maintenance is basic for
moving forward program quality. They contribute to the software’s
long-term ease of use, usefulness, and execution, indeed when the
environment and requirements change. Designers may construct a program
that is more steady, efficient, and cost-effective in the long term by
prioritizing certain shapes of support.
Overall, the findings of the survey and research studies indicate that
software maintenance is an important activity for ensuring the quality
and reliability of software systems throughout time. Regular maintenance
and testing are critical, and businesses may wish to consider spending
more on preventive and adaptive maintenance in the future to lessen the
need for corrective maintenance. To ensure that software systems stay
dependable and performant over time, developers should seek to reduce
program complexity, employ efficient maintenance techniques, and invest
in continuous maintenance activities.
Limitations and Further
Research
One restriction of the research studies presented in the literature
review is that they may not be applicable to all types of software
systems. The research mostly focused on large, complicated software
systems and open-source software, which may not be representative of
other software development situations. Furthermore, the questionnaire
survey may have a sample bias because the sample of participants
included undergraduate students who may not be representative of the
population being studied because they are still unclear about the topic
addressed, resulting in limited generalizability of the results.
Response bias may also exist, in which participants may not respond
accurately or choose the answer they believe the researcher wants to
hear, resulting in erroneous results.
In terms of study limitations, one restriction of the studies presented
in the literature review is that they may not be applicable to all types
of software systems. The research mostly focused on large, complicated
software systems and open-source software, which may not be
representative of other software development situations. Furthermore,
the questionnaire survey may have a sample bias because the sample of
participants included undergraduate students who may not be
representative of the population being studied because they are still
unclear about the topic addressed, resulting in limited generalizability
of the results. Response bias may also exist, in which participants may
not respond accurately or choose the answer they believe the researcher
wants to hear, resulting in erroneous results.
Researchers in the future could build on prior studies’ limitations by
investigating software maintenance strategies and their impact on
software quality in a larger range of software development situations.
Smaller and less sophisticated software systems, proprietary software,
and a broader range of quality criteria could all fall under this
category. Future study could also look into new and innovative software
maintenance approaches that could improve software quality while
reducing maintenance costs and time. Subsequently, it might look into
the impact of upcoming technologies like artificial intelligence and
machine learning on software maintenance and how they relate to software
quality.