On-Demand Container-Based Development Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Accessing development environments is time-consuming, complex, and resource-intensive, requiring developers to manage competing cloud APIs and infrastructure as code, which leads to overhead and bureaucracy, hindering innovation and collaboration.

Innovation Solution

Implementing on-demand container-based development environments that abstract developers from infrastructure requirements by using pre-built Docker templates, allowing for rapid provisioning and deployment of application binaries into running containers, independent of specific cloud providers, and enabling endpoint-agnostic application builds and configurations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional development environments are used with infrastructure provisioning, then developers can access development environments, but the process becomes time-consuming, complex, and bureaucracy-heavy

Engineering Contradiction:
ImproveEase of accessing development environmentVSAvoidLead time for environment provisioning
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system pre-provisions development environments using container templates before they are needed. When a developer requests an environment, pre-configured container images are immediately deployed to available endpoints, eliminating the time-consuming manual provisioning process while maintaining ease of access through automated workflows.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables developers to self-service development environments through automated container orchestration. The platform automatically selects endpoints, deploys container images, and manages resource allocation without requiring developers to navigate complex infrastructure provisioning processes, thus reducing both time loss and operational complexity.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If developers manage infrastructure as code and cloud APIs directly, then they have control over the development environment, but overhead and bureaucracy increase

Engineering Contradiction:
ImproveControl over development environmentVSAvoidComplexity of infrastructure management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary layer of container-based virtualization between developers and underlying cloud infrastructure. This abstraction layer provides standardized development environments that maintain adaptability and control for developers while hiding the complexity of infrastructure as code and cloud API management from them.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates universal container templates that can run across multiple cloud endpoints and infrastructure configurations. These standardized containers provide consistent development environments that work across different cloud providers, reducing the need for developers to manage infrastructure-specific variations and thereby decreasing overall system complexity.

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

3Productivity

If cloud resources are provisioned for development environments, then developers can access additional computing power, but resource competition and access complexity increase

Engineering Contradiction:
ImproveAccess to computing resourcesVSAvoidComplexity of resource access
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system merges multiple cloud endpoints and resources into a unified container orchestration platform. By combining resource management, endpoint selection, and environment provisioning into a single automated system, developers gain access to additional computing power through a simplified interface that reduces operational complexity.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11237949B2Systems and methods for on-demand container-based development environments
Publication Date: 2022.02.01 JPMORGAN CHASE BANK NA
  • US11237949B2 patent drawing
  • US11237949B2 patent drawing

AI summary

Systems and methods for on-demand container-based development environments are disclosed. According to one embodiment, in an information processing apparatus comprising at least one computer processor a method for using an on-demand development environment may include: (1) receiving, from a user interface, a request for an on-demand development environment for an application binary; (2) verifying that infrastructure for the on-demand development environment is not provisioned; (3) identifying a build template for the on-demand development environment; (4) selecting an endpoint for the on-demand development environment; (5) initiating the on-demand development environment on the endpoint using the build template; and (6) deploying the application binary to the on-demand development environment.