Conversational Reverse Engineering for Legacy Software

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current systems lack a conversational reverse engineering capability that can understand legacy software applications and provide a holistic, in-depth view to users, relying on static knowledge repositories and lacking a virtual contextual master for effective application understanding.

Innovation Solution

A system and method that extracts technical and functional knowledge from source code using parsing tools and self-supervised comment extraction models, combining this information with external documents to create a dynamic knowledge base, enabling the generation of question and answer pairs and providing conversational responses to user queries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a static knowledge repository is used for replying to user queries, then the system structure is simple, but the system cannot provide contextual understanding of legacy software applications

Engineering Contradiction:
Improveconversational understanding capabilityVSAvoidsystem architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent transforms the static knowledge repository into a dynamic system that continuously learns from source code through self-supervised comment extraction models. The knowledge base evolves by extracting technical knowledge, control flow information, and domain-specific concepts from legacy code, enabling the bot to adapt its responses based on the specific application being analyzed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces an intermediary layer between the user queries and the knowledge repository. This includes a query processing module that analyzes user questions, identifies relevant concepts, and maps them to the extracted knowledge from source code. The intermediary also includes a response generation module that synthesizes answers based on the contextual understanding of the legacy application.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If manual reverse engineering methods are used, then the process is thorough, but it is time-consuming and labor-intensive

Engineering Contradiction:
Improvereverse engineering efficiencyVSAvoidanalysis time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements self-service through automated source code analysis where the system extracts its own knowledge from legacy applications without human intervention. The self-supervised comment extraction model automatically identifies technical concepts, control flow patterns, and domain-specific terminology from the code itself, eliminating the need for manual documentation or expert analysis.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual mechanical reverse engineering processes with automated computational methods. Instead of human experts manually reading and analyzing source code, the system uses parsing tools, natural language processing, and machine learning models to automatically extract and understand the application's functionality, control flow, and business logic.

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

3Ease of operation

If existing modernization enablers with reports and dashboards are used, then data is available, but conversational understanding is not provided

Engineering Contradiction:
Improveuser interactionVSAvoidcontextual information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent implements feedback loops where the bot analyzes user queries, retrieves relevant information from the knowledge base, generates responses, and learns from interaction patterns. The system continuously refines its understanding by processing more queries and improving its response generation based on the specific context of the legacy application being analyzed.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent transitions from traditional two-dimensional reports and dashboards to a conversational interface that adds a new dimension of interaction. Instead of users navigating complex visual interfaces to find information, the system understands natural language queries and provides contextual answers, transforming static data presentation into dynamic conversational understanding.

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

Data Source

PatentEP4372624A1Method and system for enabling conversational reverse engineering and understanding of a software application
Publication Date: 2024.05.22 TATA CONSULTANCY SERVICES LTD
  • EP4372624A1 patent drawingFigure 1
  • EP4372624A1 patent drawingFigure 2
  • EP4372624A1 patent drawingFigure 3

AI summary

Conversations with software applications have been an integral part of day-to-day activities. For a smooth conversations, it is necessary for a software to automatically help in understanding another software. A method and system for enabling conversational reverse engineering and understanding of software application has been provided. The present disclosure proposes a solutions which is configured to build a dynamic knowledge base for a bot to learn from an input application source code. The system and method are further configured to provide functional / domain context-based question interpretation and mapping of the information to the dynamically built knowledge base. A user query is converted to a proprietary question model. Further, a question verb, primary entity and secondary entity are extracted through natural language processing. A holistic architectural advancement is provided, which combines the analyzed information and in turn provides an end user with better understanding of the application in lesser time.