Business Logic Extension Framework for Offline Client Functionality

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Client applications in client-server business environments face limited functionality when offline due to the absence of server-hosted business logic extensions, and existing solutions using scripts are cumbersome and difficult to deploy across multiple applications.

Innovation Solution

A server platform exposes message-based application services that include business logic extensions, which can be executed on the server or client, allowing seamless functionality whether online or offline, with synchronized data and logic extensions available for offline use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If business logic extensions are implemented on the server computer, then the functionality provided by server-side extensions is available when online, but the functionality is not available to a client application operating offline

Engineering Contradiction:
Improvefunctionality availabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the business logic extensions into separate components that can be executed independently on either the server or client side. The extension framework allows business logic to be divided into discrete, deployable units that can run in different environments, enabling offline functionality while maintaining server-side capabilities when online.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an extension framework as an intermediary layer between the client application and server computer. This framework enables business logic extensions to be deployed to the client and executed locally when offline, while still allowing synchronization and updates when connected to the server. The framework acts as a mediator that manages the deployment, execution, and versioning of extensions across both environments.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If scripts are used to allow custom business logic extensions by an offline client application, then some functionality is available offline, but the functionality is severely limited and integration with client application operation is difficult

Engineering Contradiction:
Improveoffline functionalityVSAvoidintegration difficulty
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent replaces the script-based mechanism with a more robust extension framework that uses compiled code and standardized interfaces. Instead of relying on limited scripting capabilities, the framework provides a full-featured execution environment that can host complex business logic extensions with the same capabilities as server-side extensions, while integrating seamlessly with the client application's operational framework.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If ISVs are responsible for deploying the extensions and managing versioning and maintenance, then custom functionality can be added, but the process is complicated, expensive, and time-consuming

Engineering Contradiction:
Improvecustom functionalityVSAvoiddeployment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent creates a universal extension framework that handles deployment, versioning, and maintenance automatically across both server and client environments. The framework provides standardized mechanisms for extension management that work consistently regardless of the deployment target, eliminating the need for separate, complex processes for each environment. This universal approach streamlines the entire extension lifecycle management.

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

Solution Approach 2:

The patent implements preliminary action by pre-configuring the extension framework with automated deployment and versioning capabilities before extensions are deployed. The framework is designed in advance to handle update management, conflict resolution, and synchronization protocols, so that when extensions are deployed, the complex management tasks are already handled by pre-established mechanisms rather than requiring manual intervention during deployment.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8356310B2Executing business logic extensions on a client computing system
Publication Date: 2013.01.15 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8356310B2 patent drawing
  • US8356310B2 patent drawing
  • US8356310B2 patent drawing

AI summary

A server platform exposes server-hosted application services to client applications. Calls to the server-hosted application services may be executed along with custom business logic extensions. A client platform is also provided that exposes client-hosted application services to a client application. The same business logic extensions that execute on the server platform can be utilized by the client platform. When a client application is online and connected to the server platform, the client application utilizes the server-hosted application services in the manner described above. When the client application is offline, the client application utilizes the client-hosted application services. The server platform synchronizes the business logic extensions to the client platform.