The
second study topic investigates the financial and time implications of
software maintenance on software development. Fig. 4, shows how the cost
is distributed in the SDLC. The purpose of this was to find out how the
total software development process is impacted by software maintenance
costs and timelines.
Correcting, modifying, enhancing, and perfecting an already-in-use piece
of software are all included in software maintenance. The user has the
choice of whether to rectify, modify, enhance, or perfect the software,
excepting major faults and necessary adjustments. The upkeep task is not
necessary. It is frequently possible to continue using the software in
its current state, even in cases of non-critical problems. Time and
money are the two factors that determine whether to complete the
maintenance operation or not. When improvements and perfection are
involved, time and money are even more crucial factors. Considering the
current economic climate, everything comes down to weighing the costs,
benefits, and priorities.
Regarding the hypothesis that efficient maintenance procedures reduce
time and money spent on software development, which in turn affects
software quality, Edward E. Ogheneovo (2016) discovered a positive
relationship between software complexity and maintenance costs.
Ogheneovo discovered that as the complexity of the software system
grows, so does the number of maintenance requests and the time and work
necessary to accomplish each request. The study also discovered numerous
elements that influence this relationship, such as the size and
complexity of the program code, the number of features and
functionalities, and the degree of interdependence among software
components . In addition, Rajiv D. Banker et al. (1990) found that
programs with higher cyclomatic complexity ratings were associated with
higher maintenance costs. They also discovered that programs with
greater maintenance expenses have a higher rate of error during
maintenance. The authors examine the significance of their findings for
software development and maintenance, arguing that developers should
work to reduce software complexity in order to reduce maintenance costs
.
With regards to address one of the research queries regarding the best
methods of software maintenance that ensures the highest level of
software quality, a survey was conducted. The aim of the survey was to
gather information from the professionals’ opinions and experiences
based on their experience with projects with regard to software
maintenance techniques. Almost half of those polled (47.6%) have
previously worked on a software maintenance project, demonstrating that
software maintenance is a popular activity in the software business.