Академический Документы
Профессиональный Документы
Культура Документы
Abstract—Software maintenance effort estimation has always [5] discusses Constructive Cost Model (COCOMO) and
been a challenge for the software practitioners, as it consumes computes annual maintenance effort using software
about half of the overall development costs. The effort required development effort and annual change traffic. Leung [6]
to develop or maintain software depend on the complexity of discusses a method to estimate project effort using analogy.
yet to be developed software. The proposed measure estimates Sharma and Kushwaha [7] discuss the improved requirement
the requirement-based complexity based on SRS document of based complexity (IRBC). Gill and Kemerer [8] discuss the
yet to be developed software for systematic and early
cyclomatic complexity density and gives relation between
prediction of software maintenance effort using Software
productivity and size of the software system in source lines
Requirements Specifications (SRS) document of the proposed
software. The result obtained validates that, the proposed
of code.
maintenance measure is a comprehensive one and compares
III. COMPLEXITY COMPUTATION FROM IEEE:SRS
well with various other prevalent measures proposed in the
past. The computation of proposed maintenance effort
DOCUMENT
estimation involves least overhead as compared to others. It has been established that the complexity of the code
has a direct bearing on the amount of maintenance effort [5].
Keywords-requirement based complexity; requirement based For accurate and systematic estimation of maintenance
maintenance complexity; requirement based maintenance effort effort, this paper uses an improved requirement based
estimation complexity (IRBC) measure [7], which is derived based on
the recommendations of IEEE 830:1998 SRS document [1]
I. INTRODUCTION
and it is mathematically expressed as:
Software maintenance is a post development activity but IRBC = ((PC × PCA) + DCI + IFC + SFC) × SDLC
most of the times it consumes 40-70% of the overall Where IRBC = Improved Requirement Based
development costs [10]. This paper proposes a measure for Complexity; PC = Product Complexity; PCA = Personal
early estimation of software maintenance effort using Complexity Attributes; DCI = Design Constraints Imposed;
software requirements written based on recommendations of IFC = Interface Complexity; SFC = System Feature
IEEE 830-1998 document for the generation of SRS of the Complexity and SDLC = Software Deployment Location
proposed software. The attributes from SRS of the proposed Complexity.
software are captured to compute the improved requirement
based complexity as described in [7]. Since, an SRS acts as a IV. PROPOSED APPROACH FOR MAINTENANCE EFFORT
verifiable document [1], estimation of maintenance effort ESTIMATION
based on SRS will be systematic, less complex, faster and The effort required to repair a defect in analysis phase is
comprehensive one. Further, the maintenance effort much less than that in design or implementation phase. This
estimation proposals can be classified into three broad defect repair ratio increases heavily from analysis phase to
categories like model based maintenance effort estimation, implementation phase.
function-point based maintenance effort estimation and code Hence, it is advisable to invest more effort in early
based maintenance effort estimation. phases of software development life cycle to reduce the
The proposed measure considers software requirements maintenance costs. To move a step closer, the proposed
written in standard IEEE 830:1998 [1] format in order to maintenance effort estimation measure empirically estimates
obtain effective and precise result. Hence, the strength of the the software maintenance effort to reduce the maintenance
measure lies in computation of requirement based costs.
complexity from requirement engineering document prior to
estimation of software maintenance effort. Requirement Based Maintenance Complexity (RBMC)
IRBC [7] comprises of all the attributes that are sufficient
II. RELATED WORKS to compute function points [2] for any software. The function
During the last few decades, various models, methods point measure includes five parameters i.e. external input,
and techniques have been developed for the estimation of external output, interfaces, file and inquiry. In addition to the
software maintenance effort. The work presented in this parameters used by function point analysis (FPA) [2], there
paper is based on SRS. The paper also considers technical are certain other parameters also for any software
and environmental factors. F. Niessink and H. van Vliet [3] requirement. However, IRBC makes use of an exhaustive set
proposes a variant of the function-point analysis to remedy of parameters for its computation in order to compute the
some of its shortcomings. Albrecht [4] discusses the Requirement Based Maintenance Complexity (RBMC)
function-points calculation for size of the software. Boehm measure. To estimate RBMC, we require Value Adjustment
155