Explain maintenance process in detail.
Software Maintenance
- 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 applications after delivery to correct faults and to improve performance.
Software Maintenance processes
Maintenance processes vary considerably depending on the type of system being maintained, the development process used in the organization, and the people involved in the process. However, the maintenance process is triggered by a set of change requests from system users, management, or customers. The cost and impact of these changes are assed to see how much of the system is affected by the change and how much it might costs to implement the change. If the proposed changes are accepted, a new release of the system is planned. During release planning, all the proposed changes are considered. A decision is then made on which changes to implement in the next version of the system. The changes are implemented and validated.
The software maintenance process involves various software maintenance techniques that can change according to the type of maintenance and the software maintenance plan in place.
Most software maintenance process models include the following steps:
1. Identification & Tracing – The process of determining what part of the software needs to be modified (or maintained). This can be user-generated or identified by the software developer itself depending on the situation and specific fault.
2. Analysis – The process of analyzing the suggested modification including understanding the potential effects of such a change. This step typically includes cost analysis to understand if the change is financially worthwhile.
3. Design – Designing the new changes using requirement specifications
4. Implementation – The process of implementing the new modules by programmers.
5. System Testing – Before being launched, the software and system must be tested. This includes the module itself, the system and the module, and the whole system at once.
6. Acceptance Testing- Users test the modification for acceptance. This is an important step as users can identify ongoing issues and generate recommendations for more effective implementation and changes.
7. Delivery – Software updates or in some cases new installation of the software. This is when the changes arrive at the customers.
Comments
Post a Comment