Friday, 17 July 2020

Software Maintenance


Software Maintenance

Software maintenance is an extremely wide activity that includes error correction, deletion of obsolete capabilities, enhancements of capabilities, and optimization. Because change is inevitable, mechanisms must be developed for assessment, controlling and assembly modifications. Software Maintenance is the process of modifying a software product after it has been delivered to the customer. The main purpose of software maintenance is to modify and update software application after delivery to correct faults and to improve performance.

Need for Maintenance –
Software Maintenance must be performed in order to:

  • Correct faults.
  • Improve design.
  • Implement enhancements.
  • Interface with other systems.
  • Accommodate programs so that different hardware, software, system features, and telecommunications facilities can be used.
  • Migrate legacy software.
  • Retire software.
There are four types of maintenance, namely, corrective, adaptive, perfective, and preventive.

1. Adaptive Maintenance - modify the system to handle changes in the software environment. Adaptive maintenance includes changes to the functionality of the system developed for particular user requirement and needs. Adaptive maintenance also implies the need for modifications of certain functionalities, although the system works as estimated and there is no fault or error in the system. It generally occurs when there comes to an alteration in legal norms or a shift in the political business users. Adaptive maintenance includes modifications and updations when the customers need the product to run on new platforms, on new operating systems, or when they need the product to interface with new hardware and software.

2. Perfective Maintenance - implement new or changed user requirements which concern functional enhancements to the software. Modification of a software product after delivery to identify and correct hidden faults in the software product before they become effective faults. Enhances the performance of resources by increasing uptime. Enhances user (internal or external) service because maintenance teams have fewer unplanned maintenance and can react quicker to latest problems. A software product needs maintenance to support the new features that the users want or to change different types of functionalities of the system according to the customer demands.

3. Corrective Maintenance - diagnose and fix errors, possibly ones found by users.  Corrective maintenance is concerned with fixing errors that are observed when the software is in use. Corrective maintenance most frequently referred to as bugs, is the most usual change associated with maintenance work. Corrective maintenance addresses errors, bugs, and faults in software that could affect various areas of software, design, code, and logic. Most commonly these changes are sprung by bug reports created by users.

4.Preventive Maintenance - increase software maintainability or reliability to prevent problems in the future. Preventive maintenance refers to changes made to increase the understanding and maintainability of software in the extended run. Preventive maintenance is focused in decreasing the deterioration of software in the long run. Optimizing code, restructuring, and updating documentation are common preventive changes. Executing preventive maintenance reduces the quantity of unpredictable effects software can have in the extensive term and helps it become stable, scalable, understandable, and maintainable.





0 comments:

Post a Comment