Title: Estimation Model for Application Lifecycle Management
1Estimation Model for Application Lifecycle
Management
- By Cognizant Technology Solutions
- Mathrubutham Hariharan
- Govindarajan Dharmendraraj
- Chinnakrishnan Selvan
2Agenda
- Project Level FTE Estimation
- SLA Capability Prediction
- Request Level Effort Estimation
3Business Case
Challenges
Solutions
- Non availability of application related
information during RFP stage How to estimate
the FTEs required? - Customer dictates SLAs loaded with penalty
clauses - How to predict our capability to meet
and sign for the - specified SLAs
- Complexity level of individual
- maintenance requests vary widely
- How to carry out request level
- estimation, which is generic enough at
- the same time specific to the request?
- FTE Estimation for Maintenance Support
- Futuristic prediction of FTEs based on defects
reported and historical request arrival pattern - Predicting SLA Capability
- Analysis of historical data on response and
resolution levels of different types of
maintenance requests and base lining current
capability - Resource Optimization
- Progressively optimize resource utilization
- Request Level Effort Estimation
- Building regression based estimation model based
on project specific factors
Estimation for Application Lifecycle Management
using data from similar projects
4FTE Estimation Dig The Past
- Predicting FTEs Based on Past Data
- Based on the past performance, we can predict the
number of requests likely to come in future and
the effort required to fix those bugs - Collect at least past six months request level
data from the customer or similar Application
Lifecycle Management project. The following
information is required - Number of requests serviced
- Effort spent to service each request
- Number of closed enhancements
- Number of ongoing enhancements
- Number of post production defects attributed to
enhancements
5FTE Estimation Predict the Future
- Predicting FTEs Based on Past Data
- Analyze the request arrival pattern by severity
using simple statistical techniques - Average
- Standard Deviation
- Distribution Pattern
- Predict the number of bugs likely to occur in
next six months or 1 year by severity - Predict the number of defects likely to occur due
to leakage from enhancements - Predict average effort per request
- Roll up this effort to cover all request types
for getting total FTE - Distribute the total FTE as per request arrival
pattern
6FTE Estimation A Case Study
Step 1 Predicting Number of Bug fix Request
Based on Completed Enhancement
7FTE Estimation A Case Study
Step 2 Predicting Number of Bug fix Request
Based on Open Enhancement
8FTE Estimation A Case Study
Step 3 Predicting Number of Bug fix Request
Priority wise Based on Open and Closed
Enhancement
9FTE Estimation A Case Study
Step 4 Collection of Past Data
10FTE Estimation A Case Study
Step 5 Predicting FTEs
11FTE Estimation A Case Study
Predicted Bug Arrival Pattern
12FTE Estimation Sample
Demonstration of FTE Estimation Worksheet for
Maintenance Support
BACK
13Predicting SLA Capability - Framework
Organizational Metrics
Identify SLA Metrics
Predicting SLA Capability
Data Collection
Revisi t
Set Goals for SLA metrics
Org./Previous or Same Project Performance
Customer Goals
Data Stratification/ Cleaning
Collect Metrics
Data Analysis Prediction
Analyze Metrics
Finalize SLAs Target
Predict Request Arrival Pattern
Improvement / Corrective Actions
Resource Optimization
14Predicting SLA Capability Data Collection
Stratification
- Data Collection
- Collect the request level details for past six
months. The following are the minimum information
required - Ticket Received Date, Ticket Accepted Date,
Planned Start Date, Planned End Date, Actual
Start Date, Actual End Date/ Closed Date, Target
Effort ( Person Hours), Actual Effort (Person
Hours), Status, Priority and Type (Bugfix
/Production Support) - Data Stratification and Cleaning
- Stratify the data based on priorities /
categories of maintenance requests - Identify and remove the outliers
15Predicting SLA Capability Data Analysis SLA
Finalization
- Data Analysis Prediction (Voice of the
Process) - Duration for each Priority and Request Type -
Calculate Average, Standard Deviation and
Percentiles - Model uses iterative approach to predict the SLA
performance capability - Predict SLA capability for different confidence
levels - Finalize SLA (Voice of the Customer)
- Compare client specified SLA with predicted
capability - Predict confidence level to meet client specified
SLA - Suggested confidence intervals would be 90 to 95
- Negotiate with customer and finalize the SLA
Periodically revisit the SLA based on actual
performance Integrate VOP and VOC
16Resource Optimization
- Collect the historical data on number of requests
and the corresponding effort (Use the same data
collected already for predicting SLA Capability) - Predict the number of request likely to come
using percentile. - Predict effort required to service requests using
percentile. - Calculate total effort required to support for
each priority by multiplying Effort and predicted
number of requests. - Calculate the allocated effort by multiplying the
number of resources and the maintenance duration.
- Compare the allocated effort against the
estimated effort and predict the resource
utilization. - By iteratively playing around with the
confidence level of meeting the given SLA,
optimize the resource utilization
17Predicting SLA Capability and Resource
Optimization A Case Study
Step 1 Collection and Stratification of Past
Data
18Predicting SLA Capability and Resource
Optimization A Case Study
Step 2 Determine SLA Capability
19Predicting SLA Capability and Resource
Optimization A Case Study
Step 3 Predicting Effort and Number of Requests
20Predicting SLA Capability and Resource
Optimization A Case Study
Step 4 Resource Optimization based on the
agreed SLA Capability
21Predicting SLA Capability and Resource
Optimization Sample
Demonstration of SLA Capability and Resource
Optimization
BACK
22Request Level Effort Estimation - Approach
Analysis
Identify
Data Collection
Roll-out
Identify the factors which Is likely to
influence the effort Ensure that the values
are Quantitative E.g. LOC analyzed, No. of
programs, etc..
Train the team on factors and data
collection Collect actual effort and data on
the influencing factors at request level for
at least six months
Deploy the model in production Monitor
deviation between estimates and
actual Continually optimize the model based
on feedback
Carry out correlation study between the
factors (Xs) and the effort (Y) Build the best
fit model that represents the above
relationship Calibrate the model using known
values
23Request Level Effort Estimation Regression
Concepts
- Regression
- Regression is the determination of statistical
relationship between two or more variables. - In a Simple Regression, one variable (defined as
independent) influences the behavior of another
(dependant variable). - The relationship between two variables, say X and
Y is given by Y mx c - Example 1 Estimated Effort (Y) 10 3
(Developer Experience) - There are two types of models in Regression.
They are - Linear
- Simple Y mx C
- Multiple Y c m1x1 m2x2 m3x3
- Non Linear
- Exponential Y b0e(b1/x1)
24Request Level Effort Estimation Regression Case
Study
- We have developed an Regression model for one of
our maintenance project. - The following are the factors and response were
considered for developing this model - Factors
- Number of Views
- Number of Tables
- Number of Calculations
- Response
- Actual Effort
- We have collected the data for last six months
and Regression Analysis was carried out using
Minitab Tool
25Request Level Effort Estimation Regression Case
Study
- Regression Analysis result is given below
-
Regression coefficients
Regression Analysis The regression equation
is Estimated Effort - 6.24 14.8 Number of
Views 0.311 Number of Tables 0.226 Number of
Calcs Predictor Coef SE Coef T
P Constant -6.238 1.602 -3.89
0.000 Number of Views 14.8264 0.3467 42.76
0.000 Number of Tables 0.3110 0.2816 1.10
0.273 Number of Calcs 0.22573 0.09913 2.28
0.026 S 5.38900 R-Sq 96.1 R-Sq(adj)
95.9
P-Values If p lt 0.05, then term is
significant Here, Views and Calcs are
significant.
R2 and R2adj provide measures of the goodness of
fit of the regression equation. Here R-SQ ,R-SQ
Adjusted shows very Good fit ( Ideal R 2 value
must be gt 70)
26Benefits Achieved
Solutions
Benefits Achieved
- FTE Estimation
- Futuristic prediction of FTEs based on defects
reported and historical request arrival pattern - Predicting SLA Capability
- Analysis of historical data on response and
resolution levels of different types of
maintenance requests and base lining current
capability - Resource Optimization
- Progressively optimize resource utilization
- Request Level Effort Estimation
- Building regression based estimation model based
on project specific factors
- Helps to carry out data based estimation of FTEs
for a new maintenance project - Helps to split FTEs based on request category
- Helps in defining and accepting realistic SLAs,
thereby not getting penalized - Helps to monitor and improve SLA capabilities
- Helps to optimize resource utilization without
compromising on SLA adherence - Helps to identify significant influencing factors
and continuously improve the controls - Helps to plan the response and resolution time
for individual requests and prioritize based on
that - Helps to improve overall estimation accuracy
- Helps to improve operational efficiency of
maintenance projects - Helps to improve the organization process
maturity
27Limitations
- Data collection and data accuracy
- Identifying similar project information
- Expertise in selecting the right confidence
limits - Making client agree for realistic SLA - Proven
by data - Identifying the critical factors which influence
the output is very important but many times is
difficult to identify the right factor first
time. - Collecting more data within an entire operable
range is difficult. - Extrapolation is not advisable.
28Thank You