How to estimate your sprint | How many stories | Scrum | Monte Carlo Simulation | Excel template

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024

Комментарии • 83

  • @SuperLuLu57
    @SuperLuLu57 2 года назад +1

    Legend! Sharing this immediately

  • @vinventdepaul2401
    @vinventdepaul2401 2 года назад +2

    This is awesome, thank you so much for doing this, I’ll be trying this out with your Excel template!

  • @paulgood3074
    @paulgood3074 2 года назад +2

    Top vid will check out your template

  • @steveang6790
    @steveang6790 2 года назад +1

    Good job! Been trying to do this for ages - will try your template

  • @rebe5272
    @rebe5272 4 месяца назад +1

    Great! I need to watch this again though 😁 thank you Steve

  • @johnterry7397
    @johnterry7397 2 года назад +1

    Excellent, love this approach!

  • @jameschan7575
    @jameschan7575 Год назад +1

    Love your work Steve! Thank you. By the way did you get a chance to take a look at my comment from the other video you made on the monte carlo? I'm confused between using the normal distribution vs the log-normal distribution where I saw an article from Erik Bernhardsson

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi James and thank you, that means a lot to me and I really appreciate it. I haven’t seen your other comment, RUclips normally emails me on all comments so I don’t miss any but this time it hasn’t. I’m not too familiar with Erik’s work but anything that uses empirical data is going to be better than estimates (guessing!). By the way, our cycle time data is not normally distributed because our work is not normally distributed but when we use Monte Carlo to forecast the curve does approximate a normal distribution because of the central limit theorem in probability. But I wouldn’t worry too much about that!

  • @cohouseasy5055
    @cohouseasy5055 Год назад +1

    ❤❤❤ love love love the excel template. Do you have any other video to show how to create it? Thank you!

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      Hi and thanks 😊 🙏 yes I do! Check this one out ruclips.net/video/LBFBpMtZ4qo/видео.html

  • @chris_r_yt
    @chris_r_yt 10 месяцев назад +1

    Thank you for this, Steve. Your explanation of the Monte Carlo simulation was really useful and the free excel template is a fantastic resource. Forgive me, but I was too impatient to use your macro and have adapted the template to utilise an existing excel function (What-if) that provides a more speedy result. Happy to send over my amended worksheet if it is of interest to you :)

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  10 месяцев назад +1

      Glad it was useful 👍 ok cool 😎 would be good to check it out you can send it to me at stephen.angood@spa-agile-consulting.co.uk thanks 🙏👍

    • @chris_r_yt
      @chris_r_yt 10 месяцев назад +1

      @@TheAgileLeanGardener I've sent it over to you, Steve. Hope you find it useful.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  10 месяцев назад

      Great thanks will check it out 🙏👍

  • @user-pt6xc5ws7h
    @user-pt6xc5ws7h 10 месяцев назад +1

    Awesome video, thank you 👍

  • @OneTinyDancer
    @OneTinyDancer Год назад +1

    And, fix your workflow to accomodate for issues that were "done" and then re-opemed. IE, the issue you have in "To Do" has been done as some point (there is a strike through on the issue ID), and re-opened. That will also reflect done/closed issues incorrectly when reporting.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi and thanks for your ‘comment’. Firstly it should be blatantly obvious that the Jira board I’m using is a test one solely for the purposes of the video and secondly you would obviously extract the time ‘last’ entered a status for your work items which accounts for the scenario you mentioned.

    • @OneTinyDancer
      @OneTinyDancer Год назад +1

      @@TheAgileLeanGardener Yes, that was all clearly obvious seeing as it wasn't mentioned. Fantastic coaching skills!

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +2

      I like John Lydgate’s response, “You can please some of the people all of the time, you can please all of the people some of the time, but you can't please all of the people all of the time”.

  • @b.h.1093
    @b.h.1093 Год назад +1

    Awesome :) So I'm able to complete 5 User Stories. Great!
    But don't I need some estimate to verify that the new stories are in the same range as all stories that were used as historical data? The new stories may be too big and need more than the calculated 85% or even 95% percentile. What would you recommend to cope with that?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +2

      Hi, using Monte Carlo doesn’t mean that you abandon your agile ways of working. You still need to discuss the work, break it down, identify dependencies and constraints, collaborate and communicate, limit WIP, reduce context switching and handoffs etc. Without that this is simply a data mining exercise that will inevitably be extremely unhelpful. One of the benefits of using percentiles and Monte Carlo is that size and complexity simply don’t matter. Having said that if your 85th percentile cycle time is telling you that it takes 15 days per story/task/pbi then there are issues that need to be looked at to reduce that. Monte Carlo is not a silver bullet but it can help visualise that there is a problem(s) that need to be solved. I think sometimes people think that when they see #NoEstimates it means that they don’t need to discuss or break work down etc etc which couldn’t be farther from the truth. Of course this needs to be done. For me it simply means stop using story points, velocity and burndowns and stop telling leadership it will be done in 3 months (for example) based on gut feel or some other innocuous activity. Forecast based on what has actually happened in the past. “What’s past is prologue” as Antonio said in the Tempest by dear old Shakespeare.

    • @b.h.1093
      @b.h.1093 Год назад

      @@TheAgileLeanGardener Thanks for your quick answer.
      I didn't mean to say that we don't do refinement, collaboration, and so on anymore. I'm unsure when we know when the story will be in a "suitable size" to pull into the sprint. It is easy for me to understand if the sprint capacity is, e.g., 500 hours, then we shouldn't pull a 700 hours story (which was estimated) into the sprint. We need to break down the 700 hours story into two separate ones, e.g., 500h and 200h story.
      I'm new to agile, Scrum etc. But I will test out this method because we are not good at hours/story points estimates.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi, so the answer to that is….it depends ;-) Let’s go for a simplistic example - say that you’re doing 2 week sprints, in which case there are 10 working days. Work out your 85th percentile (for a single item) if that number comes out at 11 days you know that your stories are too big (in which case you need to investigate why, inspect and adapt and get that 85th percentile for a single item down). In this scenario you would be taking too long to complete items so the team can’t ‘right size’ as their current size is too big. If you calculate that your 85th percentile cycle time for a single item is 4 days then the team knows that the stories they take into sprint are of a good size for 2 week sprints so they can ‘right size’ the stories based on what they usually do. Once you get an 85th percentile cycle time for a single item to a level you and the team are happy with then Monte Carlo Simulation really comes into its own. There is no magic whatsoever with Cycle Time and Monte Carlo, all the usual hard work in agile ways of working still need to happen but they are great at highlighting problems and indicating when things are working well - once they are working well they are great at providing realistic forecasts - and best of all they take no time at all.

  • @gabrielstraub6080
    @gabrielstraub6080 6 месяцев назад +1

    Unable to use the excel file. Added data from one sprint with 11 tickets completed, updated the date to complete the sprint, and the stories completed by select date says 4 tickets. I didn't get how to use it, thanks anyway

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  6 месяцев назад

      Hi, if you send me your file I’ll take a look at it for you 👍

  • @dougslay96
    @dougslay96 9 месяцев назад +1

    Do you always just use the last 2 months of data for the MCS or will it improve the results using more historical data (i.e 12 months)?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  9 месяцев назад

      Hi, more data will improve the forecast as long as it reflects how you work now. Only use data that reflects how you work now 🙏👍

  • @dougslay96
    @dougslay96 9 месяцев назад +1

    I noticed you are not taking weekends out of the cycle time calculation. Is that on purpose?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  9 месяцев назад

      Hi, yeah it was on purpose, I don’t remove holidays either as these things happen all the time. You could if you really wanted to but the important thing is the trend, you want to see it going in the right direction I.e. lower

  • @pdebie1982
    @pdebie1982 Год назад +1

    Doesn't give the Control Chart enough information about predictability and cycle time?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +3

      I would argue no, they’re not suited to forecasting, particularly if they’re Jira control charts. Most control charts draw lines based on arithmetic mean and standard deviation using a UCL and LCL (with data that is not normally distributed) instead of percentile lines. When forecasting you can’t use averages (read Sam Savage “The Flaw of Averages”). The data we collect is not normally distributed.

    • @pdebie1982
      @pdebie1982 Год назад +1

      @@TheAgileLeanGardener Thanks. Will look into that!

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      No problem, best of luck 👍

  • @rebe5272
    @rebe5272 4 месяца назад +1

    Hi Steve, if my team's cycle time (CT) is very inconsistent (very different from one to the next) for the last 6 months and I'd like to use MC simulation, what do you suggest I should do first?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  4 месяца назад

      Hi, my suggestion on this is always the same. Get the cycle time under control first. For example, if you’re doing 2 week sprints, you want (as a minimum) your 85th percentile cycle time for all completed stories to be 10 days or less. Ideally it wants to be less than that, 5 days or less. If you find that it’s something like 15 days you need to look into the reasons for this. It could be stories are too big, you hadn’t identified dependencies or constraints, there are some handoffs in your process (such as waiting for stakeholders or committees etc). If you don’t get your 85th percentile cycle time under control before using Monte Carlo it’s likely that your forecasts won’t be realistic.

    • @rebe5272
      @rebe5272 4 месяца назад +1

      @@TheAgileLeanGardener Great explanation, thanks!

  • @RickTonoli
    @RickTonoli Год назад +1

    Steve, I had a question regarding datasets and team flux when it comes to running the simulation. I've worked with this current team now for near on 2 years, their "data" that would feed the simulation runs back at least 3 years however the team have changed members, people have left and come on board etc. My question is: which approach would you recommend, adjusting the data set to match the current team, resulting in a smaller data set; just let it run over as much data as possible, assuming any flux in the team would be absorbed and normalised out in the simulation, or some moving window of data of hypothetically 100 data points?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi Rick, great question. We obviously want our simulation to accurately reflect our current team and the way we are currently working so I would use a dataset that as closely as possible reflects that. This will most likely be the latest dataset, I’d go with something like the last 3 to 6 months. I never adjust a dataset for things like holidays as they more accurately reflect the way we work and there will always be holidays. I also don’t adjust for a team member leaving/joining as this also happens relatively frequently. The caveat to this is if there is a seismic change in the team or the way they work, for example half the team left or the way they work changed dramatically (perhaps shifting frameworks). In this case I would most likely reset the clock and start building the data up from scratch. The data you choose must always be the data that most accurately represents the team (now) and how they work (now). Including holidays and a team member leaving/joining is valid as that’s how they work, it’s normal. Hope that helps.

    • @RickTonoli
      @RickTonoli Год назад

      @@TheAgileLeanGardener Definitly does thanks, and lines up nicely with what I was leaning towards.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Coolio 😎

  • @alext3767
    @alext3767 Год назад +2

    This is great information, ... but you're talking so fast and condensed that I can hardly follow. Do you have any video where you explain the steps in a slower pace and easier way for noobs?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi and thanks, I really appreciate that. Ok, my suggestion is to download the template for this (found in the description). Have it open as you watch the video and keep pausing the video (rewind it a bit if necessary) and take a close look in the template. But I do have another video on this which goes at a slightly slower pace which you can find here ruclips.net/video/hQOs5CfkOJU/видео.html

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  15 дней назад

      Hi, no sorry, but if you click the cog icon you can slow the speed down to .75 or .50 which should help, also pause the video and spin back. Also turn the subtitles on, hope that helps.

  • @jameschan7575
    @jameschan7575 Год назад

    Under timestamp 3:28, in Sheet 1 of the template, column B. Just wanted to confirm if you manually count how many stories were completed from your source (Sheet 4) and punched them in? I have hundreds of entries over the previous 10 weeks period and in the meantime I guess I will just manually count them and fill up Sheet 1 Column B :)

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      Hi, no I don’t count them manually I use a pivot table in Excel, you just need your source dates (put a header on then called dates) select the range (including the header) and select insert, pivot table. Then select the pivot table by clicking on it, select dates on the right hand pane and drag data to the rows section and values section - then you can just copy and paste the table. Hope that helps, will save a lot of time.

  • @fakeyPruem
    @fakeyPruem Год назад +2

    please don`t rush through the topics. and please leave out the music or at least turn the volume down. can`t follow you even on 0.75x speed x/

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      Thanks for the tip, I’ll lower the music volume on the next one. I went through this one a little faster as I’d already done a similar one more slowly here ruclips.net/video/hQOs5CfkOJU/видео.html

  • @user-de1kh6ih6x
    @user-de1kh6ih6x Год назад +1

    Is there a way to get the simulation to run in google sheets?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      Unfortunately the important part, the macro needed to run the sim 10k times, is not compatible with Google Sheets otherwise it would work. I don’t think Excel macros will ever be compatible with Google Sheets.

  • @lnelliott
    @lnelliott 11 месяцев назад

    Out of interest, what is the reason for getting your cycle time data if you don't actually need it to do the monte carlo forecasts? Is it simply to ensure the underlying data is in a good enough shape?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  11 месяцев назад

      It just allows you to get your throughput data which is needed for MCS. So if you have your cycle time data you know on which date a work item was completed (throughput).

    • @lnelliott
      @lnelliott 11 месяцев назад

      @@TheAgileLeanGardener Thanks for the quick reply Steve. Sorry for the dumb question but I'm still a bit confused. For the MCS it looks like you're only using the number of stories completed on a certain date. Where does the cycle time factor into that?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  11 месяцев назад +1

      For MCS you don’t need the cycle time itself, you just need your know on what date a work item was completed. But prior to running MCS knowing your cycle time is extremely useful because if you know that your 85th percentile cycle time is, for example, 20 days then you know you have problems that you need to discover and fix. You want that 85th percentile cycle time to be low. Running MCS with having a high 85th percentile cycle time isn’t really a good idea, you want a decent and stable 85th percentile cycle time first.

  • @jameshosker6291
    @jameshosker6291 Год назад +1

    I'm trying to use the spreadsheet to predict how much I'll complete for a given date for my release but it's not working. Even when I put 0 for items complete on date that's in the future. Please help

    • @jameshosker6291
      @jameshosker6291 Год назад

      Essentially not getting a bell curve. I'm enumerating dates from 15th Feb to end of July and putting stories completed on dates in future to 0. Also extending formulas in column c and d down to the row where 31st July is. Help appreciated

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      Hi send me your Excel and I’ll take a look at it over the weekend for you stephen.angood@spa-agile-consulting.co.uk

    • @jameshosker6291
      @jameshosker6291 Год назад +1

      Thanks for the offer of help. I've sent it over and hopefully you can find the issue. Cheers.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      No problem, I’ll take a look at it as soon as I can 👍

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      Hi James, I’ve sent it back to you now, just looks like you hadn’t updated the formula in column b which I’ve done for you now, hope that helps.

  • @ramyag9165
    @ramyag9165 Год назад

    Hello. Thanks for these useful videos! If I am starting a new team with no historical data, I cannot use MCS. Is this right? Until I get some data, should I still go ahead with traditional estimations? Please suggest

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +2

      Hi and thank you, I appreciate that 😊 Yes MCS does require historical data. Personally I wouldn’t estimate at all. That doesn’t mean you don’t discuss the work with the team of course, you still need to do that, you still need to understand the work, break it down, understand complexity, dependencies etc. Then inspect and adapt, take a look at what happened in the last sprint (or time duration if not doing Scrum) and change accordingly. Agree when your cycle time will start and end (for example To Do to Done) make sure the team understand they are responsible for moving their own tickets and start tracking with whatever Agile tool you’re using. After 3 or 4 sprints (or a couple of months if not using Scrum) use MCS to see what it tells you - and - inspect and adapt again. Watch my Scrum Master video for all the other things you need to do to get the most out of MCS as there is a lot more to do than just data mining. Best of luck, shout if you need any help.

    • @ramyag9165
      @ramyag9165 Год назад

      Awesome. Thanks for your quick response. 🤩

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      No problem 😊

    • @ramyagopala
      @ramyagopala Год назад

      @@TheAgileLeanGardener I have been reading the last section of "When will it be done" book by Dan. My ultimate question is: Being in startup - What do I require to answer the question "When will it be done?" I understand we need to follow Kanban and follow Dan's principles of probability. We need to breakdown the work well, Limit WIP etc... Somewhere I am missing the link on how to answer the above mentioned question as the leaders would want to know the timeline.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад

      @@ramyagopala Hi, yes you need to do all of those things but the bit you’re missing is that you must track your cycle time - so as a team decide where that starts and where it ends, it could be ‘To Do’ to ‘Done’ on your Scrum or Kanban board. Then you can use Monte Carlo Simulation to either work out how many ‘stories’ or ‘tasks’ you can do in a single sprint or use it to understand how long it will take you to deliver 100, or 200 or 1000 ‘stories’ or ‘tasks’ - and use the 85th percentile of your results. Daniels book is great but it can take many reads to really understand it. Watch this video and follow it closely to understand the steps needed to say, with an 85% confidence level, when a certain number of ‘stories’ or ‘tasks’ will be done. Hope that helps. ruclips.net/video/hQOs5CfkOJU/видео.html - the other thing to bear in mind is that you need historical data in order to do this. If you have no data then you'll need to start collecting it before you will be able to use Monte Carlo Simulation.

  • @PrzemekBech
    @PrzemekBech Год назад

    Well what is the purpose of this whole exercise? To remove estimation and any thinking of what is to be done before we start doing it? Not really responsible. Estimation is an outcome of exercise to understand what and how is to be done. If you want to plan long term you can use T-shirt size, mid term story points and for sprint hours/days time estimate for tasks for capacity planning. Adjust level of estimation effort to certainty of actually doing the job or the impact of a wrong decisions. So what you describe as meaningless estimation effort is actually not much about estimation itself. Estimates get very easy and quick when you know what you are suppose to do and how you do it.
    What you describe may work mainly for stable ongoing projects without many challenges where you get small, similar in size and complexity tasks. Like maintenance projects or when you add small changes to mature product. Or it could also work for projects where money and timelines are of no concern/issue.
    When you get a big idea to implement you don't get it in small fine grained user stories that take few days to complete. So you don't know how MANY such stories you need to complete to implement the idea and you are not able to predict how much time ill take and if its worth investing time. If you want granularity you are back to spending time to investigate and get to smaller details.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +2

      Hi and thank you for your comments. I respect everyone’s right to their opinion. If estimation is working for you then great. In my experience and in the experience of virtually everyone I’ve ever worked with, estimating work with a view to how big or how long or how much you can do in a given time period does not work. Moreover it is widely regarded as waste. Ron Jeffries apologised on Twitter for ‘inventing story points’ a couple of years ago due to how they were used. As a new team with no baseline, no historical data to use, then yes this approach wouldn’t work as you need historical data. But I would still recommend not estimating - not wasting time on something that will be wrong - gather the data as you learn, inspect and adapt, and then use this method to see what you discover. You will find out far more issues that need attention when you have the data to evaluate than just the cold data that might say you can achieve 10 ‘stories’ per sprint. It doesn’t matter what we call them, stories, PBI’s, tasks whatever. The size or complexity of these ‘tasks’ does not matter, I’ll say that again as it is extremely important, the size and/or complexity of these ‘tasks’ does not matter - that’s the beauty of this method. Anyway, thank you again for your comment, counter opinions are always welcome on this channel.

    • @PrzemekBech
      @PrzemekBech Год назад +1

      ​ @The Agile Gardener Well depends on business you work in. Lets say your product owner has several bigger ideas to be implemented and she needs to decide where the company money will be invested into. She needs to understand value vs cost to prioritize. How can she do this is you do not provide her with information on technical complexity, dependencies and possibly comparable size? Telling her you can do 10 user stories per sprint 85% of the times will not tell her how many user stories are required to implement each idea. How do you deal with such situation?

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      @@PrzemekBech Hi again, you’re missing the point, Monte Carlo Simulation tells you this exactly, it is exactly used for this very situation. Have a look at this video to see if you can see. Otherwise my suggestion is to read Daniel S Vacanti book ‘When will it be done?’ ruclips.net/video/hQOs5CfkOJU/видео.html

    • @PrzemekBech
      @PrzemekBech Год назад

      @@TheAgileLeanGardener I've seen many projects and I do get when this way of thinking works. I also know that this will largely not work for other kinds of projects. I've also seen huge benefits for the project and teams to do estimating. Estimating as an end outcome of analyzing features makes you think about how are you going to approach the problem, what are risks, opportunities, challenges and dependencies.

    • @TheAgileLeanGardener
      @TheAgileLeanGardener  Год назад +1

      @@PrzemekBech Hi again, well, let me ask you, have you actually tried this method? If you don’t experiment you don’t find new, possibility better ways of doing things, you could almost say inspect and adapt ;-) I’d urge you to read Daniel S Vacanti’s book, ‘When will it be done?’ as it answers a lot of your questions / concerns. Over the years I’ve tried every type of estimation/forecasting you can think of. One thing I’m absolutely sure of is that providing leadership with ‘estimates’ (apart from always being wrong) is one of the root problems in our industry and leads to undue stress, pressure and a lack of well being. Anyway, I’m not trying to convince or coerce you, I’m just presenting my opinions on what I’ve found to work. Thank you for at least watching the video and commenting, at least you’re aware there are other ways of doing this now which you can have in your tool box if you ever need them. Best of luck.