Production Adjustments in ICM model - looking for ideas



  • We have an ICM (Incentive Compensation Management) model with a DAT03 module that is an upload (from our data hub > SQL query) of all the monthly transactions we need to pay IC on. It includes all the production amounts, sales reps, product type and many other dimensions.
  • Our module also applies production mounts to several (2-5) beneficiaries who receive production roll-ups of a given transaction.
  • There are various reasons why we need to occasionally adjust production amounts to something other than what the data feed is showing.
  • Currently, to accomplish these production adjustments, we manually check a Boolean to trigger an adjustment, manually enter the amount being adjusted, and enter a free form reason for the adjustment.
  • The manual production adjustments do not occur at the lowest level of dimensionality (DAT03 - i.e. all production data transactions), it occurs at a higher level called the product suite level, or the super suite level.
  • Our IC calculations have a pre-adjustment line item, and a post-adjustment line item, with the post-adjustment item factoring in the manual adjustment amount.

Problems with this process:

  • It requires manual math to determine all the correct transactions you want to adjust and add the amounts up. This can be prone to manual error.
  • With only a free form "adjustment reason" field, it makes looking back at prior adjustments, and reporting, nearly impossible to track.  Adding it policy numbers or product types would be more manual work that we wish to avoid.
  • We don't want to add many more fields to our DAT03 module (all production data transactions), because it's already large, and doing so would add decent amount of model space and complexity.
  • Adjustments have to be entered at all levels of our beneficiary roll-ups - which can be up to 5 separate times in some instances.

Anyone have ideas for a better process?




  • @KEVPAN,

    Certainly, improving the process for production adjustments in your Incentive Compensation Management (ICM) model is crucial for accuracy and efficiency. Here's a suggestion for a more streamlined and automated approach:

    1. Create an Adjustment Module:
      1. Develop a new module specifically for adjustments. This module should include dimensions like time, product suite, super suite, and any other relevant dimensions for adjustments.
    2. Adjustment Amount Line Item:
      1. Within the adjustment module, include a line item for the adjustment amount. This line item will store the adjusted amounts for each relevant dimension.
    3. Reason Code Line Item:
      1. Add a line item for reason codes. This can be a drop-down list or a text field where users can select or input predefined reason codes for adjustments.
    4. Automation Trigger:
      1. Instead of using a manual Boolean trigger, set up a mechanism that automatically triggers an adjustment when specific conditions are met. This can be based on a combination of conditions in your data, such as specific product suite levels, super suite levels, or other criteria.
    5. Adjustment Calculation:
      1. Modify your IC calculations to incorporate the adjustment module. Use a formula to factor in the adjustment amount from the adjustment module into your post-adjustment line item.
    6. Data Integration:
      1. Ensure that your adjustment module is integrated with the DAT03 module, allowing adjustments to be seamlessly applied at the relevant dimensions.
    7. Audit Trail:
      1. Include an audit trail by capturing the date and user details for each adjustment made. This can be automated using system-generated information.
    8. Reporting:
      1. Leverage the adjustment module for reporting purposes. You can easily track and analyze adjustments based on reason codes, time, or any other relevant dimension.

    By implementing these changes, you can automate the adjustment process, reduce the likelihood of manual errors, and provide a structured way to track and report adjustments over time. Additionally, this approach minimizes the need to add more fields directly to the DAT03 module, addressing concerns about model space and complexity.