Se Unit 5
Se Unit 5
Software maintenance is a part of the Software Development Life Cycle. Its primary goal is
to modify and update software application after delivery to correct errors and to improve
performance. Software is a model of the real world. When the real world changes, the
software require alteration wherever possible.
Software Maintenance is an inclusive activity that includes error corrections, enhancement
of capabilities, deletion of obsolete capabilities, and optimization.
Need for Maintenance: Software Maintenance is needed for:-
1. Correct errors
2. Change in user requirement with time
3. Changing hardware/software requirements
4. To improve system efficiency
5. To optimize the code to run faster
6. To modify the components
7. To reduce any unwanted side effects.
Thus the maintenance is required to ensure that the system continues to satisfy user
requirements.
SOFTWARE MAINTENANCE
Types of Software Maintenance:
SOFTWARE MAINTENANCE
2. Adaptive Maintenance: It contains modifying the software to match changes in the ever-
changing environment.
3. Preventive Maintenance: It is the process by which we prevent our system from being
obsolete. It involves the concept of reengineering & reverse engineering in which an old
system with old technology is re-engineered using new technology. This maintenance
prevents the system from dying out.
Lack of Traceability-
Most of the software system codes lack adequate comments. Lesser comments may
not be helpful in certain situations.
SOFTWARE MAINTENANCE
In most of the countries worldwide, the legacy system that provides the backbone of
the nation's critical industries, e.g., telecommunications, medical, transportation utility
services, were not designed with maintenance in mind.
They were not expected to last for a quarter of a century or more!
As a consequence, the code supporting these systems is devoid of traceability to the
requirements, compliance to design and programming standards and often includes
dead, extra and uncommented code, which all make the maintenance task next to the
impossible.
SOFTWARE MAINTENANCE PROCESS
SOFTWARE MAINTENANCE PROCESS
1. Program Understanding- The first step consists of analyzing the program to understand.
3. Ripple Effect- The third step consists of accounting for all of the ripple effects as a
consequence of program modifications.
4. Modified Program Testing- The fourth step consists of testing the modified program to
ensure that the revised application has at least the same reliability level as prior.
5. Maintainability- Each of these four steps and their associated software quality attributes
is critical to the maintenance process. All of these methods must be combined to form
maintainability.
SOFTWARE MAINTENANCE PROCESS
SOFTWARE MAINTENANCE PROCESS
1. Program Understanding- The first step consists of analyzing the program to understand.
3. Ripple Effect- The third step consists of accounting for all of the ripple effects as a
consequence of program modifications.
4. Modified Program Testing- The fourth step consists of testing the modified program to
ensure that the revised application has at least the same reliability level as prior.
5. Maintainability- Each of these four steps and their associated software quality attributes
is critical to the maintenance process. All of these methods must be combined to form
maintainability.
SOFTWARE MAINTENANCE PROCESS
1. Non-Technical Factors-
SOFTWARE MAINTENANCE PROCESS
Technical Factors- Technical Factors include the following: