US20180285394A1 - System and Method for Data Integration - Google Patents

System and Method for Data Integration Download PDF

Info

Publication number
US20180285394A1
US20180285394A1 US16/003,054 US201816003054A US2018285394A1 US 20180285394 A1 US20180285394 A1 US 20180285394A1 US 201816003054 A US201816003054 A US 201816003054A US 2018285394 A1 US2018285394 A1 US 2018285394A1
Authority
US
United States
Prior art keywords
data
transaction
source
data file
object model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US16/003,054
Inventor
David L. Day
Carey Nash
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nationwide Mutual Insurance Co
Original Assignee
Nationwide Mutual Insurance Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nationwide Mutual Insurance Co filed Critical Nationwide Mutual Insurance Co
Priority to US16/003,054 priority Critical patent/US20180285394A1/en
Publication of US20180285394A1 publication Critical patent/US20180285394A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • G06F17/30312
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses

Definitions

  • the systems and methods described herein relate to processing data associated with a transaction in accordance with business rules and transmitting the transactions resulting from the processing to a target system.
  • the present invention is directed to systems, methods and computer-readable media for use in connection with processing transaction data in accordance with business rules.
  • a data file containing data describing a source transaction, and associated with an identifier is received.
  • a type of the source transaction is identified based on a key indicator associated with the data file.
  • the data contained in the data file is mapped to an object model based on the type of the source transaction identified.
  • Output transaction objects are created by processing the data contained in the data file, mapped to the object model, using business rules.
  • the business rules are selected based on a type of the object model.
  • the output transaction objects are received and matched to the source transaction.
  • a target system to receive the output transaction objects is identified based on the identifier associated with the data file.
  • FIG. 1 illustrates a system reflecting an Extract-Transform-Load Development environment
  • FIG. 2 illustrates an exemplary system reflecting a Business Rules Engine-based ETL Development environment in accordance with one embodiment of the present invention
  • FIG. 3 illustrates an exemplary system that may be used in connection with one embodiment of the present invention
  • FIGS. 4 and 5 illustrate an exemplary flow of information among certain of the system components illustrated in FIG. 3 ;
  • FIG. 6 is a conceptual component diagram illustrating certain subsystems used in connection with an embodiment of the present invention.
  • FIG. 7 is a logical component diagram illustrating certain subsystems used in connection with an embodiment of the present invention.
  • FIG. 8 is a logical component diagram of one of the subsystems used in connection with an embodiment of the present invention.
  • FIG. 9 is a logical component diagram of another of the subsystems used in connection with an embodiment of the present invention.
  • FIG. 10 is a conceptual data model for work management performed in connection with an embodiment of the present invention.
  • FIG. 11 is an exemplary system that may be used for carrying out the methods of the present invention.
  • FIG. 12 is a logical operation design diagram for certain of the subsystems used in connection with an embodiment of the present invention.
  • FIG. 13 is a flow chart illustrating an exemplary method of the present invention.
  • the Developer 102 creates a rule framework in the Rule Authoring Environment 104 (and, more specifically, the Business Rules Management System (BRMS) 302 of FIG. 3 ), where rules are authored.
  • This framework contains high-level data models and the semantics in which rules are written.
  • the Developer 102 is also responsible for maintaining the code within the Source Integrator 301 ( FIG. 3 ), which contains only the logic necessary to move data from one system to another, passing data to the Business Rules Engine (BRE) 303 for transformation via the business-authored rules.
  • BRE Business Rules Engine
  • the Business and System Analysts are responsible for creating and testing rules in the BRMS 302 , authorizing rules for deployment, and deploying rules from the BRMS 302 to the BRE 303 , where rules are made available to the live system 105 for ETL processes.
  • This process is managed outside the SDLC in its own Rule Development Lifecycle (RDLC).
  • RDLC Rule Development Lifecycle
  • the rule changes are managed separately from the application code.
  • This lifecycle has a much quicker response time, allowing rule changes to go from creation to implementation in a much shorter time frame (e.g., a single day), without the need for software developers or other costly IT resources.
  • the SDLC still exists to manage application code changes, but is used less frequently and is limited to application code changes that are unrelated to changes in business logic.
  • a typical ETL environment has two major components: the ETL Development Environment and the ETL Processing Engine.
  • the ETL Development Environment is where the Developer 102 implements both business-rule data transformations and system-to-system integration.
  • the ETL Processing Engine 103 is responsible for the execution of both the data transformations and system integrations.
  • a typical process would involve pulling in a dataset from a source system (e.g., a database, remote file system or file system), manipulate the data based on code written by the developer 102 to potentially map values from one form to another (e.g., change states from their long name, such as Ohio, to a short form, such as OH) or apply business logic (e.g., calculate taxes or assign a transaction to a reporting region), then send the resulting data to a target system (e.g., a database, remote file system or file system).
  • a source system e.g., a database, remote file system or file system
  • the BRE-based ETL development process has three major components, in the exemplary embodiment: the BRMS 302 , the BRE 303 , and the Source Integrator 301 .
  • Business analysts 100 e.g., User 300
  • author business rules such as calculating tax values, assigning transactions to reporting regions, or translating values from one form to another
  • BRMS 302 allows for authoring of business rules, manages the rule development lifecycle, and deploys the business rules to BRE 303 .
  • BRMS 302 is responsible for authenticating and authorizing individuals who need to interact with business rules.
  • the BRE 303 provides the business rules as a service and processes data it receives from the Source Integrator 301 against the business rules.
  • BRE 303 is responsible for authenticating and authorizing individuals who need to administer or deploy business rules.
  • Source Integrator 301 is responsible for receiving financial data from the various source systems throughout the enterprise and creating data that is then sent out to the various target information technology systems.
  • the Source Integrator 301 is programmed to extract or receive data from a source system, pass it to the BRE 303 for data transformation, receive transformed results from the BRE 303 , then send to or update a target system with those same results.
  • the Source Integrator 301 is the tying component, allowing for the application of, potentially, highly volatile and business-owned rules to batch ETL processes without the need for involvement of Developer 102 .
  • the Source Integrator 301 standardizes the source data it receives, sends it to the BRE 303 for processing in accordance with the business rules, generates transactions (e.g., one or more output transactions, which include payload data) based on the data it receives back from the BRE 303 after processing, validates those transactions, distributes the transactions back to a database/system, and manages source integration errors.
  • Source Integrator 301 is also responsible for authenticating and authorizing individuals who need to administer source integration processes.
  • Reference Data Repository 306 is used by BRE 303 to validate values of common attributes (e.g., it holds a master list of values for things such as, in the exemplary insurance accounting embodiment, General Ledger Account, Territory, Product).
  • Source system 304 is representative of one or more source systems that manage events or are other types of systems that process transactions from which Source Integrator 301 receives data relating to transactions.
  • Target system 305 is representative of one or more target systems that receive data after being processed in accordance with business rules.
  • Certain of the exemplary embodiments described herein, including some of the diagrams and examples, relate to business events that trigger accounting transactions. However, it is noted that the invention is not so limited and is applicable in any context in which transactional data generated by an organization is to be processed in accordance with business rules.
  • FIG. 4 is a flow diagram illustrating steps of the rule creation and deployment process in accordance with one embodiment of the invention.
  • Rule author 400 (Business Analyst 100 ) creates or updates rules in step 401 , using BRMS 302 .
  • BRMS 302 requests reference data values from Reference Data Repository 306 . This ensures that rules are written using valid values of common attributes.
  • reference data values in rules are validated as they are written and again in the transactions as they are processed.
  • valid reference data values are returned.
  • the new rule or rule change is verified by BRMS 302 back to the rule author.
  • the rule tester executes a test for the rule.
  • step 406 the test results are presented back to the rule tester by BRMS 302 .
  • the rule tester marks the rule for production.
  • BRMS 302 confirms that the rule is marked for production.
  • step 409 the rule manager marks the rule for deployment.
  • the rule is deployed by BRMS 302 to BRE 303 , which verifies deployment back to BRMS 302 in step 411 .
  • step 412 the rule deployment is verified back to the rule manager.
  • BRMS 302 is instrumental in allowing for the authoring of business rules, managing the rule development lifecycle, and distributing business rules.
  • BRE 303 is instrumental in providing the business rules as a service and processing data against the business rules.
  • a source system 304 submits data to the Source Integrator 301 .
  • the data is submitted by the Source Integrator 301 to the BRE 303 for rule processing.
  • reference data values are requested from Reference Data Repository 306 .
  • valid reference data values are returned.
  • the Source Integrator 301 then distributes the processed data to the appropriate target system(s) 305 .
  • the Source Integrator 301 is instrumental in standardizing source data, generating transactions, validating transactions, distributing transactions and managing source integration errors.
  • FIG. 6 is a conceptual component diagram of the subsystems described in FIG. 3 .
  • Directory services 601 is the component responsible for user authentication.
  • SLA (i.e., Service Level Agreement) management component 602 is a component responsible for ensuring source systems deliver data to the system by pre-arranged deadlines.
  • FIG. 7 is a logical component diagram of the subsystems described in FIG. 3 .
  • FIG. 8 is a logical component diagram of the Source Integrator 301 .
  • the services provided by each of the logical components are described as follows.
  • Input adapter components 801 are components that handle mapping received data (files, messages, etc) to internal representations.
  • the external services provided include mapping external data structure to internal representations.
  • Service bus component 802 is a component that mediates services among the other components by message queues.
  • the external services provided include sending and retrieving messages.
  • the message storage component 803 is responsible for persisting service bus 802 messages.
  • the external services provided include storing messages.
  • the output adapter components 804 are components that handle generating external output data (files, messages, etc) from internal representations.
  • the external services provided include mapping internal representations to external data structures.
  • the rule service façade component 805 is a component that is responsible for providing the other components a generic interface to the BRE 303 .
  • the external services provided include executing business rules.
  • the work manager component 806 is responsible for coordinating the work of the other components.
  • the external services provided include providing work configuration, routing work, suspending work, cancelling work, providing work status, and providing events.
  • the work storage component 807 is responsible for persisting work related information for the work manager component 806 .
  • the external services provided include storing work configuration information and storing work in progress.
  • the event logging component 808 is responsible for routing events to external storage.
  • the external services provided include logging events.
  • the work administration user interface component 809 is responsible for providing a user interface for work configuration.
  • the external services provided include creating work configuration information, retrieving work configuration information, updating work configuration information, and deleting work configuration information.
  • the statistics manager component 811 is responsible for coordinating work statistics for the work manager component 806 .
  • the statistics storage component 812 is responsible for persisting statistical information for the statistics manager component 811 .
  • the statistics components are components that track such aspects of the system as how many records were processed in a batch, how long a batch process took, and how long it took to execute rules appropriately, by way of example.
  • the source data interface 813 provides transaction information from source systems 304 .
  • the asynchronous rule services interface 814 provides asynchronous invocation of business rules.
  • the target data interface 815 provides transaction information (e.g., standard enterprise accounting transaction information).
  • the synchronous rule services interface 816 provides synchronous invocation of business rules.
  • the directory services interface 817 provides information for authenticating users
  • FIG. 9 is a logical component diagram of the BRE 303 .
  • Business rule execution server component 901 is responsible for executing business rules.
  • Rule application manager component 902 is responsible for managing execution of the rule application manager component 902 against a set of data.
  • the external services provided include processing rule application requests and providing process results.
  • the rule application service adapters component 903 is responsible for matching incoming synchronous service requests to the rule application manager component 902 .
  • the external services provided include receiving synchronous requests and matching requests to rule applications.
  • Service bus component 904 is responsible for managing asynchronous service requests via message queues.
  • the external services provided include sending messages and retrieving messages.
  • the message storage component 905 is responsible for persisting messages for the service bus component 904 .
  • Asynchronous rule services interface 906 provides for asynchronous invocation of business rules.
  • Synchronous rule services interface 907 provides for synchronous invocation of business rules.
  • Rule deployment services interface 908 provides a method for deploying and managing business rules.
  • FIG. 10 depicts the conceptual data model for work management in the Source Integrator 301 .
  • a source data set 1001 is a set of related business transactions.
  • a source file 1002 is a source data set in the form of a file.
  • a control data set 1003 is a set of data used to verify the integrity of a source data set.
  • a control file 1004 is a control data set in the form of a file.
  • a source 1005 is the origin of a source data set, comprised of a source system 1006 and an information class 1007 .
  • a source system 1006 is the information system from which information originates.
  • An information class 1007 is a high level class used to group lower level classes of business transactions.
  • An interface 1008 is the information channel through which source data sets are received.
  • a format 1009 describes the guidelines by which a data in a source data set 1001 can be mapped to internal representations.
  • a work configuration 1010 is information required by the other components to process the work and related work items.
  • Source integrator work 1011 is a unit of work that represents an incoming source data set 1001 and related control data set 1003 . It is the internal representation of data for processing.
  • a work item 1012 is a subset of data in the source integrator work class 1011 . It permits the system to break data down into smaller batches for performance manageability.
  • a source transaction 1013 is a discrete transaction from the source system 304 .
  • a business transaction 1014 is a source transaction 1013 representing aspects of a business event.
  • the systems and methods described herein can be used in connection with processing data related to any sort of business event.
  • the business event can be a premium payment, a claim payout or a pay day.
  • one or more accounting transactions are generated (output transactions), which are then reflected back in the appropriate target system(s).
  • an accounting transaction 1015 is a source transaction in the form of credits and/or debits.
  • An enterprise accounting transaction 1016 is a standardized enterprise accounting credit or debit.
  • a monetary transaction 1017 is an enterprise accounting transaction 1016 that represents monetary exchange.
  • a statistical transaction 1018 is an enterprise accounting transaction 1016 that represents a statistical measure.
  • a statistic is a metric used to measure processing of source integrator work 1011 and work items 1012 , and to measure the overall processing of data for a source 1005 .
  • a statistical constraint 1019 is a constraint applied to a statistic 1020 to determine viability of the processed source integrator work 1011 .
  • Source Integrator 301 is programmed to watch the file system(s) (e.g., source system 304 ) for files with specific filename patterns—e.g., the filename pattern matches a regular expression (i.e., a specific pattern that provides concise and flexible means to specify and recognize strings of text, such as particular characters, words, or patterns of characters). For example, if a payment made to a policy holder may be represented by data with a file name that includes the initials of the system that made the payment and a string of numbers representing the date a payment was made.
  • a regular expression i.e., a specific pattern that provides concise and flexible means to specify and recognize strings of text, such as particular characters, words, or patterns of characters.
  • the Source Integrator 301 is programmed to watch the file system(s) for a filename pattern
  • the Source Integrator 301 can be programmed to look for any other key indicator. For example, channels dedicated to specific transaction types can be monitored by the Source Integrator 301 . In these embodiments, the Source Integrator 301 would be programmed to know that transactions coming through on a particular message queue would be associated with a particular transaction type.
  • Source Integrator 301 When a file appears in the file system, Source Integrator 301 reads the file in and maps the data contained in the file to an object model (i.e., an internal representation of the transaction) based on the filename pattern.
  • an object model i.e., an internal representation of the transaction
  • the pattern ⁇ rps_. ⁇ d ⁇ 8 ⁇ _ ⁇ d ⁇ 6 ⁇ $ represents a repetitive payment, such as an annuity payment.
  • a file arrives with the name “rps_20121230_153025”.
  • the Source Integrator 301 matches the filename to the pattern and then maps the data to an object model of RepetitivePayment, which has properties such as Amount, Frequency, and Date, by way of example.
  • the object model is used to author and apply the business rules.
  • a batch of financial transaction objects is thus created, each object representing a single financial transaction, e.g., a claims payment, an annuity payment etc.
  • These financial transaction objects are then written to the Transaction Rules In message queue within the Source Integrator 301 where they wait for the BRE 303 to pick them up.
  • the BRE 303 listens for transaction objects on the Transaction Rules In message queue. When transactions appear in the queue, the BRE 303 uses the transaction object type to determine which set of business rules applies (business rules being authored using BRMS 302 , as described above). The BRE 303 then processes the financial transaction objects against the appropriate set of business rules and produces one or more output transactions (e.g., in this example, accounting transaction objects, such as a credit or a debit). The BRE 303 then writes the output transaction objects to the Transaction Rules Out message queue, where they wait for the Source Integrator 301 to pick them up. For example, a single claims payment (financial transaction), upon being processed by BRE 303 , my produce two credit accounting transactions and two debit accounting transactions.
  • the Source Integrator 301 listens for transaction object(s) on the Transaction Rules Out message queue. When transaction objects appear, it matches them up to the original financial transaction object, based on a transaction identifier (i.e., in one embodiment, all incoming transactions are tagged with an identifier) and, again, based on the original filename pattern, chooses the appropriate target system(s) 305 (i.e., the Source Integrator 301 is configured to relate a filename pattern to a source system). The Source Integrator 301 stages both the financial and accounting transaction objects in a database for distribution to the target system(s) 305 .
  • a transaction identifier i.e., in one embodiment, all incoming transactions are tagged with an identifier
  • chooses the appropriate target system(s) 305 i.e., the Source Integrator 301 is configured to relate a filename pattern to a source system.
  • the Source Integrator 301 stages both the financial and accounting transaction objects in a database for distribution to the target system(s) 305
  • Source Integrator 301 validates data integrity and then sends these transactions to the downstream system(s) (e.g., in an accounting-related example, the General Ledger) and to an operational datastore (e.g., Remote Filesystem 107 of FIG. 2 ) for system reporting and auditing.
  • downstream system(s) e.g., in an accounting-related example, the General Ledger
  • operational datastore e.g., Remote Filesystem 107 of FIG. 2
  • Database server(s) 1100 may include a database services management application 1106 that manages storage and retrieval of data from the database(s) 1101 , 1102 (e.g., associated with one or more of source systems 304 or target system(s) 305 ).
  • the databases may be relational databases; however, other data organizational structure may be used without departing from the scope of the present invention.
  • One or more application server(s) 1103 are in communication with the database server 1100 .
  • the application server 1103 communicates requests for data to the database server 1100 .
  • the database server 1100 retrieves the requested data.
  • the application server 1103 may also send data to the database server for storage in the database(s) 1101 , 1102 .
  • the application server 1103 comprises one or more processors 1104 , computer readable storage media 1105 that store programs (computer readable instructions) for execution by the processor(s), and an interface 1107 between the processor(s) 1104 and computer readable storage media 1105 .
  • the application server may store the computer programs referred to herein.
  • application server 1103 may house one or more of Source Integrator 201 , BRMS 302 and BRE 303 .
  • the Internet server 1108 also comprises one or more processors 1109 , computer readable storage media 1111 that store programs (computer readable instructions) for execution by the processor(s) 1109 , and an interface 1110 between the processor(s) 1109 and computer readable storage media 1111 .
  • the Internet server 1108 is employed to deliver content that can be accessed through the communications network, e.g., by an end user.
  • an application such as an Internet browser
  • the Internet server 1108 receives and processes the request.
  • the Internet server 1108 sends the data or application requested along with user interface instructions for displaying a user interface.
  • the non-transitory computer readable storage media that store the programs may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data.
  • Computer readable storage media may include, but is not limited to, RAM, ROM, Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory or other solid state memory technology, CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer system and processed.
  • FIG. 12 is a diagram illustrating the logical operation of the BRE 303 , in an exemplary embodiment.
  • the web application server node 1201 allows the user to access and initiate transactions across the web.
  • the directory and services node 1202 is the user repository against which authentication is validated.
  • the purpose of the database node 1203 is to store and provide access to the data required for the operation of the business rules processing service.
  • the application node 1204 encompasses three application functionalities: for the BRMS 302 , it provides the user interface to the application, and publishes rules to the rules engine for processing; for the BRE 303 , it performs the rules processing; and for the Source Integrator 301 , it transports data from the BRE 303 to the back end systems/target systems 305 .
  • the enterprise data node 1205 represents the data stores for the enterprise's back end systems. Data sources include operational databases, historical data and information from existing corporate environment and line of business applications. Data may reside on many different platforms and can contain structured information, such as tables or spreadsheets, or unstructured information.
  • Web server node 1206 is the Web server for the application with an application server plug-in to maintain session affinity to an application server.
  • Intranet client node(s) 1207 provides access to the application through an internal (e.g., intranet) client via a web-browser through the enterprise network.
  • Client node 1208 is a client that is not browser based.
  • a flow chart is shown, illustrating an exemplary method of the present invention.
  • a data file containing data describing a source transaction, and associated with an identifier is received in step 1301 .
  • a type of the source transaction is identified based on a key indicator associated with the data file, in step 1302 .
  • the data contained in the data file is mapped to an object model based on the type of the source transaction identified, in step 1303 .
  • Business rules are selected based on a type of the object model, in step 1304 .
  • Output transaction objects are created by processing the data contained in the data file, mapped to the object model, using business rules, in step 1305 .
  • the output transaction objects are received and matched to the source transaction, in step 1306 .
  • a target system to receive the output transaction objects is identified based on the identifier associated with the data file, in step 1307 .

Abstract

Methods and systems for processing and integrating data. A data file containing data describing a source transaction, associated with an identifier, is received. A type of the source transaction is identified based on a key indicator associated with the data file. The data contained in the data file is mapped to an object model based on the type of the source transaction identified. Output transaction objects are created by processing the data contained in the data file, mapped to the object model, using business rules. The business rules are selected based on a type of the object model. The output transaction objects are received and matched to the source transaction. A target system to receive the output transaction objects is identified based on the identifier associated with the data file.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application claims priority to U.S. Provisional Patent Application No. 61/604,562, filed Feb. 29, 2012, the entirety of which is incorporated herein by reference.
  • FIELD OF THE INVENTION
  • The systems and methods described herein relate to processing data associated with a transaction in accordance with business rules and transmitting the transactions resulting from the processing to a target system.
  • SUMMARY OF EMBODIMENTS OF THE INVENTION
  • The present invention is directed to systems, methods and computer-readable media for use in connection with processing transaction data in accordance with business rules. A data file containing data describing a source transaction, and associated with an identifier, is received. A type of the source transaction is identified based on a key indicator associated with the data file. The data contained in the data file is mapped to an object model based on the type of the source transaction identified. Output transaction objects are created by processing the data contained in the data file, mapped to the object model, using business rules. The business rules are selected based on a type of the object model. The output transaction objects are received and matched to the source transaction. A target system to receive the output transaction objects is identified based on the identifier associated with the data file.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The foregoing summary, as well as the following detailed description of various embodiments, will be better understood when read in conjunction with the appended drawings. It should be understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.
  • In the drawings:
  • FIG. 1 illustrates a system reflecting an Extract-Transform-Load Development environment;
  • FIG. 2 illustrates an exemplary system reflecting a Business Rules Engine-based ETL Development environment in accordance with one embodiment of the present invention;
  • FIG. 3 illustrates an exemplary system that may be used in connection with one embodiment of the present invention;
  • FIGS. 4 and 5 illustrate an exemplary flow of information among certain of the system components illustrated in FIG. 3;
  • FIG. 6 is a conceptual component diagram illustrating certain subsystems used in connection with an embodiment of the present invention;
  • FIG. 7 is a logical component diagram illustrating certain subsystems used in connection with an embodiment of the present invention;
  • FIG. 8 is a logical component diagram of one of the subsystems used in connection with an embodiment of the present invention;
  • FIG. 9 is a logical component diagram of another of the subsystems used in connection with an embodiment of the present invention;
  • FIG. 10 is a conceptual data model for work management performed in connection with an embodiment of the present invention;
  • FIG. 11 is an exemplary system that may be used for carrying out the methods of the present invention;
  • FIG. 12 is a logical operation design diagram for certain of the subsystems used in connection with an embodiment of the present invention; and
  • FIG. 13 is a flow chart illustrating an exemplary method of the present invention.
  • DETAILED DESCRIPTION
  • With reference to FIG. 1, in a typical Extract-Transform-Load (ETL) Development environment, business rules (i.e., processing directives not based on strict, well-known algorithms but derived from how an entity chooses to do business) and data processing code are intermingled. Changes to business rules are only made through a standard Software Development Lifecycle (SDLC) in which the Business Analyst or Rule Owner (e.g., Business Analyst 100 of FIG. 1) has no direct control over the rules for which they are responsible. Rule changes must pass from the Business Analyst 100 to the System Analyst 101 for review and then, finally, to the Developer 102 who implements the changes directly in the ETL code (i.e., which is maintained in ETL Application Server 103). This process can be lengthy and time consuming.
  • With reference to FIG. 2, use of the Business Rules Engine-based ETL Development systems and processes described herein allow for rule changes to be made directly by those accountable for the rules. The Developer 102 creates a rule framework in the Rule Authoring Environment 104 (and, more specifically, the Business Rules Management System (BRMS) 302 of FIG. 3), where rules are authored. This framework contains high-level data models and the semantics in which rules are written. The Developer 102 is also responsible for maintaining the code within the Source Integrator 301 (FIG. 3), which contains only the logic necessary to move data from one system to another, passing data to the Business Rules Engine (BRE) 303 for transformation via the business-authored rules.
  • The Business and System Analysts are responsible for creating and testing rules in the BRMS 302, authorizing rules for deployment, and deploying rules from the BRMS 302 to the BRE 303, where rules are made available to the live system 105 for ETL processes. This process is managed outside the SDLC in its own Rule Development Lifecycle (RDLC). In this model, the rule changes are managed separately from the application code. This lifecycle has a much quicker response time, allowing rule changes to go from creation to implementation in a much shorter time frame (e.g., a single day), without the need for software developers or other costly IT resources. The SDLC still exists to manage application code changes, but is used less frequently and is limited to application code changes that are unrelated to changes in business logic.
  • As described with reference to FIG. 1, a typical ETL environment has two major components: the ETL Development Environment and the ETL Processing Engine. The ETL Development Environment is where the Developer 102 implements both business-rule data transformations and system-to-system integration. The ETL Processing Engine 103 is responsible for the execution of both the data transformations and system integrations. A typical process would involve pulling in a dataset from a source system (e.g., a database, remote file system or file system), manipulate the data based on code written by the developer 102 to potentially map values from one form to another (e.g., change states from their long name, such as Ohio, to a short form, such as OH) or apply business logic (e.g., calculate taxes or assign a transaction to a reporting region), then send the resulting data to a target system (e.g., a database, remote file system or file system).
  • The BRE-based ETL development process, described with reference to FIGS. 2 and 3, has three major components, in the exemplary embodiment: the BRMS 302, the BRE 303, and the Source Integrator 301. Business analysts 100 (e.g., User 300) author business rules (such as calculating tax values, assigning transactions to reporting regions, or translating values from one form to another) in the BRMS 302. BRMS 302 allows for authoring of business rules, manages the rule development lifecycle, and deploys the business rules to BRE 303. BRMS 302 is responsible for authenticating and authorizing individuals who need to interact with business rules.
  • Once these business users have tested and approved their rules, they deploy the rules to the BRE 303 where they are then available for execution during data processing. The BRE 303 provides the business rules as a service and processes data it receives from the Source Integrator 301 against the business rules. BRE 303 is responsible for authenticating and authorizing individuals who need to administer or deploy business rules.
  • Source Integrator 301 is responsible for receiving financial data from the various source systems throughout the enterprise and creating data that is then sent out to the various target information technology systems. The Source Integrator 301 is programmed to extract or receive data from a source system, pass it to the BRE 303 for data transformation, receive transformed results from the BRE 303, then send to or update a target system with those same results. The Source Integrator 301 is the tying component, allowing for the application of, potentially, highly volatile and business-owned rules to batch ETL processes without the need for involvement of Developer 102. Thus, the Source Integrator 301 standardizes the source data it receives, sends it to the BRE 303 for processing in accordance with the business rules, generates transactions (e.g., one or more output transactions, which include payload data) based on the data it receives back from the BRE 303 after processing, validates those transactions, distributes the transactions back to a database/system, and manages source integration errors. Source Integrator 301 is also responsible for authenticating and authorizing individuals who need to administer source integration processes.
  • Reference Data Repository 306 is used by BRE 303 to validate values of common attributes (e.g., it holds a master list of values for things such as, in the exemplary insurance accounting embodiment, General Ledger Account, Territory, Product). Source system 304 is representative of one or more source systems that manage events or are other types of systems that process transactions from which Source Integrator 301 receives data relating to transactions. Target system 305 is representative of one or more target systems that receive data after being processed in accordance with business rules.
  • Certain of the exemplary embodiments described herein, including some of the diagrams and examples, relate to business events that trigger accounting transactions. However, it is noted that the invention is not so limited and is applicable in any context in which transactional data generated by an organization is to be processed in accordance with business rules.
  • FIG. 4 is a flow diagram illustrating steps of the rule creation and deployment process in accordance with one embodiment of the invention. Rule author 400 (Business Analyst 100) creates or updates rules in step 401, using BRMS 302. In step 402, BRMS 302 requests reference data values from Reference Data Repository 306. This ensures that rules are written using valid values of common attributes. In one embodiment, reference data values in rules are validated as they are written and again in the transactions as they are processed. In step 403, valid reference data values are returned. In step 404, the new rule or rule change is verified by BRMS 302 back to the rule author. In step 405, the rule tester executes a test for the rule. In step 406, the test results are presented back to the rule tester by BRMS 302. In step 407, the rule tester marks the rule for production. In step 408, BRMS 302 confirms that the rule is marked for production. In step 409, the rule manager marks the rule for deployment. In step 410, the rule is deployed by BRMS 302 to BRE 303, which verifies deployment back to BRMS 302 in step 411. In step 412, the rule deployment is verified back to the rule manager. Thus, BRMS 302 is instrumental in allowing for the authoring of business rules, managing the rule development lifecycle, and distributing business rules. BRE 303 is instrumental in providing the business rules as a service and processing data against the business rules.
  • Referring to FIG. 5, the functionality of the Source Integrator 301 is now described in further detail. In step 501, a source system 304 submits data to the Source Integrator 301. In step 502, the data is submitted by the Source Integrator 301 to the BRE 303 for rule processing. In step 503, reference data values are requested from Reference Data Repository 306. In step 504, valid reference data values are returned. After BRE 303 processes the data against the business rules, in step 505, the data processing results are returned to the Source Integrator 301. In step 506, the Source Integrator 301 then distributes the processed data to the appropriate target system(s) 305. Thus, the Source Integrator 301 is instrumental in standardizing source data, generating transactions, validating transactions, distributing transactions and managing source integration errors.
  • FIG. 6 is a conceptual component diagram of the subsystems described in FIG. 3. Directory services 601 is the component responsible for user authentication. SLA (i.e., Service Level Agreement) management component 602 is a component responsible for ensuring source systems deliver data to the system by pre-arranged deadlines.
  • FIG. 7 is a logical component diagram of the subsystems described in FIG. 3.
  • FIG. 8 is a logical component diagram of the Source Integrator 301. The services provided by each of the logical components are described as follows. Input adapter components 801 are components that handle mapping received data (files, messages, etc) to internal representations. The external services provided include mapping external data structure to internal representations. Service bus component 802 is a component that mediates services among the other components by message queues. The external services provided include sending and retrieving messages. The message storage component 803 is responsible for persisting service bus 802 messages. The external services provided include storing messages. The output adapter components 804 are components that handle generating external output data (files, messages, etc) from internal representations. The external services provided include mapping internal representations to external data structures. The rule service façade component 805 is a component that is responsible for providing the other components a generic interface to the BRE 303. The external services provided include executing business rules. The work manager component 806 is responsible for coordinating the work of the other components. The external services provided include providing work configuration, routing work, suspending work, cancelling work, providing work status, and providing events. The work storage component 807 is responsible for persisting work related information for the work manager component 806. The external services provided include storing work configuration information and storing work in progress. The event logging component 808 is responsible for routing events to external storage. The external services provided include logging events. The work administration user interface component 809 is responsible for providing a user interface for work configuration. The external services provided include creating work configuration information, retrieving work configuration information, updating work configuration information, and deleting work configuration information. The statistics manager component 811 is responsible for coordinating work statistics for the work manager component 806. The statistics storage component 812 is responsible for persisting statistical information for the statistics manager component 811. The statistics components are components that track such aspects of the system as how many records were processed in a batch, how long a batch process took, and how long it took to execute rules appropriately, by way of example.
  • With further reference to FIG. 8, the component interfaces are now described. The source data interface 813 provides transaction information from source systems 304. The asynchronous rule services interface 814 provides asynchronous invocation of business rules. The target data interface 815 provides transaction information (e.g., standard enterprise accounting transaction information). The synchronous rule services interface 816 provides synchronous invocation of business rules. The directory services interface 817 provides information for authenticating users
  • FIG. 9 is a logical component diagram of the BRE 303. Business rule execution server component 901 is responsible for executing business rules. Rule application manager component 902 is responsible for managing execution of the rule application manager component 902 against a set of data. The external services provided include processing rule application requests and providing process results. The rule application service adapters component 903 is responsible for matching incoming synchronous service requests to the rule application manager component 902. The external services provided include receiving synchronous requests and matching requests to rule applications. Service bus component 904 is responsible for managing asynchronous service requests via message queues. The external services provided include sending messages and retrieving messages. The message storage component 905 is responsible for persisting messages for the service bus component 904.
  • Continuing with reference to FIG. 9, the logical component interfaces are now described. Asynchronous rule services interface 906 provides for asynchronous invocation of business rules. Synchronous rule services interface 907 provides for synchronous invocation of business rules. Rule deployment services interface 908 provides a method for deploying and managing business rules.
  • FIG. 10 depicts the conceptual data model for work management in the Source Integrator 301. A source data set 1001 is a set of related business transactions. A source file 1002 is a source data set in the form of a file. A control data set 1003 is a set of data used to verify the integrity of a source data set. A control file 1004 is a control data set in the form of a file. A source 1005 is the origin of a source data set, comprised of a source system 1006 and an information class 1007. A source system 1006 is the information system from which information originates. An information class 1007 is a high level class used to group lower level classes of business transactions. An interface 1008 is the information channel through which source data sets are received. A format 1009 describes the guidelines by which a data in a source data set 1001 can be mapped to internal representations. A work configuration 1010 is information required by the other components to process the work and related work items. Source integrator work 1011 is a unit of work that represents an incoming source data set 1001 and related control data set 1003. It is the internal representation of data for processing. A work item 1012 is a subset of data in the source integrator work class 1011. It permits the system to break data down into smaller batches for performance manageability. A source transaction 1013 is a discrete transaction from the source system 304. A business transaction 1014 is a source transaction 1013 representing aspects of a business event.
  • The systems and methods described herein can be used in connection with processing data related to any sort of business event. In one exemplary embodiment, related to accounting transactions that occur within an insurance company, the business event can be a premium payment, a claim payout or a pay day. In these examples, upon BRE 303 processing the data related to the business event, one or more accounting transactions are generated (output transactions), which are then reflected back in the appropriate target system(s).
  • In the exemplary embodiment in which the system is configured to handle accounting transactions, an accounting transaction 1015 is a source transaction in the form of credits and/or debits. An enterprise accounting transaction 1016 is a standardized enterprise accounting credit or debit. A monetary transaction 1017 is an enterprise accounting transaction 1016 that represents monetary exchange. A statistical transaction 1018 is an enterprise accounting transaction 1016 that represents a statistical measure. A statistic is a metric used to measure processing of source integrator work 1011 and work items 1012, and to measure the overall processing of data for a source 1005. A statistical constraint 1019 is a constraint applied to a statistic 1020 to determine viability of the processed source integrator work 1011.
  • The particular example now presented involves a claims payment process employed within an insurance company. It will be noted that this example is used for illustration purposes only. Other non-insurance, non-financial transaction embodiments are within the scope of the present invention.
  • Source Integrator 301 is programmed to watch the file system(s) (e.g., source system 304) for files with specific filename patterns—e.g., the filename pattern matches a regular expression (i.e., a specific pattern that provides concise and flexible means to specify and recognize strings of text, such as particular characters, words, or patterns of characters). For example, if a payment made to a policy holder may be represented by data with a file name that includes the initials of the system that made the payment and a string of numbers representing the date a payment was made.
  • While in the illustrative embodiment the Source Integrator 301 is programmed to watch the file system(s) for a filename pattern, in other embodiments, within the scope of the present invention, the Source Integrator 301 can be programmed to look for any other key indicator. For example, channels dedicated to specific transaction types can be monitored by the Source Integrator 301. In these embodiments, the Source Integrator 301 would be programmed to know that transactions coming through on a particular message queue would be associated with a particular transaction type.
  • When a file appears in the file system, Source Integrator 301 reads the file in and maps the data contained in the file to an object model (i.e., an internal representation of the transaction) based on the filename pattern. Thus, in one example, by way of illustration, the pattern ̂rps_.\d{8}_\d{6}$ represents a repetitive payment, such as an annuity payment. A file arrives with the name “rps_20121230_153025”. The Source Integrator 301 matches the filename to the pattern and then maps the data to an object model of RepetitivePayment, which has properties such as Amount, Frequency, and Date, by way of example. The object model is used to author and apply the business rules. A batch of financial transaction objects is thus created, each object representing a single financial transaction, e.g., a claims payment, an annuity payment etc. These financial transaction objects are then written to the Transaction Rules In message queue within the Source Integrator 301 where they wait for the BRE 303 to pick them up.
  • The BRE 303 listens for transaction objects on the Transaction Rules In message queue. When transactions appear in the queue, the BRE 303 uses the transaction object type to determine which set of business rules applies (business rules being authored using BRMS 302, as described above). The BRE 303 then processes the financial transaction objects against the appropriate set of business rules and produces one or more output transactions (e.g., in this example, accounting transaction objects, such as a credit or a debit). The BRE 303 then writes the output transaction objects to the Transaction Rules Out message queue, where they wait for the Source Integrator 301 to pick them up. For example, a single claims payment (financial transaction), upon being processed by BRE 303, my produce two credit accounting transactions and two debit accounting transactions. The Source Integrator 301 listens for transaction object(s) on the Transaction Rules Out message queue. When transaction objects appear, it matches them up to the original financial transaction object, based on a transaction identifier (i.e., in one embodiment, all incoming transactions are tagged with an identifier) and, again, based on the original filename pattern, chooses the appropriate target system(s) 305 (i.e., the Source Integrator 301 is configured to relate a filename pattern to a source system). The Source Integrator 301 stages both the financial and accounting transaction objects in a database for distribution to the target system(s) 305. Once staged, Source Integrator 301 validates data integrity and then sends these transactions to the downstream system(s) (e.g., in an accounting-related example, the General Ledger) and to an operational datastore (e.g., Remote Filesystem 107 of FIG. 2) for system reporting and auditing.
  • Exemplary hardware and software that may be employed in connection with the systems discussed herein are now generally described with reference to FIG. 11. Database server(s) 1100 may include a database services management application 1106 that manages storage and retrieval of data from the database(s) 1101, 1102 (e.g., associated with one or more of source systems 304 or target system(s) 305). The databases may be relational databases; however, other data organizational structure may be used without departing from the scope of the present invention. One or more application server(s) 1103 are in communication with the database server 1100. The application server 1103 communicates requests for data to the database server 1100. The database server 1100 retrieves the requested data. The application server 1103 may also send data to the database server for storage in the database(s) 1101, 1102. The application server 1103 comprises one or more processors 1104, computer readable storage media 1105 that store programs (computer readable instructions) for execution by the processor(s), and an interface 1107 between the processor(s) 1104 and computer readable storage media 1105. The application server may store the computer programs referred to herein. For example, application server 1103 may house one or more of Source Integrator 201, BRMS 302 and BRE 303.
  • To the extent data and information is communicated over the Internet or an Intranet (e.g., by user 300), one or more Internet servers 1108 may be employed. The Internet server 1108 also comprises one or more processors 1109, computer readable storage media 1111 that store programs (computer readable instructions) for execution by the processor(s) 1109, and an interface 1110 between the processor(s) 1109 and computer readable storage media 1111. The Internet server 1108 is employed to deliver content that can be accessed through the communications network, e.g., by an end user. When data is requested through an application, such as an Internet browser, the Internet server 1108 receives and processes the request. The Internet server 1108 sends the data or application requested along with user interface instructions for displaying a user interface.
  • The computers referenced herein are specially programmed, in accordance with the described algorithms, to perform the functionality described herein.
  • The non-transitory computer readable storage media that store the programs (i.e., software modules comprising computer readable instructions) may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Computer readable storage media may include, but is not limited to, RAM, ROM, Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory or other solid state memory technology, CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer system and processed.
  • By way of more specific description, FIG. 12 is a diagram illustrating the logical operation of the BRE 303, in an exemplary embodiment. The web application server node 1201 allows the user to access and initiate transactions across the web. The directory and services node 1202 is the user repository against which authentication is validated. The purpose of the database node 1203 is to store and provide access to the data required for the operation of the business rules processing service. The application node 1204 encompasses three application functionalities: for the BRMS 302, it provides the user interface to the application, and publishes rules to the rules engine for processing; for the BRE 303, it performs the rules processing; and for the Source Integrator 301, it transports data from the BRE 303 to the back end systems/target systems 305. The enterprise data node 1205 represents the data stores for the enterprise's back end systems. Data sources include operational databases, historical data and information from existing corporate environment and line of business applications. Data may reside on many different platforms and can contain structured information, such as tables or spreadsheets, or unstructured information. Web server node 1206 is the Web server for the application with an application server plug-in to maintain session affinity to an application server. The purpose of the plug-in is to provide communication between the web server node 1206 and the web application server node 1201. Intranet client node(s) 1207 provides access to the application through an internal (e.g., intranet) client via a web-browser through the enterprise network. Client node 1208 is a client that is not browser based.
  • With reference to FIG. 13, a flow chart is shown, illustrating an exemplary method of the present invention. A data file containing data describing a source transaction, and associated with an identifier, is received in step 1301. A type of the source transaction is identified based on a key indicator associated with the data file, in step 1302. The data contained in the data file is mapped to an object model based on the type of the source transaction identified, in step 1303. Business rules are selected based on a type of the object model, in step 1304. Output transaction objects are created by processing the data contained in the data file, mapped to the object model, using business rules, in step 1305. The output transaction objects are received and matched to the source transaction, in step 1306. A target system to receive the output transaction objects is identified based on the identifier associated with the data file, in step 1307.

Claims (9)

What is claimed is:
1. A computer implemented method comprising:
receiving a data file containing data describing a source transaction and associated with an identifier;
identifying a type of the source transaction based on a key indicator associated with the data file;
mapping the data contained in the data file to an object model based on the type of the source transaction;
receiving one or more output transaction objects, wherein the output transaction objects are created by processing the data contained in the data file, mapped to the object model, using one or more business rules, the one or more business rules being selected based on a type of the object model;
matching the received output transaction objects to the source transaction; and
identifying a target system to receive the received output transaction objects based on the identifier associated with the data file.
2. The method of claim 1 wherein the key indicator comprises a filename pattern.
3. The method of claim 1 wherein the key indicator is associated with a channel through which the data describing the transaction is transmitted.
4. A non-transitory computer-readable storage medium that stores instructions which, when executed by one or more processors, cause the one or more processors to perform a method comprising:
receiving a data file containing data describing a source transaction and associated with an identifier;
identifying a type of the source transaction based on a key indicator associated with the data file;
mapping the data contained in the data file to an object model based on the type of the source transaction;
receiving one or more output transaction objects, wherein the output transaction objects are created by processing the data contained in the data file, mapped to the object model, using one or more business rules, the one or more business rules being selected based on a type of the object model;
matching the received output transaction objects to the source transaction; and
identifying a target system to receive the received output transaction objects based on the identifier associated with the data file.
5. The non-transitory computer-readable storage medium of claim 4 wherein the key indicator comprises a filename pattern.
6. The non-transitory computer-readable storage medium of claim 4 wherein the key indicator is associated with a channel through which the data describing the transaction is transmitted.
7. A system comprising:
memory operable to store at least one program; and
at least one processor communicatively coupled to the memory, in which the at least one program, when executed by the at least one processor, causes the at least one processor to:
receive a data file containing data describing a source transaction and associated with an identifier;
identify a type of the source transaction based on a key indicator associated with the data file;
map the data contained in the data file to an object model based on the type of the source transaction;
receive one or more output transaction objects, wherein the output transaction objects are created by processing the data contained in the data file, mapped to the object model, using one or more business rules, the one or more business rules being selected based on a type of the object model;
match the received output transaction objects to the source transaction; and
identify a target system to receive the received output transaction objects based on the identifier associated with the data file.
8. The system of claim 7 wherein the key indicator comprises a filename pattern.
9. The system of claim 7 wherein the key indicator is associated with a channel through which the data describing the transaction is transmitted.
US16/003,054 2012-02-29 2018-06-07 System and Method for Data Integration Abandoned US20180285394A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/003,054 US20180285394A1 (en) 2012-02-29 2018-06-07 System and Method for Data Integration

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261604562P 2012-02-29 2012-02-29
US13/773,701 US10019468B1 (en) 2012-02-29 2013-02-22 System and method for data integration
US16/003,054 US20180285394A1 (en) 2012-02-29 2018-06-07 System and Method for Data Integration

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/773,701 Continuation US10019468B1 (en) 2012-02-29 2013-02-22 System and method for data integration

Publications (1)

Publication Number Publication Date
US20180285394A1 true US20180285394A1 (en) 2018-10-04

Family

ID=62749580

Family Applications (2)

Application Number Title Priority Date Filing Date
US13/773,701 Active US10019468B1 (en) 2012-02-29 2013-02-22 System and method for data integration
US16/003,054 Abandoned US20180285394A1 (en) 2012-02-29 2018-06-07 System and Method for Data Integration

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/773,701 Active US10019468B1 (en) 2012-02-29 2013-02-22 System and method for data integration

Country Status (1)

Country Link
US (2) US10019468B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140310183A1 (en) * 2013-04-15 2014-10-16 Lance Weber Embedded acceptance system
CN110909059A (en) * 2019-11-25 2020-03-24 杭州晨鹰军泰科技有限公司 Data integration system, method, equipment and storage medium
WO2021046105A1 (en) * 2019-09-03 2021-03-11 Linen Software Inc. Systems and methods for assigning attribution weights to nodes

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200074563A1 (en) * 2018-08-31 2020-03-05 Mindbridge Analytics Inc. Method and apparatus for assigning transaction identifiers to data entries in a general ledger
US11182281B2 (en) * 2019-12-27 2021-11-23 Paypal, Inc. Rule testing framework for executable rules of a service provider system
CN112087502B (en) * 2020-08-28 2022-10-21 成都质数斯达克科技有限公司 Method, device and equipment for processing request and storage medium
CN112330452B (en) * 2020-11-17 2024-04-23 杭州大搜车汽车服务有限公司 Transaction data processing method, device, computer equipment and storage medium
US11954458B2 (en) * 2022-04-26 2024-04-09 Accenture Global Solutions Limited Decision logic translation system and method
CN115543940B (en) * 2022-11-25 2023-04-28 卓望数码技术(深圳)有限公司 System and method for configuring integrated unified processing file based on URI rule

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050025689A1 (en) * 2001-10-17 2005-02-03 Norihisa Kobayashi Flue gas desulfurization apparatus, flue gas desulfurization system, and method for operating flue gas desulfurization apparatus
US20120095973A1 (en) * 2010-10-15 2012-04-19 Expressor Software Method and system for developing data integration applications with reusable semantic types to represent and process application data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2000231868A1 (en) * 2000-03-14 2001-09-24 Eontec R And D Limited A transaction control system
US6907433B2 (en) * 2001-08-01 2005-06-14 Oracle International Corp. System and method for managing object to relational one-to-many mapping
US8005937B2 (en) * 2004-03-02 2011-08-23 Fatpot Technologies, Llc Dynamically integrating disparate computer-aided dispatch systems
US7761406B2 (en) * 2004-03-16 2010-07-20 International Business Machines Corporation Regenerating data integration functions for transfer from a data integration platform
US7805341B2 (en) * 2004-04-13 2010-09-28 Microsoft Corporation Extraction, transformation and loading designer module of a computerized financial system
US7975247B2 (en) * 2008-08-28 2011-07-05 Cliosoft Inc. Method and system for organizing data generated by electronic design automation tools
US8849673B2 (en) * 2010-07-02 2014-09-30 Tata Consultancy Services Rule generation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050025689A1 (en) * 2001-10-17 2005-02-03 Norihisa Kobayashi Flue gas desulfurization apparatus, flue gas desulfurization system, and method for operating flue gas desulfurization apparatus
US20120095973A1 (en) * 2010-10-15 2012-04-19 Expressor Software Method and system for developing data integration applications with reusable semantic types to represent and process application data

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140310183A1 (en) * 2013-04-15 2014-10-16 Lance Weber Embedded acceptance system
WO2021046105A1 (en) * 2019-09-03 2021-03-11 Linen Software Inc. Systems and methods for assigning attribution weights to nodes
US11488127B2 (en) 2019-09-03 2022-11-01 Linen Software Inc. Systems and methods for assigning attribution weights to nodes
CN110909059A (en) * 2019-11-25 2020-03-24 杭州晨鹰军泰科技有限公司 Data integration system, method, equipment and storage medium

Also Published As

Publication number Publication date
US10019468B1 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
US20180285394A1 (en) System and Method for Data Integration
JP6940662B2 (en) Methods and systems for the protection and verification of identities and certificates via the blockchain
US11631143B2 (en) Systems and methods for generating customer transaction test data that simulates real world customer transaction data
US11257081B2 (en) Integrating a blockchain ledger with an application external to the blockchain ledger
KR102263985B1 (en) Method and system for providing validated, auditable, and immutable inputs to a smart contract
US8984013B2 (en) Conditioning the distribution of data in a hierarchical database
CN110874739A (en) Distributed computing and storage network implementing high integrity, high bandwidth, low latency, secure processing
US10153939B2 (en) Real time event capture, analysis and reporting system
US10158737B2 (en) Real time event capture and analysis of transient data for an information network
US11645634B2 (en) Blockchain-based supply chain payment network
CN111427971B (en) Business modeling method, device, system and medium for computer system
EP3800601A1 (en) Collaboration hub with blockchain verification
CN111596956B (en) Information processing method and device based on block chain, electronic equipment and medium
US10503750B2 (en) Real time event capture and transformation of transient data for an information network
US11381403B2 (en) Integrating blockchain with off-chain services
CN114201718A (en) Dynamically configurable form instance generation method and device
JP2023531186A (en) Systems and methods for implementing market data contract analysis tools
US10958533B2 (en) Tracking data flow in distributed computing systems
US11782823B2 (en) Automatically capturing weather data during engineering tests
US11106643B1 (en) System and method for integrating systems to implement data quality processing
CN112734373A (en) Information processing method, information processing apparatus, electronic device, and medium
CN112418868A (en) Quota management method, device, equipment and storage medium
CN116743725A (en) Program delivery method, device, equipment and medium based on block chain
CN111563814A (en) Information processing method, device and system and electronic equipment

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION