Showing posts with label application maintenance. Show all posts
Showing posts with label application maintenance. Show all posts

Friday, July 1, 2016

5 Reasons Why Software Maintenance is a Must



Software maintenance is the software engineering effort towards modification of a software product post delivery to correct bugs/errors/faults, improve upon performance or other entities/attributes, or adapt to a changing/changed environ. A common myth about software application maintenance is that it only involves fixing faults/errors. However, a study carried out has indicated that more than 80% of application maintenance is called and needed for non-corrective measures. 
Apart from corrective maintenance, we can have four other types of application maintenance services:
  • Adaptive- modifying a software product post delivery to keep it in working mode in a changing / changed setting.
  • Perfective- modifying a software product post delivery to improve maintainability and / or performance etc.
  • Preventive- increasing software reliability to prevent problems envisaged to occur in future.
  • Emergency- unscheduled and unforeseen corrective maintenance carried out to keep a software system up and operational.

Why is software / application maintenance necessary?
Software maintenance is looked upon by many as a necessary evil, but given the expertise and right amount of professional help, you can turn it around into a really good investment, which is exactly what it is.
In fact, as we have already stated that 80% of the software cost is maintenance; as per Robert Glass’s findings, about 60% of the maintenance cost is improvement. We must keep in mind that the software technology is developing at a much higher rate than in most of the other fields and segments. This further implies that we must always be prepared to keep our software up-to-date and relevant. And, this is exactly why software application maintenance is called for in addition to other reasons.
The first law of software engineering states that irrespective of your position in the software system life cycle, changes will occur in the system and the motivation to keep up with these changes will remain through the lifecycle. This motivation results in the maintenance effort and tries at times, to get ahead of the changes themselves.
In short, software maintenance is a must for the following five reasons:

  • Corrective – This kind of application maintenance is usually carried out to rectify the errors and bugs in the existing system which may include bad coding or a major system fault. Corrective maintenance may also be called for emergency situations that call for immediate unscheduled solutions to sudden unforeseen problems with the software on account of which the system may be down.
  • Adaptive – Adaptive application maintenance services are undertaken to adapt the system to the changed environs and circumstances, thereby enhancing the software lifespan to a great extent.
  • Perfective – In accordance with our aforementioned 80-60 rule, perfective maintenance (which is undertaken to enhance and improve upon the usability, performance and functionality of the software) accounts for approx. 60% of the total maintenance cost and effort.
  • Preventive – Preventive software application maintenance looks to prevent future problems taking corrective measures in advance. In other words, it seeks to vaccinate the system and ensure pre-emptive strike towards software issues that could arise later on and the repair costs that come along.
  • Legal and Business – It is just not enough to be able to compete but businessmen have to sync with the latest government and legal rules as also be in touch with the latest trends pertaining to the security and privacy of their clients/users. This again calls for adaptability and changes in keeping with the latest rules and regulations.