Software Design Specification Management with Functional Rule Versioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software design documentation tools lack efficient management of functional rules and component versions, leading to complexity and difficulty in tracking changes and dependencies across software releases, resulting in potential undetected design changes or bugs.

Innovation Solution

A method and system for managing software design specifications with functional rule versioning, which involves storing references to software components and functional rules in a database, allowing for selection, assignment, navigation, and editing of these components and rules, along with archiving changes and providing a graphical display of logical hierarchies and rule assignments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional software design documentation tools are used, then software design specifications can be created, but tracking changes and dependencies across software releases becomes complex and difficult

Engineering Contradiction:
Improvetracking accuracyVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments software design specifications into discrete functional rules and software components, each with unique identifiers and version numbers. This segmentation allows independent tracking of each element through database tables, enabling precise change tracking without managing entire documentation sets as monolithic units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a database system as an intermediary between software components and functional rules. The database stores relationships, versions, and assignments objectively, mediating the complexity of tracking dependencies. Users interact with this structured intermediary rather than directly managing complex relationships.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If detailed software design documents are created to define software behavior, then comprehensive specifications are achieved, but the complexity of managing and navigating these specifications increases

Engineering Contradiction:
Improvespecification completenessVSAvoidnavigation ease
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent adds a dimensional layer of organization by introducing version numbers and assignment relationships as separate dimensions. Instead of navigating a flat document structure, users can navigate through version history and assignment matrices, transforming the navigation problem into a multi-dimensional space that is more manageable.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Solution Approach 2:

The patent creates a universal database structure that serves multiple functions: storing functional rules, tracking versions, managing assignments, and maintaining relationships. This multi-functional system replaces multiple separate documentation tools, simplifying navigation while preserving specification completeness.

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

3Productivity

If functional rules are assigned to multiple software components across different releases, then rule reuse is enabled, but tracking the history and current state of assignments becomes difficult

Engineering Contradiction:
Improverule reuse efficiencyVSAvoidassignment history
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent implements feedback mechanisms through database queries that can retrieve assignment history and current state. The system continuously feeds back information about rule assignments, versions, and relationships to users, enabling them to track the complete history and current state of functional rule assignments across multiple components and releases.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by pre-establishing the database structure with version tracking and assignment relationship tables before any functional rules are assigned. This preliminary setup enables automatic tracking of all assignments and changes without requiring additional manual effort during the assignment process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10228913B2Functional rule and component storage
Publication Date: 2019.03.12 ORACLE INT CORP
  • US10228913B2 patent drawing
  • US10228913B2 patent drawing
  • US10228913B2 patent drawing

AI summary

A method of managing software design specifications with functional rule versioning may include storing references to a plurality of software components in a database system, and storing references to a plurality of functional rules in the database system. In some embodiments, the functional rules may define behaviors that may be assigned to the plurality of software components. The method may also include receiving a selection of one or more software components from the plurality of software components. The one or more software components may define a software product. The method may additionally include receiving assignments of the plurality of functional rules to the one or more software components, and providing an interface for navigating through the one or more software components and editing the assignments.