Dynamic Marketing SDK Rules Engine for Mobile Apps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current mobile applications lack the ability to dynamically update marketing outcomes based on user behavior, as they rely on hardcoded coupling between user actions and marketing outcomes, limiting targeted marketing and flexibility in response to shifting demographics and usage patterns.

Innovation Solution

A marketing software development kit (SDK) is introduced that acts as an interface between native mobile application code and a server-side marketing platform, allowing marketers to configure dynamic outcomes and rules independent of application development, enabling the mobile application to display in-app messages and perform actions not hardcoded into the app.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If hardcoded coupling between user actions and marketing outcomes is used in mobile applications, then implementation simplicity is improved, but adaptability to dynamic marketing needs deteriorates

Engineering Contradiction:
Improveimplementation simplicityVSAvoidadaptability to dynamic marketing needs
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system segments the marketing outcome configuration from the application code by introducing a separate rules engine that receives events from the mobile app and determines outcomes dynamically. This allows the app code to remain simple while the marketing logic is separated into a configurable rules management system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamics by replacing hardcoded static mappings with a dynamic rules engine that can evaluate conditions and determine outcomes in real-time based on user behavior, campaign settings, and other variables. The rules can be updated without code changes, enabling adaptive marketing responses.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If hardcoded coupling between user actions and marketing outcomes is used, then development collaboration requirements are reduced, but targeted marketing capability deteriorates

Engineering Contradiction:
Improvedevelopment collaboration requirementsVSAvoidtargeted marketing capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary rules engine between the mobile application and the marketing outcomes. This mediator receives user action events from the app, evaluates them against configurable rules, and determines appropriate outcomes. This allows marketers to configure targeted marketing strategies independently of application developers.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If dynamic updates of marketing outcomes are enabled, then marketing responsiveness is improved, but system complexity increases

Engineering Contradiction:
Improvemarketing responsivenessVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the marketing outcome determination logic from the mobile application code and places it in a separate rules engine. This extraction allows dynamic marketing updates to be implemented by modifying rules in the engine rather than updating application code, reducing the complexity impact on the core app while enabling responsive marketing.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11074065B2Rule-based dynamic command triggers in mobile applications
Publication Date: 2021.07.27 SALESFORCE INC
  • US11074065B2 patent drawing
  • US11074065B2 patent drawing
  • US11074065B2 patent drawing

AI summary

Methods, systems, and devices for data processing at a software development kit running in a mobile device are described. A software development kit may receive, from a mobile application running on the mobile device, a logged event indication in response to an event occurring within the mobile application. The software development kit download, from an application server and before receiving the logged event indication, a data payload including a set of triggers, a set of rules associated with the set of triggers, and a set of processing commands associated with the set of rules. The software development kit may then identify the received logged event indication as a trigger from the set of triggers, evaluate a rule associated with the trigger based on the identifying, and process a processing command associated with the rule, where the processing command includes utilizing native code of the mobile application.