Dynamic Software Design Quality Enforcement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software design quality evaluation methods lack the ability to dynamically assess and enforce design quality rules across the development lifecycle, leading to inconsistencies and suboptimal code quality due to inflexible and static evaluation processes.
Innovation Solution
A system that accesses and applies design quality rules to software applications before code development, detects violations, and allows user input for correction, with features for prioritization, exclusion criteria, and refactoring suggestions, enabling continuous evaluation and improvement of software design quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If static evaluation processes are used for software design quality, then the evaluation process is simple and straightforward, but the code quality becomes inconsistent and suboptimal due to inability to adapt to changing requirements
Solution Approach 1:
The patent implements dynamic evaluation by allowing design quality rules to be modified, added, or removed during the development lifecycle. The system transitions from static pre-defined rules to dynamic rules that can adapt to changing project requirements, ensuring consistent code quality while maintaining flexibility. This is achieved through a rule management mechanism that enables real-time updates to evaluation criteria without disrupting the development process.
Solution Approach 2:
The system allows modification of evaluation parameters including rule priorities, thresholds, and specific quality metrics. By enabling parameter changes during development, the system can adapt to different project phases and requirements while maintaining reliable quality assessment. This includes adjusting weightings of different quality attributes and modifying rule criteria based on evolving project needs.
2Manufacturing precision
If design quality rules are applied before code development, then design quality can be ensured early, but the development process becomes more complex with additional evaluation steps
Solution Approach 1:
The system applies design quality rules during the design phase before code implementation, enabling early detection and correction of quality issues. By performing evaluation actions in advance, the system prevents defects from propagating to later development stages, ensuring high design quality without requiring complex rework later in the process.
Solution Approach 2:
The system provides automated feedback on design quality rule violations during the design phase, guiding developers to correct issues before coding begins. This feedback mechanism includes specific violation reports and suggestions for remediation, reducing the perceived complexity by providing clear, actionable guidance rather than requiring developers to understand complex evaluation criteria.
3Reliability
If comprehensive design quality rules are enforced throughout development, then code quality improves significantly, but the development time increases due to continuous evaluation and correction cycles
Solution Approach 1:
The system maintains continuous quality evaluation throughout the development lifecycle rather than performing discrete, interruptive checks. By integrating quality assessment into the natural development flow, the system ensures consistent code quality improvement without creating separate evaluation phases that would slow down development. The evaluation operates continuously in the background, providing real-time guidance.
Solution Approach 2:
The system enables developers to self-correct quality violations by providing automated feedback and guidance during the development process. Rather than requiring formal review cycles or external quality assurance intervention, developers can immediately address violations using system-provided suggestions, maintaining high code quality while preserving development speed and autonomy.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Evaluation and enforcement of software design quality, in which a system applies design quality rules to a design of a software application to detect violations and provides output describing one or more violations of the design quality rules detected. Based on the output, the system receives user input to address the one or more violations of the design quality rules and, subsequent to receiving the user input, evaluates code developed for the software application for violations of the design quality rules to assess quality of the code being developed for the software application based on the design of the software application.