Software maintenance

Get Started. It's Free
or sign up with your email address
Rocket clouds
Software maintenance by Mind Map: Software maintenance

1. Meaning

1.1. The modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment”

2. Why maintenance

2.1. Requirement change during development

2.2. Systems MUST be maintained remain useful in an environment.

2.3. Systems are tightly coupled with their environment.

3. Type of maintenance

4. Maintenance Cost

5. Maintenance cost factors

6. Team stability

6.1. Maintenance costs are reduced if the same staff are involved with them for some time.

7. Contractual responsibility

7.1. The developers of a system may have no contractual responsibility for maintenance so there is no incentive to design for future change

8. Staff skills

8.1. Maintenance staff are often inexperienced and have limited domain knowledge

9. Program age and structure

9.1. As programs age, their structure is degraded and they become harder to understand and change.

10. Corrective Maintenance

10.1. Identify and remove defect

10.2. Correct actual error

11. Perfective Maintenance

11.1. Improve performance, dependability, maintainability,

11.2. Update documentation

12. Adaptive Maintenance

12.1. Update to new upgraded environment

12.2. Incorporate new capability

13. Preventive Maintenance

13.1. Identify and detect latent fault

13.2. System with safety concerns

14. Emergency Maintenance

14.1. Unscheduled corrective

15. Maintenance Prediction

15.1. Concerned of maintenance prediction

15.1.1. Assessing parts of the system may cause problems

15.1.2. Assessing parts of the system may have high maintenance costs

15.2. Factor that influence the relationship of change prediction

15.2.1. Number and complexity of system interfaces

15.2.2. The business processes where the system is used

15.2.3. Number of inherently volatile system requirements

16. List of Guideline

16.1. Predicting maintainability (What part of the system that will be the most expensive to maintain?)

16.1.1. Predictions of maintainability can be made by assessing the complexity of system components.

16.1.1.1. Complexity depends on

16.1.1.1.1. Complexity of control structures

16.1.1.1.2. Complexity of data structures

16.1.1.1.3. Object, method (procedure) and module size.

16.1.1.2. Process metrics

16.1.1.2.1. Number of requests for corrective maintenance

16.1.1.2.2. Average time required for impact analysis

16.1.1.2.3. Object, method (procedure) and module size.

16.2. Predicting maintenance cost What will be the lifetime maintenance cost of this system? What will be the costs of maintaining this system over the next year?

16.3. Predicting system changes What part of the system most likely to be affected by change request? How many change request can be expected?