top of page

Search Results

48 items found for ""

  • All Models Are Wrong. Some Are Random.

    Disclaimer: This post is for those who really like to geek out on the inner workings of Monte Carlo Simulations. If you are not interested in the inner workings of these simulations, hopefully, you will find our other blog posts more to your liking! Have you ever wondered why we choose to implement Monte Carlo Simulations (MCS) the way we do in ActionableAgile™️ Analytics (AA)? Before we get too deep into answering that question, it is worthwhile to first take a step back and talk about the one big assumption all Monte Carlo Simulations in AA make and that is that the future we are trying to predict roughly looks like the past we have data for. For example, in North America, is it reasonable to use December's data to forecast what can be done in January? Maybe not. In Europe, can we use August's data to predict what can be done in September? Again, probably not. The trick, then, is to find a time period in the past that we believe will accurately reflect what will happen in the future we want to forecast. If you don't account for this assumption, then any Monte Carlo Simulation you run will be invalid. The big assumption: The future we are trying to predict roughly looks like the past we have data for. Let's say we do account for this assumption, and we have a set of historical data that we are confident to plug into our simulation. The way AA works, then, is to say that ANY day in the past data can look like ANY day in the future that we are trying to forecast. So, we randomly sample data from a day in the past (we treat each day in the past as equally likely) and assign that data value to a day in the future. We do this sampling thousands of times to understand the risk associated with all the outcomes that show up in our MCS results. Each day in the past is treated as equally likely (to happen in the future.) But let's think about this for a second. We are assigning a random day in the past to a random day in the future. Doesn't that violate our big assumption that we just talked about? In other words, if any day from the past can look like any day in the future, then we could presumably (and almost certainly do) use data from a past Monday and assign it to a future Saturday. Or we use data from a past Sunday and assign it to a future Wednesday. Surely, Mondays in the past don't look like Saturdays in the future, and Sundays in the past don't look like Wednesdays in the future, right? Doesn't this mean that we should refine our sampling algorithm and make it a bit more sophisticated in order to eliminate these obvious mistakes? I.e., shouldn't we have an algorithm that only assigns past Mondays to future Mondays or past Sundays to future Sundays? Or even just assign past weekdays to future weekdays and past weekends to future weekends? Well, Prateek Singh did just that when he tried different sampling algorithms for different simulations, and the results may surprise you. I highly encourage you to read his blog here as it is the more scientific justification for why we use the sampling algorithm that we do in AA. I don't want to ruin the surprise for you but (spoiler alert) with AA, we chose the best one. Happy Forecasting! P.S. For a much more robust treatment of the actual MCS algorithm, please see my book "When Will It Be Done?" or my self-paced video class on Metrics and Forecasting in the 55 Degrees Community. About Daniel Vacanti, Guest Writer Daniel Vacanti is the author of the highly-praised books "When will it be done?" and "Actionable Agile Metrics for Predictability" and the original mind behind the ActionableAgile™️ Analytics Tool. Recently, he co-founded ProKanban.org, an inclusive community where everyone can learn about Professional Kanban, and he co-authored their Kanban Guide. When he is not playing tennis in the Florida sunshine or whisky tasting in Scotland, Daniel can be found speaking on the international conference circuit, teaching classes, and creating amazing content for people like us.

  • Applying Flow Metrics for Scrum

    Are you using ActionableAgile™ in a Scrum context? Well, good news! Our friends at ProKanban.org have just published a class called "Applying Flow Metrics for Scrum." While this class is technically tool agnostic, you will learn much about how to get the most out of ActionableAgile™ while using Scrum. To learn more, please visit https://prokanban.org/applying-flow-metrics-for-scrum/ Happy Forecasting! About Daniel Vacanti, Guest Writer Daniel Vacanti is the author of the highly-praised books "When will it be done?" and "Actionable Agile Metrics for Predictability" and the original mind behind the ActionableAgile™️ Analytics Tool. Recently, he co-founded ProKanban.org, an inclusive community where everyone can learn about Professional Kanban, and he co-authored their Kanban Guide. When he is not playing tennis in the Florida sunshine or whisky tasting in Scotland, Daniel can be found speaking on the international conference circuit, teaching classes, and creating amazing content for people like us.

  • Managing Work Item Age in ActionableAgile

    Work Item Age is the elapsed time since the work item started. It is one of four key flow metrics alongside Cycle Time, Throughput, and WIP. Of the four flow metrics it is, arguably, the most important because controlling age is a key way to improve process predictability. ActionableAgile provides a feature-rich Aging Work in Progress chart to help you measure and control Work Item Age. The Aging Work In Progress Chart The Aging Work in Progress chart is a lot like a visual board as the columns reflect your workflow stages and the items show as dots in the appropriate column. The vertical placement of the dot reflects the items Work Item Age. A dot may reflect more than one work item if they are in the same workflow stage and have the same Work Item Age. How to use the chart to manage Work Item Age Only while an item appears on this chart can you exert any control over where it will end up in your Cycle Time data. If you look at the last column of this chart you will notice that there are no work items represented. When an item reaches this workflow stage, it is complete and appears as historical data on your Cycle Time Scatterplot instead. Nothing you do now can change how long it took to complete that item. Because you use Cycle Time data to answer “How long will it take?” for a single work item, Work Item Age should be a key consideration when making your plan for the day. But, knowing the age of a work item isn’t enough information on its own. In order to know if the age of a work item is bad, good, or indifferent you need context. ActionableAgile overlays percentile lines from the Cycle Time data to add this context right where you need it. In the image above below you can see that 85% of past items have finished in 16 days or less. Now, you can keep that in mind as you track work items and make daily plans. If you want to maintain that level of predictability, you’ll need to continue to finish 85% of work items in 16 days or less. Getting early signals of slow work It's easy to know if an item near the end of the workflow is in danger of finishing beyond the desired age. Knowing that about items early in the workflow is more difficult. ActionableAgile’s pace percentiles help provide early signals that work is moving at a slower pace than past work. Learn more about the Aging Work in Progress chart and the various chart controls in our product documentation. In Summary... If you can only measure and manage one thing, make it Work Item Age. At its core, Work Item Age is a process improvement metric. When you see items aging more than expected, you can experiment with tactics to see if they help. There is no single fix but common tactics include limiting WIP, controlling work item size, reducing dependencies, and more. Once you manage Work Item Age, your Cycle Time data should stabilize and make forecasting easier! Excited to explore flow with your team? Try ActionableAgile for free today and reach out if you need any help via our support portal.

  • Analyzing WIP in ActionableAgile

    WIP (or Work In Progress) is a flow metric that tells us how many work items are in progress at any given time in any process - that is items that have started but not yet finished. Once you know how to measure WIP, you will want to start analyzing the data. There are three charts in ActionableAgile that provide insights into current and past WIP levels. WIP Run Chart Aging Work in Progress Chart Cumulative Flow Diagram WIP Run Chart The WIP Run Chart is a line chart that shows the number of items in progress per day across time. With this ability to clearly see how WIP levels change over time, you can get early signals of changes in Cycle Time and Throughput - for better or worse! This allows you to have better conversations about the impact of WIP on your process. Learn more about the WIP Run Chart in our product documentation. Aging Work in Progress Chart Another chart where WIP can be seen is the Aging Work in Progress chart. The primary purpose of this chart is to analyze another flow metric, Work Item Age, but you can also calculate WIP for the day being viewed. While you can click on a dot in the WIP Run Chart to see which items were in progress on a given day, this chart allows you to see more details about the WIP from any given day in greater detail. From here you can see what workflow status each work item is in as well as the age of each work item. On this chart you can use Aging Replay control to see this information about WIP for any day reflected in your data. Learn more about the Aging Work In Progress Chart in our product documentation. Cumulative Flow Diagram The final chart that provides insight into WIP within ActionableAgile is the Cumulative Flow Diagram. This chart provides a visualization of the interplay between WIP, Cycle Time, and Throughput. The height of the color bands in the CFD show you an actual count of items in each workflow stage on any given day. You can use the chart’s WIP Tooltips control to show WIP by stage, or collectively as a system, as your cursor moves through the timeline. By looking at the thickness of the color band(s) over time, you can see how WIP changes and the correlating change in Approximate Average Cycle Time and Average Throughput. You may even be able to help determine good WIP limits by looking how much WIP you had when Throughput and Cycle Time were ideal. Learn more about the Cumulative Flow Diagram in our product documentation. In Summary... There are many ways to learn about the WIP in your process with ActionableAgile. So, here are our suggestions: Use the WIP Run Chart for seeing how your WIP changes over time. Use the Aging Work in Progress Chart to learn more about the WIP from any given day. Use the Cumulative Flow Diagram to see how WIP interacts with other flow metrics and decide on any adjustments you might need to make in your WIP levels. Excited to explore flow with your team? Try ActionableAgile for free today and reach out if you need any help via our support portal.

  • Analyzing Throughput in ActionableAgile

    Throughput is a flow metric that tells us about the rate work items are finished in a given process. ActionableAgile has multiple charts that can give you information about your Throughput: Throughput Histogram Throughput Run Chart Cycle Time Scatterplot Cumulative Flow Diagram The first two are specifically made to relay information about the Throughput of your process. The last two happen to tell us throughput as a byproduct! Want to learn more about Throughput in general? Check out our "What is Throughput?" blog post. To learn more about these four charts in ActionableAgile, keep reading. Histogram The Throughput Histogram is a bar chart that displays how often you experience certain daily Throughput – in other words, the frequency of Throughput values. You can use the histogram to see what throughputs are most likely for ONE given instance of your time unit - one day or one week, etc. This is often not sufficient enough for forecasting across multiple instances of your time unit (multiple days, weeks, etc.). Read more about our Throughput Histogram in our product documentation. Run Chart The Throughput Run Chart is a line chart that shows you the variation in your Throughput data over time. This is, hands down, the best chart to use for straight Throughput analysis because of the time axis. We believe that all time-based metrics are best analyzed on a time-based chart. Time-based charts allow you to see patterns in your data over time and ask questions to learn more about how your team worked and why. You cannot discern this pattern-based information in a histogram. Read more about our Throughput Run Chart in our product documentation. Cycle Time Scatterplot The purpose of the Cycle Time Scatterplot is to tell us all about a different flow metric called Cycle Time. However, as the Cycle Time Scatterplot has data points representing all finished work across a time axis, we can look at those points and indirectly calculate Throughput values. In the Scatterplot, you'll toggle on the Summary Statistics box via the Chart Controls. In the example above, you can see that 305 work items were completed in 106 days. As you use other chart controls, including the date or item filters, the summary statistics will update so at any given time you see the total throughput for a set number of days. You do not see how the throughput values change over time as you do in the Run Chart. Read more about our Cycle Time Scatterplot in our product documentation. Cumulative Flow Diagram The Cumulative Flow Diagram is a stacked area chart that is built by adding information from a daily snapshot of your process each day. One of the things you can see in the Cumulative Flow Diagram is how many items left one part of the process and entered the next part. Because Throughput is defined as the number of items that finish in a given unit of time, you can get Throughput information by looking at how area band that denotes your "finished state" is changing over time. However, the CFD doesn't provide this information for you at a glance. That's what the Throughput Run Chart is for. The other related information you can get from the CFD is the average throughput, also known as the average departure rate. You see this by turning on the rate lines. Read more about our Cumulative Flow Diagram in our product documentation. In summary... There are many ways to learn about the Throughput of your process in ActionableAgile. So, here are our suggestions: Use the Throughput Run Chart for seeing how your Throughput changes over time. Use the Cumulative Flow Diagram to see how Throughput interacts with other flow metrics. Finally, use Monte Carlo simulations that work with your Throughput data to forecast efforts containing multiple work items. Excited to explore flow with your team? Try ActionableAgile for free today and reach out if you need any help via our support portal.

  • What is probabilistic forecasting?

    A probabilistic forecast is one that acknowledges a wide array of possible outcomes and assigns a probability, or likelihood of happening, to each. This makes it the perfect method for forecasting in uncertain situations like at work! What makes a forecast probabilistic? Every probabilistic forecast should have 2 components: a range and a probability. In the image above you see that there's a 15% chance that it will rain sometime between 12:00 and 13:00. It's not saying that it will rain the entire time. Just that, there's a 15% chance that sometime in that hour you will experience some rain. This also means that there's an 85% chance that you won't. What data is needed for probabilistic forecasting? When it comes to probabilistic forecasting at work, you're usually trying to answer one of these questions: When will this piece of work be done? aka How long will it take? (Single work item) When will this collection of work be done? (Multiple work items - fixed scope) How much work can we complete by a specific date? (Multiple work items - fixed date) To answer these questions you need to know some basic information about your past work: when each item started and when it finished. With this minimal data you can learn a lot about your system and what it can produce. Keep in mind this underlying rule of thumb: the conditions you had when you generated that data need to be roughly similar to the conditions you expect for the period you're forecasting. When you do this, you can use your data to forecast what is likely to happen in the future. How do I forecast an individual work item? To know how long it is likely to take for an individual piece of work to be completed, you want to look at how long it has taken you to complete work in the past. This data is called your Cycle Time. You can look at this data on a Cycle Time Scatterplot to quickly see what percentage of item finished in a certain range of time. The percentage you choose becomes your probability (component 1) and the range (component 2) is all the possible cycle times up to and including the line. You can see from the data above that 85% of work items finished in 16 days or less. You can turn that into the following probabilistic forecast: There's an 85% chance that you'll finish a work item in 16 days or less. By the way, this means from when it starts! What about larger efforts? If you need to provide a forecast that includes more than one item you can't just add individual forecasts together. You need to understand the rate at which you finished work in the past. Fortunately, that's exactly what the flow metric called Throughput tells yo. However, it is not as easy as looking at your Throughput data on a chart as you can with Cycle Time. If you use the Run Chart for this you can only look at what's likely to happen for one time unit. For most of your forecasts we'll need more than one of those. 😃 So, in these situations you can use a tool called a Monte Carlo simulation. (Learn more about Monte Carlo simulations) How do I forecast for a fixed scope? Sometimes you're trying to find out when a specific amount of work can be completed. That's what we call a fixed scope forecast. Entering a start date and the number of items you have in scope into a Monte Carlo Simulation can help you see how likely you are to finish that scope of work on any given day and it can tell you the probabilities of a range of outcomes using your data. For example, from that data in the image above you can say "There's an 85% chance that we'll finish this scope of work on or before May 11th". If that's not ideal you can look to other dates to see how likely they are and then have conversations about what you'll need to do to make that more likely or, perhaps, have discussions about changing expectations to be more realistic. How do I forecast for a fixed date? If you're working towards a fixed date rather than a fixed scope, the process is almost exactly the same but with one tiny twist. Instead of providing the number of items you have in scope, you provide your fixed date as a finish date. Now it can tell you how many items you are likely to finish by that date with any given probability. With the data from the image above, I can provide a probabilistic forecast: There's an 85% chance that we can finish 66 or more items by August 18th. Can I forecast my portfolio probabilistically? Probabilistic forecasting can be applied at a portfolio level using the same concepts but with some different tooling. At 55 Degrees, we forecast our portfolios using Throughput data and Monte Carlo simulations as explained above but there's an added consideration of how many multiple efforts we have happening concurrently alongside our Throughput and our chosen probability. Our simulation provides information such as how likely we are to finish a given effort by a fixed date and when we're likely to finish based on what remains in the effort and our recent throughput. Learn more about our Portfolio Forecaster here. Forecasting is not a one-time affair Meteorologists don't just give you a forecast for an upcoming storm when they first hear about it and then leave you without updates, right? You don't check your GPS before you leave to find out how long it will take and then shut it off do you? No, of course not. That would be silly. You'll absolutely want to re-run your forecasts regularly to see how they are affected by current conditions. This ensures that you find out any shifts as early as possible and minimize late surprises. (Help us make #continuousforecasting trend!) What are the benefits of probabilistic forecasting? Simply put, probabilistic forecasts are more inexpensive than traditional methods requiring expert estimation and work breakdown because they take very little time. Because they are cheaper, it is easier for you to provide those needed updates to your forecasts! Probabilistic forecasts are also more accurate because your data already accounts for factors that we struggle to incorporate into our estimates. Read about the German Tank Problem for an example of this. Cheaper. More accurate. No-brainer! In fact, as long as we are winning on even just one of those (and not sacrificing too much of the other) then it is worth a switch. But, you don't have to take anyone's word for it. It's easy to start doing probabilistic forecasting alongside whatever methods you traditionally use. That way you can see for yourself what works better for your context. Want to get started? You can do all of these forecasts by hand (or with excel). However, it might get a bit tedious. So, of course, 55 Degrees has an app for that and you can try them out for free for at least 30 days (or more depending on your platform). Check out ActionableAgile and Portfolio Forecaster today and reach out to us if you have any questions! Frequently asked questions Does all my work need to be the same size? Many people think that probabilistic forecasting won’t work for them if their work is varied in type or size. Your work doesn’t have to be the same size at all for this to work. Obviously, variation will cause the spread of possible outcomes to be wider. If you're not happy with the spread in the range, you can work to improve your process predictability. This will require you to consider many things about your process, one of which may be right-sizing work. However, if the data that goes into the Monte Carlo simulation reflects the variety of your work, the generated forecasts will reflect that variety as well. In fact, your data does a better job at reflecting all of the variety across the various conditions that impact your data than you ever could on your own! My forecast was wrong! What gives? The words “right” and “wrong” when it comes to forecasts should be re-evaluated. Using the language of probabilities reminds us that something unexpected can happen and disrupt our desired timelines. In truth, the only things we can be certain about are the things that have already been delivered. Outside of that, there is no 100% in a probabilistic forecast. If we said there was an 85% chance we would deliver work in 13 weeks or less and it took us 15, it doesn’t mean that we were wrong. We stated upfront there was a 15% chance that work would take longer. OK, am I really ready for probabilistic forecasting? Yes! Any team, even new teams, can use this type of forecasting. This feels like an advanced concept but it really isn’t. It’s just very different than what we’re used to. Don’t have historical data? Use estimates until you finish some work and then switch to using historical data.

  • What is a Cycle Time Scatterplot?

    The Cycle Time Scatterplot chart is arguably the best way to view your Cycle Time data - the total elapsed time it took for individual items to move from one point of your workflow to another - usually from start to finish. Why is it the best? Because Cycle Time is all about time and the Scatterplot lets us see Cycle Time data in the context of time. The position on the horizontal axis tells us when the item was finished and the position on the vertical axis tells us how long the item(s) took. What can I learn from this chart? First and foremost, you can find the cycle time of an individual piece of work You can also see at a glance if your cycle times are getting more or less predictable by looking to see if the range of Cycle Times is increasing or decreasing You can see how long it took to complete work items in the past and use that to realistically forecast expectations for how long a work item may take to complete in the future. You can use this information to set a Service Level Expectation (SLE) for your team. This can be useful as an internal team metric to use in the context of current work item age to help maintain or improve predictability for the future. Additionally, you can learn about your process and the work that goes through it by exploring the clustering patterns of dots as well as the empty space on the chart. Asking questions about why the chart looks the way it does helps you learn about the impacts of certain decisions and events so you can make better decisions in the future. The Cycle Time Scatterplot in ActionableAgile The Cycle Time Scatterplot is the chart that you land on when you load ActionableAgile because it is the one that most people begin with on their journey to better flow. To learn more about how to use the Cycle Time Scatterplot in ActionableAgile you can watch our chart demo video below or read the chart documentation located on our support site. Excited to explore flow with your team? Try ActionableAgile for free today and reach out if you need any help via our support portal.

  • Monte Carlo Simulations and Forecasting

    When you hear Monte Carlo you probably have thoughts of the Formula One Grand Prix and extravagant casinos. At 55 Degrees, when we talk about Monte Carlo Simulations we are talking about forecasting. 🤓 What is a Monte Carlo Simulation? Here's a great definition from Investopedia Monte Carlo simulations are used to model the probability of different outcomes in a process that cannot easily be predicted due to the intervention of random variables. It is a technique used to understand the impact of risk and uncertainty in prediction and forecasting models. (Investopedia) Monte Carlo simulations are widely used in many industries whenever uncertainty exists. Investment firms use them to project potential earnings across different investment options. Insurance companies use them to forecast risk in different populations or areas. Companies like yours can use them to forecast when you'll finish a group of work! Simulations help make sense of uncertainty Rarely can you give someone a forecast and be absolutely, positively certain that you'll be right. There are just too many uncontrollable factors that can get in the way. When we are uncertain about something, one way to learn more is to run experiments. Are you unsure how likely it is that a flipped coin will land on heads? To find out, you can flipping it over many times and use the results to calculate the likelihood. Do you need to know how long it will take to complete a specific work item? You can use your past cycle times and calculate how long it's likely to take. Do you need to know when you'll finish a group of work instead of a single item? That's a bit more complex! Instead of manually doing groups of work repeatedly in real-time, we use Monte Carlo simulations to simulate doing the work thousands of times. Fortunately, it only takes seconds! Two questions you can answer When you're forecasting with Monte Carlo simulations you're likely trying to answer one of these two questions: When will this specific number of work items be completed? (Fixed scope) How many items can we complete by this specific date? (Fixed date) Projects aren't the only situations that require us to answer these questions. You may need to forecast when you'll get to an item that's near the top of your backlog or you may need to help decide how many items to plan for in your upcoming Sprint. I'm sure you can think of more if you stop and think! Running a Monte Carlo simulation To run a Monte Carlo simulation you'll need to provide a few things: A start date - Just as your GPS can't tell you when you'll arrive without knowing when you'll be leaving, the Monte Carlo can't tell you when you're likely to be finished if you don't provide a start date. Throughput data - The simulation samples real Throughput data to project how much you might finish on each day of every trial run by the simulation. There are thousands and thousands of these trial runs in each simulation. The outcome of each of those trial runs is recorded and allows you to calculate the odds of what might happen in the future. The fixed aspect - This is the desired end date when you have a fixed date or the number of items when you have a fixed scope. Using the results to create a forecast The tool you use for running the simulations controls how the results are presented. No matter how it is presented, it should provide you with the tools to create a probabilistic forecast - something like "There's an 85% chance that we'll finish in on or before August 4th." or "There's a 90% chance that we can do 15 or more items by ." Like those above, every probabilistic forecast should have two pieces of information (shown in bold above): a probability a range of outcomes The results can be shown in various ways depending on the tool you use. Here are two that we use in ActionableAgile: Histogram view - this is what you might think of as the raw data view. It shows the different outcomes that happened and the number of times each one happened. With this chart, it is quite simple to calculate probabilities. To find the 50% line, simply find the place where 5000 trials have taken place and then draw a line. For 85%, keep going until you find 8500 trials and do the same. Calendar view - this is a user-friendly view of the information in the histogram. This view makes it simple to talk about other dates what it might take to change the odds of hitting those. Considerations to keep in mind Monte Carlo simulations only factor in conditions that were present when you generated your historical data (team size, skill set, work policies, etc.). If those conditions significantly change, you'll need to generate new data under the new conditions in order to have reliable forecasts using Monte Carlo simulations (as you would with any forecasting method that uses historical data). Monte Carlo simulations often use random sampling of your historical data during the trial runs. When this is the case, as it is with our products, this means that every data point is as likely to be randomly selected as another. If you deliver 0 items most days, then most days in the simulation are likely to also have 0 delivered. In other words, you can deliver 10 items in the span of a week, but it matters how predictably those are distributed. You'll get better results if you work to have a more consistent delivery of a couple each day than aiming to deliver nothing for 4 days and 10 items on the fifth. To improve your predictability, and the resulting forecasts, focus on reducing Work Item Age. Want a tool to help you get started with Monte Carlo Simulations? You've definitely come to the right place. 55 Degrees offer two different products that use Monte Carlo Simulations to provide forecasts: Portfolio Forecaster for Jira and ActionableAgile (available as a SaaS app or embedded in Azure DevOps and Jira). In ActionableAgile you can use Monte Carlo Simulations to provide forecasts for fixed scope and fixed date efforts. Portfolio Forecaster uses Monte Carlo simulations to forecast your Jira Epics or Versions, taking into account how many are in progress at one time and your historical Throughput. Start now by trying either product for 30 days at no cost. We're always here to support you if you have any questions. Happy forecasting!

  • What if there is no right or wrong?

    Sometimes you need to change your approach When I watch the news, read social media, or listen to arguments about how to do something, I am struck by how far we’ve gone into the land of right vs. wrong. Unfortunately, it doesn’t feel like we’re just passing through. Instead, it seems we’ve built permanent structures and are settling in for the long haul. An example: U.S. Politics To understand what I mean, you need to look no farther than the US political scene. In a two-party system, there is meant to be a constructive conflict between adversaries that results in largely beneficial outcomes for the citizens the two parties serve. Working through the merits of different viewpoints allows people to come to better solutions for tricky questions like “How much should the government spend on social services?” or “When should the federal government make laws vs deferring to state government?” Unfortunately for U.S. citizens, the adversaries have transformed into enemies. Instead of constructive conflict with productive results, we now have regular battles to see which party can come out on top. The topic seems to matter less and less as time goes on… the language is usually about winning instead of serving the citizens. Policy making in America is approaching all-out war, where victory is paramount, “compromise” is a dirty word, and virtually any issue or development can become a weapon for bludgeoning the other side. David A. Moss, Harvard business review, march 2012 issue Ironically, when you lose sight of the goal you are trying to achieve and focus on the act of winning at all costs, everyone ends up losing in the long run. The citizens lose first, then the politicians lose when the citizens are tired of losing. Battlefields exist at work too Unfortunately, this problem isn’t limited to politics. We see this behavior in organizations as well. It is common to see departments focus on their needs and desires at the cost of overall business outcomes. Consider the time you’ve spent in discussions about prioritization at work. When is the last time you came out feeling as if everyone could accurately and selflessly compare their request amongst all the rest? I am guessing the answer is “Not often” or “Never.” We see methodological ideologists bash ideas without any recognition of the struggle that led to its creation, what it might be trying to achieve. If you have no idea what I’m talking about, just search for posts about SAFe on any social media outlet. Most of the detractors have valid points at the core of their arguments, but I’d wager a bet there is a correlation between the level of vehemence in their arguments and their blindness to anything that might be good in SAFe. Methods aren’t alone in being a target. We do this with tools as well. Everyone has tools they love to hate so much that they can no longer recognize any value that it might actually provide. Jira seems to be the most popular target these days. Let’s face it, we do need to know the downsides of the things we love. Knowing the limitations of a thing helps us use that thing properly. But the inverse is true also. If you are going to be a detractor of something, understanding the value it might bring to specific contexts is important to recognize. If you are going to be a detractor, its best to be specific about the context you are speaking from. Is it just one specific context you have a problem with or are you convinced that this thing is bad in all contexts? In the long run, we don’t serve the public with tweetable, snarky quips. We serve them with a reasoned, minimally-biased look at whatever we are commenting on. What we need is a balance We can’t wait for someone else to act to begin to restore sanity. We all have a part to play. It starts with realizing that “not everything is a problem to be solved, some things are situations to be managed,” as Barry Johnson says in his book Polarity Management: Identifying and Managing Unsolvable Problems. This means that there is not always a right or wrong. Sometimes there is only a balance to be found between two opposing, yet valuable, forces. In Sweden, we call this balance Lagom and it is something that we have to discover in each specific context. When I first started thinking about this I began creating a Spectrum Thinking Worksheet to help people identify what balance looks like. It includes writing down the following info: The opposing forces (extremes) at play Why it is important to balance them The value that each brings The negative consequences of over-focusing on one extreme What it looks like when you get it just right One of the things I want to help people realize is that balance doesn’t mean settling for average, or splitting the difference. Finding lagom means finding the place of contentment or equilibrium. This balance should be sustainable. And, like with a fulcrum, where you find this balance is highly dependent on the makeup of the forces at the poles. It may be heavily weighted towards one side or another, depending on your context. If you explore the same spectrum in two different contexts you will likely find that lagom looks different in each. Keeping your balance Once you have explored the spectrum between, and including, two extremes, a Polarity Map helps us visualize how these forces are really interdependent pairs. How, if you over-focus on one area, hoping to achieve the positive effects, you can tumble out of balance into the negative consequences you were working really hard to avoid. I was really excited to find this concept of polarity mapping as it overlaps quite a lot with my work on finding Lagom. Like with our Spectrum Thinking Worksheet, polarity mapping asks you to identify: early warning signs that you are getting out of balance. action items that you can and will take if the early warning signs you anticipated start to appear. But, thinking through where Lagom is on a spectrum gives you some particular insights about balance that you might not get using polarity maps alone. Using one or both of these tools will help you switch your default from binary thinking to spectrum thinking and understand how to find a balance between two valid, yet opposing viewpoints. Getting Started Don’t wait for someone to make the first move. It is up to us to bring sanity back to our lives. Perhaps your move will inspire others or show them how to make a difference. Identify a situation in which you’re being too dogmatic or ideological, to the detriment of your well-being or that of those around you. Then, use the Spectrum Thinking Worksheet alongside a Polarity Map to a) articulate the value of the opposing perspective, b) explore the spectrum between and determine what balance looks like, and c) anticipate early warning signals of falling out of balance and action items you’d take to get back to lagom. I would love to hear from you if you are using the Spectrum Thinking Worksheet and/or Polarity Maps. How have you struggled? How have you benefitted? Please share with us via our contact form.

  • Is it time to get rid of all the managers?

    A presentation at the Øredev developer conference in Malmö When I was a manager, I wanted to make a difference. A positive one. As a consultant, I work with managers who have the same goals. I’ve not yet come across anyone who wants to ruin everything (fortunately). When I started hearing the rhetoric about getting rid of the managers years ago, I was startled. Was I part of a huge problem that I didn’t even know existed? This question led me on a journey that had me studying the history of management and what people really thought of my past performance. I shared part of that learning in a talk at Øredev in Malmö, Sweden a couple of weeks ago. There is so much more to talk about on this subject that couldn’t fit in the talk. Please watch and let’s chat about your thoughts and experiences!

  • Velocity alone doesn’t measure success

    Neither does Throughput Many scrum teams use a metric called velocity as their primary metric. Velocity is commonly defined as the number of story points you finish over time, usually measured by sprints. The input of story points are assigned by scrum teams, often using the Fibonacci sequence, to pieces of work based on their relative complexity. A simple piece of work might be assigned 1 story point while a really complex piece of work could be assigned 13 points or more. A team’s velocity would represent how much complexity reached their definition of done in a given sprint. Measured from sprint to sprint, it becomes a sort of gauge of success. If it stays the same or goes up, that’s great. If it goes down repeatedly, there’s a problem that needs to be investigated. Teams using Throughput, another rate metric that counts the number of individual work items delivered instead of relative complexity, do the same. They measure throughput from across time periods, often sprints, and use it to determine their success is increasing, staying stable, or waning. No single metric defines success Unfortunately, success is more complicated than that and it can rarely if ever, be measured with a single metric. Most teams and organizations don’t just want to deliver things. They want to deliver good quality things and deliver them quickly on top of regularly delivering things. If you don’t see a distinction, let me share the story of a team I started coaching in 2019. This HR team came to me with a (perceived) Scrum process in place. They were using 2-week sprints for planning and retrospecting. But, they were still completely overwhelmed and unhappy. Though it could be higher, their throughput at least looked pretty consistent. To dig deeper, we looked at their Scrum board. The good news is that they understood their workflow. Their board had columns representing their entire workflow from planning to delivery. The bad news? It was chock full of work items. They were close to the end of their sprint yet many items were still in the sprint backlog. Despite the obvious fact that many of the items planned for the current sprint would not be finished by the beginning of their next sprint, they had already filled up the planning column for their upcoming sprint. Looking from multiple angles gives you a well-rounded picture In the end, it was clear that they suffered from a “too much WIP” (work-in-progress) problem. They started so much work that everything took much longer to finish than it would have needed if they had just started less work at one time. This was something we noticed almost immediately when we looked at a metric called Cycle Time. This is a measure of how long it takes a piece of work to be completed (you can define your start- and end-points for this metric). Using a chart called a Cycle Time Scatterplot, we could see that 85% of their work took up to 35 days to complete, while the remaining 15 took even longer! Now, remember their sprints were 14 days long. Houston, we have a problem! This team had unfortunately settled into a pattern of delivering a consistent number of work items — but they were very old work items. They hardly ever finished work items within the same sprint they were started in. By adding the Cycle Time metric to our arsenal we were able to get more insight into what was happening, find a problem, and start experimenting with solutions. In Summary The moral of the story is that one metric can be misleading at best, but it can be immensely harmful at worst. If you were to optimize for one metric without keeping an eye out for unintended consequences, you could end up causing bigger problems than you had when you started. When measuring team success, try to consider multiple aspects of success and establishing measures to represent each. Then look at them together so if you see one improve, you can make sure a negative impact didn’t happen elsewhere. For the curious, here’s what came next for our HR team: We identified 3 major things that would help this team improve their Cycle Time metric, and maybe even their Throughput metric too: Break work items down into smaller valuable pieces. Many of the items took so long because they simply had too many deliverables in them. Many process dysfunctions can be helped by breaking work down. Remove board columns that weren’t necessary. Every board column is a place to store more work-in-progress. There’s always a balance to be struck but it is ok to get rid of columns if they cause more pain than gain. This also meant we talked about not planning too early. Implement WIP limits. Using Velocity or Throughput as a planning tool for a sprint provides a WIP limit for your sprint backlog in that you limit the number of items you allow into a sprint. However, in a sprint, limiting the number of items you start at one time can often cause items to finish earlier and at a steadier pace throughout the sprint.

  • Want to succeed? Start by accepting uncertainty.

    In business, the quest for predictability is universal. We all want to grab hold of the reality we face everyday and, somehow, bend it to our will. When we are surprised by the unexpected, we often assume that we have failed in some way. We have this underlying belief that if we just do our job well enough, we can prevent any and all surprises and that success will follow. Unfortunately, that’s nothing more than a nice fairy tale. In real life, we have no hope of overcoming all uncertainty — zero. Instead, we must begin to accept it and learn how to operate, even thrive, within it. But we can’t do any of that if we don’t try to understand it. Stephen Bungay, the author of The Art of Action, helps us understand the shape of our uncertainty by expressing it via something he calls “the three gaps.” These gaps are places where uncertainty shows up: The Knowledge Gap: the difference between what we’d like to know and what we actually know. This gap occurs when you’re trying to plan, but often only manifests when you are trying to execute the plan. Often, we try to combat this gap, not by doing something different than before, but by doubling down on what we’ve already done. In other words, we just didn’t do it well enough the first time. So, instead of accepting that we may never know everything we’ll need to know up front, we double down on detailed plans and estimates. The Alignment Gap: the difference between what we want people to do and what they actually do. This gap occurs during execution. Like with the knowledge gap, we try to fix it by doubling down. In this case we double down on providing more detailed instructions and requirements. We are quite arrogant in our thinking and believe that if we can just be more thoughtful and more detailed, we can prevent all surprises. The Effects Gap: the difference between what we expect our actions to achieve and what they actually achieve. This gap occurs during verification. We don’t often consider that, in a complex environment, you can do the same thing over and over and get different outcomes despite your best efforts. Instead, we think we just didn’t have enough controls. We are stubborn to the point of stupidness and continue to think that we can manage our way to uncertainty. A most excellent example of how we like to try to overcome the gaps! by Jim Benson The ugly truth By reinforcing the idea that you can control your way to certainty, you aren’t teaching people how to be resilient and how to operate despite what comes their way. This means that when surprises do sneak through, people will be woefully unprepared and, more often than not, efforts will start to veer towards blaming the responsible party instead of figuring out a way forward. The ugly truth that we all must face is that, in complex environments like software development, healthcare, social work, product development, marketing, and more — we will never defeat uncertainty. To be honest, we wouldn’t like what would happen if we did. It would be the end of learning and innovation. So, what now then? While we have to accept that some uncertainty will always remain, we can try to tackle the low hanging fruit. For instance, we don’t abandon all research or planning. We just accept that things may not always go to plan and have an idea of how we’d react when uncertainty pops up. When I managed the web development team for NBA.com, we would run drills for our major events like the Draft and walk through scenarios like “What happens if a team drafts someone we don’t have a bio for?” and “What will we do if our stats engine breaks down?”We accepted that because we can’t control everything, the skill that we really need to survive in business is resiliency. We needed to learn to anticipate, react and recover. We learned how to think about resiliency and build it into our work processes, not just our technical systems. So, if you are finally getting to the point of accepting that you can’t conquer uncertainty, the next mission is to begin to build the skills of resiliency. There is no comprehensive list of ways to become resilient but I’ll share a few things I use while working in an uncertain environment. The Agile Manifesto The Agile manifesto is an excellent embrace of uncertainty and a pushback against our natural tendencies when reacting to Bungay’s three gaps. While there is a place for plans, documentation, contracts, and processes they are not the only, or even most important, things we need to excel in uncertain environments. The Scrum Framework One of the biggest benefits to the scrum framework is that sprints act as a forcing function to work in small batches. If you work in a smaller batch you notice the gaps more quickly and, if you fall prey to those natural tendencies to double down on instruction and planning, you’ll do so in a smaller way and, hopefully, learn more before the next piece of work starts. This is a perfect example of accepting uncertainty and trying to limit the potential damage. Kanban and Limiting Work-In-Progress Adopting Kanban forces you to limit the amount of work going on at one time. This has a similar benefit to the Scrum framework, but at an even more granular level. While Scrum limits how much you start in a Sprint, Kanban limits how much you have in progress at any one time. Thinking of your work-in-progress in economic terms can really help you understand the value of limiting it. My friend and generally awesome person, Cat Swetel, once said that you can think of your work falling into three buckets: Options  -  work not started Liabilities  - work in progress Assets  - work already finished It is in our liabilities that we are subject to the effects of uncertainty. If we limit the potential impact to a manageable amount, we limit the possible damage and, more often than not, we turn liabilities into assets faster. Probabilistic forecasting Often, even though we know there are many potential outcomes, we still provide a single forecast. A better way, that visualizes existing uncertainty, is to give forecasts AND state the likelihood that a particular forecast will occur. You’re very familiar with this whether you realize it or not. Every weather forecast you’ve seen uses this approach. Doing this is easy. You can use your historical data to forecast probable outcomes with cycle time scatterplots (for single items) or monte carlo simulations (for a group of items). Wrapping it up No matter what you choose to do going forward, by far the most important choice you can make is to accept the inevitability of uncertainty and to commit to learning how to thrive in the face of it. Sharing stories of your successes and failures helps both yourself and those who hear or read them to widen their perspectives. Having to tell the story makes you synthesize the information and make conclusions so that you understand what happened enough to tell the tale. And, while your context will not likely perfectly match that of your readers or listeners, it may provide them perspective and information that they can incorporate into their hypotheses.

bottom of page