Cloud Platform Decoupling Software From Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cloud computing platforms are inflexible, limiting choices in application frameworks, runtime environments, and programming languages, making them unsuitable for enterprises that require governance, security, and higher control over web applications, and are often coupled with hardware resources, making customization and portability prohibitive.

Innovation Solution

A cloud computing environment that decouples software components from hardware infrastructure, allowing deployment of web applications using any choice of application framework, runtime environment, and programming language, and leverages virtual machines for dynamic scaling, enabling flexible deployment on various hardware resources from laptops to enterprise data centers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If cloud computing platforms provide limited choices in runtime environments and application frameworks, then system complexity is reduced and ease of operation is improved, but adaptability and versatility deteriorate

Engineering Contradiction:
Improveease of operationVSAvoidadaptability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The cloud computing platform is designed to support multiple runtime environments (Java, .NET, PHP, Ruby, Python) and application frameworks simultaneously through a universal architecture. The software layer acts as a multi-functional interface that can adapt to different programming languages and deployment requirements, allowing enterprises to deploy applications built with various technologies without requiring separate platform infrastructures.

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

Solution Approach 2:

The platform enables dynamic configuration and customization of runtime environments through parameter changes. Enterprises can modify deployment parameters, select different runtime versions, and adjust application framework configurations to match their specific requirements. This flexibility allows the same underlying platform to serve diverse technological stacks by changing software parameters rather than hardware configurations.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If software layers are inextricably coupled to hardware resources, then device complexity is reduced and ease of manufacture is improved, but adaptability and ease of operation deteriorate

Engineering Contradiction:
Improveease of manufactureVSAvoidadaptability
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The system is segmented into distinct layers: hardware resources, virtualization layer, software layer, and application layer. This segmentation decouples the software layers from direct hardware dependencies, allowing the software to be configured and modified independently of the underlying hardware infrastructure. Enterprises can reconfigure software settings without hardware changes, enabling rapid adaptation to different deployment scenarios.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A virtualization layer acts as an intermediary between hardware resources and software applications. This intermediate layer abstracts hardware-specific details, providing a standardized interface that software can interact with without direct hardware coupling. This mediator enables enterprises to deploy applications across different hardware configurations while maintaining consistent software behavior and configuration management.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If cloud computing platforms are designed for simplicity with limited technology options, then ease of operation is improved, but adaptability for enterprise requirements deteriorates

Engineering Contradiction:
Improveease of operationVSAvoidreliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The platform transitions from a static, fixed-configuration system to a dynamic, configurable environment. Enterprises can dynamically adjust runtime environment settings, select different application frameworks, and modify deployment parameters based on their specific reliability requirements. This dynamic capability allows the platform to adapt its behavior and configuration to meet enterprise-grade reliability standards while maintaining ease of operation through automated management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2381363B1Cloud platform architecture
Publication Date: 2017.07.19 PIVOTAL SOFTWARE INC
  • EP2381363B1 patent drawingFigure 1A
  • EP2381363B1 patent drawingFigure 1B
  • EP2381363B1 patent drawingFigure 2A

AI summary

A cloud computing environment provides the ability to deploy a web application that has been developed using one of a plurality of application frameworks and is configured to execute within one of a plurality of runtime environments. The cloud computing environment receives the web application in a package compatible with the runtime environment (e.g., a WAR file to be launched in an application server, for example) and dynamically binds available services by appropriately inserting service provisioning data (e.g., service network address, login credentials, etc.) into the package. The cloud computing environment then packages an instance of the runtime environment, a start script and the package into a web application deployment package, which is then transmitted to an application (e.g., container virtual machine, etc.). The application container unpacks the web application deployment package, installs the runtime environment, loads the web application package into the runtime environment and starts the start script, thereby deploying the web application in the application container.