In-Memory Object Serialization for Version Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software development teams face difficulties in comparing application documents or in-memory objects across different versions of an application program, leading to potential undetected changes and introduced bugs due to format changes and lack of comprehensive comparison methods.
Innovation Solution
The technology involves serializing in-memory objects of an application program to detect differences between versions by using a serialization driver file to specify objects, properties, and methods for comparison, storing them in generic object containers, and logging differences for bug identification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If file format comparison is used to compare application documents between versions, then comparison can be performed on saved documents, but changes in file format and lack of specific order make comparison complicated and difficult
Solution Approach 1:
The patent introduces an intermediary representation format that converts documents from their stored file formats into a standardized comparison format. This intermediary step allows comparison to proceed on structured, ordered data regardless of the original file format variations, thereby simplifying the comparison operation while handling format changes systematically
Solution Approach 2:
The patent changes the parameter representation of documents by transforming them from their native file formats into a standardized comparison format with specific ordering. This parameter transformation enables consistent comparison by converting heterogeneous file formats into a uniform structure that can be systematically analyzed
2Measurement precision
If manual comparison of single aspect or subset of data is performed, then specific software changes can be tested, but other portions or data outside the subset may differ and go undetected
Solution Approach 1:
The patent creates a universal comparison mechanism that can compare any subset or the entire document structure. The same comparison engine handles both targeted subset comparisons and comprehensive full-document comparisons, providing multi-functionality that prevents information loss while maintaining precision for specific testing needs
Solution Approach 2:
The patent enables the user to perform partial comparisons of specific subsets when needed for targeted testing, while also allowing excessive action by comparing the entire document structure to ensure no differences are missed. This flexible approach lets users balance precision and completeness based on testing requirements
3Reliability
If comprehensive comparison of entire application document structure is performed, then all differences can be detected, but the complexity of comparing entire document structure increases
Solution Approach 1:
The patent segments the document structure into hierarchical components that can be compared systematically. By dividing the entire document structure into manageable segments organized in a hierarchy, the system achieves comprehensive comparison for high detection reliability while reducing the practical complexity through structured, modular processing
Data Source
AI summary
Technologies are described herein for serializing in-memory objects of an application program for purposes of comparison. A request to serialize in-memory objects of an application program is received. A list of one or more objects, properties, or methods to be serialized is read from a serialization driver file and the one or more objects, properties, or methods in an object memory of the application program are accessed through an object model exposed by the application program. Values from the one or more objects, properties, or methods in the object memory are serialized and stored in a generic object container that facilitates comparison between the serialized values from the application program and corresponding values from other versions of the application program.


