Annotated Software Objects for Role-Based Attribute Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software object updates in object-oriented programming often become unwieldy and unmanageable due to frequent code changes, especially when multiple developers with different roles modify attributes, necessitating cumbersome compare methods and large codebases.

Innovation Solution

An object-oriented framework with annotation constructs defines inclusive and exclusive attributes and user roles, allowing authorized changes to be accepted and unauthorized changes to be rejected, while providing detailed difference reports in string and map formats, thus managing code changes efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple developers with different roles frequently modify software object attributes, then the software functionality and adaptability improve, but the codebase complexity and management difficulty increase

Engineering Contradiction:
Improvesoftware functionalityVSAvoidcodebase complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the codebase by introducing annotation constructs that categorize attributes into inclusive and exclusive groups, allowing different developer roles to work on different segments without affecting the entire codebase. This segmentation enables parallel development while maintaining clear boundaries and reducing management complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by defining annotation constructs and user role authorizations before development begins. The inclusive and exclusive attribute definitions are established upfront, creating a framework that guides subsequent modifications and prevents complexity from accumulating during the development process.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If comprehensive compare methods are implemented to track all attribute changes, then change tracking accuracy improves, but the codebase size and maintenance burden increase

Engineering Contradiction:
Improvechange tracking accuracyVSAvoidcodebase size
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the change tracking functionality from the main codebase by using annotation constructs that inherently define which attributes should be compared. The inclusive attributes are automatically tracked while exclusive attributes are excluded, eliminating the need for separate compare methods and reducing codebase size.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The annotation constructs perform self-service by automatically defining the scope of change tracking through their inclusive and exclusive attribute definitions. The system uses these annotations to automatically determine what to compare, eliminating the need for manual compare method implementation and maintenance.

Inventive Principle:
Principle #25Self-service

3Reliability

If strict authorization controls are implemented for attribute modifications, then code quality and reliability improve, but the ease of operation and development speed decrease

Engineering Contradiction:
Improvecode qualityVSAvoiddevelopment speed
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent applies preliminary action by establishing user role authorizations and attribute inclusivity/exclusivity definitions before development begins. This upfront configuration enables developers to work within pre-defined boundaries without requiring constant authorization checks, maintaining code quality while preserving development speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments attributes into inclusive and exclusive categories with role-based access controls. This segmentation allows developers to freely modify attributes within their authorized segments while automatically preventing unauthorized changes to other segments, ensuring code quality without impeding development workflow.

Inventive Principle:
Principle #1Segmentation

4Loss of information

If detailed difference reports are generated for all attribute changes, then change analysis completeness improves, but the information processing overhead and time consumption increase

Engineering Contradiction:
Improvechange analysis completenessVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent extracts only the relevant change information by using annotation constructs that define inclusive attributes for tracking. The difference report generation process automatically extracts and reports only on inclusive attributes that have changed, eliminating unnecessary information processing while maintaining complete change analysis for relevant attributes.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12411992B2Updating annotated software objects
Publication Date: 2025.09.09 JPMORGAN CHASE BANK NA
  • US12411992B2 patent drawing
  • US12411992B2 patent drawing
  • US12411992B2 patent drawing

AI summary

In one example, a computer program product is disclosed. The computer program product includes instructions, executed by a processor, to parse an original annotated software object for at least one annotation construct. Each annotation construct is to define which attributes of the original annotated software object can be modified and a user role parameter. The instructions include parsing an updated annotated software object of the original annotated software object to use the annotation construct to determine: attribute changes to the original annotated software object and the user role parameter associated with the attribute changes. In the user role parameter is authorized to make the attribute changes, the attribute changes are accepted to store the attribute changes in the updated annotated software object. If the user role parameter is not authorized, the attribute changes are rejected to disallow storage of the attribute changes by the updated annotated software object.