In: Computer Science
Allison is a system analyst; she needs to ensure to create a system design which is flexible and adaptable. The better the system design the more cost can be saved in the future. X is performed most often to improve the existing software rather than respond to a crisis or a system failure. Identify X. State and explain in details the practice of X.
System maintenance is performed most often to improve the existing software rather than respond to a crisis or a system failure. Maintenance is a part of System Development Life Cycle. System maintenance’s main purpose is to modify and update software application after delivery to correct faults and to improve system performance.
Software or system is basically a model of the real world. When changes happens in real world, the software also requires alteration whenever or wherever possible. Thus, System maintenance is an important aspect of system development which can corrects errors in system design and implementation phase. System maintenance is an continuous and ongoing activity, which includes removing program and design errors, updating documentation and test data and updating user support.
System maintenance means restoring something to its original condition after any error or fault. With the process of enhancement during maintenance , we can add and modify the code to support the changes according to the users new specifications or requirements. Therefore, the occasional maintenance and enhancement can respond better at a time of crisis or system failure. The activity of monitoring, evaluating, and modifying of existing system to make desired improvements comes under system maintenance phase.
System maintenance has different activities which includes optimization, error correction, deletion of discarded features and enhancement of existing features. The results discovered from these evaluation process helps the organization or user to determine whether its designed and implemented system are effective and efficient.
Types of System Maintenance :
There are four types of system maintenance
i. Corrective maintenance :
Corrective maintenance is a type of maintenance mainly concerned with fixing errors that are observed when the software is in use. It is implied by removing errors in a program, which might happened in the system due to faulty design or logical assumptions. This type basically deals with the repair of faults or defects which is found in day-today system function or process. Design errors occur when an y changes made to the software or system are incorrect, incomplete, wrongly done or communicated. Logical error results from invalid tests or conclusions, incorrect implementation of design requirements, faulty logic flow or from incomplete testing of data. All these mentioned error comes under residual errors, which prevents the software from conforming to its agreed system specifications. This maintenance starts when any bug complains reported by the user to the system analyst. Thus, in corrective maintenance, any system performance or process failure can be detected and repaired. Corrective maintenance accounts for 20% of all the maintenance activities.
ii. Adaptive maintenance :
Adaptive maintenance is type of maintenance which is concerned with any changes happened in the software that takes place to make the software more graphical and user friendly in a new environment such as to run the software on a new operating system and hardware. In system term, environment is referred to as the condition and the influence which act on the system which can be business rules, work patterns and government policies have a significant impact on the software system. For example, a government policy which was implemented to use a single ‘European currency’ will results in significant effect on the existing software system. An acceptance of this change will require banks to make significant changes in their respective software systems to accommodate this currency. Adaptive maintenance accounts for 25% of all the maintenance activities.
iii. Perfective maintenance :
Perfective maintenance is a type of system maintenance which is occurred with the change in the system software while adding new functionalities in the system.This maintenance basically deals with implementing new or modified user specification or requirements. This includes making functional enhancement to the existing system to increase the system performance even though changes have not mentioned by faults. This can results in both the function and efficiency of the code and changes of the system functionalities as per the users changing desire. Example of perfective maintenance include modifying the payroll program to incorporate a new union settlement and adding a new report in the sales analysis system. Perfective maintenance accounts for 50%, that is, the largest of all the maintenance activities.
iv. Preventive maintenance :
Preventive maintenance is the type of maintenance done to system to prevent it from the occurrence of errors frequently. This maintenance results in reducing software complexity by improving program understandability and by increasing software maintainability. This maintenance comprises of document updating, code optimization, and code restructuring. Documentation updating includes modifying the documents affected by the changes in order to adapt to the current state of system. Code optimization includes modifying the programs for faster execution and efficient use of storage space. Code restructuring includes transforming the program structure for reducing the complexity in source code and making it easier to understand. Preventive maintenance is limited to the maintenance organization only and no external requests are acquired for this type of maintenance. Preventive maintenance accounts for only 5% of all the maintenance activities.