IP Library Granted Patent US 12,705,261
Granted Patent B2
US 12,705,261 · App. 18/503,907 · Granted Aug 11, 2026

System and method for determining and representing a lineage of business terms across multiple software applications

Inventors: Ioan Mihai Oara (Raleigh, NC); Mikhail Bulyonkov (Novosibirsk, RU)
Assignee: HATHA SYSTEMS, LLC
G06F16/288G06F16/2282
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,705,261
App. No.
18/503,907
Filed
Nov 7, 2023
Granted
Aug 11, 2026
Kind
B2
Examiner
KHATRI, ANIL
Art Unit
2191
USPC
707/743
Abstract

A system and method for determining the flow of one or more business terms between a plurality of software applications. The system includes extracting data from the source code data which includes a plurality of technical artifacts. An application model unit generates an application model that includes a representation of selected data components of the extracted data and generates application model data that includes data representative of a plurality of business terms and a plurality of technical artifacts. A term identification identifies the business terms and a mapping unit maps together the plurality of business terms and the plurality of technical artifacts from the application model data to form map data. A term lineage determination unit determines an inter-application lineage of the business terms based on the map data. The inter-application lineage is representative of data paths associated with the business term flowing between the software applications.

Claims (20)

1 . A system for determining the flow of one or more business terms between a plurality of software applications, comprising

a data source for storing source code data associated with the plurality of software applications,

a data extraction unit for extracting data from the source code data to form extracted data, wherein the extracted data also includes a plurality of technical artifacts,

an application model unit for generating an application model that includes a representation of selected data components of the extracted data and for generating application model data from the application model, wherein the application model data includes data representative of a plurality of business terms and a plurality of technical artifacts, wherein the application model includes application interfaces for the plurality of software applications,

a term identification unit for identifying the plurality of business terms from the application model data, wherein each of the plurality of business terms includes business related data,

a mapping unit for mapping together in a multi-dimensional table the plurality of business terms and the plurality of technical artifacts from the application model data to form map data, and

a term lineage determination unit for determining an inter-application lineage of one or more of the plurality of business terms based on the map data by tracking a flow of the one or more of the plurality of business terms from an origination application interface associated with a first software application of the plurality of software applications to a destination application interface associated with a second software application of the plurality of software applications, wherein the inter-application lineage is representative of the one or more data paths associated with one or more of the plurality of business terms flowing between the plurality of software applications, and wherein the flow of the business terms is representative of at least one of direct flow of business term data or a transformation of business term data.

2 . The system of claim 1 , wherein the application interfaces comprises one or more programs.

3 . The system of claim 2 , wherein the term identification unit identifies selected ones of the data components in the application model data, organizes the data components into a plurality of groups in which all elements of a group refer to the same concept, and associates each of the plurality of groups with one or more of the plurality of business terms.

4 . The system of claim 3 , wherein the mapping unit maps together the plurality of business terms with the plurality of software artifacts from the application model data that implements the business terms to establish a relationship therebetween.

5 . The system of claim 4 , wherein the mapping unit maps together the plurality of business terms and the plurality of software artifacts from the application model data for each of the plurality of software applications to form a map for each of the plurality of software applications.

6 . The system of claim 5 , wherein each one of the maps includes a table that tabulates the plurality of business terms and the plurality of software artifacts.

7 . The system of claim 6 , wherein the mapping unit is configured to combine the map for each of the plurality of software applications to create a combined map.

8 . The system of claim 7 , further comprising a storage unit for storing the extracted data and for providing the extracted data to the application model unit, wherein the storage unit comprises a database for storing the extracted data and a knowledge repository for storing selected information about the software application.

9 . The system of claim 8 , wherein the representation of the selected data components of the application model includes entities, relationships and associated attributes that describe a functionality of the data components in connection with each of the plurality of software applications.

10 . The system of claim 9 , wherein the entities include programs, classes, statements, data elements, tables, columns, or screens, and wherein the attributes include associated identifying information that further specify the entity.

11 . The system of claim 10 , further comprising a user interface generator for generating a user interface for displaying a list of the business terms or a list of the software artifacts that implement the business terms.

12 . The system of claim 7 , wherein the term lineage determination unit determines from the map data an inter-application lineage of one or more of the business terms based on the mapping between the business term data and the software object data in the map.

13 . The system of claim 1 , wherein the technical artifacts are shared between two or more of the plurality of software applications, and wherein the technical artifacts are designated as the application interfaces.

14 . The system of claim 1 , wherein the term lineage determination unit generates a matrix suitable for display on a user interface setting forth software applications and business terms, and wherein the software applications are indicative of applications functioning as the application interfaces.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2025
From: OARA, IOAN MIHAI; BULYONKOV, MIKHAIL
To: HATHA SYSTEMS, LLC
Reel/Frame 070730/0303 →
Continuity (14)
Continuation 17701548 · Mar 22, 2022
Continuation In Part 17388491 · Jul 29, 2021
Continuation In Part 17168854 · Feb 5, 2021
Continuation In Part 17168859 · Feb 5, 2021
Continuation In Part 17168854 · Feb 5, 2021
Continuation In Part 17168859 · Feb 5, 2021
Continuation In Part 17013130 · Sep 4, 2020
Continuation In Part 17013130 · Sep 4, 2020
Continuation In Part 17013130 · Sep 4, 2020
Continuation In Part 17013130 · Sep 4, 2020
Provisional Application 62970368 · Feb 5, 2020
Provisional Application 62970466 · Feb 5, 2020
Provisional Application 62970556 · Feb 5, 2020
Related Publication 20240296175A1 · Sep 5, 2024
References Cited (179)
US 5481741A · McKaskle et al. · 1996 [cited by applicant]
US 5978811A · Smiley · 1999 [cited by applicant]
US 5999911A · Berg et al. · 1999 [cited by applicant]
US 6038538A · Agrawal et al. · 2000 [cited by applicant]
US 6278977B1 · Agrawal et al. · 2001 [cited by applicant]
US 6308224B1 · Leymann et al. · 2001 [cited by applicant]
US 6598219B1 · Lau · 2003 [cited by applicant]
US 6615258B1 · Barry et al. · 2003 [cited by applicant]
US 6694288B2 · Smocha et al. · 2004 [cited by applicant]
US 6910204B1 · Rossomando · 2005 [cited by applicant]
US 6964034B1 · Snow · 2005 [cited by applicant]
US 7003766B1 · Hong · 2006 [cited by applicant]
US 7139999B2 · Bowman-Amuah · 2006 [cited by applicant]
US 7149734B2 · Carlson et al. · 2006 [cited by applicant]
US 7210117B2 · Kudukoli et al. · 2007 [cited by applicant]
US 7331037B2 · Dickey et al. · 2008 [cited by applicant]
US 7334216B2 · Molina-Moreno et al. · 2008 [cited by applicant]
US 7404177B1 · Greenfield et al. · 2008 [cited by applicant]
US 7448022B1 · Ram et al. · 2008 [cited by applicant]
US 7480640B1 · Elad et al. · 2009 [cited by applicant]
US 7606782B2 · Haley · 2009 [cited by applicant]
US 7631006B2 · Hagstrom et al. · 2009 [cited by applicant]
US 7640251B2 · Sundararajan et al. · 2009 [cited by applicant]
US 7702605B2 · Friedlander et al. · 2010 [cited by applicant]
US 7712073B1 · Srinivasan et al. · 2010 [cited by applicant]
US 7730446B2 · Anonsen et al. · 2010 [cited by applicant]
US 7792783B2 · Friedlander et al. · 2010 [cited by applicant]
US 7814427B2 · Cook et al. · 2010 [cited by applicant]
US 7877421B2 · Berger et al. · 2011 [cited by applicant]
US 7992130B2 · Bozza et al. · 2011 [cited by applicant]
US 8001552B1 · Chickneas · 2011 [cited by applicant]
US 8065655B1 · Deo et al. · 2011 [cited by applicant]
US 8065658B1 · Bali et al. · 2011 [cited by applicant]
US 8234621B2 · Killisperger et al. · 2012 [cited by applicant]
US 8250099B2 · Wilson et al. · 2012 [cited by applicant]
US 8271943B2 · Hudson, III · 2012 [cited by applicant]
US 8423951B1 · Koller · 2013 [cited by applicant]
US 8423952B2 · Bogl et al. · 2013 [cited by applicant]
US 8527443B2 · B'Far et al. · 2013 [cited by applicant]
US 8549469B2 · Bolarinwa · 2013 [cited by applicant]
US 8560956B2 · Curtis et al. · 2013 [cited by applicant]
US 8630969B2 · Ziegler · 2014 [cited by applicant]
US 8677318B2 · Mohindra et al. · 2014 [cited by applicant]
US 8719773B2 · Slone et al. · 2014 [cited by applicant]
US 8813022B2 · Rallapalli et al. · 2014 [cited by applicant]
US 8904342B2 · Bauder et al. · 2014 [cited by applicant]
US 8935654B2 · Sengupta et al. · 2015 [cited by applicant]
US 8984490B1 · Dahan · 2015 [cited by applicant]
US 9047165B1 · Mosterman · 2015 [cited by applicant]
US 9189203B1 · Hadar et al. · 2015 [cited by applicant]
US 9218427B1 · Thompson, III · 2015 [cited by examiner]
US 9256485B1 · Moore et al. · 2016 [cited by applicant]
US 9268849B2 · Siedlecki et al. · 2016 [cited by applicant]
US 9348879B2 · Mohammad et al. · 2016 [cited by applicant]
US 9400637B1 · Hadar et al. · 2016 [cited by applicant]
US 9436760B1 · Tacchi et al. · 2016 [cited by applicant]
US 9558260B1 · Halberstadt et al. · 2017 [cited by applicant]
US 9576017B2 · Kummer et al. · 2017 [cited by applicant]
US 9760592B2 · Huang et al. · 2017 [cited by applicant]
US 9940222B2 · Li et al. · 2018 [cited by applicant]
US 9953279B1 · Hankins et al. · 2018 [cited by applicant]
US 9965252B2 · Bera · 2018 [cited by examiner]
US 10177998B2 · Parandehgheibi · 2019 [cited by examiner]
US 10338901B2 · Hernandez-Sherrington et al. · 2019 [cited by applicant]
US 10379826B1 · Klinger et al. · 2019 [cited by applicant]
US 10417198B1 · Simonelic, II et al. · 2019 [cited by applicant]
US 10452366B2 · Daniel et al. · 2019 [cited by applicant]
US 10635566B1 · Talluri et al. · 2020 [cited by applicant]
US 10678522B1 · Yerramreddy et al. · 2020 [cited by applicant]
US 10713016B1 · Shah et al. · 2020 [cited by applicant]
US 10768909B2 · Ramanathan · 2020 [cited by applicant]
US 10873592B1 · Singh · 2020 [cited by examiner]
US 10885440B2 · Boyer et al. · 2021 [cited by applicant]
US 11144289B1 · Hwang et al. · 2021 [cited by applicant]
US 11244364B2 · Yu · 2022 [cited by applicant]
US 11288043B2 · Oara · 2022 [cited by applicant]
US 11307828B2 · Oara · 2022 [cited by applicant]
US 11314489B1 · Chartrand · 2022 [cited by applicant]
US 11314707B1 · Del Sordo · 2022 [cited by applicant]
US 11343142B1 · Wang et al. · 2022 [cited by applicant]
US 11348049B2 · Oara et al. · 2022 [cited by applicant]
US 11537963B2 · Hankins · 2022 [cited by applicant]
US 11556510B1 · Hanson · 2023 [cited by examiner]
US 11593392B2 · Portisch et al. · 2023 [cited by applicant]
US 11615271B2 · Zion et al. · 2023 [cited by applicant]
US 11620454B2 · Oara et al. · 2023 [cited by applicant]
US 11698811B1 · Tao et al. · 2023 [cited by applicant]
US 11755958B1 · Bhattarai et al. · 2023 [cited by applicant]
US 11832416B1 · Albright · 2023 [cited by examiner]
US 11836166B2 · Oara · 2023 [cited by examiner]
US 11853313B2 · Vasireddy · 2023 [cited by applicant]
US 12131242B1 · Nair · 2024 [cited by examiner]
US 12210839B1 · Burton · 2025 [cited by examiner]
US 12314150B1 · Anumolu · 2025 [cited by examiner]
US 12579012B2 · Mei · 2026 [cited by examiner]
US 20030171947A1 · Ledford et al. · 2003 [cited by applicant]
US 20040027388A1 · Berg et al. · 2004 [cited by applicant]
US 20040088197A1 · Childress et al. · 2004 [cited by applicant]
US 20040088678A1 · Litoiu et al. · 2004 [cited by applicant]
US 20070214166A1 · Maeda et al. · 2007 [cited by applicant]
US 20090171720A1 · Crook et al. · 2009 [cited by applicant]
US 20090241088A1 · Dangeville et al. · 2009 [cited by applicant]
US 20100058287A1 · Sundararajan et al. · 2010 [cited by applicant]
US 20120159427A1 · Oara et al. · 2012 [cited by applicant]
US 20120272205A1 · Fox et al. · 2012 [cited by applicant]
US 20130047090A1 · Bhandarkar et al. · 2013 [cited by applicant]
US 20130054627A1 · Rausch et al. · 2013 [cited by applicant]
US 20140282199A1 · Basu et al. · 2014 [cited by applicant]
US 20150012329A1 · Prakash et al. · 2015 [cited by applicant]
US 20150248203A1 · Srivastava et al. · 2015 [cited by applicant]
US 20150268955A1 · Mehalingam et al. · 2015 [cited by applicant]
US 20150363197A1 · Carback, III et al. · 2015 [cited by applicant]
US 20150363294A1 · Carback, III et al. · 2015 [cited by applicant]
US 20160313979A1 · Hadar et al. · 2016 [cited by applicant]
US 20170177309A1 · Bar-Or et al. · 2017 [cited by applicant]
US 20170270022A1 · Moresmau · 2017 [cited by examiner]
US 20180158235A1 · Wu et al. · 2018 [cited by applicant]
US 20210240449A1 · Oara · 2021 [cited by applicant]
US 20210240454A1 · Oara · 2021 [cited by applicant]
US 20210241191A1 · Oara · 2021 [cited by applicant]
US 20210357593A1 · Oara et al. · 2021 [cited by applicant]
US 20220215043A1 · Oara et al. · 2022 [cited by applicant]
US 20230351113A1 · Oara et al. · 2023 [cited by applicant]
EP 3588279A1 · 2020 [cited by applicant]
EP 3539022B1 · 2021 [cited by applicant]
Bose et al, “Lineage Retrieval for Scientific Data Processing: A Survey”, ACM, pp. 1-28 (Year: 2005). [cited by examiner]
Parizek et al, “ Data Lineage Analysis for Enterprise Applications by Manta: The Story of Java and C# Scanners”, ACM, p. 1-11 (Year: 2024). [cited by examiner]
Le et al, “Flash Extract: A Framework for Data Extraction by Examples”, ACM, pp. 1-13 (Year: 2014). [cited by examiner]
Laender et al, “Brief Survey of Web Data Extraction Tools”, ACM, pp. 1-10 (Year: 2002). [cited by examiner]
Mrunalini et al, “Simulating Secure Data Extraction in Extraction Transformation Loading (ETL) Processes”, IEEE, pp. 1-6 (Year: 2009). [cited by examiner]
Abi-Antoun et al, “Static Extraction and Conformance Analysis of Hierarchical Runtime Architectural Structure using Annotations,” ACM, 321-340 (2009). [cited by applicant]
Aldrich et al, “Arch Java: Connecting Software Architecture to Implementation”, ACM, pp. 187-197 (2002). [cited by applicant]
Alqahtani et al, “An Ontology-based Approach to Automate Tagging of Software Artifacts”, IEEE, pp. 169-174 (2017). [cited by applicant]
Baumgartner et al, “Scalable Web Data Extraction for Online Market Intelligence”, ACM, pp. 1512-1523 (2009). [cited by applicant]
Berger et al, “Extracting and Analyzing the Implemented Security Architecture of Business Applications”, IEEE, 285-294 (2013). [cited by applicant]
Caron et al, “Business rule patterns and their application to process analytics”, IEEE, pp. 13-20 (2013). [cited by applicant]
Chomngern. T. et al, Mobile Software Model for Web-Based Learning Using Information Flow Diagram (IFD), ACM 243-247 (2017). [cited by applicant]
Chourey et al, “Functional Flow Diagram(FFD): Semantics for Evolving Software”, IEEE, pp. 2193-2199 (2016). [cited by applicant]
Chourey, V. et al, “Functional Flow Diagram(FFD): Semantics for Evolving Software”, IEEE, 2016 Intl. Conference on Advances in Computing, Communications and Informatics (ICACCI), Sep. 21-24, 2016, Jaipur, India, 2193-21… [cited by applicant]
Eijndhoven et al, “Achieving business process flexibility with business rules”, IEEE, pp. 95-104 (2008). [cited by applicant]
Erol et al. “Combining BPM and social software: contradiction or chance?” Journal of software maintenance and evolution: research and practice 22.6-7 (2010): 449-476. Apr. 29, 2010 (Apr. 29, 2010) Retrieved on Mar. 27, … [cited by applicant]
European Search Report, EP 21750509, Jan. 8, 2024, 2 pages. [cited by applicant]
Fayyad, “The KDD Process for Extracting Useful Knowledge from vols. of Data”, ACM, pp. 27-34 (1996). [cited by applicant]
Grigalis, “Towards Web-Scale Structured Web Data Extraction”, ACM, p. 753-757 (2013). [cited by applicant]
Guo, “Automatic Transformation from Data Flow Diagram to Structure Chart”, ACM, 44-49 (1997). [cited by applicant]
Handigund et al, “An Ameliorated Methodology for the Design of Panoptic Work Process Flow Diagram”, IEEE, pp. 2052-2055 (2016). [cited by applicant]
Heer, J. et al, “Software Design Patterns for Information Visualization”, IEEE, IEEE Transactions on Visualization and Computer Graphics, vol. 12, No. 5, Sep./Oct. 2006: 853-860 (2006). [cited by applicant]
International Preliminary Report on Patentabilty, PCT/US2021/016796, dated Jul. 28, 2022, 10 pages. [cited by applicant]
International Preliminary Report on Patentabilty, PCT/US2022/038674, dated Jan. 18, 2024, 5 pages. [cited by applicant]
International Search Report and Written Opinion, PCT/US2021/016795, dated May 4, 2021, 13 pages. [cited by applicant]
International Search Report and Written Opinion, PCT/US2021/016796, dated Apr. 23, 2021, 11 pages. [cited by applicant]
International Search Report and Written Opinion, PCT/US2021/016799, dated Apr. 15, 2021, 15 pages. [cited by applicant]
International Search Report and Written Opinion, PCT/US2022/038674, dated Dec. 14, 2022, 16 pages. [cited by applicant]
Ivkovic et al, “Tracing Evolution Changes of Software Artifacts through Model Synchronization”, IEEE, pp. 1-10 (2004). [cited by applicant]
Leavens et al, “Formal Semantics for SA Style Data Flow Diagram Specification Languages”, ACM, pp. 526-532 (1998). [cited by applicant]
Leon. “The future of computer-aided innovation.” Computers in Industry 60.8 (2009): 539-550. Jun. 27, 2009 (Jun. 27, 2009) Retrieved on Mar. 28, 2021 (Mar. 28, 2021) from <https://www.sciencedirect.com/science/article/a… [cited by applicant]
Leonhardt et al, “Integration of Existing Software Artifacts into a View- and Change-Driven Development Approach,” ACM, pp. 17-24 (2015). [cited by applicant]
Liu et al, “A Process Data Extracting Method in Process Planning Knowledge discovery”, IEEE, pp. 1-5 (2009). [cited by applicant]
Mefteh et al, “Implementation and Evaluation of an Approach for Extracting Feature Models from Documented UML Use Case Diagrams”, ACM, 1602-1609 (2015). [cited by applicant]
Meng et al, “Transformation from Data Flow Diagram to UML2.0 Activity Diagram”, IEEE, pp. 1010-1014 (2010). [cited by applicant]
Mitra et al, “Analyzing Business Systems comprised of Rules and Processes using Decision Diagrams”, ACM, pp. 1-5 (2020). [cited by applicant]
Mitra, S. et al, “Analyzing Business Systems comprised of Rules and Processes using Decision Diagrams”, 13th Innovations in Software Engineering Conference (formerly known as India Software Engineering Conference) (NEC … [cited by applicant]
Robeer et al, “Automated Extraction of Conceptual Models from User Stories via NLP”, IEEE, pp. 196-205 (2016). [cited by applicant]
Sangal et al, “Using Dependency Models to Manage Complex Software Architecture”, ACM, 167-176 (2005). [cited by applicant]
Schre et al, “The Decision-Scope Approach to Specialization of Business Rules: Application in Business Process Modeling and Data Warehousing,” ACM, pp. 3-18 (2013). [cited by applicant]
Sharma et al, “Extracting High-Level Functional Design from Software Requirements”, IEEE, 35-42 (2009). [cited by applicant]
Su et al., “Leveraging Usage Data of Software Architecture Artefacts”, IEEE, pp. 13-21 (2019). [cited by applicant]
Surekha et al, “A Rapid Application Development Framework for Rule-Based Named-Entity Extraction”, ACM, pp. 1-4 (2009). [cited by applicant]
Tan et al, “A col. Level Data Lineage Processing System Based on Hive”, ACM, 47-52 (2020). [cited by applicant]
Van Eijndhoven, T. et al, “Achieving business process flexibility with business rules”, IEEE, 12th International IEEE Enterprise Distributed Object Computing Conference, pp. 95-104 (2008). [cited by applicant]
Ward, “The Transformation Schema: An Extension of the Data Flow Diagram to Represent Control and Timing,” IEEE, pp. 198-210 (1986). [cited by applicant]
Weichselbraun et al, “Mitigating linked data quality issues in knowledge-intense information extraction methods”, ACM, pp. 1-12 (2017). [cited by applicant]
Woodruff et al, “Supporting Fine-Grained Data Lineage in a Database Visualization Environment”, IEEE, pp. 91-102 (1997). [cited by applicant]
Chaparro et al, “Towards the Automatic Extraction of Structural Business Rules from Legacy Databases”, IEEE, pp. 479-488 (2012). [cited by applicant]
Chittimalli et al, “BuRRiTo: A Framework to Extract, Specify, Verify and Analyze Business Rules”, IEEE, pp. 1190-1193 (2019). [cited by applicant]
International Preliminary Report on Patentabilty, PCT/US2023/064794, dated Sep. 24, 2024, 9 pages. [cited by applicant]
Lin et al, “Research on Extracting Risk Control Rules for Internet of Things Business”, IEEE, pp. 598-601 (2018). [cited by applicant]
Van der Walt et al, “Data Migration in Support of Business Intelligence in a Growing Organization”, IEEE, pp. 1-9 (2021). [cited by applicant]
Extended European Search Report, EP Application No. 22850315.7, dated May 19, 2025, 10 pages. [cited by applicant]