Poker Techniques In Agile

Posted on by admin
  1. Planning Poker Vs. Relative Methods: Which Agile Estimation ...
  2. 9 Agile Estimation Techniques - Berteig Consulting And ...
  3. Poker Techniques In Agile Methodology
  1. But in 2007, we began printing Planning Poker Cards, which we sold at cost, distributed at various agile events, and that I use in some in-person courses. To keep printing costs down, I had to choose between these two sequences. At the time, I just slightly favored the modified Fibonacci sequence. And so I made the call to go with that.
  2. See full list on agilealliance.org.
  3. Planning Poker Planning Poker® is a consensus-based estimating technique. Agile teams around the world use Planning Poker to estimate their product backlogs. Planning Poker can be used with story points, ideal days, or any other estimating unit.

Based on survey results and other feedback, we will improve upon this Alpha version for a Beta.

Many people have used a variation of Planning Poker to do Agile estimation. Here is a reference of 9 different Agile estimation techniques for different circumstances. I have seen all of these techniques work in practice, except one. Try a new one each Sprint! A few techniques typically used on agile projects that directly contribute to accelerating the time to delivery and the increased quality of the product being delivered, include: Frequent inspection of the product and adaptation to the changes and input during the project Aligning development with customer needs and organizational goals.

Complete a brief survey to help us improve the CA-Agile Framework.

Agile methods and tools lend themselves most appropriately to systems and projects in which accurate estimates, stable plans, and predictions are often difficult to attain in the early project stages. Agile development favors an adaptive, iterative and evolutionary development approach. Using agile tools and techniques can help to:

  • Self-organize and plan
  • Communicate (within the team and with the rest of your organization)
  • Continuously improve the way you work
  • Get support from management

Introducing Agile Tools and Techniques

This guide describes some of the common agile tools and techniques that teams use. Others can be used depending on the project and team. Agile teams may also adopt unique combinations of techniques to support their framework and methodology. Examples include:

  • Collocation
  • Dedicated teams
  • Relative estimating
  • User stories
  • Velocity
  • Burndown charts
  • Definition of done

A few techniques typically used on agile projects that directly contribute to accelerating the time to delivery and the increased quality of the product being delivered, include:

  • Frequent inspection of the product and adaptation to the changes and input during the project
  • Aligning development with customer needs and organizational goals
  • Colocation of resources to the same work space
  • Self-organization and accountability
  • Becoming a team player
  • Elimination of “waste” and “ceremony”
  • Empirical demonstration of results
  • Customer is always present
  • Focus on key planning events: product planning, release/feature planning, iteration planning, sprint review, and stand-ups

Scrum

One of the most common frameworks is Scrum. Scrum is a metaphor from the game of rugby. Like rugby, Scrum also relies on talented people with varying responsibilities and domains working closely together in teams towards a common goal. This is in contrast to traditional development approaches like a relay race, in which one team member at a time carries a baton and then hands it off to the next runner.

Scrum is an empirical exposure model, in that knowledge is gained from real-life experience, and decisions are made based on that experience. Through transparency, inspection and adaptation, using Scrum is a a good way to demonstrate whether your project is generating the intended results.

When following Scrum, teams focus on what can be done ‘today’ and break future work into manageable pieces. There is more immediate feedback as to how well your development methodology is working, and when issues arise, Scrum allows for immediate action by making adjustments with clarity and speed. Scrum works to:

  • Clearly define roles
  • Organize your work in actionable chunks
  • Enable effective prioritizing
  • Allow for efficiencies in completing work

A high-level overview of Scrum is depicted below in Figure 1-1.

Artifacts

There are numerous artifacts that will need to be developed as part of an iterative agile project effort. Many are either inputs or outputs from an individual sprint. Three key sprints artifacts are the product backlog, sprint backlog, and the shippable product implement as shown in Figure 1-2 below.

Product Backlog
The product backlog is the master to-do list for a project. It is an ordered list, prioritized by business value and risk. It is a dynamic artifact and changes as the Scrum team gains additional knowledge regarding the requirements and solution they are developing. At the beginning of each sprint, the Scrum team plans and executes the next highest priority item on the product backlog, resulting in a fully designed, developed, tested and integrated functionality.

Typically, each identified item on the product backlog includes specific information that may include: description, estimate of effort required to complete it, and ID number, status and type. The Product Owner is responsible for maintaining the product backlog.

Sprint Backlog
The sprint backlog is also created at the beginning of each sprint, and is the to-do list of tasks necessary to achieve the sprint goal. The sprint backlog generally includes a sprint goal and the sprint end date, a prioritized list of requirements, estimated effort for each item, tasks required for each requirement, estimated hours for each task and a burndown chart displaying the status of work being performed throughout the sprint. The sprint backlog is the artifact resulting from sprint planning. The development team is responsible for managing and maintaining the sprint backlog.

Shippable Product Increment
At the end of every sprint, the development team delivers working, tested and integrated functionality to stakeholders and customers to review. The development team reviews each requirement with the product owner as soon as it is completed, and the requirements that comprise the increment are only considered complete if the product owner accepts them. The product increment is what the development team demonstrates to stakeholders in the sprint review.

Events

Agile development cycles are iterative, and are often referred to as ‘iterations’. A sprint is a time-boxed iteration. The length of a sprints or iterations can vary by Scrum team, and project, however the shorter the sprint, the more frequently a Scrum team receives feedback to inspect and adapt both their product and processes. Sprint lengths rarely are very long, with the preference usually being 1-2 weeks, and in some cases as short as a single day. As depicted in the Figure below each Sprint contains four key events:

  • Spring Planning
  • Daily Scrum or Standup
  • Spring Review
  • Sprint Retrospective

Each sprint begins with sprint planning, and then the team collaborates daily (daily scrum) amongst the team and the product owner to elaborate, design, develop, test, integrate and generate requirements into working functionality. If any sprint output is rejected by the product owner, the development team works together to resolve any defects or misalignments with the business objectives until completion.

The sprint ends with a sprint review and sprint retrospective as shown in Figure 1-3. Once a sprint is officially completed, a new sprint begins. Ideally, each sprint is the same length so the Scrum team can extrapolate their potential future performance or output based on a small amount of historical data.

Sprint Planning

Early planning for your agile project is generally at the epic level to determine what the epics will be for the duration of the project and their relative priority. Detailed planning occurs as a part of the sprint planning process and is undertaken as a just-in-time activity in the sprint planning meetings.

Sprint planning meetings are a feature of Scrum and should be held at the start of each sprint. At a sprint planning meeting, the team decides what to work on next and how they will do it. The length of the meeting will depend on how long your sprint is. Sprint planning is the process of establishing a sprint goal and selecting product backlog items in support of the sprint goal that can be completed within the designated sprint timeframe.

The product owner presents a sprint goal and the development team identifies the specific product backlog requirements that can be addressed during the sprint. The development team then identifies the technical tasks required to complete each requirement. The team evaluates their capacity for the sprint and compares it against the aggregated estimates of the tasks. The team then works collaboratively with the product owner to address any concerns with completing all of the selected items within a sprint and to determine how to accomplish the sprint goal with the available capacity.

Sprint planning is time-boxed, and depending on the project and organization the time spent per week may change. For instance with a two-week sprint, two hours per week should be sufficient with the total planning lasting no longer than four hours. The Scrum master facilitates sprint planning, however, the product owner is responsible for the sprint goal and provides clarification to the team regarding requirements and business goals and objectives.

Daily Scrum or Standup
The daily scrum or standup should be scheduled for the same time each day and be relatively brief. Depending on the scale of the project a 15 or 30 minute duration can suffice. It is recommended that the meeting occur in front of your team wall.

Planning Poker Vs. Relative Methods: Which Agile Estimation ...

Keep in mind that it is best for Scrum teams to collaborate on a daily basis instead of as needed. Meeting together once a day to discuss what each team member is working on and whether they have any problems or dependencies that need to be resolved is helpful to keeping the project moving forward smoothly. Additionally this meeting should be used to coordinate how to accomplish the work for that single day, or if a team member needs help from someone else.

Each developer states what work he or she completed the prior day so that each team member is clear on progress. Each developer also identifies the work from the sprint backlog they will take on, and coordinates with other developers to reach the sprint goal. Any roadblocks or impediments are also identified at this time so that the Scrum master can address them as quickly as possible.

The daily Scrum or standup is generally brief and is not considered a formal status-reporting meeting. It is intended for coordinating work, prevention of potential roadblocks, and identification of impediments. The product owner may attend this daily meeting to gain visibility regarding the work effort and to make sure the team remains focused on the sprint goal.

Sprint Review
Each sprint closes with a sprint review. This allows the product owner to verify that the Scrum team is developing what the customer wants. The product owner presents the sprint goal and status to the stakeholders.

The development team members then demonstrate working functionality and the product owner collects feedback from the stakeholders. The product owner then updates the product backlog, based on this feedback and cross-references the current state of the project with the overall roadmap and communicates what is planned for the next sprint.

The product owner and development team own the sprint review, and the Scrum master facilitates and ensures that the objectives of a sprint review are met. All stakeholders should attend, and ideally, the customer attends as well, in order to provide feedback to the product owner. The sprint review should last no longer than one hour per week of the sprint.

Retrospective Meetings

The sprint retrospective, sometimes also referred to as a ‘retro,’ provides the Scrum team with the opportunity to inspect and adapt its processes, environment, tools, communications, and impediments in order to make improvements.

Scrum teams typically utilize this time to validate what is working well in addition to identifying any practices that may not be working. Concerns are addressed, and the Scrum team identifies any changes that should be implemented as a result. Action plans for adopting those changes are developed and added to the product backlog to be implemented in a future sprint.

Typically, only Scrum team members participate in the sprint retrospective; however, they may invite stakeholders or customers to participate as appropriate, in order to provide additional insights. For example, with a two week sprint, this Scrum event should be time-boxed to no more than 45 minutes per week of the sprint. As a result the retrospective should last no longer than 90 minutes. The overall goal of the retrospective is to fix any problems in the team and to make sure you keep doing the things that are working.

Running a Retrospective
Retrospectives should have an open atmosphere where every member of the team can speak honestly and feel confident that their colleagues will listen. Steps to follow in a basic retrospectives include:

  1. The facilitator explains the questions at the beginning and sticks a post-it note to the wall for each question.
  2. Each team member writes down one or more answers for each question on post-it notes and sticks them to the right part of the wall.
  3. The group discusses issues as they come up, or at the end.
  4. The facilitator decides on actions to fix any issues or problems that were raised, and assigns them to members of the team.
Poker Techniques In Agile

Keep in mind that topics should be selected to prompt useful team discussions. Example discussion topics may include:

  • What went well in the last iteration
  • What did not go well in the last iteration
  • What’s puzzling the team or what doesn’t the team understand
Agile

Make a List of Actions
Information gleaned from the retrospective should be used to improve your work and your working environment. Make a list of actions that are needed to fix the problems that the team has highlighted. Aim to complete these action items before the next retrospective.

Team Review (show and tell)

The team review is a regularly scheduled meeting which gives team members the opportunity to demonstrate their work. It is also referred to as a sprint review or a show and tell. You may want to invite stakeholders such as directors or suppliers to this meeting and use it to tell them about the user stories that have completed or other work which has been done. Make sure to use a place with a screen to present the work and enough space for all participants.

If your project is part of a larger organization or program you may want to open up your review to the rest of the organization every few weeks. This gives you the opportunity to show the most important work you’ve done, talk about what you’ve learned, explain your plans for the next few weeks and answer questions. It also gives other teams the chance to see how your work relates to theirs.

User Stories
User stories are a way for your team to briefly record the things you need to do to build the product. You can use them to prompt discussions about features when you’re ready to start working on them.

The Backlog
A product backlog is used to store the user stories that haven’t yet been started. It is recommended that the user stories are ordered based on priority. If you are following Scrum you should also use a sprint backlog to manage the stories that the team has agreed to work on during a sprint.

Team Walls
Your team wall is an important tool that helps to track and manage the workload. The wall shows what your team has done, what they’re currently doing, and remaining work. Having a team wall helps your team to collaborate and allows other people in the organization to see what you’re doing. For more information on setting up a team wall click here.

Approaches to Agile

There are numerous agile frameworks that can be followed or leveraged when implementing business transformation projects. They include but are not limited to: Scrum, Extreme Programming (XP), Kanban, and Scaled Agile. This guidance will focus on Scrum. For a more complete list see the Agile Manifesto.

Agile Tools and Techniques

Effective estimation is one of the toughest challenges software developers face in their jobs. Regardless of team size, they need to define, estimate, and distribute work throughout a team. As teams get larger, it becomes even more important to build good habits around planning and estimating work. Lack of planning and estimating reduce confidence in a program, breaks down relationships between the team and the business, and makes development harder on everyone.

Best Scrum Software Every Project Needs

A powerful scrum software that supports scrum project management. It features scrum tools like user story map, product backlog management, sprint backlog management, task management, daily scrum meeting, sprint planning tool, sprint review tool, sprint retrospective tool, burndown, impediment, stakeholder and team management.

9 Agile Estimation Techniques - Berteig Consulting And ...

The Accuracy of Group vs. Individual Estimation

According to some study on the accuracy of estimation of effort between individual and group in an experiment for a software project. 20 software professionals from the same company individually estimated the work effort required to implement the same software development project. The participants had different background and roles and the software project had previously been implemented. After that, they formed five groups. Each group agreed on one estimation by discussing and combining of the knowledge among them.

Result – The estimates based on group discussions were more accurate than the individual estimates.

What is Planning Poker?

Planning poker (also known as Scrum poker) is a consensus-based, gamified technique for estimating, mostly used to estimate effort or relative size of development goals in software development.

Steps for Planning Poker

Poker Techniques In Agile
  1. To start a poker planning session, the product owner or customer reads an agile user story or describes a feature to the estimators.
    For example:
    “Customer logs in to the reservation system”
    “Customer enters search criteria for a hotel reservation”
  2. Team members of the group make estimates by playing numbered cards face-down to the table without revealing their estimate (Fibonacci values: 1,2,3,5,8,13,20,40)
  3. Cards are simultaneously displayed
  4. The estimates are then discussed and high and low estimates are explained
  5. Repeat as needed until estimates converge

By hiding the figures in this way, the group can avoid the cognitive bias of anchoring, where the first number spoken aloud sets a precedent for subsequent estimates.

Agile Estimation – Relative vs Absolute

Poker techniques in agile project management

Poker Techniques In Agile Methodology

An estimate is nothing more than a well educated guess. We use all the knowledge and experience at hand to make a guess about the amount of time it is going to take. So instead of looking at every new work item separately, why not compare it to previously finished work items? It’s easier for humans to relate to similar items than to guess the actual size of things anyway.

For example, is it closer to this really small thing? Or is it more like this normal sized item? Or is it really huge like that one piece of work we finished last month? Doing relative estimates will not only reduce the amount of time spent on estimating work, it will also heavily increase the accuracy of the estimates.

Our brain is not capable of doing absolute estimates; we always put that new thing that we need to estimate in relationship to things we already know.

Fibonacci sequence and Planning Poker

Planning Poker uses of the Fibonacci sequence to assign a point value to a feature or user story. The Fibonacci sequence is a mathematical series of numbers that was introduced in the 13th century and used to explain certain formative aspects of nature, such as the branching of trees. The series is generated by adding the two previous numbers together to get the next value in the sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, and so on.

For agile estimation purposes, some of the numbers have been changed, resulting in the following series: 1, 2, 3, 5, 8, 13, 20, 40, 100 as shown in the Figure below:

The Interpretation of the point assigned to a poker card is listed in the table below:

Card(s)Interpretation
0Task is already completed.
1/2The task is tiny.
1, 2, 3These are used for small tasks.
5, 8, 13These are used for medium sized tasks.
20, 40These are used for large tasks.
100These are used for very large tasks.
<infinity>The task is huge.
?No idea how long it takes to complete this task.
<cup of coffee>I am hungry 🙂
See full list on agilealliance.org

Point vs Hour Value in Estimation

So why use story points instead of time values? Story pointing allows the team to focus on the complexity and time involved in delivering a piece of work. The team compares the new work against work they’ve already done. They compare the complexity of the new assignment against past challenges and rank the difficulty as well as the time required.

For example, we don’t often account for “the cost of doing business.” Meetings, email, code reviews, etc. with time values. But in reality, all these are necessary practices throughout in our daily life, but don’t actually count as “work.” Story points isolate the software development work from the associated logistic work items, so estimates using point based should more consistent than hour base approach.

About Visual Paradigm
Visual Paradigm help organizations stay competitive and responsive to change faster and better in today’s fast changing environment. Our award-winning products are trusted by over 320,000 users in companies ranging from small business, consultants, to blue chip organizations, universities and government units across the globe. It enables organizations to improve business and IT agility and foster innovation through popular open standards and process frameworks.Visual Paradigm, a killer Agile feature in 2018, introduced Scrum Process Canvas for automating the way a Scrum team to create, manage and deploy software application that empowers the team to continuously improve their performance at unprecedented speed and scale.

Manage the Entire Scrum Process in One Page

  • Automate the Scrum Framework in a fun and enjoyable dashboard with eye-catching updated status.
  • Manage Backlog, Multiple Sprints of different Scrum Roles with a single-page visually executable canvas
  • Allow instantly access, review and generate scrum artifacts and related documents to be archived in the Shared Cabinet
  • Automate the Scrum events and related activities with self-explanatory instructions, samples and required document templates.