Installer Controller Software Discovery via SAM Approval

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Software Asset Management (SAM) solutions for software discovery in computer environments often lead to unnecessary resource usage due to redundant scans and high maintenance costs, especially in diverse business enterprise computing environments.

Innovation Solution

A method and system where an installer controller detects software installer attempts, queries a SAM server for approval status, executes the installer based on the status, and updates discovery signatures, thereby reducing redundant scans and maintenance costs by dynamically managing software inventory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If software catalogs are distributed to agents for scanning filesystems and registries, then software discovery capability is improved, but computing resources are wasted on redundant scans and maintenance costs increase

Engineering Contradiction:
Improvesoftware discovery capabilityVSAvoidcomputing resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system performs software discovery at installation time by detecting installer execution and aggregating installation results. This preliminary action captures software inventory data when it is most accurately available, eliminating the need for subsequent redundant scans by agents.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The installer controller automatically detects installer execution, queries approval status, executes installations, and aggregates results without requiring external agents to scan filesystems and registries. The system serves itself by leveraging the installer process as the discovery mechanism.

Inventive Principle:
Principle #25Self-service

2Measurement precision

If agents perform comprehensive scans of filesystems and registries, then software inventory accuracy is improved, but maintenance costs become prohibitive

Engineering Contradiction:
Improvesoftware inventory accuracyVSAvoidmaintenance costs
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The installer controller automatically performs discovery by detecting installer execution and aggregating results. This self-service approach eliminates the need for external agent maintenance, reducing maintenance costs while maintaining accurate software inventory through direct observation of installation processes.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system extracts software discovery functionality from external agents and integrates it directly into the installer controller. This extraction eliminates the maintenance burden of managing separate agent software while preserving accurate discovery capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If software catalogs are maintained centrally, then software control is improved, but network traffic increases due to distribution and updates

Engineering Contradiction:
Improvesoftware controlVSAvoidnetwork traffic
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system extracts the software catalog from centralized distribution and embeds it within the installer controller as local discovery signatures. This extraction eliminates network traffic for catalog distribution while maintaining centralized control through server-based approval status verification.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The installer controller acts as an intermediary between the software installer and the SAM server. It locally stores discovery signatures and only communicates with the server for approval status queries, reducing network traffic while maintaining control.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Quantity of substance

If redundant software scans are performed, then software inventory completeness is improved, but productivity decreases due to unnecessary processing

Engineering Contradiction:
Improvesoftware inventory completenessVSAvoidprocessing efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system performs software discovery at installation time, capturing complete software inventory data before the software is actively used. This preliminary action ensures inventory completeness without requiring subsequent redundant scans that would reduce productivity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous software inventory accuracy by detecting installer execution events and automatically updating the inventory. This continuous action at relevant moments eliminates the need for periodic redundant scans, maintaining completeness while preserving productivity.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9170806B2Software discovery by an installer controller
Publication Date: 2015.10.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9170806B2 patent drawing
  • US9170806B2 patent drawing
  • US9170806B2 patent drawing

AI summary

A method for performing software discovery by an installer controller is provided and may include detecting, at a computer, an attempt by a software installer to execute on the computer, wherein during execution, the software installer modifies software on the computer. A Software Asset Management (SAM) computer server may be queried for an approval status corresponding to a software package provided by the software installer. The installer controller executes the software installer upon receiving on the returned approval status; aggregates a result from the execution of the software installer based on the software installer modifying the software on the computer; and updates a discovery software signature on the computer when the returned approval status is marked as known.