Internet
Fact-checked

At EasyTechJunkie, we're committed to delivering accurate, trustworthy information. Our expert-authored content is rigorously fact-checked and sourced from credible authorities. Discover how we uphold the highest standards in providing you with reliable knowledge.

Learn more...

What Is Software Maintenance?

G. Wiesen
G. Wiesen

Software maintenance is a process by which a computer program is altered or updated after it has been released. While the term "maintenance" may imply repairs and corrections of errors, only a portion of this process is intended for this purpose, referred to as "corrective." Much software maintenance is used for "adaptive" work that ensures a program continues to be effective and useable in changing environments, as well as "perfective" procedures that improve upon functionality. "Preventive" maintenance is used to make the process easier in the future, by providing additional documentation and tools to make later updates simpler to develop.

A great deal of software maintenance is performed through patches that are created by a developer and then released to the public. These files are installed by a computer user and they modify the functionality and design of the base program on a system. This is done after the release of a program, though early software development should take maintenance into consideration.

Software maintenance is often performed through patches that are created by a developer and then released to the public.
Software maintenance is often performed through patches that are created by a developer and then released to the public.

Corrective software maintenance is the process of developing changes to a program that repair bugs or fix issues. This does not add any new features, unless they are already existent but cannot be used due to an error in programming. Only about one-fourth of all software maintenance is used for corrective issues, yet it is often viewed as the most important element by program users.

Feedback from consumers can help with software maintenance.
Feedback from consumers can help with software maintenance.

A great deal of software maintenance is referred to as "adaptive," which is used to adjust a program to function in a new environment. Programs are typically designed and developed to function on a certain Operating Systems (OS). While some software may function on newer versions, there are many programs that cannot do so. An adaptive patch to a program could alter the code to allow it to function properly on a new system, keeping it current and useable.

Perfective software maintenance is used to add new features to a product and to make changes that can directly affect a user. A company might release a word processing program, for example, that includes a few spellchecking features. If they release a patch that updates the dictionary in the program, and creates additional error-correcting options, then it would be considered perfective maintenance. These upgrades are typically fairly minor, as major overhauls usually require the release of a new version or software "client."

Developers can also work on preventive software maintenance, which is used to make future changes even simpler. After development, a company may realize that there is the potential for a bug that has not yet developed. They may release a patch that fixes this issue before it ever actually becomes a problem. Additional documentation and code cleanup can also be performed to make future maintenance easier or unnecessary.

Discuss this Article

Post your comments
Login:
Forgot password?
Register:
    • Software maintenance is often performed through patches that are created by a developer and then released to the public.
      By: Gandolfo Cannatella
      Software maintenance is often performed through patches that are created by a developer and then released to the public.
    • Feedback from consumers can help with software maintenance.
      By: nyul
      Feedback from consumers can help with software maintenance.