SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
(c) GrayPE Systems
Statistics & Decision Science for Agile
A Guided Tour
Provides an overview of statistical & decision science
techniques, their application and benefits in agile software
projects.
Agile Convention 2013
1st Agile & Scrum Event in Noida www.agilenoida.wordpress.com
(c) GrayPE Systems 2
I am @sanjayaksaxena
cofounder of graype.in
with @R4CHN4
Pursuing Quantitative Analysis & Decision Sciences (QUADS)
(c) GrayPE Systems
Agenda
Estimation
Prioritization
Application of AHP, SAW and Boxplot in
3
(c) GrayPE Systems 4
Estimation
(c) GrayPE Systems 5
Estimate Accurately.
(c) GrayPE Systems 6
Estimate Accurately.
seems like an oxymoron!
(c) GrayPE Systems 7
the only thing we know about an estimate is
that it is not exact!
(c) GrayPE Systems 8
An Interlude
(c) GrayPE Systems 9
A 5’8” tall statistician drowned while
crossing a river which had an average
depth of barely 4’2” feet!
why?
(c) GrayPE Systems 10
If you toss a fair coin 20 times, how many
heads (or tails) do you expect?
(c) GrayPE Systems 11
1 2 4 7 9 10 12 17 18 19 20
count of heads
frequency
(c) GrayPE Systems 12
Never use average velocity computed
from past data to estimate number of
story points that you can cover in next
iteration.
Moral of the story!
And if you do then you can only be about
50% sure of meeting your commitment!
(c) GrayPE Systems 13
key is to understand variation
(c) GrayPE Systems 14
How to be 95% sure?
(c) GrayPE Systems 15
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
1. start with past velocity data
(c) GrayPE Systems 16
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
1st Quartile (Q1): QUARTILE(array, 1)
Median (Q2): QUARTILE(array, 2)
3rd Quartile (Q3): QUARTILE(array, 3)
2. use XL to find quartiles
(c) GrayPE Systems 17
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
1st Quartile (Q1)
Median (Q2)
3rd Quartile (Q3)
3. determine IQR
IQR = Q3 - Q1
= 68 - 64
= 4
** IQR is Inter Quartile Range
(c) GrayPE Systems 18
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
1st Quartile (Q1)
Median (Q2)
3rd Quartile (Q3)
4. determine outliers , if any
Velocity values smaller than Q1 - 3 x IQR
Velocity values greater than Q3 + 3 x IQR
> Q3 + 3 x IQR = 68 + 3 x 4 = 68 + 12 = 80; therefore a potential outlier
(c) GrayPE Systems 19
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
1st Quartile (Q1)
Median (Q2)
3rd Quartile (Q3)
5. review outliers, if any
Exclude them from the data if you
determine that there were extraordinary
reasons causing such a high (or low)
value; and are not likely to reoccur.
Let us assume, we retain the outlier value.
> Q3 + 3 x IQR = 68 + 3 x 4 = 68 + 12 = 80; therefore an potential outlier
(c) GrayPE Systems 20
1 61
2 61
3 62
4 64
5 64
6 64
7 64
8 65
9 65
10 65
11 65
12 66
13 66
14 66
15 67
16 67
17 68
18 68
19 68
20 68
21 69
22 72
23 84
ROUND(n/2 - 0.98 x (n)0.5 + 0.5, 0) = 7th row
Median (Q2)
6. determine 95% confidence interval
ROUND(n/2 + 0.98 x (n)0.5 + 0.5, 0) = 17th row
n = 23
(c) GrayPE Systems 21
Median velocity is 66 and there is a 95%
chance that this median velocity will fall
between 64 and 68.
With 95% confidence, you can expect to
complete minimum 64 story points worth
of work in next iteration; the maximum
can be 68 story points.
Meaningful Estimate
Alternatively, all of the previous steps could have been done using box plot
tool in a standard statistical analysis software.
(c) GrayPE Systems 22
About Story Points
(c) GrayPE Systems 23
Always remember the law of
diminishing returns!
(c) GrayPE Systems 24
Triangulation - surveying
Image Credit: http://en.wikipedia.org/wiki/File:Distance_by_triangulation.svg
(c) GrayPE Systems 25
Triangulation - surveying
Image Credit: http://en.wikipedia.org/wiki/File:Distance_by_triangulation.svg
works very well as it involves measurements & not judgements!
(c) GrayPE Systems 26
It is a process of judging the size of a user
story relative to, two other known user
stories with the purpose of increasing the
reliability.
Triangulation - Agile
(c) GrayPE Systems 27
Analytical Hierarchical Process
(c) GrayPE Systems 28
Analytical Hierarchical Process
its about relative measurement based on judgement
to derive a scale of priorities
for a set of items
(c) GrayPE Systems 29
let’s explore a simplified view in our context
(c) GrayPE Systems 30
AHP Basics
‣ Relative measurements based on judgement
‣ Uses pairwise comparisons
‣ For “n” items, n x (n - 1)/2 comparisons are required
‣ Uses a scale of 1 to 9 or the reciprocals for comparisons
‣ Items in question should be of same “order of magnitude” **
We say two numbers have the same order of magnitude of a
number if the big one divided by the little one is less than 10.
source: http://en.wikipedia.org/wiki/Order_of_magnitude
**
(c) GrayPE Systems 31
AHP thru Example
s1 s2 s3
Derive a scale in terms of areas of squares
3 Items: 3 x (3 -1)/2 = 3 comparisons will
be required
(c) GrayPE Systems 32
1 S1/S2 S1/S3
S2/S1 1 S2/S3
S3/S1 S3/S1 1
s1 s2 s3
s1
s2
s3
Each cell (r, c) to contain ratio of itemr/itemc
Only “white cells” need to be filled with
judgement values
Diagonal cells will always have a value “1”
“Dark gray” cell values can be derived from
“white” cell values (reciprocal)
AHP thru Example
**
** r: row & c: column of the matrix
(c) GrayPE Systems 33
1 2 5
1/2 1 3
1/5 1/3 1
Step I - Make judgements
AHP thru Example
(c) GrayPE Systems 34
Step II - Compute Geometric Mean for each row (contd.)
AHP thru Example
Geometric mean for a1, a2, ... an is computed as
(a1 x a2 ... x an)1/n
(c) GrayPE Systems 35
1 2 5
1/2 1 3
1/5 1/3 1
2.1544
1.1447
0.4055
Geometric Mean
AHP thru Example
Step II - Compute Geometric Mean for each row
(c) GrayPE Systems 36
3.7046SUM =
0.58
0.31
0.11
Geometric Mean Normalized
AHP thru Example
Step III - Normalize geometric means to arrive at results (contd.)
2.1544
1.1447
0.4055
1 2 5
1/2 1 3
1/5 1/3 1
(c) GrayPE Systems 37
AHP thru Example
Step III - Normalize geometric means to arrive at results
If the area [read story points] of one square
[read story] was known, others can be easily
estimated from the resultant “scale of
priorities”.
Similarly, the scale of priorities could have been
applied to themes (instead of squares!) by
judging their relative importance (instead of
areas!!).
(c) GrayPE Systems 38
AHP thru Example
Step IV - Review inconsistency (contd.)
1. AVERAGE((r11 x w1 + r12 x w2 + r13 x w3)/w1,
(r21 x w1 + r22 x w2 + r23 x w3)/w2,
(r31 x w1 + r32 x w2 + r33 x w3)/w3)
average must be greater than 3 (or n)
2. compute (average - n)/(n - 2), where n = 3
3. divide the result by random index (see table
below) for n = 3 to obtain Consistency Ratio
4. Consistency Ratio (CR) must be less than 0.1
n 3 4 5 6 7 8 9
Random Index 0.52 0.89 1.11 1.25 1.35 1.40 1.45
(c) GrayPE Systems 39
0.58
0.31
0.11
Geometric Mean Normalized
AHP thru Example
2.1544
1.1447
0.4055
1 2 5
1/2 1 3
1/5 1/3 1
3.0037
3.0037
3.0037
3.0037AVERAGE =
CR = 0.0032
Step IV - Review inconsistency
(c) GrayPE Systems 40
Possibilities with AHP
‣ Estimate story points
‣ pick up 3-4 homogenous stories and throw 1-2 stories
with known story points; and apply AHP
‣ can improve accuracy further by applying AHP separately
for UX, Coding, DB, ... Testing and use weighted sum to
arrive at story points
‣ Prioritize themes or backlog
‣ Improve SAW by computing criteria weights using AHP
‣ consider using contextually & semantically applicable
adjectives/adverbs instead of numeric ranks for
alternatives; and use AHP to determine rank (or priority)
of such adjectives.
(c) GrayPE Systems 41
Q & A
possibilities are limitless!
Sanjaya Kumar Saxena
@sanjayaksaxena
sanjaya@graype.in
Rachna Chakraborty
@R4CHN4
rachna@graype.in
GrayPE Systems (P) Limited
www.graype.in
Contact:
(c) GrayPE Systems 42
Thank you!
References:
[1] Agile Estimation & Planning by Mike Cohn
[2] Fundamentals of Decision Making with the Analytic Hierarchy Process by Thomas L Saaty
[3] http://www.discover6sigma.org/cat/statistics/

Weitere ähnliche Inhalte

Was ist angesagt?

A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
NECST Lab @ Politecnico di Milano
 
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executionsRedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
Redis Labs
 

Was ist angesagt? (20)

Feedback Linearization Controller Of The Delta WingRock Phenomena
Feedback Linearization Controller Of The Delta WingRock PhenomenaFeedback Linearization Controller Of The Delta WingRock Phenomena
Feedback Linearization Controller Of The Delta WingRock Phenomena
 
[DCSB] Undine Lieberwirth & Axel Gering (TOPOI) 3D GIS in archaeology – a mic...
[DCSB] Undine Lieberwirth & Axel Gering (TOPOI) 3D GIS in archaeology – a mic...[DCSB] Undine Lieberwirth & Axel Gering (TOPOI) 3D GIS in archaeology – a mic...
[DCSB] Undine Lieberwirth & Axel Gering (TOPOI) 3D GIS in archaeology – a mic...
 
MapReduce Tall-and-skinny QR and applications
MapReduce Tall-and-skinny QR and applicationsMapReduce Tall-and-skinny QR and applications
MapReduce Tall-and-skinny QR and applications
 
A New Approach to Design a Reduced Order Observer
A New Approach to Design a Reduced Order ObserverA New Approach to Design a Reduced Order Observer
A New Approach to Design a Reduced Order Observer
 
FPGA Implementation of A New Chien Search Block for Reed-Solomon Codes RS (25...
FPGA Implementation of A New Chien Search Block for Reed-Solomon Codes RS (25...FPGA Implementation of A New Chien Search Block for Reed-Solomon Codes RS (25...
FPGA Implementation of A New Chien Search Block for Reed-Solomon Codes RS (25...
 
Block diagram Examples
Block diagram ExamplesBlock diagram Examples
Block diagram Examples
 
A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
A Methodology for Automatic GPU Kernel Optimization - NECSTTechTalk 4/06/2020
 
Block diagram reduction techniques
Block diagram reduction techniquesBlock diagram reduction techniques
Block diagram reduction techniques
 
Analysis of Algorithum
Analysis of AlgorithumAnalysis of Algorithum
Analysis of Algorithum
 
Programming project
Programming projectProgramming project
Programming project
 
Otter 2016-11-14-ss
Otter 2016-11-14-ssOtter 2016-11-14-ss
Otter 2016-11-14-ss
 
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Fast, stable and scalable true radix sorting with Matt Dowle at useR! AalborgFast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
Fast, stable and scalable true radix sorting with Matt Dowle at useR! Aalborg
 
Gan
GanGan
Gan
 
1406
14061406
1406
 
Radix-2 Algorithms for realization of Type-II Discrete Sine Transform and Typ...
Radix-2 Algorithms for realization of Type-II Discrete Sine Transform and Typ...Radix-2 Algorithms for realization of Type-II Discrete Sine Transform and Typ...
Radix-2 Algorithms for realization of Type-II Discrete Sine Transform and Typ...
 
Control assignment#3
Control assignment#3Control assignment#3
Control assignment#3
 
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executionsRedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
RedisDay London 2018 - CRDTs and Redis From sequential to concurrent executions
 
Control systems
Control systemsControl systems
Control systems
 
Control of new 3 d chaotic system
Control of new 3 d chaotic systemControl of new 3 d chaotic system
Control of new 3 d chaotic system
 
20 convex hull last 7
20 convex hull last 720 convex hull last 7
20 convex hull last 7
 

Ähnlich wie Statistics & Decision Science for Agile - A Guided Tour

2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria
Paulo Faria
 
Paired-end alignments in sequence graphs
Paired-end alignments in sequence graphsPaired-end alignments in sequence graphs
Paired-end alignments in sequence graphs
Chirag Jain
 
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
Sangmin Park
 

Ähnlich wie Statistics & Decision Science for Agile - A Guided Tour (20)

Efficient anomaly detection via matrix sketching
Efficient anomaly detection via matrix sketchingEfficient anomaly detection via matrix sketching
Efficient anomaly detection via matrix sketching
 
Classification of Diabetic Retinopathy.pptx
Classification of Diabetic Retinopathy.pptxClassification of Diabetic Retinopathy.pptx
Classification of Diabetic Retinopathy.pptx
 
A New Key Stream Generator Based on 3D Henon map and 3D Cat map
A New Key Stream Generator Based on 3D Henon map and 3D Cat mapA New Key Stream Generator Based on 3D Henon map and 3D Cat map
A New Key Stream Generator Based on 3D Henon map and 3D Cat map
 
Computer Graphics Unit 1
Computer Graphics Unit 1Computer Graphics Unit 1
Computer Graphics Unit 1
 
Quality perception of coding artifacts and packet loss in networked video com...
Quality perception of coding artifacts and packet loss in networked video com...Quality perception of coding artifacts and packet loss in networked video com...
Quality perception of coding artifacts and packet loss in networked video com...
 
Histogram processing
Histogram processingHistogram processing
Histogram processing
 
2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria2014-mo444-practical-assignment-04-paulo_faria
2014-mo444-practical-assignment-04-paulo_faria
 
community detection
community detectioncommunity detection
community detection
 
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorch
 
fuzzy fuzzification and defuzzification
fuzzy fuzzification and defuzzificationfuzzy fuzzification and defuzzification
fuzzy fuzzification and defuzzification
 
Paired-end alignments in sequence graphs
Paired-end alignments in sequence graphsPaired-end alignments in sequence graphs
Paired-end alignments in sequence graphs
 
Podem_Report
Podem_ReportPodem_Report
Podem_Report
 
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...Medical Image Segmentation Using Hidden Markov Random Field  A Distributed Ap...
Medical Image Segmentation Using Hidden Markov Random Field A Distributed Ap...
 
Seminar9
Seminar9Seminar9
Seminar9
 
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
Griffin: Grouping Suspicious Memory-Access Patterns to Improve Understanding...
 
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHMADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
 
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHMADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
ADAPTIVE FUZZY KERNEL CLUSTERING ALGORITHM
 
X‾ and r charts
X‾ and r chartsX‾ and r charts
X‾ and r charts
 
Performance analysis of transformation and bogdonov chaotic substitution base...
Performance analysis of transformation and bogdonov chaotic substitution base...Performance analysis of transformation and bogdonov chaotic substitution base...
Performance analysis of transformation and bogdonov chaotic substitution base...
 
Application of parallel hierarchical matrices and low-rank tensors in spatial...
Application of parallel hierarchical matrices and low-rank tensors in spatial...Application of parallel hierarchical matrices and low-rank tensors in spatial...
Application of parallel hierarchical matrices and low-rank tensors in spatial...
 

Mehr von Sanjaya K Saxena (6)

Lotus Admin Training Part II
Lotus Admin Training Part IILotus Admin Training Part II
Lotus Admin Training Part II
 
Lotus Admin Training Part I
Lotus Admin Training Part ILotus Admin Training Part I
Lotus Admin Training Part I
 
Lotus Security Part II
Lotus Security   Part IILotus Security   Part II
Lotus Security Part II
 
Lotus Security Part I
Lotus Security   Part ILotus Security   Part I
Lotus Security Part I
 
Understanding Information Security
Understanding Information SecurityUnderstanding Information Security
Understanding Information Security
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Statistics & Decision Science for Agile - A Guided Tour

  • 1. (c) GrayPE Systems Statistics & Decision Science for Agile A Guided Tour Provides an overview of statistical & decision science techniques, their application and benefits in agile software projects. Agile Convention 2013 1st Agile & Scrum Event in Noida www.agilenoida.wordpress.com
  • 2. (c) GrayPE Systems 2 I am @sanjayaksaxena cofounder of graype.in with @R4CHN4 Pursuing Quantitative Analysis & Decision Sciences (QUADS)
  • 4. (c) GrayPE Systems 4 Estimation
  • 5. (c) GrayPE Systems 5 Estimate Accurately.
  • 6. (c) GrayPE Systems 6 Estimate Accurately. seems like an oxymoron!
  • 7. (c) GrayPE Systems 7 the only thing we know about an estimate is that it is not exact!
  • 8. (c) GrayPE Systems 8 An Interlude
  • 9. (c) GrayPE Systems 9 A 5’8” tall statistician drowned while crossing a river which had an average depth of barely 4’2” feet! why?
  • 10. (c) GrayPE Systems 10 If you toss a fair coin 20 times, how many heads (or tails) do you expect?
  • 11. (c) GrayPE Systems 11 1 2 4 7 9 10 12 17 18 19 20 count of heads frequency
  • 12. (c) GrayPE Systems 12 Never use average velocity computed from past data to estimate number of story points that you can cover in next iteration. Moral of the story! And if you do then you can only be about 50% sure of meeting your commitment!
  • 13. (c) GrayPE Systems 13 key is to understand variation
  • 14. (c) GrayPE Systems 14 How to be 95% sure?
  • 15. (c) GrayPE Systems 15 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 1. start with past velocity data
  • 16. (c) GrayPE Systems 16 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 1st Quartile (Q1): QUARTILE(array, 1) Median (Q2): QUARTILE(array, 2) 3rd Quartile (Q3): QUARTILE(array, 3) 2. use XL to find quartiles
  • 17. (c) GrayPE Systems 17 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 1st Quartile (Q1) Median (Q2) 3rd Quartile (Q3) 3. determine IQR IQR = Q3 - Q1 = 68 - 64 = 4 ** IQR is Inter Quartile Range
  • 18. (c) GrayPE Systems 18 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 1st Quartile (Q1) Median (Q2) 3rd Quartile (Q3) 4. determine outliers , if any Velocity values smaller than Q1 - 3 x IQR Velocity values greater than Q3 + 3 x IQR > Q3 + 3 x IQR = 68 + 3 x 4 = 68 + 12 = 80; therefore a potential outlier
  • 19. (c) GrayPE Systems 19 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 1st Quartile (Q1) Median (Q2) 3rd Quartile (Q3) 5. review outliers, if any Exclude them from the data if you determine that there were extraordinary reasons causing such a high (or low) value; and are not likely to reoccur. Let us assume, we retain the outlier value. > Q3 + 3 x IQR = 68 + 3 x 4 = 68 + 12 = 80; therefore an potential outlier
  • 20. (c) GrayPE Systems 20 1 61 2 61 3 62 4 64 5 64 6 64 7 64 8 65 9 65 10 65 11 65 12 66 13 66 14 66 15 67 16 67 17 68 18 68 19 68 20 68 21 69 22 72 23 84 ROUND(n/2 - 0.98 x (n)0.5 + 0.5, 0) = 7th row Median (Q2) 6. determine 95% confidence interval ROUND(n/2 + 0.98 x (n)0.5 + 0.5, 0) = 17th row n = 23
  • 21. (c) GrayPE Systems 21 Median velocity is 66 and there is a 95% chance that this median velocity will fall between 64 and 68. With 95% confidence, you can expect to complete minimum 64 story points worth of work in next iteration; the maximum can be 68 story points. Meaningful Estimate Alternatively, all of the previous steps could have been done using box plot tool in a standard statistical analysis software.
  • 22. (c) GrayPE Systems 22 About Story Points
  • 23. (c) GrayPE Systems 23 Always remember the law of diminishing returns!
  • 24. (c) GrayPE Systems 24 Triangulation - surveying Image Credit: http://en.wikipedia.org/wiki/File:Distance_by_triangulation.svg
  • 25. (c) GrayPE Systems 25 Triangulation - surveying Image Credit: http://en.wikipedia.org/wiki/File:Distance_by_triangulation.svg works very well as it involves measurements & not judgements!
  • 26. (c) GrayPE Systems 26 It is a process of judging the size of a user story relative to, two other known user stories with the purpose of increasing the reliability. Triangulation - Agile
  • 27. (c) GrayPE Systems 27 Analytical Hierarchical Process
  • 28. (c) GrayPE Systems 28 Analytical Hierarchical Process its about relative measurement based on judgement to derive a scale of priorities for a set of items
  • 29. (c) GrayPE Systems 29 let’s explore a simplified view in our context
  • 30. (c) GrayPE Systems 30 AHP Basics ‣ Relative measurements based on judgement ‣ Uses pairwise comparisons ‣ For “n” items, n x (n - 1)/2 comparisons are required ‣ Uses a scale of 1 to 9 or the reciprocals for comparisons ‣ Items in question should be of same “order of magnitude” ** We say two numbers have the same order of magnitude of a number if the big one divided by the little one is less than 10. source: http://en.wikipedia.org/wiki/Order_of_magnitude **
  • 31. (c) GrayPE Systems 31 AHP thru Example s1 s2 s3 Derive a scale in terms of areas of squares 3 Items: 3 x (3 -1)/2 = 3 comparisons will be required
  • 32. (c) GrayPE Systems 32 1 S1/S2 S1/S3 S2/S1 1 S2/S3 S3/S1 S3/S1 1 s1 s2 s3 s1 s2 s3 Each cell (r, c) to contain ratio of itemr/itemc Only “white cells” need to be filled with judgement values Diagonal cells will always have a value “1” “Dark gray” cell values can be derived from “white” cell values (reciprocal) AHP thru Example ** ** r: row & c: column of the matrix
  • 33. (c) GrayPE Systems 33 1 2 5 1/2 1 3 1/5 1/3 1 Step I - Make judgements AHP thru Example
  • 34. (c) GrayPE Systems 34 Step II - Compute Geometric Mean for each row (contd.) AHP thru Example Geometric mean for a1, a2, ... an is computed as (a1 x a2 ... x an)1/n
  • 35. (c) GrayPE Systems 35 1 2 5 1/2 1 3 1/5 1/3 1 2.1544 1.1447 0.4055 Geometric Mean AHP thru Example Step II - Compute Geometric Mean for each row
  • 36. (c) GrayPE Systems 36 3.7046SUM = 0.58 0.31 0.11 Geometric Mean Normalized AHP thru Example Step III - Normalize geometric means to arrive at results (contd.) 2.1544 1.1447 0.4055 1 2 5 1/2 1 3 1/5 1/3 1
  • 37. (c) GrayPE Systems 37 AHP thru Example Step III - Normalize geometric means to arrive at results If the area [read story points] of one square [read story] was known, others can be easily estimated from the resultant “scale of priorities”. Similarly, the scale of priorities could have been applied to themes (instead of squares!) by judging their relative importance (instead of areas!!).
  • 38. (c) GrayPE Systems 38 AHP thru Example Step IV - Review inconsistency (contd.) 1. AVERAGE((r11 x w1 + r12 x w2 + r13 x w3)/w1, (r21 x w1 + r22 x w2 + r23 x w3)/w2, (r31 x w1 + r32 x w2 + r33 x w3)/w3) average must be greater than 3 (or n) 2. compute (average - n)/(n - 2), where n = 3 3. divide the result by random index (see table below) for n = 3 to obtain Consistency Ratio 4. Consistency Ratio (CR) must be less than 0.1 n 3 4 5 6 7 8 9 Random Index 0.52 0.89 1.11 1.25 1.35 1.40 1.45
  • 39. (c) GrayPE Systems 39 0.58 0.31 0.11 Geometric Mean Normalized AHP thru Example 2.1544 1.1447 0.4055 1 2 5 1/2 1 3 1/5 1/3 1 3.0037 3.0037 3.0037 3.0037AVERAGE = CR = 0.0032 Step IV - Review inconsistency
  • 40. (c) GrayPE Systems 40 Possibilities with AHP ‣ Estimate story points ‣ pick up 3-4 homogenous stories and throw 1-2 stories with known story points; and apply AHP ‣ can improve accuracy further by applying AHP separately for UX, Coding, DB, ... Testing and use weighted sum to arrive at story points ‣ Prioritize themes or backlog ‣ Improve SAW by computing criteria weights using AHP ‣ consider using contextually & semantically applicable adjectives/adverbs instead of numeric ranks for alternatives; and use AHP to determine rank (or priority) of such adjectives.
  • 41. (c) GrayPE Systems 41 Q & A possibilities are limitless! Sanjaya Kumar Saxena @sanjayaksaxena sanjaya@graype.in Rachna Chakraborty @R4CHN4 rachna@graype.in GrayPE Systems (P) Limited www.graype.in Contact:
  • 42. (c) GrayPE Systems 42 Thank you! References: [1] Agile Estimation & Planning by Mike Cohn [2] Fundamentals of Decision Making with the Analytic Hierarchy Process by Thomas L Saaty [3] http://www.discover6sigma.org/cat/statistics/