Edge Computing Platform for Dynamic RIA Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Delivering Rich Internet Applications (RIAs) to client devices faces challenges such as performance issues due to large code downloads, security concerns from untrusted sources, and e-commerce difficulties in targeting advertisements effectively.

Innovation Solution

An edge computing platform that uses a content distribution network to analyze client device behavior and usage patterns, modifying software applications dynamically during execution, allowing for on-demand delivery, fine-grained code transfer, and integration of advertisements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If Rich Internet Applications are delivered to client devices, then application functionality is provided, but network bandwidth requirements increase and performance deteriorates

Engineering Contradiction:
Improveapplication functionalityVSAvoidnetwork bandwidth
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent segments the software application into multiple components: a core runtime environment that remains on the client device, and individual application modules that can be downloaded on-demand. This segmentation allows the system to provide full application functionality while minimizing network bandwidth usage by only transferring code when specific applications are executed, rather than downloading entire application suites in advance.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If code is downloaded from multiple sources to provide application functionality, then application versatility improves, but security risks increase from untrusted sources

Engineering Contradiction:
Improveapplication functionalityVSAvoidcode security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a trusted intermediary component - the runtime environment - that acts as a mediator between multiple code sources and the client device. This runtime environment verifies and manages code from various sources, providing a secure execution context that allows versatile application functionality while mitigating security risks through centralized trust management and code validation.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If large amounts of code are downloaded to clients, then application functionality is provided, but download cost and time increase

Engineering Contradiction:
Improveapplication functionalityVSAvoiddownload time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-installing a lightweight runtime environment on client devices before any application execution. This preliminary setup enables the system to subsequently download only small, specific application modules on-demand rather than requiring large preliminary downloads of complete applications, significantly reducing download time and cost while maintaining full application functionality.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9152411B2Edge computing platform for delivery of rich internet applications
Publication Date: 2015.10.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9152411B2 patent drawing
  • US9152411B2 patent drawing
  • US9152411B2 patent drawing

AI summary

An edge computing platform that provides on-demand delivery of Rich Internet Applications and other applications is disclosed. One embodiment includes an optional manager node and content distribution network (CDN) that include one or more compute nodes. The CDN collects information pertaining to execution of a software application. The CDN aggregates the information and transfers the aggregated information to the manager node. The manager node analyzes the information from the CDN and transfers results of the analysis to the CDN. The CDN receives a software application that is designed to be dynamically updated when executed at the clients. The CDN modifies the software application based on the information from the manager node. The CDN receives a request that pertains to the software application from a client device. The CDN transfers at least a portion of the modified software application to the client.