Workflow Job Runtime Prediction via Feature Weighting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern software systems face challenges in efficiently managing frequent and complex software releases and updates across multiple servers and geographical locations, leading to increased costs and errors due to the lack of effective automation tools that can adapt to the rapidly evolving landscape of software products.

Innovation Solution

A flexible and scalable automation engine system that includes work processes and communication processes, capable of dynamically handling diverse automation workloads, with features like runtime prediction and failure prediction to optimize deployment and orchestration processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual deployment processes are used for software releases across multiple servers, then flexibility in handling diverse deployment scenarios is maintained, but deployment time and error rates increase

Engineering Contradiction:
Improvedeployment speedVSAvoidautomation system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The deployment automation system performs self-service by automatically executing deployment workflows without human intervention. The system monitors its own state, detects deployment opportunities, and autonomously coordinates updates across multiple servers, reducing manual effort while maintaining control.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary actions by pre-configuring deployment workflows, defining update sequences, and preparing automation rules before actual software releases. This advance preparation enables rapid execution during deployment events without requiring complex real-time decision-making.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If frequent software updates are deployed to multiple servers, then software relevance and functionality are improved, but deployment errors and system instability increase

Engineering Contradiction:
Improvesoftware update frequencyVSAvoiddeployment reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The deployment automation system implements feedback mechanisms by monitoring deployment outcomes across servers and using this information to adjust future deployment actions. The system learns from past deployments, identifies patterns of success or failure, and modifies its behavior to improve reliability while maintaining frequent update capability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system applies beforehand cushioning by implementing rollback capabilities and validation checks before executing deployments. It prepares compensatory measures in advance, such as maintaining previous working versions and setting up error handling protocols, to mitigate potential deployment failures.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Productivity

If multiple servers are used to host software applications, then system capacity and availability are improved, but coordination complexity and deployment costs increase

Engineering Contradiction:
Improvesystem capacityVSAvoidmulti-server coordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The deployment automation system achieves universality by designing a single coordinated system that manages multiple servers through unified workflows. The same automation engine and deployment templates are applied across all servers, reducing the need for server-specific coordination logic and simplifying multi-server management.

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

4Productivity

If automated deployment tools are implemented, then deployment efficiency is improved, but adaptability to evolving software products decreases

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidadaptability to software changes
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The automation system implements dynamics by making workflows and deployment parameters configurable and modifiable. The system can adapt its behavior based on different software products, deployment scenarios, and server configurations, allowing efficient automation while maintaining flexibility to evolve with changing requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11461669B2Runtime prediction for a job of a workflow
Publication Date: 2022.10.04 CA SOFTWARE OESTERR GMBH
  • US11461669B2 patent drawing
  • US11461669B2 patent drawing
  • US11461669B2 patent drawing

AI summary

A method may comprise accessing first data sets associated with a first job of a workflow, each first data set associated with an execution of the first job, each first data set specifying a runtime of the first job and a first plurality of feature values of features associated with the runtime; executing a first plurality of feature weighting analyses utilizing the first data sets to rank the plurality of features with respect to their predictive value on a runtime of the first job; and generating, using at least one data processing apparatus, a predicted runtime of the first job based on a time series analysis of a plurality of runtimes of a plurality of second data sets, the second data sets selected from the first data sets based on the rank and one or more expected feature values associated with a future execution of the first job.