SlideShare une entreprise Scribd logo
1  sur  34
AGILE ESTIMATING
TECHNIQUE
Our Team:
MUHAMMAD
SAADULLAH
SAP ID# 2173
saadawan926@gmail.com
MUHAMMAD
SAAD
HUSSAIN
SAP ID# 2037
saadhussain9110@gmail.com
ABDUL
WASAY
SAP ID # 2129
abdulwasay.aw77@gmail.com
GHULAM
JILLANI
SAP ID# 2194
ghulamjallani112233@gmail.com
Content:
Conclusion
Agile Estimation
Techniques
Advantages &
Disadvantages of
Agile Estimation
How to use estimate
task in agile?
Estimation Template in
Agile Development
Project
Why we estimate
in agile?
Principle of Agile
Estimation
3 Main Level of
Agile Estimation
Story Point in
Agile Estimation
What is estimation
in agile?
What is Estimation in Agile?
 Estimation in agile is a method of measuring how long it will
take to complete a user story or a task.
 It is very crucial to do Agile Estimation at different Levels.
 This is done for proper planning, management and estimating
the total efforts that we use for implementing, testing and
delivering the desired product to the customers in terms of
time within the specified deadlines.
 With lack of estimations in agile project, there may be no
proper planning and management which may end in
delivering the undesired product and thereby leaving the
customer unsatisfied.
3 Main Level OF Agile Estimation:
Project Or Proposal Level:
 The one which uses Quick Function Point Analysis
during the initial phases of the Project development.
01
Sprint Level:
 The one where the user stories are broken into the tasks
and estimated hours are assigned to the tasks according to
their complexity.
 Here, we also define the person responsible for the task
along with the status of the tasks.
03
Release Level:
 Includes assigning the story points to the user stories.
 That can help in defining the order of the user stories
based on the priority and can also help in deciding which
stories can be taken in current release and which can be
taken later.
02
 This information can be later used to calculate the
budget for the Agile project.
 Calculation of Budget is crucial to make sure that the
project does not go over the budget due to the pre and
post iteration tasks or some other reasons.
Why we Estimate in Agile?
 First is that it helps the team determine how much work
to bring into the parts.
 To help us better plan project
 For resource allocations
 To decide priority (Task A &B)
 To help in project quotations
 By splitting backlog items into small, discrete tasks and
then roughly estimating them during sprint planning, the
team is better able to assess the workload.
How to use Estimate Task in Agile?
 Tasks are estimated in terms of estimated hours i.e. the time required to
complete that task for a corresponding user story.
 The Bottom-Up Approach is used for the Task estimations where the business
requirements are broken down into low-level activities and each activity is
assigned estimated hours.
 Team members pick up the user stories.
 Then, they are asked to estimate the actual effort, in terms of hours or days, for
the tasks corresponding to the user story.
 If there is a disagreement in these estimates among the team members, then
they discuss it and come to a consensus.
 If any task is of more than six hours, it is split into smaller tasks.
 If there are two or more tasks with estimated hours less than two, then they are
combined to form a new task.
9 TECHNIQUE
1. Planning poker
2. The bucket system
3. Big/Uncertain/Small
4. TFB/NFC/1(Sprint)
5. Dot Voting
6. T-shirt Sizes
7. Affinity Grouping
8. Ordering Protocol
9. Divide until maximum size or less
1: Planning Poker
 Each team member gets a set of cards.
 The Product Owner explains item to be estimated.
 Each team member choses a card that represents his/her
estimation.
 Every one shows their respective card at the same time.
 The point value shown on the card is the estimate if every team
member selected the same card.
 If the cards are not the same, then the team needs to discuss
the item and estimate again.
 Select again until estimates converge.
 Repeat as needed until estimates converge
2: The Bucket System
 The “Bucket System” is a way to do estimation of large
numbers of items with a small to medium sized group of
people, and to do it quickly. The Bucket System has the
following qualities which make it particularly suitable for use in
Agile environments.
 It’s fast! A couple hundred items can be estimated in as little
time as one hour.
 It’s collaborative. Everyone in a group participates roughly
equally.
 It provides relative results not absolute estimates (points vs.
hours).
 The results are not traceable to individuals and so it
encourages group accountability.
 Works with teams to estimate effort or with stakeholders to
estimate value.
3: Large/Uncertain/Small
 Large /Uncertain/Small is an agile estimation method where the
items to be estimated are placed by the group in any of these
categories:
 Large
 Uncertain
 Small.
 Teams discuss a few items together and then uses divide-and-
conquer to estimate the remaining items.
 Large/Uncertain/Small is just like the Bucket System.
 In the divide and conquer step, you allocate the remaining
items to all members of the team.
 Every member puts items on the scale without discussing it
with other team members.
 If someone has an item that he doesn’t really understand, that
item can be given to someone else.
LARGE
SMALL
UNCERTAIN
4: TFB / NFC / 1 (Sprint)
 TFB / NFC / 1 (Sprint) is an agile estimation technique similar to
Big/Uncertain/Small, another agile estimation technique that places items in
one of the 3 categories:
 Large
 Uncertain
 Small
 The categories include No F-ing Clue, “1” Sprint and Too F-ing Big.
 A large number of items can be estimated within a short period of time.
 It is also collaborative, so each member of the team can participate roughly
equally.
 The right people participate in the estimation process.
 Tracing who estimated what is impossible, so group accountability is
promoted.
 If someone makes an incorrect estimate, there’s no way to know this person.
 The whole group is responsible for everything, so no one can blame any
member of the team.
5: Dot Voting
 It is basically a ranking method to decide the order of the Product Backlog
from the highest priority stories to lowest priority stories. It is done to select the
most important story to be taken forward.
 Product owner puts all the user stories on the wall using post-its.
 Team members are given 4 to 5 dots (mostly in the form of a marker).
 Everyone has to give their votes on the different user stories that they prefer
(keeping into account the max dots that are available with per person is fixed
and should not be exceeded).
 Product Owner then orders the product backlog items from the most preferred
(one with most no of dots) to the least preferred (one with least no. of dots).
 Discussion can be held if a team member is unhappy with a specific task
having higher or lower priority.
6: T-Shirt Sizes:
 T shirt sizing is a agile estimation technique. Normally this technique is used to
estimate EPICS (and can be used for stories too) and it gives a rough
estimation.
 This technique helps in open and mutual collaborative discussions.
 In this technique t-shirt sizes -XS (Extra Small), S (Small), M (Medium), L
(Large), XL (Extra Large) are used.
 The sizes can, if needed, be given numerical values after the estimation is
done.
 User stories are given t-shirt sizes according to the member understanding.
 This is a very informal technique, and can be used quickly with a large number
of items. Usually, the decisions about the size are based on open,
collaborative discussion, possibly with the occasional vote to break a
stalemate.
 This technique gives rough estimation very fastly.
6: T-Shirt Sizes: (Continue (Working))
 Here a requirement is classified as XS, S, M, L, XL. This means a requirement can be either
extra small, small, medium, large or extra large.
 Each team member gets a set of cards with XS, S, M, L, XL written over them.
 The Product Owner explains item to be estimated.
 Each team member choses a card that represents his/her estimation.
 Every one shows their respective card at the same time.
 The point value shown on the card is the estimate if every team member selected the same
card.
 Estimation should be done again for an item – if someone estimated XS whilst other one
estimated as XL. If majority estimated M or L then go with an L.
 Repeat until each item is estimated.
 Once all the items have been estimated, a mapping from t-shirt sizing to the quantitative aspect
should be done.
 In our case we mapped it as XS -> 3, S -> 5, M -> 8, L -> 13, XL -> 20.
 This way team came up with number of story points needed to finish the project and based on
our average sprint velocity we came up with how many sprint we would need to finish the
project.
7: Affinity Grouping:
 The first item is read to the team members and placed on the
wall.
 The second item is read and the team is asked if it is smaller or
larger than the first item; placement on the wall corresponds to
the team's response (larger is to the right, smaller is to the left).
 The third item is read and the team is asked if it is smaller or
larger than the first and/or second items; the item is placed on
the wall accordingly.
 Control is then turned over to the team to finish the affinity
grouping for the remainder of the items.
8: Ordering Protocol:
 This works best in a small group of expert.
 All items are placed in random order on a scale label ranging
from low to high.
 Every participant is being asked to move one item on the scale.
 Each move is just one spot lower or one spot higher or pass the
turn.
 This continues till no team member want to move items and
passes their turn.
 The ordering protocol is a method of getting fine grained size
estimates.
 Works best with a relative small group of people and a large
number of items.
9: Divide until Maximum Size or Less :
 The group decides on a maximum size for items (e.g.
1 person-day of effort).
 Each item is discussed to determine if it is already that
size or less.
 If the item is larger than the maximum size, then the
group breaks the item into sub-items and repeats the
process with the sub-items.
 This continues until all items are in the allowed size
range.
Story Point in Agile:
 Story point is relative measure of effort.
 A story point is a metric used in agile estimating project and development to
estimate the difficulty of implementing a given user story, which is an abstract
measure of effort required to implement it.
 In simple terms, a story point is a number that tells the team about the difficulty level
of the story.
 Difficulty could be related to complexities, risks, and efforts involved.
 Story Points estimations is a comparative analysis to roughly estimate the product
backlog items with relative sizing.
 The team members for estimating user stories include: Product Owner, Scrum
Master, Developers, Testers and Stake holders.
 How long a user story will take (effort). Influenced by complexity, uncertainty, risk,
volume of work, etc.
Story Point in Agile: (Continue)
 There are various ways to estimate agile projects. One way is by using
so-called Story Points.
 While this type of estimation might not be the easiest, estimating with
Story Points in Agile offers benefits to both project developer and clients.
 The Story Points approach uses historical data to compare features of
one project to features of a previous similar project to generate a precise
estimate.
 The gears in the image left is with different sizes and have unique
attributes:
 Just like features in a software development project. Imagine there
were no way to measure the size of a circle.
Story Point in Agile: (Continue)
Walk through each step of the estimation process with Story Points.
 Step 1: Identify a Base Story
 Story Points in agile are a complex unit that includes three elements: risk,
complexity and repetition.
 To find our Base Story, we search for one elementary task that corresponds to
internal standards of Definition of Done for User Stories and assign it one Story
Point. This will be the Base Story.
 Step 2: Create a Matrix for Estimation
 There are two types of scales used for creating estimation matrices: the linear
scale (1,2,3,4,5,6,7…) and Fibonacci sequence numbers (0.5, 1, 2, 3, 5, 8, 13 …).
 When estimating using Fibonacci sequence numbers, we create a matrix with
rows for each sequence number and their associated stories.
 Then, we gather all our stories and start classifying them into rows, comparing the
stories to each other and to other completed stories.
 Notice that our Base Story is already in this matrix in the first row with a value of
one Story Point.
Story Point in Agile: (Continue)
Walk through each step of the estimation process with Story Points.
 Step 3: Implementing with Agile Estimating Technique (e.g.: Planning Poker)
 By the end of applying technique, we’ve filled out the whole matrix.
 Our tasks are divided into rows by the number of story points needed to
implement them.
 Finally, we place each backlog item in the appropriate row.
 There can be several stories in one row.
 Step 4: Create a Matrix for Estimation
 Now that we have a size estimate, you may be wondering how we convert
these sizes into man-hour estimates.
 Unfortunately, we can’t do this until the first sprint is completed.
 While the first sprint is in progress we can track the team’s velocity.
 As soon as the sprint is finished, we’ll know how many Story Points a team
can complete per sprint.
 We use these numbers to forecast the team's performance for the next
sprints.
Principle of Agile Estimating Techniques:
 Agile estimation techniques are collaborative.
 All appropriate people are included in the process.
 For example: The whole Scrum team participates in estimating effort of
Product Backlog Items. Collaborative techniques are also designed so
that it is impossible to blame someone for an incorrect estimate: there is
no way to trace who estimated what.
 Agile estimation techniques are designed to be fast (-er than traditional
techniques) and deliberately trade off accuracy.
 Most Agile estimation techniques use relative units.
 This means that we don’t try to estimate dollars or days directly. Instead, we
use “points” or even qualitative labels and simply compare the items we are
estimating to each other.
 This takes advantage of the human capacity to compare things to each other
and avoids our difficulty in comparing something to an abstract concept (such
as dollars or days).
Estimation template in Agile Development project:
1:Agile Project Plan Template:
 It gives high level view of how much time is required to deliver the features of the requirements and
what is their status.
 It also mentions the person responsible for specific task.
Estimation template in Agile Development project:
2: Agile Release Plan Template:
 It gives release details of the tasks corresponding to the requirements, along with their status and
Sprint in which they need to be executed.
Estimation template in Agile Development project:
3: Agile Product Backlog Template:
 It describes the complete product backlog defined for the project.
 It gives detail of tasks of the Sprints along with status, priority, story points.
 Whether they are assigned to a Sprint or if there are some additional task like defects etc.
Estimation template in Agile Development project:
4: Agile Sprint Backlog Template:
 It gives a description of the user stories mentioned in the backlog of a particular Sprint.
 It gives the total story points assigned to a user story and how these are broken into different tasks.
 It also gives the status of the corresponding tasks and what is the work carried out on a daily basis
for the corresponding tasks.
Estimation template in Agile Development project:
5: Agile Test Plan Template:
 It breaks the whole test scenario into sub-scenarios.
 It gives details of the sub-scenarios like Implementation date, Expected Result, Actual Result,
Status etc.
 It also mentions the Project Name, Compatible browser, Version of the Application under test, Test
Case ID for a selected scenario, Written By, Tested By, Description, etc.
Estimation template in Agile Development project:
6: Agile User Story Template:
 It gives the details specific to the analysis of the user story like
• What are the roles required for a specific functionality to be tested,
• What is the pre-requirement (environment set up and links enabled) and
• What is the expected outcome?
Estimation template in Agile Development project:
7: Agile Road Map Template:
 It gives a direction to the project in the company, on a short term and long-term basis.
 It helps in setting expectations within the company.
 And the overview of where the project is heading to.
Advantages & Disadvantages:
Advantages:
1. Flexibility and Adaptivity
2. Creativity and Innovation
3. Time-to-Market
4. Lower Costs
5. Improved Quality
6. Customer Satisfaction
7. Employee Satisfaction
8. Organizational Synergy
Disadvantages:
1. Training and Skill Required
2. Organizational Transformation
3. Scalability
4. Integration with
Project/Program Management
Conclusion:
 The estimations in Agile project play an important role to
ensure proper direction, planning and management .
 It provides steps on how to take up the project in future.
 The techniques to estimate story points like Planning
poker, Bucket System etc. make use of cards or dots
having values or numbers printed on them and then
assign these nos. to the user stories for relative size
estimation.
 The sole purpose is to set the items in a prioritized order
from maximum priority to minimum priority.
 The relative sizes estimated for the product backlog
items help in estimating or calculating the budget
required for the project
Thank You (JAZAKALLAH)
References:
 https://www.visual-paradigm.com/scrum/what-is-story-point-in-
agile/#:~:text=A%20story%20point%20is%20a,difficulty%20level%20of%20the%20story.
 https://www.mountaingoatsoftware.com/blog/why-agile-teams-should-estimate-at-two-different-
levels#:~:text=Reasons%20to%20Estimate%20the%20Sprint%20Backlog&text=First%20is%20that%20it%20helps,able%20to%20assess%20the%20
workload.
 https://www.softwaretestinghelp.com/agile-estimation-techniques/
 https://www.agilealliance.org/glossary/estimation/#q=~(infinite~false~filters~(postType~(~'page~'post~'aa_book~'aa_event_session~'aa_experience_r
eport~'aa_glossary~'aa_research_paper~'aa_video)~tags~(~'estimation))~searchTerm~'~sort~false~sortDirection~'asc~page~1)
 https://www.pmi.org/learning/library/agile-project-estimation-techniques-6110
 http://www.agileadvice.com/2013/07/30/referenceinformation/agile-estimation-with-the-bucket-
system/#:~:text=The%20%E2%80%9CBucket%20System%E2%80%9D%20is%20a,and%20to%20do%20it%20quickly.&text=Works%20with%20te
ams%20to%20estimate%20effort%20or%20with%20stakeholders%20to%20estimate%20value.
 http://www.flowless.eu/biguncertainsmall/#:~:text=Big%2FUncertain%2FSmall%20is%20an,just%20like%20the%20Bucket%20System.
 https://lakshaysuri.wordpress.com/2018/06/10/agile-estimation-techniques/
 https://rubygarage.org/blog/how-to-estimate-with-story-points.amp
 https://www.scrumdesk.com/effort-vs-time/
 https://www.geeksforgeeks.org/estimation-technique-in-agile/amp/
 https://www.berteig.com/how-to-apply-agile/9-agile-estimation-techniques/

Contenu connexe

Tendances

story points v2
story points v2story points v2
story points v2
Jane Yip
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
Dimitri Ponomareff
 

Tendances (20)

story points v2
story points v2story points v2
story points v2
 
Agile Training: Roles and Expectations
Agile Training: Roles and ExpectationsAgile Training: Roles and Expectations
Agile Training: Roles and Expectations
 
Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
 
Hands-on Agile Webinar #2: Agile Maturity & Agility Assessment
Hands-on Agile Webinar #2: Agile Maturity & Agility AssessmentHands-on Agile Webinar #2: Agile Maturity & Agility Assessment
Hands-on Agile Webinar #2: Agile Maturity & Agility Assessment
 
Agile Estimating & Planning
Agile Estimating & PlanningAgile Estimating & Planning
Agile Estimating & Planning
 
Agile Assessment Version 1.0
Agile Assessment Version 1.0Agile Assessment Version 1.0
Agile Assessment Version 1.0
 
Agile Estimation Techniques.pptx
Agile Estimation Techniques.pptxAgile Estimation Techniques.pptx
Agile Estimation Techniques.pptx
 
Agile Estimation Techniques
Agile Estimation TechniquesAgile Estimation Techniques
Agile Estimation Techniques
 
Story Points Estimation And Planning Poker
Story Points Estimation And Planning PokerStory Points Estimation And Planning Poker
Story Points Estimation And Planning Poker
 
Agile Estimating & Planning by Amaad Qureshi
Agile Estimating & Planning by Amaad QureshiAgile Estimating & Planning by Amaad Qureshi
Agile Estimating & Planning by Amaad Qureshi
 
Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013Agile estimating 12112013 - Agile KC Dec 2013
Agile estimating 12112013 - Agile KC Dec 2013
 
The 10 Steps to Becoming a Great Agile Coach
The 10 Steps to Becoming a Great Agile CoachThe 10 Steps to Becoming a Great Agile Coach
The 10 Steps to Becoming a Great Agile Coach
 
Product Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization TechniquesProduct Backlog - Refinement and Prioritization Techniques
Product Backlog - Refinement and Prioritization Techniques
 
Introduction to story points
Introduction to story pointsIntroduction to story points
Introduction to story points
 
Scrum: Scrum Guide Summary
Scrum: Scrum Guide SummaryScrum: Scrum Guide Summary
Scrum: Scrum Guide Summary
 
Definition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementDefinition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinement
 
Agile Planning and Estimation
Agile Planning and EstimationAgile Planning and Estimation
Agile Planning and Estimation
 
Estimation techniques for Scrum Teams
Estimation techniques for Scrum TeamsEstimation techniques for Scrum Teams
Estimation techniques for Scrum Teams
 
Agile Metrics 101
Agile Metrics 101Agile Metrics 101
Agile Metrics 101
 

Similaire à Agile Estimating Technique (20)

Estimation and Velocity - Scrum Framework
Estimation and Velocity - Scrum FrameworkEstimation and Velocity - Scrum Framework
Estimation and Velocity - Scrum Framework
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Agile
AgileAgile
Agile
 
Scrum - What is it good for?
Scrum - What is it good for?Scrum - What is it good for?
Scrum - What is it good for?
 

Dernier

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
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
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Agile Estimating Technique

  • 2. Our Team: MUHAMMAD SAADULLAH SAP ID# 2173 saadawan926@gmail.com MUHAMMAD SAAD HUSSAIN SAP ID# 2037 saadhussain9110@gmail.com ABDUL WASAY SAP ID # 2129 abdulwasay.aw77@gmail.com GHULAM JILLANI SAP ID# 2194 ghulamjallani112233@gmail.com
  • 3. Content: Conclusion Agile Estimation Techniques Advantages & Disadvantages of Agile Estimation How to use estimate task in agile? Estimation Template in Agile Development Project Why we estimate in agile? Principle of Agile Estimation 3 Main Level of Agile Estimation Story Point in Agile Estimation What is estimation in agile?
  • 4. What is Estimation in Agile?  Estimation in agile is a method of measuring how long it will take to complete a user story or a task.  It is very crucial to do Agile Estimation at different Levels.  This is done for proper planning, management and estimating the total efforts that we use for implementing, testing and delivering the desired product to the customers in terms of time within the specified deadlines.  With lack of estimations in agile project, there may be no proper planning and management which may end in delivering the undesired product and thereby leaving the customer unsatisfied.
  • 5. 3 Main Level OF Agile Estimation: Project Or Proposal Level:  The one which uses Quick Function Point Analysis during the initial phases of the Project development. 01 Sprint Level:  The one where the user stories are broken into the tasks and estimated hours are assigned to the tasks according to their complexity.  Here, we also define the person responsible for the task along with the status of the tasks. 03 Release Level:  Includes assigning the story points to the user stories.  That can help in defining the order of the user stories based on the priority and can also help in deciding which stories can be taken in current release and which can be taken later. 02  This information can be later used to calculate the budget for the Agile project.  Calculation of Budget is crucial to make sure that the project does not go over the budget due to the pre and post iteration tasks or some other reasons.
  • 6. Why we Estimate in Agile?  First is that it helps the team determine how much work to bring into the parts.  To help us better plan project  For resource allocations  To decide priority (Task A &B)  To help in project quotations  By splitting backlog items into small, discrete tasks and then roughly estimating them during sprint planning, the team is better able to assess the workload.
  • 7. How to use Estimate Task in Agile?  Tasks are estimated in terms of estimated hours i.e. the time required to complete that task for a corresponding user story.  The Bottom-Up Approach is used for the Task estimations where the business requirements are broken down into low-level activities and each activity is assigned estimated hours.  Team members pick up the user stories.  Then, they are asked to estimate the actual effort, in terms of hours or days, for the tasks corresponding to the user story.  If there is a disagreement in these estimates among the team members, then they discuss it and come to a consensus.  If any task is of more than six hours, it is split into smaller tasks.  If there are two or more tasks with estimated hours less than two, then they are combined to form a new task.
  • 8. 9 TECHNIQUE 1. Planning poker 2. The bucket system 3. Big/Uncertain/Small 4. TFB/NFC/1(Sprint) 5. Dot Voting 6. T-shirt Sizes 7. Affinity Grouping 8. Ordering Protocol 9. Divide until maximum size or less
  • 9. 1: Planning Poker  Each team member gets a set of cards.  The Product Owner explains item to be estimated.  Each team member choses a card that represents his/her estimation.  Every one shows their respective card at the same time.  The point value shown on the card is the estimate if every team member selected the same card.  If the cards are not the same, then the team needs to discuss the item and estimate again.  Select again until estimates converge.  Repeat as needed until estimates converge
  • 10. 2: The Bucket System  The “Bucket System” is a way to do estimation of large numbers of items with a small to medium sized group of people, and to do it quickly. The Bucket System has the following qualities which make it particularly suitable for use in Agile environments.  It’s fast! A couple hundred items can be estimated in as little time as one hour.  It’s collaborative. Everyone in a group participates roughly equally.  It provides relative results not absolute estimates (points vs. hours).  The results are not traceable to individuals and so it encourages group accountability.  Works with teams to estimate effort or with stakeholders to estimate value.
  • 11. 3: Large/Uncertain/Small  Large /Uncertain/Small is an agile estimation method where the items to be estimated are placed by the group in any of these categories:  Large  Uncertain  Small.  Teams discuss a few items together and then uses divide-and- conquer to estimate the remaining items.  Large/Uncertain/Small is just like the Bucket System.  In the divide and conquer step, you allocate the remaining items to all members of the team.  Every member puts items on the scale without discussing it with other team members.  If someone has an item that he doesn’t really understand, that item can be given to someone else. LARGE SMALL UNCERTAIN
  • 12. 4: TFB / NFC / 1 (Sprint)  TFB / NFC / 1 (Sprint) is an agile estimation technique similar to Big/Uncertain/Small, another agile estimation technique that places items in one of the 3 categories:  Large  Uncertain  Small  The categories include No F-ing Clue, “1” Sprint and Too F-ing Big.  A large number of items can be estimated within a short period of time.  It is also collaborative, so each member of the team can participate roughly equally.  The right people participate in the estimation process.  Tracing who estimated what is impossible, so group accountability is promoted.  If someone makes an incorrect estimate, there’s no way to know this person.  The whole group is responsible for everything, so no one can blame any member of the team.
  • 13. 5: Dot Voting  It is basically a ranking method to decide the order of the Product Backlog from the highest priority stories to lowest priority stories. It is done to select the most important story to be taken forward.  Product owner puts all the user stories on the wall using post-its.  Team members are given 4 to 5 dots (mostly in the form of a marker).  Everyone has to give their votes on the different user stories that they prefer (keeping into account the max dots that are available with per person is fixed and should not be exceeded).  Product Owner then orders the product backlog items from the most preferred (one with most no of dots) to the least preferred (one with least no. of dots).  Discussion can be held if a team member is unhappy with a specific task having higher or lower priority.
  • 14. 6: T-Shirt Sizes:  T shirt sizing is a agile estimation technique. Normally this technique is used to estimate EPICS (and can be used for stories too) and it gives a rough estimation.  This technique helps in open and mutual collaborative discussions.  In this technique t-shirt sizes -XS (Extra Small), S (Small), M (Medium), L (Large), XL (Extra Large) are used.  The sizes can, if needed, be given numerical values after the estimation is done.  User stories are given t-shirt sizes according to the member understanding.  This is a very informal technique, and can be used quickly with a large number of items. Usually, the decisions about the size are based on open, collaborative discussion, possibly with the occasional vote to break a stalemate.  This technique gives rough estimation very fastly.
  • 15. 6: T-Shirt Sizes: (Continue (Working))  Here a requirement is classified as XS, S, M, L, XL. This means a requirement can be either extra small, small, medium, large or extra large.  Each team member gets a set of cards with XS, S, M, L, XL written over them.  The Product Owner explains item to be estimated.  Each team member choses a card that represents his/her estimation.  Every one shows their respective card at the same time.  The point value shown on the card is the estimate if every team member selected the same card.  Estimation should be done again for an item – if someone estimated XS whilst other one estimated as XL. If majority estimated M or L then go with an L.  Repeat until each item is estimated.  Once all the items have been estimated, a mapping from t-shirt sizing to the quantitative aspect should be done.  In our case we mapped it as XS -> 3, S -> 5, M -> 8, L -> 13, XL -> 20.  This way team came up with number of story points needed to finish the project and based on our average sprint velocity we came up with how many sprint we would need to finish the project.
  • 16. 7: Affinity Grouping:  The first item is read to the team members and placed on the wall.  The second item is read and the team is asked if it is smaller or larger than the first item; placement on the wall corresponds to the team's response (larger is to the right, smaller is to the left).  The third item is read and the team is asked if it is smaller or larger than the first and/or second items; the item is placed on the wall accordingly.  Control is then turned over to the team to finish the affinity grouping for the remainder of the items.
  • 17. 8: Ordering Protocol:  This works best in a small group of expert.  All items are placed in random order on a scale label ranging from low to high.  Every participant is being asked to move one item on the scale.  Each move is just one spot lower or one spot higher or pass the turn.  This continues till no team member want to move items and passes their turn.  The ordering protocol is a method of getting fine grained size estimates.  Works best with a relative small group of people and a large number of items.
  • 18. 9: Divide until Maximum Size or Less :  The group decides on a maximum size for items (e.g. 1 person-day of effort).  Each item is discussed to determine if it is already that size or less.  If the item is larger than the maximum size, then the group breaks the item into sub-items and repeats the process with the sub-items.  This continues until all items are in the allowed size range.
  • 19. Story Point in Agile:  Story point is relative measure of effort.  A story point is a metric used in agile estimating project and development to estimate the difficulty of implementing a given user story, which is an abstract measure of effort required to implement it.  In simple terms, a story point is a number that tells the team about the difficulty level of the story.  Difficulty could be related to complexities, risks, and efforts involved.  Story Points estimations is a comparative analysis to roughly estimate the product backlog items with relative sizing.  The team members for estimating user stories include: Product Owner, Scrum Master, Developers, Testers and Stake holders.  How long a user story will take (effort). Influenced by complexity, uncertainty, risk, volume of work, etc.
  • 20. Story Point in Agile: (Continue)  There are various ways to estimate agile projects. One way is by using so-called Story Points.  While this type of estimation might not be the easiest, estimating with Story Points in Agile offers benefits to both project developer and clients.  The Story Points approach uses historical data to compare features of one project to features of a previous similar project to generate a precise estimate.  The gears in the image left is with different sizes and have unique attributes:  Just like features in a software development project. Imagine there were no way to measure the size of a circle.
  • 21. Story Point in Agile: (Continue) Walk through each step of the estimation process with Story Points.  Step 1: Identify a Base Story  Story Points in agile are a complex unit that includes three elements: risk, complexity and repetition.  To find our Base Story, we search for one elementary task that corresponds to internal standards of Definition of Done for User Stories and assign it one Story Point. This will be the Base Story.  Step 2: Create a Matrix for Estimation  There are two types of scales used for creating estimation matrices: the linear scale (1,2,3,4,5,6,7…) and Fibonacci sequence numbers (0.5, 1, 2, 3, 5, 8, 13 …).  When estimating using Fibonacci sequence numbers, we create a matrix with rows for each sequence number and their associated stories.  Then, we gather all our stories and start classifying them into rows, comparing the stories to each other and to other completed stories.  Notice that our Base Story is already in this matrix in the first row with a value of one Story Point.
  • 22. Story Point in Agile: (Continue) Walk through each step of the estimation process with Story Points.  Step 3: Implementing with Agile Estimating Technique (e.g.: Planning Poker)  By the end of applying technique, we’ve filled out the whole matrix.  Our tasks are divided into rows by the number of story points needed to implement them.  Finally, we place each backlog item in the appropriate row.  There can be several stories in one row.  Step 4: Create a Matrix for Estimation  Now that we have a size estimate, you may be wondering how we convert these sizes into man-hour estimates.  Unfortunately, we can’t do this until the first sprint is completed.  While the first sprint is in progress we can track the team’s velocity.  As soon as the sprint is finished, we’ll know how many Story Points a team can complete per sprint.  We use these numbers to forecast the team's performance for the next sprints.
  • 23. Principle of Agile Estimating Techniques:  Agile estimation techniques are collaborative.  All appropriate people are included in the process.  For example: The whole Scrum team participates in estimating effort of Product Backlog Items. Collaborative techniques are also designed so that it is impossible to blame someone for an incorrect estimate: there is no way to trace who estimated what.  Agile estimation techniques are designed to be fast (-er than traditional techniques) and deliberately trade off accuracy.  Most Agile estimation techniques use relative units.  This means that we don’t try to estimate dollars or days directly. Instead, we use “points” or even qualitative labels and simply compare the items we are estimating to each other.  This takes advantage of the human capacity to compare things to each other and avoids our difficulty in comparing something to an abstract concept (such as dollars or days).
  • 24. Estimation template in Agile Development project: 1:Agile Project Plan Template:  It gives high level view of how much time is required to deliver the features of the requirements and what is their status.  It also mentions the person responsible for specific task.
  • 25. Estimation template in Agile Development project: 2: Agile Release Plan Template:  It gives release details of the tasks corresponding to the requirements, along with their status and Sprint in which they need to be executed.
  • 26. Estimation template in Agile Development project: 3: Agile Product Backlog Template:  It describes the complete product backlog defined for the project.  It gives detail of tasks of the Sprints along with status, priority, story points.  Whether they are assigned to a Sprint or if there are some additional task like defects etc.
  • 27. Estimation template in Agile Development project: 4: Agile Sprint Backlog Template:  It gives a description of the user stories mentioned in the backlog of a particular Sprint.  It gives the total story points assigned to a user story and how these are broken into different tasks.  It also gives the status of the corresponding tasks and what is the work carried out on a daily basis for the corresponding tasks.
  • 28. Estimation template in Agile Development project: 5: Agile Test Plan Template:  It breaks the whole test scenario into sub-scenarios.  It gives details of the sub-scenarios like Implementation date, Expected Result, Actual Result, Status etc.  It also mentions the Project Name, Compatible browser, Version of the Application under test, Test Case ID for a selected scenario, Written By, Tested By, Description, etc.
  • 29. Estimation template in Agile Development project: 6: Agile User Story Template:  It gives the details specific to the analysis of the user story like • What are the roles required for a specific functionality to be tested, • What is the pre-requirement (environment set up and links enabled) and • What is the expected outcome?
  • 30. Estimation template in Agile Development project: 7: Agile Road Map Template:  It gives a direction to the project in the company, on a short term and long-term basis.  It helps in setting expectations within the company.  And the overview of where the project is heading to.
  • 31. Advantages & Disadvantages: Advantages: 1. Flexibility and Adaptivity 2. Creativity and Innovation 3. Time-to-Market 4. Lower Costs 5. Improved Quality 6. Customer Satisfaction 7. Employee Satisfaction 8. Organizational Synergy Disadvantages: 1. Training and Skill Required 2. Organizational Transformation 3. Scalability 4. Integration with Project/Program Management
  • 32. Conclusion:  The estimations in Agile project play an important role to ensure proper direction, planning and management .  It provides steps on how to take up the project in future.  The techniques to estimate story points like Planning poker, Bucket System etc. make use of cards or dots having values or numbers printed on them and then assign these nos. to the user stories for relative size estimation.  The sole purpose is to set the items in a prioritized order from maximum priority to minimum priority.  The relative sizes estimated for the product backlog items help in estimating or calculating the budget required for the project
  • 34. References:  https://www.visual-paradigm.com/scrum/what-is-story-point-in- agile/#:~:text=A%20story%20point%20is%20a,difficulty%20level%20of%20the%20story.  https://www.mountaingoatsoftware.com/blog/why-agile-teams-should-estimate-at-two-different- levels#:~:text=Reasons%20to%20Estimate%20the%20Sprint%20Backlog&text=First%20is%20that%20it%20helps,able%20to%20assess%20the%20 workload.  https://www.softwaretestinghelp.com/agile-estimation-techniques/  https://www.agilealliance.org/glossary/estimation/#q=~(infinite~false~filters~(postType~(~'page~'post~'aa_book~'aa_event_session~'aa_experience_r eport~'aa_glossary~'aa_research_paper~'aa_video)~tags~(~'estimation))~searchTerm~'~sort~false~sortDirection~'asc~page~1)  https://www.pmi.org/learning/library/agile-project-estimation-techniques-6110  http://www.agileadvice.com/2013/07/30/referenceinformation/agile-estimation-with-the-bucket- system/#:~:text=The%20%E2%80%9CBucket%20System%E2%80%9D%20is%20a,and%20to%20do%20it%20quickly.&text=Works%20with%20te ams%20to%20estimate%20effort%20or%20with%20stakeholders%20to%20estimate%20value.  http://www.flowless.eu/biguncertainsmall/#:~:text=Big%2FUncertain%2FSmall%20is%20an,just%20like%20the%20Bucket%20System.  https://lakshaysuri.wordpress.com/2018/06/10/agile-estimation-techniques/  https://rubygarage.org/blog/how-to-estimate-with-story-points.amp  https://www.scrumdesk.com/effort-vs-time/  https://www.geeksforgeeks.org/estimation-technique-in-agile/amp/  https://www.berteig.com/how-to-apply-agile/9-agile-estimation-techniques/