How Would Steve Jobs Connect the Dots in Your Supply Chain?

11 Apr How Would Steve Jobs Connect the Dots in Your Supply Chain?

Share this pageShare on LinkedIn
Linkedin
Tweet about this on Twitter
Twitter
Email this to someone
email

During Stanford University’s June 2005 commencement speech, Steve Jobs shared “You can’t connect the dots looking forward; you can only connect them looking backwards.” Though Jobs went on to speak about character providing inspiration to the graduates, this quote can also relate to how we should look at improving supply chain metrics that have correlation. With an increase in data and the sources of information, a new means for business value can be achieved by correlating a group of supply chain metrics from disparate systems to provide insight and cause/effect relationships. We can then “connect the dots” between what’s called indirect KPIs versus direct KPIs.

First, let’s review the difference between direct and indirect KPIs:

1. Direct KPIs are the metrics which result from drilling down or drilling up on metrics. In a typical supply chain organization, one example of a direct KPI is Inventory with sub-metrics like raw material, work in process, and finished goods. Inventory can be evaluated at any time as we add each of these sub-metrics together, or drill down further as needed. Another example of a direct KPI is Revenue… where we can drill down and further evaluate by division, location, etc. Most supply chain analytical systems work with metrics in this manner, since the data is collected from the same system rolled very straightforward.

2. Indirect KPIs are those which impact other metrics but NOT found within a straightforward “drill-down” or “drill-up” manor. These are metrics which correlate to or impact other KPIs. Indirect KPIs are much harder to determine (versus simply adding up numbers in our earlier inventory or revenue examples). The power of using indirect KPIs though provide amazing insights into issues and drive improvements.

 

Normally, direct KPIs can tell a business what happened; whereas indirect KPIs help organizations learn what to do differently by connecting the dots to determine factors which truly impact performance. So now is time to ask: “How can we connect the dots?” First, start with tribal knowledge.  Ask some basic questions about the key metrics which need improving and any general knowledge of what impacts them:

What causes product to be late?

Is it delays in manufacturing?

Poor yields?

Late suppliers?

Supplier quality?

Each of the potential reasons open up a new set of KPIs.  Rather than continuing infinitely, drill down and across into the metrics until a set of actionable KPIs can be focused upon. Once the dots are connected on a metric that can impact the business, determine the data source for all the metrics in the Indirect KPI trail of dots.  Think out of the box on this trail of dots – these may not be static data sources (your ERP system, your accounting system, etc.). An important factor is how often these metrics are refreshed. If one KPI is refreshed in real-time and another is refreshed on a quarterly basis, the accuracy and actions-to-take may be harder to develop.

 

Think of this case study… a global manufacturer called “Ghostly Spirits” is struggling with Adherence to Plan (ATP). This metric defines if the date and quantity of finished product received by a distribution center was the actual plan.  One of the direct KPIs of Adherence to Plan is Inventory.  A direct KPI of Inventory is raw material (the glass bottles in which this company’s spirits are contained for sale). Since raw materials look high, we access data and metrics from manufacturing and supplier management and determine a reason for high raw materials is because of poor supplier quality, causing ATP to fall short. By managing Indirect KPIs, we find that supplier quality inconsistency is adversely affecting Adherence to Plan.

Share this pageShare on LinkedIn
Linkedin
Tweet about this on Twitter
Twitter
Email this to someone
email
No Comments

Post A Comment

[gravityform id="7" title="false" description="false" ajax="true"]
<div class='gf_browser_chrome gform_wrapper' id='gform_wrapper_7' ><div id='gf_7' class='gform_anchor' tabindex='-1'></div><form method='post' enctype='multipart/form-data' target='gform_ajax_frame_7' id='gform_7' action='/how-would-steve-jobs-connect-the-dots-in-supply-chain/#gf_7'> <div class='gform_body'><ul id='gform_fields_7' class='gform_fields top_label form_sublabel_below description_below'><li id='field_7_1' class='gfield form-field-name gfield_contains_required field_sublabel_hidden_label field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label gfield_label_before_complex' >Name<span class='gfield_required'>*</span></label><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name' id='input_7_1'> <span id='input_7_1_3_container' class='name_first' > <input type='text' name='input_1.3' id='input_7_1_3' value='' aria-label='First name' aria-required="true" aria-invalid="false" placeholder='First Name'/> <label for='input_7_1_3' class='hidden_sub_label screen-reader-text'>First</label> </span> <span id='input_7_1_6_container' class='name_last' > <input type='text' name='input_1.6' id='input_7_1_6' value='' aria-label='Last name' aria-required="true" aria-invalid="false" placeholder='Last Name'/> <label for='input_7_1_6' class='hidden_sub_label screen-reader-text'>Last</label> </span> </div></li><li id='field_7_3' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_7_3' >Enter your email<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_3' id='input_7_3' type='text' value='' class='medium' placeholder='Enter your email' aria-required="true" aria-invalid="false" /> </div></li><li id='field_7_8' class='gfield field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_7_8' >Phone</label><div class='ginput_container ginput_container_phone'><input name='input_8' id='input_7_8' type='text' value='' class='medium' placeholder='Phone' aria-invalid="false" /></div></li><li id='field_7_7' class='gfield gfield_contains_required field_sublabel_below field_description_below hidden_label gfield_visibility_visible' ><label class='gfield_label' for='input_7_7' >Company<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_7' id='input_7_7' type='text' value='' class='medium' placeholder='Enter your company' aria-required="true" aria-invalid="false" /></div></li><li id='field_7_9' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_9' id='input_7_9' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></li><li id='field_7_10' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_10' id='input_7_10' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></li><li id='field_7_11' class='gfield gform_hidden field_sublabel_below field_description_below gfield_visibility_visible' ><input name='input_11' id='input_7_11' type='hidden' class='gform_hidden' aria-invalid="false" value='' /></li><li id='field_7_12' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_7_12' >Name</label><div class='ginput_container'><input name='input_12' id='input_7_12' type='text' value='' /></div><div class='gfield_description' id='gfield_description__12'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_7' class='gform_button button' value='WATCH THE VIDEO' onclick='if(window["gf_submitting_7"]){return false;} window["gf_submitting_7"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_7"]){return false;} window["gf_submitting_7"]=true; jQuery("#gform_7").trigger("submit",[true]); }' /><!-- Begin Daddy Analytics fields --><input type="hidden" name="" value="" /><input type="hidden" name="" value="" /><!-- End Daddy Analytics fields --> <input type='hidden' name='gform_ajax' value='form_id=7&amp;title=&amp;description=&amp;tabindex=0' /> <input type='hidden' class='gform_hidden' name='is_submit_7' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='7' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_7' value='WyJbXSIsIjkxNDIyMmFlMTAxZmQ0Y2JiZGRlMTcwMzZjMjBlNDQxIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_7' id='gform_target_page_number_7' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_7' id='gform_source_page_number_7' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div> <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_7' id='gform_ajax_frame_7'>This iframe contains the logic required to handle Ajax powered Gravity Forms.</iframe> <script type='text/javascript'>jQuery(document).ready(function($){gformInitSpinner( 7, 'https://d361pqspa6t978.cloudfront.net/production/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery('#gform_ajax_frame_7').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_7');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_7').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_7').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_7').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_7').removeClass('gform_validation_error');}setTimeout( function() { /* delay the scroll by 50 milliseconds to fix a bug in chrome */ jQuery(document).scrollTop(jQuery('#gform_wrapper_7').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_7').val();gformInitSpinner( 7, 'https://d361pqspa6t978.cloudfront.net/production/wp-content/plugins/gravityforms/images/spinner.gif' );jQuery(document).trigger('gform_page_loaded', [7, current_page]);window['gf_submitting_7'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}setTimeout(function(){jQuery('#gform_wrapper_7').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_7').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [7]);window['gf_submitting_7'] = false;}, 50);}else{jQuery('#gform_7').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger('gform_post_render', [7, current_page]);} );} );</script><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 7) {if(typeof Placeholders != 'undefined'){ Placeholders.enable(); }jQuery('#input_7_8').mask('(999) 999-9999').bind('keypress', function(e){if(e.which == 13){jQuery(this).blur();} } );} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [7, 1]) } ); </script>