0% found this document useful (0 votes)
18 views13 pages

Se Unit 5

Software notes

Uploaded by

arhamakhan024
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views13 pages

Se Unit 5

Software notes

Uploaded by

arhamakhan024
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

SOFTWARE MAINTENANCE

 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

1. Corrective Maintenance: Corrective maintenance aims to correct any remaining errors


regardless of where they may cause specifications, design, coding, testing, and
documentation, etc.

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.

4. Perfective Maintenance: It defines improving processing efficiency or performance or


restricting the software to enhance changeability. This may contain enhancement of existing
system functionality, improvement in computational efficiency, etc.
SOFTWARE MAINTENANCE

 Causes of Software Maintenance Problems:


SOFTWARE MAINTENANCE

 Lack of Traceability-

 Codes are rarely traceable to the requirements and design specifications.


 It makes it very difficult for a programmer to detect and correct a critical defect
affecting customer operations.
 Like a detective, the programmer pores over the program looking for clues.
 Life Cycle documents are not always produced even as part of a development project.

 Lack of Code Comments-

 Most of the software system codes lack adequate comments. Lesser comments may
not be helpful in certain situations.
SOFTWARE MAINTENANCE

 Obsolete Legacy Systems-

 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.

2. Generating a Particular maintenance problem- The second phase consists of creating a


particular maintenance proposal to accomplish the implementation of the maintenance
goals.

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.

2. Generating a Particular maintenance problem- The second phase consists of creating a


particular maintenance proposal to accomplish the implementation of the maintenance
goals.

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

Issues in Software Maintenance-


SOFTWARE MAINTENANCE COST FACTORS
 There are two types of cost factors involved in software maintenance-
1. Non-Technical Factors
2. Technical Factors

1. Non-Technical Factors-
SOFTWARE MAINTENANCE PROCESS
Technical Factors- Technical Factors include the following:

You might also like