Configuration Packages for Dynamic Software Customization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software configuration methods require time-consuming and costly re-writing of logic code for customization, leading to inflexible and static software solutions that are difficult to maintain and adapt to various applications.

Innovation Solution

The implementation of configuration packages that allow for dynamic infusion of user-generated inputs and configurations into decision flow templates, enabling users to modify and customize software solutions without altering underlying code, and providing a framework for generating configured software solutions that can be reused across different applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If logic code is re-written for customization, then software can be tailored for specific applications, but development time and cost increase significantly

Engineering Contradiction:
Improvesoftware customization capabilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The software is segmented into configurable components and templates that can be independently selected and combined. Configuration packages contain discrete decision flow templates, artifacts, and parameters that can be assembled without rewriting entire codebases, enabling rapid customization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Decision flow templates, artifacts, and configuration parameters are prepared in advance as reusable components. These pre-configured elements are stored in configuration packages that can be directly applied to specific applications, eliminating the need for time-consuming code rewriting during customization.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If logic code is re-written for customization, then software can be tailored for specific applications, but maintenance difficulty increases

Engineering Contradiction:
Improvesoftware customization capabilityVSAvoidmaintenance ease
Core Design Contradiction:
Adaptability or versatilityVSEase of repair

Solution Approach 1:

Customization is achieved through segmented configuration packages rather than monolithic code changes. Each package contains specific decision flow templates and artifacts that can be modified independently, making maintenance easier by isolating changes to specific components rather than the entire codebase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Standardized decision flow templates and artifacts are copied and reused across different applications through configuration packages. Instead of rewriting code for each customization, the same proven templates are instantiated with different parameters, ensuring consistency and reducing maintenance burden.

Inventive Principle:
Principle #26Copying

3Device complexity

If configuration packages are made static, then software structure is simplified, but flexibility for user modification is lost

Engineering Contradiction:
Improveconfiguration structureVSAvoiduser modification capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

Configuration packages are designed to be dynamic rather than static. The system allows runtime addition, removal, and modification of decision flow templates and artifacts within configuration packages. Users can dynamically adjust configurations without restructuring the entire software architecture, maintaining both simplicity and flexibility.

Inventive Principle:
Principle #15Dynamics

4Adaptability or versatility

If configuration packages include comprehensive features, then software functionality is enhanced, but package size and complexity increase

Engineering Contradiction:
Improvesoftware functionalityVSAvoidconfiguration package complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Comprehensive functionality is achieved through segmentation into modular configuration packages. Each package contains specific decision flow templates, artifacts, and parameters that can be selected based on application needs. This modular approach provides extensive functionality while keeping individual packages manageable in size and complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Configuration packages are designed with universal components that can serve multiple functions across different applications. Decision flow templates and artifacts are created to be broadly applicable, reducing the need for application-specific customizations and thereby reducing overall complexity while maintaining versatility.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS20230281011A1Workflow templates for configuration packages
Publication Date: 2023.09.07 FAIR ISAAC & CO INC
  • US20230281011A1 patent drawing
  • US20230281011A1 patent drawing
  • US20230281011A1 patent drawing

AI summary

Systems, machines, methods and products for generating a configured software solution using one or more configuration packages. A decision service may be configured to generate decision data based on a configuration package comprising user-generated input, a collection of configurations, and a decision flow template. The user-generated input may be used for selecting an artifact from an artifact library in a configuration database. The collection of configurations may be infused, dynamically, into the decision flow template. The decision flow template may be exposed for user modification. The decision flow template may be integrated into the configuration package in association with at least one configurable decision element and a user configuration selected from the collection of configurations for specifying one or more parameters in the artifact. The artifact and the user configuration may be combined with the decision flow template to generate the configured software solution.