Configurable Class System Automating Undo Redo Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional techniques burden application authors with the time-intensive and error-prone task of custom managing undo, redo, and logging operations for each state change in software applications, making it inefficient and prone to errors.

Innovation Solution

A configurable class system that automates the handling of undo, redo, and logging operations by providing mechanisms for every application object created, allowing application authors to customize compression and handle exceptional state changes through indirect access to class definitions and instance data, with operation classes encapsulating functions for undoing and redoing operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If application authors manually manage undo and redo operations for each state change, then customization and control are improved, but development time and error probability increase

Engineering Contradiction:
Improvecustomization of undo/redo handlingVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system enables automatic generation of undo and redo operations through self-service mechanisms. When an operation is performed on an application object, the system automatically creates the corresponding undo operation without requiring manual intervention from the application author, thus reducing development time while maintaining functionality

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-defining operation classes and templates that automatically handle undo/redo logic. These pre-configured structures are ready before actual application development, allowing authors to leverage existing frameworks rather than building from scratch

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If application authors manually define undo and redo handling for each operation, then control over exceptional state changes is improved, but complexity and error-proneness increase

Engineering Contradiction:
Improvehandling of exceptional state changesVSAvoidcomplexity of undo/redo management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments undo/redo management into distinct operation classes, each handling specific types of operations. This segmentation allows exceptional state changes to be handled in isolated, manageable units rather than requiring comprehensive manual management of all operations simultaneously

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces an intermediary operation class that acts as a mediator between the application object and the undo/redo mechanism. This intermediary automatically manages the complexity of exceptional state changes by providing a standardized interface, reducing the burden on application authors

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If automatic automation of undo and redo operations is implemented, then development efficiency is improved, but flexibility in handling exceptional cases may be reduced

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidcustomization capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system implements dynamic adaptability where the automation level and customization options can be adjusted based on the specific operation type. Common operations use fully automatic generation for high productivity, while exceptional cases allow authors to override and customize the generated code, balancing automation with flexibility

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7958490B2System for automating the definition of application objects supporting undoing, redoing compressing and logging operations
Publication Date: 2011.06.07 MATHWORKS INC
  • US7958490B2 patent drawing
  • US7958490B2 patent drawing
  • US7958490B2 patent drawing

AI summary

A configurable class system for an application author working in an application development environment that automates the handling of undo, redo and logging operations is discussed. The configurable class system removes the burden from the application author of having to custom manage undo, redo and logging information during application writing by providing the necessary mechanisms to every application object created. The configurable class system also allows the application author to handle exceptional state changes in an application by configuring the underlying base classes provided by the configurable class system. Additionally, the embodiments of the present invention enable the application author to customize the compression of a series of identified operations by selecting the type of operations that are to be compressed and the manner in which the compression is to occur.