Simulation-Based Software Design Tradeoff Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing sustainable software that balances multiple design attributes such as performance, security, bias, accessibility, and energy consumption is challenging due to conflicting goals, where optimizing one attribute can lead to sub-optimal design for others, and existing methods struggle to account for and optimize these factors effectively.

Innovation Solution

A simulation-based software design and delivery attribute tradeoff identification and resolution apparatus that uses graph processing and query engines to identify reinforcing or conflicting design factors, calculates a sustainability quality metric, and provides recommendations for optimizing software development and delivery processes through a dashboard, incorporating model-based NLP, GUI code analysis, and automated impact analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If software is optimized for one design attribute (e.g., performance), then that attribute improves, but other attributes (e.g., energy consumption, security) deteriorate

Engineering Contradiction:
Improvesoftware performanceVSAvoidenergy consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The system changes software design parameters by generating multiple alternative implementations with different attribute profiles. The simulation engine varies parameters such as code optimization levels, architecture choices, and deployment configurations to find solutions that balance performance with energy consumption and other attributes.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system dynamically adjusts software attributes during the design phase by using machine learning models to predict outcomes of different design choices. The simulation engine allows dynamic exploration of trade-offs, enabling designers to shift between optimizing for performance versus energy consumption based on changing requirements.

Inventive Principle:
Principle #15Dynamics

2Speed

If software is optimized for one design attribute (e.g., performance), then that attribute improves, but other attributes (e.g., security, bias, accessibility) deteriorate

Engineering Contradiction:
Improvesoftware performanceVSAvoidsecurity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system explores multiple software design parameter configurations, including security hardening options, code review processes, and vulnerability scanning frequencies. The simulation engine evaluates how these parameter changes affect both performance and security outcomes, enabling balanced optimization.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The machine learning models dynamically predict security implications of performance optimizations and vice versa. The system allows interactive exploration where users can adjust security requirements and immediately see the impact on performance, enabling dynamic trade-off management.

Inventive Principle:
Principle #15Dynamics

3Reliability

If multiple software design attributes are considered simultaneously, then holistic sustainability improves, but design complexity increases

Engineering Contradiction:
Improvesustainability qualityVSAvoiddesign complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The simulation engine acts as an intermediary between multiple design attributes, automatically evaluating their interactions and conflicts. The system uses graph processing to model relationships between attributes and identifies trade-offs, reducing the complexity burden on designers while maintaining holistic sustainability assessment.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system replaces manual multi-attribute analysis with automated machine learning models and simulation engines. These computational tools handle the complex evaluation of multiple attributes simultaneously, substituting human cognitive effort with algorithmic processing that can manage high-dimensional optimization spaces.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11886837B2Simulation-based software design and delivery attribute tradeoff identification and resolution
Publication Date: 2024.01.30 ACCENTURE GLOBAL SOLUTIONS LTD
  • US11886837B2 patent drawing
  • US11886837B2 patent drawing
  • US11886837B2 patent drawing

AI summary

In some examples, simulation-based software design and delivery attribute tradeoff identification and resolution may include receiving requirements specification, and generating, based on an analysis of the requirements specification, canonical sustainability requirements. Based on an analysis of the canonical sustainability requirements, sustainable software attribute decisions and an attribute optimization score may be generated, and used to generate a sustainable software attribute balance score and a tradeoff attributes list. Based on an analysis of the sustainable software attribute balance score and the tradeoff attributes list, a green quotient may be generated and used to generate an architecture document. Further, based on an analysis of the architecture document, software quality rules may be generated, and used to generate a software application.