Self-Assembled Software Override and Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing hierarchical software systems lack dynamic modular flexibility and require extensive user interfaces for code generation, making them inflexible and difficult to modify without altering the original source code.

Innovation Solution

A self-organized software system where machines with bonding sites and submachines self-assemble to create hierarchical structures, allowing for dynamic modification and monitoring of execution sequences through selective bonding and encapsulation, enabling flexible and non-domain-specific software architecture.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If object-oriented design with direct module calls is used, then software can be organized into hierarchical modules, but the software lacks dynamic flexibility and cannot be easily modified

Engineering Contradiction:
Improvesoftware flexibilityVSAvoidsoftware architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic software architecture by allowing modules to self-assemble and reconfigure at runtime. Modules contain bonding sites that enable them to dynamically form hierarchical structures based on current needs, transforming static object-oriented designs into dynamic, self-organizing systems that can adapt without requiring architectural redesign

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The software system performs self-assembly through automated bonding mechanisms. Modules automatically discover and connect to appropriate partners through bonding sites, eliminating the need for manual configuration or complex assembly processes. The system self-organizes into functional hierarchies based on module capabilities and requirements

Inventive Principle:
Principle #25Self-service

2Ease of manufacture

If extensive user interfaces for code generation are provided, then software can be generated flexibly, but user interface complexity increases and development time increases

Engineering Contradiction:
Improvesoftware generation easeVSAvoiddevelopment time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The system eliminates the need for extensive user interfaces by implementing self-assembly. Modules automatically generate their own hierarchies through bonding mechanisms, and the system autonomously organizes them into functional structures. This removes the burden of manual code generation interfaces while maintaining flexible software creation capabilities

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual mechanical code generation processes with automated computational bonding mechanisms. Instead of requiring users to manually configure module connections through complex interfaces, the system uses automated bonding site matching and hierarchical assembly algorithms to generate software structures automatically

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

3Ease of operation

If modules are designed as black-box components, then inter-module interactions are simplified, but correct interactions between modules and data structures cannot be ensured

Engineering Contradiction:
Improvemodule interaction simplicityVSAvoidmodule interaction correctness
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent changes the bonding parameters to include both simplicity and correctness verification. Bonding sites have specific key identifiers that must match between connected modules, ensuring correct interactions while maintaining the simplicity of black-box usage. The system verifies compatibility through parameter matching without requiring users to understand internal module implementations

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8347270B1Self-assembled software and method of overriding software execution
Publication Date: 2013.01.01 NATIONAL TECHNOLOGY & ENGINEERING SOLUTIONS OF SANDIA LLC
  • US8347270B1 patent drawing
  • US8347270B1 patent drawing
  • US8347270B1 patent drawing

AI summary

A computer-implemented software self-assembled system and method for providing an external override and monitoring capability to dynamically self-assembling software containing machines that self-assemble execution sequences and data structures. The method provides an external override machine that can be introduced into a system of self-assembling machines while the machines are executing such that the functionality of the executing software can be changed or paused without stopping the code execution and modifying the existing code. Additionally, a monitoring machine can be introduced without stopping code execution that can monitor specified code execution functions by designated machines and communicate the status to an output device.