Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Software Maintenance Prediction

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 13

Software

Maintenance
Prediction
Software maintenance prediction

▪ refers to the study of software maintainability,


the modifications in the software system, and
the maintenance costs that are required to
maintain the software system.

2
Various predictions are closely related and specify
the following.
▪ 1.     The decision to accept a system change depends on the
maintainability of the system components affected by that
change up to a certain extent.
▪ 2.    Implementation of changes results in degradation of
system structure as well as reduction in system maintainability.
▪ 3.     Costs involved in implementing changes depend on the
maintainability of the system components.

4
▪ To predict the number of changes requested for
a system, the relationship between the system
and its external environment should be properly
understood. To know the kind of relationship
that exists, organizations should assess the
following.

5
▪ 1.     Number and the complexity involved in the system
interface. More interfaces mean more complexity, which in
turn means more demand for change.
▪ 2.   Number of system (volatile) requirements. Changes
required in organizational policies and procedures tend to be
more volatile than the requirements based on a particular
domain.
▪ 3.    Number of business processes in which the system
operates. More business processes implies more demands for
system change. 6
▪ To predict maintainability of a software system,
it is important to consider the relationship
among the different components and the
complexity involved in them.

7
COMPLEXITY

▪ Generally, it is observed that a software system having complex


components is difficult and expensive to maintain.
▪ The complexity in a software system occurs due to the size of
procedures and functions, the size and the number of modules, and
the nested structures in the software code.
▪ a software system developed by using good programming practices
reduces not only the complexity but also the effort required in
software maintenance. As a result, such software systems minimize
the maintenance cost. 

8
After a system has been put into
operation, several process metrics are
used to predict the software
maintainability. Process metrics, which
may be useful for assessing
maintainability, are listed below.
▪ 1.     Corrective maintenance: Sometimes,
more errors are introduced rather than being
repaired during the maintenance process. This
shows decline in maintainability.

10
▪ 2.  Average time required for impact
analysis: Before starting the software
maintenance process, it is essential to analyze
the impact of modifications in the software
system. This is known as impact analysis, which
reflects the number of components affected by
the change.
11
▪ 3.   Number of outstanding change
requests: If the number of outstanding change
requests increases with time, it may imply
decline in maintainability.

12
▪ 4. Average time taken to implement a change
request: This involves activities· concerned with
making changes to the system and its
documentation rather than simply assessing the
components which are affected. If the time
taken to implement a change increases, it may
imply a decline in maintainability.
13

You might also like