<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The Polaris Flow Dispatch]]></title><description><![CDATA[Operational measurement and analysis of flow processes]]></description><link>https://www.polaris-flow-dispatch.com</link><image><url>https://substackcdn.com/image/fetch/$s_!Xl_f!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99d30d84-1f63-4bb3-b9a5-c5c43ce7f339_1000x1000.png</url><title>The Polaris Flow Dispatch</title><link>https://www.polaris-flow-dispatch.com</link></image><generator>Substack</generator><lastBuildDate>Fri, 15 May 2026 21:46:54 GMT</lastBuildDate><atom:link href="https://www.polaris-flow-dispatch.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Krishna Kumar]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[thepolarisflowdispatch@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[thepolarisflowdispatch@substack.com]]></itunes:email><itunes:name><![CDATA[Krishna Kumar]]></itunes:name></itunes:owner><itunes:author><![CDATA[Krishna Kumar]]></itunes:author><googleplay:owner><![CDATA[thepolarisflowdispatch@substack.com]]></googleplay:owner><googleplay:email><![CDATA[thepolarisflowdispatch@substack.com]]></googleplay:email><googleplay:author><![CDATA[Krishna Kumar]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Stabilizing Flow with Timeboxes]]></title><description><![CDATA[How Flows Stabilize - Part 2]]></description><link>https://www.polaris-flow-dispatch.com/p/stabilizing-flow-with-timeboxes</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/stabilizing-flow-with-timeboxes</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sun, 12 Oct 2025 13:03:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!WGZD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WGZD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WGZD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 424w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 848w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 1272w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WGZD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png" width="1025" height="683" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:683,&quot;width&quot;:1025,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1277193,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WGZD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 424w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 848w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 1272w, https://substackcdn.com/image/fetch/$s_!WGZD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a0e3ea-38a3-4884-8c4e-ef372d423dc5_1025x683.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is the second part of a two-part series where we apply the concepts of stability, equilibrium, and coherence in flow processes to analyze common software development paradigms.</p><p>Together, these two posts show how Little&#8217;s Law lets us design enabling constraints with mathematically provable guarantees of convergence and stability in software flow processes.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>The discussion builds on our earlier series on Little&#8217;s Law, especially the concepts in <em>&#8220;<a href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?r=fjllf">Little&#8217;s Law in Complex Adaptive Systems.</a>&#8221;</em> </p><p>In the first part, &#8220;<a href="https://www.polaris-flow-dispatch.com/p/how-flows-stabilize?r=fjllf">How Flows Stabilize,</a>&#8221; we examined how the combination of hard WIP limits and response-time SLAs function as enabling constraints, and how Little&#8217;s Law guarantees that these will <a href="https://www.polaris-flow-dispatch.com/i/172332418/flow-processes">stabilize a flow process</a> over a sufficiently long observation window. </p><p>This is typical of teams working with Kanban and its variants, but this work has usually rested on informal appeals to Little&#8217;s Law to argue that they stabilize a process rather than with disciplined, measurement-driven analysis of actual processes. </p><p>The sample-path analysis technique we used in the first part provides this missing link between theory and practice. </p><ul><li><p>It gives us an <em>algorithm</em> to define and measure flow characteristics, derived directly from the proof of Little&#8217;s Law. </p></li><li><p>It allows us to characterize stability and the mechanisms by which processes become stable mathematically.  </p></li><li><p>It lets us evaluate stability, equilibrium, and coherence for any flow process with precision.</p></li></ul><p>When combined with the mathematical guarantees provided by Little&#8217;s Law, sample-path analysis gives us a powerful foundation for operational analysis&#8212;one that allows us to reason about cause and effect in process dynamics, and to <em>engineer</em> stability in flow processes through the systematic use of enabling constraints.</p><p>Let&#8217;s recap how this worked in our previous example. </p><h3>Team Kanban</h3><p>We saw the general mechanism of how <em>hard</em> WIP Limits and Response Time SLAs  work to stabilize flow in the process for a Kanban team. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!plQ1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!plQ1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!plQ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png" width="954" height="876" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ed767e0-036f-4327-af60-3c5517341cde_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:132683,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!plQ1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!plQ1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ed767e0-036f-4327-af60-3c5517341cde_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: Recap - How the Team Kanban Process Stabilizes</figcaption></figure></div><p>The stabilization mechanism works as follows</p><ul><li><p>Because the flow process adheres to a hard WIP limit and a hard response-time SLA, the quantities L(T), &#923;(T), and <em>w</em>(T) are <em>bounded</em> and, under mild rate-stability assumptions that can be empirically verified, converge to finite limits as T grows.</p></li><li><p>In Fig 1, the two input parameters &#923;(T) and <em>w</em>(T) converge <em>independently</em> to finite limits. Since all three quantities are linked by the <em>finite</em> version of Little&#8217;s Law, L(T) = &#923;(T)&#183;<em>w</em>(T) at all times, this guarantees that L(T) <em>also</em> converges to a stable limit.</p></li><li><p>Little&#8217;s Law then asserts that the corresponding limit values L, &#955;, and W satisfy L=&#955;&#183;W exactly. The latter two &#8212; &#955; and W &#8212; can therefore be used reliably as the process&#8217;s long-run throughput and average sojourn time.</p></li></ul><p>If you have not read the first part of this series yet, it is highly recommended that you do so to clearly understand the definitions of the terms and the arguments we use above. </p><p>We now repeat this analysis for very different type of flow process and see how the concepts translate.  </p><h2>Team XP</h2><p>This team works very differently from Team Kanban:  they collaborate closely with an internal customer, delivering working software increment every single week. Their cadence alternates: one week they ship a meaningful enhancement, the next week they iterate quickly&#8212;making smaller improvements, responding to feedback, and fixing any bugs. They respect their iteration timebox strictly, cutting scope if needed to keep commitments within the box.</p><p>The working style of Team XP is not one that is typically associated with a &#8220;flow process.&#8221;</p><ul><li><p>There are no WIP limits.</p></li><li><p>Work starts and stops at iteration boundaries.</p></li><li><p>Teams focus on batches of work rather than flow of individual work items.</p></li><li><p>There are rigid timeboxes.</p></li></ul><p>While timeboxes are considered antithetical to &#8220;flow&#8221; in some circles, in this post, we will show that  in fact, they are very effective at <em>guaranteeing</em> stable flow processes. In a precisely measurable sense, they are <em>more effective </em>stabilizers<em> </em>than WIP limits and SLAs while offering significantly more flexibility in certain contexts.</p><h2>Sample Path Analysis for Team XP</h2><p>Let&#8217;s start with the sample path flow metrics for Team XP. We have measured the process for 12 weeks so we can compare side by side with the results for Team Kanban. </p><p>Recall that we observe the process over a single expanding observation window [0,T] where T extends from the earliest recorded arrival event to the latest recorded departure event. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dx1X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dx1X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dx1X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png" width="954" height="876" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128860,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dx1X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!dx1X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2beadc91-c58b-4ae0-9c0e-94f681112713_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: Team XP - Coherent Sample Path Metrics</figcaption></figure></div><p>For each T:  </p><ul><li><p>The top chart shows the sample path <em>N</em>(t), which is the instantaneous number of items present in the process (the instantaneous WIP)  computed by taking the difference between the cumulative arrivals and departures to the process up to T. We can see the characteristic work cadence of the team XP process here - the alternating patterns where the team works on fewer large items vs more small items. </p></li><li><p>The next chart show <em>L</em>(T) the time average of <em>N</em>(T) over [0,T].  We can see this time average <em>appears to </em>converge to a finite value  L=1.375</p></li><li><p> The next chart shows &#923;(T) the cumulative arrival rate up to T, and this too shows the arrival rate <em>appearing to</em> converge towards the finite value &#955; = 0.171.</p></li><li><p>The bottom chart shows the average residence time <em>w(T) </em>and this  value <em>appears to</em> converge towards the finite value W=8. </p></li></ul><p>We can verify that L = &#955;W as expected by Little&#8217;s Law and thus we can report these three values as the <em>coherent</em> <em>sample path flow metrics</em> for this process. </p><h2>The timebox as an enabling constraint</h2><p>If you compare the way the XP process converges vs the way the Kanban process stabilized, you&#8217;ll note that there are distinct differences in the underlying mechanisms. </p><p>In the team Kanban process, the two parameters &#923;(T) and <em>w(T) </em>stabilized independently in time, and once both had converged to a limit, <em>L</em>(T) also converged to a finite limit - the product of those two limits. By the end of the observation window, we could see all values had stabilized to finite values and we could declare the process as <em>stable</em> over the last third of  sample path. </p><p>In the case of the XP process, both &#923;(T) and <em>w</em>(T) <em>converge in parallel</em> to their limiting values and the <em>L</em>(T) appears to converge to its limiting value even <em>before </em>the other two values have fully stabilized. </p><p>In fact, the values of &#923;(T) and <em>w</em>(T) have still not fully converged to a finite limit by the end of the observation window. </p><p>And yet, Little&#8217;s Law still holds! </p><p>Let&#8217;s see why this is happening.</p><h3>Little&#8217;s Law for Timeboxes</h3><p>In the XP process, <em>N</em>(T) resets to 0 at the end of each iteration, and for many points in between.  In understanding how this process stabilizes, we rely on a different mechanism that is embedded in proofs of Little&#8217;s Law. </p><blockquote><p>For any flow process measured over an interval where starting and ending values of N(T) are zero, Little&#8217;s Law holds <em>exactly<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></em>.  </p></blockquote><p>This is a very powerful constraint and it impacts the dynamics of the process as a whole in a profound way.  </p><p>Let&#8217;s see how this works. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!x09U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!x09U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 424w, https://substackcdn.com/image/fetch/$s_!x09U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 848w, https://substackcdn.com/image/fetch/$s_!x09U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 1272w, https://substackcdn.com/image/fetch/$s_!x09U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!x09U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png" width="352" height="348" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:348,&quot;width&quot;:352,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:16519,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!x09U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 424w, https://substackcdn.com/image/fetch/$s_!x09U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 848w, https://substackcdn.com/image/fetch/$s_!x09U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 1272w, https://substackcdn.com/image/fetch/$s_!x09U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe0fcd68-b413-4a25-adcd-249d969c9b0f_352x348.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: Little&#8217;s Law for Timeboxes</figcaption></figure></div><p>In the figure 3, each iteration represents a timebox.</p><p><em>Provided the </em>sample path <em>N</em>(t) starts at and ends at 0 within the timebox, two conditions hold<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>. </p><ol><li><p>At any instant <em>inside</em> the iteration, the <em>finite</em> version of Little&#8217;s Law holds exactly:</p><p>L(T)=&#923;(T).&#8201;<em>w</em>(T) where T is the portion of the sample path from the start of the timebox to some point t within the timebox. Here, &#923;(T) is the cumulative arrival rate and <em>w</em>(T) is average residence time <em>within the iteration. </em></p></li><li><p>For the <em>iteration as a whole</em>, L = &#955;<em>W</em> holds. Here L is the time average of the number of items, &#955; is the arrival rate (which equals throughput) and <em>W </em>is the average sojourn time (which equals the average residence time) <em>for the iteration. </em></p></li></ol><p>Thus at the start and end of <em>each</em> iteration, the process is at equilibrium and the flow metrics for the iteration are coherent.  </p><p>Now we can see this property holds when we <em>concatenate</em> sequences of timeboxes: since N(T) starts and end at zero for each timebox. So we can claim that for and observation window that starts and ends with <em>any</em> consecutive sequence of iterations, the process is at equilibrium and the flow metrics are coherent. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vvs2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vvs2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 424w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 848w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 1272w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vvs2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png" width="1143" height="701" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:701,&quot;width&quot;:1143,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:45732,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Vvs2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 424w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 848w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 1272w, https://substackcdn.com/image/fetch/$s_!Vvs2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe04adc2d-dd3d-4a1c-a1fd-5dc8b94fab41_1143x701.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: Little&#8217;s Law for timebox sequences</figcaption></figure></div><p>In Fig 4 - even though there may be significant variation of the sample path within each iteration, the process is at equilibrium and the flow metrics are coherent when measured over any observation window that starts and ends at an iteration boundary. This applies to <em>all </em>sequences of length 1, 2, 3 etc.. as shown in Fig 4<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>.</p><p>So Little&#8217;s Law holds over the entire sample path <em>simply a consequence of the fact the entire sample path is simply composed of a sequence of iterations where the N(t) starts and ends at 0.</em></p><blockquote><p>So <em>providing you can adhere to a</em> timebox, it serves as a powerful constraint, guaranteeing equilibrium and coherence for sample path flow metrics measured over every observation window that starts and ends at an iteration boundary. </p></blockquote><h2>Equilibrium and Coherence</h2><p>Let&#8217;s validate that these claims are true for our data for Team XP. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tkkx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tkkx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tkkx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png" width="1200" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:72383,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!tkkx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!tkkx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb1231eb9-4ba4-4905-8aa7-03dbc57f7a14_1200x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: Equilibrium of arrivals and departures</figcaption></figure></div><p>Fig 5 shows that the arrivals and departures are in balance for much of the sample path &#8212; a direct consequence of the iterations beginning and ending with zero <em>N</em>(t). Further the arrival and departure <em>rates </em>converge relatively quickly and mostly stay together along the sample path - which means the process is at equilibrium for most of the sample path. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9Qkc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9Qkc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9Qkc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png" width="1200" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:87474,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!9Qkc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!9Qkc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5c9e75c-4058-4726-aad6-96d7c1d48945_1200x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: Convergence of Residence Time and Sojourn time - Coherence</figcaption></figure></div><p>Fig 6 shows that residence time and sojourn time track each other for most of the sample path, drifting apart only during the iterations where items stay in progress for relatively longer period of time. </p><p>We can also see that actual sojourn times are evenly distributed around average residence time - making average residence time a good proxy for average sojourn time.</p><blockquote><p>In other words, the process is at equilibrium and coherent for much of the sample path even as the averages along the sample path are not stationary. </p></blockquote><p>So this is a clear demonstration Little&#8217;s Law can apply even to processes that are <em>not stationary </em>and this XP process is very good illustration of that fact. </p><p>We can summarize all these properties by looking at the sample path coherence plot for the process. </p><p>Beginning from a cold start, the process remains coherent and at equilibrium within a 5% tolerance for  92.7% of the points on the sample path! </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!raSb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!raSb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!raSb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!raSb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!raSb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!raSb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png" width="750" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:750,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:62511,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!raSb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!raSb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!raSb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!raSb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0d7fce1-6cd7-4af7-a3de-b943eb9abd64_750x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: Sample Path Coherence  from cold start - Team XP</figcaption></figure></div><p><br><br>Contrast this with the chart for the Kanban process where only 75.6% of the points on the sample path meet this criteria. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wdG-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wdG-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wdG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png" width="750" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:750,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60273,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!wdG-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!wdG-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F557d0106-4097-456f-8a1a-2d5436fca7f5_750x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 7: Sample path coherence from cold start - Team Kanban</figcaption></figure></div><p>In the team XP case, we can directly establish equilibrium and coherence along the sample path, but  we are relying on a <em>different argument</em> from the Team Kanban case to explain <em>why</em>. </p><p>In that case we argued that these properties held <em>because </em>the process was stable. We have not argued that here - we showed  equilibrium and coherence <em>even without invoking stability</em>. </p><p>Which brings up the logical follow-up question<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>. </p><h2>Is this process stable? </h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H_ZQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png" width="954" height="876" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128383,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/175633050?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!H_ZQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0979307e-064d-4a4c-8cc7-4bc4afd66f72_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 8: Is the Team XP process stable? </figcaption></figure></div><p>We have seen for individual iterations, the values of L, &#955;, and W for the process may change a lot depending upon the workload in the iteration, even if each iteration satisfies Little&#8217;s Law.</p><p>We still need to determine <em>separately </em>whether or not the process is stable. That is, as we measure over more iterations,  we need to prove the values of L, &#955;, and W<em> </em>converge to stable finite values. </p><p>In Fig 8, we see how these averages behave as we take them over longer and longer observation windows. If we look at two consecutive iterations consisting of a week with many small items followed by a week with a few large item, some patterns start to emerge. </p><ul><li><p>Unlike in the Team Kanban case, &#923;(T) and <em>w</em>(T)  converge <em>in parallel - each getting smaller as we measure over longer intervals, but both exhibit oscillatory behavior. </em></p></li><li><p>The alternating patterns of workload across weeks cause &#923;(T) and w(T) <em>to move in opposite directions within a 2 iteration window</em>: when the process takes in more items, they  complete faster, and when fewer items arrive, they take longer to finish. This inverse relationship creates a natural stabilizing effect&#8212;because L(T) is the product of the two, it &#8220;settles down&#8221; faster than either parameter on its own. </p></li><li><p>In Fig 8 this manifests as the <em>apparent</em> convergence of L(T) even before the &#923;(T) or w(T) have fully stabilized.  </p></li></ul><p>But while &#923;(T) and <em>w</em>(T) are <em>convergent </em>over the whole sample path, we cannot technically call this process <em>stable </em>yet, since their values never quite stabilize over the whole path. </p><p>But timeboxes do provide a guarantee: it can be shown mathematically that a timebox constraint will cause a flow process to converge to stable limits, provided we observe it over a sufficient number of iterations and under mild rate-stability assumptions. </p><p>Here&#8217;s the reason</p><ul><li><p>The timebox bounds the possible values of w(T): since every work item must start and finish within the iteration, each sojourn time is limited by the length of the timebox.</p></li><li><p>The timebox also bounds the number of work items &#923;(T) that can be accepted and completed within the iteration, given the team&#8217;s finite service capacity. Together, these bounds ensure that both the cumulative arrivals and the total residence time within each iteration remain finite.</p></li><li><p>Because the sample path N(t) starts and ends at zero in each iteration, the area under the curve&#8212;representing the total accumulated residence time&#8212;is necessarily bounded. </p></li><li><p>As we integrate this area over larger and larger observation windows composed of many iterations, these bounded contributions yield empirical averages L(T), &#923;(T), and w(T) that converge to finite limits.</p></li></ul><p>Even so, for practical purposes we can see that the values we have reported here are stable <em>enough </em>and the fact that Little&#8217;s Law applies exactly over the sample path means that these metrics are <em>coherent. </em>So they can still be  used reliably as operational flow metrics for the process. </p><p>For all practical purposes we have an operationally useful set of sample path flow metrics given this 12 week observation window &#8212; the same as in the Team Kanban case. </p><h2>What does all this mean? </h2><p>Our main claim is that there are many ways to achieve stable flows. Once we have the machinery to describe and measure what &#8220;flow&#8221; means independently of the underlying process mechanisms, we can start thinking of flow as a measurable technical property of a process that we can <em>systematically engineer</em> using <em>enabling constraints</em> while designing the process itself to match the context of the complex adaptive system within which it operates. </p><p>The two types of enabling constraints - the combination of hard WIP limits and response time SLAs, and timeboxes constitute a <em>complete</em> set of stabilizers for any flow process. </p><p>The argument for this is as follows: </p><ul><li><p>If we adopt a policy where we use timeboxes to stabilize flow we can rely on the mechanisms described here to guarantee that the process will stabilize over long enough sample paths. This requires designing processes that periodically reset <em>N</em>(t) to zero by policy. </p></li><li><p>If on the other hand, our policy the policy is to not require this, then we have to assume <em>N</em>(t) never resets to zero, and in this case - the more general mechanism of hard WIP limits and response time SLAs guarantees stability.  </p></li></ul><p>We can use either one independently or in combination. </p><p>For example, goal driven processes at the team level can stabilize task level execution using timeboxes.  <em>Simultaneously</em>, they can ensure convergence across multiple goals using WIP limits and sojourn time SLAs for goals &#8212; the latter facilitating better decision making on how many goals to pursue in parallel when feedback cycles are longer than ideal, and how long to keep individual goals in play if the payoff is smaller than expected. </p><p>There is much more to be said about how these enabling constraints can be used to stabilize any given flow process, particularly once you add costs and payoffs to the model, but these are topics for later posts.</p><p>The key takeaway from these two posts is this: </p><blockquote><p>Sample path analysis and Little&#8217;s Law together provide a rigorous, systematic foundation for reasoning about flow process dynamics and stability. </p></blockquote><p>They give us both the language to define what a <em>stable process</em> looks like, the means to <em>measure whether we&#8217;ve actually achieved it, </em>and understand what needs to be done if we have not. </p><h3><strong>But what about the real world?</strong></h3><p>There are some obvious objections to all these abstract claims we have made so far, so let&#8217;s just put them out there.</p><p>In the real world, </p><ul><li><p>Teams don&#8217;t stick to timeboxes.</p></li><li><p>They don&#8217;t hold WIP limits or SLAs perfectly.</p></li><li><p>Work spills over, priorities shift, interrupts happen, work is paused and resumed.</p></li></ul><p>Real flow processes operate in complex adaptive systems, so all these are expected behaviors: by and large, they operate far from equilibrium and stability. </p><p>But this is where sample path analysis really shines: by default, sample path analysis assumes a flow process is <em>not stable. </em>It models the dynamics of flow processes <em>that are far from equilibrium </em>using the <em>finite version of Little&#8217;s Law </em>as the governing relation on process behavior. Equilibrium, coherence, and stability are measurable states of a process <em>that is expected to operate far from them at most times</em>. It allows us to rigorously study how the process moves between these states. </p><p>The stabilization mechanisms we&#8217;ve discussed so far&#8212;WIP limits, SLAs, and timeboxes&#8212;represent idealized process models. They&#8217;re the  abstract mathematical anchors that real world processes oscillate around. Understanding how these idealized models work through simulations &#8212; as we have done here &#8212; is a key part of building our intuitions about how flow processes behave. </p><p>Depending upon the context, perfectly stable processes may never be possible, <em>nor desirable</em>. The point isn&#8217;t that we should expect perfect adherence to an idealized process. It&#8217;s that we now have the <em>reasoning tools</em> to understand what happens when we <em>don&#8217;t</em>, and these mathematical models give us clear guidance on what is <em>possible. </em></p><p>Flow and stability are not meaningful end goals to be achieved regardless of context. Stabilizing a particular flow process in a larger complex adaptive system might be necessary in order to achieve a particular business outcome, and in this case, the machinery we have shown so far in the series become vital to understanding how to proceed. </p><p>For instance if a team works in an iterative process, it is normal for work to spill over across timeboxes. If that team is a critical dependency on multiple teams, and we need the ability to co-ordinate their work with the work of other teams, <em>stabilizing their delivery process is a necessary first step </em>to being able to <em>communicate</em> <em>reliably</em> across teams that depend on this team.  </p><p>Introducing these enabling constraints &#8212; WIP limits, SLAs and timeboxes &#8212; as needed, and analyzing their impact on the delivery process for that team using precise measurable definitions brings clarity, rigor and visibility to that <em>process of stabilization</em>. </p><p>There are a wide variety of strategies one can adopt to stabilize any given flow process.  They are all very highly context specific, and need much more information than is available purely from sample path analysis or the techniques we have shown here. </p><p>Having that reference point&#8212;knowing what &#8220;stable flow&#8221; looks like and being able to measure how far away we are from it&#8212;is a huge step forward from the informal heuristics and methodology-centric approaches we&#8217;ve had until now. </p><p>The techniques we have shown here can and should be considered methodology-agnostic <em>tools</em> in a toolkit to manage and improve flow processes in the complex adaptive systems that real world software teams operate in.</p><p>We will look at many more of these real-world scenarios in upcoming posts. There&#8217;s still a lot to learn about how and where these techniques can be applied, where their limits lie, and how we overlay them on existing ways of working. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>This is considered the &#8220;easy&#8221; case for proving Little&#8217;s Law - see for example &#8220;<a href="https://people.cs.umass.edu/~emery/classes/cmpsci691st/readings/OS/Littles-Law-50-Years-Later.pdf">Little&#8217;s Law on it&#8217;s 50th Anniversary</a>&#8221;, the survey paper by Dr. Little, Theorem LL.1 (page 537) for an elementary proof.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>This follows from the proof in footnote 1. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>For a significant generalization of this concept and its application to arbitrary flow process please see the concepts of <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html#presence-matrix">The Presence Matrix </a>and <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html#presence-accumulation-matrix">The Presence Accumulation Matrix </a>in the <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html">Presence Calculus</a>. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>It&#8217;s legitimate to ask why stability matters in this situation. This is a longer topic that we will address more thoroughly in a separate post. </p><p></p></div></div>]]></content:encoded></item><item><title><![CDATA[How Flows Stabilize]]></title><description><![CDATA[A Tale of Flows - Part 1]]></description><link>https://www.polaris-flow-dispatch.com/p/how-flows-stabilize</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/how-flows-stabilize</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sun, 05 Oct 2025 14:01:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!vWrb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vWrb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vWrb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 424w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 848w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 1272w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vWrb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png" width="1030" height="689" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:1030,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1399278,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vWrb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 424w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 848w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 1272w, https://substackcdn.com/image/fetch/$s_!vWrb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Team Kanban vs Team XP</figcaption></figure></div><h2>What is flow? </h2><p>When most people think of <em>flow</em>, they picture the ideal from Lean manufacturing: small batches of work moving smoothly and continuously through some process.</p><p>Work starts and finishes at roughly the same rate. Once something begins, the goal is to carry it through to completion with minimal delay or interruption. Pausing, waiting, pre-empting, and rework are treated as waste. In the idealized state of continuous flow, those frictions are minimized or eliminated.</p><p>Operationally, teams enable this with well-known techniques:</p><ul><li><p>Limiting work-in-process (WIP)</p></li><li><p>Setting SLAs on completion times and managing work-item age</p></li><li><p>Reducing batch size and right-sizing units of work.</p></li><li><p>Managing flow at throughput constraints</p></li></ul><p>In this context, Little&#8217;s Law and queueing theory principles are often invoked as the theoretical justification for why these techniques work to stabilize flow. </p><p>But the analytical machinery behind Little&#8217;s Law is <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf">much broader</a>. It gives us a uniform way to measure and analyze <em>any</em> <a href="https://www.polaris-flow-dispatch.com/i/172332418/flow-processes">flow process</a>&#8212;regardless of the underlying mechanics&#8212;and it applies across the full spectrum of behaviors we see in software development including unstable processes and the teams that don&#8217;t necessarily adopt all these practices. </p><p>This raises some basic questions: </p><ul><li><p><em>What precisely, does &#8220;flow&#8221; mean, and can we define it in a process-agnostic manner? </em></p></li><li><p><em>Can we measure &#8220;flow&#8221; even if we have no idea how the underlying processes operate? </em></p></li><li><p><em>Can we characterize what desirable and undesirable &#8220;flow&#8221; means in any given context? </em></p></li><li><p><em>Can we use data and measurements to navigate directionally from an undesirable flow state to a more desirable one? </em></p></li></ul><p>That in turn,  lets us ask more productive questions: </p><ul><li><p><em>What kind of flow does your process exhibit? </em></p></li><li><p><em>Is it right for your objectives?</em> </p></li><li><p><em>Given the flow you have, what changes will yield measurable improvements? </em></p></li><li><p><em>How do we measure these improvements? </em></p></li></ul><p><em>The goal is to understand the fundamental primitives that drive flow in complex adaptive systems&#8212;where teams may use a mix of processes&#8212;and to build a rigorous theory of how these primitives can be combined and adjusted to incrementally change process behavior, validated through process-agnostic, measurement-based evidence.</em></p><p>Despite substantial investment in flow measurements and tooling, we are still <em>quite</em> far away from this goal in software development operations management. </p><p>Instead, we default to prescribing practices &#8212;typically imported from Lean manufacturing&#8212;such as limiting WIP or right-sizing work, and rely on an indirect appeal to theory to claim they will  &#8220;stabilize flow,&#8221; even though we can&#8217;t define or quantify what flow means or to measure it unambiguously<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p>This approach conflates <em>an abstract result</em> (better flow) with <em>the</em> <em>method</em> (specific practices) and leaves the core concept undefined and unmeasured. More importantly, it gives little insight into <em>why </em>these techniques work to &#8220;improve flow&#8221; however you choose to define it. </p><p>As we have been discussing in our series, Little&#8217;s Law, combined with sample-path analysis, provides much of the rigorous machinery needed to bridge this gap. It makes the <a href="https://www.polaris-flow-dispatch.com/i/172332418/sample-path-construction-for-l&#955;w">process model</a> explicit, give us a vocabulary to measure conditions like <a href="https://www.polaris-flow-dispatch.com/i/172332418/convergenceequilibrium-and-coherence">convergence, equilibrium, and coherence</a>, and gives us <a href="https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law?r=fjllf">causal inference rules </a>to reason about process dynamics and behavior.</p><p>In short, we already have a mathematically rigorous, process-agnostic theory to measure, catalog, and compare how flow processes actually behave in <a href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?r=fjllf">complex adaptive systems</a>. </p><p>This post is the first in a series that will build on this foundation to systematically <em>operationalize</em> the concepts in practical software development settings.</p><p>If you have not been following the series so far, I highly recommend that you at least read our overview post before you dive into this material to orient yourself with the concepts and terminology we use in these and subsequent posts. </p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;98159e1b-76e2-4927-a28a-0a332aade87a&quot;,&quot;caption&quot;:&quot;If you&#8217;ve worked in software delivery or followed any Lean or flow-based methodology, you&#8217;ve almost certainly seen this formula:&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Many Faces of Little's Law&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:26108691,&quot;name&quot;:&quot;Krishna Kumar&quot;,&quot;bio&quot;:&quot;Dr. Krishna Kumar is the Founder and CEO of Exathink Research, a technical advisory firm that helps software companies measure and improve product development flow. \nMore at exathink.com &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20a997b3-1167-4216-b0fe-e617a0360412_1856x1856.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-07-29T16:00:52.928Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2ceb8d9d-b5fa-4487-8c60-d0bcd4941702_3713x2299.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:169312170,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:2,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1625155,&quot;publication_name&quot;:&quot;The Polaris Flow Dispatch&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Z1zn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6549fe35-8fc5-4ed0-840a-a0012436332a_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h2>Two Flow Processes</h2><p>In this two-part series we will look at two team-level software development processes that on the surface look very different, but under careful analysis using Little&#8217;s Law exhibit two key characteristics of &#8220;good&#8221; flow: stability and coherence.</p><p>We have defined these concepts precisely in earlier posts, and we will see how we can <em>measure</em> these in a process agnostic fashion.  </p><h3>Team Kanban</h3><p>The first is a <em>classic Kanban team</em>. They operate under a clear SLA: 80% of the work they accept will complete in 4 days or less, with the remainder will finish within 2 weeks. </p><p>Internally, they enforce a WIP limit of 5 items at any given time, often working on fewer. When it makes sense, multiple developers collaborate on the same item to push it from start to finish without pause. The principle is simple: minimize waiting, pre-empting, and handoffs. Once an item is started, the priority is to carry it through to completion as directly as possible. </p><p>We already know from 20+ years of experience in the industry that these techniques lead to a stable process.  In this post we will show <em>why </em>it does.  </p><p>We will precisely define what &#8220;stable process&#8221; means, analyze this process using sample path flow metrics and clearly show through measurements <em>how </em>the Kanban method <em>leads</em> to a stable process. </p><h3>Team XP</h3><p>The second is a <em>classic XP team</em>. They work in close collaboration with an internal customer, delivering working software increment every single week. Their cadence alternates: one week they ship a meaningful enhancement, the next week they iterate quickly&#8212;making smaller improvements, responding to feedback, and fixing any bugs. They respect their iteration timebox strictly, cutting scope if needed to keep commitments within the box.</p><p>The working style of Team XP is not one that is typically associated with a &#8220;flow process.&#8221; </p><ul><li><p>There are no WIP limits. </p></li><li><p>Work starts and stops at iteration boundaries. </p></li><li><p>Teams focus on batches of work rather than flow of individual work items. </p></li><li><p>There are rigid timeboxes.</p></li></ul><p>In part 2 of this series next week, we&#8217;ll analyze this process using exactly the same machinery of sample path analysis and Little&#8217;s Law and show that this too leads to stable coherent flow - even though the underlying mechanics are very different. </p><h3>The Assumptions</h3><p>Both teams have autonomy to decide what work to accept in consultation with their customers. Both follow modern software engineering practices, including continuous delivery of working software to production. Where they differ is in how they scope and schedule work and manage their delivery process: one through explicit WIP limits and flow-based SLAs, the other through strict iteration timeboxes and customer-collaboration.</p><p>To measure the two processes, we assume only that that the start and end events for the flow process model are available and  compatible: the measurement of flow starts when the team accepts a unit of work and it ends when the team delivers that unit of work. We leave the definitions of acceptance, delivery etc are undefined and focus purely on the internal dynamics of the flow process that results under those assumptions.  </p><p>To keep things grounded, in this discussion we can assume <a href="https://www.polaris-flow-dispatch.com/p/what-is-residence-time?r=fjllf">sojourn time </a>corresponds to <em>cycle time</em> as conventionally understood in software Kanban processes, and arrival rate &#955; is the rate at which the team <em>accepts work</em>. </p><p>Let&#8217;s observe both teams for 12 weeks<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> and analyze the flow of work with the help of Little&#8217;s Law and compare their sample path flow metrics. In doing this the goal is not to judge if one method is superior to the other, but whether we can can measure and reason about the characteristics of process flows within and across processes in a process-agnostic manner. </p><h2>Sample Path Flow Metrics</h2><p><a href="https://www.polaris-flow-dispatch.com/i/172332418/processes-and-sample-paths">Recall </a>that the sample path for L = &#955;W is given by <em>N(T)</em> - the instantaneous number of items that are in progress at any point in the observation window. </p><p>Here is the sample path for Team Kanban </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CjUh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CjUh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CjUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png" width="724.859375" height="246.4521875" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a521615b-b158-413b-86a8-6785df2688cb_1000x340.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:340,&quot;width&quot;:1000,&quot;resizeWidth&quot;:724.859375,&quot;bytes&quot;:20271,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CjUh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!CjUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa521615b-b158-413b-86a8-6785df2688cb_1000x340.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: Team Kanban Sample Path</figcaption></figure></div><p>Key characteristics</p><ul><li><p>Limit of 5 items in progress. </p></li><li><p>WIP rarely resets to zero</p></li><li><p>Variable size items means we can see longer stretches where items are in progress even when most items start and finish quickly. </p></li></ul><p><br>Here is the sample path for Team XP</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!67cW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!67cW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!67cW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!67cW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!67cW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!67cW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png" width="728" height="247.52" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:340,&quot;width&quot;:1000,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:29419,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!67cW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!67cW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!67cW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!67cW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe646d860-ca1c-44ed-9553-3f9e7ee4eba2_1000x340.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: Team XP sample path</figcaption></figure></div><p>Key Characteristics:</p><ul><li><p>Alternating patterns of long and short pieces of work between weeks.</p></li><li><p>WIP resets to zero at the end of each iteration. </p></li><li><p>There is no theoretical limit on the number of items in an iteration. </p></li><li><p>The time spent on any item is limited by the timebox to be at most one week.  </p></li><li><p>The constraint is that every iteration delivers a meaningful increment to users (across <em>all</em> items). </p></li></ul><p>On the surface, the two teams have  very different policies and processes, and traditionally Team Kanban would the considered the team that optimizes for flow of work. </p><p>Let&#8217;s see how that plays out with data.  </p><h3>The Flow Metrics</h3><p>Recall that sample path flow metrics measure the <a href="https://www.polaris-flow-dispatch.com/i/172332418/the-finite-version-of-littles-law">parameters of the finite version of Little&#8217;s Law</a>. </p><p>This invariant is expressed as an equation involving three <em>functions of time</em>, derived from a finite sample path <em>N(t) </em>over an interval [0,T]:</p><p>Given</p><ul><li><p>L(T): the time average of N(t) over [0,T]</p></li><li><p>&#923;(T): the cumulative arrival rate over [0,T]</p></li><li><p>w(T): the average residence time over [0,T]</p></li></ul><p>The invariant states: </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\Lambda(T).w(T)&quot;,&quot;id&quot;:&quot;ZSLTQSNXQV&quot;}" data-component-name="LatexBlockToDOM"></div><p>for each point in the observation window, where the quantities <em>L(T)</em> and <em>w(T)</em> are derived from calculations over the <em>cumulative area under the sample path</em> at each T. </p><p>Please see our post  &#8220;<a href="https://www.polaris-flow-dispatch.com/i/172332418/the-finite-version-of-littles-law">Little&#8217;s Law in a Complex Adaptive System</a>&#8221; for formal definitions and details on how these quantities are defined. </p><p>The sample path and  finite window metrics for Team Kanban are shown below. We can see Little&#8217;s Law at work in the evolution of this sample path. Overall the process is <a href="https://www.polaris-flow-dispatch.com/i/169312170/convergence-and-divergence">convergent</a> since L(T), &#923;(T) and w(T) all stay bounded. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!njQr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!njQr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!njQr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!njQr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!njQr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!njQr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png" width="724.453125" height="665.221108490566" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:724.453125,&quot;bytes&quot;:113864,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!njQr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!njQr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!njQr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!njQr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff1a41450-a37e-4dc7-baf9-c02977ed6004_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: Team Kanban - Sample Path Flow Metrics</figcaption></figure></div><p>We can also make the stronger claim that the process is <em><a href="https://www.polaris-flow-dispatch.com/i/169312170/convergence-vs-stability">stable</a></em> because &#923;(T) and w(T) converge to a single finite value <em>and stay there</em> over the latter third of the observation window: as a result, L(T) also converges to a limit that is the product of the two limit values. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L \\;=\\; \\lim_{T \\to \\infty} L(T), \n\\quad \n\\lambda \\;=\\; \\lim_{T \\to \\infty} \\Lambda(T), \n\\quad \nW \\;=\\; \\lim_{T \\to \\infty} w(T).&quot;,&quot;id&quot;:&quot;AEGYYIEAUA&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>We see this below. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kPzq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kPzq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kPzq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png" width="725.765625" height="666.4262971698113" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:725.765625,&quot;bytes&quot;:111573,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kPzq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!kPzq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c4d2cc2-781d-4371-8413-072d225b5089_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: The stable limits of Little;&#8217;s Law</figcaption></figure></div><p>In this case: </p><ul><li><p>The limit value of cumulative arrival rate &#955; = 0.05 items/hour or 1.2 items/day</p></li><li><p>The limit value of average residence time W = 60 hours or 2.5 days</p></li><li><p>L =  3 items is the time average if the number of items in progress </p></li></ul><p>And L = &#955;.W, which is precisely the result that is <a href="https://www.polaris-flow-dispatch.com/i/172332418/convergenceequilibrium-and-coherence">predicted by Little&#8217;s Law</a>.</p><h3>Why does this process stabilize? </h3><p>The key fact to remember about the three sample path flow metrics is that the three values are locked together by the finite version of Little&#8217;s Law <em>at every point in time</em> on the sample path- this is the key invariant that governs the physics of  flow.</p><blockquote><p>If L(T) changes it is <em>because</em> either &#923;(T) or <em>w</em>(T) or both changed, and the new value of L(T) is the product of those two values. </p><p>Knowing &#923;(T) and w(T) completely determines L(T)</p></blockquote><p>These are <em>deterministic causal rules: </em>the invariant relationship between the three parameters means we can analyze &#8220;how&#8221; the process stabilizes over time using these rules embedded in the finite version of Little&#8217;s Law.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6DcT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6DcT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6DcT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png" width="954" height="876" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:876,&quot;width&quot;:954,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:132683,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6DcT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 424w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 848w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 1272w, https://substackcdn.com/image/fetch/$s_!6DcT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27d2b3b0-3345-413c-8ba1-78808cc1ffe3_954x876.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: How the process stabilizes</figcaption></figure></div><p>As we observe the process over a single long observation window we can see four major periods. </p><ul><li><p>An initial &#8220;mixing&#8221; period of about 2 weeks where the observation window is still too small to capture the true dynamics of the process, and we are mostly measuring transient noise while averages stabilize<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>.</p></li><li><p>Period A - where the averages &#923;(T) and w(T) have both moved into narrower ranges of values, but clear patterns of the dynamics still have not yet emerged,  Here L(T) is changing as the <em>product</em> of  &#923;(T) and w(T) - so the relationships here are not linear - small changes in either parameter still lead to large changes in L(T). </p></li><li><p>Period B - where <em>w(T) </em>starts to stabilize. In this zone there is a nearly <em>linear cause-effect relationship</em> between &#923;<em>(T) </em>and L(T).</p></li><li><p>Period C - where &#923;(T) <em>also</em> stabilizes - and at this point L(T) also stabilizes to a product of the stable limits of &#923;(T) and <em>w(T). </em></p></li></ul><p>Here&#8217;s <em>why </em>the process behaves this way. </p><blockquote><p>The Kanban process constraints: the WIP limit and the response-time SLA,  <em>respectively</em> keep &#923;(T) and w(T)  <em>bounded</em>. <em>Mathematically</em>, these bounds ensure<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a> that the <em>each</em> of the values <em>independently</em> converges to finite, stable values when <em>averages</em> are taken over sufficiently long observation windows.</p><p>Little&#8217;s Law then says that L(T) <em>also</em> converges to a limit L and that L = &#955;.W at the limits.  </p></blockquote><p>To understand what &#8220;convergence&#8221; means intuitively - consider the convergence of &#923;(T): </p><p>You can see from the plot of <em>N(t)</em> that the arrival patterns in period A are distinctly different from those in period B. The process behavior shifts &#8212;  arrivals and completions mix in new ways &#8212; but by period C, the new arrivals no longer change the overall cumulative arrival rate &#923;(T) in a meaningful way.</p><p>In other words, the process has <em>converged</em>: we&#8217;ve observed enough of its history that adding more data (extending the observation window) no longer alters the long-run averages of the flow parameters. The empirical averages have stabilized, and the process now behaves as though it were stationary over this window.</p><p>Note that there is no guarantee that this wont change in the future - this is where processes in complex adaptive systems differ from simpler processes in repetitive manufacturing. </p><p>But this also means that shifts in these averages imply significant changes in the internal workings of the process or the external environment in which the process is operating, or both - we are seeing &#8220;new history&#8221;.  Sample path flow metrics capture all these precisely. </p><p>So this is the stabilization mechanism in Kanban: <em>WIP limits</em> and <em>response-time SLAs</em> act as <em>enabling constraints</em>. <em>If</em> you can adhere to them&#8212;and let the mathematics do its work&#8212;the process is <em>guaranteed</em> to become stable over time.  </p><p>Convergence or stability is not  guaranteed purely because we have <em>adopted</em> WIP limits or SLAs - you have to <em>adhere to those limits, </em>measuring this on a case by case basis for each process at every point in its history, and figure out if your process is actually converging and/or stabilizing or shifting between behavior regimes - the concept we call meta-stability<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>. </p><blockquote><p>The key takeaway is that Little&#8217;s Law ensures WIP limits and SLA&#8217;s that place firm upper bounds on the time to complete <em>all work </em>are <em>sufficient</em> <em>enabling constraints to</em> stabilize a flow process. </p></blockquote><h3>How long does it take? </h3><p>It&#8217;s equally important to note <em>how long </em>it took the process to stabilize: nearly 8 weeks of observation - even though 80% items complete in 4 days or less and the rest complete in 2 weeks or less. </p><p>This is a normal pattern. When we are working in a complex adaptive system with high variability in sojourn times, <em>meaningful patterns of process behavior only become apparent over longer observation windows</em> relative to sojourn times in the process. Over shorter timescales, we see a lot of transient noise in the system vs the true flow characteristics of the process<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a>. </p><p>In general, the <em>time to stabilize </em>in a process is directly related to amount of <em>variability</em> in the residence time and the arrival rate. The lower the variability in each parameter, the <em>faster</em> the averages converge to a stable value - we see all the relevant history in a shorter period of time.</p><p>In our example, the residence time converged faster than the arrival rate, but in general it could also happen the other way around as well.  </p><p>Here the fact that we have a <em>two-tiered SLA: </em>a soft limit of 4 days on 80% of items and the hard limit of 2 weeks on <em>all items - </em>are necessary both to bound variability and ensure convergence. We can play around with these limits in any given context to see what is achievable given capacity constraints etc, but it is the combination of hard and soft limits on the response time constraints that drives how fast the process as a whole converges.  </p><blockquote><p>Sample path flow metrics reveal the true &#8220;Voice of the Process.&#8221;</p><p>The particulars of any given flow process will vary and small changes to the WIP limits, the SLA,  the ability of the teams to meet the SLA etc. might have drastic impacts on <em>how </em>the process stabilizes, <em>how long </em>it takes to stabilize, <em>and even whether it stabilizes. </em></p></blockquote><h2>Reporting Flow Metrics</h2><p>Sample-path analysis is a powerful tool for systems analysts and process engineers who want to understand and improve how a system behaves. But what use are these numbers to day-to-day management of processes? Isn&#8217;t this all just theoretical?</p><p>This is the core tension when relying on technical quantities like cumulative arrival rate or average residence time. It&#8217;s not at all unreasonable to ask:</p><ul><li><p>Will customers care about these metrics?</p></li><li><p>Who cares if some mathematical averages converge over the long run?</p></li></ul><p>This is where Little&#8217;s Law earns its keep once again. </p><p>Even though sample path metrics seem highly technical and non-intuitive, we can also claim something practical: if a process is stable, these same metrics are <em>exactly</em> the right operational metrics to report. </p><blockquote><p>Under stable conditions, the internal process metrics converge to the business-facing operational metrics &#8212;throughput, cycle time, WIP etc.</p></blockquote><p>These long-run metrics have several advantages over the industry-standard flow metrics used today.  They are stable, interpretable, and slow to fluctuate from day to day. When they <em>do</em> change, it usually reflects a genuine shift in the underlying process dynamics. That makes them far more useful for decision-making and for reasoning about system behavior, and <em>more importantly for communicating with external stakeholders when things change</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-7" href="#footnote-7" target="_self">7</a><em>. </em></p><p>Short-window  flow metrics still have their place: they provide tactical visibility into ongoing work. But they are volatile and offer little insight into the deeper dynamics driving the process. The two perspectives complement each other&#8212;short window metrics help you manage flow in the present, while sample-path metrics help you reliably communicate about what a process does free of measurement bias<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-8" href="#footnote-8" target="_self">8</a>. </p><p>The concepts of <a href="https://www.polaris-flow-dispatch.com/i/169312170/equilibrium-and-coherence">equlilbrium and coherence</a> and their associated metrics provide the operational bridge between these technical metrics and business facing ones. </p><h3>Equilibrium and Coherence</h3><p>Sample path analysis says that when sample path flow metrics converge to stable limit then  &#955; is also the long run arrival rate of the process, and this always equals the departure rate, &#955; is also a stable measure of process throughput. Similarly <em>W, </em>the limit of the average residence time is also the limit of the average sojourn time, which is the customer facing average response time for the process. The process is in <em>equilibrium</em> when measured over these long observation windows.  </p><p>To complete the analysis let&#8217;s look at our sample path metrics and verify that they converge to the relevant business facing metrics when the process is stable.</p><h3>Arrival Rate converges to Throughput</h3><p>The upper chart in Fig 6 is the standard cumulative flow diagram for the flow process. It shows that purely viewed from the standpoint of point in time arrivals and departures the process looks stable<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-9" href="#footnote-9" target="_self">9</a> through <em>most</em> of the sample path. The difference between these point in time arrivals and departures is precisely what we call the sample path.  </p><p>But our definition of stability is much stronger:  it requires the <em>long run arrival rate </em>to converge to a finite value, and this is not apparent simply by looking at the CFD. We have to compute the sample path flow metrics for this<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-10" href="#footnote-10" target="_self">10</a>. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kCzN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kCzN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kCzN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png" width="724.859375" height="392.6321614583333" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:650,&quot;width&quot;:1200,&quot;resizeWidth&quot;:724.859375,&quot;bytes&quot;:69939,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!kCzN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!kCzN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2831dfc5-b549-4158-8c0f-66d778f2d121_1200x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: Arrival Rate converges to Throughput</figcaption></figure></div><p>The bottom chart shows the convergence plot of <em>arrival rate </em>from Fig 3, overlaid with long run <em>departure rate, </em>which is the throughput from the process. We can clearly see that as the arrival rate converges to the limit, so does the throughput, and that the limit value of arrival rate can be substituted for process throughput over these observation windows. </p><h3>Residence Time converges to Sojourn Time</h3><p>The top chart in Fig 7 shows the convergence of average residence time <em>w(T)</em> and average sojourn time  <em>W*(T)</em>. At the stable limit, these values track each other letting us say that the average residence time is also the customer facing average sojourn time. </p><p>We discussed this convergence process in detail in our post &#8220;<a href="https://www.polaris-flow-dispatch.com/i/173590405/when-does-process-time-converge">How long does it take?</a>&#8221;  The reader is encouraged to review that post for more details on this convergence mechanism.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!czno!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!czno!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!czno!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!czno!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!czno!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!czno!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png" width="724.65625" height="392.5221354166667" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:650,&quot;width&quot;:1200,&quot;resizeWidth&quot;:724.65625,&quot;bytes&quot;:78342,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!czno!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!czno!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!czno!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!czno!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffb286d00-5af8-4b6e-a346-b576556fa252_1200x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 7: Residence Time converges to Sojourn (Cycle) Time</figcaption></figure></div><p></p><p>The bottom chart tracks the relationship between the average residence times and sojourn times of items. </p><p>Since residence time over long observation windows encodes both the cycle time of all items that have completed up to that point as well as the age of the in progress items up to that point, this chart captures the dynamics of both work item aging and sojourns in one view. </p><p>Since in a stable process residence time average is very close to the average sojourn time, the element sojourn times will be distributed around the residence time average, showing that internal aging remains under control across the sample path<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-11" href="#footnote-11" target="_self">11</a>.   </p><h2>Sample Path Coherence</h2><p>Finally let&#8217;s put all the material above together into a simpler, easier to use top level metric that we can use to characterize flow in a process. </p><p>To recap, measuring and tracking  the three sample path flow metrics:</p><ul><li><p>L(T): the time average of N(t) over [0,T]</p></li><li><p>&#923;(T): the cumulative arrival rate over [0,T]</p></li><li><p>w(T): the average residence time over [0,T]</p></li></ul><p>give us a complete set of metrics to describe and reason about flow at <em>all points where a process can be observed.  </em></p><p>We&#8217;ve also see that when these values converge to finite limits, these limit values are also the same as the externally facing operational metrics of interest - sojourn time and throughput.  </p><p><em>At any point</em> where this happens we say that the sample path flow metrics are <em>coherent</em>. </p><p>In general, it is not <em>necessary </em>for the process to converge to a limiting value for the flow metrics to be coherent. So equilibrium and coherence are related but independent concepts.  </p><p>In fact, there are many points along the sample path where the sample path flow metrics are coherent even if the process itself is not stable. In a convergent process, there are usually even more points along the way where these metrics are close enough to each other that in practice the sample path flow metrics serve as useful proxies for the externally facing metrics.</p><p>In <a href="https://www.polaris-flow-dispatch.com/i/172332418/sample-path-coherence">Little&#8217;s Law in Complex Adaptive Systems</a> we showed how to measure the <em>empirical</em> sojourn times <em>W</em>*(T) and arrival rate <em>&#955;*(T)</em>  that lets us assess how <em>often </em>a process is coherent along its sample path by measuring how <em>far</em> away the product &#955;*(T).<em>W</em>*(T)  from the value <em>L(T)</em> at each point in the observation window. </p><p>We can visualize this using a pair of scatter plots</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YiOL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YiOL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 424w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 848w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 1272w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YiOL!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png" width="1200" height="570.2205882352941" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b3698693-c838-49b4-851a-a0d51f47b879_1088x517.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:517,&quot;width&quot;:1088,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:96985,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YiOL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 424w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 848w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 1272w, https://substackcdn.com/image/fetch/$s_!YiOL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb3698693-c838-49b4-851a-a0d51f47b879_1088x517.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 8: Sample path coherence (unadjusted for mixing period)</figcaption></figure></div><p>The plot on the left hand side plots t L(T) vs  &#923;(T).w(T) and since these are always equal per the finite version of Little&#8217;s Law, all points will lie on the<em> x=y </em>line. The plot on the right show L(T) vs &#955;*(T).<em>W*</em>(T) and these will points will lie on the <em>x=y only </em>when the process is coherent. </p><p>The right hand plot shows how often the difference L(T) - &#955;*(T).<em>W*</em>(T) remain within a fixed tolerance &#949;. The plot shows that for our process, Little&#8217;s Law &#8220;applies&#8221; within a 5% tolerance for 75.6% of the points on the sample path. </p><p>This <em>sample path coherence </em>metric is very useful global process metric to assess how far away the process is from stability over the entire sample path at any point in time. </p><p>The number shown in figure. X  includes all the transients and instabilities at the beginning of the measurement, and it is helpful to suppress those by only looking at a suffix of the sample path where these numbers have started to stabilize. </p><p>For our sample path, removing the first 20 days of observations,  we get the following sample path coherence chart - which indicates that the sample path flow metrics remain within 5% of  externally facing business metrics for 96.1% of the sample path excluding the initial mixing period.</p><p>When comparing across processes, the first metric is the one to use, but when comparing the same process across time, it is much better to use the metric after the mixing period has been stripped out.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rBdE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rBdE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rBdE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png" width="728" height="582.4" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:600,&quot;width&quot;:750,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:58158,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rBdE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 424w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 848w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 1272w, https://substackcdn.com/image/fetch/$s_!rBdE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1b1504-0d6a-4d6b-918a-0bb00845c312_750x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 9: Sample Path Coherence (adjusted for mixing period)</figcaption></figure></div><p>This truly shows that the combination of WIP limits and SLAs has given us a stable, coherent process! </p><p>Now we can quantify and precisely measure:</p><ul><li><p>What it means for a process to be stable.</p></li><li><p>When it is safe to use sample path flow metrics for business facing decisions.</p></li><li><p>How far away a process is from being stable at any given point in time. </p></li><li><p>And do all this with nothing more than start and end timestamps - ie none of this relies on our knowing <em>how </em>the process behaves internally.</p></li></ul><p>In the next post we will highlight this last point by using the exact same techniques to analyze the process for Team XP. We&#8217;ll see that even though that is also a very stable and coherent process, the mechanisms by which stability is achieved are quite different from the ones for Team Kanban. </p><h2>What about the flow metrics we use today? </h2><p>Despite being rhetorically adjacent to Little&#8217;s Law and queueing theory, our industry-standard flow metrics: cycle time, throughput, WIP, work item age, flow efficiency, and so on, that are widely used and implemented in various tools are not very effective for reasoning rigorously about flow in real-world software development processes.</p><p>These metrics provide descriptive statistics that capture process behavior at points in time or over short reporting windows. What they do not reveal are the underlying mechanics of flow. They do not model or expose the cause-and-effect relationships between what happens inside a process and how the process behaves as a result.</p><p>With the current generation of tools and techniques, our measurement practices still depend on people observing processes over short time windows, trying to interpret transient noise in the data, and drawing conclusions based on intuition rather than on the first principles that govern flow and its dynamics.</p><p>Having built measurement systems using the conventional definitions and studied reams of operational flow data from production software processes in this space for nearly a decade, I firmly believe that the techniques I&#8217;ve described here are necessary to bridge the measurement gaps in reasoning about flow in the industry.</p><p>The shortcomings in current industry practices are both conceptual and practical. They arise from how metrics are implemented in tools and how foundational ideas like Little&#8217;s Law are taught and applied by practitioners: we are not measuring the right things in the right way to reflect the true physics of flow in software development processes.</p><p>Sample path analysis is a foundational technique in building the next generation of operational measurement systems for software development.</p><h2>Coming up next: Team XP</h2><p>In the next post, we will do the same analysis for team XP. As a teaser, here are the sample path flow metrics for that process. </p><p>The reader is encouraged to run the analysis in Fig 3, 4 and 5 with this chart and ask the following questions:</p><ul><li><p>Is this process convergent, if so why? </p></li><li><p>If so, why does it converge? </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0nMr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0nMr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 424w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 848w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0nMr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png" width="1200" height="1100" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1100,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:113891,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174280444?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0nMr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 424w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 848w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!0nMr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F863f3b9d-24a6-478f-a574-894bcc579555_1200x1100.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>We will discuss the answers in detail and contrast with the Team Kanban flow process in part 2. </p><p>Stay tuned or subscribe if you want to get the update when it drops. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Note that we are not questioning whether these techniques are effective - they are quite effective at the small team level, but much less so when we scale beyond that. The question is why? And can we develop the theory and practical techniques needed to bridge the gap?</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>All data that we use here is generated via simulations. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>Many of our first generation flow metrics tools <em>only </em>measure processes in these transient zones, and then measure each of the flow metrics as separate numbers rather than as a tightly linked trio of metrics that move together under invariant relationships. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>Technically, finite bounds on <em>&#923;(T</em>) and <em>w</em>(T) alone don&#8217;t guarantee convergence. Additional <em>rate-stability conditions</em> on <em>N(</em>t) and the <em>cumulative age</em> of work items are also required. In practice, though, if a team consistently <em>adheres</em> to WIP limits and SLAs, these conditions are automatically satisfied &#8212; and they can be verified directly from operational data. We will discuss this point in more detail in the next post where it will be germane to arguing that the process is stable.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>We&#8217;ll see meta-stable behavior much more clearly in the Team XP process behavior, but this can also happen in the Kanban process. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>Think of this as the generalization of what happens on an assembly line where everything takes roughly the same amount of time and the rate at which work is fed is constant. If the system is stable and convergent the mechanism of stabilization is the same per Little&#8217;s Law: it simply unfolds over a longer timescale.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-7" href="#footnote-anchor-7" class="footnote-number" contenteditable="false" target="_self">7</a><div class="footnote-content"><p>It goes without saying that like all flow metrics, sample path flow metrics are backward looking averages. They don&#8217;t say anything about how the process will behave in the future. All the usual caveats apply when using them to forecast future behavior, and especially in planning. However a stable/slowly changing average built on long run observations is the first step in constructing meaningful statistical distributions and probability models for the process, so the sample path analysis can be viewed as the first stage of building such models etc for a flow process. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-8" href="#footnote-anchor-8" class="footnote-number" contenteditable="false" target="_self">8</a><div class="footnote-content"><p>The Presence Calculus is largely concerned with analyzing the relationship between long run stable flow metrics and their counterparts over the short run. This is still a very different approach from what current flow measurement systems do. We will have more to say about this in future posts, but if you want to read ahead, much of the technical machinery is described in &#8220;<a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html">The Presence Calculus: A Gentle Introduction.</a>&#8221;</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-9" href="#footnote-anchor-9" class="footnote-number" contenteditable="false" target="_self">9</a><div class="footnote-content"><p>In the informal sense that we use it in the field today - this is largely an artifact of the WIP limit, not true stability in the sense of being able to apply Little&#8217;s Law.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-10" href="#footnote-anchor-10" class="footnote-number" contenteditable="false" target="_self">10</a><div class="footnote-content"><p>This also shows why CFDs are not a reliable tool for assessing process stability in a complex adaptive system. The CFD only captures the <em>input </em>to the stability analysis using Little&#8217;s Law. It&#8217;s helpful to quickly diagnose spikes, but this information is already explicitly encoded in the sample path. The real stability analysis happens <em>over </em>the area under the sample path. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-11" href="#footnote-anchor-11" class="footnote-number" contenteditable="false" target="_self">11</a><div class="footnote-content"><p>The scatter plot is the familiar &#8220;cycle time scatter plot&#8221;  if you have used tools like Actionable Agile. By overlaying it with average residence time we can quickly check the impact of internal aging on the sojourn times. </p></div></div>]]></content:encoded></item><item><title><![CDATA[What is Residence Time?]]></title><description><![CDATA[Its not a cycle time by another name]]></description><link>https://www.polaris-flow-dispatch.com/p/what-is-residence-time</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/what-is-residence-time</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Tue, 30 Sep 2025 14:31:59 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/d185dfec-500b-44b4-b928-8636acba8240_1813x1274.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!19qP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!19qP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 424w, https://substackcdn.com/image/fetch/$s_!19qP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 848w, https://substackcdn.com/image/fetch/$s_!19qP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 1272w, https://substackcdn.com/image/fetch/$s_!19qP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!19qP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png" width="1456" height="876" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:876,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:102149,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!19qP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 424w, https://substackcdn.com/image/fetch/$s_!19qP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 848w, https://substackcdn.com/image/fetch/$s_!19qP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 1272w, https://substackcdn.com/image/fetch/$s_!19qP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1671acb4-326e-441e-976c-4fe79e8f525f_1508x907.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"></figcaption></figure></div><p>In &#8220;<a href="https://www.polaris-flow-dispatch.com/p/how-long-does-it-take?r=fjllf">How long does it take?</a>&#8221; the  previous post in my series on <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf">Little&#8217;s Law</a>, I focus on the importance of a metric called <em>residence time</em>. It&#8217;s a fundamental concept you need to know about in order to understand how Little&#8217;s Law and flow metrics really work under the hood. </p><p>Also, it has huge value as a day-to-day operational metric in it&#8217;s own right.  </p><p>But the concept is probably unfamiliar to most people &#8212; even those well-versed in the principles of flow and flow metrics. Recently, a number of people have asked me if residence time is just another name for concepts they already know: cycle time, lead time, flow time, and so on.</p><p>Yet another common question has been whether this term refers to the time a process a spends in a specific work flow state like development or QA - this is also called cycle time or flow time in various parts of our community<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. <em> </em></p><p>It isn&#8217;t. </p><p><em>Residence time is a fundamentally different concept</em>, and it is worth understanding what it is. In this post, I&#8217;ll explain the relationship between residence time and the flow metrics we already know very well. </p><h3>The standard flow metrics</h3><p>Let&#8217;s look at the familiar metrics we use today&#8212;lead time, cycle time, flow time etc. All are <em>elapsed-time metrics</em>. Each measures the time between two events that mark the beginning and end of some process in a system:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8FYj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8FYj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 424w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 848w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8FYj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png" width="1456" height="474" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:474,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:145331,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8FYj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 424w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 848w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 1272w, https://substackcdn.com/image/fetch/$s_!8FYj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a3eb6b9-0718-442a-9bb8-6a6d7ab9201e_3076x1002.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: Sojourn Time: elapsed time from start to finish for a process</figcaption></figure></div><ul><li><p>Project approval &#8594; delivery to customers</p></li><li><p>Customer request &#8594; fulfillment</p></li><li><p>Feature is available for acceptance testing &#8594; Feature is accepted</p></li><li><p>Defect is logged &#8594; fix deployed to production</p></li><li><p>PR is opened &#8594; PR is merged</p></li></ul><p>Practitioners use different name like lead time, flow time, cycle time etc for these metrics, and also the same terms with different meanings: there is a fair amount of inconsistency in the way we use these terms today in the industry. </p><p>But whether we call it a lead time, cycle time or flow time,  the important thing is not the specific name: it&#8217;s the <em>definition of the start and end events and their domain semantics</em>. </p><p>Also, what matters is that they are <em>measuring different underlying processes</em>. For a given process it is useful to have a generic term that refers to the time it takes to complete that process from start to finish - we will use the term <em>sojourn time</em> for this. </p><h3>Sojourn time</h3><p>In classical queueing theory, a <em>queue</em> serves as an abstraction for such processes<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>.  The events are arrivals and departures at a queue,  and the elapsed time between arrival and departure is generically called <em>sojourn time</em>.  </p><p>&#8220;Sojourn&#8221; is a neutral term: it simply means time for an item to &#8220;travel across&#8221; the queue, or to be processed.  All the elapsed time metrics we see in practice are all just different flavors of sojourn time. So we&#8217;ll adopt <em>sojourn time</em> as our <em>generic</em> term for such metrics. In this sense, lead time, cycle time, flow time as defined by various practitioners are <em>all </em>sojourn times for some underlying process. </p><p>The <em>average</em> sojourn time for a process is an important operational metric because is the <em>W</em> in Little&#8217;s Law<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L = \\lambda.W&quot;,&quot;id&quot;:&quot;KYAEVKDWNV&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>But residence time is not <em>a sojourn time. </em>It&#8217;s a completely different concept.</p><p>Here&#8217;s why we need it.</p><h3>Average sojourn time is tricky to measure when variability is high</h3><p>Sojourn time is always <em>item-relative</em>. You measure the elapsed time for a <em>given item </em>from start event to end event. </p><p>You can compute an average of sojourn times of a set of items easily if you have a set of start and end events for those items. <em>But this implies you can observe the whole journey of all the items and know when they start and finish. </em> </p><p>In reality, we often observe processes mid-stream. Some items are already in progress when we start observing, or haven&#8217;t yet finished by the time we stop. Their start or end times might be unknown. Other items start <em>or</em> finish during the window. Other start <em>and </em>finish during the window. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BVBE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BVBE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 424w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 848w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 1272w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BVBE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png" width="1456" height="771" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:771,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:781674,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BVBE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 424w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 848w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 1272w, https://substackcdn.com/image/fetch/$s_!BVBE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a4fa66d-f6a2-4b11-b1d4-df201a1919f8_5848x3097.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: Average sojourn time is not well-defined over finite observation windows</figcaption></figure></div><p>This matters because when we measure the three quantities L, &#955; and W in Little&#8217;s Law they <em>have to be measured over the same observation window</em> before you can even consider applying any of the machinery of the law. </p><p>What kind of average sojourn do you get if you can&#8217;t observe the whole journey and are simply observing the process over some arbitrary finite window of time? </p><p>The standard approach is to measure average sojourn time for the items that <em>end </em>i<em>n the observation window</em>. Pretty much all the standard definitions of lead time, cycle time, flow time etc in use today assume this. In Fig 2 these would the average of the green bars, but <em>these averages are not being measured across W2 - you need to expand the observation window to capture all the events involved. </em> <br><br>We discussed the problems this creates in our post last week</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;09f195d6-47ef-41f5-8b6d-102f56120da8&quot;,&quot;caption&quot;:&quot;This is the first in a series of posts exploring specific applications of sample path analysis in complex adaptive systems. We introduced this topic in broad strokes in Little&#8217;s Law in Complex Adaptive Systems.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How long does it take? &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:26108691,&quot;name&quot;:&quot;Krishna Kumar&quot;,&quot;bio&quot;:&quot;Dr. Krishna Kumar is the Founder and CEO of Exathink Research, a technical advisory firm that helps software companies measure and improve product development flow. \nMore at exathink.com &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20a997b3-1167-4216-b0fe-e617a0360412_1856x1856.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-09-23T16:02:28.976Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!0HGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/how-long-does-it-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:173590405,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;The Polaris Flow Dispatch&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Z1zn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6549fe35-8fc5-4ed0-840a-a0012436332a_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>The problems raised here are not theoretical problems. The reason that the three flow metrics as we measure them today don&#8217;t obey Little&#8217;s Law is <em>because they are not being measured across a consistent observation window</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>. </p><h3>Enter residence time</h3><p>Residence time is<em> </em>a new kind of elapsed time metric that can be applied to <em>any</em> finite observation window. Residence time is not <em>item-relative</em> but <em>observer-window-relative.</em> If I observe a process over the window [0,T] <em>residence time</em> measures the portion of each item&#8217;s elapsed time that overlaps with that window.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2LlN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2LlN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 424w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 848w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 1272w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2LlN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png" width="1456" height="1182" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1182,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:229220,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2LlN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 424w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 848w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 1272w, https://substackcdn.com/image/fetch/$s_!2LlN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2e23379-5a64-4987-97ac-ca148921810c_3063x2487.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: Average residence time is well-defined over a finite observation window, but it is not the same quantity as sojourn time</figcaption></figure></div><p>In Fig 3 these are the durations shown in green. Because residence time is &#8220;clipped&#8221; by the observation window, it&#8217;s always less than or equal to the full sojourn time <em>for any given item</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>.</p><p>We can define two different <em>kinds of elapsed time averages</em> for given a set of items. </p><ul><li><p>Their<em> average</em> sojourn time across some set of items (over some large unknown horizon) that includes all their start and end points: <em>W&#8203;,</em></p></li><li><p>Their <em>average</em> residence time in a <em>finite</em> observation window [0,T] as <em>w(T)</em>.</p></li></ul><p>Now we have two averages which are both well-defined but are potentially defined over different observation windows.  </p><blockquote><p>Given <em>any</em> sojourn time, we can define a <em>related</em> observation-window relative <em>residence time. </em> </p><p>Now the question becomes <em>are there any observation windows</em> where you  get the <em>same average value</em> when you <em>measure both quantities simultaneously</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a>. </p></blockquote><p>Residence time is a key measurement in sample path proofs of Little&#8217;s Law, so measuring processes using residence time mirrors how those mathematical proofs show how and when Little&#8217;s Law holds. </p><h2>The relationship between residence time and sojourn time.</h2><p>As we discussed in <a href="https://www.polaris-flow-dispatch.com/i/169312170/the-finite-version-of-littles-law">The Many Faces of Little&#8217;s Law</a>, average residence time, <em>w(T)</em> plugs directly into Little&#8217;s Law at any finite observation window. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\Lambda(T).w(T)&quot;,&quot;id&quot;:&quot;CWIDZVBUOG&quot;}" data-component-name="LatexBlockToDOM"></div><p>This holds <em>unconditionally</em>, for any observation window, as long as L(T), &#923;(T), and w(T) are also measured over the same window. This means that residence time is always well defined over any finite window, and we can also define a corresponding well-defined version of arrival rate and number in the system such that the finite version of the law holds <em>for any finite observation window. </em></p><p>This is one big difference between residence time and sojourn time - the identity in Little&#8217;s Law holds for sojourn times only under equilibrium conditions. </p><p>The relationship between sojourn times at equilibrium and residence times becomes clear when we measure them over long observation windows: windows much longer than the sojourns themselves, as in Figure 4.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IZge!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IZge!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 424w, https://substackcdn.com/image/fetch/$s_!IZge!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 848w, https://substackcdn.com/image/fetch/$s_!IZge!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 1272w, https://substackcdn.com/image/fetch/$s_!IZge!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IZge!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png" width="1456" height="1244" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1244,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:770444,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IZge!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 424w, https://substackcdn.com/image/fetch/$s_!IZge!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 848w, https://substackcdn.com/image/fetch/$s_!IZge!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 1272w, https://substackcdn.com/image/fetch/$s_!IZge!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb8aa25f-4f6e-4a61-9b29-3fd5cfe7052a_1531x1308.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: The relationship between residence time and sojourn time becomes clearer over long observation windows. </figcaption></figure></div><p>Little&#8217;s Law says that <em>if w(T) converges to a finite limit</em> over sufficiently long observation window T, then <em>that limit value W </em>is <em>also</em> the <em>average sojourn time</em> of the items over those sufficiently long windows. </p><p>In these long windows, total residence time of items in the window can be decomposed into two parts: the sum of the completed items&#8217; sojourn times plus the accumulated ages of the incomplete items. </p><blockquote><p>This is the key property of residence time. Over short window, it looks like we are adding up bits and pieces of time. Over <em>long observation windows</em>, those bits and pieces become sojourn time and work item age, and it unifies the time accumulated by completed items and items in progress into a <em>single number. </em></p></blockquote><p>As the window grows, <em>if</em>  the unknown future sojourns of incomplete items become negligible relative to the total sojourn time of completed items, then the <em>average</em> residence time and <em>average</em> sojourn time converge toward the same value. But this convergence is not guaranteed. Whether or not it happens provides a powerful way to distinguish two fundamental modes of process behavior: convergence versus divergence.</p><ul><li><p>If a process is <em>convergent</em>, the average residence time <em>w(T)</em>  approaches a finite limit as <em>T</em> grows. Over that window, average sojourn time <em>W</em> <em>also converges to the same limi</em>t. ie in a convergent process, the average residence time equals the average sojourn time over a sufficient large observation window. That&#8217;s when we can replace w(T) with W in the Little&#8217;s Law formula say Little&#8217;s Law &#8220;applies.&#8221; to the process. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ivua!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ivua!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 424w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 848w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 1272w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ivua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png" width="1146" height="304" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:304,&quot;width&quot;:1146,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:46315,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ivua!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 424w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 848w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 1272w, https://substackcdn.com/image/fetch/$s_!Ivua!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8adce9f-ffdf-48d1-aefe-9486ffa2f789_1146x304.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: Convergent metastable process</figcaption></figure></div><p>If the two values converge to a single value and stay there forever, then the process is <em>stationary</em> and we can simply use that limit value as<em> the average sojourn time W </em>in Little&#8217;s Law.  This is also a good stable value to provide as your operating characteristic for process time and monitor it for changes. </p><p></p><p>But more likely, you&#8217;ll get processes that behave like the one in Fig 5. These are convergent but the values of w(T) and W(T) come together and drift apart as the process evolves, but as long as they stay within a tolerance of each other, we can use residence time as a very accurate proxy for sojourn time. </p><p></p><p>This kind of process is called <em>metastable, </em>and in a complex system this is what we should expect residence times and sojourn times to look like most of the time. </p><p></p></li><li><p>If a process is <em>divergent</em>, the averages never converge no matter how long you observe the process.  So you can never apply L= &#955;W to that process.  And measuring residence time and sojourn time together, makes this divergence  visible early. </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!twBu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!twBu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 424w, https://substackcdn.com/image/fetch/$s_!twBu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 848w, https://substackcdn.com/image/fetch/$s_!twBu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 1272w, https://substackcdn.com/image/fetch/$s_!twBu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!twBu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png" width="1110" height="307" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7cad57f1-4f42-44de-b902-10de38349853_1110x307.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:307,&quot;width&quot;:1110,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:44340,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!twBu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 424w, https://substackcdn.com/image/fetch/$s_!twBu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 848w, https://substackcdn.com/image/fetch/$s_!twBu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 1272w, https://substackcdn.com/image/fetch/$s_!twBu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cad57f1-4f42-44de-b902-10de38349853_1110x307.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: A divergent process</figcaption></figure></div><p>This is why <em>residence time </em>is by far, the operationally more useful metric. Sojourn time is useful to report metrics after the fact, but residence time is what lets you really understand the process dynamics from moment to moment. </p><h3>Operator vs participant view</h3><p>There is another way to look at the relationship between sojourn time and residence time. </p><ul><li><p>Sojourn time is the participant&#8217;s view&#8212;how long the customer experienced in the process.</p></li><li><p>Residence time is the operator&#8217;s view&#8212;how much of that elapsed time was visible within an operational window.</p></li></ul><p>When these two align on average, we say the flow metrics are <em>coherent</em>.</p><h3>The bottom line</h3><p>Residence time is more than another name for  cycle time. It&#8217;s a complementary, but <em>necessary</em> lens to measure any given elapsed time metric reliably when processes sojourn times are much larger than the standard measurement window and/or the processes move continuously in and out equilibrium - as most software development processes do. </p><p>Sojourn time tells you how long an item spent from start to finish. Residence time tells you how long that item was &#8220;present&#8221; in your observation window whenever you observe it <em>over any period of time</em>.</p><p>So a good way to think about it is as shown in Fig 7: </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qibr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qibr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 424w, https://substackcdn.com/image/fetch/$s_!qibr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 848w, https://substackcdn.com/image/fetch/$s_!qibr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 1272w, https://substackcdn.com/image/fetch/$s_!qibr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qibr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png" width="1456" height="940" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:940,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:257519,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/174567240?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qibr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 424w, https://substackcdn.com/image/fetch/$s_!qibr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 848w, https://substackcdn.com/image/fetch/$s_!qibr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 1272w, https://substackcdn.com/image/fetch/$s_!qibr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb45652d-fe29-436e-9502-da115c0a440a_2228x1439.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 7: Every sojourn time has a corresponding residence time</figcaption></figure></div><blockquote><p>For <em>any</em> sojourn time metric you can define for a flow process, there is a <em>corresponding </em>residence time metric. The relationship between average residence time and average sojourn time over sufficiently large observation window let us determine how close or how far away the process is from a equilibrium state per Little&#8217;s Law. </p></blockquote><p>This applies to lead times, cycle times, flow times etc - <em>any</em> sojourn time metric you can define. </p><p>It is also important to remember that <em>convergence/divergence is not a system property but a process property. </em>In applying sample path analysis, we think of <em>lead time, cycle time </em>etc as representing different processes at different granularities (potentially nested within each other). <br><br>Each of these processes may be convergent or divergent independently, and it is possible that the they impact each other&#8217;s convergence/divergence. Sample path analysis will not all <em>explain</em> these interactions but will show the <em>impact of those interactions via </em>convergence/divergence of each process as measured over a common observation window.  </p><p>Thus the first step to understanding the dynamics of these processes is to understand <em>whether </em>each of them converges or diverges. </p><p>Then we can start asking why they behave the way they do. </p><p>We discussed how this type of causal reasoning might work in</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;4123d9a9-6cef-4519-b8ad-bb2dd18be030&quot;,&quot;caption&quot;:&quot;Most people think Little&#8217;s Law is about stability. But what it says about causality is even more important.Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Causal Arrow in Little's Law &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:26108691,&quot;name&quot;:&quot;Krishna Kumar&quot;,&quot;bio&quot;:&quot;Dr. Krishna Kumar is the Founder and CEO of Exathink Research, a technical advisory firm that helps software companies measure and improve product development flow. \nMore at exathink.com &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20a997b3-1167-4216-b0fe-e617a0360412_1856x1856.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-08-22T16:02:09.580Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8279b9f-dbd2-485a-8dd4-d512655d5a9b_971x837.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:171471652,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:5,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;The Polaris Flow Dispatch&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Z1zn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6549fe35-8fc5-4ed0-840a-a0012436332a_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p> The Causal Arrow in Little&#8217;s Law.  </p><p>Check that post out for more on how we can use these metrics to reason about systems. </p><div><hr></div><p>Let me know in the comments if this is still confusing or whether I can help make this clearer. </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>The term residence time is used in <a href="https://homes.cs.washington.edu/~lazowska/qsp/">performance analysis of computer systems</a> to refer to the time an item spends in a particular queue in a network model of a computer system. Some operations books also use this to define the time spent at a specific service station. In that sense it could be said that we are inventing a new meaning for this term here. But we have two counter-arguments. </p><p>First, the term residence time is not commonly used in any of these senses in the software development flow community - we use cycle time or flow time for this, and this is already confusing as it is. </p><p>Second the most important sense in which residence time is used in those other operations management contexts is that <em>they assume that one can unconditionally apply Littles Law to a single node/station using residence time</em>. This assumption does not hold for flow time or cycle time in software, but the definition of residence time as the observation-window relative elapsed time preserves this semantics. </p><p>So the key thing about residence time that differentiates it from all the other operational elapsed time metrics is the fact that <em>we can always plug it into the finite version of Little&#8217;s Law</em> and in combination with the cumulative arrival rate, apply Little&#8217;s Law to reason about flow at all points in time.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>In particular, processes where we want to understand the ratio of time spent waiting to time spent processing - queuing theory is the study of waiting in processes. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>Dr. Little himself called <em>W</em> &#8220;waiting time&#8221; in his writing, but queuing theorists needed to distinguish between time &#8220;waiting for service&#8221; and  &#8220;in service&#8221;, so they reserved sojourn time for W and queue time for &#8220;waiting for service&#8221;. So this  confusion around naming these things goes back decades - not a new phenomenon.  Bottom line is define start and end events that demarcate initial and terminal conditions for your process and call the time between these sojourn times generically.  You can rename them whatever you prefer in your context, provided you do it consistently in <em>your context.</em></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>The standard measurement of average WIP also suffers from similar problems - but in general the problem of verifying whether Little&#8217;s Law applies is <em>entirely</em> a problem of figuring out how to construct a consistent measurement window over which we can measure all three parameters of Little&#8217;s Law in a well-defined manner. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>Although average residence time for a finite window can be greater than the average sojourn time for the items that finished <em>in that window. </em>This may seem paradoxical but it it&#8217;s really not. Whenever we look at an item that has not completed, its residence time is less than its sojourn time - but some of that sojourn time lives in the future. In any finite observation window, the residence times of incomplete items may be much bigger than the sojourn times of the completed items in that window. So the averages residence time in a window can (and often is) larger than the average sojourn time <em>for that window. </em></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>The non-obvious part here is that the <em>averages </em>may match even if not all the items being measured in both sets match up perfectly, but as long as they are being measured over the same observation window, the discrepancies become irrelevant over sufficiently long windows - this is what Little&#8217;s Law allows us to claim. </p></div></div>]]></content:encoded></item><item><title><![CDATA[How long does it take? ]]></title><description><![CDATA[Measuring process time in a complex adaptive system]]></description><link>https://www.polaris-flow-dispatch.com/p/how-long-does-it-take</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/how-long-does-it-take</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Tue, 23 Sep 2025 16:02:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!0HGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0HGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0HGp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 424w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 848w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 1272w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0HGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png" width="1024" height="1093" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36848439-827e-42b5-badf-24322cd07868_1024x1093.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1093,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3359360,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9e5b382-5740-4421-88ab-b9cec9ee087c_1024x1536.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0HGp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 424w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 848w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 1272w, https://substackcdn.com/image/fetch/$s_!0HGp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>This is the first in a series of  posts exploring specific applications of sample path analysis in complex adaptive systems. We introduced this topic in broad strokes in <a href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">Little&#8217;s Law in Complex Adaptive Systems</a>. </p><p>In this series of follow-up posts we will dive into specific applications, pointing back to parts of that larger document for more detail and context. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p>In this post, we&#8217;ll look at the problem of <em>measuring</em> process time in a complex adaptive system (CAS)  accurately.  The conceptual challenge here arriving at a defensible definition of  &#8220;process time&#8221; and a method to measure it, in situations where you cannot always place a firm bound on how long individual instances of a process might take to complete. </p><p>This is not a problem unique to a CAS specifically, but it arises commonly when analyzing the dynamics of <a href="https://www.polaris-flow-dispatch.com/i/172332418/marked-point-processes">flow processes in a CAS</a>. </p><p>It usually begins with the age-old question..</p><h2>How long will it take? </h2><p>The answer is a key input to help guide where we invest time and money in &#8220;it&#8221;. Even when we have a view of expected payoffs for doing &#8220;it&#8221;, perceived time and resource commitments heavily shape what gets prioritized.</p><p>We know answering this is hard in general because it is hard to predict the future, especially when working in a complex system. </p><p>But to even answer the question, we need to answer what might seem like an easier question, but is not always straightforward as it might seem: &#8220;how long <em>does</em> it take?&#8221; </p><p>Examples could be &#8220;how long do deals take to close?&#8221;, &#8220;how long does a feature take to be adopted by 10% of customers?&#8221;, or &#8220;how long do customer implementations take?&#8221; </p><p>Given some operational process, all we are asking for here, is a measure of <em>historical</em> process time. Presumably, this should be more straightforward to answer, since it involves no prediction. </p><p>This is how we would answer it today: </p><ol><li><p>Identify the operational process of interest. </p></li><li><p>Observe the process for some period of time (or look at historical data if available) and take measurements for how long instances take complete. Typically this period is aligned to a business reporting window, like weeks, months, quarters etc.</p></li><li><p>Report some statistical measures on the empirical distribution of process times: averages, percentiles, whatever you prefer. </p></li><li><p>Continue to repeat the process periodically, and report these measures for the updated reporting period. </p></li></ol><p>This would reported as the answer to &#8220;how long does it take?&#8221;.</p><p>To  answer &#8220;how long <em>will</em> it take?&#8221; you might make some assumptions like: the process time in the future will be comparable to the past, or try and fit a probabilistic model and make forecasts for how long future instances of the process will take to complete. </p><p> This is how we do it today: measure the recent past, report the observed process time statistics for a standard reporting period, perhaps create a forecast. Almost all our operational dashboards work this way, no matter what process time we are measuring. </p><p>But does this actually answer &#8220;how long does it take,&#8221; when there is significant variability and uncertainty in process time, or when we cannot reasonably bound process times up front?</p><p>Not quite. Not even in theory.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>Complex systems are messier</h2><p>The fundamental problem is that processes in complex systems don&#8217;t always have well-behaved statistical distributions. Statistical measures such as averages and variances are not stable, but vary over time. In other words the underlying distributions are not <em>stationary</em>.<em> </em></p><p><em>Sometimes</em> process times can be consistently bounded, and in such cases,  direct measurement over a few weeks is often enough to build a stationary distribution of process time.  Such processes <em>do exist even in software development</em> - for example,  a software build process, or cycle times in a small disciplined engineering team, delivering changes to production in small batches, with continuous integration and deployment of code. </p><p>But they are the exception. Non-stationary distributions, and uncertain process times are the norm for flow processes once we move past the smallest units in an organization, or if the processes involve collaboration across businesses of functional silos within a business. </p><p>We are in a non-stationary regime by default in a complex system and here, the <em>measurement window </em>and the <em>thing being measured</em> get tangled when we measure process time.</p><h3>An example: a sales process</h3><p>&#8220;How long do deals take to close?&#8221; seems like a straightforward question. The standard way of answering the question would be to measure and report this on a quarterly cadence. </p><p>But some deals close after one demo; others drag on for months. Some begin in one quarter and finish in another. Others span multiple quarters. It really depends on market dynamics, customer demand, specific sales motions in play etc. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mrqK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mrqK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 424w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 848w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 1272w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mrqK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png" width="1456" height="999" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:999,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:348946,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mrqK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 424w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 848w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 1272w, https://substackcdn.com/image/fetch/$s_!mrqK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c203c0-faca-4516-b0b2-f497bbfeb014_3624x2487.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: Finite Window (Quarter By Quarter) Averaging</figcaption></figure></div><p>No single quarterly &#8220;average time-to-close&#8221; metric is <em>objectively</em> correct <em>if </em>the question is &#8220;how long do deals take to close?&#8221;. </p><blockquote><p>Quarter-by-quarter averaging answers the question &#8220;how long did the deals that we closed <em>this quarter</em> take to close?&#8221; </p></blockquote><p>Its a very different question and as shown in Fig 1, it produces a noisy, volatile number that suffers from memory loss, recency bias, lagging effects from deals that take a long time to close, and most importantly, ignores <em>the biggest risk items at the time of measurement</em>: the time spent on pending deals that aren&#8217;t being counted in the average <em>in the quarter being measured</em>. We are all familiar with the end-of-quarter gymnastics to make the sales &#8220;numbers&#8221; that results from this strategy<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p> &#8220;How long do deals take <em>to</em> close?&#8221; is a fundamentally different question, and <em>that</em> is the question  we <em>need</em> to answer, because it helps us answer follow-ons like: </p><ul><li><p>That&#8217;s too long. What can we do to close deals faster?</p></li><li><p>Are deals taking longer to close over the last six months?</p></li><li><p>Did implementing the new AI sales tool help us close deals faster?</p></li><li><p>Is our new sales motion letting us close deals faster? </p></li></ul><p>You can try and answer these questions with the quarter-by-quarter average as your starting point, but it&#8217;ll be hard to tell signal from noise.  Those numbers are often so volatile that you cant tell how much of it is the true <em>voice of the process </em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> vs measurement noise.  </p><p>Sales is not unique in this. </p><ul><li><p>Delivering a complex software feature touching multiple teams to production, </p></li><li><p>Contract negotiation or project scope definition between multiple parties,</p></li><li><p>Measuring adoption cycle time after a new product feature is introduced,</p></li></ul><p>almost any collaborative, process involving independent agents that involves feedback loops and execution risk, shows the same pattern. In other words, most processes in complex adaptive systems.</p><p>Reporting process time on a rigid business reporting cadence in such an environment produces plausible sounding statistics, but they are often noisy, and not a robust basis for sound decision making. </p><h2>Revealing the Voice of The Process</h2><p>When we working with non-stationary processes Little&#8217;s Law becomes very useful. </p><p>Contrary to widespread and popular belief even among experts, Little&#8217;s Law holds <em><a href="https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">even in processes where the distribution of process times is non-stationary! </a></em>It is one of the few analytical tools we have that we can reason about the relationship between how averages of distributions change over time without explicitly <em>reasoning about the distributions themselves</em>. And we can do so, entirely <em>deterministically</em> without appealing to any stochastic assumptions at all! This makes it a powerful tool to reason about process time in complex adaptive systems. </p><p><em><a href="https://www.polaris-flow-dispatch.com/i/172332418/sample-path-construction-for-l&#955;w">Sample-path analysis</a>,</em> which we examined as the core technique behind deterministic proofs of <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf">Little&#8217;s Law</a>, gives a precise and defensible answer in such situations. It makes some subtle adjustments how we define and measure process time,  and in so doing fundamentally solves the problems with finite window sampling we outlined above. </p><p>Here&#8217;s how it works:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HTqK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HTqK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 424w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 848w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HTqK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png" width="1456" height="980" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:980,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:295083,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HTqK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 424w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 848w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!HTqK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd393d161-1d9b-47a5-89d3-cdac66e2f387_4062x2733.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig2 : Sample path analysis (infinite window)</figcaption></figure></div><p>You start observing the process from some <em>fixed </em>starting point in time. This could be a date in the past if you have historical data. Some items may already be in flight; that&#8217;s fine, note it and keep going<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. The key with sample path analysis is to <em>continuously</em> measure the system for a <em>long </em>time from this starting point<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>. So rather than observing on fixed width windows, you observe along a continuously expanding window fixed at <em>one end</em>.</p><p>As you observe:</p><ol><li><p>Track <em>completed</em> instances and their full durations.  These are called <em>sojourn times</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>. </p></li><li><p>Track <em>in-flight</em> instances and the time they&#8217;ve accumulated <em>so far</em> - this is their <em>current age</em>. </p></li><li><p>Add them up: this total is the <em>residence time</em>: the time each observed instance has &#8220;spent alive&#8221; in your window. </p></li><li><p>Calculate the <em>average residence time</em>: total residence time across all instances &#247; number of instances observed. In the figure this is sum of all green durations. </p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!A6mX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!A6mX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 424w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 848w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!A6mX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png" width="1456" height="925" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:925,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:367245,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!A6mX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 424w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 848w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!A6mX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ecd24f7-e048-4f1e-8b9f-4558b8e3e020_4303x2733.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: Residence time vs sojourn time</figcaption></figure></div><blockquote><p>To recap there are two possible lenses on process time:</p><ul><li><p><em>Residence time</em>: total time accumulated by an instance in a finite observation window (all green durations in figure)</p></li><li><p><em>Sojourn time</em>: the true start-to-finish time of an instance, only known once it completes. Equals residence time if instance also started in the observation window (instance B in the figure). </p></li></ul></blockquote><p>Sojourn time is instance-relative and residence time is observation-window relative. The <em>difference</em> between residence time and sojourn time are the <em>end-effects</em> for the window - the blue bits in the figure 2. </p><p>You can think of average residence time as a <em>current estimate</em> of the average sojourn times for those instances that are you have observed so far. But you cannot know the true sojourn time for this window <em>until some point in the future</em>. </p><p>This difference between residence and sojourn times is a measure of the <em>epistemic</em><strong> </strong><em>uncertainty</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a> in your estimate of sojourn times at the moment of measurement. </p><blockquote><p>Where this uncertainty is bounded, we&#8217;ll call the process <em>convergent</em>, and <em>divergent</em> otherwise.  </p></blockquote><p>In <em>convergent</em> processes, if you observe long enough, the <em>average</em> residence time and the <em>average</em> sojourn time converge. Intuitively, the &#8220;blue bits&#8221; you haven&#8217;t yet seen - the remaining tails of in-flight items - become negligible compared to the total observed sojourn times across all instances in a long enough observation window.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-u1o!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-u1o!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 424w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 848w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-u1o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png" width="1456" height="951" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:951,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:237393,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-u1o!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 424w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 848w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!-u1o!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F23ae13be-32b3-4cc3-9df9-9bfd17ae57f9_4184x2733.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: Convergence and vanishing end effects</figcaption></figure></div><p></p><p>Note that convergence is neither <em>good </em>nor <em>bad</em>. It depends on the interpretation of process time. If the process time you are measuring has a cost it is good for the process to be convergent because we are keeping that cost bounded. If the process time you are measuring creates benefits, economic gains etc. then it is good for the process to be divergent - for example, customer lifetime and the revenues generated over that lifetime. </p><p>Ultimately measuring process time matters only as interpreted as a carrier for time-value, whether that is cost, risk, benefit, economic gains etc determines whether we seek convergence or divergence in that measurement. </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/how-long-does-it-take?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/how-long-does-it-take?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/p/how-long-does-it-take?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><h2>When does process time converge?</h2><p>In Fig 5 below we distinguish between the two components of residence time at any moment in time. </p><ul><li><p>The residence time of the completed instances (shown in grey) which are their true sojourn times</p></li><li><p>The age of the in-flight instances (shown in green) which are only our currently known estimate of a the true sojourn time. </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LZn4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LZn4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 424w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 848w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LZn4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b5a57848-8d43-4817-ab59-280448daa348_3767x2733.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:242313,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LZn4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 424w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 848w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 1272w, https://substackcdn.com/image/fetch/$s_!LZn4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb5a57848-8d43-4817-ab59-280448daa348_3767x2733.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: Total age of instances in the observation window (green bars)</figcaption></figure></div><p>There are <em><a href="https://www.polaris-flow-dispatch.com/i/172332418/why-managing-age-is-the-key-to-convergence">precise mathematical conditions</a></em> for when this happens, and we can monitor for them in real-time. Let <em>R(T)</em> be the <em>total age </em>of the in-flight instances in the observation window. </p><blockquote><p><a href="https://www.polaris-flow-dispatch.com/i/172332418/convergenceequilibrium-and-coherence">Convergence is guaranteed</a> if the <em>total age of in-flight items</em> grows <em>sub-linearly</em> with the <em>length of your observation window</em>, ie <em>R(T)/T &lt; 1 for all T.</em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7KXS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7KXS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 424w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 848w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 1272w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7KXS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png" width="1456" height="748" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:748,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:425195,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7KXS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 424w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 848w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 1272w, https://substackcdn.com/image/fetch/$s_!7KXS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0603acf4-ea64-4e07-b530-ce7da7b04f6f_2295x1179.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: The process converges if R(T)/T &lt; 1 for all T</figcaption></figure></div><p>If total age <em>grows linearly with the window length</em>, the average residence time grows faster than the average sojourn time and two wont converge (see Fig 6). This typically means that you have long running instances that never complete so they keep adding residence time to the observation window, the longer  you observe it and eventually total age swamps the sojourn times in total residence time. </p><p>So we have a few distinct possibilities each of which can be monitored for. </p><ul><li><p><em>Convergent: </em> Age contribution to the total shrinks over longer windows; the two averages move closer together. If they come together and stay there, we call the process <em>stable.</em></p></li><li><p><em>Divergent</em>: Total age dominates; the averages drift apart and sojourn time is no longer representative of true process time. Residence time still reflects true process time in this scenario.  </p></li><li><p><em>Metastable</em>: The process is convergent. The averages hover near each other but drift in and out of equality, even as <em>the averages themselves change over time.</em>  Most real processes in a complex adaptive system live in this zone.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!coqb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!coqb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 424w, https://substackcdn.com/image/fetch/$s_!coqb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 848w, https://substackcdn.com/image/fetch/$s_!coqb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 1272w, https://substackcdn.com/image/fetch/$s_!coqb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!coqb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png" width="1456" height="569" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:569,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:193519,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!coqb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 424w, https://substackcdn.com/image/fetch/$s_!coqb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 848w, https://substackcdn.com/image/fetch/$s_!coqb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 1272w, https://substackcdn.com/image/fetch/$s_!coqb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe647300e-c90a-4b8f-8d90-d14736cf1977_2040x797.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 7: Metastable signature: residence time converges, but drifts slowly over time. </figcaption></figure></div><p>Metastable behavior represents a process operating in a dynamic equilibrium state, <em>even though the average  process time is changing</em>. When average residence time and average sojourn times are equal we say that the process time measurement is <em>coherent. </em></p><p>For more details on these concepts with precise mathematical definitions and detailed worked example please see <a href="https://www.polaris-flow-dispatch.com/i/172332418/convergenceequilibrium-and-coherence">Little&#8217;s Law in a Complex Adaptive System</a>. </p><p>When process time is coherent,  residence time is an accurate representation of sojourn time and both are accurate representations of process time. In particular, when process time is coherent, the process satisfies Little&#8217;s Law L=&#955;W exactly. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tRZz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tRZz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 424w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 848w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 1272w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tRZz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png" width="1456" height="375" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:375,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:657419,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tRZz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 424w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 848w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 1272w, https://substackcdn.com/image/fetch/$s_!tRZz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe7be932-18b3-4408-94fc-2901b40a5f34_2879x741.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 8: Process time coherence </figcaption></figure></div><p>In metastable regimes, process time drifts in and out of coherence, but as Fig 8 shows, we can measure this precisely at any point in time. </p><p>If the difference between observed residence time and sojourn time at any point in time remains bounded, we also can place finite bounds on how well residence time serves as an estimate for sojourn time. If these bounds can be managed operationally through policies, this give us tools to manage the amount of epistemic uncertainty we tolerate for process time.  </p><p>If  it is <em>impossible</em> to bound this epistemic uncertainty through policy &#8212; say our process involves customers whose actions we cannot control &#8212; then we are operating in a fundamentally divergent process, and we should expect unbounded variation in process time and monitor and react to convergence or divergence as best as we can, rather than expecting we can control it. </p><p>This is a common situation in real-world complex adaptive systems.</p><h2>Residence time as canonical process time</h2><p>Regardless of whether the process is convergent or divergent, residence time remains the canonical measurement of process time for operational purposes. For any observation window [0,T] residence time w(T) is well defined, and it satisfies <a href="https://www.polaris-flow-dispatch.com/i/172332418/the-finite-version-of-littles-law">the finite version of Little&#8217;s Law</a>: </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;w(T) = \\frac{L(T)}{\\Lambda(T)}&quot;,&quot;id&quot;:&quot;NYWCRNPVYC&quot;}" data-component-name="LatexBlockToDOM"></div><p>and this holds whether the process is convergent, metastable or divergent. </p><p>Convergence or divergence concerns how this internally consistent measure relates to the externally reported sojourn time metric once you factor in epistemic uncertainty into the process. In this case,  the difference between residence time and sojourn time represents the quantity we need to manage to. </p><p>How we mange it depends on the interpretation of process time. If we seek convergence, for example<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-7" href="#footnote-7" target="_self">7</a>, we can set tolerances for acceptable drift and growth rate for total age, and when they trigger investigate specific in-flight item(s) (and it is always in-flight items driving divergence) pulling the averages apart.</p><p>In our sales example deals could be aging for a variety of reasons:  </p><ul><li><p>Things are taking too long because of the nature of the deal or unexpected complications that arose in-flight,  </p></li><li><p>They are stalled waiting for decisions, or </p></li><li><p>Because we have too many deals in flight and only a few are actually moving, the rest are waiting for attention. </p></li></ul><p>A full <a href="https://www.polaris-flow-dispatch.com/i/172332418/reasoning-about-cause-and-effect">causal analysis </a>requires us to measure the other two parameters of Little&#8217;s Law <em>and bring in additional domain context</em> <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-8" href="#footnote-8" target="_self">8</a>to help us understand why the process is diverging. We discussed this at a high level in <a href="https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law?r=fjllf">The Causal Arrow in Little&#8217;s Law</a> and show examples of the type of reasoning involved in <a href="https://www.polaris-flow-dispatch.com/i/172332418/reasoning-about-cause-and-effect">Little&#8217;s Law in Complex Adaptive Systems</a>.</p><p>If we seek divergence, then the strategies are usually flipped. For example if process time represents customer lifetime, then our strategies are going to conditioned on reducing customer churn and increasing process time. </p><p>In fig 9, we show an example of a process that we are managing for convergence, that has nevertheless slipped into a divergent state. We <em>dont </em>want to see this pattern if our goal is convergence, but the example does show that the growth rate of total age remains the lever that moves the process from convergence to divergence. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7toL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7toL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 424w, https://substackcdn.com/image/fetch/$s_!7toL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 848w, https://substackcdn.com/image/fetch/$s_!7toL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 1272w, https://substackcdn.com/image/fetch/$s_!7toL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7toL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png" width="1456" height="842" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:842,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:842344,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/173590405?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7toL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 424w, https://substackcdn.com/image/fetch/$s_!7toL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 848w, https://substackcdn.com/image/fetch/$s_!7toL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 1272w, https://substackcdn.com/image/fetch/$s_!7toL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6144cb3e-d99b-4783-82f8-f8939a0b61b8_2653x1534.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 9: Divergence - R(T)/T &gt; 1</figcaption></figure></div><h2>To Recap</h2><p>For flow processes in a complex adaptive system, na&#239;ve elapsed time reports become polluted when the reporting window is much smaller than typical sojourn, and what is &#8220;typical&#8221; can&#8217;t be neatly quantified. </p><p>What you are seeing include significant  distortions introduced by the measurement technique. </p><p>Instead, use sample path analysis to reveal the true, evolving, voice of the process: </p><ul><li><p>Track residence time for both completed and in-flight items.</p></li><li><p>Watch whether unfinished age grows sub-linearly. If it does, average residence time &#8776; average sojourn time, and you have a defensible, real-time answer to &#8220;how long does it take?&#8221; whether that is closing a deal, shipping a feature, or negotiating a contract.</p></li><li><p>If not, monitor whether residence times and sojourn times begin to diverge beyond your defined tolerance. When they do, investigate and intervene where possible. Where no interventions are possible, look for larger. systemic improvements that might be needed. </p></li></ul><p>Now compared to the way process time is measured today we have </p><ul><li><p>A <em>sound metric, residence time, </em> for &#8220;how long does it take?&#8221; that is not entangled with an observation window.  </p></li><li><p>It works even with high variability and highly uncertain process times and is updated in real-time.</p></li><li><p>A <em>live coherence check</em>: are residence and sojourn averages agreeing within tolerance? </p></li><li><p><em>Action triggers:</em> Any  divergence beyond a set tolerance identifies that some action needs to be taken and the causal analysis using Little&#8217;s Law gives us a systematic way to track down potential sources of divergence. .</p></li></ul><p>At each instant you have the best possible answer you can give for &#8220;how long does it take&#8221; and the tools to shape that answer to your needs. </p><blockquote><p>The one thing to keep in mind here is that this entire analysis is entirely deterministic. We are in essence constructing a single, continuously updated sample of the process - a sample path, collecting cumulative process averages as we go along. </p><p>Any insights we get from this <em>are specific to the process we study and for that process alone</em>. </p></blockquote><p>With complex adaptive systems this is the best we can do. What you are seeing when you observe over long enough periods, is the <em>true voice of the specific  process</em> you are observing, free of measurement noise. </p><p>For most processes in complex adaptive systems there is <em>no end date for how long you measure</em> - the process itself is continuously evolving and the only thing you can compare the process with is its past self to understand how and where it is changing, and whether it needs to be nudged in a different direction. </p><blockquote><p>This is what sample path analysis enables us to do - reveal the true, ongoing evolution of the voice of a flow process in a complex adaptive system. </p></blockquote><h2>But how long <em>will</em> it take? </h2><p>Once you have a solid handle on answering &#8220;how long does it take&#8221;, we can turn to &#8220;how long will it take&#8221;.  We&#8217;ll note that whether or not we can answer this depends on whether we can bound epistemic uncertainty.</p><p>In divergent processes, epistemic uncertainty grows without bound, so the only honest forecasts are distributions that acknowledge extreme tail risks. In convergent processes, epistemic uncertainty is bounded relative to the observation window, which opens the door to forecasting. </p><p>Residence time and convergence tests give us the foundation: they tell us when we are in a regime where forecasting is even meaningful.</p><blockquote><p>Hint: Having a long run probability distribution over a convergent process and tools to detect when these probabilities change are key differentiators for forecasting driven by sample path analysis. </p></blockquote><p>But that&#8217;s a subject for another post. We only promised to answer &#8220;how long does it take?&#8221; in this post!</p><div><hr></div><p>In the next post in this series we will dive deeper to get more intuition about how residence time and sojourn time behave when the underlying processes are convergent or divergent. With lots of examples using real data! </p><p>Stay tuned or subscribe below if this is something are interested in learning more about. </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><div><hr></div><p>For more details on how to calculate all these quantities precisely, and how the math works, see my post <em><a href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">Little&#8217;s Law in a Complex Adaptive System</a></em>.</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>That number also suffers from the same problem, but we&#8217;ll address that separately. Lets focus on process time first, because this is what drives that other number. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>The voice of the process is a lovely term that I first read about in Donald Wheelers book: <a href="https://www.amazon.com/Understanding-Variation-Key-Managing-Chaos/dp/0945320531">Understanding Variation</a>. We use it here in the same sense as he does, but with the caveat that in a complex adaptive system we are usually not able to model the voice of the process using a stable distribution as is his baseline assumption. In fact, you may think of our usage of the term as how do you model the &#8220;voice of the process&#8221; when the process is inherently unpredictable. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>The idea is that if we observe over long enough windows, whatever <em>finite</em> end-effects are there before the window will eventually become insignificant compared to the everything else in the window. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>Conceptually this is an infinite window method, but in practice it may make sense to reset the starting point especially if very early segments of sample path history are no longer relevant to the current known operational state of the process. The key thing is that sample path analysis is history sensitive, a key requirement for analyzing process time in complex adaptive systems. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>In operationa management settings, sojourn times are equivalent to what we would normally call Lead Time, Cycle Time, Flow Time etc. depending upon where process boundary was drawn. We use the more neutral term here because (1) this was the original term used in queueing theory where these problems were first studied (2) these other terms are context specific applications to specific processes in specific domains. Sample path theory and Little&#8217;s Law are domain agnostic.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>Our lens for uncertainty is deterministic: we observe a single sample path that unfolds in time. We can observe up to the present, but we cannot see into the future.  In this interpretation, end effects represent the uncertainty in what can be <em>known</em>, at a given time, about when ongoing process instances will complete.</p><p><a href="http://www.columbia.edu/~ww2040/LL_OR.pdf">Kim and Whitt</a> tackle a related question from a more traditonal statistical perspective, treating end effects as contributors to the bias or variance of residence-time&#8211;based estimators for long-run averages of sojourn time. Their focus is on expectations of distributions across all sample paths in a stochastic process. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-7" href="#footnote-anchor-7" class="footnote-number" contenteditable="false" target="_self">7</a><div class="footnote-content"><p>Almost all use cases we&#8217;ll find in use today seek convergence. But it is absolutely not the only way to operate these levers. Every one of these mechanisms can be used to tilt the process into divergent behavior when it means that divergence in the measurement leads to value being created, instead of cost or risks being accumulated. This is one of the major unrealized benefits of this machinery. Ultimately it&#8217;s about seeking convergence or divergence on time-value, not time itself. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-8" href="#footnote-anchor-8" class="footnote-number" contenteditable="false" target="_self">8</a><div class="footnote-content"><p>We emphasize that sample path analysis is a domain agnostic <em>measurement technique, </em>and that&#8217;s all it is. It can accurately measure what is happening and detect proximate cause for a change in measurement using local mathematical cause-effect relationships. But it is not a standalone causal analysis tool. You cannot tell why something is happening in the domain or what actions you need to take to change the process behavior without bringing in specifics of the domain. But the triggers here will help focus what questions you should ask <em>before</em> you dip down into the domain level. </p></div></div>]]></content:encoded></item><item><title><![CDATA[Little's Law in a Complex Adaptive System]]></title><description><![CDATA[Applying sample path analysis to real-world software product development]]></description><link>https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Wed, 10 Sep 2025 16:02:51 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/36cf4f2e-c4fa-46ad-a096-00e401c67e76_1785x1237.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!l0Pr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!l0Pr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 424w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 848w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 1272w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!l0Pr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png" width="1328" height="821" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:821,&quot;width&quot;:1328,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:97648,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!l0Pr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 424w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 848w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 1272w, https://substackcdn.com/image/fetch/$s_!l0Pr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42f56783-7b21-4e49-8c7b-c00bc5435fee_1328x821.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Applying Littles Law in a complex adaptive system</figcaption></figure></div><p></p><h2>Introduction</h2><p>A central thread in our series on Little&#8217;s Law is this: when Dr. John Little f<a href="https://www.linkedin.com/posts/krishnaku1_%F0%9D%98%BF%F0%9D%99%A7-%F0%9D%99%87%F0%9D%99%9E%F0%9D%99%A9%F0%9D%99%A9%F0%9D%99%A1%F0%9D%99%9A%F0%9D%99%A8-%F0%9D%99%8D%F0%9D%99%9A%F0%9D%99%9B%F0%9D%99%A1%F0%9D%99%9A%F0%9D%99%98%F0%9D%99%A9%F0%9D%99%9E%F0%9D%99%A4%F0%9D%99%A3-activity-7367575579853799426-5EY5?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAAEyk0BSBrN50ehjJTO4aN8Bif_N1tf1Ss">irst proved </a><em><a href="https://www.linkedin.com/posts/krishnaku1_%F0%9D%98%BF%F0%9D%99%A7-%F0%9D%99%87%F0%9D%99%9E%F0%9D%99%A9%F0%9D%99%A9%F0%9D%99%A1%F0%9D%99%9A%F0%9D%99%A8-%F0%9D%99%8D%F0%9D%99%9A%F0%9D%99%9B%F0%9D%99%A1%F0%9D%99%9A%F0%9D%99%98%F0%9D%99%A9%F0%9D%99%9E%F0%9D%99%A4%F0%9D%99%A3-activity-7367575579853799426-5EY5?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAAEyk0BSBrN50ehjJTO4aN8Bif_N1tf1Ss">Little&#8217;s Law</a></em>, he did so using the mathematical machinery of stationary stochastic processes. Rooted in probabilistic arguments, his proof showed that the relationship  <em><strong>L</strong></em><strong>=&#955;W</strong> held for stochastic processes under two strong assumptions: that the underlying probability distributions were <strong>strictly stationary</strong> (not just the mean, but every statistical moment, variance, skew, and so on, remains invariant under time shifts) and that the <strong>arrival process was ergodic</strong><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>.</p><p>Those are very restrictive conditions, but they are only <em>sufficient</em> conditions. If they were necessary, the law&#8217;s domain of application would be quite narrow&#8212;limited mostly to highly automated, low variance machine-centric environments like industrial production. Even there, strict stationarity rarely holds. Once humans enter the loop, the assumptions collapse very quickly.</p><p>Process-control techniques&#8212;pull policies, WIP limits, and the like&#8212;are often deployed both in industrial production environments and lean software development: to <em>approximate </em>stationarity and create localized approximations of stability. But under Dr. Little&#8217;s strict framing, even these approximations would not suffice for the law to hold. </p><p>Industrial production processes may succeed in forcing <strong>quasi-stationarity</strong>. But with humans involved at every level, most software product development processes are inherently non-stationary. At the team level, and especially across teams, customer domains, and market boundaries, there are too many exogeneous and adaptive influences to expect stationarity or even well defined probability distributions to govern their behavior.</p><p>The question is does Little&#8217;s Law apply in such domains? The answer is an unqualified yes. We&#8217;ll make the case in this post. </p><p>We showed in <a href="https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law?r=fjllf">The Causal Arrow in Little&#8217;s Law</a> that <em>if</em> Little&#8217;s Law can be applied in a domain, this fact enables powerful analyses of process dynamics from rough-cut estimation to rigorous cause-effect reasoning. We saw in <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">The Many Faces of Little&#8217;s Law</a> that this opens up ways to reason about time-value and the economics of processes. So there are real-world benefits to establishing the validity of Little&#8217;s Law in given domain. </p><p>Fortunately, as we saw in <em><a href="https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">A Brief History of Little&#8217;s Law</a></em>, the power of the law does not hinge on the strong assumptions in Dr. Little&#8217;s original proof. In 1972, Dr. Shaler Stidham&#8217;s <em>deterministic</em> sample-path proof showed that the validity of the law does not need stationarity or ergodicity, or <em>even that the underlying process has a knowable probability distribution</em>. This opens the door to applying Little&#8217;s Law in many more domains and in complex adaptive systems in particular.</p><p>The key insight is that we can use a purely deterministic approach to analyze processes through direct observation and reason about long run behavior of sample paths. Rather than speaking about the stationarity or ergodicity of theoretical distributions, we can analyze behavior in terms of convergence and divergence of empirically observed averages which satisfy provable mathematical invariants. For operations management, this is far more practical and directly actionable.</p><p>This post digs into the technical details of sample path analysis in some detail.</p><ol><li><p>We&#8217;ll flesh out the high level concepts we outlined in the <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">The Many Faces of Little&#8217;s Law</a> <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>.  </p></li><li><p>While doing so, we&#8217;ll work through a concrete case study, showing how to apply <em>Little&#8217;s Law</em> to a product development process for a team seeking product-market-fit. Using production data, we&#8217;ll show how to measure parameters in Little&#8217;s Law using sample path techniques, interpret what they mean in the context they are derived from, and show what meaningful inferences we can make with them. </p></li><li><p>We&#8217;ll provide rigorous but accessible explanations of the underlying mathematics so that you can see <em>how </em>the law works and <em>why </em>it holds and build an intuition of how to apply Little&#8217;s Law beyond plugging in numbers into a formula. </p></li></ol><p>We hope to put to rest once and for all the widespread misconception that this is a law that only applies to simple, linear, or ordered systems, or that real-world complex adaptive systems are not amenable to rigorous mathematical or causal analysis.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h3>About this post</h3><p>This is a long post even by the standards of the Polaris Flow Dispatch.  The ideas here are not too difficult to follow, but they do require some patience to read through carefully and understand the subtleties involved.</p><p>To quote Dr. Shaler Stidham from his original sample path proof of Little&#8217;s Law: </p><blockquote><p>...<em>there are many who feel that &#119871; = &#955;&#119882; is such an &#119900;&#119887;&#119907;&#119894;&#119900;&#119906;&#119904; relation that a rigorous proof is superfluous: at most a heuristic argument is required</em>...<em>&#120335;&#120358;&#120374;&#120371;&#120362;&#120372;&#120373;&#120362;&#120356; &#120354;&#120371;&#120360;&#120374;&#120366;&#120358;&#120367;&#120373;&#120372; &#120356;&#120354;&#120367; &#120355;&#120358; &#120357;&#120358;&#120356;&#120358;&#120369;&#120373;&#120362;&#120375;&#120358;. &#120336;&#120367; &#120354;&#120367;&#120378; &#120356;&#120354;&#120372;&#120358;, &#120373;&#120361;&#120358;&#120378; &#120354;&#120371;&#120358; &#120367;&#120368;&#120373; &#120369;&#120354;&#120371;&#120373;&#120362;&#120356;&#120374;&#120365;&#120354;&#120371;&#120365;&#120378; &#120362;&#120367;&#120372;&#120373;&#120371;&#120374;&#120356;&#120373;&#120362;&#120375;&#120358; &#120376;&#120361;&#120358;&#120367; &#120373;&#120361;&#120358;&#120378; &#120354;&#120372;&#120356;&#120371;&#120362;&#120355;&#120358; &#120373;&#120361;&#120358; &#120375;&#120354;&#120365;&#120362;&#120357;&#120362;&#120373;&#120378; &#120368;&#120359; &#120373;&#120361;&#120358; &#120371;&#120358;&#120372;&#120374;&#120365;&#120373; &#120373;&#120368; &#120369;&#120371;&#120368;&#120369;&#120358;&#120371;&#120373;&#120362;&#120358;&#120372; &#120373;&#120361;&#120354;&#120373; &#120373;&#120374;&#120371;&#120367; &#120368;&#120374;&#120373;, &#120374;&#120369;&#120368;&#120367; &#120371;&#120362;&#120360;&#120368;&#120371;&#120368;&#120374;&#120372; &#120358;&#120377;&#120354;&#120366;&#120362;&#120367;&#120354;&#120373;&#120362;&#120368;&#120367;, &#120373;&#120368; &#120355;&#120358; &#120372;&#120374;&#120369;&#120358;&#120371;&#120359;&#120365;&#120374;&#120368;&#120374;&#120372;, &#120376;&#120361;&#120362;&#120365;&#120358; &#120359;&#120354;&#120362;&#120365;&#120362;&#120367;&#120360; &#120373;&#120368; &#120357;&#120368;&#120356;&#120374;&#120366;&#120358;&#120367;&#120373; &#120373;&#120361;&#120358; &#120362;&#120367;&#120359;&#120365;&#120374;&#120358;&#120367;&#120356;&#120358; &#120368;&#120359; &#120369;&#120371;&#120368;&#120369;&#120358;&#120371;&#120373;&#120362;&#120358;&#120372; &#120373;&#120361;&#120354;&#120373; &#120373;&#120374;&#120371;&#120367; &#120368;&#120374;&#120373; &#120373;&#120368; &#120355;&#120358; &#120358;&#120372;&#120372;&#120358;&#120367;&#120373;&#120362;&#120354;&#120365;.</em></p></blockquote><p>I wanted this post to be a comprehensive starting point for all the <em>essential</em> ideas of sample path analysis in one place. In coming weeks I plan to write shorter posts that focus on specific topics in this post in greater detail and with a wider range of examples. </p><p>This material is based  upon the treatment of Little&#8217;s Law in the textbook  <em><a href="https://www.researchgate.net/publication/303785171_Sample-Path_Analysis_of_Queueing_Systems">Sample Path Analysis of Queueing Systems</a></em><a href="https://www.researchgate.net/publication/303785171_Sample-Path_Analysis_of_Queueing_Systems"> </a>by El-Taha and Stidham. It is the definitive mathematical treatise on sample path analysis, co-authored by one of the originators of the technique. It contains the detailed mathematical definitions and proofs of the results we use here.  The treatment there is terse and my goal here is to make the mathematics more accessible to practitioners without losing rigor. Any errors in translation that appear in the post are mine and mine alone. If you find any, please let me know and I will be happy to correct if necessary. </p><div><hr></div><p>This article may be cut off in some email clients. Read the <a href="https://open.substack.com/pub/thepolarisflowdispatch/p/littles-law-in-a-complex-adaptive?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true">full article</a> uninterrupted online. </p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://open.substack.com/pub/thepolarisflowdispatch/p/littles-law-in-a-complex-adaptive?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true&quot;,&quot;text&quot;:&quot;Read the full article online&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://open.substack.com/pub/thepolarisflowdispatch/p/littles-law-in-a-complex-adaptive?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true"><span>Read the full article online</span></a></p><div><hr></div><h2>The Polaris Case Study</h2><p>We&#8217;ll begin with a case study to motivate why I first got interested in this topic.</p><p>It is a story about the development of a new SaaS product. I know the story well because,  <a href="https://www.exathink.com/take-the-tour">Polaris</a>, the software platform from which this publication originally took its name, was incubated to support my advisory practice. I wrote much of its technical measurement infrastructure and the initial  version had powered my advisory business for several years before the period we examine in the case study.</p><p>The data we&#8217;ll examine comes from a period when we were building a SaaS version of Polaris: one that could reduce onboarding times for data collection and customer modeling, and provide configurable versions of  analytics workflows and dashboards I had found useful with clients over the years.</p><p>In working with clients my practice leaned on industry-standard paradigms&#8212;flow metrics, code review metrics, work allocation breakdowns, DORA metrics etc&#8212;the same ones found in most other commercial engineering management platforms. We had our own proprietary takes on  how we used these and they were reflected in the our advisory program, but they were refinements rather than a broad re-thinking of the core premises prevalent in the industry. </p><p>However, I found that Polaris was not all that effective at measuring our <em>own</em> product development process, even though we were a tiny team. I&#8217;ll explain why in a moment, but I found I had to go back to the drawing board and rethink core ideas behind the relationship between the flow of work and the flow of value to understand why.</p><h3>Our Story</h3><p>We were in the early GTM phase: a working product, a handful of customers, and rapid iteration to focusing on product-market-fit<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. We balanced reactive work for customer implementations and work needed to close and onboard new clients,  with filling out missing features and ongoing platform work. </p><p>Our product team was small: three engineers (myself included, doubling as product manager, tech lead, and consultant) and two senior engineers. The tech stack was modern, the codebase maintainable and well-tested, though some early assumptions from the consulting days had become technical debt as we discovered more customer use cases. We integrated frequently, and anything merged to main was automatically tested and deployed.</p><p>The data in this case shows our core product development process. Units of work were normalized to tangible customer, product, or infrastructure goals.   We tracked them through single Jira stories<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a> across multiple deployments and customer feedback cycles. Each &#8220;story&#8221; might involve several production deployment and feedback cycles and run from a few days to a few weeks. We deployed continuously, so at any given time, we could be pursuing many outcomes in parallel with our customers.  Lead times were intrinsically variable, and variability was not a focus for optimization since much of it was in the hands of the customer. We lacked a formal success metric so were not measuring &#8220;outcomes&#8221; or &#8220;value&#8221; formally even though work cadences were aligned to customer outcomes.</p><p>We avoided a large backlog. Outside of customer-reported bugs, we only tracked work we actively intended to pursue or were in process; the rest lived in documents, notes and my head and pulled in for detailing shortly before we decided to work on it. We had an efficient software delivery process (after all we were advising our clients on how to build these)  and our process was more about staying responsive to customer signals and sales cycles, which were more or less unpredictable.  </p><p>In our process much of the &#8220;cycle time&#8221; was often outside our control. We had a formal stream of <em>interruptible</em> internal work - things we would work on when there was nothing of higher priority from the customer end to work on<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>.  Overall,  we wanted visibility into the <em>all</em> <em>threads in play</em>, internal and client-facing,  even if many sat idle a lot of the time<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a>. Our way of working was to keep as<a href="https://www.polaris-flow-dispatch.com/p/keeping-work-moving?r=fjllf"> </a><em>many threads of customer facing work moving towards an outcome with our limited team</em>, rather than minimizing multi-tasking and maximizing throughput<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-7" href="#footnote-7" target="_self">7</a>. </p><p>This workflow was quite different from what we recommended for our clients, who tended to be larger, more mature organizations with slower software delivery processes. Polaris itself had been optimized for <em>their</em> context. For our own workflows, traditional flow engineering paradigms were less useful: we already had efficient software delivery pipelines, and a focused intake process,  so metrics like PR cycle time and aging internal tasks gave little insight. What we needed were metrics that reflected the <em>full value delivery cycle</em>. </p><p>But our tool, designed for clients still working on optimizing core software delivery, wasn&#8217;t well-suited for that. Many conventionally undesirable conditions like aging or idle work were <em>simply our way of working</em>,  artifacts of representing the <em>entire value creation </em>cycle in our units of work.</p><p>I realized early on that like most tools on the market, our own tool was not a great fit for the companies still working this way, but that was not the market we were chasing at the time so it wasn&#8217;t a priority for us to try and solve it. </p><p>But in retrospect, I&#8217;ve come to think that the problem we were facing is the real problem to solve if we want to tackle the concept of measuring value creation at all. If you strip away all the internal inefficiency in delivering software - the upstream decision making to prioritize what to build, and the downstream product and engineering processes -  you are still left with this cycle where where you are working across the customer and market boundaries to make and validate decisions on what to build under uncertain outcomes.  Decisions that are partially  out of your control and can take widely varying amounts of time to converge to a measurable outcome.  Time to value and value are largely uncorrelated.</p><p>In retrospect, I found the idea of  <em><a href="https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration?r=fjllf">Value Exchanges </a></em>in a <em><a href="https://www.polaris-flow-dispatch.com/p/value-networks-and-value-streams?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web">Value Network</a></em> a much better model for thinking about this problem. Value networks naturally span organizational and company boundaries, and the value exchanges in the network are (potentially long running) transactions between parties who then mutually assess whether each exchange was valuable over time. Our units of work were structured as value exchanges even if we were not formally measuring value. I was convinced that how we measure the &#8220;flow of value&#8221; had to focus on <a href="https://www.polaris-flow-dispatch.com/p/modeling-the-value-exchange?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">modeling these exchange</a>s at the value network layer. </p><p>Even though I didn&#8217;t have the theory or terminology (and certainly not the math) to explain it at the time,  our team had stumbled upon value exchanges as our unit of work by necessity, but our traditional flow metrics were not very good at capturing how &#8220;flow&#8221; at this level worked.  </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><h2>Why This Matters</h2><p>By the standards of Dr. Little&#8217;s original  framing of stationary stochastic process, our product development process would be ruled out of scope to reason about with the machinery of Little&#8217;s Law: too messy, too variable, too non-stationary to model as a &#8220;flow process&#8221; where everything, including &#8220;value&#8221; is supposed to flow smoothly and predictably, and continuously from left to right in highly stable processes. </p><p>We would be trying to <em>stabilize the process</em> through divide and conquer - breaking up internal work and customer validation to separate phases, and internal units of work into smaller &#8220;right-sized&#8221; pieces so they would &#8220;flow&#8221; on shorter timescales.  As a result we would get great internal &#8220;flow&#8221;, but lose focus and analytical insights on the longer timescale value exchanges where value creation actually happens.</p><p>Current approaches to flow never really address the larger problem that <em>the flow of value in the network is discontinuous, unpredictable and often not correlated to the time and resources invested in development</em>. Smaller teams like ours have less internal cruft slowing down the internal cycle and the &#8220;flow of value&#8221; problem emerges starkly and irreducibly at shorter timescales. </p><p>In this post show how we can model and measure the flow of value exchanges using sample path analysis, focusing on <em>time to value</em>, and show that the long run process dynamics <em>still satisfies Little&#8217;s  Law</em> in spite of highly variable, non-stationary behavior<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-8" href="#footnote-8" target="_self">8</a>. </p><p>Time to value and value are not often correlated in new product development, but typically we incur opportunity costs proportional to the former so it is still an important operational metric, and sample path analysis gives us a good way to measure this robustly. </p><p>The fact that we are dealing with a complex adaptive system does not change the applicability of these techniques. In fact they thrive under the conditions, because complex adaptive systems are inherently open and non-stationary and sample path analysis works out of the box in these types of domains. </p><p>The core techniques we demonstrate in this case study show not only that Little&#8217;s Law can be fruitfully applied <em>at any timescale</em>, but that it can be applied regardless of the internal structure of the processes and organizations involved. </p><p>This approach to modeling and measuring value creation cycles is now a core pillar and focus area for my practice, under active development and refinement<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-9" href="#footnote-9" target="_self">9</a>.  </p><h2>Sample Path Analysis - A Worked Example</h2><p>Sample path analysis requires very little by way of data. </p><p>The minimal input is a data set with start dates and end dates (either or both of which may be unknown). Each data point represents some identifiable element from the domain under analysis. These elements need not be tangible objects in the real world: as long as each has an identifier for context, we can apply the analysis. What matters are the timestamps attached to these elements.</p><blockquote><p>In the Polaris data set, an element represents a product goal or outcome whose success or failure can be assessed somehow. This could be a customer requested enhancement, a product feature an experiment or an internal technical enhancement. </p><p>The start date denotes the decision to pursue an outcome, and the end date marks the decision that the outcome was either achieved or deemed no longer worth pursuing. </p></blockquote><p><br>Conceptually, this means we do not have to think of elements as discrete items arriving and departing from a &#8220;system.&#8221; </p><p>A complex collaborative process like product development, for example,  may be treated as a black box whose behavior we can observe: a sequence of timestamps with some metadata describing what was pursued, how much time things took, what measurable outcomes they created etc. In theory, these can be sourced from transaction logs in operational environments provided the necessary book-keeping exists. </p><p>We are not concerned with how the underlying process produces that behavior or what its internal structure may be: sample path analysis allows us to make useful, general claims about the black box. More importantly, we can measure and reason about this long run behavior rigorously from just this minimal description, and with no additional information.</p><h2>Flow  Processes</h2><p>Mathematically, the general category of input structures to the analysis are called <strong>marked point processes</strong> (MPPs) which are simply a sequence of <em>timestamps</em> with some attached <em>marks</em> (metadata). We will assume that element identifiers are available as marks.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0hJL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0hJL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 424w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 848w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 1272w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0hJL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png" width="823" height="265" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:265,&quot;width&quot;:823,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:23845,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0hJL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 424w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 848w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 1272w, https://substackcdn.com/image/fetch/$s_!0hJL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a338967-eb7d-44e6-82b2-1f0507545b21_823x265.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: A Marked Point Process</figcaption></figure></div><p>In a sample path analysis, we start with an appropriate <em>MPP</em> to analyze.  If necessary, we do some pre-processing on raw domain data from operational logs to extract and transform the needed timestamps and metadata to construct the MPP.</p><p>Little&#8217;s Law and its generalizations apply to <em>MPPs</em> where the <em>marks themselves are functions of time</em>, ie element behaviors and their <em>effects</em> have temporal extent. We will call these <em>flow processes. </em>We analyze the <em>accumulation</em> of those effects over shared intervals of time.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-10" href="#footnote-10" target="_self">10</a>. </p><blockquote><p>The characteristic feature of flow processes is that each point event has a measurable effect that persists in time after that event. That effect can described as a function of time. </p></blockquote><p>To make this less abstract, consider the following figure. Domain elements create time-varying effects within an observation window. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FIP9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FIP9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 424w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 848w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 1272w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FIP9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png" width="1456" height="766" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:766,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1236495,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FIP9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 424w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 848w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 1272w, https://substackcdn.com/image/fetch/$s_!FIP9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F61d6b619-e8c7-465d-86a9-e370b4c579d1_7608x4002.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: MPPs with time varying effects as marks.</figcaption></figure></div><p>Using Little&#8217;s Law and its generalizations, we analyze the cumulative impact of the <em>superposition</em> of the effects over time.</p><ul><li><p>The classical form, L=&#955;W, concerns elements whose effects are recorded as simple binary presence/absence (e.g. Element 3 in figure 2) in the environment. The marks are boxcar functions which have unit values over a finite interval and are zero elsewhere. In a queueing system the timestamps denote arrivals and departures of items from the queue. L=&#955;W is useful for answering questions like &#8220;how many&#8221; and &#8220;how long&#8221; and surfacing the precise relationship between the two.</p></li><li><p>The <a href="https://www.polaris-flow-dispatch.com/i/169312170/&#119867;-&#955;-&#119866;-the-economic-version-of-littles-law">generalized form</a>, H=&#955;G allows marks that are arbitrary functions of time, not just binary indicators. In the MPP representation, these <em>presence density functions</em> are simply additional marks attached to timestamps. These are used to model the time-value (<em>not</em> time-to-value) of the elements. We will use these to quantify costs, risks and rewards associated with the elements, and  connect it back to the &#8220;how many&#8221; and &#8220;how long&#8221; questions we can simultaneously ask with L=&#955;W.</p><p></p><p>In this post we will focus on L=&#955;W and build the foundations to talk about the more abstract concept of the flow of value via H=&#955;G. From the standpoint of analytical mechanics, the two versions will not be very different: in all respects  L=&#955;W is just a special case of H=&#955;G,  but L=&#955;W is significant on its own for operations management, and it is easier to build the intuition for how and why these laws work by looking at the special case. </p></li></ul><h2>Sample Path Construction for  L=&#955;W</h2><p>It is useful to have a dedicated mental picture of domain of L=&#955;W: an MPP with boxcar functions as marks. </p><p>This special case is shown in the figure below and it is intuitively very easy to understand because it a direct representation of the traditional queueing theory model of arrivals and departures from queues (even though <em>queueing </em>is not the focus of the analysis). </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ViMP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ViMP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 424w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 848w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 1272w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ViMP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png" width="1456" height="1089" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1089,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:132652,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ViMP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 424w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 848w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 1272w, https://substackcdn.com/image/fetch/$s_!ViMP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faed904c0-7d16-422f-b944-f5745d9986eb_1883x1409.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: An MPP for L=&#955;W</figcaption></figure></div><p>Each element <em>i</em> has a start time <em>&#119904;&#7522;</em>&#8203; and an end time <em>&#119890;&#7522; </em>(possibly -&#8734; or + -&#8734; if start or end times are unknown). An element is called <em>open</em> if its end time is unknown and it is called <em>closed </em>if both start and end times are known. </p><p>An element is <em>active</em> at time <em>t</em> if it&#8217;s start time is at or before t and its end time is strictly after <em>t.   </em>Elements whose end time lies at or before time <em>t </em>are called <em>inactive </em>at time t. Additionally, an open elements is considered active at <em>all t </em>after its start time<em>. </em></p><p>We can extend these definitions to finite observation windows [0,T], where T is implicitly taken as the reference time for determining which elements are active or inactive <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-11" href="#footnote-11" target="_self">11</a>.</p><h3>Processes and Sample Paths</h3><p>Sample path analysis focuses on <em>processes</em> defined over an MPP.</p><ul><li><p>A <strong>process</strong><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-12" href="#footnote-12" target="_self">12</a> is <em>any time-varying function</em> that we can evaluate <em>over an MPP</em>. </p></li><li><p><strong>A sample path</strong> is the sequence of values we observe when we apply that function to the <em>MPP </em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-13" href="#footnote-13" target="_self">13</a><em>.  </em></p></li></ul><p>For L=&#955;W, the <em>process</em> of  interest is the <em>counting process</em> over the set of active elements at a point in time. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;N(t) \\;=\\; \\#\\{\\, i \\;\\mid\\; s_i \\leq t < e_i \\,\\} \n\n&quot;,&quot;id&quot;:&quot;RCENRVPUQV&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p><em>N(t) is </em>the count of active elements at time <em>t </em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-14" href="#footnote-14" target="_self">14</a><em>.  </em>The trace of <em>values</em> of  N(t) over time, is the <em>sample path of the process N(t).</em></p><blockquote><p>For the Polaris case the process N(t) counts how many product or customer outcomes are <em>active </em>at time <em>t</em>: elements for which work that has started but has not yet reached a resolved outcome.</p></blockquote><p>In the examples below we will focus on the closed elements in the process - ones for which both start and end dates exist in the data set. It is easier to demonstrate core concepts with this subset first and see how things change when we add open elements into the mix. This is precisely the difference between analyzing the history of the process vs real-time analysis. </p><p>The figure below shows this sample path for closed elements<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-15" href="#footnote-15" target="_self">15</a>. You can see the characteristic rhythms of our work from moment to moment: bursts of parallel activity, quieter lulls, and variability that reflects customer feedback cycles and the adaptive nature of our small-team process.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6UQU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6UQU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6UQU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png" width="1000" height="340" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:340,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27070,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6UQU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!6UQU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F43457bf4-df11-4d89-8442-00f8f12dfe00_1000x340.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: A sample path for closed elements from the Polaris data set. </figcaption></figure></div><p></p><h2>The Finite Version of Little&#8217;s Law</h2><p>Any sample path that we observe is finite. One of the most powerful tools that sample path analysis gives us is a version of Little&#8217;s Law that applies to <em>any </em>such <em>path at any point in time</em>. Unlike the steady-state, asymptotic version of Little&#8217;s Law that gets the headlines, this version is a universal invariant that holds unconditionally<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-16" href="#footnote-16" target="_self">16</a> . </p><p>The invariant is expressed as an equation involving three <em>functions of time</em>, derived from the process <em>N(t)</em>. Given a sample path over the interval [0,T] these are</p><ul><li><p>L(T): the time average of N(t) over [0,T] </p></li><li><p>&#923;(T): the cumulative arrival rate over [0,T]</p></li><li><p>w(T): the average residence time over [0,T]</p></li></ul><p>We will define these terms formally and show how to measure each one shortly. </p><p>The key point to note here, is that finite version of Little&#8217;s Law says that these three functions are always locked together at every point in time by the invariant</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\Lambda(T).w(T) &quot;,&quot;id&quot;:&quot;PAJSBLAWQK&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>Stidham&#8217;s sample path proof  defines the three quantities in the equation L= &#955;W as asymptotic limits of these three functions, </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L \\;=\\; \\lim_{T \\to \\infty} L(T), \n\\quad \n\\lambda \\;=\\; \\lim_{T \\to \\infty} \\Lambda(T), \n\\quad \nW \\;=\\; \\lim_{T \\to \\infty} w(T).&quot;,&quot;id&quot;:&quot;ICRHOQSYXL&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>He showed that  <em>if</em> the limits &#955; and W are well-defined and exist <em>then</em> the limit L is well-defined and exists, which allows us to establish that L= &#955;W holds at those limits. </p><p>In this section we will show how to measure the key terms in the finite invariant given the sample path and validate that this invariant holds for our data set. Later, in the section on convergence, we will look at the question of establishing limits and consider the question of how we can verify whether L= &#955;W for a given process. </p><h3>Measuring <em>L(T)</em></h3><p>We begin by measuring a quantity <strong>L(T)</strong> which is the time average of the area under the sample path. <em>L(T) </em>is the quantity from which we derive the left hand side of Little&#8217;s Law. </p><p>This area is given by</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;H(T) \\;=\\; \\int_{0}^{T} N(t)\\, dt&quot;,&quot;id&quot;:&quot;JQTBOPGCWM&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>represents total accumulation in <strong>units of </strong><em><strong>element-time</strong>,</em> over the interval [0,T]. </p><blockquote><p>Since each element contributes one unit of time for every unit of time it is active, H(T) is also the total time accumulated in the observation window [0,T] across all elements. This includes contributions from elements that are still active as well as those that are inactive.</p></blockquote><p>To turn this into a <em>time-average</em>, we divide this quantity by the length of the interval T.</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) \\;=\\; \\frac{1}{T} \\int_{0}^{T} N(t)\\,dt&quot;,&quot;id&quot;:&quot;LBBGZHAGDM&quot;}" data-component-name="LatexBlockToDOM"></div><p>This value, in <em><strong>units of elements</strong>, </em> is the time-average of <em>N(t)</em> over any <em>finite length sample path</em> up to the time <em>T</em>.</p><p>Here is what this looks like for our data. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Y0Sz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png" width="1000" height="340" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:340,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33807,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!Y0Sz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5138a83f-72d4-4235-b481-369c0d60a1ef_1000x340.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: L(T) - The time average of the number of elements in the process</figcaption></figure></div><p>There are several points to note about this chart:</p><ol><li><p><strong>The &#8220;WIP&#8221; in Little&#8217;s Law.</strong><br> <em>N(t</em>) tells us how many elements are active at a given moment. <em>L(T)</em>  is the time-average of those values measured over the sample path. It is <em>L(T) the time average,</em> that corresponds to &#8220;WIP&#8221; in Little&#8217;s Law, not the instantaneous value <em>N(t)</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-17" href="#footnote-17" target="_self">17</a>. Mathematically L(T) is a very different quantity from <em>N(t)</em> and much of the confusion about Little&#8217;s Law arises because the two are treated interchangeably in many popular treatments of the law. </p><p></p></li><li><p><strong>Stability</strong><br>The time-average L(T) is bounded but drifts and fluctuates as the process evolves. This is what defines a <em>convergent convergent process that has not stabilized over the entire observation window</em><strong> </strong>: the average never settles to a single stable value but stays bounded. By contrast, in a <strong>stable process</strong>, L(T) may wiggle early on but eventually stabilizes around a fixed long-run average - the limiting value. In a <strong>divergent process, </strong>the average grows without bound, and no such limit exists<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-18" href="#footnote-18" target="_self">18</a><strong>. </strong></p><p></p><p>For flow processes in complex adaptive systems, this behavior is quite common. In this case we are observing the interactions between the product team and the customers developing a new product, and across this boundary the future often does not resemble the past. Instead, the sample-path average keeps absorbing new information from process states that were absent from prior history. The process remains in flux as it responds to a changing environment, and internal adaption<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-19" href="#footnote-19" target="_self">19</a>. </p><p></p><p>In general, its future trajectory is unpredictable though we can get a clear sense of movement and direction from the sample path observed so far. This is the principal benefit that sample path analysis provides in this setting. </p><p></p></li><li><p><strong>Smoothing effect of averaging.</strong><br>The variation in L(T) is much smaller than the variation in N(t). This is expected: averaging the area under N(t) over larger and larger time windows smooths out fluctuations. But precisely because of this smoothing, even small changes in L(T) over long sample paths are significant. They indicate that new behaviors have appeared in the underlying MPP, altering the long-run average relative to the history observed so far. You can see this visually in the shape of <em>N(t) </em>early in the history vs later in the history, but L(T)<em> </em>captures this quantitatively <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-20" href="#footnote-20" target="_self">20</a>. </p></li></ol><p>L(T) is the lynchpin around which Little&#8217;s Law revolves. Given a sample path, we can always measure L(T) exactly: it is simply the time average of the number of active elements over [0,T] as computed above.</p><p>But on the right-hand side, the situation is different.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><h3>Measuring  &#923;(T)&#8201;</h3><p> In our MPP, if we focus on the just the sequence of start dates that gives us another point process, which we will call the <em>arrival process. </em>It has an associated <em>counting process</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-21" href="#footnote-21" target="_self">21</a>. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;A(t) = \\#(\\text{arrivals up to time } t)&quot;,&quot;id&quot;:&quot;MIZJUJWNDV&quot;}" data-component-name="LatexBlockToDOM"></div><p>Here A(t) gives the cumulative arrivals up to time <em>t </em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-22" href="#footnote-22" target="_self">22</a><em>. </em></p><p>Analogous to L(t), let&#8217;s define the cumulative arrival rate over a finite window [0,T].</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\Lambda(t) = \\frac{A(t)}{t}&quot;,&quot;id&quot;:&quot;HJUAGEYWRC&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>This is the average rate of arrivals in <strong>units of </strong><em><strong>elements</strong> <strong>per unit time</strong></em> up to T.  Here is what that looks like for our data set.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MYzm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MYzm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 424w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 848w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 1272w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MYzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png" width="1000" height="360" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:360,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:38418,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MYzm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 424w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 848w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 1272w, https://substackcdn.com/image/fetch/$s_!MYzm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3c69072-8630-40e3-97a7-bcd92d5390c6_1000x360.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: The cumulative arrival rate for the Polaris data set</figcaption></figure></div><ol><li><p><strong>Stabilization behavior.</strong><br>&#923;(T), the cumulative arrival rate, fluctuates sharply early in the sample path as averages stabilize and gradually smooths out as the observation window grows. This is expected: short horizons are dominated by a few arrivals, while longer horizons average out the noise.</p></li><li><p><strong>Stability</strong><br>Even as &#923;(T) smooths with time, it does not settle on a single constant value. Instead, it drifts: high arrival intensity early on, a gradual decline through the middle portion as the average converges, and a modest upward trend in the late portion. </p><p></p><p>Nevertheless, there is a period in the early part of 2023 where the arrival rates converge to values and stays relatively flat before resuming a new trend. This is an example of meta-stable behavior in this parameter. </p><p></p><p>This is exactly what we should expect from a complex adaptive system. The goals we pursue are neither purely exogenous nor purely internally generated: they are shaped by signals from the market, by customer needs, and by internal adaption from feedback and learning. The arrival process adapts continuously to these forces, and that adaptation leaves its imprint on the observed arrival rate.</p></li><li><p><strong>Operational implication.</strong><br>Because &#923;(T) still changes slowly over long horizons, even small shifts carry meaning. They indicate sustained changes in the pace at which work is arriving&#8212;whether due to customer demand, or the decision to start things internally and pursue more goals in parallel. </p></li></ol><h3>Measuring w(T)</h3><p>The final quantity in Little&#8217;s Law is <em>W</em>: the long-run average of the time between start and end timestamps across all elements. In classical queuing theory, this duration is called the <strong>sojourn time</strong>, a term we will adopt as well<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-23" href="#footnote-23" target="_self">23</a>. </p><p>In our case study, sojourn time is the critical <em>time to value </em>metric that we are interesting in optimizing our processes for. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mAXx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mAXx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 424w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 848w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mAXx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:113892,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mAXx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 424w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 848w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!mAXx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4ed46-90fd-4b61-861d-9c77a51b83d2_1883x1366.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 7: Residence time vs sojourn time</figcaption></figure></div><p>When constructing the sample path over a finite observation window, some end times may fall outside the window. In that case, we only observe part of the sojourn in that window. We define the <strong>residence time</strong> of an element in [0,T] as the portion of its sojourn time that lies within the window [0,T]. In figure 7, the green shaded areas represent residence times.</p><p>It represents the portion of the sojourn that we have observed at a point in time in the sample path, with the remainder representing a (potentially unknown) future evolution of the path at that point in time. In a real-time measurement, residence time represent what we know about the time accumulation in the process <em>up to the point of measurement </em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-24" href="#footnote-24" target="_self">24</a><em>. </em></p><p>Formally we can define the residence time of element <em>i </em>for the window [0,T] as</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;r_i(T)\\;=\\;\\max\\!\\big(0,\\;\\min\\{e_i,T\\}-\\max\\{s_i,0\\}\\big)\n&quot;,&quot;id&quot;:&quot;FEFYKXFVIE&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>where &#119904;&#7522; and &#119890;&#7522; are the start and end time stamps for element <em>i. </em></p><p>If both the start and end timestamps for an element fall within [0,T], <em>then residence time equals sojourn time</em>. In general residence time for any element is at most as large as it&#8217;s sojourn time. </p><p>The average residence time over arrivals up to time T, in units of <em><strong>time units per element</strong></em>, is </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;w(T)\\;=\\;\\frac{1}{A(T)}\\sum_{\\text{arrivals }\\le T} r_i(T)&quot;,&quot;id&quot;:&quot;DLVQVZWDAY&quot;}" data-component-name="LatexBlockToDOM"></div><p>This is simply the sum of the durations of the green areas in the figure divided by the number of elements that overlap the window [0,T]. </p><p>For a deeper dive into the significance of residence time in flow processes, please see our in-depth post: </p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;40a7432a-828e-4fbf-ab64-56e1c2856914&quot;,&quot;caption&quot;:&quot;This is the first in a series of posts exploring specific applications of sample path analysis in complex adaptive systems. We introduced this topic in broad strokes in Little&#8217;s Law in Complex Adaptive Systems.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How long does it take? &quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:26108691,&quot;name&quot;:&quot;Krishna Kumar&quot;,&quot;bio&quot;:&quot;Dr. Krishna Kumar is the Founder and CEO of Exathink Research, a technical advisory firm that helps software companies measure and improve product development flow. \nMore at exathink.com &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20a997b3-1167-4216-b0fe-e617a0360412_1856x1856.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-09-23T16:02:28.976Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!0HGp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36848439-827e-42b5-badf-24322cd07868_1024x1093.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/how-long-does-it-take&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:173590405,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:4,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;The Polaris Flow Dispatch&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Z1zn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6549fe35-8fc5-4ed0-840a-a0012436332a_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Let&#8217;s see what residence time looks like for the Polaris data set. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VEPX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VEPX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VEPX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png" width="1000" height="340" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:340,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:37193,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VEPX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 424w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 848w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 1272w, https://substackcdn.com/image/fetch/$s_!VEPX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12795948-f85e-42dd-bda7-0f59e2ad0301_1000x340.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 8: Average residence time for the Polaris Data set</figcaption></figure></div><p>A few points to note about this chart:</p><ol><li><p>We see the same non-stationary behavior as with the other two parameters: early volatility due to transient effects followed by gradual stabilization, though the overall average drifts upward over time.</p></li><li><p>The overall trend is a significant increase in average residence time across the history. Even small increases are meaningful when we are dealing with sample path averages, and here we see roughly a 50% increase: from about 6 days in the early portion to about 9&#8211;9.5 days in the later portion. </p></li><li><p>If Little&#8217;s Law applies (as we will see it does in this case) these average residence times are the same as the average sojourn times, so we can treat these residence times as our operational metric for time to value. </p></li></ol><p>In absolute terms, these are still relatively moderate numbers for a measure of time-to-value reflecting our generally reactive mode of operation. Interpreted as the average time to realize customer or business-facing outcomes, 6&#8211;10 days was an acceptable number for us. But relatively speaking our process &#8220;slowed down&#8221; significantly over the period we examine. </p><p>Residence time reflects the accumulated time of both inactive and active  (aging) elements. </p><ul><li><p><strong>Inactive elements </strong>contribute to residence time in [0,T] only until its end date, after which their contributions stop.</p></li><li><p><strong>Active elements</strong> continues to accumulate residence time <em>linearly</em> until their end date is reached. The accumulated residence time up for an active element to a given <em>T </em>is the <em>age </em>of the element. If the end date is unknown, these elements accumulate residence time <em>indefinitely.</em></p></li></ul><p>This clearly shows that convergence of the average residence time <em>w(T)</em> to a finite limit is entirely driven by the balance between active (aging) and inactive (completed) work&#8212;precisely in line with well understood flow management principles. </p><p>The difference is that the average residence time captures the effect of this balance  <em>in a single number</em>, measured consistently over the same window as L(T) and &#923;(T) and derived from the same underlying quantity H(T): the total time accumulation in the window.</p><p>This is why measuring <em>w(T)</em> is superior to tracking the average sojourn time of inactive elements and the age of active elements <em>separately</em>, as is common industry practice today<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-25" href="#footnote-25" target="_self">25</a> . As we shall soon see, in software environments, where non-stationarity is the rule, residence time provides a superior metric for reasoning about time accumulations in the long run.</p><h3>The impact of variability </h3><p>In figure 9 we show the scatter plot of sojourn times overlaid on the average residence time on the sample path. We can see the average residence time conceals a very high variation in sojourn times. In our case it was because we had goals that took significantly smaller, and significantly larger amounts of time to complete. This variability reflects the increasing mix of customer dependent delays vs things that were under our control the more we tested the market. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3Dhl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3Dhl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 424w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 848w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 1272w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3Dhl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png" width="1000" height="400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:400,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49797,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3Dhl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 424w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 848w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 1272w, https://substackcdn.com/image/fetch/$s_!3Dhl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0fc661dd-85d6-4a26-99ac-4d2ac84ee211_1000x400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 9: Scatter plot of sojourn time vs avg. residence time</figcaption></figure></div><p></p><p>For now, it&#8217;s important to keep in mind that variability in sojourns is itself a <strong>key operational metric</strong>. Even if it&#8217;s not always under our control, it determines how <em>long</em> it takes for w(T) to converge in the long run (assuming it converges at all).</p><p>Little&#8217;s Law doesn&#8217;t speak to this convergence speed&#8212;it only requires the limit, not how quickly you approach it. But operationally, variability is what governs the &#8220;patience&#8221; you need before the the data stabilizes in meaningful ways so you can analyze patterns. </p><p>In practice this means that we might need to experiment with raw data to remove extreme outliers to get a sense of this convergence - this process requires a bit of judgement and nuance, but it also gives us a good way to operationally distinguish routine variation from exceptional variation<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-26" href="#footnote-26" target="_self">26</a>. </p><p>We&#8217;ll have much more to say about how to reason about this variation for non-stationary sojourn times in later posts.</p><h3>Value vs Time to Value</h3><p>This data set includes both internal and customer facing goals (we were not tracking these separately at the time) but while it is the case that many of the low sojourn values in the distribution were internal because we had fewer constraints, and the high value ones were customer facing, this was by no means universally true. </p><p>There were high value outcomes that were achieved in a cycles that lasted less than a day and low value outcomes that took us weeks to identify as low value <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-27" href="#footnote-27" target="_self">27</a>.  There are many situations in product development where value and time-to-value are correlated. But in general, we should  look at value and time to value as independent quantities and be able to reason about both <em>on the same timeline</em>. This is what lets us reason about the relationship between work and value, investment and value etc in a rigorous fashion.  This is the motivation for the  H=<em>&#955;G </em>form, which we will examine in more detail in later posts.</p><h3>Putting it together</h3><p>With all the core machinery for measuring L(T), &#923;(T) and w(T) over a finite sample path in place,  the finite version of Little&#8217;s Law says </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\Lambda(T).w(T) &quot;,&quot;id&quot;:&quot;XVQHKBAXTS&quot;}" data-component-name="LatexBlockToDOM"></div><p>for <em>every value T </em>in the observation window [0, T]. This requires no additional conditions, so this is a universal invariant for <em>any</em> sample path <em>N(t)</em>. </p><p>Let&#8217;s prove this. Though the proof is a simple exercise, this finite version is the heart of why Little&#8217;s Law is true and it is the most useful operational tool that sample path analysis gives us and it really helps to internalize why it is true. </p><p>After we present the proof we will verify that the finite version holds for our sample data set<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-28" href="#footnote-28" target="_self">28</a>. </p><h3>The proof - why the finite version is true</h3><p>Recall that <em>H(T) </em>the area under the sample path from [0,T] was the time accumulated by the elements that are observed within the window. </p><p>We can get the same number by adding up the residence times.</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;H(T) =\\int_0^T N(t)\\,dt \\;=\\; \\sum_{\\text{arrivals }\\le T} r_i(T)&quot;,&quot;id&quot;:&quot;OZOMOTDZXJ&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>So we can write the average residence time as</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;w(T) = \\frac{H(T)}{A(T)}&quot;,&quot;id&quot;:&quot;EHXZHJURSS&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>From the definition of L(T) we have</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\frac{H(T)}{T} &quot;,&quot;id&quot;:&quot;QHHLGKFFGB&quot;}" data-component-name="LatexBlockToDOM"></div><p>Lets rewrite <em>1/T</em> </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\frac{H(T)}{T} = \\frac{A(T)}{T}.\\frac{H(T)}{A(T)} &quot;,&quot;id&quot;:&quot;KLYYVJZFZU&quot;}" data-component-name="LatexBlockToDOM"></div><p> So now we have the finite version of Little&#8217;s Law. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T)\\;\n\\;=\\;\\Lambda(T).\\,w(T)&quot;,&quot;id&quot;:&quot;FUFZVIRCDD&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>The proof itself is straightforward, but the deeper question is: <em>what does it mean?</em></p><p>The intuition goes back to the simple conservation principle we discussed in <em><a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law">The Many Faces of Little&#8217;s Law</a></em>:</p><blockquote><p>The total time accumulated in an input&#8211;output system by a set of discrete items, when averaged per item, is proportional to the time-average of the number of items present in the system. The proportionality factor is the rate at which the items arrive.</p></blockquote><p>The finite version is just this principle expressed in technically precise terms in the language of sample paths and <em>MPP</em>s. It works because both L(T) and w(T) are different kinds of averages of the same underlying quantity H(T): the total time accumulated by all elements in the window [0,T].</p><ul><li><p>Each unit of time an element spends in the system contributes simultaneously to H(T) and to the count N(t).</p></li><li><p>Once this conservation is recognized, the rest is algebra: the finite identity is simply an accounting relationship about time accumulation.</p></li></ul><p>This also explains why the general version H=&#955;G holds: the argument is identical if, instead of unit contributions, each element accumulates arbitrary real values over time at every instant it accumulates time (ie it is active). </p><blockquote><p>It is important to note once again that the finite version of Little&#8217;s Law in a mathematical invariant representing a  physical conservation principle. It <em>always holds at all points for any sample path provided the above measurements are made correctly. </em></p></blockquote><p>We can visualize this fact using a simple scatter plot of <em>L(T) </em>vs the product &#923;(T)&#183;w(T). </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ofg8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ofg8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ofg8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png" width="600" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d638882-b065-4250-864f-0bd57604d64a_600x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32483,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ofg8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!ofg8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d638882-b065-4250-864f-0bd57604d64a_600x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 10: Verifying the finite version of Little&#8217;s Law for closed elements</figcaption></figure></div><blockquote><p>The points on this scatter plot will <em>always</em> lie on the <em>x=y </em>line. If they don&#8217;t your calculations are wrong. </p></blockquote><p>In addition to validating the consistency of the measurements, this plot also gives some sense about the distribution of the values of <em>L(T) </em>over the sample path: denser clusters of values represent  states that the process returns to very often and represent dominant modes of operation: here we see the numbers largely range between 2 and 3 <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-29" href="#footnote-29" target="_self">29</a>. </p><p>What is clear is that these numbers move in lockstep and when viewed across the time line these relationships provide rich insights into the long run behavior of the process. The most powerful of these is the ability to reason about cause and effect when we see a change in L(T). </p><h2>Reasoning about cause and effect</h2><p>The most fruitful way to look at the finite sample-path parameters L(T), &#923;(T), and w(T) is to see how they move together in lockstep when any of the averages change.</p><p>This is how Little&#8217;s Law should always be read: not as three independent numbers, but as three values derived from the same sample path, bound together by the finite identity.</p><p>There is a well-defined causal mechanism embedded in the invariant. Even though the law is written as an equation, the relationship is unambiguously causal.</p><ul><li><p>L(T) cannot change independently. </p></li><li><p>Any change in L(T) is entirely attributable to a change in &#923;(T), w(T), or both, and the magnitude of the change in L(T) is exactly accounted for by the  magnitude of the change in the product &#923;(T).w(T).</p></li></ul><p> As discussed in <em><a href="https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law?r=fjllf">The Causal Arrow in Little&#8217;s Law</a></em>, this is also the <em>only kind of cause-and-effect reasoning</em> we can do with these quantities. </p><p>This is a direct consequence of the deterministic proof of the finite version of Little&#8217;s Law we derived above.  Its clarity comes from the fact that the finite version is an accounting identity involving averages, not a statistical correlation or a probabilistic inference. </p><p> Let&#8217;s take a look at how this type of cause and effect reasoning can be applied in practice. In figure 11 we&#8217;ve laid all of the key sample path parameters along the same timeline and we can now look at how changes in values impact each other and how cause and effect can be inferred.   </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!p85b!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p85b!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 424w, https://substackcdn.com/image/fetch/$s_!p85b!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 848w, https://substackcdn.com/image/fetch/$s_!p85b!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 1272w, https://substackcdn.com/image/fetch/$s_!p85b!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p85b!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png" width="1204" height="1105" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1105,&quot;width&quot;:1204,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:213436,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p85b!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 424w, https://substackcdn.com/image/fetch/$s_!p85b!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 848w, https://substackcdn.com/image/fetch/$s_!p85b!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 1272w, https://substackcdn.com/image/fetch/$s_!p85b!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d070d85-ef8a-49d9-a252-71ba056778d8_1204x1105.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 11: Observing the long run dynamics of the process</figcaption></figure></div><p></p><p>As we look at the sample path and the parameters derived from it over a two year history, we can see distinct shifts in behavior regimes.</p><p><strong>Region A (early 2022 &#8211; mid 2022): </strong></p><ul><li><p><strong>What we see:</strong> L(T) rises steeply, &#923;(T) is initially very high but falls quickly, while w(T) rises. In N(t) we see bursts of overlapping work.</p></li><li><p><strong>Interpretation:</strong> Much of the behavior in this early phase are due to transient effects while the averages are still stabilizing. While the finite identity holds as each point in the time, the variation in each value is typically due the fact that we are seeing new states of the system constantly at smaller timescales. Once we have seen &#8220;enough&#8221; of the history to be representative of the process, the averages settle down into a narrower range even as they continue drifting in lockstep over time. It is usually best to ignore these early segments of the sample path in any sort of cause-effect reasoning.  </p></li></ul><p><strong>Region B (mid 2022&#8211;early 2023):  </strong></p><ul><li><p><strong>What we see:</strong> L(T) drifts slightly down, &#923;(T) declines further, and w(T) stabilizes. N(t) shows fewer simultaneous elements.</p></li><li><p><strong>Interpretation:</strong> Here &#923;(T) and w(T) move in opposite directions: declining arrivals counterbalance stable residence times. The result is a lower, flatter L(T). This is the most balanced operating mode in the history.</p></li></ul><p><strong>Region C (early 2023 - mid summer 2023)</strong></p><ul><li><p><strong>What we see:</strong> L(T) starts to climb again, &#923;(T) levels off, and w(T) rises steadily. N(t) shows more concurrency than in Region B.</p></li><li><p><strong>Interpretation:</strong> With arrivals steady, the increase in residence time drives the increase in L(T). There&#8217;s little counterbalance&#8212;w(T) dominates, so L(T) rises.</p></li></ul><p><strong>Region D (summer, fall 2023)</strong></p><ul><li><p><strong>What we see:</strong> L(T) reaches its peak, while &#923;(T) and w(T) both rise modestly. Yet their <em>simultaneous</em> increases amplify each other, producing a sharp increase in L(T). N(t) shows frequent high-concurrency spikes.</p></li><li><p><strong>Interpretation:</strong> Even small, simultaneous increases in arrivals and residence time compound under Little&#8217;s Law. This amplification effect is what drives L(T) to its maximum here.</p></li></ul><p><strong>Region E (winter 2023 - early 2024)</strong></p><ul><li><p><strong>What we see:</strong> L(T) stabilizes at a higher plateau, &#923;(T) continues a gentle upward drift, while w(T) eases slightly. N(t) shows consistent but elevated concurrency.</p></li><li><p><strong>Interpretation:</strong> Here we see counterbalancing: rising arrivals are offset by easing residence times. The product holds L(T) steady at a higher level, marking a new operating mode.</p></li></ul><p>Overall, we can see that starting in mid to late 2023, the operating regimes started shifting. The main difference is that we had not landed any customers before then and afterwards these shifts were largely driven by new customers with newly discovered requirements, reworking our features after testing with customer workflows etc.. longer latency in response cycles with customers etc. Our internal process which was more or less held constant throughout this two year period. So the shifts here give a  picture of the pressure the real world environment in which we were working was placing on us, and how our development process responded to that.</p><p>The value of this type of analysis is that we can see the effects of this quite clearly in the finite sample path flow metrics even if we know nothing about the process. </p><p><strong>Key insights:</strong><br>The three metrics are always locked together, but whether L(T) grows or stabilizes depends on how &#923;(T) and w(T) interact.</p><ul><li><p>When they move in the same direction (Regions A and D), the effect is amplified in L(T).</p></li><li><p>When they move in opposite directions (Regions B and E), the effect is moderated.</p></li><li><p>When one dominates (Region C), L(T) follows that trend.</p></li></ul><p>Either way, by continuously monitoring N(t) and L(T), we can detect shifts in operating regimes as they happen and trace them back to their proximate causes in &#923;(T) and/or w(T).</p><p>Even though we are showing cause and effect at large timescales in this example, it is important to note that this type of reasoning is possible for changes between any two time points on the sample path, even ones at small scales. </p><p>The techniques to do this type of causal reasoning <em>across</em> and <em>between</em> timescales is one of the key contributions of <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html">The Presence Calculus</a>. It requires additional machinery, but if you are curious, the details are <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html#signal-dynamics">here</a>. We&#8217;ll have more to say about this topic here on the Polaris Flow Dispatch as well in coming weeks. </p><h3>The impact of process changes</h3><p>Viewing history consistently along a sample path also makes these measurements useful for validating the impact of larger process changes. For example, if we  intervene  to reducing process time in the underlying process, we should see meaningful decreases in w(T) and L(T) while &#923;(T)  remains relatively stable (assuming it holds constant). </p><p>In practice, however, shortening residence times often frees up capacity,  creating slack which lets you accept more work. In that case, &#923;(T) may drift upward, and the net effect on L(T) depends on whether the gains in residence time outweigh the increase in arrivals. Either way, the invariants ensure that the changes in L(T), &#923;(T), and w(T) remain locked together by Little&#8217;s Law and we will have seen the impact of the change - more slack or greater arrivals at lower residence times. </p><p>For changes to show up clearly in these metrics, the interventions must have a lasting impact: incremental improvements that only nudge single metrics at short time scales will typically not register in long run averages <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-30" href="#footnote-30" target="_self">30</a>. </p><p>Finally, while the finite version is extremely important for operational measurements, we should always keep in mind that this expresses L(T) as the product the<em> cumulative arrival rate </em>and the<em> residence time over a finite window, </em>while Littles Law as we commonly understand it expresses it as the product of the long run <em>arrival rate</em> and long run <em>average sojourn time</em>. </p><p><em>So we still have some work left after this to prove our case that Little&#8217;s Law as we know it applies to complex adaptive systems.  </em></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p></p><h2>Convergence,Equilibrium and Coherence</h2><p>Let us now turn to the question of whether L=&#955;W applies to a complex adaptive system such as the one we have just examined. </p><p>To review, Stidham&#8217;s sample path proof  defines the three quantities in the equation L= &#955;W as asymptotic limits of these three functions, </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L \\;=\\; \\lim_{T \\to \\infty} L(T), \n\\quad \n\\lambda \\;=\\; \\lim_{T \\to \\infty} \\Lambda(T), \n\\quad \nW \\;=\\; \\lim_{T \\to \\infty} w(T).&quot;,&quot;id&quot;:&quot;CMYMIVMWEB&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>He showed that  <em>if</em> the limits &#955; and W are well-defined and exist <em>then</em> the limit L is well-defined and exists, which allows us to establish that L= &#955;W holds at those limits. Which raises a sticky question - how do we know the limits for limits &#955; and W are well-defined and exist? </p><p>Stidham&#8217;s theorem is stated for infinite sample paths, yet in practice we only ever observe finite ones. When proving theorems, stationarity and ergodicity are assumed to  ensure the averages converge. But in operations management, we are not proving theorems, we need some direct evidence that limits exist even we cannot observe the sample path all the way to infinity. </p><p>In the Polaris data, two years of history showed no sign of divergence (which would have ruled out the limit entirely), but neither did it show clean convergence. Instead, the averages &#923;(T) and w(T) wandered in metastable patterns&#8212;exactly what we should expect in a complex adaptive system.</p><p>So does that mean Little&#8217;s Law, L = &#955;W, fails in such settings? The answer is no. The law still holds, but the argument for it requires more nuance than the textbook proofs.</p><p>If you examine the Stidhams proof of L= &#955;W the reasoning is as follows: if the limits </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\lambda \\;=\\; \\lim_{T \\to \\infty} \\Lambda(T), \n\\quad \nW \\;=\\; \\lim_{T \\to \\infty} w(T).&quot;,&quot;id&quot;:&quot;ONYMOAXYLD&quot;}" data-component-name="LatexBlockToDOM"></div><p>are well-defined and exist, then Stidham showed that <em>at those limits</em> the <a href="https://www.polaris-flow-dispatch.com/i/169312170/the-problem-of-end-effects">end-effects</a> due to the difference between the cumulative arrival rate and the true arrival rate, as well as the difference between average residence time and average sojourn time vanish. Thus <em>at the limit</em> the quantities in the finite version of the law are identical to those in L= &#955;W, and so the law holds.</p><h3>Sample path coherence</h3><p>To quantify the impact of end effects, we define time varying versions of &#955; an W over an observation window [0, T]:</p><ul><li><p><strong>&#955;*(T): the empirical arrival rate</strong> &#8212; the number of elements that became <em>active</em> (arrived) by time T, divided by T.  &#923;(T) also counts elements that were already active before time 0 (elements with unknown start dates). The difference between &#923;(T) and &#955;*(T) are the end effects for arrival rate over [0,T].</p></li><li><p><strong>W*(T): the empirical average sojourn time</strong> &#8212; the total sojourn time of all elements that became <em>inactive</em> by T, divided by the number of deactivations. Sojourns are measured relative to each element&#8217;s own start and end, not the observation window. In the figure below the grey rectangles are counted in W*(T) but the green ones are not. w(T), the average residence time, counts both. The difference between w(T) and W*(T) are the end effects for sojourn time over [0,T].</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DNSB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DNSB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 424w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 848w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DNSB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png" width="1456" height="1056" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1056,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:116467,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DNSB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 424w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 848w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!DNSB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d7ea310-6710-4e33-91ef-238f0c80e24b_1883x1366.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 12: The empirical sojourn time</figcaption></figure></div><p>In our case, we are assuming that there were no arrivals before time 0, so the cumulative arrival rate and true arrival rate are the same and there are no end effects on that term. In the example in figure 12 the blue bars represent the end effects for sojourn time vs residence time.</p><p>As we discussed in <a href="https://www.polaris-flow-dispatch.com/i/169312170/the-problem-of-end-effects">The Many Faces of Little&#8217;s Law </a>over sufficiently long intervals, <em>if the process is not divergent</em> then the sojourn times of the inactive elements dominates the residence time of the active elements and the end effects vanish the longer the window we observe <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-31" href="#footnote-31" target="_self">31</a>. </p><p>The idea is to check for <em>empirical</em> convergence between the values of L(T) and the product  &#955;*(T).W*(T) over any [0,T].  Equivalently, we can check pairwise if w(T) converges to W*(T) and  &#923;(T) converges to &#955;*(T) at <em>each point on the sample path. </em></p><p>The empirical approach bypasses the postulate of the existence of limits in Stidhams proof. Instead of assuming the limits exist, we measure differences</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\lambda^{*}(T) - \\Lambda(T) \\quad\\text{and}\\quad W^{*}(T) - w(T)&quot;,&quot;id&quot;:&quot;WSNKQGJWFX&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>We can set some suitably small convergence threshold and say that the Little&#8217;s Law holds approximately at very point in time where the difference is below the threshold. </p><p>If they do, then we can assert that</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) \\;\\approx\\; \\lambda^{*}(T) \\cdot W^{*}(T)&quot;,&quot;id&quot;:&quot;JCDVCMRFWN&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>where <strong>L(T)</strong> is the usual time-average of N(t) over [0,T]. </p><p>Let&#8217;s plot L(T) against &#955;*(T).W*(T) the way we did for the finite version to see this empirical convergence in action. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PUfF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PUfF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PUfF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png" width="600" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:36764,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PUfF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!PUfF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb03022d4-a0d2-4867-b44f-3cfe4055649d_600x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 13: Empirical validation of Little&#8217;s Law</figcaption></figure></div><p>We see that the values stay clustered around the <em>x=y </em>line for <em>most</em> of the sample path. This, <em>in spite of</em> the fact that the averages keep moving around almost all along the sample path!. </p><p>We can also directly verify the convergence between the two related quantities on the right hand side directly as well so that we can where this deviation occurs along the time line. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kN4T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kN4T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kN4T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png" width="1200" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:88440,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kN4T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 424w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 848w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 1272w, https://substackcdn.com/image/fetch/$s_!kN4T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f28a22d-6e72-4b60-89b9-2247cb1b526c_1200x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 14: Empirical convergence of the right hand side quantities</figcaption></figure></div><p></p><p>As expected, arrival rates are identical since there are no end-effects in play in our data set, and the average residence time tracks the empirical average sojourn time almost everywhere on the sample path!</p><p>So we can say that in this case, even though we are working with a complex adaptive system, the process remains in a quasi-equilibrium state all along the sample path even as the underlying averages move around. Little&#8217;s Law continues to hold <em>almost </em>everywhere on the sample path! This may be unexpected, but it is has a direct mathematical explanation. </p><h3>Why managing age is the key to convergence</h3><p>w(T) and W*(T) converge if the sojourn times of active elements dominates the residence time as the sample path grows. The gap between the two averages is proportional to the contribution of <em>active elements</em> to the <em>average residence time</em>. Intuitively, this contribution is the sum of the green bars in Fig 12,  the  <em>total age of the active elements</em> in the observation window. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;R(T) = \\sum_{i \\in \\mathcal{A}(T)} \\text{age}_i(T)&quot;,&quot;id&quot;:&quot;XHCVJQOZTI&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>If that <em>total age</em> grows more slowly than the <em>length of the observation window</em>, the end effects disappear and the two averages converge over longer and longer windows. </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\lim_{T \\to \\infty} \\frac{R(T)}{T} = 0&quot;,&quot;id&quot;:&quot;WCQIWPYNDY&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><blockquote><p>This gives us a clean operational check for convergence. The total age of active elements along the sample path must grow <em>sub-linearly</em> as the window is extended longer and longer. If it does, the process tends toward convergence; if it does not, the process tends towards divergence.</p></blockquote><p>Typically, the gap between the curves grows when you have many open elements (with no end date), heavy-tailed sojourns, or long bursts of arrivals that lets the total age of active elements grow linearly with T rather than sub-linearly.  Convergence will be slower or impossible in these cases and the cloud will spread farther from the x=y line. That&#8217;s a signal that L=&#955;W does <em>not</em> hold. </p><h3>Divergence</h3><p>Its not hard to see divergent behaviors emerge even in the Polaris data set. All you have to do is to include open elements (with unknown end dates) into the calculation. We had explicitly ruled that out in our earlier analysis by only including closed elements in the data set - elements with known end dates.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MfdN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MfdN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 424w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 848w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MfdN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png" width="1200" height="1100" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1100,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:104883,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MfdN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 424w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 848w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 1272w, https://substackcdn.com/image/fetch/$s_!MfdN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8a173a5-ed24-498e-8c8c-0cbefbeb4ae5_1200x1100.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 15: An example of a divergent process</figcaption></figure></div><p>In this case  &#923;(T)&#8201; remains bounded but w(T) grows unboundedly. This corresponds to the scenario where certain elements never become inactive once they become active and continue accumulating residence time proportional to the size of the observation window.  </p><p>Operationally when residence time starts to diverge, it is a signal that there are aging elements in the process that we need to pay attention to - this is perfectly consistent with the principles we use today in managing flow.  </p><p>But there are two keys things to note; </p><ol><li><p> The finite identity  L(T) = &#923;(T).&#8201;w(T) holds <em>regardless of whether the process is convergent or divergent. </em>You can see this in the scatter plot below for the divergent process above.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jJrD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jJrD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jJrD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png" width="600" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:31303,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jJrD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!jJrD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de8cd59-4a9c-4628-b930-504ab596c38f_600x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 16: The finite version applies even to divergent processes</figcaption></figure></div></li><li><p>In the case of the divergent process not only is L != &#955;W in the limit but the values in the finite version and empirical version do not converge. But there is still valuable signal in this fact.  See the scatter plot for the empirical convergence below:</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5VJG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5VJG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5VJG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png" width="600" height="600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:600,&quot;width&quot;:600,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:33584,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/172332418?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5VJG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 424w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 848w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 1272w, https://substackcdn.com/image/fetch/$s_!5VJG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe73c5a0-4edc-4dd7-b676-eaddc7411747_600x600.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 17: But Little&#8217;s Law does not apply</figcaption></figure></div><p>This chart is not just a random scatter of points around the x=y line as one might perhaps expect. </p><p>The shape of the distribution shows that L(T) and the product &#955;&#8270;(T)W&#8270;(T)  <strong>diverge early</strong> and then follow largely independent trajectories. But there&#8217;s clear structure there: the left hand side L(T) continues to grow, while the right hand side stays bounded.</p><p>Why? The <strong>arrival rate</strong> behaves similarly in both formulations, so the difference is driven by the treatment of <strong>sojourn times</strong>:</p><ul><li><p>L(T) is a time average that includes the residence time of open elements.</p></li><li><p>W&#8727;(T) is a sample average that only includes the sojourn times of closed elements.</p></li></ul><p>In a <strong>convergent process</strong>, these differences shrink as T grows: sojourn times and residence times reconcile, and the cloud collapses toward the diagonal.<br>In a <strong>divergent process</strong>, residence time grows unboundedly while sojourn times (and arrival rates) remain bounded. The result is exactly what we see here: the &#8220;cloud&#8221; drifts steadily away from the x=y line.</p><blockquote><p>So even when the identity L=&#955;W <em>fails to hold</em>, the behavior of the system follows the conservation laws of the <em>finite identity</em> and we can still reason about cause and effect in the behavior of arrival rates and sojourn times indirectly. </p></blockquote><h3>Equilibrium and Coherence</h3><p>When W*(T) converges to w(T) it means that the sojourn time reported on average for elements matches the residence time in the system. The process is at or near equilibrium <em>even if the underlying averages shift over time</em>. This makes the finite version, which is simple to reason about an accurate proxy for the element-wise average sojourn time. </p><p>Operationally want to report and manage to average sojourn time because this is the externally facing metric, but when the process is convergent these outside-in and inside-out metrics are equivalent. We call this <em>operational coherence</em>. In a convergent process, we can confidently report finite window parameters for this. </p><p>This is a key difference between using sample path metrics and flow metrics defined over arbitrary finite windows as is common practice in the software industry. In operations management today, we typically measure flow metrics on finite time windows aligned to business processes and cadences. Sample path metric are aligned to the a single, sufficiently long sample path and reflect the real-time internal dynamics of the process over the long term - they represent the &#8220;voice of the process&#8221; so to speak<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-32" href="#footnote-32" target="_self">32</a>. </p><p>In fact the misalignment between the operator time windows used for internal reporting  and the sample paths for the underlying processes are a key reason why many operational metrics seen on dashboards today feel noisy and hard to use for making meaningful operational decisions.</p><p>Once you start measuring along sample paths the long run sample path metrics don&#8217;t change drastically over short operational windows, and when they do, they give you actionable diagnostics on what you should be paying attention to<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-33" href="#footnote-33" target="_self">33</a>. </p><p>Much clarity ensues once start measuring flow this way. </p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/p/littles-law-in-a-complex-adaptive?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div><p></p><h2>Does Little&#8217;s Law Apply to Complex Systems? </h2><p>Let&#8217;s finally put this question to rest. </p><p>All the  behaviors we have shown are independent of whether or not the underlying &#8220;system&#8221; is a complex adaptive system. The same behaviors of transitioning from convergent to divergent behaviors and back can be observed with ordered and unordered systems, linear and non-linear systems, chaotic  systems etc under the right conditions. </p><p>Little&#8217;s Law is not a contingent property of specific systems. It is a <strong>universal rate-conservation law</strong>, dictated by the mathematics of time accumulated by elements in a process, and it shows up in practice as clear, observable behaviors: <strong>convergence or divergence</strong> along the sample path in all situations - whether or not the formula in Little&#8217;s Law applies.</p><p>So yes,  we can confidently say Little&#8217;s Law can be applied to complex adaptive systems. </p><h3>The Complex System Advantage</h3><p>Complex systems introduce more, well, complexity:  of system behavior. </p><p>They don&#8217;t converge quickly to a single stable average value. The averages keep moving around. We cannot guarantee that the finite limits exist. This is why having a powerful piece of mathematics like sample path analysis to reason about how such systems behave over time is so valuable.  </p><p>On the other hand, in a complex adaptive system we have an advantage: as humans who are part of the system we can closely monitor convergence and divergence trends in real time with this same machinery and adapt to change the trajectory of the sample path! </p><p>We don&#8217;t always need to limit ourselves to building fully convergent, stable processes, because we are part of the system and have the power to influence convergence and divergence from <em>within the process!</em></p><ul><li><p>If a process is diverging and we want it to converge we know what we need to act on.</p></li><li><p>If a process is converging and we want it to diverge (say N(t) represents active customers) we know what we need to act on. </p></li></ul><p>What the machinery of sample path analysis gives us is a mathematically rigorous set of techniques for <em>measuring</em> the drivers of convergence and divergence,  the ability to reason about cause-effect relationships between them, and the ability to act on that knowledge. </p><p>A rock-solid measurement substrate, which sample path analysis provides, is a pre-requisite for building sound decision-making systems. </p><p>As we all know, with humans in the loop, it&#8217;s making decisions and acting on the knowledge that is the hard part. But the job does not get any easier if your measurement system is built on weak foundations. Sample path analysis fixes this in many practical operational scenarios.</p><p>In my mind this is what we have been missing in operations management in software development since we started measuring and ironically, it looks like the humble formula that that used to tell us how many widgets an assembly line can produce remains a core part of the solution. </p><h2>What&#8217;s Next?</h2><p>We&#8217;ve only scratched the surface of what sample-path analysis can do in software product development and engineering. Here&#8217;s my rough roadmap of topics I&#8217;m working on and plan to write about in upcoming posts:</p><p><strong>Operationalizing sample-path analysis</strong><br>I&#8217;m working on a bare-bones open-source toolkit to generate basic sample-path results directly from CSV files. I plan to extract this from my proprietary platform so others can experiment with their own data in a lightweight way. If you&#8217;d like to help test and refine this with real-world use cases, let me know. I&#8217;ll move it up the priority list if there&#8217;s enough interest.</p><p><strong>From raw data to analysis</strong><br>A systematic guide to taking a raw dataset, constructing MPPs and producing a usable sample-path analysis like the one we showed in this post. In this case study I glossed over a few tricks that make the story much easier to tell. Without them, the picture can be much murkier when running the analysis on raw data. We&#8217;ll work through those caveats and what they mean. </p><p><strong>Process&#8211;subprocess flow relationships</strong><br>Extending sample-path analysis to study how processes and subprocesses interact. Sample path analysis is fractal and this linkage is critical to push cause&#8211;effect reasoning across processes and timescales.</p><p><strong>Integration with Flow Engineering</strong><br>I&#8217;ve been exploring how sample-path analysis connects with value stream mapping in my advisory work for some time now. I&#8217;m especially interested in collaborating with folks in this space on creating lightweight, bespoke data-backed measurement models that support rigorous constraint analysis and create a consistent measurement system to show the impacts of flow engineering initiatives on operational metrics. Formalizing value models and making them measurable is part of this thread.</p><p><strong>Metastable processes and forecasting</strong><br>Current forecasting techniques in software (e.g., Monte Carlo simulation on short empirical distributions) have well-known limitations. Sample-path analysis gives us tools to build more robust empirical distributions and to detect when they&#8217;re no longer representative. We can forecast without appealing to reference forecasts which don&#8217;t actually make sense in complex adaptive system. This opens the door to improving Monte Carlo approaches, and even layering bayesian or probabilistic graphical models on top of MPPs to reason about cause and effect across linked processes. </p><p><strong>Use cases for L=&#955;W in engineering metrics</strong><br>Most standard engineering metrics (DORA, code review metrics, flow metrics, etc.) can be derived from a suitably defined MPP and the identity L=&#955;W. Framing them this way brings unity, mathematical rigor, clarity, and systematic cause&#8211;effect reasoning to what is today an ad hoc, theory-free landscape of metrics dashboards.</p><p><strong>Use cases for H=&#955;G</strong><br>We haven&#8217;t yet shown concrete examples here, beyond broad claims about the &#8220;economics of flow.&#8221; I plan to start with cost functions, which align most directly with the machinery we already have. Value functions are trickier: they flip the objective from convergence to divergence, and require working in the finite regime where H=&#955;G no longer holds. My current approach leans on value networks and <a href="https://www.polaris-flow-dispatch.com/p/modeling-the-value-exchange?r=fjllf">value exchange models</a> integrated with sample-path analysis using H=&#955;G, but there may be entirely different ways to tackle this. Still early days -  if this sparks your interest, I&#8217;d love to chat.</p><p><strong>Refining the Presence Calculus</strong><br><a href="https://docs.pcalc.org/">The Presence Calculus</a> is a unifying measurement substrate that connects these ideas. Built on the foundation of sample-path theory, it extends those concepts to reason and compute efficiently across timescales and across model boundaries. Conceptually, I view sample path analysis as a core analytical technique within the Presence Calculus. </p><p>The machinery for sample path analysis we&#8217;ve presented here can become unwieldy when applied beyond single processes or across timescales.  We need higher-level abstractions to describe process topologies and the relationships between sample-path metrics and finite-window metrics measured over short operational windows. </p><p>The Presence Calculus provides exactly those constructs: abstractions with provable mathematical properties that make reasoning about process assemblies simpler and scalable, while maintaining rigor. </p><div><hr></div><p>Across all of these threads, the opportunity is the same: to treat product development and engineering metrics not as ad hoc numbers justified through appeals to intuition or industry &#8220;best practices&#8221;, but as precisely defined, deterministic,  repeatable measurements over processes emerging from complex collaborations<strong>, </strong>backed by provable mathematics. </p><p>By applying the machinery of sample-path analysis, we can analyze the metastable dynamics of most real-world software and product development processes in much richer detail. Compared to the ad-hoc measurements accompanied by vague hand-waving we use to reason about metrics today, it puts operational reasoning with engineering metrics on a much firmer foundation. </p><p>If you are interested in any of these topics and would like to either collaborate or contribute please reach out and connect with me on LinkedIn and let me know what you are working on and how we might work together. </p><p>Also please subscribe to The Polaris Flow Dispatch to support this work.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>This means the <em>process feeding the system you are studying</em> has a stationary probability distribution but also behaves predictably enough that <em>expected</em> values of that distribution agree with the average values measured when over <em>all possible executions</em> of the actual process. If your process feeds a downstream process, then <em>your process</em> also need to be ergodic <em>in addition</em> to being stationary to apply Little&#8217;s Law to that downstream process, and so on.. It&#8217;s a very strong set of requirements. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>If you have not read that post, it will provide more context for the material here. Many sections of this post refer back to it for more informal background and context. It is highly recommended that you read that post before digging into the details of this one. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>I was also bootstrapping from consulting revenues, so needed to see traction quickly to decide whether it was worth investing in a building a new product in this space. Ultimately the answer to this was no at the time, for a variety of reasons. But it took longer than optimal for me to reach that decision. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>This is simply how we tracked units of work. Any connection to Agile stories is Jira-induced.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>I am fully aware that this runs counter to most &#8220;best-practice&#8221; advice around maximiizng utilization and keeping everyone busy at all times. The point to keep in mind in this case is that our cycles include the customer and in those cases, we have relatively little control over things that are waiting, and in this scenario, I would argue our approach is the correct answer. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>Flow efficiency was not a priority. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-7" href="#footnote-anchor-7" class="footnote-number" contenteditable="false" target="_self">7</a><div class="footnote-content"><p>This was directly counter to the advice I was giving my clients and still do in their context. The justification is that their problem was different from mine.  I still think that traditional flow management techniques are valuable if your software delivery process is your constraint. </p><p>But I am less convinced that dividing the &#8220;value delivery&#8221; problem into improving software delivery followed by improving value delivery is the right answer any more. I am of the opinion that two need to tackled holistically at the level of the &#8220;cycles&#8221; we will see in this example, and that the techniques we are showing here are the building blocks to figuring out how to iterate our way to the the correct things to tackle for improvement with rigorous measurement and data. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-8" href="#footnote-anchor-8" class="footnote-number" contenteditable="false" target="_self">8</a><div class="footnote-content"><p>Such scenarios exists even inside internal organizational processes where dependencies, priority shifts, internal competition for resources etc make real-world flow of work messy and unpredictable. We can still fruitfully use sample path analysis in all such scenarios and apply Little&#8217;s Law and the analytical tools it brings with it. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-9" href="#footnote-anchor-9" class="footnote-number" contenteditable="false" target="_self">9</a><div class="footnote-content"><p>It is potentially the basis for a next generation of Polaris as a product,  but right now the tooling output shown here only exists to support my advisory work and I plan to release some open source tools to gauge interest in the ideas and see whether anyone will adopt them. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-10" href="#footnote-anchor-10" class="footnote-number" contenteditable="false" target="_self">10</a><div class="footnote-content"><p>The shift of perspective to thinking about the events themselves vs the cumulative effects of their co-presence in time is the explicit focus of The Presence Calculus, where we build further upon the machinery of the sample path techniques we show here. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-11" href="#footnote-anchor-11" class="footnote-number" contenteditable="false" target="_self">11</a><div class="footnote-content"><p>Note that the. open/closed designation is element relative - the start or end dates are either present or not in the underlying MPP. The active/inactive designation is time-relative. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-12" href="#footnote-anchor-12" class="footnote-number" contenteditable="false" target="_self">12</a><div class="footnote-content"><p>The definition of the word process here has its roots in the definition of a <em>stochastic process </em>which is simply a collection of random variables - also functions of time. Sample path were studies as <em>realizations</em> of stochastic processes - think a sequence of coin tosses for a random variable &#8220;coin toss&#8221; with two outcomes heads or tails. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-13" href="#footnote-anchor-13" class="footnote-number" contenteditable="false" target="_self">13</a><div class="footnote-content"><p>El-Taha &amp; Stidham define the domain of sample path analysis as &#8220;processes with imbedded point processes&#8221; - a somewhat ungainly construction, but accurately represents the scope of the analysis. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-14" href="#footnote-anchor-14" class="footnote-number" contenteditable="false" target="_self">14</a><div class="footnote-content"><p>This is just a fancy way of saying instantaneous WIP, but in doing these types of analyses, it is always important to keep in mind that <a href="https://www.linkedin.com/posts/krishnaku1_%F0%9D%99%92%F0%9D%99%84%F0%9D%99%8B-%F0%9D%99%9E%F0%9D%99%A8-%F0%9D%99%A2%F0%9D%99%A4%F0%9D%99%A7%F0%9D%99%9A-%F0%9D%99%A9%F0%9D%99%9D%F0%9D%99%96%F0%9D%99%A3-%F0%9D%99%AC%F0%9D%99%A4%F0%9D%99%A7%F0%9D%99%A0-%F0%9D%99%9E%F0%9D%99%A3-activity-7366099810094911488-fiti?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAAEyk0BSBrN50ehjJTO4aN8Bif_N1tf1Ss">WIP is not simply WIP</a>. We will generally try and attach semantics to WIP other than #items, because this is always possible. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-15" href="#footnote-anchor-15" class="footnote-number" contenteditable="false" target="_self">15</a><div class="footnote-content"><p>If you are paying close attention you&#8217;ll also see we&#8217;ve filtered out some outliers in the data, we&#8217;ll explain later why we do that. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-16" href="#footnote-anchor-16" class="footnote-number" contenteditable="false" target="_self">16</a><div class="footnote-content"><p>We discussed the intuition behind why this invariant holds, and how it relates to sample paths in the <a href="https://www.polaris-flow-dispatch.com/i/169312170/the-finite-version-of-littles-law">The Many Faces of Little&#8217;s Law</a>, we will avoid repeating it here and move directly to the more technically precise definitions needed to measure the quantities involved. Reading this material in our previous post is highly recommended as context for much of the rest of this post. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-17" href="#footnote-anchor-17" class="footnote-number" contenteditable="false" target="_self">17</a><div class="footnote-content"><p>This is a distinction many commercial flow metrics tools, and most people plugging WIP into Little&#8217;s Law formulas fail to make. It is a big reason why they find Little&#8217;s Law doesnt &#8220;apply&#8221; to their data.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-18" href="#footnote-anchor-18" class="footnote-number" contenteditable="false" target="_self">18</a><div class="footnote-content"><p>We discussed this abstractly in <a href="https://www.polaris-flow-dispatch.com/i/169312170/convergence-vs-stability">The Many Faces of Little&#8217;s Law </a>and this is a concrete manifestation of those ideas in a real world data set. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-19" href="#footnote-anchor-19" class="footnote-number" contenteditable="false" target="_self">19</a><div class="footnote-content"><p>In software products, the fact that the code base is continually changing in response to new requirements is the characteristic adaption mechanism. This is intrinsic to software product development. Other adaptations at the SDLC and product scope level may also be in play, but the code base is the substrate that is continuously evolving and the impact of architecture, quality and maintainability of the code base often manifest as gradual, but perceptible changes in the long run sample path behavior of the product development process. </p><p></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-20" href="#footnote-anchor-20" class="footnote-number" contenteditable="false" target="_self">20</a><div class="footnote-content"><p>We can clearly see that L(T) has been climbing steadily, and even though the absolute values are small, these are likely to reflect significant underlying shifts in the process and/or its environment and deserve attention. Little&#8217;s Law will tell us where to focus.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-21" href="#footnote-anchor-21" class="footnote-number" contenteditable="false" target="_self">21</a><div class="footnote-content"><p>Note - we are being intentionally pedantic here - the terminology and machinery of sample path analysis is very modular and precise and showing these terms in a simple example like the one we are analyzing will make it easy to see how we can generalize these concepts very easily to model much more complicated processes. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-22" href="#footnote-anchor-22" class="footnote-number" contenteditable="false" target="_self">22</a><div class="footnote-content"><p>In our current example, we are assuming that N(0) = 0 ie no elements are in process at the start of the sample path. More generally, some elements may have unknown start times or lie before the observation window. These should be included in the cumulative arrivals as &#8220;initial&#8221; values. In practice, their effect diminishes as the window T grows, since they are averaged out over longer horizons.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-23" href="#footnote-anchor-23" class="footnote-number" contenteditable="false" target="_self">23</a><div class="footnote-content"><p>We&#8217;ll adopt this terminology to avoid confusing it with terms like lead time, cycle time etc which all depend upon having a specific interpretation of what these time stamps represent. We can think of those terms as different ways of naming <em>sojourn time </em>in a given context. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-24" href="#footnote-anchor-24" class="footnote-number" contenteditable="false" target="_self">24</a><div class="footnote-content"><p>The difference between sojourn time and residence time and its implications were discussed in <a href="https://www.polaris-flow-dispatch.com/i/169312170/the-finite-version-of-littles-law">The Many Faces of Little&#8217;s Law</a>. It is worthwhile reviewing that section for context in what follows. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-25" href="#footnote-anchor-25" class="footnote-number" contenteditable="false" target="_self">25</a><div class="footnote-content"><p> This is not to say tracking aging of individual elements on a day to day basis is not important, it absolutely is. But for long run averages and reasoning with Little&#8217;s Law, residence time is the correct lens. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-26" href="#footnote-anchor-26" class="footnote-number" contenteditable="false" target="_self">26</a><div class="footnote-content"><p>This is important because traditional techniques for detecting routine and exceptional variation like xMR charts assume that the average is stationary.  You cannot apply the traditional Western Electric formulas  directly to non-stationary data (See <a href="https://www.amazon.com/Understanding-Variation-Key-Managing-Chaos/dp/0945320531">Wheeler - Appendix 3</a>) and in case of complex adaptive systems its not merely a matter of binring the process <em>under control - </em>non-stationarity is intrinsic to the domain. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-27" href="#footnote-anchor-27" class="footnote-number" contenteditable="false" target="_self">27</a><div class="footnote-content"><p>Unfortunately, we were not tracking this metadata using any formal system at the time, so this retroactive assessment is purely based on my own understanding of the specific context behind the data. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-28" href="#footnote-anchor-28" class="footnote-number" contenteditable="false" target="_self">28</a><div class="footnote-content"><p>This should be pro forma if you are measuring things correctly. If your measured values for L(T), &#923;(T) and <em>w(T)  </em>don&#8217;t satisfy the equality L(T)=&#923;(T).<em>w(T) </em>for all T on the sample path, your measurements are wrong. So this invariant also serves as a consistency check on your flow metrics. It should always be possible to measure them correctly using the definitions we have given here - this is partly why we have described them is full detail. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-29" href="#footnote-anchor-29" class="footnote-number" contenteditable="false" target="_self">29</a><div class="footnote-content"><p>This is not a coincidence: this is also how the size of our team ranged across the measurement period. There are some interesting relationship to be uncovered here, but they are out of scope for our current discussion, since Little&#8217;s Law does not attempt to explain cause and effect beyond the relationship between <em>L(T), </em>&#923;(T) and w(T).</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-30" href="#footnote-anchor-30" class="footnote-number" contenteditable="false" target="_self">30</a><div class="footnote-content"><p>Much of the machinery we develop in the <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html">Presence Calculus </a>is designed to connect changes in these metrics <em>across timescales</em> so we can both detect changes at short time horizons while also being able to keep track of the long run averages - so we have both leading  (but less reliable) indicators for change on shorter timescales balanced by lagging (but more reliable) indicators for change on longer timescales. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-31" href="#footnote-anchor-31" class="footnote-number" contenteditable="false" target="_self">31</a><div class="footnote-content"><p>Stidham&#8217;s proof provides a mathematically precise set of conditions for this, and we will revisit this in a later post where we look at what we need to do operationally to guarantee that this convergence happens. But we don&#8217;t need to appeal to that here, we can simply directly measure the difference between the averages directly.</p><p></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-32" href="#footnote-anchor-32" class="footnote-number" contenteditable="false" target="_self">32</a><div class="footnote-content"><p>See <a href="https://www.amazon.com/Understanding-Variation-Key-Managing-Chaos/dp/0945320531">Wheeler</a> Appendix 2 for more elaboration of this concept. We look at sample path analysis as the technique that is the natural extension to find the voice of the process in his terms. The difference is that we are extending the concept to non-stationary processes, whereas Wheeler explicitly limited his methods to predictable processes. Non-stationary processes are intrinsically unpredictable.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-33" href="#footnote-anchor-33" class="footnote-number" contenteditable="false" target="_self">33</a><div class="footnote-content"><p>Of course, long run metrics are necessarily lagging metrics and the shorter time scale metric like aging are still required as leading metrics. The mathematics of the relationship between leading and lagging metrics in this domain is one of the key original contributions of the <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html#signal-dynamics">Presence Calculus</a> to this picture. </p></div></div>]]></content:encoded></item><item><title><![CDATA[The Causal Arrow in Little's Law ]]></title><description><![CDATA[Why Little's Law matters in the "real world"]]></description><link>https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-causal-arrow-in-littles-law</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Fri, 22 Aug 2025 16:02:09 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/e8279b9f-dbd2-485a-8dd4-d512655d5a9b_971x837.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!T3vs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!T3vs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 424w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 848w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 1272w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!T3vs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png" width="1271" height="1153" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1153,&quot;width&quot;:1271,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:91970,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/171471652?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!T3vs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 424w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 848w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 1272w, https://substackcdn.com/image/fetch/$s_!T3vs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9dab6144-f0f9-4b3a-a43d-28473e4efa7a_1271x1153.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Causal Mechanism in Little&#8217;s Law</figcaption></figure></div><p></p><p>Most people think Little&#8217;s Law is about stability. But what it says about causality is even more important.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p>This is the third post in our series of essays on Little&#8217;s Law here at The Polaris Flow Dispatch. </p><p>The first post, <a href="https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law?r=fjllf">The Many Faces of Littles Law</a> was our high level introduction to the key generalizations to Little&#8217;s Law that were made in the 50+ years since the original proof of a queueing theory result by Dr. John Little. Dr. Little&#8217;s result is the de-facto definition of Little&#8217;s Law, but the generalizations made by researchers since that proof and are a much more relevant starting point for applications of Little&#8217;s Law in complex, dynamic, non-stationary environments like software product development. </p><p>The second post. <a href="https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law?r=fjllf">A Brief History of Little&#8217;s Law</a> was more in-depth examination of the history of the proofs and proof techniques that led to this modern understanding. Understanding the proof techniques gives us insights into <em>why </em>the law is true, which then helps us understand <em>how </em>to apply it in context. </p><p>All, this inevitably leads to the question - so what?  Why should anyone in the &#8220;real world&#8221; care about any of this? Is this just abstract mathematical theory with no practical applications outside the lab? </p><p>The &#8220;real world&#8221; arguments, particularly in complex knowledge work domains like software development, is often tied to the popular conception of Little&#8217;s Law as a result that applies to stable, steady state systems - which &#8220;real world&#8221; systems often are not. </p><p>The first two posts were intended to broaden that framing so that it is clear that Little&#8217;s Law can be applied as-is to systems that are not stable, potentially expanding the scope of &#8220;real world&#8221; applications.  </p><p>So the next question is how? </p><p>This post addresses that question conceptually before the rest of this series starts digging into more granular details of how to operationalize these ideas in software development in particular - where will need to deal with plenty of  &#8220;real world&#8221; problems. </p><h2>Little&#8217;s Law in the &#8220;real world&#8221;</h2><p>The conventional story is that <em>Little&#8217;s Law tells you when a system is stable</em>. Since the law holds for stable systems, the thinking is that any system where it holds must be stable first. But if most &#8220;real world systems&#8221; are not stable, is the law even relevant? </p><p>There are three problems with this line of reasoning.  </p><p>First, it ignores the fact that many systems that appear unstable when viewed on short timescales are in fact stable when viewed over sufficiently long timescales, and thus are directly amenable to analysis with Little&#8217;s Law. </p><p>In this scenario,  we can often rely on the fact that knowing any two of the values in the identity &#119819; = &#120524;&#119830; gives us the third to apply the law in useful ways. There are many useful &#8220;back-of-the-envelope&#8221; calculations that can be made where we can easily measure two of the variables and can estimate a third, harder to measure quantity. </p><p>As but one example, in software development, portfolio level average <em>lead times</em> can often be quite easily and accurately estimated by looking at how <em>many</em> things were planned and delivered over a sufficiently large number of quarters.  This gives very reasonable estimates for strategic planning using available historical data without building expensive measurement infrastructure to track the granular details of projects and their detailed timelines. </p><p>There are many, many more applications in this vein and this is by far the most common use case for the law in general operations management<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p>Second, many real world system that are unstable, can be brought into a &#8220;quasi-stable&#8221; state by adopting process controls that actively manage &#119819;,  &#120524; and &#119830;. Much of Lean process engineering disciplines focus on this.  So this opens up another avenue of applications for the classical stationary forms of Little&#8217;s Law. </p><p>But as we have seen in the first two posts in this series, the law holds even in unstable and non-stationary systems. So the fact that a system might be unstable does not rule out useful applications of the law. The <a href="https://www.polaris-flow-dispatch.com/i/170785887/stidhams-proof-of-littles-law">sample path proofs of Little&#8217;s Law</a> give us tools to operationalize Little&#8217;s Law deterministically, and in complex, non-stationary environments. </p><p>So what are these applications? </p><p>This gets us to what, in my view, is the most important reason why the law matters in the &#8220;real world&#8221;:  whenever Little&#8217;s Law holds, it <em>lets you reason about cause and effect </em>when<em> </em>&#119819;,  &#120524; and &#119830; <em>change</em>. </p><p>So once we are in a position where we can measure &#119819;,  &#120524; and &#119830; <em>so that Little&#8217;s Law can be shown to hold</em>, then we can also start reasoning about what <em>causes </em>these values to be the way they are and why they <em>change</em>. </p><h2>The Causal Mechanism</h2><p>The identity &#119819; = &#120524;&#119830; does more than link three averages via an equation, it encodes a causal structure: &#119819; (time average of the number of  items in system) is an output, determined by &#120524; (arrival rate) and &#119830; (average time items spend in system)<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>.</p><p>This defines the mechanics of Little's Law : </p><ol><li><p>You can change &#120524; or &#119830;, and this changes &#119819;. You cannot <em>change</em> &#119819; directly.</p></li><li><p>Conversely, if you see that &#119819; has changed, it must be <em><strong>because</strong></em> <em>either</em> or <em>both</em> of &#120524; or &#119830; changed and the new value of &#119819; will be <em>exactly</em> the product of the new values of  &#120524; and &#119830;. </p></li></ol><p>This is a robust rule for causal inference but the  causal relationship here is often misunderstood or misapplied. </p><p>You&#8217;ll hear statements like: &#8220;Reducing WIP (&#119819;)<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a> reduces cycle time (&#119830;).&#8221; </p><p>Not really. The causal arrow doesn&#8217;t point that way<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>.</p><p>The law only says the three values are constrained by the equation. It does not tell you how &#119830; will change in response to changes in &#120524; or  &#119819;.   </p><p>Similarly, consider &#119827;&#119841;&#119851;&#119848;&#119854;&#119840;&#119841;&#119849;&#119854;&#119853; = &#119830;&#119816;&#119823; &#247; &#119810;&#119858;&#119836;&#119845;&#119838; &#119827;&#119842;&#119846;&#119838;. </p><p>It&#8217;s tempting to read this as a causal mechanism (shorten cycle time to increase throughput). But you can&#8217;t use it that way.</p><p>Two things are at play here:</p><ul><li><p>The <em>equality constraint</em>: knowing any two values fixes the third and</p></li><li><p>The <em>causal mechanism</em>: &#119819; changes when and only when &#120524; or &#119830; change.</p></li></ul><p>Both are often used together in applications, but the latter is the <em>only</em> inference rule we can use for reasoning about cause and effect <em>using Little&#8217;s Law. </em></p><p>&#119819; = &#120524;&#119830; is unambiguous.</p><blockquote><p>It tells us: change the inputs (&#120524;, &#119830;), and the output (&#119819;) is determined. That&#8217;s the causal structure the law gives, and it&#8217;s the only one we can rely on.</p></blockquote><p>It&#8217;s hugely important, but it holds <em>only</em> <em>when &#119819;, &#120524;, and &#119830; satisfy Little&#8217;s Law.</em></p><h2>How can we apply this? </h2><p>At a high level, this means: observe &#8220;a system&#8221; as a black box and collect measurements for &#119819;, &#120524;, and &#119830; over <em>sufficiently long</em> time intervals <em>where the identity </em>&#119819; = &#120524;&#119830;<em> holds</em>.  </p><ul><li><p><em>If</em> we can do this, we don&#8217;t just have three disconnected numbers, we have a reliable mechanism for detecting changes in &#119819; and analyzing its proximate causes (&#120524;, &#119830;) <em>without any additional internal info about the system</em>.</p></li><li><p>If<em> </em>we <em>cant</em>, then there is a whole set of diagnostics that one can derive for <em>why </em>it does not. The proof techniques behind the law show us how. </p></li></ul><p>Either way, this first-pass analysis using Little&#8217;s Law is going to be the starting point for a deeper causal analysis of flow in &#8220;a system&#8221; however you choose to define it:  we can measure and monitor <em>changes</em> in &#119819; and trace it back to <em>changes</em> in &#120524; and &#119830;. </p><p>Now when we see <em>changes</em> in &#120524; and &#119830;, we can layer in additional info about the system into this black box view to explain these changes. This is a dynamic analysis enabled only when &#119819; = &#120524;&#119830; holds over the measurements. </p><blockquote><p>This is important because changing &#120524; can change &#119830; and vice versa, and these can jointly influence  &#119819; but <em>that is not explainable by Little's Law alone</em>. We need more details about the system.  </p></blockquote><p>Typically, this is where queueing theory comes in the classical operations management applications of Little&#8217;s Law. We gather information about probability distributions, service policies, capacity, concurrency, service rates, utilization etc. to the extent they are measurable to able to understand the dynamics of the relationship between  &#120524; and &#119830;. </p><p>Or we may forgo queueing theory altogether and use heuristic models like the Theory of Constraints if detailed measurements are not possible. </p><p>In complex domains free form narratives<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>, <a href="https://flowengineering.org/">value stream maps</a>, <a href="https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration?r=fjllf">collaboration protocols</a>, etc. all play a role in building a deeper understanding <em>why </em>the system behaves as it does. These provide the context to explain how &#120524; and &#119830; interact. </p><blockquote><p>The key thing that Little&#8217;s Law enables is a clean separation between a &#8220;black box&#8221; view of a system where we can make meaningful causal inferences about changes in the system <em>without knowing any of the details of the system</em> other than the observable variables &#119819;, &#120524;, and &#119830;.</p></blockquote><p>When modeling systems this way, the definition of the boundaries of the &#8220;black box&#8221; and even the &#8220;items&#8221; that are under analysis are up to the modeler. Little&#8217;s Law is agnostic to all this. </p><p>We can decompose &#8220;the system&#8221; from an outside-in view to whatever level of detail that makes sense for answering the questions that the analyst is interested in.  There is no single defined way of decomposing a &#8220;system&#8221; up front - we choose the perspectives and granularity and timescales over which we are interested in performing the analysis. </p><blockquote><p>In short, when they satisfy Little&#8217;s Law &#119819;, &#120524; and &#119830; are &#119834;&#119836;&#119853;&#119842;&#119848;&#119847;&#119834;&#119835;&#119845;&#119838;. Not every combination of WIP, cycle time, or throughput numbers can claim that.</p></blockquote><h2>Up next</h2><p>Starting with the next post in the series, we will start making all this concrete with more detailed descriptions of how to do this type of operationalization in practical software development contexts. </p><p>We&#8217;ll start with showing how to produce accurate and actionable &#119819;, &#120524; and &#119830; by observing systems of interest over sufficiently long intervals. </p><p>One of the remarkable things is that, given the generality of Little&#8217;s Law, this is almost always possible once <em>you&#8217;ve focused on what problems you are trying to solve for and established a clear working context for the observations.</em> Even understanding clearly <em>why </em>Little&#8217;s Law <em>doesn&#8217;t</em> apply gives useful insights that are actionable.  </p><p>But you&#8217;ll need the background in the first two posts to fully make sense of the details in the rest of the series, so if you have not read those yet, this would be a great time to catch up before we dive into deeper waters. </p><div><hr></div><p>If you are interested in receiving these updates in your inbox as they are published please subscribe for updates.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.polaris-flow-dispatch.com/subscribe?"><span>Subscribe now</span></a></p><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>The <a href="https://people.cs.umass.edu/~emery/classes/cmpsci691st/readings/OS/Littles-Law-50-Years-Later.pdf">2011 survey article on Little&#8217;s Law</a> by Dr. Little has many such examples. They are useful to study, not just for the specific applications, but also to understand the <em>types </em>of reasoning you can do with Little&#8217;s Law.  Those reasoning modes are what let you apply it laterally across domains.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>To understand why this is, it helps to understand the formal definitions and proof techniques behind the law. The first two posts in the series should help, as will the details in the posts coming up in this series. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>Leave aside for now the technical detail that L is a time average of instantaneous WIP and when people say WIP they often mean instantaneous WIP. The arguments here hold even if the technically &#8220;correct&#8221; interpretation of WIP is used.  </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>Let&#8217;s say we throttle arrivals (lower &#120524;) - this is one mechanism to <em>potentially</em> reduce &#119819; since you cant change it directly. But even assuming that the equation in Little&#8217;s Law holds, that equation <em>alone</em> still doesn&#8217;t <em>guarantee</em> that reducing &#120524; will change &#119819; or &#119830; in a predictable way. And even if it did, it is not <em>reducing  </em>&#119819; that <em>causes </em>&#119830; to fall, so the causal inference here is wrong. </p><p></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>In software development in particular, the importance of narratives in providing context for understanding cause and effect relationships between &#120524; and &#119830; cannot be overstated. Many of the parameters we need to apply classical queueing theory to software development are not easy or even impossible to measure directly. </p><p>But specific narratives around teams and team topologies, engineering processes, technical architecture, collaboration styles etc.  give us the very plausible hypotheses for explaining dynamics of &#120524; and &#119830; in ways we can measure and test rigorously using Little&#8217;s Law. </p><p>So while queueing theory is often useful in this context, it needs to be combined with a qualitative and contextual information in order to make useful decisions. We will have more to say on this later in this series. </p></div></div>]]></content:encoded></item><item><title><![CDATA[A Brief History of Little's Law]]></title><description><![CDATA[Its evolution through mathematical proofs]]></description><link>https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/a-brief-history-of-littles-law</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Mon, 18 Aug 2025 16:01:31 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8e33716c-3426-40b9-ada4-99b8e8a0e265_1559x928.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!w4uT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!w4uT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 424w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 848w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 1272w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!w4uT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png" width="1456" height="255" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:255,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60679,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/170785887?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!w4uT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 424w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 848w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 1272w, https://substackcdn.com/image/fetch/$s_!w4uT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7bfd784d-2169-4d4a-97ac-b004c0132c45_1799x315.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a><figcaption class="image-caption">Fig 1: Proofs of Little&#8217;s Law - a timeline</figcaption></figure></div><p>In our last post, <a href="https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=false">The Many Faces of Little&#8217;s Law</a>, we showed that Little&#8217;s Law has undergone several upgrades since the original proof. by Dr. Little in 1961. </p><p>The original proof was ground-breaking and Dr. Little is rightfully associated with the law, but over the years, as this field has evolved, the association of the law with its original statement and proof has also resulted in several myths about what Little&#8217;s Law is and where and when it can be applied. </p><p>Even though Little&#8217;s Law is most often encountered in conjunction with queueing theory, modern proofs of the law are independent of queuing theory. While it is most often applied in analyzing the flow of work in an operational setting, the core principles underlying Little&#8217;s Law have allowed it to be extended naturally to analyzing the economics - costs, risks, and rewards arising from that flow of work. </p><p>The law applies to certain classes of stochastic processes, and deterministic systems are a special case. But it does not depend on the internal structure of these system, just their observable input-output behavior<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. It applies equally well to linear or non-linear systems, simple or complex systems, and even certain types of chaotic systems. </p><p>However, in typical applications, this generality is not exploited mainly because the law is largely assumed to apply only under the stringent conditions that Dr. Little proved in 1961. </p><p>Sample path analysis<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>, a mathematical technique pioneered by Dr. Shaler Stidham in proving the first deterministic version of the law in 1972  is a core theoretical technique underpinning the evolution of the law.  </p><p>It is of particular interest in software product development because Dr. Stidham showed that many of the perceived limitations that are typically associated with Little&#8217;s Law - requiring steady state equilibrium, stationary distributions, and low variability - are not intrinsically needed to <em>apply</em> Little&#8217;s Law in operational contexts. </p><p>This has practical implications. Our first post laid out the theory in broad strokes and our <a href="https://docs.pcalc.org/pandoc/littles_law_history.html">deep dive article</a><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a> goes into more details. We will discuss many more specific applications in this series. </p><p>But before we begin, this post establishes the historical context, exploring the evolution of Little&#8217;s Law  through its mathematical proofs. These are powerful generalizations of Dr. Little&#8217;s result, developed over 30+ years by mathematicians and moved it from an empirically observed mathematical regularity in operational settings into a foundational law of systems analysis. </p><p>Examining this history gives us insights into the <em>why </em>is is a subtle result, and also <em>why </em>it was possible to loosen restrictions and generalize the law to what it is today. This will be crucial context as we dig deeper into the details of applying the law in its more general forms. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Empirical Origins </h2><p>Little&#8217;s Law began its life in the mundane world of operations management&#8212;as an empirical regularity observed in retail stores, call centers, and other service operations. Observers noticed that when more customers came in and stayed longer, the stores got more crowded. That seems obvious. What was less obvious was that the relationship between the <em>averages</em> of arrivals, the time customers stayed, and the number of customers in the store at any given time were mathematically related.</p><p>The mathematical relationship observed was:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L = \\lambda W&quot;,&quot;id&quot;:&quot;ROPVIKRTTY&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>Where &#955; is the rate at which customers arrive, W is the average time a customer spends in the store, and <em>L </em>is the average number of customers in the store.</p><p>This relationship between averages was confirmed empirically time and again and widely assumed to be true &#8212;but no one knew <em>why</em> this relationship between these average values should hold. </p><p>As we will see in this series, that is anything but obvious. Behind it is a profound and general truth about the dynamics of <em>any</em> system where entities enter and leave over time - a truth we now know as Little&#8217;s Law.</p><h3>Why this is important</h3><p>Empirical observation often reveals correlations&#8212;associations where two quantities move in concert. These correlations can be a starting point for causal reasoning, prompting us to search for underlying mechanisms that might explain the linkage. However, correlations do not always indicate causation, as they may be influenced by confounding variables.</p><p>It is important to note that the empirical observations leading to Little&#8217;s Law are much stronger than statistical correlations. They describe an equation relating key variables. When variables are linked by an equation, the space of plausible explanations for change narrows dramatically.</p><p>For example, if the average number of customers in a system increases, there are only three possibilities: the arrival rate increased, the average time each item spent in the system increased, or both. No other explanation is consistent with the equality&#8212;there are no confounding variables.</p><p>Knowing that a relationship like Little&#8217;s Law holds gives us a robust framework for causal reasoning about observable system behavior. It doesn&#8217;t tell us what will happen in the future, but it constrains what can happen. Whenever the equation holds, these three quantities remain bound by the relationship between their averages.</p><p>We have a powerful causal reasoning tool if we can rigorously prove the conditions under which this equation holds for any system with inflows and outflows. That is why this result&#8212;and the man who proved it&#8212;are rightly honored with the name <em>Little&#8217;s Law</em>.</p><h3>Dr. Little proves the law.</h3><p>In 1961, Dr. John Little<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>, at the MIT Sloan School, gave the first mathematical proof of this empirical relationship. His proof method used the most popular tool for solving these problems: queueing theory, developed decades earlier to model congestion in telephone exchanges <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>. </p><p>The precise result he proved was the following:</p><blockquote><p><em>In a queuing process, let 1/&#955; be the mean time between the arrivals of two consecutive units, L be the mean number of units in the system, and W be the mean time spent by a unit in the system. It is shown that, if the three means are finite and the corresponding stochastic processes strictly stationary, and, if the arrival process is metrically transitive with nonzero mean, then L = &#955;W.</em></p></blockquote><p>Queueing theory typically uses probabilistic models of arrivals and departures, and most results here depend on specific assumptions about how stochastic processes behave.</p><p>What made his result so remarkable was how broadly it applied. He showed that it held under a broad set of conditions. Specifically, he showed that it held regardless of the types of the probability distributions. That was an unexpectedly general result for queueing theory.</p><p>It pointed to something deeper&#8212;something structural about input-output systems. No matter how arrivals and completions fluctuated, or whether they were regular, random, or correlated, the strict equality of Little&#8217;s Law still held.</p><p>This eliminates randomness  as the underlying mechanism that governs why the law holds. It also removes variability as a driving force.  While variability still affects the behavior of the systems&#8212;how large the values of these averages are and how much they fluctuate&#8212;it does not invalidate the relationship.</p><p>In fact, his proof showed that what happens <em>inside</em> the system doesn&#8217;t matter to the <em>relationship </em>at all! </p><p>From a queueing theory perspective Little's Law, it turns out, describes the dynamic behavior of arrival and departure processes when they <em>interact in time</em>. It says that no matter what these processes are, the dynamic behavior of the queue, expressed via the relationship between these averages, is constrained by the above equation requiring only <em>stationarity</em> of probability distribution as a non-trivial condition. </p><h2>Little&#8217;s proof was a special case</h2><p>Dr. Little's proof required a set of conditions on these averages&#8212;specifically, that they were well-defined and finite. These are relatively mild conditions. But his proof also required that the underlying processes were <em>strictly</em> stationary: that is, the long run statistical properties<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a> of the system did not drift over time, and the arrival process was ergodic (this is the metrically transitive part). These are significant caveats. They imply that, as proven initially, the formula in Little's Law applies only to systems operating in a very well-behaved and stable equilibrium.</p><p>However, since Dr. Little's original paper, newer proofs of the law have shown that his argument relies on stronger assumptions than necessary. Specifically, they show that the requirements of stationarity and ergodicity in Little&#8217;s proof are not fundamental to the law itself&#8212;they are consequences of the particular proof technique he used. As such, they are <em>sufficient</em> conditions for the law to hold, but not <em>necessary</em>.</p><p>There&#8217;s value in understanding why.</p><p>Little&#8217;s Law is fundamentally a statement about <em>time averages</em>&#8212;quantities that can be directly observed in real-world systems over time. Dr. Little, however, used probabilistic techniques to prove a relationship between the <em>expected values of</em> random variables, which are called <em>ensemble averages</em>. Unlike time averages, ensemble averages are computed across the entire probability distribution of a variable and cannot depend on how the system evolves over time.</p><p>Little&#8217;s proof established the equality between these ensemble averages. To apply this result to real-world systems, one must assume that the ensemble averages and the time averages of the corresponding processes converge to the same value. This convergence is guaranteed when the underlying stochastic processes are stationary and ergodic&#8212;hence the need for those assumptions in Little's original proof.</p><p>But this doesn&#8217;t mean that stationarity and ergodicity are required for the law itself. It is entirely possible to prove Little&#8217;s Law directly for time averages, bypassing probability theory altogether.</p><p>This is precisely what Dr. Shaler Stidham of Cornell did in 1972 <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-7" href="#footnote-7" target="_self">7</a>.</p><h2>Stidham&#8217;s Proof of Little&#8217;s Law</h2><p>Stidham demonstrated that Little's Law was even more general than previously believed. His proof was purely deterministic and did not rely on any probabilistic or queueing theory techniques. It was based on standard techniques from continuous analysis, using time averages on sample paths for queue length, calculated over finite intervals. It eliminated the requirements for stationarity, ergodicity, and related assumptions.</p><p>The specific statement he proved was the following :</p><blockquote><p>Consider a system observed over a sufficiently long interval 0&#8804; T&lt; &#8734;. If the time-average arrival rate and the average time each item spends in the system <em>over this window</em> each converge to finite limits&#8212;call them &#955; and W, respectively&#8212;then the time-average number of items in the system also converges to a finite limit L, and the relationship <em>L = &#955;W </em>holds.</p></blockquote><p>In contrast to Dr. Little&#8217;s original formulation, which relates the <em>expected values</em> of probability distributions, this version establishes a relationship between the <em>limits of time averages</em> observed along a sufficiently long sample path over which time averages are calculated.</p><p>This is a significant generalization, but it also needs to be read carefully to understand precisely what Little&#8217;s Law is asserting&#8212;and the specific conditions under which it holds.</p><p>Stidham&#8217;s proof did not require even queueing theory assumptions like a defined arrival or departure process. So, technically, he showed that Little's Law is much more than a result that applies only to queueing systems. He showed that Little's Law was a general statement about the long-run dynamics of <em>any </em>input-out system where entities arrive at and depart from the system over time.</p><p>The only requirements for the law to hold were that the three averages in the equation were well-defined and converged to a finite limit when measured over sufficiently long observation windows.</p><p>His proof reinforces the idea that the formula <em>L = &#955;W </em>as originally proved by Dr. Little applies to systems in equilibrium&#8212;albeit under much weaker conditions than those in his original proof. But Stidham&#8217;s proof technique, sample path analysis, opened up ways of exploiting a key <a href="https://docs.pcalc.org/pandoc/littles_law_history.html#finite-window">conservation principle</a> behind the law that functions as a universal invariant governing the law. </p><p>As we&#8217;ll see in this series, this allows us to apply the law under both equilibrium and non-equilibrium conditions. This is what allows Little&#8217;s Law to bridge from equilibrium environments to dynamic, evolving, and complex systems like software development which often operate far from equilibrium.</p><p>Starting with our next post, we will examine Stidham's specific result more carefully, using his ideas to show how when measured appropriately, Little's Law can <em>always</em> be empirically validated and used in software development. </p><h2>The General Form of the Law</h2><p>Stidham&#8217;s extensions of sample path analysis led to a very general version of Little's Law where instead of indexing on items, we <em>arbitrary time varying functions of items</em> with some weak restrictions. </p><p>A version of this general form was independently proven much earlier in a somewhat different context by Brumelle<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-8" href="#footnote-8" target="_self">8</a> but Heyman and Stidham<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-9" href="#footnote-9" target="_self">9</a> showed that the result could be obtained by directly applying the sample path arguments used to prove <em>L = &#955;W </em>and directly established the connection to Little&#8217;s Law.</p><p>The general form of the law is stated as <em>H</em>=<em>&#955;G </em>where <em>H </em>and <em>G </em>are direct mathematical analogues of  time average and sample averages <em>L </em>and <em>W </em>except defined over <em>time varying functions </em>over processes. This allows us to generalize Little&#8217;s Law to economic quantities tied to processes such as costs, risks, revenues, profits etc. </p><p>As we discuss in our deep dive on Little&#8217;s Law <a href="https://docs.pcalc.org/pandoc/littles_law_history.html#h-lambda-g-the-general-form-of-littles-law-1980">this generalization</a> is substantially more complicated to even setup and describe compactly. However, this version of Little's Law, called the Generalized Little's Law, has critical applications to modeling the economics of flow and will be critical in understanding how to measure the relationship between the flow of work and the flow of value - something we have been exploring in some detail in this series. <br><br>But before we can fully appreciate that version and what it says, we have to understand the importance of sample path analysis  as it underlies both Stidham&#8217;s proof and its generalizations. This is what we will explore further and apply specifically in a software development operations management context, in the next few posts.</p><p>At this point, Little's Law is considered to be much more than a result in queueing theory. It has earned something close to the ontological status of a natural equilibrium law that reveals a fundamental relationship that applies to very general forms of stochastic processes. </p><p>This is a powerful property that can be exploited in many different ways once you establish it, and this has been the real reason why Little's Law has been so useful in every domain that it has been successfully applied so far.</p><h4><strong>Post Script 1: The Throughput Formula</strong></h4><p>It&#8217;s worth pausing to explain why the version of Little&#8217;s Law commonly used in software today looks quite different from the one we&#8217;ve discussed so far.</p><p>Dr. Little&#8217;s original proof applied to stationary systems with finite averages&#8212;conditions that most manufacturing processes in steady state typically satisfy. In practice, this means that under equilibrium, arrival rates can be assumed equal to departure rates. This allows us to write:</p><p><em>L</em> = <em>&#119883;</em>.W</p><p>where <em>&#119883;</em> is the departure rate or throughput. Rearranging this and renaming the terms gives us the familiar throughput formula:</p><p><strong>Throughput = WIP / Cycle Time</strong></p><p>This is the formula for Little&#8217;s Law that was originally used in manufacturing contexts and its utility was highlighted in Hopp &amp; Spearman&#8217;s seminal textbook <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-10" href="#footnote-10" target="_self">10</a>. There  it is a natural fit, where factory managers focus on optimizing WIP and cycle time to meet a fixed throughput goal derived from stable production orders. It was imported into Lean software development, originally by Tom and Mary Poppendieck<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-11" href="#footnote-11" target="_self">11</a>, and operationalized in the software Kanban community by David Anderson<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-12" href="#footnote-12" target="_self">12</a> and Dan Vacanti<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-13" href="#footnote-13" target="_self">13</a>,  and more recently in the enterprise contexts by Dr. Mik Kersten<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-14" href="#footnote-14" target="_self">14</a>.  </p><p>But in software development, direct application of this formula for operational metrics is problematic. Much of software development happens in an environment where demand is constantly shifting, capacity cannot be accurately measured, and variability in the work is endemic and often irreducible. Much of the work happens at the boundary between two complex processes (the customers and a software provider) and involve long running concurrent processes involving humans and machines on both sides.  </p><p>This introduces non-trivial features into the problem of measuring flow, that are hard to fully capture with the steady state throughput formula, but nonetheless are representable using the more general forms of Little&#8217;s Law.   </p><p>In our treatment of Little's Law going forward, we&#8217;ll explore the more general forms of Little&#8217;s Law as the basis of measuring flow in software development, and minimally,  this means starting with the arrival rate form and adopting Stidham&#8217;s sample path analysis to measure flow metrics.  </p><p>For example,  one of the key flow metrics that is now recognized as needing specific focus in software contexts is <em>work item age. </em>As we will see, under the more general framing of Little&#8217;s Law, this metric falls out quite naturally as a core component of <em>residence time </em>which is directly represented in the finite version of Little&#8217;s Law. </p><p>Many of the adaptations of flow management techniques derived from Lean will still apply in terms of day to day operations, but the way we <em>measure </em>the flow in general systems contexts and its impact will become significantly more streamlined and powerful. As a result we will also gain new insights into how we can use these measurement to further evolve and improve the techniques we use in day to day operations.  </p><p></p><h4><strong>Post Script 2: Further reading</strong></h4><p>In 2011, Dr. Little published <a href="https://people.cs.umass.edu/~emery/classes/cmpsci691st/readings/OS/Littles-Law-50-Years-Later.pdf">a survey</a><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-15" href="#footnote-15" target="_self">15</a> of all the developments related to Little's Law since its original proof, on its 50th anniversary. Most of this series started from a close reading of that paper and its source references. I highly recommend it if you&#8217;re interested in a more technical, yet accessible, presentation of the material in this post with an excellent first person account from Dr. Little himself on his journey with the law and its proofs. </p><p>Interestingly, in this survey article Dr. Little starts with Dr. Stidham&#8217;s result as the canonical statement of Little&#8217;s Law, more or less ignoring the statement that he originally proved!  </p><p>This is not to say that his result has somehow become less useful. It absolutely is in many operational contexts where stationarity is guaranteed. But the key lesson you will take away from this survey article is that it is not required, and that this frees us up to apply this law in vastly more general settings. </p><p>Our <a href="https://docs.pcalc.org/pandoc/littles_law_history.html">deep dive article</a> is another reference to go deeper here, with a specific focus on the things we will find necessary in adapting this material to operational use in software development. </p><h2>References and Footnotes</h2><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>More precisely, it applies to stochastic processes built from point processes (events) &#8212; arrivals and departures, for example &#8212; from which we construct the random variables of interest.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p><em><a href="https://www.amazon.com/Sample-Path-Analysis-International-Operations-Management/dp/0792382102">Sample path analysis of queueing systems</a></em>, <strong>El-Taha &amp; Stidham</strong>, Springer. 1999</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p><em><a href="https://docs.pcalc.org/pandoc/littles_law_history.html">A deep dive into Littles Law</a>,</em> <strong>Krishna</strong> <strong>Kumar</strong>, <a href="https://docs.pcalc.org">The Presence Calculus Project Documentation</a>, 2025</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p><em><a href="https://pubsonline.informs.org/doi/10.1287/opre.9.3.383">A proof of the queueing formula: </a></em><a href="https://pubsonline.informs.org/doi/10.1287/opre.9.3.383">L = &#955;W,</a> <strong>John D.C Little</strong>, Informs 1961. <em> </em></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p><em><a href="https://archive.org/details/queuesinventorie0000mors/page/n11/mode/2up">Queues, inventories, and maintenance : the analysis of operational system with variable demand and supply</a>, </em><strong>Philip Morse,</strong>Wiley 1957. </p><p>Note: Philip Morse, in this seminal textbook, challenged his readers to find a situation where the law was not true - a challenge that his doctoral student John Little took on. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>This includes the average and all higher order moments like variance, skewness <em>etc</em>. It is a very strict set of conditions!</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-7" href="#footnote-anchor-7" class="footnote-number" contenteditable="false" target="_self">7</a><div class="footnote-content"><p><a href="https://pubsonline.informs.org/doi/epdf/10.1287/opre.22.2.417">A last word on </a><em><a href="https://pubsonline.informs.org/doi/epdf/10.1287/opre.22.2.417">L = &#955;W</a></em>, Shaler Stidham, Informs 1972. </p><p>Note: We have taken a few liberties in stating this version of the law in our post to keep the exposition clear. The more precise version can be <a href="https://docs.pcalc.org/pandoc/littles_law_history.html#l-lambda-w-dr.-stidhams-proof-1972">found</a> in our deep dive paper.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-8" href="#footnote-anchor-8" class="footnote-number" contenteditable="false" target="_self">8</a><div class="footnote-content"><p><em>On the relation between customer and time averages in queues,</em> <strong>Brumelle</strong>, Journal of applied probability, 1971. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-9" href="#footnote-anchor-9" class="footnote-number" contenteditable="false" target="_self">9</a><div class="footnote-content"><p><em><a href="https://pubsonline.informs.org/doi/abs/10.1287/opre.28.4.983?journalCode=opre">The relation between customer and time averages in queues</a>,</em> <strong>Heyman &amp; Stidham</strong>, Informs 1980. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-10" href="#footnote-anchor-10" class="footnote-number" contenteditable="false" target="_self">10</a><div class="footnote-content"><p><a href="https://www.amazon.com/Factory-Physics-Wallace-J-Hopp/dp/1577667395">Factory Physics</a> 3rd Ed, Hopp &amp; Spearman, Waveland Pr, 2011</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-11" href="#footnote-anchor-11" class="footnote-number" contenteditable="false" target="_self">11</a><div class="footnote-content"><p><em><a href="https://www.amazon.com/Lean-Software-Development-Agile-Toolkit/dp/0321150783">Lean software development</a></em>, an Agile toolkit, <strong>Mary and Tom Poppendieck</strong>, Addison-Wesley, 2003</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-12" href="#footnote-anchor-12" class="footnote-number" contenteditable="false" target="_self">12</a><div class="footnote-content"><p><em><a href="https://www.amazon.com/Kanban-Successful-Evolutionary-Technology-Business/dp/0984521402">Kanban: successful evolutionary change for your technology business</a>.</em> <strong>David J Anderson, </strong>Blue Hole Press, 2010.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-13" href="#footnote-anchor-13" class="footnote-number" contenteditable="false" target="_self">13</a><div class="footnote-content"><p><em><a href="https://www.amazon.com/Actionable-Agile-Metrics-Predictability-ActionableAgile/dp/B0F388DZ5T/ref=sr_1_1?crid=2B4ELANNGGAHI&amp;dib=eyJ2IjoiMSJ9.abzO9lqBUGxjv6hjH41VMlY_RFUTASVaAtssP-spoaLGjHj071QN20LucGBJIEps.uysuYYgnfYAuZ07CWqnzsbaT8vqHD8O6IebWVra8ZOE&amp;dib_tag=se&amp;keywords=actionable+agile+metrics+for+predictability&amp;qid=1755032916&amp;sprefix=Actionable+agi%2Caps%2C188&amp;sr=8-1#detailBullets_feature_div">Actionable agile metrics for predictability 10 Anniversary Edition,</a></em> <strong>Daniel Vacanti, </strong>ActionableAgile(R) Press<strong>, </strong>2025<strong>.</strong></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-14" href="#footnote-anchor-14" class="footnote-number" contenteditable="false" target="_self">14</a><div class="footnote-content"><p><em><a href="https://www.amazon.com/dp/1942788398/?bestFormat=true&amp;k=project%20to%20product%20mik%20kersten&amp;ref_=nb_sb_ss_w_scx-ent-pd-bk-d_k1_1_9_de&amp;crid=CBREWRM51MMB&amp;sprefix=Mik%20Kerst">Project to Product: How to Survive and Thrive in the Age of Digital Disruption with the Flow Framework</a>, </em><strong>Mik Kersten, </strong>IT Revolution,  2018<strong>.</strong></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-15" href="#footnote-anchor-15" class="footnote-number" contenteditable="false" target="_self">15</a><div class="footnote-content"><p><em><a href="https://people.cs.umass.edu/~emery/classes/cmpsci691st/readings/OS/Littles-Law-50-Years-Later.pdf">Little&#8217;s Law on its 50th anniversary</a></em>, John Little, Informs, 2011. </p></div></div>]]></content:encoded></item><item><title><![CDATA[The Many Faces of Little's Law]]></title><description><![CDATA[Its good for more than just managing assembly lines]]></description><link>https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-many-faces-of-littles-law</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Tue, 29 Jul 2025 16:00:52 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/2ceb8d9d-b5fa-4487-8c60-d0bcd4941702_3713x2299.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tma4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tma4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 424w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 848w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 1272w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tma4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png" width="1456" height="902" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/92c40733-6925-4167-b6f4-9a5464e4b1a8_3713x2299.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:902,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:263049,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F92c40733-6925-4167-b6f4-9a5464e4b1a8_3713x2299.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Tma4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 424w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 848w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 1272w, https://substackcdn.com/image/fetch/$s_!Tma4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff97b6687-72b0-48dc-848c-1274eafabd30_3713x2299.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>If you&#8217;ve worked in software delivery or followed any Lean or flow-based methodology, you&#8217;ve almost certainly seen this formula:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Throughput} = \\frac{\\text{WIP}}{\\text{Cycle Time}}&quot;,&quot;id&quot;:&quot;FQRIGBXIBW&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>This is a formula that shows that there is an underlying &#8220;physics&#8221; to the flow of work in software, and that these key flow metrics are not simply isolated descriptive statistics.</p><p>The relationship between Throughput, WIP and Cycle Time show up in books and flow metrics dashboards, and the formula is almost always referenced in training materials to justify WIP limits, to reason about delivery times, to explain why queues form. It is part of the Lean  software development canon. </p><p>The formula is usually  introduced without much further qualification, as &#8220;Little&#8217;s Law.&#8221;  This is directionally correct, but it&#8217;s not the full picture.  </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>What we&#8217;ll call the throughput formula came to lean software from its applications in manufacturing. In that domain there are set of assumptions that can be made, that allow us to treat this formula as something that holds generally, <em>in that context. </em></p><p>It is also well known that this formula is a rearrangement of a more fundamental identity:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L = \\lambda W&quot;,&quot;id&quot;:&quot;NWGUMFWUKB&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>This identity relates the <em>long-run</em> average number of items in the system (<em>L</em>), the average arrival rate (&#955;), and the average time each item spends in the system (<em>W</em>). </p><p>Under <em>steady-state conditions</em>, when arrivals and completions are balanced and the averages converge to finite values, you can simply replace &#955; with Throughput, and interpret <em>L </em>as WIP and <em>W </em>as Cycle Time and the throughput formula emerges. </p><p>But those steady state conditions often don&#8217;t hold&#8212;especially when measuring software development processes. </p><p>Observation windows are short, often shorter than the time span of work. Work starts, stops and arrives in batches. Work items may span reporting cycles. Under these conditions, if you just plug in the numbers for Throughput, WIP and Cycle Time from your flow metrics dashboards into the throughput formula, you&#8217;ll find that the equation fails to hold.</p><p>This is sometimes taken as evidence that Little&#8217;s Law &#8220;doesn&#8217;t apply to software,&#8221; </p><p>But this is demonstrably false. It reflects a fundamental misunderstanding of what Little&#8217;s Law is now understood to be.  </p><p>If you&#8217;ve ever had folks give all sorts of esoteric or emotional arguments for why Little&#8217;s Law is irrelevant in software, this post will argue that perhaps it&#8217;s worth understanding the full power of Little&#8217;s Law before making that argument. </p><p>So let&#8217;s dig into what &#8220;Little&#8217;s Law&#8221; <em>really</em> says. </p><h2>The Principle behind Little&#8217;s Law</h2><p>There are many ways to state &#8220;Little&#8217;s Law&#8221;. But all versions  follow from a single universal principle:</p><blockquote><p><em>The total time accumulated in an input-output system by a set of discrete items,  when averaged per item, is proportional to the time average of the number of  items present in the system. The proportionality factor is the rate at which the items arrive at the system.</em></p></blockquote><p>This is a conservation principle relating <em>time average</em>s and <em>sample averages</em> of time accumulation in an input&#8211;output system. It is general and universal. </p><p>More importantly, it is <em>provable</em> mathematically. We can clearly characterize how and when the principle holds. Unlike many &#8220;laws&#8221; that circulate in software and operations, this one leads to physical laws whose validity we can test directly knowing that it <em>must </em>hold.</p><p>Given the time average of the number of items, the arrival rate, and the average time each item accumulates in the system, the principle says these quantities are linked: if we know any two, the third is completely determined.</p><p>Knowing that Little&#8217;s Law holds reduces the number of <em>degrees of freedom for</em> <em>change</em> in the system. It gives us a strong model for reasoning about <em>proximate causality</em> in any context involving these three variables.</p><p>If I know that <em>L </em>changed, the only possibilities are that &#955; changed, or <em>W </em>changed or both. The product of their new values will always equal the new <em> L</em>. Any other explanation must ultimately be traced back to a change in one of these two other quantities. </p><p>Note that this does not let you predict <em>how</em> the values will <em>change</em> <em>in the future</em>, but it <em>constrains </em>how it <em>can </em>change. </p><p>Recognizing that this general principle exists makes it simpler to model and apply Little&#8217;s Law in contexts very different from the manufacturing setting implied by the throughput formula. </p><p>And this is the key - understanding that there are many different versions of a the law that we can derive contextually from the same underlying universal principle.</p><p>As 50+ years of research in academia and industry have shown, the list is larger than you might imagine and has many significant applications in software development as well.</p><h2>The Finite Version of Little&#8217;s Law</h2><p>The core conservation principle applies even if the system is in flux&#8212;<em>so long as all measurements are taken over the same time window</em>.  In this sense, the <em>most general version</em> of the law is the one that applies to a <em>fixed</em>, <em>finite</em> time window: </p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L = \\Lambda w&quot;,&quot;id&quot;:&quot;SQQIVCTSOV&quot;}" data-component-name="LatexBlockToDOM"></div><p>The fact that the we use upper case &#923; and lower case <em>w </em>is not a typo.  These are <em>not </em>the same quantities as in the familiar steady state version of the law, but closely related to them. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZUqG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZUqG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 424w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 848w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 1272w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZUqG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png" width="1456" height="1084" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1084,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:329537,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZUqG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 424w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 848w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 1272w, https://substackcdn.com/image/fetch/$s_!ZUqG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0de5009d-33d3-4f54-9426-4a9048074115_1531x1140.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: Little&#8217;s Law over a fixed, finite window</figcaption></figure></div><p>If we look at a finite observation window T where the window is shorter than the time accumulated by items, we will see many different configurations in which items overlap that window: some start and end within the window, others start before and end inside, and still others span the entire window.</p><p>But if we focus on <em>the observation window</em> itself, we can consider the way in which items accumulate time <em>strictly within the window. </em> </p><p>This leads to a set of observer&#8209;relative quantities that on their own obey the conservation principle <em>relative to that observation window</em>.</p><ul><li><p>&#923; is the <em>cumulative arrival rate</em> over the window - like the arrival rate, but includes everything that was already present at the  start of the window as an &#8220;arrival&#8221;. You can think of it as <em>over-estimate </em>of the true arrival rate. </p></li><li><p><em>w</em> is the average time accumulated by the items <em>within the observation window - </em>this is conventionally called the <em>residence time</em> of items in the window. You can think of this as the <em>underestimate </em>of the true time in the system. </p></li><li><p>L is the time-average number of items observed over the window. This is the exact value of the time-average of the number of items. </p></li></ul><p>Little&#8217;s Law for finite windows states that the identity &#119871; = &#923; &#215; <em>w </em><strong> </strong>always holds for <em>any finite observation window.  </em>It holds <em>at all times</em> and <em>at all timescales</em> and it <em>does not matter whether the system is at equilibrium or not</em>. </p><p>In this sense, it is truly a physical <em>law. </em>Mathematically, it is a tautology. </p><p>But crucially, even though the two quantities in the right hand side are estimates in the finite version, the estimation errors cancel out <em>over any finite window of time, </em>yielding <em>the true value of  the time-average of the number of items in the system! </em></p><p>This is a remarkably powerful universal constraint governing time accumulation in <em>any </em>input-output system. </p><h3>The problem of end-effects</h3><p>So what&#8217;s the catch? Well - clearly the difference is that &#955; and <em>W </em>in the well known version of Little&#8217;s Law represent measures on the <em>complete</em> items and not partial ones. In classical queueing theory, &#955; is the long arrival rate (rather than the cumulative arrival rate) and W is the long run average <em>sojourn time (</em>rather than residence time).  </p><p>When dealing with business processes we are ultimately interested in talking about arrival rate and sojourn time rather than cumulative arrival rate and residence time over finite operational window. If we take a customer facing view, they represent rate at which customer requests arrive in the long run, the time it takes to respond to those requests etc. So these are the numbers that are operationally significant to a business. </p><p>To  understand the relationship between the two sets of measurements,  we can consider zooming out and observing the system over a window that is much longer than the time accumulated by individual items in the system (sojourn times). </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rxYi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rxYi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 424w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 848w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rxYi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png" width="1456" height="1112" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1112,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:592185,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rxYi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 424w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 848w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 1272w, https://substackcdn.com/image/fetch/$s_!rxYi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d338ca3-165e-4a06-9db7-8672efb76059_1531x1169.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: Little&#8217;s Law for long finite window</figcaption></figure></div><p>Over sufficiently long windows, the time and item averages measured over that <em>finite window </em>are dominated by the measurements on complete items rather than partials. The partials become &#8220;end-effects&#8221; that become less significant as we take measurements over larger and larger windows. </p><p>The identity L=&#955;<em>W</em> holds in the long run, because <em>as the end effects vanish</em>, cumulative arrival rate and average residence time converge to the (true) arrival rate and average sojourn time respectively. This is the intuition behind the formal proof of what is now considered the definitive statement of Little&#8217;s Law.  </p><h2>Short Windows vs Long Sample Paths</h2><p>Think about how data is gathered and used operationally.In software, flow metrics are almost always reported over windows - a week, two weeks, a sprint etc.  that are determined by the business process being used Scrum, Kanban, SAFe etc, and not usually based on how long things actually take to move through the process.</p><p>But many meaningful &#8220;items&#8221;: features, defects, and epics often take longer than these reporting windows. That means  the data in any reporting window includes partial work: some items started earlier, some are half done, some finished in a window, some won&#8217;t finish for weeks. </p><p>As a result, trying to apply the throughput formula or even L = &#955; &#215; W to an operational window directly, produces inconsistent numbers. Arrival rates don&#8217;t match completions. Work appears and disappears midstream. The law &#8220;fails&#8221; not because the math is wrong, but because the quantities being plugged in are not measured over a consistent observation window. This is the real reason why Little&#8217;s Law &#8220;doesn&#8217;t hold&#8221; when you typically measure it in operational flow data.</p><p>This is also why the finite-window version, L = &#923; &#215; w, is critical. It relates measurements that are <em>actually observable</em> in a consistent interval. Even when the observations include partials or the system is shifting between operating modes, the relationship holds. There are many operational uses for this, but we wont go into that here - that will be a topic for future posts. </p><h3>Sample Paths</h3><p>Our example above suggests that if we observe it over a &#8220;long enough observation window&#8221; we will get an alternative, and perhaps more meaningful set of numbers for measuring flow.  </p><p>But how we  decide what is long enough? </p><p>This is where a powerful analytical technique called <em>sample path analysis</em> comes in. It is the foundation for the mathematical proof for  <em>L=</em>&#955;W and the concept can also be used quite directly in an operational setting. </p><p> The idea is that instead of measuring flow metrics over short, rolling observation windows,  we observe the system from a <em>fixed</em> starting point in time and observe it continuously over a long enough window (weeks, months, years etc - as long as necessary).  In the context of Little&#8217;s Law the sample path we observes is items in the system at any point in time - the instantaneous WIP.  The observation window is the length of the sample path.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fj9t!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fj9t!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fj9t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png" width="1456" height="868" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:868,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:102622,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fj9t!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!fj9t!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49442cd3-2df9-4e2f-b889-791e8fdbe7b4_1979x1180.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: Sample path and area under the sample path</figcaption></figure></div><p>For a sample path a finite length T ,  if <em>N(t) </em>is the number of items in the system at time <em>t, </em>the <em>time average</em> of the number of items in the system over the <em>interval</em> <em>T </em>is given by the ratio of the <em>area under the sample path </em>to <em>T. </em></p><p></p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;L(T) = \\frac{1}{T}\\int_0^T N(t) dt&quot;,&quot;id&quot;:&quot;XZVCWFOBML&quot;}" data-component-name="LatexBlockToDOM"></div><p> </p><p>Now the question becomes do the estimation errors in the finite observation windows always vanish and become negligible if we observe a sufficiently long sample path. </p><p>The answer is, not always:  The classic proof of Little&#8217;s Law by Stidham shows that they vanish<em> if L(T) converges to a finite limit</em> over a sufficiently long <em>T</em>. </p><p>This leads us to the critical ideas of <em>convergence </em>and <em>divergence. </em></p><h2>Convergence and Divergence</h2><p>If we observe a sufficiently long sample path we only have two possibilities to consider. </p><p>First possibility: the system settles down, after a finite window of time. Practically, this means that if we measure the quantities the finite version we&#8217;ll find that the quantities <em>L(T), </em>&#923;(T) and w(T), in the finite version they will  converge to finite limits <em>L, </em>&#923;, w and these limits will correspond to the <em>L, </em> &#955; , and <em>W </em>of the steady state version of Little&#8217;s Law. </p><p>This, in fact, is the key result that was proven by Dr. Shaler Stidham in 1972 and is now considered the definitive statement of Little&#8217;s Law. </p><p>That is, if &#923; &#8594; &#955; and w &#8594; W as T &#8594; &#8734; then L = &#955; &#215; W . </p><p>But what if these limits dont exist?  Then work continues to accumulate  indefinitely, arrivals outpace completions, residence times stretch out indefinitely&#8212;we get <em>divergence</em>. </p><p>This is the more useful distinction: not whether the &#8220;system is stable,&#8221; but whether or not long run averages on a sufficiently sample path <em>converge </em>to finite limiting values. </p><p>In practical terms Little&#8217;s Law says:</p><ul><li><p>If the cumulative arrival rate &#923;(T) converges to a finite limit as T grows,  </p></li><li><p>and the average residence time w(T) converges to a finite limit as T grows,  </p></li><li><p>then the limit L = &#955; &#215; W exists and holds.</p></li></ul><p>If not, the system is <em>divergent</em>, and  divergence tells us something real: the system is structurally unbalanced. Items are backing up, time in system is growing, arrival rate is overwhelming capacity.  </p><p>This shift&#8212;from seeking &#8220;steady state&#8221; to detecting convergence or divergence&#8212;is critical in domains like software, where systems are rarely in equilibrium for long.</p><p>All of these parameters can be precisely measured on operational data. </p><p>In fact, the <em>minimal length of the sample path over which a system achieves convergence </em>is critical characteristic of its input-output behavior. One that Little&#8217;s Law shows us how to calculate quite precisely. </p><p>Thinking about convergence and divergence gives us a much richer vocabulary for reasoning about the relationship between micro behaviors of the system over short operational windows and macro behaviors of the system over long sample paths. </p><h2>Convergence vs Stability</h2><p>It is important to understand that convergence, as defined above, is more general than the concept of &#8220;stability&#8221; often discussed in the context of flow metrics.</p><p>Little&#8217;s Law states that the long&#8209;run relationship L = &#955; &#215; W holds as long as the limits L, &#955;, and W <em>exist</em>. It does not require these limits to remain constant over time. In convergent systems, these values can and do change, and when they do, they are still constrained to obey Little&#8217;s Law&#8212;just as in the finite&#8209;window form. </p><p>We will reserve the stronger condition of <em>stability </em>to those systems where the finite limits of the long run averages themselves stay constant over time. Many repetitive and assembly line processes satisfy this condition, but software development processes often don&#8217;t, and they don&#8217;t need to for Little&#8217;s Law to apply. </p><p>In this sense, Little&#8217;s Law applies for equally to linear and non-linear system, complex adaptive systems, deterministic and stochastic systems, and even certain types of chaotic system. </p><p>Such systems may be convergent, and Little&#8217;s Law may apply with different parameters over different periods of time. <em>but the system is not stable or predictable in the sense that we normally associate with stability. </em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jpIG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jpIG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 424w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 848w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 1272w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jpIG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png" width="1456" height="936" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:936,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243010,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jpIG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 424w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 848w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 1272w, https://substackcdn.com/image/fetch/$s_!jpIG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9fdaa09d-4b76-4290-bffc-8d15b27f520d_2379x1529.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4.: Convergence and Divergence</figcaption></figure></div><p>Fig 4 shows some of the possibilities here (there are many more). Certain processes like CI/CD pipeline can be strictly stable like in the first example. The second example of meta-stability, where the system remains convergent, but the limits in Little&#8217;s Law shift over time is characteristic of most processes that involve humans and machines. Truly chaotic processes are rare in the SDLC, but not impossible. Every one of these behaviors is <em>convergent. </em></p><p>And <em>all </em>these process can tip over into <em>divergence </em>if the system is structurally unbalanced (they can also usually be brought back into convergence). The power of the law is that <em>it does not care about what kind of system it is internally. </em>And <em>every one </em>of the different types of systems described above can exhibit <em>both convergent and divergent behaviors </em>depending upon the structural balance that the <em>existence</em> of the limits implies. </p><p>But we can use still reason about these systems with Little&#8217;s Law, both over <em>any </em>finite window of time, or over long sample paths, using the appropriate definition of the averages. </p><p>So far from being a tool that lets us look at simple, linear or deterministic systems, Little&#8217;s Law in its more general form is one of the most powerful general purpose analysis tools available to us for analyzing input-output system regardless of their internal structure or behavior. </p><p>This type of reliable &#8220;black-box&#8221; analysis of systems can provide very valuable first pass insights into how a system behaves, without having to know any of the internal details about the system or having to know what <em>kind </em>of system we are dealing with. </p><h2>Equilibrium and Coherence</h2><p>There is another, very useful way to think of the difference between observing an input-output system over short fixed observation windows vs observing it over a long, continuous sample path. </p><p>We can think of the fixed finite version as a point in time snapshot of an typical <em>operator&#8217;s view </em>of the system.  In general, for real-time reasoning,  it is reasonable to assume that we make decisions not over complete histories, but only the parts we can observe. We will need to estimate parts of the system history that it cannot observe.  The fixed window version captures this very well. </p><p>The steady state version reflects what the <em>items </em>(or customers) themselves experience from the system over the long run - but their &#8220;experience windows&#8221; may not always align with the operators observation window.  </p><p>&#8220;Equilibrium&#8221; can then be considered as <em>a state where the operators view aligns with the customer&#8217;s view</em>. It is a state of epistemic coherence across different observers in the system, where they each make their own measurements and end up agreeing on their values (within some error tolerance).</p><p>Both perspectives  are hugely important, but the advantage of the finite version is that we can reason about the operators view locally using the finite version of Little&#8217;s Law from moment to moment with only partial information, and also get a sense of how far away from &#8220;equilibrium&#8221; the system is over a given finite observation window. The finite version is usually much more volatile.  The equilibrium view provides a slower changing perspective of the macro behavior of the system. </p><p>Operationally, having both views in perspective is a big deal in software development, because we are typically operating far from equilibrium. Most operational tools that measure flow metrics don&#8217;t make this distinction, and there is a lot than can be improved on this front. </p><p>There is much more ground to cover on operationalizing all this. The references at the end of this post are a good starting point, and we will have more to say about this in future posts. </p><p>But let&#8217;s continue our exploration of Little&#8217;s Law by examining an even more general version - this is an economic interpretation of the law, and it is considered the most general form of Little&#8217;s Law. </p><h2>&#119867; = &#955; &#215; &#119866;:  the economic version of Little&#8217;s Law</h2><p>What is truly remarkable about Little&#8217;s Law and something that is rarely exploited is that the same conservation principles holds even when we&#8217;re not tracking time accumulated by items, but some other time varying quantity: costs, risks, revenues, profits etc that can be tied back to the items. </p><p>In this framing, suppose each item contributes some &#8220;value&#8221;  to the system expressed as some at a time-varying function: call it <em>f&#8342;(t)</em>, for item k.  So instead of a set of items, we have a set of time varying functions of items. </p><p>Lets look at a single instant of time. Summing all contributions across the functions gives H(t), the total <em>value accumulation rate</em> in the system at time <em>t</em>. Similarly looking across all the items and computing  the cumulative value of each function over time gives us G_k the total value contribution from item <em>k. </em></p><p></p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;H(t) = \\sum_{k=1}^{\\infty} f_k(t)\n\n\\text{ and } \nG_k = \\int_0^{\\infty} f_k(t)\\,dt&quot;,&quot;id&quot;:&quot;EBGDQHJUNN&quot;}" data-component-name="LatexBlockToDOM"></div><p> </p><p>Similar to <em>L = </em>&#955;W can define:</p><ul><li><p><em>H</em> = long-run average value of the accumulation rate  <em>H(t)</em></p></li><li><p><em>G</em> = average value contribution per item &#119866; across functions  = &#8721;&#119866;&#8342; &#8260;&#119899;</p></li><li><p>&#955; = arrival rate of items</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!meJ2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!meJ2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 424w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 848w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 1272w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!meJ2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png" width="1258" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1258,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:299577,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.polaris-flow-dispatch.com/i/169312170?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!meJ2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 424w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 848w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 1272w, https://substackcdn.com/image/fetch/$s_!meJ2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d8fe177-bc40-477b-853a-6fb11bd23492_1258x1092.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: The setup for the. general version of Little&#8217;s Law</figcaption></figure></div><p>Then using the same approach of measuring these parameters along a sufficiently long sample path we can derive both finite and steady state version of Little&#8217;s Law the leads to the most general form of Little&#8217;s Law that states that if the long run values &#955; and <em>G </em>converge to finite limits<em>, </em>so does<em> H </em>and then</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;H = \\lambda G&quot;,&quot;id&quot;:&quot;CWSDOEIRAF&quot;}" data-component-name="LatexBlockToDOM"></div><p></p><p>This general form opens up a much wider set of modeling possibilities. We can use it to model the time varying interaction of complex functions of items - for example how risk accumulates, how customer satisfaction scores rise, or how delay-related cost builds over time&#8212;all without relying on any specific process model for the underlying behavior: just observed input output behavior. </p><p>In short this is a mathematically rigorous, and operationally tractable way of modeling the physics of the &#8220;flow of value&#8221; and not just the flow of &#8220;work&#8221;. </p><p>When modeling the flow of value in <a href="https://www.polaris-flow-dispatch.com/p/value-networks-and-value-streams">value networks</a>, this formalism and Little&#8217;s Law in this general form will prove to be a valuable analytical tool. </p><p>But there are many, many more useful ways in which this general form of Little&#8217;s Law can be exploited and we need much more machinery in place to make this easier to use and apply in practice settings. </p><p>We discuss this in the section on further reading at the end of the document. </p><h2>Why Little&#8217;s Law matters</h2><p>When applied correctly, Little&#8217;s Law gives us something rare: a strict constraint across quantities we can observe. If two change, the third must follow. It doesn&#8217;t tell us what will happen. It tells us what can&#8217;t happen. It works as a check on our measurements, as a signal for divergence, and as a very sensitive set of levers by which we can actively steer systems that operate far from equilibrium. </p><p>But for that to work, we need to stop treating Little&#8217;s Law as a formula that only applies to stable factories, and realize that treating it as a conservation law allows is to use it meaningfully for general input-output system including nonlinear and complex adaptive systems that are never in equilibrium for long.</p><p>For software teams, this means:</p><ul><li><p>Use the finite-window form (L = &#923; &#215; w) for real-time analysis across normal operational windows.  </p></li><li><p>Use the classical form (L = &#955; &#215; W) once you&#8217;ve validated convergence  using sample path analysis - report these as the system level flow metrics and use these to target system improvements. </p></li><li><p>Think in terms of identifying sources of divergence and feedback mechanisms to move divergent systems into convergence. </p></li><li><p>Use time-value generalizations (H = &#955; &#215; G) to measure and manage accumulations of  costs, risks, benefits and rewards that can be modeled as time-dependent functions of items. </p></li></ul><p>There is a whole other parallel set of &#8220;flow systems&#8221; with mathematically precise semantics that we can build on top of our familiar flow system built on the flow of discrete work items. </p><p>Little&#8217;s Law is the foundation for building such models. </p><h2>Further Reading</h2><p>In this post we made a lot of general claims without too much by way of detailed explanations or proofs to back them up. What we have described above is a summary of nearly 50 years of research and development in both academia and industry in the field of operations research. </p><p>Much of this research, its history and its significance seem to be unrecognized in the software industry and this post was intended to provide a broad strokes introduction. </p><p>While Little&#8217;s Law started out as a simple empirical observation about waiting lines in operational settings, it has led to deep and lasting mathematical results that revealed that it is a much more fundamental law than the simple throughput formula we are all familiar with. </p><p>Of course, all this needs more than hand-waving to make real in an operational setting. If you are interested in understanding the underlying theories and arguments in more detail and how to start applying these ideas in practice here are a few follow up resources. </p><ol><li><p>The best reference source for understanding the theory and  history of the law is the survey paper, <a href="https://people.cs.umass.edu/~emery/classes/cmpsci691st/readings/OS/Littles-Law-50-Years-Later.pdf">&#8220;Little&#8217;s Law on its 50th anniversary,&#8221;</a> that Dr. Little wrote on the 50th anniversary of his original proof of the law. </p></li><li><p>For a much more detailed version of the current post, and one that builds upon this survey paper and introduces the ideas here in a form that is more meaningful to folks in the software development community - see my post &#8220;<a href="https://docs.pcalc.org/pandoc/littles_law_history.html">A Deep Dive into Little&#8217;s Law</a>&#8221;. This has a detailed list of references that I feel are directly relevant for applications in our domain. </p></li><li><p><a href="https://www.amazon.com/Sample-Path-Analysis-International-Operations-Management/dp/0792382102">&#8220;Sample-path analysis of queueing systems&#8221;</a> by El-Taha and Stidham is the definitive reference to the mathematics underlying all these ideas and much more. This is mathematically dense read and is not meant for practitioners. Its useful if you want to learn and understand <em>why </em>the results we will leverage in applications are true. </p></li><li><p>But if you are less concerned with theory and want to start applying these ideas directly, all this material is the foundation of <em><a href="https://docs.pcalc.org/">The Presence Calculus</a></em>, a reframing of the underlying techniques used in proving Little&#8217;s Law in all its forms, into a modeling and measurement substrate that is easier to apply and use in practice and also for us to build operational tooling around. I expect to be writing much more extensively on this topic in coming weeks, but a fairly comprehensive overview of the presence calculus can be found in our introductory document <a href="https://docs.pcalc.org/pandoc/intro_to_presence_calculus.html">The Presence Calculus: A Gentle Introduction</a>. </p></li><li><p><a href="https://docs.pcalc.org/">The Presence Calculus Project</a> website has all the material that we will be publishing on this topic - including papers on the formal theory behind the calculus as well as the practical application use cases.</p></li><li><p><a href="https://github.com/krishnaku/pypcalc">The Presence Calculus Toolkit</a> is an open source library that we are building to operationalize the concepts in the presence calculus. It is not yet ready for production use, but we plan on using this as a reference implementation for the measurement and modeling primitives of the presence calculus. </p></li></ol><div><hr></div><p>Post script: For those of your familiar with the Little&#8217;s Law through Wikipedia and or queueing theory texts, you might be surprised that we have introduced Little&#8217;s Law without referring to queueing theory, stochastic processes, or probabilistic assumptions like ergodicity and stationarity, that are typically understood as being required for Little&#8217;s Law to hold, and as originally proven by Dr. Little.  </p><p>In fact, Dr. Stidham&#8217;s proof of L = &#955; &#215; W showed that all these were superfluous conditions and that the law was a completely deterministic result that could be applied to both deterministic and stochastic systems without knowing what kind of system it was. </p><p>We cover these proofs and their history in more detail in our <a href="https://docs.pcalc.org/pandoc/littles_law_history.html">deep dive</a> into the history and proofs of Little&#8217;s Law. </p><p>Dr. Stidham&#8217;s sample path analysis technique, which yields a proof of Little&#8217;s Law as only one possible application, is a much more fundamental and powerful tool and we operationalize in the presence calculus. </p><p></p><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Modeling the Value Exchange]]></title><description><![CDATA[The building block for the flow of value]]></description><link>https://www.polaris-flow-dispatch.com/p/modeling-the-value-exchange</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/modeling-the-value-exchange</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sun, 15 Dec 2024 16:01:39 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4a2bdef1-f61d-4e78-946d-7e2bb3650be7_2043x1683.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dGuF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dGuF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 424w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 848w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 1272w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dGuF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png" width="1012" height="862" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:862,&quot;width&quot;:1012,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1770077,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dGuF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 424w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 848w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 1272w, https://substackcdn.com/image/fetch/$s_!dGuF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0ec8920-6e64-4e3c-9d9d-13a8123e7cef_1012x862.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>In our last episode, we introduced the notion of <a href="https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration?r=fjllf">value exchanges and collaboration protocols</a>. We used the example of a neighborhood coffee shop to show how we could define <em>value streams</em> as <em>collections of value exchanges</em> in a <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">value network</a>. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>This definition of value streams has the advantage of&nbsp;<em>identifying</em>&nbsp;value streams by the&nbsp;<em>value proposition&nbsp;</em>and the characteristics that define how providers and receivers collaborate and assess whether they receive value from a collaboration rather than operational details of how either one fulfills the value proposition.&nbsp;</p><p>The value exchange represents the receiver and provider's mutual value assessment process. Each exchange that provides reciprocal benefits enhances the flow of value within the value stream. </p><p><a href="https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration?r=fjllf">The last episode</a> focused mainly on the collaboration protocol and discussed how the two parties assessed value only in high-level terms. Further, the coffee shop was a relatively simple example of a value exchange:  providing a repeatable service experience in return for money. </p><p>In this post, we will discuss a general structure for the value exchange and look at some more complex examples of value exchanges that we can model using that definition. </p><h2>Value Exchange Models</h2><p>This episode is part of a series on Value Networks.&nbsp;<a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration/dp/0929652525">Verna Allee</a>&nbsp;developed this modeling technique in the mid-seventies through the early 2000s. It provides a robust formal foundation for reasoning about value in a fundamentally novel way.&nbsp;</p><p>The&nbsp;<a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Value Network</a>&nbsp;is a straightforward concept built from three simple primitives: roles, transactions, and deliverables. Roles represent (groups of) people and their roles in value-creating <em>collaborations</em>. Transactions represent interactions between roles, where one delivers something to the other.&nbsp;</p><p>Our last episode has a <a href="https://www.polaris-flow-dispatch.com/i/152243699/an-example">detailed example of a value network</a> and how collaborations are defined in this network. </p><p>The key idea behind value networks is that instead of modeling abstract processes,  we model how interactions between people create value, and this concept scales from individual interactions to networked ecosystems of people and resources. </p><p>A <em>collaboration </em>is a coordinated effort between roles in a value network to achieve shared or complementary goals or desired outcomes. The structure describing the interactions between the roles in a collaboration is called a <em>protocol. </em></p><p>In our last episode, we showed a few examples of collaboration protocols in a value network for the coffee shop, and how they gave rise to distinct value streams in the network. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vDTD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vDTD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 424w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 848w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 1272w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vDTD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png" width="1456" height="490" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:490,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:285462,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vDTD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 424w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 848w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 1272w, https://substackcdn.com/image/fetch/$s_!vDTD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbcc71f60-8e65-4d7e-83e9-253c1d783d21_2862x963.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: Collaboration Protocols </figcaption></figure></div><p>With this as a preamble, let's formalize the definition of &#8220;value exchange.&#8221;</p><p>In a value exchange model, the deliverables are the tangible or intangible <em>outputs</em> exchanged, while the value model captures the value <em>outcomes</em> expected and derived by each party. </p><p>A value exchange model describes the value semantics of a collaboration.  It provides a framework for assigning a multi-dimensional score to an <em>instance</em> of collaboration based on an independent assessment of the deliverables exchanged by two roles: the provider and receiver.</p><p>In a value exchange, the provider presents a value proposition to the receiver. The parties then evaluate the deliverables exchanged using a value model as a rubric. Both parties assess the collaboration using desired and undesired attributes from the value proposition, describing the value generated from the exchange. </p><p>The assessments may be subjective or objective and may or may not be directly observable or measurable<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>.  The value model is an abstract representation of a <em>decision process</em> that measures value in a value exchange. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!envl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!envl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 424w, https://substackcdn.com/image/fetch/$s_!envl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 848w, https://substackcdn.com/image/fetch/$s_!envl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 1272w, https://substackcdn.com/image/fetch/$s_!envl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!envl!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png" width="1200" height="988.1868131868132" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:1199,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:275645,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!envl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 424w, https://substackcdn.com/image/fetch/$s_!envl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 848w, https://substackcdn.com/image/fetch/$s_!envl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 1272w, https://substackcdn.com/image/fetch/$s_!envl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9adf9d5-d0e6-47d4-9fda-c08385ac4711_2043x1683.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: A value exchange model</figcaption></figure></div><p>The dimensions, structure, units of measurement, and assessment criteria will depend on the context.  However,  we can identify the model's components. </p><ol><li><p>A collaboration with a set of protocols and two identified roles, a provider and a receiver. </p></li><li><p>The value proposition<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> states the desirable and undesirable outcomes regarding the attributes of the tangible and intangible deliverables exchanged in the collaboration. </p></li><li><p><em>Value-at-Exchange (VE): </em>The shared value assessment between the provider and receiver catalyzes the exchange. It may be expressed as a monetary payment, barter, or as other intangibles, but it describes the exchange's underlying drivers and value expectations.  The critical thing to note about value-at-exchange compared to the other two components is that it records the value perceived by both parties in engaging in the exchange <em>at the time of the exchange</em>. </p></li><li><p><em>Value-to-Receiver (VR)</em>: This is the totality of benefit or utility to the receiver from the exchange. It could be functional (e.g., a product's features meeting a need),  emotional (e.g., satisfaction or trust), symbolic (e.g., status or affiliation), or some other combination of all the above. These are evaluated using the assessment criteria of the deliverables from the provider as assessed by the receiver. Value-at-exchanges includes components of the value-to-receiver.  </p></li><li><p><em>Value-to-Provider (VP): </em>This represents the totality of benefits <em>the provider receives</em> from the exchange. It could include revenue, profit, reputation, customer retention, or any other measurable gain that makes the exchange worthwhile for the provider. The value may also include long-term strategic outcomes like increased market share or customer lifetime value for the provider. These are evaluated using the assessment criteria of the deliverables from the receiver as assessed by the provider. Value-at-exchanges includes components of the value-to-receiver.</p></li></ol><p><em>VE</em> may also include assessments of the attributes of the <em>collaboration experience</em> that are valuable to either role, such as speed and efficiency in completing the collaboration. While value-at-exchange is typically known at the time of exchange, some components of  value-to-receiver and value-to-provider may not be fully known until after the exchange. </p><p>Sometimes, the value received is realized over more extended time frames. In many other cases, the value obtained may not be attributable to a single value exchange but the cumulative result of many related and independent value exchanges between the provider, the receiver, and other parties. </p><p>A party may even enter into an exchange when they understand that they may not receive value directly from it, i.e., no <em>value-at-exchange</em>, provided they believe they will eventually receive value as a cumulative result of future value exchanges. </p><p>In the <a href="https://www.polaris-flow-dispatch.com/i/152243699/an-example">Zeptos example</a>, there is no real difference between value-at-exchange and the other two components. Here, both parties can evaluate an entire collaboration at or close to the exchange time. All value exchanges happen instantaneously. </p><p>This is not generally true, so in those cases, we record the value assessment at the time of exchange using value-at-exchange and separately specify the other two components. </p><p>This is necessary to model complex scenarios, such as deferred value creation, value created through network effects, and interactions with other value exchanges. </p><p>As we will elaborate in later posts, the <em>outputs</em> V<em>R</em>, V<em>E, </em>and V<em>P </em>from the value exchange model are best viewed as <em>inputs</em> into a larger causal model for the network's value flow. </p><p>But first, let&#8217;s look at another example to illustrate a more complex value exchange. </p><h3>An automobile</h3><p>Durable goods or high-ticket items like automobiles surface more interesting questions about modeling value exchanges. </p><p>While the <em>value-at-exchange</em> is often shaped by straightforward factors like price, utility, and brand reputation, the value-to-receiver and value-to-provider incorporate longer-term considerations such as reliability, maintenance costs, and residual value. The protocol between the buyer and dealer to successfully buy an automobile is often complex, and this buying experience can significantly impact the buyer's perception of value. </p><p>Further, whether a transaction is a purchase or a lease significantly impacts the value exchange<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. In a purchase, the buyer takes ownership of the vehicle and, in addition to its base utility, focuses on long-term considerations like reliability and residual value. In a lease, short-term affordability, flexibility, and terms take precedence. </p><p>For the provider, leasing offers recurring revenue and retention opportunities, whereas purchases deliver higher upfront profit. Since the provider retains ownership of the vehicle, leasing carries risks, such as uncertainty about depreciation and potential losses if the vehicle&#8217;s residual value falls short of projections. </p><p>Notably, the cumulative value to the customer or provider often remains unclear until a <em>subsequent</em> vehicle transaction, such as resale, trade-in, or lease return, reveals how well the car met value expectations over time. These are also subject to external factors like the state of the economy, interest rates, etc. Nevertheless, they may impact the sustainability of the value stream between the buyer and the dealer. </p><p>Therefore, the flow of value between dealer and buyer is multifaceted and evolves as immediate factors like price and contract terms interact with longer-term considerations such as reliability, residual value, and the outcomes of subsequent exchanges. Transactions such as selling, trading in, or returning a leased vehicle or service costs over time clarify the true value both parties realize. </p><p>For buyers, they highlight how well the vehicle met expectations, while for dealers, they involve managing residual value risks, reselling opportunities, and fostering customer loyalty for future business. </p><p>It is impossible to truly speak of this value network's &#8220;flow of value&#8221; without modeling these particulars in an explicit value model. </p><h2>More Examples</h2><p>While the examples above may have given a flavor of what is involved in creating a meaningful model for the flow of value in a value network, they are just the tip of the iceberg regarding the subtleties involved. </p><p>As an exercise, the interested reader can consider how they might model other value networks and value exchanges within them, such as</p><ul><li><p>Extending the Give Review transaction in the <a href="https://www.polaris-flow-dispatch.com/i/152243699/an-example">Zeptos example</a> to include reviews given on a third-party site. </p></li><li><p>Two-sided marketplaces, such as food delivery or rideshare platforms, involve an intermediary in the value exchanges between providers and receivers. </p></li><li><p>Financial transactions, including buying, selling, or shorting stocks in the stock market. </p></li><li><p>A social media platform as a value network.</p></li><li><p>The relationships between a company and its employees as a value network. </p></li></ul><p>Modeling the flow of value in these types of networks can provide fascinating insights into reasoning about &#8220;value.&#8221; We will continue to post occasional examples of such exchanges on this blog. </p><h2>From Goods to Services</h2><p>Both value exchange examples discussed so far involve tangible goods exchanged for money, a model that dominated economic discourse throughout the 20th century. In the 21st century, however, intangibles like software IP, information services, and technology-powered business networks have become the primary drivers of value creation.</p><p>Value exchanges and value models in these networks are far more nuanced, involving intangible exchanges, value creation through network effects, and delayed or deferred value realization for network participants. Most businesses today are service-oriented, with tangible goods, if any, subordinated to the services they provide to customers.</p><p>Services leverage the knowledge and skills of participants directly within the network, often augmenting and enhancing tangible goods that package other forms of expertise. Software products exemplify this shift, representing some of the most complex and dynamic forms of value creation that blend goods-dominant and service-dominant<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a> dynamics. These changes fundamentally transform how value is created and exchanged beyond the straightforward exchanges of tangible goods for money.</p><p>In a goods-dominant economy, value creation could be compartmentalized: product development, production, distribution, and marketing were distinct &#8220;activities,&#8221; with each &#8220;adding value&#8221; sequentially to a tangible deliverable until it reached the customer. The &#8220;added value&#8221; is reflected in the <em>value-in-exchange</em>,<em> </em>typically in the price.</p><p>In our next post, we&#8217;ll argue that much of the current thinking around Lean value streams is deeply rooted in this goods-dominant model. While effective for its time, this framework fails to address the complexities of value creation in a service-dominant economy. We propose that value networks and value exchanges are better suited for this purpose and specialize naturally for goods-dominant value streams. </p><p>Lean value stream concepts are still valuable for analyzing and improving the &#8220;flow of deliverables&#8221; within a value network, where much of the true focus of value stream management remains. </p><p>Still, the broader &#8220;flow of value&#8221; often remains obscured at that level of detail in service-dominant value networks, and it is worthwhile to examine the definition of value streams more critically in this light.  </p><p>The key flaw in current value stream management practices is that they conflate the &#8220;flow of value&#8221; with the &#8220;flow of deliverables.&#8221; While this conflation works somewhat in a goods-dominant domain, it certainly does not work in general service-dominant domains.  </p><p>So, in these domains, we need to start by clearly understanding the &#8220;flow of value&#8221; in the value network before focusing on improving the &#8220;flow of deliverables&#8221; within it. As we have seen in the Zeptos and automotive retail examples, this separation of concerns is appropriate even in nominally goods-dominant domains like automotive retail once you factor in all the services involved in value creation.  </p><p>In the next episode, we will describe the differences between services-dominant and goods-dominant value streams and discuss what this means when identifying, modeling, and  managing them. </p><div><hr></div><p>Acknowledgments: <a href="https://www.linkedin.com/in/marksmalley/">Mark Smalley</a> introduced me to the concepts of service-dominant logic, for which I will be forever grateful. <a href="https://www.linkedin.com/in/tomgilb/">Tom Gilb</a> was kind enough to review an early draft of this post and gave me insightful feedback that I am still digesting. <a href="https://www.linkedin.com/in/marccharron/">Marc Charron</a> reviewed this post while it was still part of the previous post and encouraged me to break it up into two posts :) </p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>The question marks in the diagram indicate that some assessment criteria may not be directly observable or measurable at all times. The assessment criteria are, in general, signals, and the measurement strategy for the signals is not a core part of the value exchange model.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>The value proposition is usually defined as the provider expressing the receiver's needs. Of course, refining the value proposition to match the actual needs is the key problem the provider needs to solve. This means identifying the deliverable attributes that the receiver cares about. This is at the heart of the value modeling exercise and is  context-specific. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>In general, whether the exchange involves transferring ownership, possession, or availability of a deliverable significantly impacts the flow of value in the network. Pavel Hruby&#8217;s <a href="https://publications.aaahq.org/jis/article-abstract/30/2/5/1087/Business-Process-and-Value-Delivery-Modeling-Using?redirectedFrom=fulltext&amp;utm_source=chatgpt.com">seminal contributions</a> have significantly influenced my thoughts on value exchanges. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>The concepts of Service-Dominant Logic were developed by Stephen Vargo and Robert Lusch and are summarized well in <a href="https://www.researchgate.net/publication/313444363_Service-dominant_logic_What_it_is_What_it_is_not_What_it_might_be_The_service_dominant_logic_of_marketing_Dialog_debate_and_directions">this clear and accessible paper</a>. Many thanks to <a href="https://www.linkedin.com/in/marksmalley/">Mark Smalley</a> for introducing me to these concepts. </p><p></p></div></div>]]></content:encoded></item><item><title><![CDATA[Value Exchanges and Collaboration Protocols]]></title><description><![CDATA[The building blocks of value streams]]></description><link>https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/value-exchanges-and-collaboration</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sun, 08 Dec 2024 15:00:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xnui!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xnui!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xnui!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!xnui!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!xnui!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!xnui!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xnui!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:556654,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xnui!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!xnui!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!xnui!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!xnui!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73247e20-eed7-420d-a5be-bacd07c3188f_1024x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Zeptos is your neighborhood coffee haven, serving top-notch single-origin coffee, locally sourced pastries, and a cozy vibe. It&#8217;s the go-to spot for walk-ins, dine-ins, and work-ins. Complete with blazing-fast Wi-Fi and a welcoming workspace. Sip, savor, or settle in&#8212;Zeptos has you covered.</em></p><p>In our last episode, <a href="https://www.polaris-flow-dispatch.com/p/value-networks-and-value-streams?r=fjllf">Value Streams and Value Networks</a>, we introduced the idea that a value stream can be viewed as an emergent flow of value within a value network, where the unit of "flow" is an abstraction called a "value exchange." </p><p>That discussion was rather abstract and theoretical. This episode will bring matters back to earth with a straightforward, worked-out example to illustrate key concepts. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>Value Networks</h2><p>This episode is part of a series on Value Networks, <a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration/dp/0929652525">a modeling technique</a> developed by Verna Allee in the mid-nineties that provides a robust formal foundation for reasoning about value in a fundamentally novel way. </p><p>The <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Value Network</a> is a straightforward concept built from three simple primitives: roles, transactions, and deliverables. Roles represent (groups of) people and the parts they play in value-creating collaborations. Transactions represent interactions between two roles, where one delivers something to the other. </p><p>The deliverable may be <em>tangible</em> or <em>intangible</em>.</p><p>For our purposes here, this simple definition suffices to understand the material in this episode. </p><p> <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Previous episodes</a>&nbsp;have explored this model and its applications to modeling complex systems for value delivery. </p><h2>An Example</h2><p>Let&#8217;s use a neighborhood coffee shop, Zeptos,  as a running example of a <a href="https://www.polaris-flow-dispatch.com/i/150623624/the-business-value-network">business value network</a>.  Figure 1 shows the network.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZZN7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZZN7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 424w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 848w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZZN7!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png" width="1200" height="670.8791208791209" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:814,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:288464,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZZN7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 424w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 848w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZN7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aef7fb7-01da-4359-bbf1-55f0ddb643c2_1882x1052.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: The Zeptos Value Network</figcaption></figure></div><p></p><p>We model only two roles: Zeptos represents the people who own and operate it, and Visitors represent those who use its services.  In addition to providing coffee and pastries, Zeptos also provides a free workspace for visitors, who are not obliged (but encouraged!) to dine in when they visit. </p><p>Figure 1 shows the transactions in the value network, which are detailed in Figure 2. A transaction's deliverables may be <em>tangible</em> or <em>intangible</em>. </p><p>The tangible ones (shown in blue) are easy to understand. Still, the intangible ones, such as the ambiance Zeptos creates for its customers and the vibe the customers bring to the store, are equally important and, in some sense, more important to fulfilling the Zeptos value proposition. </p><p>Similarly, the deliverables in <em>information exchanges</em> between visitors and customers, such as the signage advertising the benefits or the process for taking orders, may be tangible or intangible but are crucial components of the value network.  </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!i4yt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!i4yt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 424w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 848w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!i4yt!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png" width="1200" height="671.7032967032967" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:815,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:279417,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!i4yt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 424w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 848w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!i4yt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aa7fe2c-ca75-4862-b4e2-96546476c224_1912x1070.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: The Transactions in the Zeptos network</figcaption></figure></div><p>The value network model highlights that &#8220;value,&#8221; even in this simple case, is a complex, multi-faceted affair involving complex exchanges of goods and services.</p><p> We will break down the process of analyzing value into simpler logical building blocks that we can use to reason about more complex scenarios consistently. </p><h2>Collaborations and  protocols </h2><p>A <em>collaboration </em>is a coordinated effort between roles in a value network to achieve shared or complementary goals or desired outcomes. The structure describing the interactions between the roles in a collaboration is called a <em>protocol. </em></p><p>Formally,  </p><blockquote><p>A protocol is a <em>sequence</em> of transactions between roles in a value network, defining the transfer or exchange of deliverables necessary to achieve the desired outcome of the collaboration.</p><p>The deliverables exchanged may be tangible goods or money, or intangibles like information or experiences</p><p>Structurally a protocol is a sequence of directed edges<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a><em>&nbsp;</em>in the graph representing the network's roles and transactions, representing a <em>temporal order</em> in which the transactions occur in the collaboration.</p><p>It is typical for a collaboration to contain multiple protocols representing alternate sequences by which the collaboration may achieve its outcomes. </p></blockquote><p>Here are some collaboration protocols in our coffee shop value network, each representing a collaboration between Visitors and Zeptos. </p><p><code>{Visit Shop} </code></p><p><code>{Visit Shop, Order Coffee, Serve Coffee, Pay Money}</code></p><p><code>{Workspace Available, Visit Shop, Provide WorkSpace, Provide Ambience} </code></p><p>We are particularly interested in collaborations that result in a <em>reciprocal exchange of deliverables </em>between key roles<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>. </p><blockquote><p>We define a <em>value</em> <em>exchange</em> as a protcol that results in at least one <em>reciprocal transfer of deliverables</em> between two roles in the network. </p></blockquote><p>The second and third protocols involve reciprocal exchanges of deliverables, which are thus value exchanges. </p><p>Let&#8217;s examine one in more detail.</p><p><code>{Visit Shop, Order Coffee, Pay Money, Serve Coffee, Give Review}</code></p><p>This protocol involves multiple reciprocal exchanges. Visualizing protocols as an interaction diagram between the roles involved is helpful. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PT8F!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PT8F!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 424w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 848w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 1272w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PT8F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png" width="727" height="764" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:764,&quot;width&quot;:727,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68620,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PT8F!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 424w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 848w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 1272w, https://substackcdn.com/image/fetch/$s_!PT8F!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c88e3ab-598a-4d95-a39b-c0f11ac86ba2_727x764.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: A collaboration protocol as an interaction diagram</figcaption></figure></div><p>In a value exchange, we expect arrows to go in both directions in the visualization and +/&#8212;signs to appear on both sides of the exchange. In this example, the protocol involves only two roles, but generally, a protocol representing a complex exchange may involve many intermediate or supporting roles.</p><blockquote><p>In our model, a core principle is that sustainable collaborations are built on reciprocal <em>value</em> <em>exchanges</em> where each party can independently evaluate the collaboration&#8217;s value by assessing the deliverables exchanged over the course of the collaboration. </p></blockquote><p>This ensures collaborations remain mutually beneficial and are grounded in contributions that can be objectively and independently assessed by all parties involved.</p><p>A value exchange is a construct with significant expressive power to model the flow of value.</p><p>Its use cases extend across a spectrum, including:</p><ul><li><p>Simple two-party commercial exchanges and complex interactions involving multiple participants in a value network.</p></li><li><p>Exchanges that generate value over short periods and those that unfold over extended time frames.</p></li><li><p>Exchanges that produce tangible, measurable value and that create intangible value, observable or quantifiable, only indirectly.</p></li></ul><p>By modeling the structure and drivers of these value exchanges in detail, defining what 'value' means for each exchange, and analyzing the history of exchanges within the network over sufficiently long time frames, we develop a disciplined method for reasoning about the 'flow of value' in the network.</p><h3>Protocols vs Processes</h3><p>It is important to understand that a protocol differs from a process. In a protocol, the deliverables from one transaction do not necessarily serve as inputs to the next transaction. In complex multi-party protocols, sequential transactions may involve entirely different roles and function independently.</p><p>The relationship between protocols and processes can be viewed as complementary: protocols specify which roles produce which deliverables and map the overall flow of tangible and intangible deliverables required for a collaboration to succeed. Conversely, processes represent the internal activities or workflows within a role that produce those deliverables. These processes may be simple and repeatable or complex and collaborative, i.e., another collaboration. </p><p>For example, in the protocol above, the <code>Serve Coffee</code> transaction naturally corresponds to a key business process. However, the protocol situates this process within its broader human context, capturing tangible and intangible interactions between people that contribute value to the collaboration. At this level, we are less concerned with the operational details of serving coffee and more focused on modeling the factors that shape the customer&#8217;s experience at Zeptos. This approach allows us to evaluate how to create and maximize value from the overall experience. </p><p>Protocols emphasize <em>how deliverables fulfill a value proposition</em> by linking their attributes to the desirable and undesirable factors that define the value proposition, ensuring alignment with the collaboration's goals.</p><p>Let&#8217;s look at this by continuing our example. </p><h2>Customer Collaborations at Zeptos</h2><p>The owner of Zeptos has created a compelling value proposition.</p><p><em>Zeptos is your neighborhood coffee haven, serving top-notch single-origin coffee, locally sourced pastries, and a cozy vibe. It&#8217;s the go-to spot for walk-ins, dine-ins, and work-ins. Complete with blazing-fast Wi-Fi and a welcoming workspace. Sip, savor, or settle in&#8212;Zeptos has you covered.</em></p><p>It appeals to three types of visitors:&nbsp;<em>walk-ins, dine-ins,&nbsp;</em>and&nbsp;<em>work-ins. </em> </p><p>While the Zeptos brand stands for expertly prepared premium coffee and pastries and is a base expectation for every customer,  each of these three types of visitors defines &#8220;value&#8221; from their Zeptos experience very differently. </p><h3>The Walk-In</h3><p>The walk-in customer is there primarily for the coffee and pastries, but they value fast service more than anything, impacting their perception of value every time they visit Zeptos. </p><p>In the walk-in protocol shown below, the visitor places less value on the ambiance and vibe and more on the time it takes to place an order and walk out with a high-quality order. When Zeptos executes this expectation flawlessly, the visitor may return and even give the coffee shop a glowing review. </p><p>For Zeptos, the walk-ins represent a <em>customer value stream</em>. They consider the money the customer pays a fair exchange for the value they provide, assuming they can satisfy customer expectations. If not, a negative review from a disgruntled customer may cause a negative net value from a walk-in. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!olt8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!olt8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 424w, https://substackcdn.com/image/fetch/$s_!olt8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 848w, https://substackcdn.com/image/fetch/$s_!olt8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 1272w, https://substackcdn.com/image/fetch/$s_!olt8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!olt8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png" width="954" height="854" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:854,&quot;width&quot;:954,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:98822,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!olt8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 424w, https://substackcdn.com/image/fetch/$s_!olt8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 848w, https://substackcdn.com/image/fetch/$s_!olt8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 1272w, https://substackcdn.com/image/fetch/$s_!olt8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe485dd8d-f461-469b-b0d5-bbb541bf1c9a_954x854.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 4: The walk-in collaboration protocol</figcaption></figure></div><h3>The Dine-In</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QkpV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QkpV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 424w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 848w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 1272w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QkpV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png" width="939" height="963" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:963,&quot;width&quot;:939,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108801,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QkpV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 424w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 848w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 1272w, https://substackcdn.com/image/fetch/$s_!QkpV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa29e3752-8261-4791-91ec-b6e4aaf0349e_939x963.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 5: The dine-in collaboration protocol</figcaption></figure></div><p>The dine-in customers value the ambiance at Zeptos and the collective vibe of the customers. They expect prompt service, but their expectations are less stringent than those of the walk-ins. Overall, they spend more time at the shop and are likely to spend more on each visit. </p><p>Dine-in customers assess Zeptos value proposition along different dimensions compared to walk-ins. They are much more likely to assess value based on their overall experience at the shop, and Zeptos needs to execute flawlessly on that count for them to feel they have received value. </p><p>For Zeptos, dine-in customers present a distinct logistical challenge. Attracting them requires more significant investment in  higher-end facilities and staff, which lowers unit margins. However, in certain months, the profits generated from dine-in customers can significantly surpass those generated from walk-in customers. </p><p>Dine-in customers represent the second major value stream for Zeptos. </p><h3>The Work-In</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!s9-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!s9-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 424w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 848w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 1272w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!s9-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png" width="727" height="807" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:807,&quot;width&quot;:727,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:81224,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!s9-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 424w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 848w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 1272w, https://substackcdn.com/image/fetch/$s_!s9-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2724d0b-1d38-4e3d-a97f-5087ec460cdf_727x807.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 6: The work-in collaboration protocol</figcaption></figure></div><p></p><p>Work-in customers at Zeptos come for a work-friendly environment rather than coffee and pastries. They value comfortable seating, reliable Wi-Fi, and a productive atmosphere without service expectations. They represent visitors attracted by an entirely different aspect of the Zeptos value proposition. </p><p>However, these customers often spend extended periods at Zeptos, and 70% eventually order, transitioning into dine-in behavior. This dual role makes work-ins valuable for their workspace use and their contribution to sales during their stay.</p><p>Serving work-ins requires investment in workspace amenities, such as comfortable seating, charging points, and strong Wi-Fi, which adds to higher fixed costs. However, their high conversion rates make this a worthwhile investment. </p><p>The 30% of the work-ins that don&#8217;t convert to paying customers represent an unbalanced exchange for Zeptos. The visitors receive tangible benefits from Zeptos but only intangible benefits in return<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. </p><p>The work-in customers are the third major value stream for Zeptos. </p><h3>Customer Value Streams</h3><p>Here&#8217;s why we call walk-in, dine-in, and work-in customer <em>value streams</em>:</p><ol><li><p><em>Stable Value Flows</em>: These represent enduring and consistent flows of value within Zeptos' value network, forming a core part of its business model.</p></li><li><p><em>Customer-Centric Value Propositions</em>: Each value stream reflects Zeptos' tailored value proposition from the perspective of specific customer needs. The general proposition attracts diverse customers, but each value stream meets distinct customer expectations.</p></li><li><p><em>Distinct Service Types</em>: While Zeptos operates as a single service entity, these categories signify three unique service types from the customer&#8217;s perspective. Each is defined by its specific collaboration protocols and definitions of value. </p></li><li><p><em>Operational Investments</em>: Delivering these services involves different investments, resources, and processes, aligning with the classic definition of a value stream. These differences are represented in the collaboration protocols that govern each stream.</p></li></ol><p>The &#8220;value&#8221; in these value streams is a contingent quantity, entirely shaped by mutual expectations and the satisfaction of both parties in each collaboration. Each one can exceed, meet, or fall short of expectations, resulting in a net positive or negative flow of value.</p><p>By consistently delivering on its value proposition for <em>each</em> customer value stream, Zeptos stabilizes and creates a coherent flow of value across its network. Customer reviews act as an adaptive feedback mechanism in the network, signaling Zeptos and others when this flow is disrupted.</p><p>Ultimately, as we discussed in <a href="https://www.polaris-flow-dispatch.com/i/151331118/a-value-network-as-a-complex-adaptive-system">Value Networks and Value Streams,</a> the flow of value  in the network is an emergent phenomenon, observable only when aggregated over many collaborations over time.</p><h2>What is a value stream? </h2><p>We&#8217;ll close this episode with a definition.</p><p><em>A value stream is a collection of value exchanges that describe value-creating collaborations between two roles in a value network.</em></p><p>In this definition, a value stream's <em>identity</em> is determined by its value proposition, the deliverables produced, and the criteria by which participants evaluate those deliverables against the value proposition. This perspective centers value streams around <em>what</em> is delivered and how value is <em>perceived</em> rather than <em>how</em> it is delivered. </p><p>A more formal explanation of this perspective requires additional conceptual tools, which we&#8217;ll explore in the next episode. However, it&#8217;s essential to note that value stream identity is established by defining the <em>nature of value delivered</em>, leaving the delivery mechanisms to the <a href="https://www.polaris-flow-dispatch.com/i/151331118/value-stream-models">value stream model</a>.</p><p>This marks a key departure from Lean value streams, which focus primarily on the delivery processes.  Of course, we address these processes in the value stream model, but we explicitly model the &#8220;value&#8221;  in &#8220;value streams&#8221; before doing so. </p><p>In a future episode, we will dissect the differences between these perspectives.</p><h2>Key Takeaways</h2><ol><li><p>Value exchanges form the building blocks of value streams, representing reciprocal exchanges of deliverables between roles in a value network.</p></li><li><p>Collaboration protocols define the structured interactions between people required to achieve specific outcomes, emphasizing tangible and intangible deliverables.</p></li><li><p>Distinct customer value streams emerge when services are tailored to meet specific expectations and experiences through customized collaboration protocols.</p></li><li><p>The Zeptos example gave us three value streams: walk-ins, dine-ins, and work-ins. Each is shaped by tailored collaboration protocols and customer-centric value propositions. Customer reviews provide adaptive feedback to manage these value streams dynamically. </p></li><li><p>Stable and coherent value flows emerge when mutual expectations are consistently met for each value stream.   </p></li><li><p>In contrast to the Lean perspective, value stream identity is determined by the value delivered and how it is perceived rather than the processes involved in delivery.</p></li></ol><h3>Looking Ahead</h3><p>This episode focused on how value exchanges and collaboration protocols define customer value streams within a value network. </p><p>However, value networks are not static; they evolve through feedback, long-term dynamics, and internal interactions. In future posts, we&#8217;ll explore how feedback mechanisms like customer reviews guide the network&#8217;s adaptation, how sustained value exchanges shape its growth and stability, and how internal value streams, such as supplier relationships and staff workflows, interact with customer-facing streams to create a cohesive value network. </p><p>These deeper models will help us understand the full potential of value networks in modeling complex systems.</p><div><hr></div><p>Acknowledgments:&nbsp;<a href="https://www.linkedin.com/search/results/all/?fetchDeterministicClustersOnly=true&amp;heroEntityKey=urn%3Ali%3Afsd_profile%3AACoAAAHT3EIBKs-iL8jI6RR8cgmzEwhHqCzH8e0&amp;keywords=marc%20charron&amp;origin=RICH_QUERY_SUGGESTION&amp;position=0&amp;searchId=7f7389d7-4e33-4a2d-b0d5-fbb2dd6da2b4&amp;sid=dWu&amp;spellCorrectionEnabled=false">Marc Charon</a>&nbsp;read this post's early drafts and provided valuable feedback, which improved it greatly. Thank you! </p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Note that this can be any ordered sequence of edges involving any number of roles in the network.  In Verna Allee&#8217;s original formulation of the Value Network, the process of identifying transaction sequences in a value network was called <em>sequencing</em>. Sequencing was used to check the consistency and completeness of a value network for an activity and was a core part of value network mapping. We use it similarly but build upon it in defining collaboration protocols and  value exchange models. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>Verna Allee used deliverables and &#8220;value&#8221; interchangeably in her original formulation of Value Networks. This is a significant aspect where we diverge from her concepts.  We believe that requiring reciprocity to assign value semantics to transactions provides a more explicit view of value semantics in value networks and allows us to consider deliverables from their value separately.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>It may not always be a bad deal. If the work-in happens to be Keanu Reeves, the vibe value may exceed anything they purchase. The point is the assessment can only be made by the participants when they collaborate. </p></div></div>]]></content:encoded></item><item><title><![CDATA[Value Networks and Value Streams]]></title><description><![CDATA[Connecting flow of value to flow of work]]></description><link>https://www.polaris-flow-dispatch.com/p/value-networks-and-value-streams</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/value-networks-and-value-streams</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sat, 23 Nov 2024 15:02:13 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rHel!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Value streams are made of people<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rHel!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rHel!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!rHel!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!rHel!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!rHel!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rHel!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:505632,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rHel!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!rHel!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!rHel!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!rHel!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7b36c2a3-d0b1-4907-be06-6fc5cc6d1bec_1024x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Quantifying Value</h2><p>In the software product development world, we approach some big questions in an ad hoc manner, among these: </p><ul><li><p>What does our customer value? </p></li><li><p>Are we building a valuable product? </p></li><li><p>How does improving efficiency create value? </p></li></ul><p>&#8220;Value&#8221; remains an abstract input into how we think about our product development systems. </p><ul><li><p>While we use &#8220;value&#8221; and &#8220;impact&#8221; to characterize our system's effectiveness, few generally accepted definitions of these terms or ways of reasoning about what &#8220;creating value&#8221; or &#8220;having an impact&#8221; means exist. </p></li><li><p>We discuss the &#8220;flow of value&#8221; in almost all aspects of our process and system improvement efforts, but it has no formal or commonly accepted definition. </p></li><li><p>There is a lot of focus on efficiency, and we have many structured methodologies and tools to make the processes in our value streams more efficient. Yet, fewer ways exist to explain the relationship between efficiency and value.  </p></li></ul><p>As a result, anyone can claim to &#8220;create value&#8221; or &#8220;improve value&#8221; without having to prove it. </p><p>Almost every framework or methodology used in the software industry today&#8212;for process improvements, organizational design, or capability improvements&#8212;is deficient in this sense. </p><p>This post proposes a solution, mainly to bring greater focus to this sizeable grey area and help spur more discussion and conversations about the concept of &#8220;value&#8221; and the related concepts of  &#8220;flow of value&#8221; and &#8220;value impact.&#8221;  </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>Value Networks and Value Exchanges</h2><p>This post is part of a series on Value Networks, a modeling technique developed by Verna Allee in the mid-nineties that provides a robust formal foundation for reasoning about value in a fundamentally novel way. </p><p>The <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Value Network</a> is a straightforward concept built from three simple primitives: roles, transactions, and deliverables. Roles represent (groups of) people and the parts they play in a value-creating collaboration. Transactions represent interactions between two roles, where one role, the provider, delivers something to the other, the recipient. The deliverable may be tangible, or intangible. </p><p>The semantics of &#8220;value&#8221; in this transfer are subtle. </p><p>Assuming it costs the provider something to have a deliverable in their possession, we can only say the deliverable has value to the&nbsp;<em>provider</em>. </p><p>In this sense, every transaction leaves the <em>provider</em> with a <em>value deficit</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>.  </p><p>We cannot truly understand the <em>value </em>the recipient places on what they receive until the provider gets something back from the recipient. </p><p>So reciprocity is crucial in defining the &#8220;flow of value.&#8221;  </p><p>A &#8220;value exchange&#8221; is a reciprocal interaction between provider and recipient in which each party exchanges something&nbsp;<em>they</em>&nbsp;value with the other<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. </p><p></p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!urA-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!urA-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 424w, https://substackcdn.com/image/fetch/$s_!urA-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 848w, https://substackcdn.com/image/fetch/$s_!urA-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 1272w, https://substackcdn.com/image/fetch/$s_!urA-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!urA-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png" width="1456" height="1111" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1111,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138777,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!urA-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 424w, https://substackcdn.com/image/fetch/$s_!urA-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 848w, https://substackcdn.com/image/fetch/$s_!urA-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 1272w, https://substackcdn.com/image/fetch/$s_!urA-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafef9df4-0298-4fb3-9d78-69eebdd6bcf6_1947x1485.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 1: A value exchange</figcaption></figure></div><p>Most economic transactions are value exchanges, where goods and services are exchanged for money. Still, the concept generalizes well beyond that when considering intangible deliverables as part of the exchange.  </p><p>My favorite example of value exchange is the scene from The Blues Brothers, where Jake wonders what happened to their Cadillac. </p><div id="youtube2-nrKmNkDcDuk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;nrKmNkDcDuk&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/nrKmNkDcDuk?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><blockquote><p>  Jake traded the Cadillac to Ray and received a microphone in return, and each party was satisfied that they had gotten the better deal in the value exchange.When Elwood tells Jake he traded away the Bluesmobile for a microphone, it takes only a brief second for Jake to respond, &#8220;I can see that.&#8221;  </p></blockquote><p>Because neither party experienced a value deficit in the exchange, and indeed, both considered that they gained &#8220;value,&#8221; the  value exchange benefitted both parties, and there was a natural &#8220;flow of value&#8221; in the exchange. </p><p>Value exchanges are the fundamental building blocks of a sustainable value creation system. Parties exchange things of value with each other, and as long as the perceived value of the thing each party receives is greater than the thing they traded away, each party finds &#8220;value&#8221; in the exchange. </p><p>As long as parties continue to transact, the network has a sustained flow of value.</p><p>Reciprocity is essential to sustaining the network. </p><p>It is the foundation of the market economy. </p><h2>The Flow of Value in a Business Value Network</h2><p>Let&#8217;s develop this concept further by formally defining the &#8220;flow of value&#8221; in a business value network. </p><p>In a business value network, the roles represent economic entities such as companies, their customers, suppliers, partners, etc. Our earlier post on <a href="https://www.polaris-flow-dispatch.com/i/150623624/the-business-value-network">Value Network Mapping</a> discussed the business&nbsp;value network. Figure 2 reproduces it from that post. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jQo6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jQo6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg" width="728" height="380" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jQo6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 2:  A Business Value Network for AssetManagerPRO</figcaption></figure></div><p></p><p>To model the &#8220;flow of value,&#8221; let's assume we identify all the relevant value exchanges in the network. For example<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-4" href="#footnote-4" target="_self">4</a>, </p><ul><li><p>The company provides the customer with access to the AssetManagerPro product, and the Customer pays subscription fees in return.</p></li><li><p>A large Distribution Partner provides its customers with access to the company, and the company pays a portion of the revenues from those deals back to the partner.  </p></li></ul><blockquote><p>If we augment the value network with state and transaction history<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-5" href="#footnote-5" target="_self">5</a>,  we may <em>define</em> the &#8220;flow of value&#8221; as the <em>history of those value exchanges</em>.</p></blockquote><p><em>It is important to note that with these definitions, the &#8220;flow of value&#8221; is a concrete, measurable construct that we can extract from the transaction history of a business value network.</em> </p><p>At this level of detail, we are not concerned with the internal details of the value exchanges; we are just concerned with their history, the roles involved in transactions, and the <em>types</em> of value exchanges. </p><p>In practice, network transactions can be instrumented and traced back to customers, suppliers, etc., with specific demographic or business profiles, contracts with concrete terms, prices, costs, etc.</p><p>Sales, signed contracts, cancellations, product churn, returns, etc., delineate the boundaries of typical value exchanges of interest and give us high-level insights into the flow of value and value-creation dynamics within the network. </p><p>Using value exchanges as the unit of value ensures that <em>measurements and improvements in the "flow of value"  focus on actual value being delivered between parties.</em>&nbsp;</p><p>We can use this to define an associated definition of &#8220;value impact.&#8221;</p><blockquote><p>A change in the value network will be defined as having a &#8220;value impact&#8221; if it produces an exceptional<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-6" href="#footnote-6" target="_self">6</a> change in the flow of value in the network. </p></blockquote><p>In later posts, we will have more to say about defining and measuring value impacts.</p><h2>A Value Network as a Complex Adaptive System</h2><p>As defined above, a value network <em>models</em> a complex adaptive system. </p><p>The&nbsp;<em>flow of value </em>in a value network is an&nbsp;<em>emergent phenomenon</em>&nbsp;resulting from the <em>independent</em> decisions of <em>individual</em> network participants to seek each other out and engage in value exchanges. A value exchange succeeds only when a recipient seeking a  a benefit transacts with a provider offering that benefit on mutually acceptable terms. </p><p>The emergent nature of the flow of value means that it cannot be managed or controlled by any single party in the network; it can only be&nbsp;<em>influenced</em>&nbsp;through strategic actions by network participants that offer incentives for parties to participate in value exchanges. </p><h2>Reciprocity and Stability </h2><p>In a value network, reciprocity in value&nbsp;<em>exchanges</em>&nbsp;is the fundamental stabilizing mechanism for the complex adaptive system. </p><p>These exchanges, representing the mutual transfer of benefits between participants, provide the structure and feedback needed to maintain balance within individual interactions and move the system closer to equilibrium. </p><p>Balance occurs when the value exchanged is perceived as fair and mutually beneficial by both parties&#8212;recipients feel their needs and desires are met. At the same time, providers receive adequate compensation or strategic benefits in return. </p><p>This alignment ensures ongoing participation and satisfaction for both sides. </p><p>When such balance is consistently achieved across value exchanges, it maintains equilibrium, stabilizing the overall flow of value and preserving the coherence of the collaboration.</p><p>By contrast, if the value delivered by one party is not reciprocated, it ceases to function as an exchange and disrupts the balance within the value network. </p><p>This imbalance can erode trust, as the provider may feel exploited or undervalued, while the recipient might view the provider as unsustainable or unreliable if the imbalance continues. The provider incurs opportunity costs, expending resources on unrewarded efforts that could have been directed toward more sustainable exchanges.</p><p>Over time, the lack of reciprocity can lead to the breakdown of relationships, discouraging further engagement and disrupting the flow of value. </p><p>Participants may withdraw, and the flow of value fragments. </p><p>The collaborations become unstable and lose coherence.</p><h2>Value Propositions as Signals</h2><p>What enables two parties in a network to recognize the <em>potential</em> for value exchange?</p><p>This is the role of the&nbsp;<em>value proposition</em>. </p><p>The traditional view of a&nbsp;<em>value proposition</em>&nbsp;defines it as the provider articulating the unique benefits and value their offering delivers to the recipient, emphasizing how it addresses the recipient&#8217;s needs and differentiates the offering from alternatives.</p><p>A compelling&nbsp;<em>v</em>alue proposition&nbsp;distills the provider's understanding of the&nbsp;<em>value dynamics</em>&nbsp;within the network. It is rooted in a deep comprehension of three components in a value exchange: value to the recipient, value to the provider, and value in exchange.</p><ul><li><p><em>Value to Recipient:</em> The recipient's benefit from the ownership, possession, or use of a good or service the provider offers. It expresses the provider&#8217;s ability to fulfill the recipient's desires, aspirations, needs, preferences, or goals. Value-to-recipient encompasses both tangible utility and intangible benefits, such as satisfaction or prestige of association with the products and services the provider offers. </p></li><li><p><em>Value to Provider</em>: The benefit the provider derives from offering a good or service, typically measured in revenue, profit, market share, or strategic advantage. It expresses the provider's ability to capture sufficient value-in-exchange to cover costs, generate returns, and support long-term growth. This includes tangible outcomes, such as financial gains, and intangible benefits, such as brand equity, market positioning, or customer loyalty. </p></li><li><p><em>Value in Exchange</em>: The agreed-upon worth of a good or service in a transaction, reflecting a balance between value-to-recipient and value-to-provider. While traditionally expressed as a monetary price, it may also incorporate&nbsp;intangibles&nbsp;such as brand perception, trust, reputation, and emotional or symbolic associations, which may significantly influence the recipient's motivation and terms for the exchange. Value-in-exchange captures the tangible and intangible drivers of value in a value exchange.</p></li></ul><p>The value proposition distills the provider&#8217;s understanding of all three value components in an exchange to communicate the benefits offered to the recipient in language designed to incentivize the recipient to engage in a transaction. </p><p>Identifying and communicating value-to-recipient and leveraging it to guide the provider's strategic positioning in the network is crucial for a provider to create and sustain the flow of value in their value network.</p><p>In short, the value proposition <em>catalyzes</em> a value exchange. They should ultimately be understood as <em>signaling mechanisms </em>that help network participants maintain coherence within a value network. </p><ul><li><p>Value propositions communicate the potential for mutually beneficial value exchanges between providers and recipients, signaling opportunities for meaningful interactions and fostering network coherence. </p></li><li><p>Clear and compelling value propositions reduce ambiguity and friction in value exchanges and support a consistent flow of value. </p></li><li><p>As network needs and conditions evolve, value propositions act as dynamic signals, adapting to demand, competition, or resource shifts. This adaptability aligns participants' actions with the emergent flow of value, maintaining coherence.</p></li><li><p>Value propositions capture feedback from past exchanges and incorporate it into their refinement, signaling updated expectations to participants. This continuous refinement helps stabilize and sustain coherence by ensuring that offerings remain relevant and aligned with the network&#8217;s needs.</p></li><li><p>In a complex adaptive system, coherence arises from shared patterns and purposes. Value propositions contribute by signaling the shared understanding of what value means for providers and recipients. </p></li></ul><h2>Value Streams</h2><p><em>Effective</em> value propositions attract network participants to providers who can consistently fulfill them, creating coherent and sustained flows of value within the network&#8212;flows we call <em>value streams</em>.</p><p>Value streams emerge as the confluence of the three components of value in an exchange&#8212;value to the recipient, value to the provider, and value within the exchange.</p><p><em><a href="https://www.polaris-flow-dispatch.com/p/value-networks-and-value-stream-management?r=fjllf">Value stream management</a></em>&nbsp;is the <em>continuous</em> process of comprehending value propositions, nurturing value streams, and sustaining them by creating and adapting the organizational capabilities required to harness the flow of value in those streams efficiently. </p><p>It requires a constant focus on aligning value propositions and internal operations that fulfill those value propositions to facilitate <em>efficient</em> value exchanges and maximize the flow of value. </p><p>Finally,  it requires the capacity to detect weak signals in value stream flow and adapt value propositions and operations to grow these streams over time. Value exchanges with <em>short</em> feedback loops are essential for this.</p><p>Understanding and optimizing value to the provider while balancing it with value to the recipient is a central concern in a provider&#8217;s business strategy and operational efficiency and the main focus of value stream management. </p><p>Our definition and treatment of value streams as emergent flows of value within a value network might seem relatively unfamiliar compared to the much more <a href="https://en.wikipedia.org/wiki/Value_stream">familiar definitions of value streams</a>.  But, as we will discuss in our next post, these are simply two different ways to look at the same underlying reality.</p><h2>Value Stream Models </h2><p>A value stream <em>model</em> is an analytical construct that describes the relationship between the value propositions offered to the network and the provider's internal resources, capabilities, and processes needed to fulfill them. </p><p>The value stream model connects the <em>flow of value</em> in the value network to the <em>flow of work</em> within the provider organization needed to fulfill it. </p><p>The unifying construct across all these representations is the value proposition, which centers on the customer&#8212;the ultimate beneficiary of all the work undertaken. </p><p>The model connects the value proposition to the three core value components inherent in each value exchange, which must align to fulfill the value proposition.</p><p>In an industrial or repetitive service value stream, the value proposition is typically known beforehand and remains static throughout the value stream's life. </p><p>Consequently, the models and representations needed to maintain alignment with the value proposition are simple. </p><p>For software products, it is more the norm, rather than the exception, that the value proposition, and by extension the value stream, adapt and change to the flow of value in the value network. The system of processes, people, and capabilities  fulfilling the value proposition is a complex adaptive system requiring richer representations. </p><p>The value stream model is this generalization. It contains all the representations a provider needs to reason about the relationships between the flow of value in the value stream and the internal systems within the provider organization that sustain it. </p><p>It consists of many different perspectives on the flow of work and value, including a model for the value proposition, value stream maps, value network maps, code promotion flow maps, etc. In our last <a href="https://www.polaris-flow-dispatch.com/i/151223206/transaction-networks">post</a>, we showed, for example, how a value stream map and a value network map represent two views of the same underlying set of activities supporting a sales transaction. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IQVf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IQVf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 424w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 848w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1272w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png" width="1456" height="1322" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1322,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IQVf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 424w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 848w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1272w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 3: A Value Network Map and a classical Value Stream Map</figcaption></figure></div><p>Many such synergies emerge from a value network model.</p><p>In the next episode &#8220;<a href="https://open.substack.com/pub/thepolarisflowdispatch/p/value-exchanges-and-collaboration?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true">Value Exchanges and Collaboration Protocols</a>,&#8221; we will look at a simple example of a value network and the various value streams that emerge from the value exchanges that occur within the network. </p><p></p><h2>Summary</h2><p>Here are the main takeaways from this post.</p><ol><li><p>Value streams are made of interactions between people. </p></li><li><p>Reciprocal value exchanges between roles are essential <em>building blocks</em> for modeling and measuring sustainable value creation in a value network.</p></li><li><p>A value network is a complex adaptive system model in which effective value propositions attract coherent, sustainable flows of value.   </p></li><li><p> Value streams emerge as the confluence of the three components of value to people involved in an exchange&#8212;value to the recipient, value to the provider, and value within the exchange.</p></li><li><p>A value stream model contains all the representations a provider needs to support value stream management, which involves reasoning about the relationships between the flow of value in the value stream and the internal systems within the provider organization that sustain it. </p></li><li><p>Adopting value exchanges as the unit of measurement for the &#8220;flow of value&#8221; ensures that value stream management stays focused on increasing value creation within the network.</p><p></p></li></ol><div><hr></div><p>Marc Charron and John Siegrist gave valuable feedback on drafts of this post, improving it significantly. Many thanks to both of you! </p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Liz Keogh, who explored the topic in <a href="https://lizkeogh.com/value-streams-are-made-of-people/">this post</a> nearly a decade ago, deserves original credit for this phrase. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>The extent of this deficit may vary quite a bit depending on the exchange and, in a sense, reflect the value the provider places on the deliverable. As John Siegrist pointed out in reviewing this article, the marginal costs of acquiring and trading information are often minimal in the information and knowledge economy, and the dynamics of value exchanges can be much more subtle. However, the critical thing to remember here is that the principle of reciprocity is the more important characteristic of the value exchange, not the &#8220;magnitude&#8221; of the value being exchanged. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>In general, a value exchange may be a&nbsp;<em>cycle</em>&nbsp;of transactions in the value network in which every provider eventually receives something of value in return as part of the exchange.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-4" href="#footnote-anchor-4" class="footnote-number" contenteditable="false" target="_self">4</a><div class="footnote-content"><p>These are just examples. Identifying the value exchanges that contribute to the flow of value is the most important modeling decision, and it is an ongoing exercise done at varying levels of detail by <a href="https://www.polaris-flow-dispatch.com/i/150623624/refining-value-networks">refining</a> the business value network as needed. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-5" href="#footnote-anchor-5" class="footnote-number" contenteditable="false" target="_self">5</a><div class="footnote-content"><p>Both history and state are necessary concepts before we can reason about flow. The details of the state model, etc., are network-specific and not critical at this stage. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-6" href="#footnote-anchor-6" class="footnote-number" contenteditable="false" target="_self">6</a><div class="footnote-content"><p>Defining routine vs. exceptional change in the flow of value in the value network requires a bit more machinery than we are prepared to discuss in this post, but for those familiar with <a href="https://www.amazon.com/Understanding-Variation-Key-Managing-Chaos/dp/0945320531">Don Wheeler&#8217;s</a> writing, &#8220;exceptional&#8221; is used in that sense. The key things to note here are that with these definitions, we have a robust way of measuring the impact of a value exchange's outcome or some other structural change in the value network on the flow of value in the network. </p></div></div>]]></content:encoded></item><item><title><![CDATA[Value Networks and Value Stream Management]]></title><description><![CDATA[From Purpose to Process]]></description><link>https://www.polaris-flow-dispatch.com/p/value-networks-and-value-stream-management</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/value-networks-and-value-stream-management</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sat, 09 Nov 2024 15:02:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Aohn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Aohn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Aohn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Aohn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:915964,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Aohn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!Aohn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f895890-4bc6-489b-9f6a-977ab3fd8428_1024x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is the third episode in our series of posts on <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Value Networks</a>. </p><p>Verna Allee initially developed this mapping and modeling technique and elaborated on it in her book <a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration/dp/0929652525">Value Networks and the True Nature of Collaboration</a>.  </p><p>While she developed these ideas in contexts other than software product development, I believe they help us express the collaborative nature of complex knowledge work in richer ways than many of the techniques we use today to model software development processes.</p><p>This post will discuss how Value Networks relate to Value Stream Management in software product development. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>Value Stream Management</h2><p>Peter Hines and colleagues&nbsp;<a href="https://www.emerald.com/insight/content/doi/10.1108/09574099810805726/full/html">introduced Value Stream Management</a> (VSM) as &#8220;a <em>strategic</em> and <em>operational</em> approach to the <em>data capture</em>, <em>analysis</em>, <em>planning</em>, and <em>implementation</em> of effective <em>change</em> within the core cross-functional or cross-company <em>processes</em> required to achieve a lean enterprise<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p>This remains an excellent general definition of Value Stream Management, even if the original concepts were developed in the context of industrial production processes and supply chains. </p><p>Let&#8217;s focus on a few key aspects:</p><ul><li><p>VSM is fundamentally about improving <em>processes</em>.</p></li><li><p>It targets <em>cross-functional</em> and <em>cross-company</em> processes, those that require collaboration across organizational or inter-organizational boundaries.</p></li><li><p>VSM has both strategic and operational components.</p></li><li><p>It relies on data to analyze, model, plan, and implement system-wide changes.</p></li><li><p>The primary goal is to ensure <em>effective</em> change&#8212;improving the enterprise's ability to create value more efficiently.  </p></li></ul><p>Under this definition, VSM is focused on changes <em>beyond</em> local, continuous improvement efforts (e.g., Kaizen); it emphasizes collaborations at the company and cross-company levels that require coordination among autonomous participants to identify system-level improvements and implement changes<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>.</p><p>While these changes are typically strategically important, they are among the hardest to operationalize. Therefore, a holistic approach to visualizing, modeling, and reasoning about them is critically important. </p><p>Value Networks are a powerful tool for tackling this challenge. </p><h2>Value Networks: A Recap</h2><p>The <a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">Value Network</a> is a straightforward concept built from three simple primitives: roles, transactions, and deliverables. Roles represent (groups of) people and the parts they play in a value-creating collaboration. Transactions represent interactions between roles that exchange something of value. Deliverables represent these things of value and may be&nbsp;<em>tangible&nbsp;</em>or&nbsp;<em>intangible. </em></p><p>Value network mapping aims to identify the roles, transactions, and deliverables in a network of value exchanges. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xIRw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xIRw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 424w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 848w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 1272w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xIRw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png" width="538" height="260" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:260,&quot;width&quot;:538,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32597,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xIRw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 424w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 848w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 1272w, https://substackcdn.com/image/fetch/$s_!xIRw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb780fe2-9b26-40f7-aabd-8fbd21d81dc0_538x260.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 1: A Basic Value Network</figcaption></figure></div><p>In our previous episode,&nbsp;<em><a href="https://www.polaris-flow-dispatch.com/p/value-network-mapping?r=fjllf">Value Network Mapping: An Example</a></em>, we illustrated how we might model a value network for an example software company, AssetManager PRO. We mapped the value network at three levels of detail and explored choices for modeling the flow of value.</p><p>Figure 2 from the last episode shows an example of these levels of detail. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!crCV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!crCV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 424w, https://substackcdn.com/image/fetch/$s_!crCV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 848w, https://substackcdn.com/image/fetch/$s_!crCV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 1272w, https://substackcdn.com/image/fetch/$s_!crCV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!crCV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png" width="728" height="394.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:789,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:960149,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!crCV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 424w, https://substackcdn.com/image/fetch/$s_!crCV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 848w, https://substackcdn.com/image/fetch/$s_!crCV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 1272w, https://substackcdn.com/image/fetch/$s_!crCV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc4a45dac-78b5-4c23-ae1b-0b2fe6505cc9_5488x2975.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 2: The layers in a Value Network Map </figcaption></figure></div><p>By mapping roles, transactions, and deliverables, Value Networks enable us to capture tangible and intangible value exchanges between participants. </p><p>This helps us see the big picture, defining the &#8216;flow of value&#8217; and revealing key areas where value is created or could be enhanced across the business network. </p><p>With these fundamentals, let&#8217;s dive into how these models represent the flow of value within an ecosystem.</p><h2>Modeling the flow of value</h2><p>At the top level, the&nbsp;<strong>business value network, </strong>roles represent business entities such as the company, its market, suppliers, partners, and competitors. These are the participants in the product ecosystem.  </p><p>The business value network serves as the strategic canvas for Value Stream Management, where the goal is to harness and optimize value flows within the network to maximize value for both the company and its customers.</p><p>This network is a model of an open, complex adaptive system in which roles are evolving populations of participants, and transactions represent measurable value exchanges between these participants. </p><p>The &#8220;flow of value&#8221; is defined by the value exchanges in the business value network.  <em>Transactions</em> between roles and their deliverables represent fundamental, measurable units of value exchanged between participants. These include <em>tangible</em> exchanges such as money and products and <em>intangibles</em> such as brand value, reputation, trust, customer satisfaction, etc. Only transactions that result in a concrete exchange of value, whether tangible or intangible, contribute to the flow of value.</p><p>Figure 3 shows the business value network for AssetManager PRO. I recommend reviewing our description of this network in the <a href="https://www.polaris-flow-dispatch.com/i/150623624/the-business-value-network">last episode</a>. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jQo6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jQo6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg" width="1456" height="760" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:743385,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jQo6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jQo6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F360767d1-ddac-4d14-817a-e687a5af6fd5_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fig 3: The Business Value Network for Asset Manager Pro</figcaption></figure></div><p></p><p>The business value network is, first and foremost, a sensemaking and visualization tool that allows a broad range of stakeholders to come together and build a <em>shared</em> model of the value-creating ecosystem the company supports. This brings greater clarity to our questions about how the product ecosystem creates value. </p><p> Constructing a value network model should be collaborative, drawing on diverse stakeholder perspectives to represent the product ecosystem accurately. The choices made when modeling roles and transactions in the network will significantly impact the insights you can derive from them.</p><h3>From Visualization to Analysis</h3><p>When we augment the value network with notions of <em>state and history</em>, the visual models can also be extended to build powerful tools to analyze value creation dynamics in the network<strong>.&nbsp;</strong></p><p>We may, for instance, define the network's <em>state</em> as the value <em>accumulated</em> with participants based on their history of value exchanges. Transactions cause changes in the network state and may also change population distributions between roles; for example, a successful sales transaction may convert a consumer from Prospect to Customer. </p><p>By analyzing the system dynamics of the value network with these definitions: the value exchanges, the population movements between roles reflecting value-seeking behavior, and the analysis of transaction activity over time, we can identify causal relationships to understand value-creation mechanisms within the network. </p><p>Systems dynamics models help identify where we can intervene to improve the flow of value in the network and verify whether the changes we make to the system are effective&#8212;i.e., do they enhance the flow of value?  </p><p>In an upcoming post, we will explore how to create these types of systems dynamics models for value networks. </p><h2>Modeling the flow of work</h2><p>Once we have modeled the flow of value and identified potential areas for improvement, we can focus on improving the processes needed to support this. </p><p>This is the core mission of Value Stream Management. Traditionally, operating model design, organizational design, and lean process engineering have all focused on this topic.  </p><p>These disciplines focus on the organization&#8217;s <em>internal</em> structure, processes, and resources&nbsp;<em>within</em>&nbsp;its boundaries. They position customers, partners, and other external actors&nbsp;<em>outside</em>&nbsp;the system boundary and aim to optimize internal structures, capabilities, and processes to serve these external actors. </p><p>The value network offers fresh perspectives here. Since every value exchange in the business value network crosses an organization's boundary, it is helpful to have a way of representing these exchanges that cross the boundaries of the system being analyzed. </p><p><a href="https://www.polaris-flow-dispatch.com/i/150623624/refining-value-networks">In our previous analysis of AssetManager PRO</a>, we introduced the notion of <em>refining</em>&nbsp;a value network, which allows us to zoom in on a value exchange in this fashion.  </p><p>Every such refinement of a business value network creates a new value network with roles and interactions that <em>cross</em> organizational boundaries.  The refined network models the dynamics of these collaborations across organizational boundaries at&nbsp;<em>increasing levels of detail for roles, transactions, and deliverables</em>. We&#8217;ll find this technique helpful in analyzing both cross-functional and cross-company collaborations. </p><p>The refinement operation is somewhat different from a structural decomposition of the network. Rather than breaking the network into parts and studying how the parts behave, we focus on the <em>interactions</em> between the parts and examine how those <em>interactions</em> behave at greater levels of detail. </p><p>Since system behavior emerges from these detailed interactions, refinement is an essential technique for modeling and analyzing value exchanges in complex systems models like business value networks. </p><p>In Fig 2, we showed the business value network refined to two levels of detail. Let&#8217;s examine these more closely. </p><h3>Organization Networks</h3><p>At the first level of detail, we are primarily concerned with how the organization is structured to support the business value network activity effectively. </p><p>The refined value network is focused on interactions between teams, departments, etc., within the organizations and with their collaborators outside the organization in the value network. </p><p>Figure 4 shows an example of a refinement in which we zoom into the interactions between different AssetManager PRO departments and the market.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MFrT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MFrT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 424w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 848w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 1272w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MFrT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png" width="1456" height="763" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:763,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:12012586,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MFrT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 424w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 848w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 1272w, https://substackcdn.com/image/fetch/$s_!MFrT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9a04a99-ab23-4648-93bf-441955e1142e_12656x6629.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 4: Cross-Company and Cross-Functional Transactions in the Organizational Value Network</figcaption></figure></div><p></p><p>Note that we continue to model both &#8220;sides&#8221; of the value exchange in this network. Thus, there are cross-company transactions (which refine the business value network) and new cross-functional transactions between departments, which we will largely focus on in Value Stream Management. </p><p>This refinement can be used to model the impact of changes in the organizational topology on the flow of value in the business value network. </p><p>We could also have created refinements using other organizational perspectives, such as teams, or with other external collaborators, such as partners or suppliers. </p><h3>Transaction Networks</h3><p>The second level of refinement, the transaction level, zooms into the interactions for a specific transaction using even more detailed roles. Again, we are zooming into detailed collaborations <em>within</em> and <em>between</em> organizations that lead to a successful value exchange in the business value network. </p><p>Figure 5 shows the transaction network for a Buying Transaction in the business value network. Note that in our refinement, we have maintained roles for buyers and sellers and that the transactions in this network span organizational and functional boundaries in the asset manager PRO organization. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fORg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fORg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fORg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fORg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fORg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fORg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg" width="1456" height="760" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:863574,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fORg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fORg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fORg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fORg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24f61574-54dc-4d60-ad64-75e4fb4b914d_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 5: The Transaction Value Network for the Buying Transaction</figcaption></figure></div><p>This is the domain of traditional processing engineering. Value network models are also applicable at this level. However, it is helpful to view them as <em>augmenting</em> the conventional process-oriented perspective focusing on the steps required to create the deliverable (the value stream view) with a collaborative perspective that captures the roles and interactions of internal participants involved in producing these deliverables (the value network view).</p><p>Combining value network representation with value stream maps and other related processing engineering tools is feasible and valuable here. Figure 6 below shows a traditional Value Stream Map for the Buying transaction alongside the value network map view from Figure 5 above. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IQVf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IQVf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 424w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 848w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1272w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png" width="1456" height="1322" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1322,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5095337,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IQVf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 424w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 848w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1272w, https://substackcdn.com/image/fetch/$s_!IQVf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a6f8497-e1ff-4426-b0a7-e0ca87618f6a_6973x6329.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 6: The Value Stream Map and Value Network Map for the Buying Transaction</figcaption></figure></div><p>Both maps provide helpful ways of examining the underlying collaborations in the network. The value stream map is much more convenient when reviewing a summary view of the process and where time is spent. It tells you&nbsp;<em>what</em>&nbsp;needs to happen to close a deal successfully and surfaces critical metrics that drive this success rate. In particular, it lets you focus on where time can be shaved off in the process. </p><p>The value network view is much more detailed and focuses on <em>who must collaborate&nbsp;</em>to close a deal successfully.  Sequencing the map will often yield insights into poor information flows that lead to excessive delays in the value stream map. </p><p>In collaborative knowledge work, the real constraints to workflow are often people&#8217;s capacity to fulfill their collaboration roles due to incomplete knowledge and information flows and poor collaboration and communication structures. </p><p>Looking at these&nbsp;<em>sequences&nbsp;</em>of interactions in the value network reveals a temporal view of this map. These can be used to build causal models for the metrics in the value stream map. You may also drill deeper into each of these transactions with an additional value stream or value network map to model and optimize them in more detail. </p><p>Value networks are potent tools for explicitly visualizing, modeling, and reasoning about these collaboration constraints. The example above shows that they effectively complement process-oriented representations like value stream maps.</p><p>In her book, Verna Allee&nbsp;<a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration-ebook/dp/B01409UIY4/ref=sr_1_1?crid=2JVUIW7QWNKUW&amp;dib=eyJ2IjoiMSJ9.bdth31S56eQ49CnRAuPPF_aHuAL28Zz2FnfcBxyxyquYO12FTVmEbmQFbll02R6hYtFIXzIuD4TJrtwnEMBm6mXtx6s-ANtugPgbEre4YpndOTSYJvxsaSRpKRLQnGIAT26F70R7fWp0PF1Wd069ETnMquegbjyphWIjr8JpqQRe6kuhb8lK2O3d0IFYQUJiHxo33Q-a4Gb1C6ac_AVfAMBLfFu802aNQJiP2kf7jT0.5_uYIk4aYr9OX2CUSS2ggcPDbG65giC2kzg_p7-HwWs&amp;dib_tag=se&amp;keywords=Value+Networks&amp;qid=1711465340&amp;sprefix=value+networks%2Caps%2C160&amp;sr=8-1">demonstrates many use cases</a>&nbsp;for value network models in process improvement. She shows how to use value network maps to optimize complex internal operational delivery process workflows. Her applications often&nbsp;<em>followed</em> a lean process engineering approach to the problem!</p><p>We highly recommend reviewing more examples from her book to understand how these techniques can complement each other. </p><p>Beyond this level of detail,  we can focus on the flow of work needed to produce <em>specific</em> deliverables for the transactions in this network.  Since deliverables have a single source role, we are now zooming in within a single organization in a business value network to understand the processes that produce a single deliverable. </p><p>We are now squarely in the realm of process engineering, and as shown above, value network maps are one additional tool we can use here. </p><h2>Summary</h2><p>One of the most appealing aspects of Value Networks is their simplicity and flexibility. With carefully defined semantics, a single representation can capture and clarify the relationships between the flow of value and work across various levels of detail. </p><p>While Value Networks integrate seamlessly with other models, their unique strengths make them particularly effective for modeling complex, collaborative knowledge work.</p><p>Value Networks complement and extend existing VSM practices, helping to realize Peter Hines and his colleagues' vision of creating leaner, more collaborative enterprises.</p><div><hr></div><p>In the next episode, we will study the Buying transaction in more detail to understand the relationship between the flow of work and the flow of value<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. </p><p>See you next week!</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>This definition of Value Stream Management takes a much broader view of VSM than what you might find in existing descriptions of VSM in software development from <a href="https://www.vsmconsortium.org/">industry consortia or analyst firms</a>. </p><p>I start with this definition intentionally. I believe the narrower focus on current approaches to VSM comes from the concept being first introduced in large, non-native digital companies transitioning from project-based software delivery to product orientation.  Here, the main focus is building a product-oriented software development capability to replace siloed handoffs between technology and business functions. </p><p>The methods and models we describe here are well-suited to those environments. Still, they may be too advanced to implement without the basics of a product development infrastructure. </p><p>In pure-play software product companies, the basic technical and product management infrastructure for creating and delivering software products is already in place. </p><p>Thus, the more general framing of VSM here highlights the core problem VSM is best suited to tackle: structured approaches to cross-functional and systemic improvements in existing processes so that we can improve the effectiveness and efficiency of software product development in a market-driven environment.</p><p>Hence, we are basing our definition of VSM on the classic definition, which I think is much more suited to software product companies. It will eventually become the focus even when non-native software companies' basic product development infrastructure has matured. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>This is not to say Kaizen is not important&#8212;it is critically important. But with VSM, we are interested in systemic changes that do not happen purely organically from local improvements made by autonomous teams. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>&#8220;But I thought you would talk about product development, Krishna? What&#8217;s all this focus on Sales?&#8221; you might be asking.</p><p>Patience, I&#8217;ll get there! </p><p>There is a method to this madness.  </p><p>Just like it is simpler to study roundworms before we move on to humans, we&#8217;ll look at the somewhat more straightforward case of Sales to understand how we can frame the problem of what it means to connect the flow of work to the flow of value using the machinery we&#8217;ve built up so far and then see what it takes to generalize this to product development. </p></div></div>]]></content:encoded></item><item><title><![CDATA[Value Network Mapping]]></title><description><![CDATA[An Example]]></description><link>https://www.polaris-flow-dispatch.com/p/value-network-mapping</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/value-network-mapping</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Fri, 01 Nov 2024 17:50:49 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!IJKp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IJKp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IJKp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 424w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 848w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 1272w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IJKp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4598246,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IJKp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 424w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 848w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 1272w, https://substackcdn.com/image/fetch/$s_!IJKp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36cc2e92-0d2d-4c75-b6e8-9944d25cff7e_1832x1832.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>In the last episode, &#8220;<a href="https://www.polaris-flow-dispatch.com/p/what-is-a-value-network?r=fjllf">What is a Value Network</a>? "We introduced Value Networks, a mapping and modeling technique that helps us understand the relationships between the flow of value and work in complex systems. </p><p>Value Networks were introduced and developed by Verna Allee, who <a href="https://youtu.be/-PMUvbBtpAY?si=69Oq8Wb0WDVPocTw">described</a> them as follows. </p><p>&#8220;<em>Value networks are the natural way people organize to achieve outcomes. If you define a value network as any set of roles and their interactions that create a specific business outcome, then anything we do together is a value network. </em></p><p><em>Value networks put <strong>people</strong> at the heart and center of value creation.&#8221;</em></p><p>Her book <a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration/dp/0929652525">Value Networks and the True Nature of Collaboration</a>&nbsp;remains the definitive reference. I highly recommend it for a more detailed understanding of the modeling technique and its applications. </p><p>In this episode, we&#8217;ll work through a detailed example of value network mapping. </p><p>I based the treatment here on how I have applied the concepts in the software product development space. In doing so, I have extended some of the core concepts in Verna Allee&#8217;s formulation, in some cases, to serve my needs while, I believe, staying true to the original intent. </p><p>I welcome constructive feedback on this approach, as it is an evolving practice. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Definitions</h2><p>We can construct a Value Network from three simple primitives: Roles, Transactions, and Deliverables. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cBHA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cBHA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 424w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 848w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1272w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png" width="1086" height="510" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:510,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:83292,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!cBHA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 424w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 848w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1272w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 1: A Value Network</figcaption></figure></div><p>Roles represent (groups of) people and their contributing roles in a <em>collaboration </em>that creates value for the participants<strong>. </strong>Arrows between roles represent <em>transactions </em>that exchange something of <em>value </em>between the roles. </p><p>Value network mapping aims to identify the roles, transactions, and deliverables in collaborations that create value. It places people and their interactions at the heart of the value-creation process. </p><p>From this seemingly simple set of primitives, rich contextual models can be created that illuminate the relationship between the flow of value and work in product development at different timescales and levels of detail. </p><p>A key feature of value networks is that the &#8220;deliverables&#8221; exchanged in this transaction may be <em>tangible </em>or <em>intangible. </em>In practice, intangibles constitute a significant component of the &#8220;flow of value.&#8221; By modeling them explicitly, value networks allow us to build much richer models for value creation.  </p><h2>Mapping a Value Network</h2><p>The first thing to note about Value Network maps is that they are not unique. </p><p>The map you build depends entirely on the purpose of the mapping exercise, including the  specific questions you want to answer and the context and boundaries of the system you are examining. </p><p>All value network maps share the common feature of focusing on the interactions between roles via&nbsp;<em>transactions</em>, with deliverables being the <em>explicit</em> representations of value exchanged, tangible or intangible.</p><p>Value Networks are expected to be highly context-specific and should focus on clarifying the collaboration structures that lead to value-creating outcomes. You should feel free to construct suitable value networks to answer your specific questions. </p><p>That said, seeing familiar contexts, granularities, and examples of value networks can help build intuition, and this post offers some examples of what&#8217;s possible. While the example we show here has a natural generalization, which we will describe and explore later, I believe there are many more ways to map and model value networks, starting from the basic definitions above. </p><p>Therefore, our example should&nbsp;<em>not&nbsp;</em>be considered a definitive way to map or model value networks; it is just an illustration of the concept's generality and the kinds of questions you can answer using these techniques. </p><p>If you find the approach intriguing, please explore and share any new insights you uncover by trying other methods to map value networks. </p><p>I believe this is an area ripe for exploration and experimentation. </p><h2>The Example</h2><p>AssetManagerPro is a SaaS product that helps commercial property owners manage small to mid-sized real estate portfolios.&nbsp;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8FmO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8FmO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:882362,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!8FmO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 2: AssetManager PRO</figcaption></figure></div><p>The value proposition:</p><p>&#8220;<em>AssetManagerPro empowers small to mid-size commercial property owners and asset managers with an all-in-one platform that simplifies both financial management and operational logistics with a user-friendly, scalable solution tailored to your specific needs, providing real-time insights into rental income, property metrics, and maintenance workflows&#8212;all in one place, at a cost that fits your budget.</em>&#8221;</p><p>The Value Network Mapping for Asset Manager Pro shows how the product generates value within its ecosystem and connects this to the flow of work needed to achieve the flow of value.</p><p>We will construct the map at three levels of detail. </p><h3>The Business Value Network</h3><p>At the top level of the value network map, we consider the business ecosystem in which Asset Manager Pro operates. </p><p>The business value network represents value-creating collaborations among the company, its customers, and partners. Competitors are also modeled at this level, though not included in this example.</p><p>The business value network models the <em>flow of value</em>. We orient our questions about value creation around the focal roles of the business, its customers, and its partners. </p><p>Figure 3 shows the business value network for Asset Manager Pro </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XvR3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XvR3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XvR3!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg" width="1200" height="626.3736263736264" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:743385,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XvR3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XvR3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa36b7426-b650-4b32-9ff8-aec4517ae66e_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 3: The Business Value Network for AssetManager PRO</figcaption></figure></div><h3></h3><p>There are three categories of roles.  </p><ul><li><p>The first is the AssetManagerPro, the focal <em>provider</em> role in this network. </p></li><li><p>The second key set of roles represents the <em>consumers<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a></em> who might derive value from the product. We have <em>chosen</em> to model these as four separate roles roughly mapped to the product's customer journey. </p><ul><li><p>Target Market: The set of all potential consumers of the product</p></li><li><p>Prospects: Consumers who have shown interest in the product. </p></li><li><p>Customers: Consumers who have purchased the product. </p></li><li><p>Former Customers: Consumers who no longer use the product. </p><p></p></li></ul><p>Segmenting a population (consumers, in this case) into multiple roles helps model the dynamics of value creation. Interactions between the AssetManagerPro role and the four consumer roles help uncover different value-creating transactions between providers, consumers, and other players in the ecosystem. </p></li><li><p>The third set of roles includes partners, such as distribution partners, marketing channels, industry conferences, and product review sites. This ecosystem broadens the opportunities for consumer exposure to the product, driving more value exchanges between providers and consumers.</p></li></ul><p>The business value network is the ecosystem in which AssetManagerPro exchanges tangible and intangible value with other network players.</p><p>For example:</p><ol><li><p>Customers gain direct value from using the product (tangible) and, in return, pay subscription fees to the provider (tangible).</p></li><li><p>Large distribution partners offer market access to the provider (intangible) in exchange for a share of product revenue (tangible) and added value to the partner-customer relationship (intangible).</p></li><li><p>Providers gain referral value from satisfied customers promoting the product (intangible), and consumers receive insight from candid negative reviews left by dissatisfied former customers (intangible).</p></li><li><p>Marketing partners run campaigns on behalf of the provider (tangible) in exchange for marketing fees (tangible).</p></li></ol><p> The value network above reveals many more such value exchanges. </p><h2>The Flow of Value</h2><p>Transactions in the business value network represent fundamental value exchanges that drive the flow of value within the network.</p><p>Metrics such as subscription fees, referral counts, and revenue share percentages provide quantifiable insights into the tangible and intangible exchanges between AssetManagerPro, its partners, customers, and prospects. These can be traced back directly to <em>transactions</em> in the value network. </p><p>We can also track the flow of value over time by analyzing population dynamics of roles&#8212;such as prospects converting to customers or customers becoming former customers. These population shifts reveal trends in consumer behavior, satisfaction, and brand loyalty, indicating value created or lost.</p><p>Combined, transactions, metrics, and population dynamics enable causal modeling of value movement within the network, identifying potential collaboration bottlenecks and uncovering opportunities to enhance value creation.</p><p>Consider sales-related transactions in the AssetManagerPro ecosystem as an example.</p><p>Standard sales metrics, like closing rate, revenue per customer, and customer acquisition cost, measure success rates and can be traced back to transactions within the business value network.</p><p>In the value network model, these metrics are also reflected in observable population shifts between the Prospect and Customer roles, serving as leading indicators of changes in sales performance. Each successful transaction converts a Prospect to a Customer, reflecting the tangible flow of value and showcasing the network&#8217;s sales effectiveness. Each failed transaction brings opportunities to reflect on the structural changes needed to improve the probability of success and increase the flow of value in the network. </p><p>Subsequent posts will  focus on modeling and measuring the flow of value in much greater detail. </p><p>However, for now, let&#8217;s continue mapping the value network. </p><h3>Refining Value Networks</h3><p>Given a <em>set</em> of roles and transactions in the business value network, we can <em>refine</em><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> it to produce a new value network. </p><p>These refined value networks focus on modeling the collaborations needed to execute value-creating transactions within the original network and capture detailed interactions across roles in the parent network. </p><p><em>In a refinement operation, we replace some roles and transactions in the parent network with new ones to represent more detailed interactions between those roles and the relevant roles in the parent network</em>. </p><p>This layered approach can extend to multiple levels, with each refined network representing more details about the  flow of collaborations that drive successful outcomes and enhance the overall value flow in the top-level business value network. </p><p>In our first example refinement, we focus on the value exchanges between the AssetManagerPro and Customer roles in the original business value network. </p><p>We&#8217;ll refine the AssetManager Pro role to a set of departmental roles and add transactions to define the interactions of the new roles with the existing customer roles. </p><p>Figure 4 shows the refined value network. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XqmA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XqmA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XqmA!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg" width="1200" height="626.3736263736264" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:705764,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XqmA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XqmA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42ad6845-5675-407d-befa-bb642986f081_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 4: The Consumer Value Network for AssetManager PRO</figcaption></figure></div><p></p><p>It shows the collaborations between AssetManagerPro at a departmental granularity and each of the four customer segments focused on the customer journey in the business value network<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a>. </p><p>We'll call it the &#8220;Consumer Value Network.&#8221; </p><p>Transactions in the network drive the flow of consumers between segments. It takes close collaboration between marketing, sales, and product development to move a consumer from the target market to the customer role.  The value network above allows us to visualize and reason holistically about all these interrelated collaborations between departments and the transactions between the departments and consumers in various segments. </p><p>A critical difference between the value network perspective <em>is that it is not necessarily limited to the boundary of a single company or organization within it</em>. Instead, we look at the collaborations and deliverables needed to achieve specific outcomes even when they cross traditional functional and enterprise boundaries.  </p><p>Let us consider one more refinement of the network: the &#8220;Buying&#8221; transaction in the consumer value network.  </p><p>We will refine the portion of the consumer value network below anchored around the buying transaction, which moves consumers from Prospects to Customers. In the AssetManager Pro context, closing a sale involves both the Sales and Product Development departments and potential referrals from existing customers. </p><p>A successful Buying transaction provides tangible value to the company and the consumer. Even unsuccessful transactions can provide intangible value signals to both departments that help refine the ideal customer profile and the product capabilities that a consumer might find lacking in the current product. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-dkT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-dkT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-dkT!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg" width="1200" height="626.3736263736264" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:565570,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-dkT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-dkT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb250240-0175-4c8b-9bd8-d6c3a0476063_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 5: The Value Network focused on the Buying Transaction</figcaption></figure></div><p></p><p>Let us now refine this portion of the value network to detail the collaborations needed to facilitate successful buying transactions. </p><p>Figure 6 shows the resulting value network. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IPyN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IPyN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IPyN!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg" width="1200" height="626.3736263736264" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:760,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:863574,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!IPyN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 424w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 848w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!IPyN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdfe17077-30b0-4e29-8d87-8ca92964d952_5520x2880.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 6: The Collaboration Network for the Buying Transaction</figcaption></figure></div><p>The refined network shows the collaborations needed to close a deal and convert a consumer from Prospect to Customer. We'll call this the Collaboration Network for the Buying transaction.</p><p>There are a few things to note about the refinement. </p><ol><li><p>The Prospect role in the customer value network has been refined into four roles, with a single focal role called the Asset Manager role. This role represents the consumer side value recipient of this collaboration. </p></li><li><p>Additional refined consumer-side roles include financial controller, purchasing team, and IT team, representing other stakeholders who have a say in the successful outcome of a buying transaction in a consumer organization. </p></li><li><p>On the provider side, we have refined the sales and product development department roles into more granular roles that represent the specific roles needed to successfully close a deal for AssetManager PRO. These refine roles in sales and product development departments. </p></li><li><p> The provider roles, such as Demo Giver, Deal Owner, etc., are generic and designed to indicate the role's responsibilities in the collaboration. It is important to note that these roles are not job titles nor imply that different people must play them. The same person may be a Demo Giver and the Deal Owner on any given sales deal, and different people may assume these roles for different deals.</p></li><li><p>The critical point is that refinement focuses on transactions between consumers and providers and the collaborations between roles on <em>each side</em> needed to complete a transaction successfully. The refinement preserves the principle of adding detail to collaboration between roles in the network being refined.</p></li><li><p>The activity network is a bridge representation between the flow of work and the flow of value. It identifies <em>what cross-functional transactions between roles </em>are needed to successfully close a deal (the value-creating transaction) without necessarily specifying the detailed steps required to execute those transactions. That next level of detail usually belongs to more detailed process mapping techniques.</p></li><li><p>Buying transactions can activate this network in various <em>sequences</em>. Rather than tracking each possible sequence, the network representation emphasizes the key roles and interactions common to all company sales transactions. <em>Sequencing</em>, however, can be applied to the transactions in the collaboration network to create a more process-centric view of the activity network.</p></li><li><p>Depending on how we model value streams, <em>sequences</em> in the activity network <em>may</em> also correspond to value streams, providing a natural bridge to value stream mapping. For example, mapping the above collaboration network as a Demo-Close value stream would be perfectly consistent with current value stream management practices. However, it should be apparent that the collaboration network focuses on the people and interactions required to achieve a successful outcome rather than the end-to-end workflow of steps, resources, etc, needed to do this. The latter is the domain of value stream mapping or other process mapping techniques. </p></li><li><p><a href="https://www.omg.org/spec/VDML/1.1/PDF">VDML</a> provides first-class representations of sequences in a value network, providing a formal bridge between the value network representation and more process-centric views such as value stream maps. </p><p></p></li></ol><h2>The General Picture</h2><p>I want to re-emphasize that the mapping approach we have taken here is but one possible way to use the very general concepts behind value networks. </p><p>That said, I've found that my approach of defining a top-level value network with roles and transactions between a company and its external customers, then iteratively refining key roles and transactions at the department/team and transaction levels to link work processes to the flow of value, is promising. </p><p>Figure 7 outlines the general picture. </p><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EyvD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EyvD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 424w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 848w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 1272w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EyvD!,w_2400,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png" width="1200" height="650.2747252747253" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;large&quot;,&quot;height&quot;:789,&quot;width&quot;:1456,&quot;resizeWidth&quot;:1200,&quot;bytes&quot;:960149,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-large" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EyvD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 424w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 848w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 1272w, https://substackcdn.com/image/fetch/$s_!EyvD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9565c907-7adb-4e33-b36d-114564dd95b6_5488x2975.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Figure 7: Iterative Refinement of a Business Value Network</figcaption></figure></div><p>Throughout the rest of the season, we will expand on these mapping techniques and offer detailed examples that connect value network mapping with other established methods for enhancing visibility, decision-making, and impact on software product development flow.</p><h2>Up Next</h2><p>In the <a href="https://www.polaris-flow-dispatch.com/p/value-networks-and-value-stream-management?r=fjllf">next episode</a>, we&#8217;ll explore the relationship between value network mapping and value stream mapping. While value streams and value stream mapping are well-established for workflow optimization, I contend that, for software products, these models don&#8217;t fully connect the flow of work to the flow of value.</p><p>I&#8217;ll argue that value streams organically <em>emerge</em> from the flow of value within a value network and are dynamic constructs in the complex realm of software development. The business value network represents the more natural and stable structure of value-creating collaborations from which value streams arise.</p><p>Now that we have a concrete example of a value network in a software product context, we can make this argument.</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>We use the word &#8220;consumers&#8221; here in contrast to the &#8220;provider&#8221; role the business plays in this network. You should not interpret this to mean that consumers are individuals. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>The definition of refinement I present here is not in the original concepts in Verna Allee&#8217;s book. However, related ideas are alluded to in her work and are consistent with related concepts in VDML. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>The departmental refinement is based on how AssetManagerPro is organized today. We are looking at the company's operating model at this level of detail.</p></div></div>]]></content:encoded></item><item><title><![CDATA[What is a Value Network?]]></title><description><![CDATA[Modeling the Flow of Value]]></description><link>https://www.polaris-flow-dispatch.com/p/what-is-a-value-network</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/what-is-a-value-network</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Tue, 22 Oct 2024 14:51:15 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aX9J!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aX9J!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aX9J!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 424w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 848w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 1272w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aX9J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png" width="1318" height="1320" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1320,&quot;width&quot;:1318,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2594658,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aX9J!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 424w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 848w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 1272w, https://substackcdn.com/image/fetch/$s_!aX9J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff935933a-c9a2-4ad5-af2c-9c0442fb55c8_1318x1320.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">When the Levee Breaks..</figcaption></figure></div><p><a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing?r=fjllf">The Entrepreneur and The Queueing Theorist</a> introduced the first significant theme we will explore in more detail in the rest of this season of The Polaris Flow Dispatch: the role of queueing theory in building causal models for the <em>flow of work</em> in software product development. </p><p>In this post, we will introduce the second central theme, Value Networks, which help build causal models for the <em>flow of value</em>.</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p>In our post, <a href="https://www.polaris-flow-dispatch.com/p/throughput?r=fjllf">Throughput !=  </a> from last season, we argued that when measuring performance, productivity, efficacy, etc., in software product development, we inappropriately conflate the flow of work with the flow of value. </p><p>Many of the measurement techniques we use to measure these aspects of software product development derive from those developed in the manufacturing and service industries. </p><p>However, a critical aspect of these two domains is that the flow of work is a reasonable proxy for the flow of value. </p><p>In software, especially for software products, it is not. </p><p>Many of the metaphors we borrow from manufacturing, code as inventory, low usage features as waste, etc., all rely on the implicit assumption that the &#8220;things&#8221; we produce are what have value. </p><p>However, a line of code, a feature, or a novel product capability has no <em>intrinsic</em> value.</p><p>In the software product context, the value &#8220;flows&#8221; only when a product recipient derives some utility from a product, and the user&#8217;s perception of this utility determines whether or not something has value.</p><p>This &#8220;flow of value&#8221; happens at a different time scale, level of abstraction, and between different entities. It is often only <em>indirectly</em> related to the &#8220;flow of work&#8221; required to produce the product.  </p><p>The Value Network is a model that lets us explicitly make these connections, model the flow of value, and connect it to the flow of work.</p><h2>Value Networks</h2><p>Value Networks are a concept developed by Verna Allee. They blend ideas from network theory, complexity science, and value delivery modeling into an intuitive mapping and analysis technique that is very powerful and general despite its apparent simplicity. </p><p>In this short video, she beautifully explains the fundamental intuition behind a value network.</p><div id="youtube2--PMUvbBtpAY" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;-PMUvbBtpAY&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/-PMUvbBtpAY?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Ms. Allee developed Value Network Analysis in the 1990s and early 2000s. During that period, she explored the interplay between Value Network Analysis and other types of network analysis of complex systems and developed this concept in great detail. </p><p>Her book, <a href="https://www.amazon.com/Value-Networks-True-Nature-Collaboration/dp/0929652525">Value Networks and the True Nature of Collaboration</a> explains these ideas clearly. I highly recommend reading it to understand the ideas she presented in their original form. </p><p>Ms. Allee's initial Value Network model was more informal and focused on collaborative mapping and analysis of value creation mechanisms. </p><p>The <a href="https://www.omg.org/spec/VDML/">Value Delivery Modeling Language</a> standard from the Object Management Group unifies the value network perspective of high-level business value creation with a richer ontology that models characteristics of activities, resources, deliverables, and value contribution. </p><p>It provides a comprehensive way to model the relationships between a business's operating model and the value-creating ecosystem in which it operates at varying levels of detail. </p><p>Ms. Allee was a key contributor to the VDML standard, which has a much more precise set of definitions and is much more suitable for capturing and communicating these models in a standard way and for building interoperable analytical models and tooling. </p><p>For the most part, we will adopt the more precise terminology of VDML while relying on informal visual notations in Ms. Allee&#8217;s formulation to describe models. </p><h2>The Basic Model</h2><p>A value network is a complex system model built from a small set of abstract primitives: Roles, Transactions, and Deliverables. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cBHA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cBHA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 424w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 848w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1272w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png" width="1086" height="510" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:510,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:83292,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cBHA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 424w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 848w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1272w, https://substackcdn.com/image/fetch/$s_!cBHA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa548ad2b-d1bc-4a25-829f-13d90bee7011_1086x510.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Basic Value Network</figcaption></figure></div><p>Roles represent (groups of) people and their contributing roles in a <em>collaboration </em>that creates value for the participants<strong>. </strong></p><p> Arrows between roles represent <em>transactions </em>that exchange something of <em>value </em>between the roles. A key aspect of value networks is that the &#8220;deliverables&#8221; exchanged in this transaction may be <em>tangible </em>or <em>intangible. </em></p><p>Intangibles constitute a significant component of the &#8220;flow of value,&#8221; and value networks model these explicitly. </p><p>Value network mapping aims to identify the roles, transactions, and deliverables in collaborations that create value. It places people and their interactions at the heart of the value-creation process. </p><p>From this seemingly simple set of primitives, rich contextual models can be created that illuminate the relationship between the flow of value and work in product development at different timescales and levels of detail. </p><p>This is a much more intuitive way to model value-creating activities between groups of people, and we will see that this perspective complements process-oriented perspectives, such as value streams. </p><p>While process-oriented mapping techniques such as value stream mapping provide valuable insights into the flow of work, they can be much more powerful when augmented with value network analysis's perspective for how the work creates value.</p><p>Each perspective sheds insights on and enhances the other. Both are useful, but together, they can provide some unique insights. Processes emerge naturally from value network analysis. While process models are also often augmented to describe interactions between actors, they are not the model's primary focus. </p><p>In this sense, Value Networks and value delivery modeling are highly relevant to many vital ideas currently at the forefront of software product development, including Value Stream Management, DevOps, and Team Topologies.</p><h2>Why does this matter?</h2><p>Value networks let us model and reason about the flow of value in a business ecosystem by capturing the collaborations that generate this value. </p><p>VDML enables us to represent these networks at varying levels of detail through a structured ontology. </p><p>We can analyze the value exchanges between business participants at higher abstraction levels. At more granular levels, we can focus on the flow of activities, deliverables, and interactions that support these collaborations, all represented uniformly by roles, transactions, and deliverables.</p><p>We began this season by exploring queueing theory as a paradigm for reasoning about the temporal dynamics of the flow of work. When we return to this topic, one fundamental connection we&#8217;ll make is how queuing network models, derived from value network representations at different levels of detail, enable formal reasoning about both the temporal dynamics of the flow of work and the flow of value.</p><p>Value networks are also a robust foundation for building other simulation models, including system dynamics models and agent-based simulations of value-creating ecosystems. </p><p>System dynamics models help us understand the network's feedback loops, delays, and accumulations, providing insights into how value creation processes evolve. </p><p>Agent-based simulations take this further by modeling the behaviors and interactions of individual agents within the network. They allow us to explore emergent behaviors, adaptive strategies, and the impact of local decisions on the broader ecosystem. </p><p>Together, these models enable us to simulate and analyze value networks' complex, dynamic nature, starting with a uniform way of representing value networks.</p><div><hr></div><p>In the <a href="https://www.polaris-flow-dispatch.com/p/value-network-mapping?r=fjllf">next episode</a>, we will explore Value Network modeling further with a detailed example of a software product business. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8FmO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8FmO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:882362,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8FmO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 424w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 848w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1272w, https://substackcdn.com/image/fetch/$s_!8FmO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff37cd27-3049-4e52-9853-46e317d364c9_2048x2048.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>AssetManagerPro is a SaaS product that helps commercial property owners manage small to mid-sized real estate portfolios.&nbsp;</p><p>The value proposition:</p><p>&#8220;<em>AssetManagerPro empowers small to mid-size commercial property owners and asset managers with an all-in-one platform that simplifies both financial management and operational logistics with a user-friendly, scalable solution tailored to your specific needs, providing real-time insights into rental income, property metrics, and maintenance workflows&#8212;all in one place, at a cost that fits your budget.</em>&#8221;</p><p>Stay tuned as we model the Value Network for AssetManagerPro. </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Entrepreneur and The Queueing Theorist - Episode 3]]></title><description><![CDATA[Scenarios]]></description><link>https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-bdb</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-bdb</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sat, 12 Oct 2024 14:02:53 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/c3ad80e8-3b59-4169-8bc4-dbd57d1e1041_6485x5209.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>If you are joining us, here is the story so far.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DvFs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DvFs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 424w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 848w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 1272w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DvFs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png" width="1422" height="997" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:997,&quot;width&quot;:1422,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:390555,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DvFs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 424w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 848w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 1272w, https://substackcdn.com/image/fetch/$s_!DvFs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce1d01ba-61fc-42bd-9e44-1ab5d205b5df_1422x997.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p><em> <a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web">Episode 1</a> introduced our protagonist, The Entrepreneur, CEO of an AI-powered custom software factory in 2034. She struggled to understand why she lost money on her company&#8217;s customer guarantee: &#8220;Your idea, live in production in one business day, or your money back.&#8221; </em></p><p><em>Her engineers showed her that their delivery process was shipping orders with a cycle time of half a day. With two engineers, she was convinced they should comfortably meet their customer service guarantee. All her competitors were doing it, so why not her team? </em></p><p><em>In <a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-24c?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web">Episode 2</a>, the Advisor, a Queueing Theorist, showed her why, using a simple queueing model for her business. The critical thing she was missing was that as queuing in front of the system increased with increasing order flow, the probability that customer lead times would exceed a day and trigger refunds also increased. </em></p><p><em>The Advisor alerted her that while her current losses were still modest, she was at much greater risk of losing money on the customer guarantee should her business grow further, as it seemed to be doing.  </em></p><p><em>We pick up the story here. </em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>The Current State</h2><p>&#8220;Let&#8217;s recap,&#8221;  the Advisor says. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rCMb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rCMb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 424w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 848w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 1272w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rCMb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png" width="1149" height="716" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:716,&quot;width&quot;:1149,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:170873,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rCMb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 424w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 848w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 1272w, https://substackcdn.com/image/fetch/$s_!rCMb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb83373e5-278a-479b-bf52-1ff4033a865d_1149x716.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Customer Lead Time probabilities right now</figcaption></figure></div><p>&#8220;We know that currently, your current order arrival rate means your team is operating at a 60% utilization, and so you should expect some <em>amplification</em> of your <em>service time</em> of half a day when considering the <em>end-to-end customer lead time</em>, and this is <em>entirely</em> due to <em>stochastic delays</em> introduced by queueing.&#8221;</p><p>&#8220;Approximately 7% of your customers see lead times of greater than a day, and these orders trigger the refunds on the customer guarantee. As I explained, you must consider this a queueing tax for your operations. It is unavoidable given your current utilization.&#8221;</p><p>&#8220;The thing about your one-day guarantee is that it materializes the <em>cost of delay </em>and makes it tangible in your financials.  The cost of delay should always have been part of your business model and planning, and you must manage this risk much more closely than you have been doing. Luckily, things are not terrible now but could easily worsen if demand increases.&#8221;</p><p>&#8220;For instance, let's look at what happens if demand increases by 20%, assuming that arrival patterns remain largely the same as they are today.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qoLl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qoLl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 424w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 848w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 1272w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qoLl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png" width="1456" height="924" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:924,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:253106,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qoLl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 424w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 848w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 1272w, https://substackcdn.com/image/fetch/$s_!qoLl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f76c09c-ca0e-4ba5-a904-e9ffc12a12ae_1605x1019.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">What if demand went up by 20%</figcaption></figure></div><p>&#8220;You can see now that the probability that a customer will experience a lead time of more than a day has increased to 20%! That is a significant fraction of your revenue that you will be refunding, and you probably won&#8217;t be able to sustain that. The cost of delay has become material now.&#8221; </p><p>&#8220;Wow!&#8221; says the Entrepreneur. &#8220;No way we can survive that, for sure! What do we do?&#8221;</p><p>&#8220;Well,&#8221; says the Advisor, &#8220;first, let&#8217;s see why this is happening.&#8221; </p><p>&#8220;At a 20% increase in demand, and assuming your service stays at the steady half-day cycle time,  your system is at 73% utilization. At these levels,  it is much more probable that an incoming order will find <em>both</em> engineers busy working on orders, and the probability of queueing increases rapidly. So too does the probability of customer lead times exceeding a day.&#8221;</p><p>&#8220;So what should you do? I recommend hiring a third engineer immediately. If your business expands as you think it will, they will pay for themselves in short order if they can help you keep all the money you earn in revenues instead of refunding customers.&#8221; </p><h2>Scenario 1: More Engineers</h2><p>&#8220;Let&#8217;s see what your process will look like with 20% more demand and an extra engineer.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xd2u!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xd2u!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 424w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 848w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 1272w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xd2u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png" width="1456" height="915" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:915,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:230637,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xd2u!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 424w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 848w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 1272w, https://substackcdn.com/image/fetch/$s_!xd2u!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2083dcc0-f6f8-4d8f-a6d3-082afcd3ef9d_1623x1020.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">What if we added an engineer? </figcaption></figure></div><p>&#8220;You can see immediately how much of a difference the extra engineer makes! The Average customer lead time drops to 0.55 days even with 20% increased demand, and you only have a 2% queueing tax. Queueing is still a problem, but with your extra engineer, you are operating at a much lower utilization of  46% percent, so you have plenty of headroom to absorb both the overall demand and the <em>variability</em> in that demand.&#8221;</p><p>&#8220;But wait,&#8221; says the Entrepreneur. &#8220;This is good, but you&#8217;re telling me my <em>only</em> option is to hire more engineers? This was not something I had in my business plan at this time. I&#8217;ll need to show my board we considered other options before they&#8217;ll sign off on this!&#8221;</p><p>&#8220;Of course!&#8221; says the Advisor. &#8220;We should examine those options. It&#8217;s hard to hire skilled engineers even if you have the budget, so let&#8217;s consider the alternatives.&#8221; </p><h2>Scenario 2: Increase Efficiency</h2><p>&#8220;Before increasing staffing, it&#8217;s always a good idea to see if you are operating as efficiently as you can today. We already know that you have a highly optimized process, but it&#8217;s not difficult to assess what a hypothetical improvement to the current service time might do.&#8221; </p><p>&#8220;Let&#8217;s consider what the impact of reducing your current service time might look like. Let&#8217;s say we go from an average of 0.5 to 0.4 days for a 20% improvement in service time. Let&#8217;s assume your demand goes up by 20% simultaneously.&#8221;</p><p>&#8220;Here are your customer lead time probabilities.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sXOP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sXOP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 424w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 848w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 1272w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sXOP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png" width="1456" height="896" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:896,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:283884,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sXOP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 424w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 848w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 1272w, https://substackcdn.com/image/fetch/$s_!sXOP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F41ee1fe8-1ec8-4a32-9f4b-942273d46218_1642x1011.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">What if we increased efficiency instead? </figcaption></figure></div><p>" The results are remarkable! The entire lead time probability distribution has shifted to the left. The most probable lead time is 0.42 days, and your average customer lead time is 0.51. There is only a 2.9% probability of lead times over a day. These results are very comparable to the effects of hiring a new engineer.&#8221; </p><p>&#8220;This shows you the hidden power of improving efficiencies in your operation.  Improving efficiency has allowed your service a higher demand at a lower utilization, with the <em>same </em>number of engineers!  This is a powerful tool to have at your disposal. It&#8217;s an option you always need to consider in these situations.&#8221; </p><h3>The case for slack</h3><p>&#8220;Except there is a catch in your case. Your team is already operating close to the edge in servicing the current demand. You have to consider how you are going to find these efficiencies you are looking for when the same team members are the ones who will need to help you figure out where they are and how to improve the system. Taking them offline for any time to create these improvements will impact your ability to service current customers.&#8221;</p><p>&#8220;You are running with minimal slack capacity, <em>given your one-day guarantee</em>. Adding an engineer is your best bet at this stage because once you have that engineer on board, you&#8217;ll be running at around 38% utilization at your current demand. This might seem scandalously low if you expect your engineers to be maximally busy at all times. But, this is capacity that you should reserve to optimize and improve your system.&#8221;</p><p>&#8220;You&#8217;ll have the opportunity to do this once the new engineer is onboarded and producing, and that is the point at which you can shift your lead engineer&#8217;s attention to trying to find efficiencies and further optimize your process.&#8221; </p><p>&#8220;Do both things, and you&#8217;ll always be running Lean.&#8221;</p><p>&#8220;Ultimately, the best way to manage your capacity strategically is to maintain enough slack to keep your options open on how to act. Once you <em>lose</em> the flexibility of having slack in your system, like you have today, you only have hard choices left, leaving you at risk of being unable to respond to your customer demand when you most need it.&#8221; </p><p> &#8220;I get it now." said the Entrepreneur. </p><p>&#8220;But there is one thing that is still bothering me. You seem to be implying that 60% is a soft limit on the utilization of my team if I want to maintain my customer guarantees. Are you saying there is no way I can achieve the maximum velocity we expected in our business plan? That seems like a big miss!&#8221; </p><p>&#8220;Yes,&#8221; says the Advisor. Since we are considering scenarios, let's play this out so you understand what achieving maximum velocity would imply.&#8221; </p><h2>Scenario 3: Saturation</h2><p>&#8220;Let&#8217;s say we wanted to run at maximum velocity. This means that we are delivering four orders per day, which implies that orders are arriving <em>at least </em>at the rate of four orders a day. In other words, utilization is 100%.  For discussion, let&#8217;s use 99% utilization in our scenario.<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a> </p><p>&#8220;Here is what your customer lead time distribution looks like in this scenario.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!K3sc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!K3sc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 424w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 848w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 1272w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!K3sc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png" width="1456" height="837" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:837,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:224686,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!K3sc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 424w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 848w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 1272w, https://substackcdn.com/image/fetch/$s_!K3sc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9f633f8-916e-4f45-b2d5-2e2e13c760d1_1655x951.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Running at maximum velocity</figcaption></figure></div><p>&#8220;That&#8217;s completely shocking!&#8221; says the Entrepreneur. </p><p>&#8220;Absolutely, but completely expected.&#8221; says the Advisor. Your <em>average </em>customer lead time is now 18.5 days. A significant number of customers wait a month or more for their orders. Your team is maxed out servicing orders continuously, and every new order that comes in has to get in line behind a large queue of waiting orders. You are now in the world of <em>saturation.&#8221; </em></p><p>&#8220;Once high utilization pushes a system over into saturation, it can become hard to dig yourself out of this zone and move back into a stable operating zone.&#8221; </p><p>&#8220;Before we had all these AI-powered tools we have today, much of the software industry operated in a <em>permanent</em> zone of saturation. Demand was always vastly higher than supply, and it was typical  for customer lead times to stretch into months and even years. It was simply considered the way software  development worked. </p><p>&#8220;Once you reach saturation, you only have one choice assuming you can&#8217;t add staff or increase efficiency: you throttle arrivals.&#8221; </p><p>&#8220;You set up backlogs to decide which customers deserve to be serviced before others, add prioritization and expediting policies to deal with exceptions, and generally have an inconsistent and unwieldy process and perenially unhappy customers.</p><p> &#8220;You would never stay in business with a money-back guarantee like the one you can offer today. As you can see, nearly <em>all</em> your customers would get free orders under this scenario!&#8221; </p><p>&#8220;From a utilization standpoint, what you are doing in this scenario is throttling arrivals to reduce the effective rate at which you <em>start</em> orders to maintain a certain utilization level relative to the service rate.&#8221; </p><p>&#8220;You put a big physical queue in front of your process where orders wait until your team pulls them into the service queue when they are ready to work on them. Maintaining that physical queue lets you pay attention to priorities and service customers with different strategies, etc. </p><p>&#8220;But <em>most</em> of your customers would wait for a <em>long</em> time to get <em>anything</em> prioritized through the development process.&#8221; </p><p>&#8220;I am only introducing these options here as a thought experiment and for historical context. In the 2034 market, these are <em>entirely</em> unacceptable strategies if you want to stay in business. Your customers would move on to more operationally competent providers! </p><p>&#8220;Unfortunately, the one-day guarantee is now table stakes in this business, so you cannot ignore the cost of delay like people could a decade ago.&#8221;</p><p>&#8220;Ok. You&#8217;ve convinced me,&#8221; says the Entrepreneur. &#8220;I guess our strategy has to follow your recommendation: hire another engineer and plan on continuously optimizing our process to push off the point where we need to hire the fourth as much as possible while maintaining sufficient slack at all times.&#8221;</p><p>&#8220;I&#8217;m glad you concur.&#8221; says the Advisor. </p><h2>The Takeaway</h2><p>&#8220;I&#8217;m happy we brought you in to help us resolve this disconnect in our metrics,&#8221; says the Entrepreneur.</p><p>&#8220;We thought we were dealing with a measurement or data problem, but you&#8217;ve opened my eyes to something much more fundamental I should have been paying attention to all along.&#8221;</p><p>The Advisor says, &#8220;You are not alone. I often see this in my work. It is common for operational metrics to be internally focused and explicitly focused on maximizing velocity. Velocity is a necessary measurement component, but you will always miss the big picture of your work's impact unless you also measure things from a customer perspective. </p><p>&#8220;Your one-day guarantee made the cost of delay embedded in your business model visible very early in your company's lifecycle. This was invisible in your operational metrics, but you started paying attention early because it cost you real money in refunds. Now you know what it means for your business, have the tools to continually monitor it, and stay ahead of the curve as you grow. </p><p>&#8220;Once you are upside down on having adequate capacity to meet demand and forced to operate at high utilization, you will always have much more complex choices. I am happy I was able to help you see this at a point where you can get ahead of it.&#8221; </p><p>&#8220;Let me summarize the key takeaways,&#8221; says the Entrepreneur. </p><ul><li><p>My customer lead times depend not just on having an efficient service, but I also need to understand how customers interact with and place demand on the service in my operational metrics. </p></li><li><p>A probabilistic model helps me understand the causal relationships between customer experiences and my operational processes. My best bet is to use these models to improve the long-term probabilities of desirable customer experiences. </p></li><li><p>Since my business model is based on short lead times, the cost of delay is an important constraint that I need to pay attention to. In particular, I cannot expect to maximize the velocity in my process and run at very high utilization since this will increase the probability that I trigger refunds under the one-day guarantee. </p></li><li><p>I need to maintain a healthy amount of slack to be responsive to variable demand and have spare capacity to improve my process continuously. This is a mutually reinforcing cycle since improving efficiency creates more slack!</p><p></p></li></ul><p>&#8220;Perfect! I could not have said it better!&#8221; says the Advisor. </p><div><hr></div><p>The parable of the Entrepreneur and the Queueing Theorist will form the starting point of a deeper exploration into the applications of queueing theory and probabilistic reasoning in the rest of Season 2 of The Polaris Flow Dispatch. </p><p>We&#8217;ll delve into the Advisor's techniques in modeling the entrepreneur&#8217;s process and explain the math behind why her approach works.</p><p>We&#8217;ll also explore how this parable surfaces many missing aspects of measurement in software development today - the customer perspective, the cost of delay, probabilistic modeling, incorporating variability, etc., as core measurement tenets for software development systems. </p><p>While this example might seem overly simplistic, it surfaces deeper issues worth examining in more detail. </p><p>I hope you&#8217;ll stay tuned for the rest of the season. </p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>Technically, utilization can be greater than 100% when the arrival rate exceeds the service rate. We use 99% here simply for technical reasons - closed-form computations in our models have singularities at utilization equal to 100%.  We will discuss this fact in more detail in later posts.</p></div></div>]]></content:encoded></item><item><title><![CDATA[The Entrepreneur and The Queueing Theorist, Episode 2]]></title><description><![CDATA[The Analysis]]></description><link>https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-24c</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-24c</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sat, 05 Oct 2024 15:01:58 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f0feb3e4-e656-4f2c-a86b-9376bf2268c6_636x411.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>When we left our protagonists at the end of <a href="https://open.substack.com/pub/thepolarisflowdispatch/p/the-entrepreneur-and-the-queueing?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web&amp;showWelcomeOnShare=true">Episode 1</a>, the Advisor had explained to the Entrepreneur the importance of  <strong>a causal model</strong> that would help connect <strong>output metrics</strong> such as throughput, cycle time, and customer lead time to <strong>controllable inputs </strong>such as arrival rate, service rate, and utilization and explain how changes in the inputs cause changes in the outputs. </em></p><p><em>In particular, the Entrepreneur was surprised by the tradeoff between throughput or productivity and customer lead time and the role of <strong>randomness </strong>introduced by <strong>queueing </strong>in creating this tradeoff.  </em></p><p><em>We pick up the story here. Read <a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web">Part I of The Entrepreneur and The Queueing Theorist</a>  if you are just joining.  </em></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V6hZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V6hZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 424w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 848w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 1272w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V6hZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png" width="582" height="511" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90771c6d-7145-4199-9aea-abfa1e779158_582x511.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:511,&quot;width&quot;:582,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:530605,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!V6hZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 424w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 848w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 1272w, https://substackcdn.com/image/fetch/$s_!V6hZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90771c6d-7145-4199-9aea-abfa1e779158_582x511.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>Understanding Queueing</h2><p>&#8220;It&#8217;s straightforward to understand queueing if you think of it as orders backing up in front of your services <em>as customers place their orders simultaneously</em>. Your developers can only work on a small number of orders simultaneously, and if new orders come in when they are busy with other orders, the new order will have to <em>queue </em>up and <em>wait.&#8221; </em>said the Advisor. </p><p>&#8220;Very often, there is no queueing if orders are spaced well enough apart in time. At other times, queues build up for a little while and get drawn down as your developers catch up.&#8221; </p><p>&#8220;This is precisely the same thing that happens when you are in line at the supermarket or the security line at the airport. Depending on how long the queueing lasts, the time it <em>takes a customer to fulfill their order</em> will vary quite a bit, even if the actual development cycle time needed for each order is very stable.&#8221;</p><p>&#8220;In particular, if orders <em>consistently</em> arrive at a <em>rate</em> that your process cannot service, we have a situation where queueing happens <em>continuously.</em> When this happens, there is no limit to how long customers might have to wait for their orders. We never want to be in this situation.&#8221;</p><p>&#8220;Queueing introduces randomness into even deterministic processes; thus, we need probabilistic tools to reason about this behavior. Luckily, queueing theorists have been studying this problem for over a century, and we have powerful mathematical tools called queueing models that will allow us to analyze queueing in stochastic processes and reason about its causes.&#8221;</p><h2>The Queueing Model</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!34B_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!34B_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 424w, https://substackcdn.com/image/fetch/$s_!34B_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 848w, https://substackcdn.com/image/fetch/$s_!34B_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 1272w, https://substackcdn.com/image/fetch/$s_!34B_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!34B_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png" width="1456" height="1016" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1016,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:884565,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!34B_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 424w, https://substackcdn.com/image/fetch/$s_!34B_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 848w, https://substackcdn.com/image/fetch/$s_!34B_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 1272w, https://substackcdn.com/image/fetch/$s_!34B_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1e98bb97-059a-44be-b523-e07a1ea8d222_4918x3433.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>&#8220;We&#8217;ll construct a probabilistic model of how your customers interact with your service, which will clearly explain how queueing is causing you to lose money on the one-day guarantee.&#8221; the Advisor says.</p><p>&#8220;This model, like all queueing models, consists of </p><ol><li><p>The Arrival Distribution <em>A</em>: A probability distribution that describes how requests arrive at the service over time - the shape of the demand for the service.</p></li><li><p>The Service Distribution <em>S</em>: A probability distribution that describes how <em>long</em> it takes your service to fulfill requests and </p></li><li><p>The Service Concurrency <em>c:   </em>The maximum number of requests the service can process simultaneously. </p></li></ol><p>Note that all three components relate to <em>time</em>: how <em>often</em> requests arrive, how <em>long</em> they take to process, and how <em>many</em> the service can process <em>simultaneously</em>. </p><p>Queueing models explain how <em>delays&nbsp;</em>emerge in a system, and these three components are the basic building blocks you need to reason about this.&#8221;</p><p>&#8220;Let&#8217;s look at what these components look like for your system,&#8221; she says.</p><h3>The  Arrival Distribution</h3><p>&#8220;The arrival time distribution shows the probability of the <em>time between consecutive arrivals </em>to your service<em>. </em>The intuition here is that queueing occurs when many orders arrive in a short window of time, and so we want to capture the probability that inter-arrival times are short vs more spread out in time.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eH78!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eH78!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 424w, https://substackcdn.com/image/fetch/$s_!eH78!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 848w, https://substackcdn.com/image/fetch/$s_!eH78!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 1272w, https://substackcdn.com/image/fetch/$s_!eH78!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eH78!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png" width="1456" height="769" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:769,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:224001,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eH78!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 424w, https://substackcdn.com/image/fetch/$s_!eH78!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 848w, https://substackcdn.com/image/fetch/$s_!eH78!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 1272w, https://substackcdn.com/image/fetch/$s_!eH78!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dd1679d-6af6-4bab-872f-f94b10eafb05_1512x799.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>&#8220;It&#8217;s important to note that these are <em>long-term </em>probabilities. We analyzed several months of order data to understand arrival patterns and built this probability distribution from that analysis. Since your business is growing fast, you must keep an eye on these probabilities since they will change and have a material impact on your business as it grows.&#8221; </p><p>&#8220;We can see that currently, the arrivals are skewed on the high-frequency end, which means that usually, many customer orders arrive close to each other. The <em>average inter-arrival time</em> is 0.41 days, slightly smaller than the 0.5 days it takes to service an order, so we should expect to see some queueing under these circumstances.&#8221;</p><h3>The Service Distribution</h3><p>&#8220;The service distribution shows your process&#8217;s probability distribution of service times. This is the time it takes your team to fulfill an order once they start working on it.&#8221;</p><p>&#8220;Your process is highly optimized, and most orders are processed in around 0.5 days with minimal variability. Our model will approximate this with a deterministic (constant time) distribution to illustrate the impact of queueing much more clearly. In reality, this service has some variability, so this is a conservative assumption. The queueing impact will only worsen once we account for this.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!20jg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!20jg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 424w, https://substackcdn.com/image/fetch/$s_!20jg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 848w, https://substackcdn.com/image/fetch/$s_!20jg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 1272w, https://substackcdn.com/image/fetch/$s_!20jg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!20jg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png" width="1334" height="661" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:661,&quot;width&quot;:1334,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:85591,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!20jg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 424w, https://substackcdn.com/image/fetch/$s_!20jg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 848w, https://substackcdn.com/image/fetch/$s_!20jg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 1272w, https://substackcdn.com/image/fetch/$s_!20jg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F472b2e1b-a3e2-4985-8253-137d395cce29_1334x661.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Service Time Distribution</figcaption></figure></div><h3>The Service Concurrency</h3><p>&#8220;Finally, we&#8217;ll model the service concurrency <em>c=2 </em> since you can process at most two orders concurrently with your current team.  </p><p>For now, we&#8217;ll assume there is no multi-tasking and that the team takes an order from start to finish before starting a new one. Your work-in-progress data seems to bear this out, and again, this is a conservative assumption that will highlight the impact of queueing.&#8221;</p><h3>The Probability of Queueing</h3><p>&#8220;The first thing to assess is the probability that queues will form in your system, given the three parameters above. We do this by looking at probabilities for the total number of items in the system, both in progress and waiting for service.&#8221; </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FIjU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FIjU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 424w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 848w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 1272w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FIjU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png" width="1456" height="839" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:839,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:194069,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!FIjU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 424w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 848w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 1272w, https://substackcdn.com/image/fetch/$s_!FIjU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15db2a5f-d059-4572-a48c-925967df3b5a_1546x891.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Probability of Queueing</figcaption></figure></div><p>&#8220;We noted earlier that the ratio of the <em>arrival rate</em> to the <em>service rate</em>, which we defined as&nbsp;<em>utilization,&nbsp;</em>is an important driver of how the system behaves. The queueing  probabilities are shown here for utilization of 60%, which is where your system is currently.&#8221;</p><p>&#8220;We see that the most likely scenario is that the number of items in the system is less than the concurrency limit, which implies that there is no queuing in those cases. Again, this agrees with our intuition since arrival rates are well below service rates.&#8221;</p><p>However,  queueing will occur whenever the number of orders in the system exceeds the concurrency limit. We can calculate the probability of this happening as the area under this curve to the left of the solid red line in the distribution, and this number is <em>significant</em> at 41%.&#8221; </p><p>&#8220;We see that up to 5 orders can be queued up in the system at a time, waiting for service. These are the potential candidates  for higher customer lead times. The critical question is how it impacts the probability of the customer lead time exceeding a day - the ones that trigger your losses on the one-day guarantee!&#8221;</p><p>&#8220;So let&#8217;s put everything together and look at how long your customers typically wait for their orders to be fulfilled at the current utilization. Remember, this was the relationship you found surprising earlier!&#8221; </p><h3>The Customer Experience</h3><p>&#8220;This is captured by the Customer Lead Time probability distribution, one of the <em>outcome  </em>parameters for your process. &#8220;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ot-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ot-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 424w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 848w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 1272w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ot-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png" width="1456" height="806" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:806,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:247509,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ot-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 424w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 848w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 1272w, https://substackcdn.com/image/fetch/$s_!Ot-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9091de18-b38f-48bc-988d-0deda7c8448c_1664x921.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Customer Lead Time Distribution</figcaption></figure></div><p>&#8220;The distribution shows that the impact of queueing on customer lead times is not too significant (at least, not yet). </p><p>The most probable lead time that a customer will experience is 0.51 days, and the average lead time is 0.6 days, which aligns with your lead time flow metrics. But as you can see, higher lead times are also probable for some customers, and overall, this lead time distribution is <em>much more variable</em> compared to the very deterministic service time distribution you have for the internal process. </p><p>The difference between the two distributions is <em>entirely</em> attributable to queueing. It is the most significant factor determining the end customer experience. And to a large extent, <em>you cannot control the impact directly when you don&#8217;t control the demand</em>.</p><p>In particular, there is a non-zero probability that up to 7% of your customers will wait more than a day to fulfill their orders and will, therefore, get their money back. </p><p>Think of this 7% loss rate as a <em>queueing tax</em>. Based on your current capacity, it is unavoidable. But think of this as a way of keeping you honest in a competitive market. </p><p>At least your customers will not be as unhappy with the small slips in your SLAs, and you now have a very tangible economic reason to optimize your end-to-end customer experience instead of just focusing on optimizing your internal process.</p><p>The primary lesson here is that queueing will always <em>amplify </em>your service times, and your customers will <em>always </em>experience these <em>amplified service times. </em></p><p>To see how critical this is, let&#8217;s look at what these <em>amplified</em> service times will look like if your order volume goes up by 20%. Since your service rate is what it is today, this amounts to seeing what happens when <em>utilization </em>of your process goes up from where it is today.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vz1b!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vz1b!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 424w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 848w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 1272w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vz1b!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png" width="1456" height="822" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:822,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:233363,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Vz1b!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 424w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 848w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 1272w, https://substackcdn.com/image/fetch/$s_!Vz1b!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002732a9-956e-45ae-b4da-a2019c37af16_1621x915.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">What if orders went up by 20%?</figcaption></figure></div><p>&#8220;As you can see here, the probability of customer lead time exceeding a day when demand for your process goes up from here goes up dramatically: from 7% to over 20%! &#8220;</p><p>Now we are talking real money that will quickly make your business unviable if you don&#8217;t get it under control early!&#8221;</p><p>&#8220;That&#8217;s sobering news!&#8221; says the Entrepreneur.</p><p> &#8220;How do we get ahead of this?&#8221;</p><p>&#8220;Let&#8217;s examine some options,&#8221; says the Advisor.</p><div><hr></div><p>In the <a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-bdb?r=fjllf">next episode</a>, the Advisor examines several options and the tradeoffs they involve so that the Entrepreneur can stay ahead of the looming disaster that might come with more growth in her business as the money-back guarantee backfires in a big way!</p><p></p><p> </p><p> </p><p></p>]]></content:encoded></item><item><title><![CDATA[The Entrepreneur and The Queueing Theorist ]]></title><description><![CDATA[A parable from the near future]]></description><link>https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Wed, 02 Oct 2024 11:02:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1lFF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The year is 2034, and the AI revolution continues unabated. </p><p>Silicon Valley has relocated to cryopods in near-earth orbit as the utopians await the Singularity. </p><p>It is now expected in 2040.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1lFF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1lFF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 424w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 848w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 1272w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1lFF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4239641,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1lFF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 424w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 848w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 1272w, https://substackcdn.com/image/fetch/$s_!1lFF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6aa762b2-6070-42e0-8b7e-3b75e24fc1ba_1586x1586.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">An AI coding farm circa 2034</figcaption></figure></div><p>In the meantime, AI has helped solve many mundane problems of the early 21st century. </p><p>Rapid software product development is considered a solved problem.  Small teams of experienced domain experts and skilled software engineers manage AI coding farms, delivering software at previously unimaginable speeds.</p><p>One-day delivery of new features and change requests to complex custom applications is routine. </p><p>Most businesses outsource application development to specialized companies with the technical expertise and capital needed to build and deliver software with AI-optimized infrastructure. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>The Entrepreneur</h2><p>Our protagonist is the CEO of one of these innovative custom software factories<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>, which are the backbone of the software development industry today. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lbjD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lbjD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 424w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 848w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 1272w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lbjD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png" width="1456" height="1456" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1456,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4598075,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lbjD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 424w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 848w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 1272w, https://substackcdn.com/image/fetch/$s_!lbjD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1d4a11e9-b18b-40a7-8c17-05ba2a6f8d3d_1580x1580.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Entrepreneur and her team</figcaption></figure></div><p>Her startup has developed an AI-optimized development process, and her team of engineers and domain experts can take a custom order from idea to production in half a business day. </p><p>The company pitch is &#8220;Your idea - live in production in one business day, or we&#8217;ll give you your money back.&#8221;</p><p>The team is still tiny: two domain experts and two engineers who manage their AI coding farm, which does much of the heavy lifting. </p><p>Business has been growing fast. </p><p><em>But so have losses on the one-day guarantee</em>&#8230;</p><h2>The Weekly Business Review</h2><p>The Entrepreneur is unhappy. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aekg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aekg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 424w, https://substackcdn.com/image/fetch/$s_!aekg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 848w, https://substackcdn.com/image/fetch/$s_!aekg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 1272w, https://substackcdn.com/image/fetch/$s_!aekg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aekg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png" width="1456" height="743" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:743,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1576079,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aekg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 424w, https://substackcdn.com/image/fetch/$s_!aekg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 848w, https://substackcdn.com/image/fetch/$s_!aekg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 1272w, https://substackcdn.com/image/fetch/$s_!aekg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d40830b-9c10-47d3-9748-00990cae6e53_3904x1993.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Weekly Business Review</figcaption></figure></div><p>&#8220;The losses on the one-day guarantee are starting to hurt us,&#8221; she tells the Lead Engineer. </p><p>&#8220;We designed our process to deliver four daily orders with two engineers. Our throughput is below target, and our work in progress is below what it needs to be to meet this target!&#8221;</p><p>&#8220;Our engineers need to be more productive. We need to increase our velocity!&#8221;</p><p>The Lead Engineer looks at the same dashboard and says, &#8220;Look, our engineering cycle time and customer lead times are exactly where we designed our systems to be. &#8221;</p><p>&#8220;We have a customer lead time SLA of 1 business day. Our current development cycle time is 0.54 days,  and our customer lead time is 0.64 days on average. That&#8217;s well within our SLA.&#8221;</p><p>&#8220;You do realize this is not a factory making the same widgets repeatedly, right?&#8221;</p><p>&#8220;Every order and change request is different. Our engineering skills in mapping customer orders to the right prompts for the AI, correcting for hallucinations<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>, and keeping all our delivery pipelines green through all this are what make this operation work!&#8221; </p><p>&#8220;Our team already feels like they can barely keep up with the work coming in!&#8221; </p><p>&#8220;We designed our process around maintaining predictable development cycle times and customer lead times, and we are meeting these commitments. Why are we focusing on velocity and productivity instead of customer response time?&#8221;</p><p>The Entrepreneur is puzzled but agrees the Lead Engineer has a valid point. </p><p>&#8220;But why do we often fail to meet our one-day customer guarantee if we are within the SLA?&#8221; she asks. </p><p>The Lead Engineer does not have an answer. </p><p>&#8220;Maybe something is wrong with the data?&#8221; he asks.</p><p>They are at an impasse, so they engage an Advisor to help resolve the question. </p><h2>The Queueing Theorist</h2><p>&#8220;I need you to help us understand why we are losing money on the one-day guarantee when all our operational flow metrics seem to say we are doing fine,&#8221; the Entrepreneur says to the Advisor. </p><p>The Advisor spends time with the team to understand how the operation works, examines how they measure their processes, and requests some additional information. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q-zS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q-zS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 424w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 848w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 1272w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q-zS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png" width="1308" height="1306" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1306,&quot;width&quot;:1308,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2163825,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!q-zS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 424w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 848w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 1272w, https://substackcdn.com/image/fetch/$s_!q-zS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F961ca5dd-3d61-468f-ba9e-cde44c9a84f3_1308x1306.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Queueing Theorist</figcaption></figure></div><p>&#8220;There is an important metric you are not currently tracking, which should help us get to the bottom of what is happening here.&#8221;</p><p>&#8220;I&#8217;ll need to understand how and when your customer orders are coming into your process,&#8221; she says. </p><p>She reviews some data from the company order management system and builds a model of the <em>customer experience</em> to help the team understand what is going on. </p><p>It does not take long to resolve the first puzzle that concerns the Entrepreneur the most: is velocity/productivity good enough? </p><p>&#8220;The first thing to note is that none of your metrics are looking at the inputs to your process,&#8221; the Advisor says to the Entrepreneur.</p><p>&#8220;Your flow metrics will vary depending on how heavily your process is being <em>loaded concurrently</em> by customer demand, so the first thing to check is to see what that demand looks like.&#8221;</p><p>&#8220;A quick analysis shows that you receive an average of 2.4 orders daily, which, not surprisingly, matches your throughput of 2.4 orders daily.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aoKG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aoKG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 424w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 848w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 1272w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aoKG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png" width="1456" height="826" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:826,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:167092,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aoKG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 424w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 848w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 1272w, https://substackcdn.com/image/fetch/$s_!aoKG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17eb7e59-a850-4f24-9dee-8a67fafda077_1944x1103.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>&#8220;So, we can confidently say that your velocity/productivity is <em>not</em> your problem. You can&#8217;t ship orders any faster than they are coming in!&#8221;</p><p>&#8220;But let&#8217;s look at the underlying principle that lets me make this claim.&#8221;</p><p>&#8220;Your <em>service rate - </em>the rate at which you can service orders with two engineers when each order takes half a day, is four orders per day, and the <em>variability</em> in your development cycle time is <em>very low</em>. Your arrival rate, at 2.4 daily orders, is well below this rate. We can confirm this from your current cycle time data.&#8221;</p><p>The critical metric I mentioned that you should pay close attention to is&nbsp;<em>utilization&#8212;</em>the <em>ratio of these two numbers</em>. </p><p>This is 0.6 (2.4/4), and <em>as long as this number is less than 1</em>, your throughput will <em>always match your arrival rate </em>because you have enough capacity to <em>keep up with the demand</em>.&#8221;</p><p>&#8220;However, talking to your engineers, they already feel overwhelmed with the customer demand today, and you are starting to see some customers experience larger lead times.&#8221;</p><p>&#8220;This is not surprising at these utilization levels, and, as we&#8217;ll see, this is also the underlying reason for your losses on the one-day guarantee.&#8221;</p><p>The Entrepreneur says, &#8220;I don&#8217;t understand. What does utilization have to do with customer lead time?&#8221;</p><p>&#8220;If we want to be efficient, shouldn&#8217;t we maximize our utilization and ensure we are getting the most productivity from our engineers? They are our biggest expense after AI costs. They are also very hard to find these days.&#8221; </p><p>&#8220;No, unfortunately.&#8221; says the Advisor. </p><p>&#8220;Your business model relies on high throughput and engineering productivity, which is higher when running at higher utilizations. However, you can only go so far with that strategy since you also have money riding on short customer lead times because of your money-back guarantee.&#8221;  </p><p>&#8220;Customer lead times <em>increase</em> as you increase utilization.  So throughput/productivity and customer lead time are&nbsp;<em>always</em>&nbsp;in tension.&#8221; </p><p>&#8220;Please explain how this can be. I&#8217;m really curious now! It seems I am missing some fundamental piece of the puzzle here,&#8221; says the Entrepreneur. </p><p>&#8220;Yes, this is a common confusion. To understand why, we need to understand the impact of <em>queueing&nbsp;</em>in your system.&#8221; says the Advisor. </p><h2>Queueing</h2><p>&#8220;You&#8217;ve designed a highly optimized delivery process, and looking at the data, each custom order does indeed take around 0.5 days to go from start to finish. There is minimal variability here, and it&#8217;s a tribute to the technology and process capabilities you&#8217;ve built around it!&#8221;</p><p>&#8220;However, your business model has not accounted for the variability in how and when customer orders <em>reach </em>this process, and here we run into the fundamental constraint of <em>concurrency.&#8221; </em> </p><p>&#8220;If a customer order arrives when your team is busy processing orders, then that order has to wait until the team can work on it. This wait time becomes significant if many orders arrive <em>within a short window</em>. This is what we call <em>queueing.</em>&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kIa7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kIa7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 424w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 848w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 1272w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kIa7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png" width="1456" height="1016" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1016,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:884573,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kIa7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 424w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 848w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 1272w, https://substackcdn.com/image/fetch/$s_!kIa7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a719372-0b75-44ed-ade0-4f97ed7d3501_4918x3433.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Queueing as an emergent behavior</figcaption></figure></div><p></p><p>&#8220;In your case, the <em>impact of</em> <em>queueing </em>is reflected directly in your customer lead time. The random wait times due to queueing, added to your stable development cycle times, introduce significant <em>variability</em> into your <em>customer lead times</em>. This is the crucial factor you have overlooked in your business model and the flow metrics you are currently tracking.&#8221;  </p><p>&#8220;<em>Some fraction of your customers will experience lead times of well over a day</em>, even though <em>each order was processed in a half day or less internally</em>. These are the orders that are costing you money.&#8221;</p><p>&#8220;How do we fix this?&#8221; the Entrepreneur asks. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H2hS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H2hS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 424w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 848w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 1272w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H2hS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png" width="1222" height="1222" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1222,&quot;width&quot;:1222,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2329719,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!H2hS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 424w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 848w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 1272w, https://substackcdn.com/image/fetch/$s_!H2hS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F942b8884-c40b-42bf-bede-e6eaf05c5c69_1222x1222.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">It&#8217;s all about probabilities.</figcaption></figure></div><p>&#8220;You can&#8217;t fix this,&#8221; says the Advisor. </p><p>&#8220;Queueing is a phenomenon that emerges whenever you have concurrency constraints in your process. It&#8217;s often not easy to tell where and when this might emerge. It introduces an element of randomness into even the most deterministic process, especially when you don&#8217;t have control over demand.&#8221;</p><p>&#8220;We can never eliminate the probability of queueing emerging in a process with concurrency constraints. However, recognizing that you are dealing with a random process instead of a deterministic one gives you powerful tools to manage the <em>impact</em> of queueing much more strategically.&#8221;</p><p>&#8220;The important thing is determining the <em>probability</em> that queueing behavior will <em>cause</em> meaningful impacts on your business. In this case, it is clear this is happening, so the question is how <em>bad</em> the impact is and what your risks of this getting <em>worse</em> as your business grows are.&#8221; </p><p>&#8220;How do we do this?&#8221; asks the Entrepreneur. </p><p>&#8220;We&#8217;ll start by constructing a <em>causal model </em>for your process, something that will let you connect the output metrics you are currently tracking, like throughput, cycle time, and customer lead times, to the <em>controllable inputs </em>that <em>cause </em>the metrics to be the way they are.&#8221;</p><p>&#8220;We&#8217;ve seen many elements of this causal model already in the high-level analysis of productivity and throughput I gave you earlier. But there is <em>so </em>much more we can do once we build one, so let&#8217;s understand what one looks like for your business.&#8221; </p><p>&#8220;The causal model for your process is relatively simple. I&#8217;ll show you how we can use it not only to understand your current risks but also to understand what risks you face as your business grows and how to manage those risks strategically.&#8221;</p><p>&#8220;I can&#8217;t wait to dive into this!&#8221; says the Entrepreneur. </p><div><hr></div><p>In <a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-24c?r=fjllf">Part II</a>, The Advisor will show the Entrepreneur how she can use a queueing model to strategically manage key process-related risks for her business. </p><p></p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>A largely uncontroversial concept in 2034. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>Still a problem in 2034.</p></div></div>]]></content:encoded></item><item><title><![CDATA[The Polaris Flow Dispatch: Season 2]]></title><description><![CDATA[Causal Models for Product Development Flow]]></description><link>https://www.polaris-flow-dispatch.com/p/the-polaris-flow-dispatch-season</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/the-polaris-flow-dispatch-season</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Tue, 17 Sep 2024 11:01:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!PCfL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>Back from a Hiatus</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PCfL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PCfL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PCfL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp" width="1024" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:432972,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PCfL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!PCfL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47710f59-a43e-4a7d-bb2b-e1217cca41a8_1024x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>After a brief flurry of writing in the Summer of 2023 outlining some broad themes I wanted to explore in this blog, this publication promptly went on an extended hiatus. </p><p>I was wrestling unsuccessfully with scope creep and trying to simplify material that is mathematical at its core without being too technical. </p><p>In the end, I decided to put it aside until I felt I could explain things in a way that struck the right balance, and after a year of reading and experimentation with drafts and talks, I&#8217;m back to make another pass. </p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><h2>The Broad Themes</h2><p>The themes explored in this blog remain unchanged: the relationship between value creation and the flow of work in software product development, the connection between economic models and value streams, and the underlying mathematical foundations that help us reason reliably about product development flow with real-time data. </p><p>Last summer&#8217;s posts can be considered informal, tactical explorations of key themes at a very high level. </p><p>In &#8220;<a href="https://www.polaris-flow-dispatch.com/p/stability-first?utm_campaign=post&amp;utm_medium=web">Stability First</a>,&#8221; we discussed the importance of stabilizing flow in product development. In &#8220;<a href="https://www.polaris-flow-dispatch.com/p/stable-does-not-always-mean-steady?utm_campaign=post&amp;utm_medium=web">Stable does not always mean steady</a>,&#8221;  we discussed what it intuitively means for a process to be stable. In&nbsp;&#8220;<a href="https://www.polaris-flow-dispatch.com/p/flow-signals-and-flow-metrics?utm_campaign=post&amp;utm_medium=web">Flow Signals and Flow Metrics,</a>&#8221;&nbsp;we looked at establishing a goal-oriented framework for flow metrics. Finally,  &#8220;<a href="https://www.polaris-flow-dispatch.com/p/throughput?utm_campaign=post&amp;utm_medium=web">Throughput!=&nbsp;</a>&#8221; examined the connections between flow metrics and economic outcomes. </p><p>This time, I plan to explore these themes, their underlying theories, and their mathematical foundations more deeply. While the content will be more technical, I aim to keep the discussion informal as much as possible without sacrificing rigor. </p><h2>A Key Focus: Queueing Theory </h2><p>As we advance, queueing theory and the importance of probabilistic models for reasoning about software development will be key focus areas for this blog.  </p><h4>The Lean Model</h4><p>I assume readers are already familiar  with concepts such as Little&#8217;s Law and the Utilization Law, as  they are applied in Lean/Agile Software development.  </p><p>We explored these informally in the posts &#8220;<a href="https://www.polaris-flow-dispatch.com/p/iron-triangle-of-flow?utm_campaign=post&amp;utm_medium=web">The Iron Triangle of Flow</a>,&#8221; &#8220;<a href="https://www.polaris-flow-dispatch.com/p/a-highway-at-capacity-is-not-a-parking?utm_campaign=post&amp;utm_medium=web">A Highway at Capacity is not a Parking Lot</a>,&#8221;  and &#8220;<a href="https://www.polaris-flow-dispatch.com/p/a-parking-lot-is-not-a-highway-at?utm_campaign=post&amp;utm_medium=web">A Parking Lot is not a Highway at Capacity</a>.&#8221; </p><p>While these concepts <em>stem from queueing theory</em>, their application in software development is <em>indirect</em>, via principles adopted in Lean manufacturing that <em>rely</em> on queueing theory for their validity.</p><p>The manufacturing domain allows for several simplifying assumptions, such as <em>predictable demand,</em> <em>repeatable production processes</em>, <em>low variability in task completion times</em>, and <em>deterministic work routing</em>. </p><p>These assumptions lead to simpler, quasi-deterministic queueing models from the perspective of general queueing theory. Specifically, as discussed in later posts, they assume that the <em>inputs</em>&nbsp;to a parameterized queueing model are known beforehand with reasonable certainty. </p><p>These assumptions enable the design of&nbsp;<em>stable</em>&nbsp;processes optimized to produce outputs efficiently given those inputs. They also allow the operational focus to shift to managing the process&#8217;s&nbsp;<em>outputs</em>&nbsp;and&nbsp;exceptions. </p><p>However, software development is far more dynamic and unpredictable, and none of these simplifying assumptions, <em>specifically those about deterministic inputs and stable processes</em>, apply.  </p><p>Lean software development introduces interventions such as WIP Limits, Pull Policies, and Constraint Management to&nbsp;<em>make</em>&nbsp;those assumptions fit within <em>specific bounded contexts</em> in a software development process. </p><p>While they have proven valuable in improving the flow of work and stability of development processes in smaller, localized contexts, these techniques become more unwieldy as we try to expand to broader and more general organizational scopes<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p>More fundamentally, the Lean approach ignores the stochastic nature of software development inputs. Modeling such processes falls comfortably within the scope of <em>general queueing theory.</em> </p><h4>General Queueing Theory</h4><p>Queueing theory is a general mathematical framework that explains how and why delays occur in processes under <em>resource constraints</em>. It highlights the importance of <em>concurrency</em> as a constraint to flow and allows us to characterize how <em>variability in demand and development capacity influences delays</em>. </p><p>In particular, in the general queueing theory model,&nbsp;<em>stochastic processes</em>&nbsp;are&nbsp;the <em>inputs</em>&nbsp;to a queueing system, and the theory uses probabilistic arguments to explain the&nbsp;<em>relationship between those inputs and the model&#8217;s outputs</em>.</p><p>This gives us powerful new tools to help us reason probabilistically about system stability, resilience, and the capacity to perform work in contexts where volatility and uncertainty are typical. </p><p>The themes we will explore are <em>general queueing theory</em> and its underlying probabilistic reasoning techniques,  the representation of product development value streams using <em>queueing networks</em>, and <em>causal models</em> that help us measure and model cause-and-effect relationships between process behavior and economic outcomes, even in complex adaptive environments. </p><p>While techniques such as probabilistic forecasting are becoming standard parts of Lean/Agile practice, viewed from the perspective of general queueing theory, they are still primarily forecasting <em>future output parameters</em> of a stochastic process based on the values of <em>past output parameters </em>of the same process. </p><p>This approach makes forecasts volatile, but more importantly, it does not provide a way to reason about <em>why </em>they are volatile. </p><p>I&#8217;ll argue that this is a consequence of starting with the simpler output-focused Lean model and that a model based on general queueing theory is a much stronger foundation for building forecasting models for software development. </p><p>Starting from the first principles of queueing theory and modeling software development as a network of inter-connected stochastic processes will help us build a more realistic picture and give us a robust set of  tools and techniques to reason rigorously about real-world software development. </p><h2>The Road Ahead</h2><p>Many of the problems we struggle to model today in software development are surprisingly similar to the ones that initially motivated the development of queueing theory in the early 20th century. </p><p>Over the past century, theory and applications have built on each other as practitioners used them to solve problems in various domains, including computer architecture, traffic analysis, healthcare, public services, and computer networking.</p><p>Many of these problems are isomorphic to the ones we struggle to describe and model accurately in software. While software development, some aspects of software development are more complex than many of these areas, the generality of queueing theory seems well-equipped to tackle even these complexities. </p><p>We will first see how elegant, well-understood techniques from queueing theory and queueing network models applied in other domains can answer many relevant questions in software product development and delineate the <em>bounded contexts</em> in which managers can use them to make critical economic decisions. </p><p>We&#8217;ll investigate new ways to model product development flow in complex adaptive systems, incorporate uncertainty at a foundational level into our reasoning about software processes, and reason causally about how process improvements can drive economic outcomes in software development. </p><p>Examining these concepts from a different perspective, we hope to provide practical insights that can help inform your approach to software product development. </p><h2>Warm-up: The Entrepreneur and The Queueing Theorist</h2><p>We&#8217;ll begin our exploration starting with a parable set in the near future. </p><p><em>Imagine the following scenario: AI has completely solved all</em>&nbsp;the problems we face today in software <em>delivery</em>. </p><p>And yet&#8230; many of the debates and challenges we face today, delivering <em>value</em> to customers, remain&#8230;</p><p>Check out the three-episode series first to get oriented around some of the discussions we&#8217;ll be delving into this season on The Polaris Flow Dispatch. </p><p><a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing?r=fjllf">Episode 1: </a>The Problem</p><p><a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-24c?r=fjllf">Episode 2</a>: The Analysis</p><p><a href="https://www.polaris-flow-dispatch.com/p/the-entrepreneur-and-the-queueing-bdb?r=fjllf">Episode 3</a>: Scenarios</p><p></p><p></p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>I don&#8217;t mean to discount structured approaches like Enterprise Kanban or TameFlow/Flow@Scale, Flight Levels, etc., in tackling the problem of managing the flow of work for these larger bounded contexts.</p><p>These remain challenging and complex problems that we are still exploring and developing solutions for as an industry.</p><p>Our concerns here are mainly about creating models of such processes so that we can reason more robustly about these larger contexts without ignoring the stochastic nature of the problem domain.</p><p>Our thesis is that starting with models based on general queueing theory provides a stronger foundation for this than starting with simplified models that implicitly adopt the assumptions of lean manufacturing.</p><p></p></div></div>]]></content:encoded></item><item><title><![CDATA[Stable does not always mean steady]]></title><description><![CDATA[Unwinding a common myth about stable flow]]></description><link>https://www.polaris-flow-dispatch.com/p/stable-does-not-always-mean-steady</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/stable-does-not-always-mean-steady</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Fri, 21 Jul 2023 17:52:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VP3U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VP3U!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VP3U!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 424w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 848w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 1272w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VP3U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png" width="1456" height="1198" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1198,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:305114,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VP3U!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 424w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 848w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 1272w, https://substackcdn.com/image/fetch/$s_!VP3U!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa7e5270d-cb74-4532-8fbb-b6c698a871df_1937x1594.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Stable and steady are independent. </figcaption></figure></div><p></p><p>The idea of <em>stable flow</em> often conjures up a picture of an assembly line churning out identical widgets of the same size and shape&nbsp;at a <em>steady</em> rate.&nbsp;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p><em>In fact, a system can be stable even if its outputs are not steady, and a steady output does necessarily mean the system is stable</em>.&nbsp;</p><h3><em><strong>A stable Scrum?</strong></em></h3><p>Consider a team that delivers a single feature towards a sprint goal in a 2-week sprint, followed by a 2-week sprint where they work with users to fine-tune the UX based on feedback and repeat this over and over again consistently.  </p><p>This process will have very different outputs (cycle time and throughput) if you measure them sprint by sprint.&nbsp;</p><p>The size and shape of work between sprints will probably look quite different.&nbsp;Their outputs measured over two-week windows may not look very steady.&nbsp;</p><p>But this can still be a&nbsp;<em>stable</em> system, provided all work that starts in a sprint is finished within a sprint or two. </p><p>In fact, <em>setting a single sprint goal</em> and pulling work into sprints based <em>only on this goal</em> can be a very effective mechanism to achieve stable flow. </p><h3><em><strong>Stability is a business goal.</strong></em></h3><p>When talking about stability, the observation window you are measuring over and the frequency with which you take measurements (to compute averages) are very important.</p><p>For example, in our example above, if you take repeated weekly measurements over 30-day windows, you may find your output metrics are steady, and the system meets the conditions for stability, even if they are neither when measured across a narrower observation window of two weeks<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>. </p><p>The trick, of course, is to make your system stable over some policy driven window  <em>that meets the needs of your business. </em></p><p>This is determined by how quickly your customers need you to ship changes to them and how quickly  you need to respond to their needs to compete effectively in the market. </p><p>In general, the <em>steadiness of output</em> is not easy to achieve because of the nature of software development, but <em>it is not particularly important anyway</em>. </p><p>What matters is the <em>stability</em> of the whole process. </p><p>A stable system <em>only starts as much work as it can deliver within some policy driven (execution) window</em>, which then makes it easier to coordinate the flow of work between product development and the rest of the business. </p><p>A stable flow is the first step in being able to synchronize your product development process with the pace at which your customers need you to deliver for them, and the conditions of stability provide a wide range of options to design a process that lets you do this.  </p><h3><em><strong>What makes a process stable? </strong></em></h3><blockquote><p>In general, you can&#8217;t say anything about stability simply by looking at the steadiness of its outputs. </p><p>You have to look at the outputs <em>relative </em>to the work in progress over an observation window <em>that the business gets to choose</em>.</p></blockquote><p>What matters for stability is that the <em>WIP</em> and the <em>average age of WIP</em> stay <em>bounded</em> over a <em>suitably chosen observation window</em>, that work starts and finishes at roughly the same rate, and that you finish all the work that you start. &nbsp;</p><p>These are <em>fairly weak requirements</em>, and there are quite a few different ways to meet them. </p><p>You can lean directly into the manufacturing analogy as Kanban does, hold your WIP constant, and use a disciplined policy of only pulling in a new item when some item finishes. </p><p>This will give you <em>steady throughput</em> but <em>not necessarily a steady cycle time or a stable process unless you also place a limit on the age of WIP</em>. </p><blockquote><p>For stability in a software process, you need <em>explicit</em> policies in your process to manage both the WIP amount <em>and the aging of WIP. </em></p><p>Further, <em>no matter what methodology you adopt</em>, you need to have some way of ensuring that <a href="https://open.substack.com/pub/thepolarisflowdispatch/p/keeping-work-moving?r=fjllf&amp;utm_campaign=post&amp;utm_medium=web">work keeps moving</a>. <em> </em></p><p>Otherwise your process will never be stable.</p></blockquote><h3><em><strong>Which quadrant is the right one?</strong></em></h3><p>In the figure, we give some examples of choices that can <em>meet the requirements of stability, steadiness</em>, or both. </p><p>Note that we are not suggesting that these are directly tied to which methodology you choose, <em>just that well-functioning implementations of these choices will tend to fall into these quadrants</em>. </p><p>Of the four quadrants in the figure above, the only one that <em>is always undesirable</em> is the top right one, where the process is <em>neither stable nor steady</em>. </p><p>You get this when you have unmanaged WIP and unmanaged scope/aging of work. </p><p>Depending upon the <a href="https://www.polaris-flow-dispatch.com/i/130738681/where-does-this-work-in-software">economic model of your business</a>, any one of the other options might be a workable solution for your context.</p><blockquote><p>Stability is a goal you aim for no matter what methodology you adopt.  </p><p>Even an ad hoc one. </p></blockquote><p>And the great thing is that stability represents a <em>process-agnostic process outcome</em> that you can measure <em>without knowing anything about the specific process you are using. </em></p><p>Most of the current methodologies we have today get us a good part of the way towards achieving this, provided you factor in the need for stability by focusing on how you scope work, manage WIP and start what you finish. </p><p>This is what makes the concept of stability so powerful to cut through the noise of the methodology wars. </p><p><em>Unfortunately, the parts you need for stability are often left out of the standard playbooks people get when they adopt one of these methodologies.</em> </p><p>So in practice, you can implement a process that falls into any of these quadrants, no matter which methodology you choose. </p><p>Most real-world implementations of any of these methodologies are neither steady nor stable. </p><p>Still, stability is the problem we need to solve to make the process work for the business.  </p><p>In the end, stability and steadiness are not something you get from the choice of your methodology but from how well <em>you implement them </em>with a clear focus on <em>stability. </em></p><p>It does not come for free simply by the choice of your methodology. </p><div><hr></div><p>In any case, don&#8217;t fall into the trap of thinking that trying to make software development stable means forcing the work to look like assembly line manufacturing.</p><p>That&#8217;s just a myth.</p><div><hr></div><p>Update (Oct 7th, 2025)</p><p>This post, written in July 2023, was an informal articulation of concepts that we can make very rigorous and formal with the help of Little&#8217;s Law.  <br><br>Please see our 2 part series from 2025 that fills in the math. <br><br></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;dff26d12-d7e9-49c8-acfa-2eb2a681c246&quot;,&quot;caption&quot;:&quot;What is flow?&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Flows Stabilize&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:26108691,&quot;name&quot;:&quot;Krishna Kumar&quot;,&quot;bio&quot;:&quot;Dr. Krishna Kumar is the Founder and CEO of Exathink Research, a technical advisory firm that helps software companies measure and improve product development flow. \nMore at exathink.com &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/20a997b3-1167-4216-b0fe-e617a0360412_1856x1856.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-10-05T14:01:16.749Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/$s_!vWrb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F401af8ca-3718-41fe-aac2-f0d379f2927f_1030x689.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://www.polaris-flow-dispatch.com/p/how-flows-stabilize&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:174280444,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:3,&quot;comment_count&quot;:0,&quot;publication_id&quot;:1625155,&quot;publication_name&quot;:&quot;The Polaris Flow Dispatch&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!Z1zn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6549fe35-8fc5-4ed0-840a-a0012436332a_1024x1024.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>As an updates to this post in 2025, we will note that back in 2023 when I wrote this post,  I was still quite wrong in the way way I was describing the role of measurement windows. As the we see in the newer post referenced above, the real thing we need to do to create stable processes is to use policies to create <em>enabling constraints that guarantee that the process will eventually stabilize when observed over a single, sufficiently long observation window. </em>This was not a point that was clear to me when this post was originally written in July 2023<em>. </em></p></div></div>]]></content:encoded></item><item><title><![CDATA[Keeping Work Moving]]></title><description><![CDATA[The physics of attention in software development]]></description><link>https://www.polaris-flow-dispatch.com/p/keeping-work-moving</link><guid isPermaLink="false">https://www.polaris-flow-dispatch.com/p/keeping-work-moving</guid><dc:creator><![CDATA[Krishna Kumar]]></dc:creator><pubDate>Sun, 09 Jul 2023 14:17:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QITC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QITC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QITC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 424w, https://substackcdn.com/image/fetch/$s_!QITC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 848w, https://substackcdn.com/image/fetch/$s_!QITC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 1272w, https://substackcdn.com/image/fetch/$s_!QITC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QITC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png" width="900" height="689" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:900,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:746905,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QITC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 424w, https://substackcdn.com/image/fetch/$s_!QITC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 848w, https://substackcdn.com/image/fetch/$s_!QITC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 1272w, https://substackcdn.com/image/fetch/$s_!QITC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F227d820e-f8c5-4769-bf3b-852d759b6632_900x689.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em><strong>Building software is not like working on an assembly line</strong></em>.&nbsp;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.polaris-flow-dispatch.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading The Polaris Flow Dispatch! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>One key difference lies in how work &#8220;moves&#8221; in software vs. on an assembly line. </p><blockquote><p>Newton&#8217;s First Law of Motion says,&nbsp;</p><p>&#120328;&#120367; &#120368;&#120355;&#120363;&#120358;&#120356;&#120373; &#120354;&#120373; &#120371;&#120358;&#120372;&#120373; &#120372;&#120373;&#120354;&#120378;&#120372; &#120354;&#120373; &#120371;&#120358;&#120372;&#120373; &#120354;&#120367;&#120357; &#120354;&#120367; &#120368;&#120355;&#120363;&#120358;&#120356;&#120373; &#120362;&#120367; &#120366;&#120368;&#120373;&#120362;&#120368;&#120367; &#120372;&#120373;&#120354;&#120378;&#120372; &#120362;&#120367; &#120366;&#120368;&#120373;&#120362;&#120368;&#120367; &#120376;&#120362;&#120373;&#120361; &#120373;&#120361;&#120358; &#120372;&#120354;&#120366;&#120358; &#120372;&#120369;&#120358;&#120358;&#120357; &#120354;&#120367;&#120357; &#120362;&#120367; &#120373;&#120361;&#120358; &#120372;&#120354;&#120366;&#120358; &#120357;&#120362;&#120371;&#120358;&#120356;&#120373;&#120362;&#120368;&#120367; &#120374;&#120367;&#120365;&#120358;&#120372;&#120372; &#120354;&#120356;&#120373;&#120358;&#120357; &#120374;&#120369;&#120368;&#120367; &#120355;&#120378; &#120354;&#120367; &#120374;&#120367;&#120355;&#120354;&#120365;&#120354;&#120367;&#120356;&#120358;&#120357; &#120359;&#120368;&#120371;&#120356;&#120358;.</p></blockquote><p>In assembly line work, this unbalanced force is exerted by the moving assembly line, which <em>keeps work in constant motion </em>unless someone <em>explicitly stops the line</em>.</p><p>In software development, the opposite is true. </p><blockquote><p>The only unbalanced force that can keep work moving is <strong>attention</strong>: from <strong>people</strong> with the right knowledge and skills to collaborate and <em>keep work in motion</em>.&nbsp;</p><p>Work stops moving when the attention is taken away or not in the right place at the right time.</p></blockquote><p>So odd as it might seem, software development and the famous Canadian sport of curling have much in common!</p><p>Both of them need constant attention on the &#8220;work&#8221; for it to keep moving through the &#8220;system,&#8221; particularly in the most knowledge-intensive parts of the process like UX design and coding. </p><p>There is no denying that the software development process's most valuable and knowledge-intensive parts are kept in motion by the force of human attention, at least in these early days of generative AI. </p><p>One of the critical arguments for automating the development process, wherever possible,  is to create an assembly line-like external force that keeps work moving through the pipeline without needing this constant human attention, particularly in the  non-value-added packaging and deployment phases.  </p><h3>So what?</h3><p>First, <em>cognitive load</em> has been recognized as a key limiting constraint to flow in software development <a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a>, but measuring this directly is tricky. </p><p>If, however,  we take the view that <em>focusing attention on a unit of work consumes cognitive capacity and turns it to motion</em> - a directly perceptible and potentially measurable property of work - then we have an <em>indirect</em> way of measuring the cognitive capacity and distribution of cognitive load within a system, by examining the motion of work within it. </p><p>This gives us concrete ways of measuring if changes made to organizations to facilitate the flow of work based on the basis of optimizing the cognitive load on teams are having their intended effect. </p><p>Second, in software development, it is often difficult to plan what work needs attention, from whom, and when,  even if we know everything that needs to be done and maybe even the order in which we want to do it.&nbsp;</p><p>This might make it feel like software development is inherently chaotic or complex and unpredictable. </p><p>But a straightforward way exists to manage this complexity and uncertainty. </p><blockquote><p><em>Watch the work in progress and look for the work that is not moving</em>.&nbsp;</p><p>If we can accurately measure the &#8220;motion&#8221; of software work, we can identify imbalances between cognitive capacity and demand in the system lie and what, if anything, needs to be done about it.</p></blockquote><p>This is important because motionless work is a key indicator of an <em>unstable system</em>, a system that takes on more work than it can deliver.  </p><h3>Motion and Instability</h3><p>If you recall <a href="https://www.polaris-flow-dispatch.com/i/129527154/what-makes-a-system-stable">the four conditions for system stability</a>, the critical condition impacted by this is the fourth one.</p><blockquote><p><em>The average age of the units of work in progress is neither increasing or decreasing unboundedly. </em></p><p>Work that stops moving continues to <em>age in the system</em>, and the longer it stays immobile, the greater the impact on the average age on work in progress in the system, and the likelihood that it will violate the fourth condition pushing the system into instablity.</p></blockquote><p>However, <em>if we can reason rigorously about the motion of work</em>, we have a very practical principle we can apply to manage this condition for stability.</p><p>We call it the &#8220;Keep Work Moving&#8221; principle.  </p><blockquote><p>If <em>the first three conditions for stability are satisfied</em>, and in addition, we can keep all the work in the system moving at all times, then the system will be stable.  </p></blockquote><p></p><h3>Why &#8220;Keeping Work Moving&#8221; Matters</h3><blockquote><p>The key idea is that the system should only take on as much work that it can keep moving at all times.</p></blockquote><p>In software, the aging of work is just as critical a factor in creating instability as the amount of work in progress and the ability to visualize the &#8220;motion&#8221; of work, together with policies that are designed to regulate the flow of work in response to the slowing or stalling work are critical. </p><p>This, in turn, sheds light and provides tools to manage imbalances in cognitive capacity and load across a system, which is a critical constraint in software development work. </p><p>If all work in progress is moving at all times, then the cognitive load on the system is within manageable levels. Otherwise, there are imbalances that need to be identified and addressed. </p><p>You can think of &#8220;<em>Keep Work Moving</em>&#8221; as a principle we need in software development in addition to the principles of <em>&#8220;Limit WIP" </em>and <em>&#8220;Pull Work&#8221;</em> used to manage the number of items in the system and the rate at which work is accepted into the system  at any time,  to stabilize flow through a system. </p><p>There are essential relationships between all these principles, which we will explore later in our series. </p><p>The &#8220;Keep Work Moving&#8221; principle<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a>, combined with measuring and visualizing the motion of work, gives us some useful tools to manage aging work actively and regulate the flow of work when aging causes a system to move away from stability.</p><blockquote><p>Analyzing the impediments to &#8220;Keeping Work Moving&#8221; can be a powerful tool for system analysis and improvement and can shed light on process inefficiencies, skill gaps in delivery, knowledge gaps and constraints, and true capacity to deliver work in a stable fashion, among many others.</p></blockquote><p></p><p>Thanks for reading. </p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p>The seminal work here is <a href="https://teamtopologies.com/">Team Topologies</a> from Mathew Skelton and Manuel Pais. </p><p>More recently, Dr. Craig Statham and Stephen Walter introduced a set of formal techniques for reasoning about the relationship between cognitive load and flow  as part of their work on the <a href="https://skilupit.thinkific.com/courses/take/value-stream-reference-architecture-paper/pdfs/45203720-value-stream-reference-architecture-paper">Value Stream Reference Architecture</a>.  This work includes a graph-theoretic technique to measure cognitive load in a system directly. This inspired me to make the connection between cognitive load and motion analysis, a key aspect of how we approach product development flow in <a href="https://www.exathink.com/take-tour-features/the-latency-chart">The Polaris Advisor Program</a>. I am confident that there are deeper connections to be established between their formalism and the laws of flow as described by queueing theory, which is our primary theoretical lens for analyzing flow. </p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p>The &#8220;Keep Work Moving&#8221; principle is closely related to Flow Efficiency, but I view this as a fundamental principle that is first used to make a system stable and later used to improve flow efficiency once we have established stability. </p></div></div>]]></content:encoded></item></channel></rss>