Bundling Assistant

The Bundling Assistant assigns a Product and Metric to each discovered Component within an IT environment, to help end users with software classification. BigFix Inventory provides multiple allowed bundling options within the software catalog, which the assistant will use when choosing the product assignment.

Assumptions

  1. Transparency of the process of assigning product and metric to the component instance by inducing bundling evidence each rule which was used to to finalize bundling will be visible to end user
  2. Stability of the classifications; so once something is assigned, it is not changed without user interaction.
  3. Adjust current functionality to give users ability to set preferred products with use of entitlement flag
  4. Simplify initial assessment if there are no references in the environment then alphabetical order is used.
  5. All assignments are done according to already defined catalog relations

High-Level Decision Flow

The assistant uses a structured, ranked set of rules to determine the Product/Metric assignment in case there are multiple bundling options, Priority of rules is according to the table order if one rule finds the bundling other are not evaluated:
Rule No. Rule Name Description
Bundling Rule 1 Upgrade-Based Inheritance If an existing component on the same computer is a valid inheritance source, the new component inherits its Product.
Bundling Rule 2 Single Bundling Option If there is only one Product that can be assigned to the component, use it.
Bundling Rule 3 Computer Context If the computer already uses a Product that fits this Component, inherit that Product.
Bundling Rule 4 Environment-Wide Pattern Matching If the Components across the environment consistently map to a specific Product, reuse it.
Bundling Rule 5 Final Tie Breaker Always prefer Products with entitlement when still multiple choice prefer product name in alphabetical order

Detailed Matching Logic

  • Upgrade Recognition
    A newly discovered component inherits the Product from an existing component on the same computer if that existing component qualifies under the selection criteria. Metric inheritance follows the same rule unless invalid for the new component.
    • Upgrade Inheritance Rule

      A newly discovered component inherits the Product from an existing component on the same computer if that existing component qualifies under the selection criteria. Metric inheritance follows the same rule unless invalid for the new component.

    • Upgrade Candidate Selection Criteria (in strict priority order)
      • Confirmed Components (Highest Priority): Components marked as "confirmed" are evaluated first and always preferred.
      • Latest Discovery (Most Recent Discovery Start Date): If multiple candidates remain, the component with the newest Discovery Start Date wins.
      • Present Components Over Non Present: If discovery dates tie, the following order applies:
        • Present Components (Discovery End Date blank)
        • Non Present: Components (Discovery End Date contains a date)
  • Single Bundling Option

    If there is only one Product that can be assigned to the component, use it.

  • Same computer context

    The following preference order is used for product selection for newly discovered components on the computer on which components were discovered.

    1. Existing Products on this computer : Confirmed
      1. Confirmed Product = At least one component with this product is confirmed on this computer
    2. Existing Entitled Products on this computer
    3. ExistingProducts on this computer

    Using the Best Fit Approach.

    If more than one product could be assigned (i.e., the situation is ambiguous), the Final Tie Breaker rule applies.

  • Environment-Wide Pattern Matching

    The following preference order is used for product selection for newly discovered components on the computer on which components were discovered.

    1. Existing Entitled Products on any computer
    2. Existing not Entitled Products

    Using the Best Fit Approach.

    If more than one product could be assigned (i.e., the situation is ambiguous), the Final Tie Breakerrule applies.

    If there is newly discover component which was never discovered before then it will prefer product name which is can be assigned to and this product is already bundled in the different computer Final Tie Breaker will be used

  • Best Fit Approach

    The Best Fit approach is designed to find exact same number of products which were discovered on the same computer or in the whole environment

    This means:

    • If a computer has 4 discovered components, and each component could potentially be assigned to different products, the algorithm will first look for a single product that can cover all 4 components.
    • If no product can cover all 4, it will search for a product that can cover 3 of them.
    • If no such product exists, it will look for one that covers 2, and so on.

    The goal of the algorithm is to assign the smallest number of products on this computer.

    If more than one product could be assigned (i.e., the situation is ambiguous) the final candidate will be picked up in the following order:

    • Is Entitled
    • Is Default Product Metric DESC (default first)
    • Product Name
    • Is Charged DESC (charged first)
    • Metric Display Name
    • Release ID DESC
  • Final Tie Breaker

    In case there are multiple products for the given components then products with the entitlement flag would be selected. If this is still ambiguous or there is no entitlement set then products will be picked up by component name matching case insensitive exact match. In other cases it will be picked up by following order.

    All candidates will be sorted as follows:

    • Is Default Product Metric DESC (default first)
    • Product Name
    • Is Charged DESC (charged first)
    • Metric Display Name
    • Release ID DESC

    And top from the list will be selected