Service Abstraction Framework for Legacy Application Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy applications often struggle to access and utilize network-enabled devices and services due to their design limitations, requiring significant modifications and resulting in inflexible and inconvenient solutions, especially in large enterprises.

Innovation Solution

A service abstraction framework that includes a client proxy configured to initiate out-of-band communications and transactions, handling authentication, billing, and other credential issues, allowing legacy applications to access remote services without direct involvement with service providers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If legacy applications are modified to access network-enabled devices directly, then adaptability to new devices is improved, but device complexity and modification requirements increase

Engineering Contradiction:
Improveadaptability to network-enabled devicesVSAvoidapplication modification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a service provider framework that acts as an intermediary between legacy applications and network-enabled devices. The framework includes service providers that implement device drivers and communication protocols, allowing legacy applications to access network devices without direct modification. The service provider mediates the interaction by handling device-specific protocols and presenting a standardized interface to the application.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system is segmented into distinct layers: legacy applications, service providers, and network devices. This segmentation allows each layer to operate independently with well-defined interfaces. The service provider layer handles the complexity of network device communication, while legacy applications remain unchanged and interact only through standard interfaces.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If service providers implement custom frameworks for each device, then device-specific functionality is improved, but system complexity and installation burden increase

Engineering Contradiction:
Improvedevice-specific service functionalityVSAvoidnumber of service provider frameworks
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The service provider framework is designed to be universal and multi-functional. A single service provider infrastructure can handle multiple types of network devices and services through standardized interfaces and protocols. The framework provides common functionality for authentication, billing, and device communication that can be applied across different device types, reducing the need for separate custom frameworks.

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

3Reliability

If authentication and billing are handled separately from data flow, then security is improved, but communication overhead increases

Engineering Contradiction:
Improveauthentication securityVSAvoidauthentication communication time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Authentication and billing credentials are established in advance through preliminary actions. The service provider framework pre-authenticates users and pre-negotiates billing arrangements before actual data transfer occurs. This allows authentication to happen once rather than with each data transaction, reducing communication overhead while maintaining security.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7945949B2Providing remote services to legacy applications
Publication Date: 2011.05.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7945949B2 patent drawing
  • US7945949B2 patent drawing
  • US7945949B2 patent drawing

AI summary

A developer can provide complex services to existing legacy applications using one or more components configured to tap into a service abstraction framework. In one implementation, for example, a developer of a remote service provider adds one or more authentication attributes to the remote service provider, and further creates a local client driver that incorporates a client proxy. When a legacy application generates a function request (e.g., to print, send a text message, initiate a voice communication), the client proxy intercepts the request through an appropriate communication subsystem, and relays the request to the server proxy. The server proxy determines the extent to which authentication measures may be required. If required, the client proxy can initiate out-of-band processing with various authentication managers to validate/process the request at the remote service provider.