Software Specification Feedback Tool for Missing Descriptors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software development processes face inefficiencies due to incomplete software specifications, which can lead to increased development time, reduced functionality, and inadequate testing, as stakeholders often lack awareness of necessary context and text editors provide limited real-time feedback.

Innovation Solution

A software-development tool that provides real-time feedback by analyzing software specifications for missing descriptors, using natural-language processing and predefined keywords, and offering recommendations to enhance specification completeness, potentially integrated as a plugin or web-based portal.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If stakeholders draft software specifications using traditional text editors, then the specifications can be created in natural language format, but the text editors provide limited real-time feedback about missing descriptors or incomplete information

Engineering Contradiction:
Improveease of specification draftingVSAvoidmissing descriptors in specification
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The system implements automated feedback mechanisms that analyze software specifications in real-time and provide notifications about missing descriptors, incomplete information, or potential issues. The feedback system processes the specification content and returns actionable insights to stakeholders, enabling them to improve the quality and completeness of their specifications without requiring extensive technical knowledge.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system introduces an intermediary software component that sits between the stakeholder and the software developer. This intermediary automatically analyzes the specification, identifies gaps using predefined descriptor libraries and natural language processing, and communicates findings back to the stakeholder. It acts as a mediator that translates stakeholder requirements into structured, complete specifications ready for development.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If stakeholders provide incomplete software specifications, then the drafting process is faster and simpler, but the development time increases and functionality is reduced

Engineering Contradiction:
Improvespecification drafting timeVSAvoidsoftware development productivity
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system performs preliminary analysis of software specifications automatically as they are being drafted or upon submission. By checking for missing descriptors, incomplete information, and potential issues before the development process begins, the system prevents delays that would otherwise occur during development or testing phases. This preliminary validation ensures specifications are ready for immediate development.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables stakeholders to self-service by providing them with automated feedback and guidance on how to improve their specifications. Through interactive notifications and suggestions, stakeholders can independently identify and correct issues in their specifications without requiring extensive reviewer intervention, thereby maintaining fast drafting while ensuring completeness.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If software specifications lack comprehensive descriptors, then the initial drafting is easier for non-technical stakeholders, but inadequate testing and reduced application functionality result

Engineering Contradiction:
Improvestakeholder ability to draft specificationsVSAvoidsoftware application functionality
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system replaces manual review processes with automated natural language processing and analysis mechanisms. Instead of relying on technical reviewers to manually check specifications for completeness, the system uses computational algorithms to automatically identify missing descriptors, analyze requirement quality, and provide feedback. This substitution maintains ease of use for stakeholders while ensuring high reliability through systematic analysis.

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

Solution Approach 2:

The system transforms unstructured natural language specifications into structured formats with identified descriptors, categories, and relationships. By changing the parameter representation from raw text to structured data with metadata about completeness and quality, the system enables both ease of drafting and comprehensive validation, ensuring that non-technical stakeholders can create reliable specifications.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11340871B1Software-development tool with feedback notifications for improving software specifications
Publication Date: 2022.05.24 RED HAT INC
  • US11340871B1 patent drawing
  • US11340871B1 patent drawing
  • US11340871B1 patent drawing

AI summary

Software specifications can be improved using a software-development tool with feedback notifications. For example, a computing device can receive a textual input in a text box of a text editor from a user, the textual input defining a software specification that describes features of a software application for a software developer that is different from the user. The computing device can determine that a description of a software feature in the software specification excludes a particular descriptor characterizing the software feature. The computing device can, based on determining that the description excludes the particular descriptor, generate a graphical feedback notification indicating that the particular descriptor is absent from the description of the software feature. This feedback can assist the user in developing a more-complete software specification for use by the software developer in a software development process or a software testing process.