What is software maintenance explain its types in software engin?
Software Maintenance : is the activity of modifying the software product after delivery ; in order to correct faults, improve performance and to improve other attributes ( attributes of a good software ) .Software maintenance is a vital element in SDLC . Normally and more often done by the developers / or software maintainers ( of the software service provider / the software company ) .Types of software maintenance : there were only three few years back, but present there are FOUR ( 4 ) types of software maintenance types / kinds are defined .Corrective Maintenance - corrective maintenance means a REACTIVE modification, done in the software product after the delivery . The purpose of corrective maintenance is to correct / or fix discovered ( or user reported ) problems in the system .Adaptive Maintenance - adaptive maintenance is also a modification done after delivery, in order to keep the software product usable in changing ( or changed ) environments / business environments . If this is not done properly by the time of change, business opportunities will be lost .Perfective Maintenance - a software should be efficient / less resource consuming / and should be easy to cope with . Perfective maintenance is done in order to improve the software performance ( after a change in the software or / the environment, the performance of the software changes ) . Also improving the maintainability is a concern .Preventive Maintenance - of course as it sounds, it's just PREVENTING . Preventive Maintenance is done, to detect and correct latent ( not developed ) faults before they become effective faults . This simply means the prevention of future problems .-------------------------------------------------------------------------------------------------EXTRA READING :Software maintenance sounds like, " ONLY ERROR CORRECTING ", but IT'S NOT that . 80% of the software maintenance is NON - CORRECTIVE activities ( activities which are not used to correct faults, but for other purposes ) . However, software maintenance issues can be seen in two perspectives, one is managerial issues and the other is technical issues . Managerial issues can be alignment with customer priorities, managing the staff, estimations . Technical issues may be limited understanding, impact analysis and testing .In software maintenance, SOFTWARE MAINTENANCE PLAN and SOFTWARE MAINTENANCE PROCESS are also KEY considerations . Software maintenance plan is the pre planning which should be very accurate ( this plan includes about user's requirement changes / or change requests, budget etc ) . Software maintenance process is the sequence of steps followed during the software maintenance process . which includes,Implementation ProcessProblem and modification analysis processProcess acceptance of the modificationThe migration processLast maintenance processetc ...----------------------------------------------------------------------------------------------------Hope you liked this article,CHEERS !Dileesha Mebox