Automated Software Code Generation via Modular Design Phases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software development processes are inefficient due to manual operations and lack of standardized implementation requirements, leading to incomplete and error-prone automation across the requirements, architecture, design, and code generation steps.

Innovation Solution

A system comprising a requirements unit, implementation unit, and testing unit that processes inputted requirements and parameters to generate application code through iterative processes, using system communication protocols for data formatting and communication, and employing verification tools to ensure completeness and consistency of application requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If automated steps are introduced to improve software development efficiency, then productivity increases, but the system becomes more complex and error-prone due to lack of standardization

Engineering Contradiction:
Improvesoftware development efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces standardized parameters and protocols that define specific formats and structures for requirements, architecture, design, and code generation. By establishing fixed parameter templates and communication protocols, the system transforms unstructured manual processes into structured automated processes, reducing complexity while maintaining high productivity

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent divides the software development process into distinct modular units: requirements unit, architecture unit, design unit, and code generation unit. Each unit operates independently with defined interfaces and standardized data formats, allowing automated processing while managing system complexity through modular architecture

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If manual operations are used to maintain flexibility and adaptability, then ease of operation is improved, but reliability decreases due to manual errors

Engineering Contradiction:
ImproveflexibilityVSAvoiderror rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements self-verification mechanisms where the system automatically checks requirements for completeness and consistency, validates architecture against requirements, verifies design against architecture, and tests code against design specifications. This automated self-service approach eliminates manual errors while preserving flexibility through configurable parameters and standardized interfaces

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent incorporates feedback loops at each development stage where verification tools analyze the output of previous units and provide feedback to ensure compliance with specifications. This automated feedback mechanism detects errors early, maintains reliability, and allows flexible adjustment of parameters without manual intervention

Inventive Principle:
Principle #23Feedback

3Reliability

If verification tools are implemented to ensure completeness and consistency, then reliability improves, but device complexity increases

Engineering Contradiction:
Improvecompleteness and consistencyVSAvoidverification system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent performs verification activities in advance at each development stage rather than as a separate final step. The requirements unit verifies completeness and consistency before architecture generation, the architecture unit verifies against requirements before design generation, and so on. This preliminary verification approach ensures reliability while keeping the verification system integrated and manageable within each unit

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9858046B2System and method for implementing application code from application requirements
Publication Date: 2018.01.02 UPDRAFT LLC
  • US9858046B2 patent drawing
  • US9858046B2 patent drawing
  • US9858046B2 patent drawing

AI summary

An input/output module receives application requirements and parameters and a processing module implements production of application code. An architecture code level design phase produces code component architecture artifacts of at least a portion of the application code based on one or more of the application requirements, the parameters, or architecture phase feedback. A high-level design (HLD) phase to produce code HLD artifacts based on one or more of the code component architecture artifacts, the application requirements, the parameters, or HLD phase feedback. A low-level design (LLD) phase to produce code LLD artifacts based on one or more of the code component architecture artifacts, the code HLD artifacts, the application requirements, the parameters, or LLD phase feedback and an application code level development phase to produce code artifacts based on one or more of: the HLD artifacts, the LLD artifacts, the application requirements, the parameters, or code development phase feedback.