EP3686740A2 - Method for producing process protocols - Google Patents

Method for producing process protocols Download PDF

Info

Publication number
EP3686740A2
EP3686740A2 EP20153403.9A EP20153403A EP3686740A2 EP 3686740 A2 EP3686740 A2 EP 3686740A2 EP 20153403 A EP20153403 A EP 20153403A EP 3686740 A2 EP3686740 A2 EP 3686740A2
Authority
EP
European Patent Office
Prior art keywords
data
computer system
tables
external computer
data tables
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.)
Pending
Application number
EP20153403.9A
Other languages
German (de)
French (fr)
Other versions
EP3686740A3 (en
Inventor
Martin Klenk
Alexander Rinke
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.)
Celonis SE
Original Assignee
Celonis SE
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 Celonis SE filed Critical Celonis SE
Publication of EP3686740A2 publication Critical patent/EP3686740A2/en
Publication of EP3686740A3 publication Critical patent/EP3686740A3/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • 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/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data
    • 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
    • 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/258Data format conversion from or to a database
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2216/00Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
    • G06F2216/03Data mining

Definitions

  • the invention relates to a method for generating process logs, the data for which the process logs are to be generated being stored in a distributed IT infrastructure, i.e. are stored on different computer systems.
  • Real processes such as business processes (e.g. an order process) or technical processes (e.g. a painting process), are often carried out in a computer system or with the help of a computer system.
  • Such a process can include several process steps. When executed, each process step can generate data that is stored in the computer system in which the process is carried out or with the aid of which the process is carried out.
  • Process analysis is carried out using a process mining system. So that a process mining system can carry out such an analysis efficiently, the extracted process mining system Information is made available in a prepared form. This processed form of the extracted information is referred to below as the process log.
  • sub-processes of a process are executed on different computer systems and consequently also generate data on the different computer systems.
  • the order information and the associated history can be stored in a first computer system, while the data on the sellers and the contacts to the sellers are stored in a second computer system.
  • the sub-processes that relate to the orders are carried out in the first computer system and the sub-processes that relate to the contacting are carried out in the second computer system.
  • different sub-processes can be carried out on different production units, and the data of the sub-processes can be stored in different computer systems.
  • information about the assembly process can be stored in a first computer system and information about a subsequent technical test process in a second computer system.
  • the partial processes carried out on the first computer system can be analyzed with the method known from the prior art.
  • the subprocesses executed on the second computer system can also be analyzed, but only independently of the subprocesses executed on the first computer system. An analysis of the entire process is therefore not possible.
  • At least one of the selected data tables is imported from the first external computer system and at least one of the selected data tables is imported from the second external computer system.
  • the data can be extracted from the data tables stored in the external computer systems.
  • step (b) it is determined in step (b) which attributes the data tables are related to.
  • Two data tables are preferably related to one another when an attribute of one data table is identical or similar to an attribute of the other data table.
  • Information about the selected second data tables and the relationships between the selected second data tables and the first data table can be stored.
  • step (e) it is determined when generating the executable transformation in step (e) which attributes of the selected first data table and the selected second data tables are taken into account when extracting the data.
  • step (f) it can be advantageous to read data records from the first data table and from the second data tables, the data records read out comprising the attribute values of the attributes determined for the respective data table, the data records read out being stored as a process log, wherein each record stored in the process log represents a process step (event) of a process executed in the first external computer system and in the second external computer system.
  • the data records of the process log or the process log are stored in a working memory, preferably in a working memory of the local computer system.
  • the process steps belonging to a process are stored in the working memory sorted according to the third attribute at adjacent addresses.
  • the process log is first sorted according to the first attribute and then according to the third attribute in such a way that successive process steps of a process are stored in immediately adjacent memory sections of the main memory.
  • This means that the processes in the working memory are in a grouped form, so that the process steps of a process can be read out and processed sequentially and in the correct order from the main memory in a stream.
  • "Reading out in a stream” means that the process steps are read out one process address for address from the main memory.
  • Fig. 1 shows a block diagram of an IT system with several computer systems.
  • the IT system here consists of three external computer systems (EC1, EC2 and EC3) and from an internal computer system.
  • the terms “external” and “internal” only indicate that the computer systems are different.
  • the computer systems are coupled to one another via a communication link.
  • the external computer systems are each coupled or can be coupled to the internal computer system.
  • the computer systems can be so-called on-premise systems or cloud systems.
  • the external computer systems EC1, EC2, EC3 can also be production facilities, processing facilities or the like, each of which has at least one data processing facility.
  • the data processing devices are preferably coupled to a storage device in which the data provided by the production device, processing device or the like are stored.
  • Subprocesses of a superordinate process are executed in the external computer systems.
  • the higher-level process is also referred to as the overall process.
  • the overall process can be a purchasing process that is carried out or processed using the computer systems.
  • Examples are described below in which the external computer systems are original computer systems. In a corresponding manner, however, the examples also apply to external computer systems which are production facilities, processing facilities or other technical facilities, these facilities having a data processing device, for example a processor with a storage device, or being coupled to such a data processing device.
  • a data processing device for example a processor with a storage device, or being coupled to such a data processing device.
  • the external devices EC1, EC2, EC3 execute sub-processes of a higher-level overall process and provide data for the respective executed sub-processes, from which process protocols for the higher-level overall process can be generated according to the inventive method.
  • More than three or fewer than three external devices can also be provided.
  • the overall process is carried out on three computer systems EC1, EC2 and EC3.
  • An overall process can also be based on more or less than three computer systems are executed (in the sense of the present invention on at least two computer systems).
  • the respective data are stored in a structured form in the respective computer systems, for example in tables T1 to T12 of a relational database system.
  • Different database management systems and different database technologies can be used in each computer system.
  • the data in the respective computer systems are stored in tables of a relational database system, the invention being not restricted to this.
  • the tables or the data in these tables have a specific relationship to one another. These relationships are in Fig. 1 shown by the connecting lines between the tables T1 to T12 shown in the computer systems EC1 to EC3. Structure tables may also be present in the respective computer systems EC1 to EC3 (in Fig. 1 not shown), in which information about the respective tables and their relationships to one another are stored. These structure tables can optionally be used for generating a process protocol according to the invention, as will be explained in more detail below. These structure tables are also called data models.
  • the data tables T1 to T12 are first imported into the internal computer system.
  • the relationships between the imported data tables are then reconstructed in the internal computer system, the relationships between the data tables imported from a specific external computer system being reconstructed on the one hand and the relationships between the data tables of one computer system and the data tables of another computer system on the other hand.
  • the relationships between Tables T1 through T4 (the were imported from the computer system EC1) and between the tables T5 to T8 (which were imported from the computer system EC2).
  • the relationships between tables T1 to T4 and tables T5 to T9 are reconstructed (in Fig. 1 the relationship between the table T3 and the table T6 and the relationship between the table T6 and the table T9). How these relationships are determined or reconstructed is described with reference to Fig. 2 described in more detail.
  • business objects are suitable for generating a process log.
  • business objects can be, for example, "orders” and "sellers".
  • the orders are stored here, for example, in table T3 and the sellers in table T9. Finding these business objects is related to Fig. 2 described in detail.
  • the tables in the internal computer system that store these identified business objects point to Fig. 1 a bold frame.
  • one of the business objects determined is selected automatically, for example the business object “orders”.
  • the selection can be made based on predetermined conditions, such as the number of data records and / or the number in these tables saved time stamp and / or how often a table was selected in the past (manually or automatically).
  • the selection of a business object can also be made by a user.
  • the business objects determined are offered to the user for selection.
  • the list of business objects can be sorted according to predetermined conditions, such as the number of data records and / or the number of time stamps stored in these tables and / or how often a table was selected in the past (manually or automatically).
  • the selected business object i.e. uses the selected table as the base table for generating a process log.
  • those tables are selected from the other tables imported into the internal computer system that are required for generating a process log or several different process logs.
  • process logs are possible, for example, if different activities can be evaluated using process logs based on the base table.
  • activities can be, for example, price changes within an order process or contacting the seller within an order process.
  • the in Fig. 1 shown example, the tables T1 and T4 to T7 selected (in Fig. 1 identified by the dashed outline).
  • the other tables are selected based on whether the tables are suitable for generating a process log. For example, other tables are suitable (together with the base table) then for the generation of a process log if the further tables each contain a large number of data records compared to the basic table and / or the further table is directly or indirectly referenced by the basic table and / or the further tables have at least one attribute in which a time stamp is stored .
  • Additional tables can also be suitable for generating process logs if they have already been used for generating process logs.
  • table T2 is referenced directly from base table T3.
  • table T2 for example, only the type of order is saved (e.g. online order, order by fax, order by post, order by phone). Accordingly, table T2 has no time stamps and contains very few data records compared to the base table. Table T2 is therefore not relevant for generating process logs.
  • table T9 is selected as the base table (business object "seller")
  • the system selects, for example, the other tables T5 to T7 and T10 as another table relevant for generating a process log (in Fig. 1 identified by the dash-dot frame).
  • the system determines activities for which a process log can be generated, based on the base table and the associated other tables.
  • activities can be, for example, price changes within an order process or contacting the seller within an order process.
  • different tables of the selected further tables may be relevant for generating the process log.
  • table T4 can also contain changes to the order quantities together with the associated time stamp.
  • this table would have to be filtered for price changes
  • an activity "Change of order quantity” this table would have to be filtered for corresponding changes.
  • the system saves the filter criteria required for each activity determined (if necessary). For example, an attribute can be used to determine whether a data record in table T4 belongs to a price change or an order quantity change, in which the type of change is stored for each data record.
  • this table would not be relevant for a process log for evaluating the price changes of orders. However, this table would be relevant for a process log to evaluate the contact with the seller within an order process.
  • table T3 contains a date on which the order was created and a date on which the order was confirmed.
  • both tables T4 and T6 would be relevant for a process log for evaluating the price changes of orders due to contacting the seller within an order process.
  • a process log can also be generated for such a process.
  • the tables T4 and T6 would also be relevant for generating a process log.
  • the system saves not only relevant filter criteria but also attributes / column names (plus the associated table names, if applicable), the values of which are absolutely necessary for generating a process log.
  • a mandatory attribute is, for example, a time stamp with which the sequence of activities within a process is determined.
  • a process mining system to which the process log is made available can analyze the ordering processes. For example, a process mining system can be used to determine that x% of the ordering processes have made more than y contacts with the seller, or that at least y price changes have occurred in x% of the ordering processes, or that x% of the ordering processes have been confirmed within a certain period were.
  • the system can now select one or more activities from the activities determined in order to generate the corresponding process logs.
  • a separate process log can be generated for each selected activity.
  • a common process log can be generated for several identified activities (for example, a common process log can be generated for the orders process for the activities creating an order, price changes in orders, contacting the seller and confirming an order).
  • the user can also select from the determined activities those activities for which (separate or a common) process logs are to be generated.
  • the system is now able to select the tables required for this and to generate at least one process log based on this.
  • a transformation is generated in the internal computer system that contains the necessary attributes of the tables relevant to a process log and taking into account the relevant relationships between the tables relevant to the process log, extracting data and storing the extracted data as a process log.
  • the data is extracted using the filter criteria that may be necessary.
  • the process log generated and stored in this way can now be made available to a process mining system in order to analyze the processes stored in the process log.
  • Each data record stored in the process log represents a process step (activity / event) of a process carried out in the external computer systems EC1 to EC3. Process steps of several processes can be stored in the process log.
  • the order of the process steps within a process can be specified by the time stamp mentioned above, which is read from the corresponding tables for each activity (process step).
  • the unique identifier of the process can be read from the base table, for example.
  • the (unique) order number can be read out and used as a process identifier in the process log.
  • the identifier of the respective process step (which need not be unique) can be determined from the column names and / or table names and / or from attribute values.
  • For The above-mentioned activities (process steps) "Creating an order” and “Confirming an order” can have the identifiers "Order created” (from the table name "Orders" and the column name "Created") and "Order confirmed” (from the table name "Orders "and the column name” Confirmed ”) are generated and saved for the respective process step in the third attribute of the process log.
  • the process log or the data records stored therein are sorted first by the first attribute and then by the third attribute. This means that the process steps belonging to a process are available in a grouped form, with the process steps belonging to a process being sorted at the same time.
  • the process log can be saved in whole or in part in the working memory. It is also advantageous if the process steps belonging to a process are stored in the working memory at adjacent addresses, specifically sorted according to the third attribute. Predecessor / successor relationships of the process steps within a process can thus be advantageously determined without such predecessor / successor relationships having to be stored. Because in a purely sequential process (without parallel sub-processes), the predecessor / successor relationship results directly from the addresses in which the process steps are stored.
  • the process mining system can also read and process the process log sequentially and in the correct order from the main memory. For example, a complete process graph can be generated and visualized in O ( n ), which includes the process steps of all processes stored in the process log. For processes with parallel sub-processes, a complete process hierarchy can also be generated in O ( n ), which can then also be visualized as a process graph.
  • the data from the tables imported into the internal computer system can be used to create the process log for the first time (by executing the transformation). However, it is also possible to use the data stored in the external computer systems EC1 to EC3.
  • the transformation can be carried out cyclically, as required or according to certain rules, for example every ten minutes. Each time the transformation is performed, the activities that have occurred in the external computer systems since the transformation was last carried out are extracted and added to the process log.
  • the external systems EC1 to EC3 can also be physical devices, for example machines, which, for example, as part of processing a product along a production and / or production line, provide data which represent an activity or a process step of a production process.
  • This data can be stored in a memory device assigned to the machine, for example in tables in a database system. These tables can then be imported into the internal computer system described above in order to generate process logs therefrom in accordance with the method described above.
  • the external system EC1 can be a grinding machine.
  • the grinding machine logs the start and end of a grinding process and stores this data together with a product identifier in the database assigned to it.
  • the external system EC2 can be a painting device that is coupled to another database.
  • the coating device can have a sensor for measuring the applied coating thickness, in order, if necessary, to repeat a coating process on a product until the desired coating thickness has been reached.
  • the painting device can log the start and end of an entire painting process as well as the start and end of the repetitions together with the measured paint thicknesses and save them together with a product identifier in the database assigned to them.
  • the individual activities can be assigned to a specific processing process.
  • the process logs generated for this can be analyzed by a process mining system, for example to recognize which products lead to a delay in a subsequent assembly process, because the painting process has to be repeated particularly often for certain products.
  • Fig. 2 shows a flowchart of the inventive method for generating process logs.
  • a first step S1 the data tables are imported from different systems into the internal computer system.
  • the different systems from which the data tables are imported can be related to Fig. 1 shown external computer system EC1 to EC3, and / or production facilities, processing facilities or other technical facilities that provide data on executed processes / sub-processes. These systems can be distributed systems (eg production facilities at different locations) and / or cloud systems.
  • the data tables to be imported are data from database systems, the data tables can be imported directly into a database system of the internal computer system.
  • the data tables to be imported do not necessarily have to be tables of a database system.
  • the data to be imported can also be present in the external computer system, for example, as one or more structured text files. In this case, it is advantageous to save the data in a database system of the internal computer system. If necessary, the data to be imported must be prepared before being saved in the database system.
  • Table T1 Order Information Order number Creation Date Vendor Price Amount 1 01/01/2018 ABC 100 10th 2nd 24/01/2018 XYZ 2nd 12th ... ... ... ... ... Date Order number Field Old value New value Who 01/01/2018 1 Price 99 130 Joe 02/01/2018 1 Amount 9 7 Joe 03/01/2018 1 Amount 7 10th Joe 04/01/2018 1 Price 130 95 Bill 05/01/2018 1 Price 95 100 Joe ... ... ... ... ...
  • Tn (x) ⁇ ⁇ Tm (y) means that the tables Tn and Tm are linked with each other via the attribute x of the table Tn and via the attribute y of the table Tm.
  • Additional heuristics can be used to automatically recognize the relationships between tables T1 and T3 or between tables T2 and T3 (T1 and T2 were imported from a different computer system than table T3).
  • the column name can be analyzed (e.g. if the column name contains the text component "ID", it can be assumed with great probability that foreign key values are stored in this column).
  • the imported schema tables can also be used to determine the primary key attributes and the foreign key attributes for the imported tables.
  • the "Order Number” attribute can be determined as the primary key attribute on the basis of the imported schematic tables.
  • the "Reference ID” attribute can be determined for the table T3 on the basis of an analysis of the column names as a foreign key attribute. So that the relationship T1 (Order Number) ⁇ ⁇ T3 (Reference ID) can be determined automatically.
  • T2 Order Number
  • T3 Reference ID
  • the relationships between the tables T1 to T4 determined in this way can be confirmed by a user.
  • a user creates / adds additional relationships (such as relationships that were not automatically determined) or removes existing relationships (such as relationships that the system determined incorrectly).
  • a valid database schema exists in the internal computer system, which describes the tables and their relationships to one another for all tables T1 to T4 imported from the external computer systems. If these tables or a subset of these tables are imported again into the internal computer system at a later point in time, for example to generate different process protocols, then the internal computer system can use this valid database schema to determine relationships between the tables.
  • the internal computer system is designed to be self-learning, i.e. it learns successively relationships between imported data tables, so that the computer system can fall back on the learned relationships at a later point in time.
  • business objects also called case objects
  • those data tables are selected in which such business objects are stored (or at least are stored with a high probability). This is advantageously done automatically.
  • the internal computer system can recognize tables T1 (orders) and T4 (sellers) as business objects. This is because table T1 stores basic information about orders and table T4 stores basic information about sellers. Tables T2 and T3, on the other hand, store change information (table T2: price changes / quantity changes of an order) or promotions (table T3: contacts to sellers).
  • the internal system recognizes several business objects as being suitable for generating a process log, one of the business objects can be selected by a user.
  • the internal computer system can store information about the selected business object so that the internal computer system becomes one can access this information later. If the method according to the invention is carried out several times, the internal system gradually learns which business objects were determined how often and which business objects were selected by the user and how often.
  • the data table belonging to the selected business object is also referred to as the first data table (above in Fig. 1 also referred to as the base table).
  • the business object Orders (data table T1) is selected.
  • the internal computer system uses the selected business object (orders) or the first data table (T1) to determine further data tables (also referred to as second data tables) that can be suitable for generating process protocols.
  • the first data table T1 these would be the data tables T2 and T3, which on the one hand are directly related to the first data table T1 and on the other hand store change information or actions.
  • the internal computer system in the subsequent step S5 determines activities for which process logs can be generated.
  • the internal computer system can automatically generate the names of the activities, for example from the table name and the respective date attribute (e.g. "Create Order” from “Order Information” and "Creation Date”).
  • the respective date attribute e.g. "Create Order” from “Order Information” and "Creation Date”
  • the internal computer system also generates a filter based on the “field” attribute in order to filter certain activities in the table T2.
  • table T2 changes to various fields (eg price and amount) of table T1 (T1 and T2 are above the order columns) Number linked) saves.
  • process logs can subsequently be generated, such as a process log for orders or a process log for changes to orders.
  • a user can now select one or more activities for which one or more process logs are to be generated. If the user selects several activities, the internal computer system can generate a process log for each activity on the user's instruction or a common process log for all selected activities.
  • the computer system can also automatically generate a process log for all activities determined without user interaction.
  • the internal computer system In the subsequent step S6, the internal computer system generates an executable transformation for each selected activity (or alternatively for all activities or for combinations of activities), with which data from the external computer systems EC1 to EC3 can be transformed into a process protocol.
  • the transformation when it is carried out, extracts data at least from the necessary attributes of the tables relevant to the respective process protocol and taking into account the relevant relationships between the tables relevant to the respective process protocol and stores the extracted data as a process protocol.
  • the data is extracted using the filter criteria that may be necessary, which can be specified by the respective activities.
  • the process log generated by executing the transformation is saved and made available to a process mining system for evaluation.
  • the transformation can be carried out several times, for example cyclically, as a result of which the process log can be enriched with new process steps carried out in the external systems or with newly executed processes.
  • Each data record of a process log represents a process step (activity / event) of a process executed in the external computer systems, whereby process steps of several processes can also be stored in the process log.
  • Process ID Process step identifier sequence 1 Change price 01/01/2018 1 Change amount 02/01/2018 1 Change amount 03/01/2018 1 Change price 04/01/2018 1 Change price 05/01/2018
  • the system can generate the identifier of the respective process step from the values in the "Field" column.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Bereit gestellt wird ein computer-implementiertes Verfahren zum Erzeugen eines Prozessprotokolls in einem lokalen Computersystem, wobei das Prozessprotokoll aus Rohdaten erzeugt wird, die teilweise in einem ersten externen Computersystem und teilweise in einem zweiten externen Computersystem gespeichert sind, wobei die Rohdaten Daten umfassen, die bei der Ausführung von Prozessen in dem ersten externen Computersystem und in dem zweiten externen Computersystem erzeugt werden.A computer-implemented method for generating a process log in a local computer system is provided, the process log being generated from raw data that are partly stored in a first external computer system and partly in a second external computer system, the raw data including data that are stored in executing processes in the first external computer system and in the second external computer system.

Description

Gebiet der ErfindungField of the Invention

Die Erfindung betrifft ein Verfahren zum Erzeugen von Prozessprotokollen, wobei die Daten, für die die Prozessprotokolle erzeugt werden sollen, in einer verteilten IT-Infrastruktur, d.h. auf unterschiedlichen Computersystemen gespeichert sind.The invention relates to a method for generating process logs, the data for which the process logs are to be generated being stored in a distributed IT infrastructure, i.e. are stored on different computer systems.

Hintergrund der ErfindungBackground of the Invention

Reale Prozesse, etwa Businessprozesse (z.B. ein Bestellvorgang) oder technische Prozesse (z.B. ein Lackiervorgang), werden häufig in einem Computersystem oder mit Hilfe eines Computersystems ausgeführt. Ein solcher Prozess kann hierbei mehrere Prozessschritte umfassen. Jeder Prozessschritt kann bei der Ausführung Daten erzeugen, die in dem Computersystem, in dem der Prozess ausgeführt wird bzw. mit dessen Hilfe der Prozess ausgeführt wird, gespeichert werden.Real processes, such as business processes (e.g. an order process) or technical processes (e.g. a painting process), are often carried out in a computer system or with the help of a computer system. Such a process can include several process steps. When executed, each process step can generate data that is stored in the computer system in which the process is carried out or with the aid of which the process is carried out.

Es ist bekannt, Prozesse, die in einem Computersystem oder mit Hilfe eines Computersystems ausgeführt wurden, zu analysieren. Hierbei werden aus den von den Prozessen bzw. von den jeweiligen Prozessschritten erzeugten Daten Informationen extrahiert, die für die Analyse der Prozesse relevant sind. Auf diese Weise können beispielsweise die in einem ERP-System durchgeführten Transaktionen oder die entlang einer Produktions-/Verarbeitungslinie ausgeführten Prozessschritte analysiert werden, um etwa Flaschenhälse oder sonstige Anomalien in den Prozessen zu erkennen. Die Analyse der Prozesse wird mit Hilfe eines sogenannten Process Mining Systems durchgeführt. Damit ein Process Mining System eine solche Analyse effizient durchführen kann, müssen dem Process Mining System die extrahierten Informationen in aufbereiteter Form zur Verfügung gestellt werden. Diese aufbereitete Form der extrahierten Informationen wird im Folgenden als Prozessprotokoll bezeichnet.It is known to analyze processes that have been carried out in a computer system or with the aid of a computer system. Information is extracted from the data generated by the processes or the respective process steps that is relevant for the analysis of the processes. In this way, for example, the transactions carried out in an ERP system or the process steps carried out along a production / processing line can be analyzed in order to identify bottlenecks or other anomalies in the processes. Process analysis is carried out using a process mining system. So that a process mining system can carry out such an analysis efficiently, the extracted process mining system Information is made available in a prepared form. This processed form of the extracted information is referred to below as the process log.

Die Analyse der Prozesse erfolgt im Stand der Technik in dem Computersystem in dem die Daten erzeugt und gespeichert wurden. Nachteilig hierbei ist, dass nur Prozesse, die in dem jeweiligen Computersystem ausgeführt wurden, analysiert werden können.In the prior art, the processes are analyzed in the computer system in which the data were generated and stored. The disadvantage here is that only processes that have been executed in the respective computer system can be analyzed.

In der Praxis kann es vorkommen, dass Teilprozesse eines Prozesses auf unterschiedlichen Computersystemen ausgeführt werden und demzufolge auch auf den unterschiedlichen Computersystemen Daten erzeugen. So können etwa für einen Bestellprozess die Bestellinformationen und die dazugehörige Historie in einem ersten Computersystem gespeichert werden, während die Daten zu den Verkäufern und die Kontaktaufnahmen zu den Verkäufern in einem zweiten Computersystem gespeichert werden. Hierbei werden die Teilprozesse, die die Bestellungen betreffen, in dem ersten Computersystem und die Teilprozesse, die die Kontaktaufnahmen betreffen, in dem zweiten Computersystem ausgeführt. Bei technischen Prozessen, etwa Produktionsprozessen, können verschiedene Teilprozesse auf verschiedenen Produktionseinheiten ausgeführt werden, wobei die Daten der Teilprozesse in verschiedenen Computersystemen gespeichert werden können. Beispielsweise können Informationen zum Montageprozess in einem ersten Computersystem und Informationen zu einem nachfolgenden technischen Testprozess in einem zweiten Computersystem gespeichert werden.In practice it can happen that sub-processes of a process are executed on different computer systems and consequently also generate data on the different computer systems. For example, for an order process, the order information and the associated history can be stored in a first computer system, while the data on the sellers and the contacts to the sellers are stored in a second computer system. Here, the sub-processes that relate to the orders are carried out in the first computer system and the sub-processes that relate to the contacting are carried out in the second computer system. In the case of technical processes, for example production processes, different sub-processes can be carried out on different production units, and the data of the sub-processes can be stored in different computer systems. For example, information about the assembly process can be stored in a first computer system and information about a subsequent technical test process in a second computer system.

Mit dem aus dem Stand der Technik bekannten Verfahren können die auf dem ersten Computersystem ausgeführten Teilprozesse analysiert werden. Die auf dem zweiten Computersystem ausgeführten Teilprozesse können ebenfalls analysiert werden, allerdings nur unabhängig von den auf dem ersten Computersystem ausgeführten Teilprozessen. Eine Analyse des gesamten Prozesses ist damit nicht möglich.The partial processes carried out on the first computer system can be analyzed with the method known from the prior art. The subprocesses executed on the second computer system can also be analyzed, but only independently of the subprocesses executed on the first computer system. An analysis of the entire process is therefore not possible.

Aufgabe der ErfindungObject of the invention

Aufgabe der vorliegenden Erfindung ist es daher, Lösungen bereitzustellen, die eine effiziente und einfache Analyse von Prozessen, die in unterschiedlichen Computersystemen und/oder mit unterschiedlichen Verarbeitungseinheiten ausgeführt wurden, zu ermöglichen.It is therefore the object of the present invention to provide solutions which enable an efficient and simple analysis of processes which have been carried out in different computer systems and / or with different processing units.

Erfindungsgemäße LösungSolution according to the invention

Diese Aufgabe wird erfindungsgemäß durch ein Verfahren nach dem unabhängigen Anspruch gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.This object is achieved according to the invention by a method according to the independent claim. Advantageous refinements and developments of the invention are specified in the dependent claims.

Bereit gestellt wird demnach ein Computer-implementiertes Verfahren zum Erzeugen eines Prozessprotokolls in einem lokalen Computersystem, das einen Prozessor und eine Speichereinrichtung aufweist, wobei das Prozessprotokoll aus Rohdaten erzeugt wird, die teilweise in einem ersten externen Computersystem und teilweise in einem zweiten externen Computersystem gespeichert sind, wobei die Rohdaten in den externen Computersystemen in einer Anzahl von Datentabellen gespeichert werden bzw. gespeichert sind, wobei die Rohdaten Daten umfassen, die bei der Ausführung von Prozessen in dem ersten externen Computersystem und in dem zweiten externen Computersystem erzeugt werden, und wobei das Verfahren umfasst:

  1. (a) importieren der Datentabellen aus dem ersten externen Computersystem und aus dem zweiten externen Computersystem in das lokale Computersystem und Speichern der importierten Datentabellen in der Speichereinrichtung des lokalen Computersystems,
  2. (b) in dem lokalen Computersystem, rekonstruieren der Beziehungen zwischen den importierten Datentabellen,
  3. (c) in dem lokalen Computersystem, ermitteln und auswählen einer ersten Datentabelle aus der Anzahl von importierten Datentabellen, die Objekte enthält, zu denen das Prozessprotokoll erzeugt werden soll,
  4. (d) in dem lokalen Computersystem, ermitteln und auswählen einer Anzahl von zweiten Datentabellen aus der Anzahl von importierten Datentabellen, die für das Erzeugen des Prozessprotokolls benötigt werden, basierend auf der ausgewählten ersten Datentabelle und basierend auf den Beziehungen zwischen den importierten Datentabellen,
  5. (e) in dem lokalen Computersystem, erzeugen einer ausführbaren Transformation, die angepasst ist, basierend
    • auf der ausgewählten ersten Datentabelle,
    • auf den ausgewählten zweiten Datentabellen und
    • auf den Beziehungen zwischen der ausgewählten ersten Datentabelle und den ausgewählten zweiten Datentabellen
    Daten aus der ersten Datentabelle und aus den zweiten Datentabellen zu extrahieren und die extrahierten Daten als Prozessprotokoll zu speichern,
  6. (f) in dem lokalen Computersystem, ausführen der Transformation und Speichern der extrahierten Daten als Prozessprotokoll und Bereitstellen des erzeugten Prozessprotokolls einem Process Mining System zum Analysieren und Rekonstruieren der in dem ersten externen Computersystem und in dem zweiten externen Computersystem ausgeführten Prozesse.
Accordingly, a computer-implemented method for generating a process log in a local computer system is provided, which has a processor and a storage device, the process log being generated from raw data that are stored partly in a first external computer system and partly in a second external computer system , wherein the raw data is stored in the external computer systems in a number of data tables, the raw data including data generated during the execution of processes in the first external computer system and in the second external computer system, and wherein the method includes:
  1. (a) importing the data tables from the first external computer system and from the second external computer system into the local computer system and storing the imported data tables in the storage device of the local computer system,
  2. (b) in the local computer system, reconstruct the relationships between the imported data tables,
  3. (c) in the local computer system, determine and select a first data table from the number of imported data tables which contains objects for which the process log is to be generated,
  4. (d) in the local computer system, determine and select a number of second data tables from the number of imported data tables that are required for generating the process log, based on the selected first data table and based on the relationships between the imported data tables,
  5. (e) in the local computer system, generate an executable transform that is customized based
    • on the selected first data table,
    • on the selected second data tables and
    • on the relationships between the selected first data table and the selected second data tables
    Extract data from the first data table and from the second data tables and save the extracted data as a process log,
  6. (f) in the local computer system, performing the transformation and storing the extracted data as a process log and providing the generated process log to a process mining system for analyzing and reconstructing the processes carried out in the first external computer system and in the second external computer system.

Vorteilhaft kann es sin, wenn zumindest eine der ausgewählten Datentabellen aus dem ersten externen Computersystem importiert wird, und zumindest eine der ausgewählten Datentabellen aus dem zweiten externen Computersystem importiert wird.It can be advantageous if at least one of the selected data tables is imported from the first external computer system and at least one of the selected data tables is imported from the second external computer system.

Beim Ausführen der Transformation in dem Schritt (f) können die Daten aus den in den externen Computersystemen gespeicherten Datentabellen extrahiert werden.When performing the transformation in step (f), the data can be extracted from the data tables stored in the external computer systems.

Vorteilhaft ist es, wenn beim Rekonstruieren der Beziehungen zwischen den importierten Datentabellen in dem Schritt (b) ermittelt wird, über welche Attribute die Datentabellen in Beziehung zueinander stehen.It is advantageous if, during the reconstruction of the relationships between the imported data tables, it is determined in step (b) which attributes the data tables are related to.

Vorzugsweise stehen zwei Datentabellen dann miteinander in Beziehung, wenn ein Attribut der einen Datentabelle identisch oder ähnlich zu einem Attribut der anderen Datentabelle ist.Two data tables are preferably related to one another when an attribute of one data table is identical or similar to an attribute of the other data table.

Vorteilhaft ist es, wenn die zwischen jeweils zwei importierten Datentabellen rekonstruierten Beziehungen gespeichert werden, wobei die Namen der beiden Datentabellen, die jeweiligen Attribute und eine Zuordnung der Attribute der einen Datentabelle zu den Attributen der anderen Datentabelle gespeichert werden.It is advantageous if the relationships reconstructed between two imported data tables are saved, the names of the two data tables, the respective attributes and an assignment of the attributes of one data table to the attributes of the other data table being stored.

Vorteilhaft ist es, wenn

  • zu den aus dem ersten externen Computersystem importierten Datentabellen ein dazugehöriges erstes Datenmodell aus dem ersten externen Computersystem in das lokale Computersystem importiert wird, wobei die Beziehungen zwischen den aus dem ersten externen Computersystem importierten Datentabellen anhand des ersten Datenmodells rekonstruiert werden,
  • zu den aus dem zweiten externen Computersystem importierten Datentabellen ein dazugehöriges zweites Datenmodell aus dem zweiten externen Computersystem in das lokale Computersystem importiert wird, wobei die Beziehungen zwischen den aus dem zweiten externen Computersystem importierten Datentabellen anhand des zweiten Datenmodells rekonstruiert werden,
sodass nur die Beziehungen zwischen den Datentabellen aus dem ersten externen Computersystem und den Datentabellen aus dem zweiten externen Computersystem ohne Verwendung eines Datenmodells rekonstruiert werden müssen.It is advantageous if
  • an associated first data model is imported from the first external computer system into the local computer system for the data tables imported from the first external computer system, the relationships between the data tables imported from the first external computer system being reconstructed on the basis of the first data model,
  • for the data tables imported from the second external computer system, an associated second data model is imported from the second external computer system into the local computer system, the relationships between the data tables imported from the second external computer system being reconstructed using the second data model,
so that only the relationships between the data tables from the first external computer system and the data tables from the second external computer system need to be reconstructed without using a data model.

Vorteilhaft ist es ferner, wenn beim Ermitteln und Auswählen einer ersten Datentabelle in dem Schritt (c) ermittelt wird, welche Datentabelle eine oder mehrere Bedingungen erfüllt, wobei die Bedingungen ausgewählt sind aus der Gruppe, umfassend

  • die Datentabelle enthält im Vergleich zu den anderen Datentabellen wenige Datensätze,
  • die Datentabelle enthält ein Attribut, in dem Zeitstempel gespeichert sind,
  • die Datentabelle wird von wenigen anderen Datentabellen referenziert,
  • und Kombinationen hiervon.
It is also advantageous if when determining and selecting a first data table in step (c) it is determined which data table is one or more Conditions are met, the conditions being selected from the group comprising
  • the data table contains few data records compared to the other data tables,
  • the data table contains an attribute in which time stamps are stored,
  • the data table is referenced by a few other data tables,
  • and combinations thereof.

Informationen zu der ausgewählten ersten Datentabelle können gespeichert werden.Information about the selected first data table can be saved.

Vorteilhaft ist es, wenn beim Ermitteln und Auswählen einer Anzahl von zweiten Datentabellen in dem Schritt (d) jene Datentabellen ausgewählt werden, die eine oder mehrere Bedingungen erfüllen, wobei die Bedingungen ausgewählt sind aus der Gruppe, umfassend

  • die Datentabellen enthalten im Vergleich zu der ersten Datentabelle viele Datensätze,
  • die Datentabelle werden direkt oder indirekt von der ersten Datentabelle referenziert
  • die Datentabellen enthalten jeweils ein Attribut, in dem Zeitstempel gespeichert sind,
  • und Kombinationen hiervon.
It is advantageous if, when determining and selecting a number of second data tables in step (d), those data tables are selected which meet one or more conditions, the conditions being selected from the group comprising
  • the data tables contain many data records compared to the first data table,
  • the data table is referenced directly or indirectly from the first data table
  • the data tables each contain an attribute in which time stamps are stored,
  • and combinations thereof.

Informationen zu den ausgewählten zweiten Datentabellen und zu den Beziehungen zwischen den ausgewählten zweiten Datentabellen und der ersten Datentabelle können gespeichert werden.Information about the selected second data tables and the relationships between the selected second data tables and the first data table can be stored.

Vorteilhaft ist es, wenn beim Erzeugen der ausführbaren Transformation in dem Schritt (e) ermittelt wird, welche Attribute der ausgewählten ersten Datentabelle und der ausgewählten zweiten Datentabellen beim Extrahieren der Daten berücksichtigt werden.It is advantageous if it is determined when generating the executable transformation in step (e) which attributes of the selected first data table and the selected second data tables are taken into account when extracting the data.

Beim Ausführen der Transformation in dem Schritt (f) kann es vorteilhaft sein Datensätze aus der ersten Datentabelle und aus den zweiten Datentabellen auszulesen, wobei die ausgelesenen Datensätze die Attributswerte der für die jeweilige Datentabelle ermittelten Attribute umfasst, wobei die ausgelesenen Datensätze als Prozessprotokoll gespeichert werden, wobei jeder in dem Prozessprotokoll gespeicherte Datensatz einen Prozessschritt (Event) eines in dem ersten externen Computersystem und in dem zweiten externen Computersystem ausgeführten Prozesses repräsentiert.When performing the transformation in step (f), it can be advantageous to read data records from the first data table and from the second data tables, the data records read out comprising the attribute values of the attributes determined for the respective data table, the data records read out being stored as a process log, wherein each record stored in the process log represents a process step (event) of a process executed in the first external computer system and in the second external computer system.

Vorteilhaft ist es ferner, wenn die ausgelesenen Datensätze gemäß einer vorbestimmten Datenstruktur in dem Prozessprotokoll gespeichert werden, wobei die vorbestimmte Datenstruktur zumindest umfasst:

  • ein erstes Attribut, in dem eine eindeutige Kennung des Prozesses des jeweiligen Prozessschrittes gespeichert ist;
  • ein zweites Attribut, in dem eine Kennung des jeweiligen Prozessschrittes gespeichert ist; und
  • ein drittes Attribut, in dem eine Reihenfolge der Prozessschritte innerhalb eines Prozesses gespeichert ist.
It is also advantageous if the data records read out are stored in the process log in accordance with a predetermined data structure, the predetermined data structure at least comprising:
  • a first attribute in which a unique identifier of the process of the respective process step is stored;
  • a second attribute in which an identifier of the respective process step is stored; and
  • a third attribute in which an order of the process steps within a process is stored.

In einer vorteilhaften Ausgestaltung der Erfindung werden die Datensätze des Prozessprotokolls bzw. wird das Prozessprotokoll in einem Arbeitsspeicher, vorzugsweise in einem Arbeitsspeicher des lokalen Computersystems gespeichert.In an advantageous embodiment of the invention, the data records of the process log or the process log are stored in a working memory, preferably in a working memory of the local computer system.

Vorteilhaft ist es, wenn die zu einem Prozess gehörenden Prozessschritte im Arbeitsspeicher sortiert nach dem dritten Attribut an benachbarten Adressen gespeichert werden. Das Prozessprotokoll wird hierbei zunächst nach dem ersten Attribut und anschließend nach dem dritten Attribut sortiert, derart, dass aufeinanderfolgende Prozessschritte eines Prozesses in unmittelbar benachbarten Speicherabschnitten des Arbeitsspeichers gespeichert werden. Dadurch liegen die Prozesse im Arbeitsspeicher in gruppierter Form vor, sodass die Prozessschritte eines Prozesses in einem Stream sequentiell und in der richtigen Reihenfolge aus dem Arbeitsspeicher ausgelesen und verarbeitet werden können. "In einem Stream auslesen" bedeutet, dass die Prozessschritte eine Prozesses Adresse für Adresse aus dem Arbeitsspeicher ausgelesen werden.It is advantageous if the process steps belonging to a process are stored in the working memory sorted according to the third attribute at adjacent addresses. The process log is first sorted according to the first attribute and then according to the third attribute in such a way that successive process steps of a process are stored in immediately adjacent memory sections of the main memory. This means that the processes in the working memory are in a grouped form, so that the process steps of a process can be read out and processed sequentially and in the correct order from the main memory in a stream. "Reading out in a stream" means that the process steps are read out one process address for address from the main memory.

Vorteilhaft ist es zudem, wenn die Attributswerte der Attribute des Prozessprotokolls aus

  • den Attributswerten der ausgelesenen Datensätze und/oder
  • aus den Tabellennamen und/oder Spaltennamen der ausgewählten ersten Datentabelle und/oder der ausgewählten zweiten Datentabellen
ermittelt werden.It is also advantageous if the attribute values of the attributes of the process log are off
  • the attribute values of the data records read and / or
  • from the table names and / or column names of the selected first data table and / or the selected second data tables
be determined.

Kurzbeschreibung der FigurenBrief description of the figures

Einzelheiten und Merkmale der Erfindung sowie konkrete Ausgestaltungen der Erfindung ergeben sich aus der nachfolgenden Beschreibung in Verbindung mit der Zeichnung. Es zeigt:

Fig. 1
ein Blockdiagramm eines IT-Systems mit mehreren Computersystemen, anhand dessen das erfindungsgemäße Verfahren zum Erzeugen von Prozessprotokollen erläutert wird; und
Fig. 2
ein Ablaufdiagramm des erfindungsgemäßen Verfahrens zum Erzeugen von Prozessprotokollen.
Details and features of the invention and specific embodiments of the invention result from the following description in conjunction with the drawing. It shows:
Fig. 1
a block diagram of an IT system with several computer systems, on the basis of which the inventive method for generating process protocols is explained; and
Fig. 2
a flow diagram of the inventive method for generating process logs.

Detaillierte Beschreibung der ErfindungDetailed description of the invention

Fig. 1 zeigt ein Blockdiagramm eines IT-Systems mit mehreren Computersystemen. Das IT-System besteht hier beispielhaft aus drei externen Computersystemen (EC1, EC2 und EC3) und aus einem internen Computersystem. Die Bezeichnungen "extern" und "intern" geben hierbei lediglich an, dass es sich um verschiedene Computersysteme handelt. Die Computersysteme sind über eine Kommunikationsverbindung miteinander gekoppelt. Insbesondere sind die externen Computersysteme jeweils mit dem internen Computersystem gekoppelt oder koppelbar. Bei den Computersystemen kann es sich um sogenannten On Premise Systeme oder um Cloud Systeme handeln. Fig. 1 shows a block diagram of an IT system with several computer systems. The IT system here consists of three external computer systems (EC1, EC2 and EC3) and from an internal computer system. The terms "external" and "internal" only indicate that the computer systems are different. The computer systems are coupled to one another via a communication link. In particular, the external computer systems are each coupled or can be coupled to the internal computer system. The computer systems can be so-called on-premise systems or cloud systems.

Gemäß einer Ausgestaltung der Erfindung kann es sich bei den externen Computersystemen EC1, EC2, EC3 auch um Produktionseinrichtungen, Verarbeitungseinrichtungen oder dergleichen handeln, die jeweils über zumindest eine Datenverarbeitungseinrichtung verfügen. Vorzugsweise sind die Datenverarbeitungseinrichtungen mit einer Speichereinrichtung gekoppelt, in der die von der Produktionseinrichtung, Verarbeitungseinrichtung oder dergleichen bereitgestellten Daten gespeichert werden.According to one embodiment of the invention, the external computer systems EC1, EC2, EC3 can also be production facilities, processing facilities or the like, each of which has at least one data processing facility. The data processing devices are preferably coupled to a storage device in which the data provided by the production device, processing device or the like are stored.

In den externen Computersystemen werden jeweils Teilprozesse eines übergeordneten Prozesses ausgeführt. Der übergeordnete Prozess wird auch als Gesamtprozess bezeichnet. So kann es sich bei dem Gesamtprozess beispielhaft um einen Einkaufsprozess handeln, der mit Hilfe der Computersysteme ausgeführt bzw. abgewickelt wird.Subprocesses of a superordinate process are executed in the external computer systems. The higher-level process is also referred to as the overall process. For example, the overall process can be a purchasing process that is carried out or processed using the computer systems.

Nachfolgend werden Beispiele beschrieben, bei denen es sich bei den externen Computersystemen um originäre Computersysteme handelt. Die Beispiele gelten in entsprechender Weise aber auch für externe Computersysteme, bei denen es sich um Produktionseinrichtungen, Verarbeitungseinrichtungen oder sonstige technische Einrichtungen handelt, wobei diese Einrichtungen eine Datenverarbeitungseinrichtung, etwa einen Prozessor mit einer Speichereinrichtung, aufweisen oder mit einer solchen Datenverarbeitungseinrichtung gekoppelt sind.Examples are described below in which the external computer systems are original computer systems. In a corresponding manner, however, the examples also apply to external computer systems which are production facilities, processing facilities or other technical facilities, these facilities having a data processing device, for example a processor with a storage device, or being coupled to such a data processing device.

Wesentlich für die vorliegende Erfindung ist, dass die externen Einrichtungen EC1, EC2, EC3 Teilprozesse eines übergeordneten Gesamtprozesses ausführen und zu den jeweiligen ausgeführten Teilprozessen Daten bereitstellen, aus denen gemäß dem erfindungsgemäßen Verfahren Prozessprotokolle für den übergeordneten Gesamtprozess erzeugt werden können.It is essential for the present invention that the external devices EC1, EC2, EC3 execute sub-processes of a higher-level overall process and provide data for the respective executed sub-processes, from which process protocols for the higher-level overall process can be generated according to the inventive method.

Es können auch mehr als drei oder weniger als drei externe Einrichtungen vorgesehen sein.More than three or fewer than three external devices can also be provided.

Beispiel:Example:

  • Bei einem ersten Teilprozess eines Einkaufsprozesses kann es sich um einen Bestellprozess handeln, mit dem Bestellungen abgewickelt werden. Der Bestellprozess wird beispielsweise in dem ersten externen Computersystem EC1 ausgeführt. Die Daten des Bestellprozesses und die dazugehörige Historie werden in dem ersten Computersystem EC1 gespeichert.A first sub-process of a purchasing process can be an order process with which orders are processed. The ordering process is carried out, for example, in the first external computer system EC1. The data of the ordering process and the associated history are stored in the first computer system EC1.
  • Bei einem zweiten Teilprozess kann es sich um Kontaktaufnahmen mit einem Verkäufer eines Zulieferers handeln, für den im ersten Computersystem EC1 Bestellungen erzeugt wurden. Die Kontaktaufnahmen werden beispielsweise in dem zweiten externen Computersystem EC2 abgewickelt. Die Daten zu den Kontaktaufnahmen und Details zu den Zulieferern sowie deren Verkäufer werden in dem zweiten Computersystem EC2 gespeichert.A second sub-process can involve contacting a seller of a supplier for whom orders were generated in the first computer system EC1. The contacts are processed, for example, in the second external computer system EC2. The data for making contact and details about the suppliers and their sellers are stored in the second computer system EC2.
  • Ein dritter, zu dem Gesamtprozess gehörender Teilprozess, kann auf dem dritten externen Computersystem EC3 ausgeführt werden. Die Daten des dritten Teilprozesses werden in dem dritten Computersystem EC3 gespeichert.A third subprocess belonging to the overall process can be executed on the third external computer system EC3. The data of the third sub-process are stored in the third computer system EC3.

Bei dem in Fig. 1 gezeigten Beispiel wird der Gesamtprozess auf drei Computersystemen EC1, EC2 und EC3 ausgeführt. Ein Gesamtprozess kann aber auch auf mehr oder weniger als drei Computersystemen ausgeführt werden (im Sinne der vorliegenden Erfindung ab auf mindestens zwei Computersystemen).At the in Fig. 1 In the example shown, the overall process is carried out on three computer systems EC1, EC2 and EC3. An overall process can also be based on more or less than three computer systems are executed (in the sense of the present invention on at least two computer systems).

Die jeweiligen Daten werden in den jeweiligen Computersystemen in strukturierter Form gespeichert, beispielsweise in Tabellen T1 bis T12 eines relationalen Datenbanksystems. Hierbei können in jedem Computersystem unterschiedliche Datenbankmanagementsysteme und unterschiedliche Datenbanktechnologien (relationale, objektorientierte, hierarchische Datenbanksysteme, etc.) verwendet werden. In der nachfolgenden Beschreibung wird davon ausgegangen, dass die Daten in den jeweiligen Computersystemen in Tabellen eines relationales Datenbanksystems gespeichert sind, wobei die Erfindung nicht hierauf beschränkt ist.The respective data are stored in a structured form in the respective computer systems, for example in tables T1 to T12 of a relational database system. Different database management systems and different database technologies (relational, object-oriented, hierarchical database systems, etc.) can be used in each computer system. In the following description it is assumed that the data in the respective computer systems are stored in tables of a relational database system, the invention being not restricted to this.

Die Tabellen bzw. die Daten dieser Tabellen stehen in einer bestimmten Beziehung zueinander. Diese Beziehungen sind in Fig. 1 durch die Verbindungslinien zwischen den in den Computersystemen EC1 bis EC3 gezeigten Tabellen T1 bis T12 gezeigt. In den jeweiligen Computersystemen EC1 bis EC3 können zudem Strukturtabellen vorhanden sein (in Fig. 1 nicht gezeigt), in denen Informationen zu den jeweiligen Tabellen und deren Beziehungen zueinander gespeichert sind. Diese Strukturtabellen können optional für das erfindungsgemäße Erzeugen eines Prozessprotokolls verwendet werden, wie weiter unten näher erläutert wird. Diese Strukturtabellen werden auch als Datenmodell bezeichnet.The tables or the data in these tables have a specific relationship to one another. These relationships are in Fig. 1 shown by the connecting lines between the tables T1 to T12 shown in the computer systems EC1 to EC3. Structure tables may also be present in the respective computer systems EC1 to EC3 (in Fig. 1 not shown), in which information about the respective tables and their relationships to one another are stored. These structure tables can optionally be used for generating a process protocol according to the invention, as will be explained in more detail below. These structure tables are also called data models.

Zum Erzeugen des Prozessprotokolls werden zunächst die Datentabellen T1 bis T12 in das interne Computersystem importiert.To generate the process log, the data tables T1 to T12 are first imported into the internal computer system.

Anschließend werden im internen Computersystem die Beziehungen zwischen den importierten Datentabellen rekonstruiert, wobei einerseits die Beziehungen zwischen den aus einem bestimmten externen Computersystem importierten Datentabellen rekonstruiert werden und andererseits die Beziehungen zwischen den Datentabellen eines Computersystem und den Datentabellen eines anderen Computersystem. Beispielsweise werden die Beziehungen zwischen den Tabellen T1 bis T4 (die aus dem Computersystem EC1 importiert wurden) und zwischen den Tabellen T5 bis T8 (die aus dem Computersystem EC2 importiert wurden) rekonstruiert. Zudem werden die Beziehungen zwischen den Tabellen T1 bis T4 und den Tabellen T5 bis T9 rekonstruiert (in Fig. 1 die Beziehung zwischen der Tabelle T3 und der Tabelle T6 und die Beziehung zwischen der Tabelle T6 und der Tabelle T9). Wie diese Beziehungen konkret ermittelt bzw. rekonstruiert werden, wird mit Bezug auf Fig. 2 näher beschrieben.The relationships between the imported data tables are then reconstructed in the internal computer system, the relationships between the data tables imported from a specific external computer system being reconstructed on the one hand and the relationships between the data tables of one computer system and the data tables of another computer system on the other hand. For example, the relationships between Tables T1 through T4 (the were imported from the computer system EC1) and between the tables T5 to T8 (which were imported from the computer system EC2). In addition, the relationships between tables T1 to T4 and tables T5 to T9 are reconstructed (in Fig. 1 the relationship between the table T3 and the table T6 and the relationship between the table T6 and the table T9). How these relationships are determined or reconstructed is described with reference to Fig. 2 described in more detail.

Die Verbindungslinien zwischen den importierten Tabellen in dem internen Computersystem zeigen diese rekonstruierten Beziehungen.The connecting lines between the imported tables in the internal computer system show these reconstructed relationships.

Nachdem die Beziehungen rekonstruiert wurden, existiert im internen Computersystem ein Datenbankschema, das die Tabellen und deren Beziehungen zueinander für alle aus den externen Computersystemen EC1 bis EC3 importierten Tabellen T1 bis T12 beschreibt.After the relationships have been reconstructed, a database schema exists in the internal computer system which describes the tables and their relationships to one another for all tables T1 to T12 imported from the external computer systems EC1 to EC3.

Nach der Rekonstruktion der Beziehungen zwischen den importierten Datentabellen T1 bis T12 wird ermittelt, welche Businessobjekte sich für das Erzeugen eines Prozessprotokolls eignen. Mit Bezug auf das oben erwähnte Beispiel können solche Businessobjekte beispielsweise "Bestellungen" und "Verkäufer" sein. Die Bestellungen sind hier beispielsweise in der Tabelle T3 und die Verkäufer in der Tabelle T9 gespeichert. Das Ermitteln dieser Businessobjekte wird mit Bezug auf Fig. 2 im Detail beschrieben. Die Tabellen in dem internen Computersystem, die diese ermittelten Businessobjekte speichern, weisen in Fig. 1 einen fetten Rahmen auf.After reconstructing the relationships between the imported data tables T1 to T12, it is determined which business objects are suitable for generating a process log. With reference to the example mentioned above, such business objects can be, for example, "orders" and "sellers". The orders are stored here, for example, in table T3 and the sellers in table T9. Finding these business objects is related to Fig. 2 described in detail. The tables in the internal computer system that store these identified business objects point to Fig. 1 a bold frame.

Nach einer vorteilhaften Ausgestaltung des erfindungsgemäßen Verfahrens wird eines der ermittelten Businessobjekte automatisch ausgewählt, beispielsweise das Businessobjekt "Bestellungen". D.h. dass die Tabelle T3 automatisch ausgewählt wird. Die Auswahl kann hierbei basierend auf vorbestimmten Bedingungen erfolgen, etwa der Anzahl der Datensätze und/oder der Anzahl der in diesen Tabellen gespeicherten Zeitstempel und/oder wie oft eine Tabelle in der Vergangenheit ausgewählt wurde (manuell oder automatisch).According to an advantageous embodiment of the method according to the invention, one of the business objects determined is selected automatically, for example the business object “orders”. This means that table T3 is selected automatically. The selection can be made based on predetermined conditions, such as the number of data records and / or the number in these tables saved time stamp and / or how often a table was selected in the past (manually or automatically).

Alternativ kann die Auswahl eines Businessobjekts (sofern mehrere geeignete Businessobjekte ermittelt wurden) auch durch einen Benutzer vorgenommen werden. Dem Benutzer werden hierbei die ermittelten Businessobjekte zur Auswahl angeboten. Die Liste der Businessobjekte kann nach vorbestimmten Bedingungen sortiert werden, etwa der Anzahl der Datensätze und/oder der Anzahl der in diesen Tabellen gespeicherten Zeitstempel und/oder wie oft eine Tabelle in der Vergangenheit ausgewählt wurde (manuell oder automatisch).Alternatively, the selection of a business object (if several suitable business objects have been determined) can also be made by a user. The business objects determined are offered to the user for selection. The list of business objects can be sorted according to predetermined conditions, such as the number of data records and / or the number of time stamps stored in these tables and / or how often a table was selected in the past (manually or automatically).

Im weiteren Verfahren wird das ausgewählte Businessobjekt, d.h. die ausgewählte Tabelle als Basistabelle für das Erzeugen eines Prozessprotokolls verwendet.In the further process, the selected business object, i.e. uses the selected table as the base table for generating a process log.

Basierend auf der Basistabelle (ausgewähltes Businessobjekt) werden aus den in das interne Computersystem importierten weiteren Tabellen jene Tabellen ausgewählt, die für das Erzeugen eines Prozessprotokolls oder mehrerer verschiedener Prozessprotokolle benötigt werden. Mehrere verschiedene Prozessprotokolle sind beispielsweise dann möglich, wenn basierend auf der Basistabelle verschiedene Aktivitäten mit Hilfe von Prozessprotokollen ausgewertet werden können. Im Beispiel des Businessobjektes "Bestellungen" können solche Aktivitäten beispielsweise die Preisänderungen innerhalb eines Bestellprozesses oder die Kontaktaufnahmen mit dem Verkäufer innerhalb eines Bestellprozesseses sein.Based on the base table (selected business object), those tables are selected from the other tables imported into the internal computer system that are required for generating a process log or several different process logs. Several different process logs are possible, for example, if different activities can be evaluated using process logs based on the base table. In the example of the "Orders" business object, such activities can be, for example, price changes within an order process or contacting the seller within an order process.

Basierend auf der Basistabelle T3 und den (direkten und indirekten) Beziehungen der Basistabelle T3 zu den anderen importierten Tabellen werden bei dem in Fig. 1 gezeigten Beispiel die Tabellen T1 und T4 bis T7 ausgewählt (in Fig. 1 durch die gestrichelte Umrandung kenntlich gemacht). Die Auswahl der weiteren Tabellen erfolgt basierend darauf, ob sich die Tabellen für das Erzeugen eines Prozessprotokolls eignen. Beispielsweise eignen sich weitere Tabellen (zusammen mit der Basistabelle) dann für das Erzeugen eines Prozessprotokolls, wenn die weiteren Tabellen im Vergleich zur Basistabelle jeweils viele Datensätze enthalten und/oder die weiteren Tabelle direkt oder indirekt von der Basistabelle referenziert werden und/oder die weiteren Tabellen mindestens ein Attribut aufweisen, in dem ein Zeitstempel gespeichert wird. Weitere Tabellen können sich auch dann für das Erzeugen von Prozessprotokoll eignen, wenn sie zuvor bereits für das Erzeugen von Prozessprotokollen verwendet wurden.Based on the base table T3 and the (direct and indirect) relationships of the base table T3 to the other imported tables, the in Fig. 1 shown example, the tables T1 and T4 to T7 selected (in Fig. 1 identified by the dashed outline). The other tables are selected based on whether the tables are suitable for generating a process log. For example, other tables are suitable (together with the base table) then for the generation of a process log if the further tables each contain a large number of data records compared to the basic table and / or the further table is directly or indirectly referenced by the basic table and / or the further tables have at least one attribute in which a time stamp is stored . Additional tables can also be suitable for generating process logs if they have already been used for generating process logs.

Bei dem in Fig. 1 gezeigten Beispiel wird die Tabelle T2 zwar direkt von der Basistabelle T3 referenziert. In dieser Tabelle T2 wird beispielsweise nur die Art der Bestellung gespeichert (z.B. Online-Bestellung, Bestellung per Fax, Bestellung per Post, Bestellung per Telefon). Demnach weist die Tabelle T2 keine Zeitstempel auf und enthält im Vergleich zur Basistabelle nur sehr wenige Datensätze. Die Tabelle T2 ist damit für das Erzeugen Prozessprotokollen nicht relevant.At the in Fig. 1 In the example shown, table T2 is referenced directly from base table T3. In this table T2, for example, only the type of order is saved (e.g. online order, order by fax, order by post, order by phone). Accordingly, table T2 has no time stamps and contains very few data records compared to the base table. Table T2 is therefore not relevant for generating process logs.

Würde bei dem in Fig. 1 gezeigten Beispiel die Tabelle T9 als Basistabelle (Businessobjekt "Verkäufer") ausgewählt, wählt das System beispielsweise die weiteren Tabellen T5 bis T7 und T10 als für das Erzeugen eines Prozessprotokolls relevante weitere Tabelle aus (in Fig. 1 durch die Strich-Punkt-Umrahmung kenntlich gemacht).Would at the in Fig. 1 In the example shown, if table T9 is selected as the base table (business object "seller"), the system selects, for example, the other tables T5 to T7 and T10 as another table relevant for generating a process log (in Fig. 1 identified by the dash-dot frame).

Nach der Auswahl der relevanten weiteren Tabellen ermittelt das System basierend auf der Basistabelle und den dazugehörigen weiteren Tabellen Aktivitäten, für die ein Prozessprotokoll erzeugt werden kann. Am Beispiel der Basistabelle T3 (Bestellungen) und den ausgewählten weiteren Tabellen T1 und T4 bis T7 können solche Aktivitäten beispielsweise die Preisänderungen innerhalb eines Bestellprozesses oder die Kontaktaufnahmen mit dem Verkäufer innerhalb eines Bestellprozesseses sein.After selecting the relevant further tables, the system determines activities for which a process log can be generated, based on the base table and the associated other tables. Using the example of the basic table T3 (orders) and the selected further tables T1 and T4 to T7, such activities can be, for example, price changes within an order process or contacting the seller within an order process.

Je nach Aktivität sind gegebenenfalls unterschiedliche Tabellen der ausgewählten weiteren Tabellen für das Erzeugen des Prozessprotokolls relevant.Depending on the activity, different tables of the selected further tables may be relevant for generating the process log.

Wären in der Tabelle T4 die Preisänderungen einer Bestellung samt den relevanten Zeitstempeln gespeichert, dann wäre diese Tabelle neben der Basistabelle T3 für ein Prozessprotokoll zur Auswertung der Preisänderungen von Bestellungen relevant. Neben den Änderungen des Preises können in der Tabelle T4 auch Änderungen der Bestellmengen samt der dazugehörigen Zeitstempel gespeichert sein. Für die Aktivität "Preisänderungen in Bestellungen" müsste diese Tabelle nach Preisänderungen gefiltert werden, für eine Aktivität "Änderung der Bestellmenge" müsste diese Tabelle nach entsprechenden Änderungen gefiltert werden. Für jede ermittelte Aktivität speichert das System die hierfür benötigten Filterkriterien ab (sofern notwendig). Ob ein Datensatz in der Tabelle T4 zu einer Preisänderung oder zu einer Bestellmengenänderung gehört, kann beispielsweise anhand eines Attributes ermittelt werden, in dem für jeden Datensatz die Art der Änderungen gespeichert ist.If the price changes of an order together with the relevant time stamps were stored in table T4, this table would be relevant in addition to the basic table T3 for a process log for evaluating the price changes of orders. In addition to changes in the price, table T4 can also contain changes to the order quantities together with the associated time stamp. For the activity "Price changes in orders" this table would have to be filtered for price changes, for an activity "Change of order quantity" this table would have to be filtered for corresponding changes. The system saves the filter criteria required for each activity determined (if necessary). For example, an attribute can be used to determine whether a data record in table T4 belongs to a price change or an order quantity change, in which the type of change is stored for each data record.

Neben diesen beiden Aktivitäten, die in der Tabelle T4 gespeichert sind, kann auch eine allgemeine Aktivität "Änderung der Bestellung" ermittelt werden, wofür kein Filterkriterium notwendig wäre.In addition to these two activities, which are stored in table T4, a general activity "change of order" can also be determined, for which no filter criterion would be necessary.

Wären in der Tabelle T6 die Kontaktaufnahmen zu einem Verkäufer samt der relevanten Zeitstempel gespeichert, dann wäre diese Tabelle für ein Prozessprotokoll zur Auswertung der Preisänderungen von Bestellungen nicht relevant. Für ein Prozessprotokoll zur Auswertung der Kontaktaufnahmen mit dem Verkäufer innerhalb eines Bestellprozesseses wäre diese Tabelle hingegen relevant.If the contacts to a seller including the relevant time stamps were stored in table T6, this table would not be relevant for a process log for evaluating the price changes of orders. However, this table would be relevant for a process log to evaluate the contact with the seller within an order process.

Weitere Aktivitäten könnten das Erzeugen einer Bestellung oder das Bestätigen einer Bestellung durch den Verkäufer sein. Hierfür bräuchte es keine weitere Tabelle, wenn in der Tabelle T3 ein Datum gespeichert ist, an dem die Bestellung angelegt wurde, und ein Datum, an dem die Bestellung bestätigt wurde.Other activities could be creating an order or confirming an order by the seller. There would be no need for another table for this if table T3 contains a date on which the order was created and a date on which the order was confirmed.

Für ein Prozessprotokoll zur Auswertung der Preisänderungen von Bestellungen aufgrund von Kontaktaufnahmen mit dem Verkäufer innerhalb eines Bestellprozesseses wären hingegen beide Tabellen T4 und T6 relevant.In contrast, both tables T4 and T6 would be relevant for a process log for evaluating the price changes of orders due to contacting the seller within an order process.

Die ermittelten Aktivitäten können auch Bestandteil eines übergeordneten Prozesses sein. Ein solcher Prozess kann beispielsweise der Bestellprozess an sich sein, der die Prozessschritte (Aktivitäten)

  • Erzeugen einer Bestellung,
  • Preisänderungen in Bestellungen,
  • Kontaktaufnahmen mit dem Verkäufer, und/oder
  • Bestätigen einer Bestellung
enthält.The activities identified can also be part of a higher-level process. Such a process can be, for example, the ordering process itself, which includes the process steps (activities)
  • Creating an order,
  • Price changes in orders,
  • Contacting the seller, and / or
  • Confirm an order
contains.

Für einen solchen Prozess kann ebenfalls ein Prozessprotokoll erzeugt werden. Bei vorstehendem Beispiel wären hierfür neben der Basistabelle T3 auch de Tabellen T4 und T6 für das Erzeugen eines Prozessprotokolls relevant.A process log can also be generated for such a process. In the example above, in addition to the base table T3, the tables T4 and T6 would also be relevant for generating a process log.

Für jede ermittelte Aktivität speichert das System neben gegebenenfalls relevanten Filterkriterien auch Attribute / Spaltennamen (plus gegebenenfalls den dazugehörigen Tabellennamen), deren Werte für das Erzeugen eines Prozessprotokolls zwingend notwendig sind. Ein solches zwingend notwendiges Attribut ist etwa ein Zeitstempel, mit dem die Reihenfolge der Aktivitäten innerhalb eines Prozesses festgelegt wird.For each activity that is determined, the system saves not only relevant filter criteria but also attributes / column names (plus the associated table names, if applicable), the values of which are absolutely necessary for generating a process log. Such a mandatory attribute is, for example, a time stamp with which the sequence of activities within a process is determined.

Mit Hilfe eines Prozessprotokolls, das für den Bestellprozess erzeugt wird, kann ein Process Mining System, dem das Prozessprotokoll zu Verfügung gestellt wird, die Bestellprozesse analysieren. Beispielsweise kann mit einem Process Mining System festgestellt werden, dass bei x% der Bestellprozesse mehr als y Kontaktaufnahmen mit dem Verkäufer stattgefunden haben, oder dass bei x% der Bestellprozesse mindestens y Preisänderungen stattgefunden haben, oder dass x% der Bestellprozesse innerhalb eines bestimmten Zeitraumes bestätigt wurden.With the help of a process log that is generated for the ordering process, a process mining system to which the process log is made available can analyze the ordering processes. For example, a process mining system can be used to determine that x% of the ordering processes have made more than y contacts with the seller, or that at least y price changes have occurred in x% of the ordering processes, or that x% of the ordering processes have been confirmed within a certain period were.

Aus den ermittelten Aktivitäten kann das System nunmehr eine oder mehrere Aktivitäten auswählen, um hierzu die entsprechenden Prozessprotokolle zu erzeugen. Es kann für jede ausgewählte Aktivität ein eigenes Prozessprotokoll erzeugt werden. Ebenso kann für mehrere ermittelte Aktivitäten ein gemeinsames Prozessprotokoll erzeugt werden (so kann für die Aktivitäten Erzeugen einer Bestellung, Preisänderungen in Bestellungen, Kontaktaufnahmen mit dem Verkäufer und Bestätigen einer Bestellung ein gemeinsamen Prozessprotokoll für den Prozess Bestellungen erzeugt werden).The system can now select one or more activities from the activities determined in order to generate the corresponding process logs. A separate process log can be generated for each selected activity. Likewise, a common process log can be generated for several identified activities (for example, a common process log can be generated for the orders process for the activities creating an order, price changes in orders, contacting the seller and confirming an order).

Alternativ kann der Benutzer auch aus den ermittelten Aktivtäten jene Aktivitäten auswählen, für die (separate oder ein gemeinsames) Prozessprotokolle erzeugt werden sollen.Alternatively, the user can also select from the determined activities those activities for which (separate or a common) process logs are to be generated.

Aufgrund der ausgewählten Aktivitäten und den ermittelten Beziehungen zwischen den Tabellen, ist das System nunmehr in der Lage die hierfür erforderlichen Tabellen auszuwählen und basierend hierauf zumindest ein Prozessprotokoll zu erzeugen.Based on the selected activities and the determined relationships between the tables, the system is now able to select the tables required for this and to generate at least one process log based on this.

Basierend auf den für ein Prozessprotokoll benötigten Tabellen (Basistabelle und dazugehörigen relevante weitere Tabellen gemäß den ausgewählten Aktivitäten) und den Beziehungen zwischen den benötigten Tabellen (die gegebenenfalls abhängig sind von den ausgewählten Aktivitäten) wird im internen Computersystem eine Transformation erzeugt, die aus den notwendigen Attributen der für ein Prozessprotokoll relevanten Tabellen und unter Berücksichtigung der relevanten Beziehungen zwischen den für das Prozessprotokoll relevanten Tabellen Daten extrahiert und die extrahierten Daten als Prozessprotokoll speichert. Das Extrahieren der Daten erfolgt unter Verwendung der gegebenenfalls notwendigen Filterkriterien.Based on the tables required for a process log (base table and the relevant additional tables according to the selected activities) and the relationships between the required tables (which may depend on the selected activities), a transformation is generated in the internal computer system that contains the necessary attributes of the tables relevant to a process log and taking into account the relevant relationships between the tables relevant to the process log, extracting data and storing the extracted data as a process log. The data is extracted using the filter criteria that may be necessary.

Das so erzeugte und gespeicherte Prozessprotokoll kann nun einem Process Mining System zur Verfügung gestellt werden, um die in dem Prozessprotokoll gespeicherten Prozesse zu analysieren.The process log generated and stored in this way can now be made available to a process mining system in order to analyze the processes stored in the process log.

Jeder in dem Prozessprotokoll gespeicherte Datensatz repräsentiert einen Prozessschritt (Aktivität / Ereignis) eines in den externen Computersystemen EC1 bis EC3 ausgeführten Prozesses. In dem Prozessprotokoll können Prozessschritte mehrerer Prozesse gespeichert sein.Each data record stored in the process log represents a process step (activity / event) of a process carried out in the external computer systems EC1 to EC3. Process steps of several processes can be stored in the process log.

Die Datenstruktur des Prozessprotokolls umfasst hierbei zumindest

  • ein erstes Attribut, in dem eine eindeutige Kennung des Prozesses des jeweiligen Prozessschrittes gespeichert ist,
  • ein zweites Attribut, in dem eine Kennung des jeweiligen Prozessschrittes gespeichert ist, und
  • ein drittes Attribut, in dem eine Reihenfolge der Prozessschritte innerhalb eines Prozesses gespeichert ist.
The data structure of the process log in this case at least includes
  • a first attribute in which a unique identifier of the process of the respective process step is stored,
  • a second attribute in which an identifier of the respective process step is stored, and
  • a third attribute in which an order of the process steps within a process is stored.

Die Reihenfolge der Prozessschritte innerhalb eines Prozesses kann durch den oben erwähnten Zeitstempel angegeben werden, der für jede Aktivität (Prozessschritt) aus den entsprechenden Tabellen ausgelesen wird.The order of the process steps within a process can be specified by the time stamp mentioned above, which is read from the corresponding tables for each activity (process step).

Die eindeutige Kennung des Prozesses kann beispielsweise aus der Basistabelle ausgelesen werden. Für Bestellungen, die in der Tabelle T3 gespeichert sind, kann beispielsweise die (eindeutige) Bestellnummer ausgelesen werden und als Prozesskennung in dem Prozessprotokoll verwendet werden.The unique identifier of the process can be read from the base table, for example. For orders that are stored in table T3, for example, the (unique) order number can be read out and used as a process identifier in the process log.

Die Kennung des jeweiligen Prozessschrittes (die nicht eindeutig sein muss) kann aus den Spaltennamen und/oder Tabellennamen und/oder aus Attributswerten ermittelt werden. Beispiel: In der Tabelle T3 sind die Spalten "Erstellt" und "Bestätigt" vorhanden, in denen für jede Bestellung das Erstelldatum und (sofern bestätigt) das Bestätigungsdatum gespeichert sind. Die Tabelle T3 heißt "Bestellungen". Für die oben genannten Aktivitäten (Prozessschritte) "Erzeugen einer Bestellung" und "Bestätigen einer Bestellung" können die Kennungen "Bestellung erstellt" (aus dem Tabellenamen "Bestellungen" und dem Spaltennamen "Erstellt") und "Bestellung bestätigt" (aus dem Tabellenamen "Bestellungen" und dem Spaltennamen "Bestätigt") erzeugt werden und für den jeweiligen Prozessschritt in dem dritten Attribut des Prozessprotokolls gespeichert werden.The identifier of the respective process step (which need not be unique) can be determined from the column names and / or table names and / or from attribute values. Example: In table T3 there are the "Created" and "Confirmed" columns, in which the creation date and (if confirmed) the confirmation date are saved for each order. Table T3 is called "Orders". For The above-mentioned activities (process steps) "Creating an order" and "Confirming an order" can have the identifiers "Order created" (from the table name "Orders" and the column name "Created") and "Order confirmed" (from the table name "Orders "and the column name" Confirmed ") are generated and saved for the respective process step in the third attribute of the process log.

Vorteilhaft ist es, wenn das Prozessprotokoll bzw. die darin gespeicherten Datensätze zunächst nach dem ersten Attribut und dann nach dem dritten Attribut sortiert werden. Damit liegen die zu einem Prozess gehörenden Prozessschritte in gruppierter Form vor, wobei gleichzeitig die zu einem Prozess gehörenden Prozessschritte zeitlich sortiert sind.It is advantageous if the process log or the data records stored therein are sorted first by the first attribute and then by the third attribute. This means that the process steps belonging to a process are available in a grouped form, with the process steps belonging to a process being sorted at the same time.

Das Prozessprotokoll kann als ganzes oder teilweise im Arbeitsspeicher gespeichert werden. Vorteilhaft ist es ferner, wenn die zu einem Prozess gehörenden Prozessschritte im Arbeitsspeicher an benachbarten Adressen gespeichert werden, und zwar sortiert nach dem dritten Attribut. Damit können in vorteilhafter Weise Vorgänger/Nachfolger-Beziehungen der Prozessschritte innerhalb eines Prozesses ermittelt werden, ohne dass solche Vorgänger/Nachfolger-Beziehungen gespeichert werden müssen. Denn bei einem rein sequentiellen Prozess (ohne parallele Teilprozesse) ergibt sich die Vorgänger/Nachfolger-Beziehung direkt aus den Adressen, in denen die Prozessschritte gespeichert sind. Das Process Mining System kann zudem das Prozessprotokoll als Stream sequenziell und in der richtigen Reihenfolge aus dem Arbeitsspeicher auslesen und verarbeiten. So kann beispielsweise in O(n) ein kompletter Prozessgraph erzeugt und visualisiert werden, der die Prozessschritte aller in dem Prozessprotokoll gespeicherten Prozesse umfasst. Bei Prozessen mit parallelen Teilprozessen kann zudem in O(n) eine vollständige Prozesshierarchie erzeugt werden, die dann ebenfalls als Prozessgraph visualisiert werden kann.The process log can be saved in whole or in part in the working memory. It is also advantageous if the process steps belonging to a process are stored in the working memory at adjacent addresses, specifically sorted according to the third attribute. Predecessor / successor relationships of the process steps within a process can thus be advantageously determined without such predecessor / successor relationships having to be stored. Because in a purely sequential process (without parallel sub-processes), the predecessor / successor relationship results directly from the addresses in which the process steps are stored. The process mining system can also read and process the process log sequentially and in the correct order from the main memory. For example, a complete process graph can be generated and visualized in O ( n ), which includes the process steps of all processes stored in the process log. For processes with parallel sub-processes, a complete process hierarchy can also be generated in O ( n ), which can then also be visualized as a process graph.

Die Möglichkeit der linearen Verarbeitung des Prozessprotokolls in dem Process Mining System ist von grundlegender Bedeutung, da typische Prozessprotokolle (z.B. in einem Unternehmen, das jährlich mehrere hunderttausend Bestellung vom Erzeugen der Bestellung bis zum Bezahlen der bestellten Ware verarbeitet, wobei jede Bestellung bis zu hundert oder mehr Aktivitäten aufweisen kann) mehrere Millionen bis hin zu mehreren hundert Millionen Aktivitäten (Datensätze) aufweisen.The possibility of linear processing of the process log in the process mining system is of fundamental importance, since typical process logs (e.g. in a company that processes several hundred thousand orders a year from creating the order to paying for the goods ordered, each order can have up to a hundred or more activities) have several million to several hundred million activities (data records).

Für das erstmalige Erstellen des Prozessprotokolls (durch Ausführen der Transformation) können die Daten der in das interne Computersystem importierten Tabellen verwendet werden. Es ist aber auch möglich hierfür auf die in den externen Computersystemen EC1 bis EC3 gespeicherten Daten zurückzugreifen.The data from the tables imported into the internal computer system can be used to create the process log for the first time (by executing the transformation). However, it is also possible to use the data stored in the external computer systems EC1 to EC3.

Nach dem erstmaligen Erstellen des Prozessprotokolls kann die Transformation zyklisch, bei Bedarf oder nach bestimmten Regeln ausgeführt werden, beispielsweise alle zehn Minuten. Bei jedem Ausführen der Transformation werden die seit dem letzten Ausführen der Transformation in den externen Computersystemen hinzugekommen Aktivitäten extrahiert und dem Prozessprotokoll hinzugefügt.After the process log has been created for the first time, the transformation can be carried out cyclically, as required or according to certain rules, for example every ten minutes. Each time the transformation is performed, the activities that have occurred in the external computer systems since the transformation was last carried out are extracted and added to the process log.

Vorstehend wurde das erfindungsgemäße Verfahren mit Bezug auf externe Computersysteme EC1 bis EC3 beschrieben, bei denen es sich um Systeme handelt, mit deren Hilfe Geschäftsprozesse abgewickelt werden.The method according to the invention has been described above with reference to external computer systems EC1 to EC3, which are systems by means of which business processes are processed.

Bei den externen Systemen EC1 bis EC3 kann es sich aber auch physikalische Einrichtungen, etwa Maschinen handeln, die beispielsweise im Rahmen einer Verarbeitung eines Produktes entlang einer Produktions- und/oder Fertigungsstraße Daten bereitstellen, die eine Aktivität bzw. einen Prozessschritt eines Fertigungsprozesses repräsentieren. Diese Daten können in einer der Maschine zugeordneten Speichereinrichtung gespeichert werden, beispielsweise in Tabellen eines Datenbanksystems. Diese Tabellen können dann in das vorstehend beschriebene interne Computersystem importiert werden, um daraus gemäß dem vorstehend beschriebenen Verfahren Prozessprotokolle zu erzeugen.However, the external systems EC1 to EC3 can also be physical devices, for example machines, which, for example, as part of processing a product along a production and / or production line, provide data which represent an activity or a process step of a production process. This data can be stored in a memory device assigned to the machine, for example in tables in a database system. These tables can then be imported into the internal computer system described above in order to generate process logs therefrom in accordance with the method described above.

So kann es sich beim externen System EC1 um eine Schleifmaschine handeln. Die Schleifmaschine protokolliert beispielsweise den Start und das Ende eines Schleifvorganges und speichert diese Daten zusammen mit einer Produktkennung in der ihr zugeordneten Datenbank.The external system EC1 can be a grinding machine. For example, the grinding machine logs the start and end of a grinding process and stores this data together with a product identifier in the database assigned to it.

Bei dem externen System EC2 kann es sich um eine Lackiereinrichtung handeln, die mit einer anderen Datenbank gekoppelt ist. Die Lackiereinrichtung kann einen Sensor zum Messen der aufgetragenen Lackdicke aufweisen, um gegebenenfalls einen Lackiervorgang an einem Produkt so lange zu wiederholen, bis die gewünschte Lackdicke erreicht wurde. Die Lackiereinrichtung kann den Start und das Ende eines gesamten Lackiervorganges sowie Start und Ende der jeweiligen Wiederholungen zusammen mit den jeweils gemessenen Lackdicken protokollieren und zusammen mit einer Produktkennung in der ihr zugeordneten Datenbank speichern.The external system EC2 can be a painting device that is coupled to another database. The coating device can have a sensor for measuring the applied coating thickness, in order, if necessary, to repeat a coating process on a product until the desired coating thickness has been reached. The painting device can log the start and end of an entire painting process as well as the start and end of the repetitions together with the measured paint thicknesses and save them together with a product identifier in the database assigned to them.

Aus den diesen beiden Maschinen zugeordneten Tabellen können gemäß dem erfindungsgemäßen Verfahren die Aktivitäten (Prozessschritte)

  • Beginn Schleifen
  • Ende Schleifen
  • Beginn Lackieren
  • Ende Lackieren
  • Beginn Wiederholung Lackieren (mit der gemessenen Lackdicke)
  • Ende Wiederholung Lackieren (mit der gemessenen Lackdicke)
ermittelt werden.From the tables assigned to these two machines, the activities (process steps) can be
  • Start grinding
  • End grinding
  • Start painting
  • Finish painting
  • Repeat painting starts (with the measured paint thickness)
  • End of repetition of painting (with the measured paint thickness)
be determined.

Mit Hilfe der Produktkennung können die einzelnen Aktivitäten einem bestimmten Verarbeitungsprozess zugeordnet werden.With the help of the product identifier, the individual activities can be assigned to a specific processing process.

Die hierfür erzeugten Prozessprotokolle können von einem Process Mining System analysiert werden, um beispielsweise zu erkennen, welche Produkte zu einer Verzögerung in einem nachfolgenden Montageprozess führen, weil etwa bei bestimmten Produkten der Lackiervorgang besonders häufig wiederholt werden muss.The process logs generated for this can be analyzed by a process mining system, for example to recognize which products lead to a delay in a subsequent assembly process, because the painting process has to be repeated particularly often for certain products.

Fig. 2 zeigt ein Ablaufdiagramm des erfindungsgemäßen Verfahrens zum Erzeugen von Prozessprotokollen. Fig. 2 shows a flowchart of the inventive method for generating process logs.

In einem ersten Schritt S1 werden die Datentabellen aus unterschiedlichen Systemen in das interne Computersystem importiert. Die unterschiedlichen Systeme, aus denen die Datentabellen importiert werden, können die mit Bezug auf Fig. 1 gezeigten externen Computersystems EC1 bis EC3 sein, und/oder Produktionseinrichtungen, Verarbeitungseinrichtungen oder sonstige technische Einrichtungen, die Daten zu ausgeführten Prozessen / Teilprozessen bereitstellen. Bei diesen Systemen kann es sich um verteilte Systeme (z.B. um Produktionseinrichtungen an unterschiedlichen Standorten) und/oder um Cloud-Systeme handeln.In a first step S1, the data tables are imported from different systems into the internal computer system. The different systems from which the data tables are imported can be related to Fig. 1 shown external computer system EC1 to EC3, and / or production facilities, processing facilities or other technical facilities that provide data on executed processes / sub-processes. These systems can be distributed systems (eg production facilities at different locations) and / or cloud systems.

Sofern es sich bei den zu importierenden Datentabellen um Daten aus Datenbanksystemen handelt, können die Datentabellen direkt in ein Datenbanksystem des internen Computersystems importiert werden.If the data tables to be imported are data from database systems, the data tables can be imported directly into a database system of the internal computer system.

Bei den zu importierenden Datentabellen muss es sich aber nicht notwendigerweise um Tabellen eines Datenbanksystems handeln. Die zu importierenden Daten können in dem externen Computersystem beispielsweise auch als eine oder mehrere strukturierte Textdatei/en vorliegen. In diesem Fall ist es vorteilhaft, die Daten dennoch in einem Datenbanksystem des internen Computersystems zu speichern. Gegebenenfalls müssen die zu importierenden Daten vor dem Speichern in dem Datenbanksystem aufbereitet werden.However, the data tables to be imported do not necessarily have to be tables of a database system. The data to be imported can also be present in the external computer system, for example, as one or more structured text files. In this case, it is advantageous to save the data in a database system of the internal computer system. If necessary, the data to be imported must be prepared before being saved in the database system.

Nach dem ersten Schritt S1 sind sämtliche Daten der externen Computersysteme, für die Prozessprotokolle erzeugt werden sollen, in dem internen Computersystem gespeichert.After the first step S1, all data of the external computer systems for which process logs are to be generated are stored in the internal computer system.

Nachfolgend werden beispielhaft vier Tabellen mit beispielhaften Daten angegeben, die aus externen Computersystemen importiert worden sind, wobei die Tabellen 1 und 2 aus einem ersten Computersystem (z.B. ein On Premise ERP System) und die Tabellen 3 und 4 aus einem zweiten Computersystem (z.B. ein Cloud CRM System) in das interne Computersystem importiert wurden. Tabelle T1 - Order Information (Bestellinformationen) Order Number Creation Date Vendor Price Amount 1 01.01.2018 ABC 100 10 2 24.01.2018 XYZ 2 12 ... ... ... ... ... Tabelle T2 - Order History (Bestellhistorie) Date Order Number Field Old value New value Who 01.01.2018 1 Price 99 130 Joe 02.01.2018 1 Amount 9 7 Joe 03.01.2018 1 Amount 7 10 Joe 04.01.2018 1 Price 130 95 Bill 05.01.2018 1 Price 95 100 Joe ... ... ... ... ... Tabelle T3 - Vendor Calls (Kontaktaufnahmen zum Verkäufer) Vendor Account Executive Type Reference ID Date ABC George Call 1 02.01.2018 ABC George Mail 1 04.01.2018 ... ... ... ... Tabelle T4 - Vendor Information (Verkäuferinformationen) Vendor Create date Country State ABC 02.01.2017 DE BY XYZ 08.04.2017 DE BY ... ... ... ... Four tables with exemplary data that have been imported from external computer systems are given below, tables 1 and 2 from a first computer system (for example an on-premise ERP system) and tables 3 and 4 from a second computer system (for example a cloud) CRM system) were imported into the internal computer system. Table T1 - Order Information Order number Creation Date Vendor Price Amount 1 01/01/2018 ABC 100 10th 2nd 24/01/2018 XYZ 2nd 12th ... ... ... ... ... Date Order number Field Old value New value Who 01/01/2018 1 Price 99 130 Joe 02/01/2018 1 Amount 9 7 Joe 03/01/2018 1 Amount 7 10th Joe 04/01/2018 1 Price 130 95 Bill 05/01/2018 1 Price 95 100 Joe ... ... ... ... ... Vendor Account Executive Type Reference ID Date ABC George Call 1 02/01/2018 ABC George Mail 1 04/01/2018 ... ... ... ... Vendor Create date Country State ABC 02/01/2017 DE BY XYZ 04/08/2017 DE BY ... ... ... ...

Nachdem die Datentabellen vollständig importiert wurden, werden in dem zweiten Schritt S2 die Beziehungen (Fremdschlüsselbeziehungen) zwischen den einzelnen importierten Datentabellen rekonstruiert. Bei den vier vorstehend genannten Tabellen wären dies folgende Beziehungen: a) T1 (Order Number) ←→ T2 (Order Number) b) T1 (Order Number) ←→ T3 (Reference ID) c) T2 (Order Number) ←→ T3 (Reference ID) d) T3 (Vendor) ←→ T4 (Vendor) e) T3 (Vendor) ←→ T1 (Vendor) After the data tables have been completely imported, the relationships (foreign key relationships) between the individual imported data tables are reconstructed in the second step S2. For the four tables above, this would be the following relationships: a) T1 (order number) ← → T2 (order number) b) T1 (order number) ← → T3 (Reference ID) c) T2 (order number) ← → T3 (Reference ID) d) T3 (vendor) ← → T4 (vendor) e) T3 (vendor) ← → T1 (vendor)

Tn (x) ←→ Tm (y) bedeutet hierbei, dass die Tabellen Tn und Tm über das Attribut x der Tabelle Tn und über das Attribut y der Tabelle Tm miteinander verknüpft sind.Tn (x) ← → Tm (y) means that the tables Tn and Tm are linked with each other via the attribute x of the table Tn and via the attribute y of the table Tm.

Um die Beziehungen zwischen den importierten Datentabellen zu rekonstruieren, kann es vorteilhaft sein, neben den Datentabellen auch sogenannte Schematabellen aus den externen Computersystemen zu importieren. In den Schematabellen können Informationen zu den Beziehungen zwischen den importierten Datentabellen gespeichert sein.In order to reconstruct the relationships between the imported data tables, it can be advantageous to import so-called schematic tables from the external computer systems in addition to the data tables. Information about the relationships between the imported data tables can be stored in the schematic tables.

So können zu den vorstehend genannten Tabellen T1 bis T4 Schematabellen au dem ersten Computersystem und aus dem zweiten Computersystem importiert werden. In den Schematabellen aus dem ersten Computersystem sind die Beziehungen zwischen den Tabellen T1 und T2 gespeichert, in den Schematabellen aus dem zweiten Computersystem sind die Beziehungen zwischen den Tabellen T3 und T4 gespeichert.In this way, schematic tables can be imported from the first computer system and from the second computer system for the tables T1 to T4 mentioned above. The relationships between tables T1 and T2 are stored in the schematic tables from the first computer system, and the relationships between tables T3 and T4 are stored in the schematic tables from the second computer system.

Unter Verwendung der Schematabellen können dann die Beziehungen zwischen den Tabellen T1 und T2 bzw. zwischen den Tabellen T3 und T4 automatisch rekonstruiert werden.Using the schematic tables, the relationships between tables T1 and T2 or between tables T3 and T4 can then be reconstructed automatically.

Auch ohne Verwendung der genannten Schematabellen können die Beziehungen zwischen den Tabellen T1 und T2 bzw. zwischen den Tabellen T3 und T4 automatisch rekonstruiert werden. Dies ist beispielsweise dann möglich, wenn

  • ein Attribut (Spaltenname) der einen Datentabelle identisch oder ähnlich zu einem Attribut (Spaltenname) der anderen Datentabelle ist, oder
  • die Kombination aus Tabellenname und Spaltenname identisch oder ähnlich ist zu einem Spaltenname einer anderen Datentabelle (z.B. die Tabelle "Vendor" enthält eine Spalte "ID" und die Tabelle "Order" enthält eine Spalte "VendorID" - in diesem Fall wären die Tabellen "Vendor" und "Order" über die Attribute "ID" und "VendorID" miteinander verknüpft).
The relationships between tables T1 and T2 or between tables T3 and T4 can be reconstructed automatically even without using the named schematic tables. This is possible, for example, if
  • an attribute (column name) which is identical or similar to an attribute (column name) of the other data table, or
  • the combination of table name and column name is identical or similar to a column name of another data table (eg the table "Vendor" contains a column "ID" and the table "Order" contains a column "VendorID" - in this case the tables would be "Vendor""and" Order "linked via the attributes" ID "and" VendorID ").

Für oben genannte Tabellen könnten so die Beziehungen T1 (Order Number) ←→ T2 (Order Number) T3 (Vendor) ←→ T4 (Vendor) auch ohne Schematabellen automatisch rekonstruiert werden.For the tables above, the relationships could T1 (Order Number) ← → T2 (order number) T3 (Vendor) ← → T4 (vendor) can be reconstructed automatically even without schematic tables.

Zudem könnte auch die Beziehung T3 (Vendor) ←→ T1 (Vendor) automatisch erkannt werden, obwohl die Tabellen T1 und T3 aus unterschiedlichen externen System importiert wurden.The relationship could also T3 (Vendor) ← → T1 (vendor) are recognized automatically, even though the tables T1 and T3 were imported from different external systems.

Zum automatischen Erkennen der Beziehungen zwischen den Tabellen T1 und T3 bzw. zwischen den Tabellen T2 und T3 (T1 und T2 wurden ja aus einem anderen Computersystem importiert als die Tabelle T3) kann auf weitere Heuristiken zurückgegriffen werden. Beispielsweise kann der Spaltenname analysiert werden (enthält der Spaltenname z.B. den Textbestandteil "ID", so kann mit großer Wahrscheinlichkeit davon ausgegangen werden, dass in dieser Spalte Fremdschlüsselwerte gespeichert werden). Alternativ oder zusätzlich können auch die importierten Schematabellen verwendet werden, um für die importierten Tabellen die Primärschlüsselattribute und die Fremdschlüsselattribute zu ermitteln.Additional heuristics can be used to automatically recognize the relationships between tables T1 and T3 or between tables T2 and T3 (T1 and T2 were imported from a different computer system than table T3). For example, the column name can be analyzed (e.g. if the column name contains the text component "ID", it can be assumed with great probability that foreign key values are stored in this column). Alternatively or additionally, the imported schema tables can also be used to determine the primary key attributes and the foreign key attributes for the imported tables.

Für die Tabelle T1 kann beispielsweise anhand der importierten Schematabellen das Attribut "Order Number" als Primärschlüsselattribut ermittelt werden. Für die Tabelle T3 kann beispielsweise das Attribut "Reference ID" aufgrund einer Analyse der Spaltennamen als Fremdschlüsselattribut ermittelt werden. Damit kann die Beziehung T1 (Order Number) ←→ T3 (Reference ID) automatisch ermittelt werden.For the table T1, for example, the "Order Number" attribute can be determined as the primary key attribute on the basis of the imported schematic tables. For example, the "Reference ID" attribute can be determined for the table T3 on the basis of an analysis of the column names as a foreign key attribute. So that the relationship T1 (Order Number) ← → T3 (Reference ID) can be determined automatically.

In analoger Weise kann auch die Beziehung T2 (Order Number) ←→ T3 (Reference ID) automatisch ermittelt werden.The relationship can be analogous T2 (Order Number) ← → T3 (Reference ID) can be determined automatically.

Die so ermittelten Beziehungen zwischen den Tabellen T1 bis T4 können durch einen Nutzer bestätigt werden. Zusätzlich kann es vorgesehen sein, dass ein Nutzer zusätzliche Beziehungen erzeugt / hinzufügt (etwa Beziehungen, die nicht automatisch ermittelt wurden) oder bestehende Beziehungen wieder entfernt (etwa Beziehungen, die das System falsch ermittelt hat)The relationships between the tables T1 to T4 determined in this way can be confirmed by a user. In addition, it can be provided that a user creates / adds additional relationships (such as relationships that were not automatically determined) or removes existing relationships (such as relationships that the system determined incorrectly).

Nachdem die Beziehungen rekonstruiert wurden, existiert im internen Computersystem ein valides Datenbankschema, das die Tabellen und deren Beziehungen zueinander für alle aus den externen Computersystemen importierten Tabellen T1 bis T4 beschreibt. Werden diese Tabellen oder eine Teilmenge dieser Tabellen zu einem späteren Zeitpunkt erneut in das interne Computersystem importiert, etwa um anderer Prozessprotokolle zu erzeugen, dann kann das interne Computersystem auf dieses valides Datenbankschema zurückgreifen um, Beziehungen zwischen den Tabellen zu ermitteln. In dieser Hinsicht ist das interne Computersystem selbstlernend ausgestaltet, d.h. es lernt sukzessive Beziehungen zwischen importierten Datentabellen, sodass das Computersystem zu einem späteren Zeitpunkt auf die gelernten Beziehungen zurückgreifen kann.After the relationships have been reconstructed, a valid database schema exists in the internal computer system, which describes the tables and their relationships to one another for all tables T1 to T4 imported from the external computer systems. If these tables or a subset of these tables are imported again into the internal computer system at a later point in time, for example to generate different process protocols, then the internal computer system can use this valid database schema to determine relationships between the tables. In this regard, the internal computer system is designed to be self-learning, i.e. it learns successively relationships between imported data tables, so that the computer system can fall back on the learned relationships at a later point in time.

Nachdem die Beziehungen ermittelt und gegebenenfalls gespeichert wurden, werden in dem nächsten Schritt S3 Businessobjekte (auch Case Objekt genannt) ermittelt, die sich für das Erzeugen eines Prozessprotokolls eignen. Hierbei werden jene Datentabellen ausgewählt, in denen solche Businessobjekte gespeichert sind (oder jedenfalls mit großer Wahrscheinlichkeit gespeichert sind). Dies erfolgt vorteilhafter Weise automatisch.After the relationships have been determined and possibly saved, in the next step S3 business objects (also called case objects) are determined which are suitable for generating a process log. Here, those data tables are selected in which such business objects are stored (or at least are stored with a high probability). This is advantageously done automatically.

In dem vorliegenden Beispiel kann das interne Computersystem die Tabellen T1 (Bestellungen) und T4 (Verkäufer) als Businessobjekte erkennen. Denn die Tabelle T1 speichert Basisinformationen zu Bestellungen und die Tabelle T4 speichert Basisinformation zu Verkäufern. Die Tabellen T2 und T3 hingegen speichern Änderungsinformation (Tabelle T2: Preisänderungen / Mengenänderungen einer Bestellung) bzw. Aktionen (Tabelle T3: Kontaktaufnahmen zu Verkäufern).In the present example, the internal computer system can recognize tables T1 (orders) and T4 (sellers) as business objects. This is because table T1 stores basic information about orders and table T4 stores basic information about sellers. Tables T2 and T3, on the other hand, store change information (table T2: price changes / quantity changes of an order) or promotions (table T3: contacts to sellers).

Erkennt das interne System mehrere Businessobjekte als geeignet für das Erzeugen eines Prozessprotokolls, kann eines der Businessobjekte von einem Nutzer ausgewählt werden. Das interne Computersystem kann Informationen zu dem ausgewählten Businessobjekt speichern, sodass das interne Computersystem zu einem späteren Zeitpunkt auf diese Informationen zugreifen kann. Wird das erfindungsgemäße Verfahren mehrfach durchgeführt, lernt das interne System sukzessive, welche Businessobjekte wie oft ermittelt wurden und welche Businessobjekte vom Nutzer wie oft ausgewählt wurden. Die dem ausgewählten Businessobjekt zugehörige Datentabelle wird auch als erste Datentabelle bezeichnet (oben in Fig. 1 auch als Basistabelle bezeichnet).If the internal system recognizes several business objects as being suitable for generating a process log, one of the business objects can be selected by a user. The internal computer system can store information about the selected business object so that the internal computer system becomes one can access this information later. If the method according to the invention is carried out several times, the internal system gradually learns which business objects were determined how often and which business objects were selected by the user and how often. The data table belonging to the selected business object is also referred to as the first data table (above in Fig. 1 also referred to as the base table).

In diesem Beispiel wird das Businessobjekt Bestellungen (Datentabelle T1) ausgewählt.In this example, the business object Orders (data table T1) is selected.

In einem weiteren Schritt S4 ermittelt das interne Computersystem ausgehend von dem ausgewählten Businessobjekt (Bestellungen) bzw. ausgehend von der ersten Datentabelle (T1) sodann weitere Datentabellen (auch als zweite Datentabellen bezeichnet), die für das Erzeugen von Prozessprotokollen geeignet sein können. Für die erste Datentabelle T1 wären das die Datentabellen T2 und T3, die einerseits in direkter Beziehung zu der ersten Datentabelle T1 stehen und andererseits Änderungsinformationen bzw. Aktionen speichern.In a further step S4, the internal computer system then uses the selected business object (orders) or the first data table (T1) to determine further data tables (also referred to as second data tables) that can be suitable for generating process protocols. For the first data table T1, these would be the data tables T2 and T3, which on the one hand are directly related to the first data table T1 and on the other hand store change information or actions.

Basierend auf der ersten Datentabelle T1 und den zweiten Datentabellen T2, T3 und den Beziehungen zwischen diesen Datentabellen ermittelt das interne Computersystem in dem nachfolgenden Schritt S5 Aktivitäten, für die Prozessprotokolle erzeugt werden können.Based on the first data table T1 and the second data tables T2, T3 and the relationships between these data tables, the internal computer system in the subsequent step S5 determines activities for which process logs can be generated.

Für die Datentabellen T1, T2 und T3 ermittelt das interne Computersystem in diesem Beispiel folgende Aktivitäten: Create Order basierend auf der Tabelle T1 und dem Attribut "Creation Date" der Tabelle T1 Change Price basierend auf der Tabelle T2 und dem Attribut "Date" der Tabelle T2 sowie dem Attribut "Field" der Tabelle T2, wobei Attributswerte des Attributes "Field" gefiltert werden (Field = Price) Change Amount basierend auf der Tabelle T2 und dem Attribut "Date" der Tabelle T2 sowie dem Attribut "Field" der Tabelle T2, wobei Attributswerte des Attributes "Field" gefiltert werden (Field = Amount) Change Order basierend auf der Tabelle T2 und dem Attribut "Date" der Tabelle T2 Call Vendor basierend auf der Tabelle T3 und dem Attribut "Date" der Tabelle T3 In this example, the internal computer system determines the following activities for the data tables T1, T2 and T3: Create Order based on table T1 and the "Creation Date" attribute of table T1 Change price based on table T2 and the attribute "Date" of table T2 as well as the attribute "Field" of table T2, whereby attribute values of the attribute "Field" are filtered (Field = Price) Change amount based on table T2 and the attribute "Date" of table T2 as well as the attribute "Field" of table T2, whereby attribute values of the attribute "Field" are filtered (Field = Amount) Change order based on table T2 and the attribute "Date" of table T2 Call vendor based on table T3 and the attribute "Date" of table T3

Die Bezeichnungen der Aktivitäten kann das interne Computersystem automatisch erzeugen, beispielsweise aus dem Tabellennamen und dem jeweiligen Datumsattribut (z.B. "Create Order" aus "Order Information" und "Creation Date").The internal computer system can automatically generate the names of the activities, for example from the table name and the respective date attribute (e.g. "Create Order" from "Order Information" and "Creation Date").

Bei den vorstehend ermittelten Aktivitäten "Change Price" und "Change Amount" erzeugt das interne Computersystem basierend auf dem Attribut "Field" zudem einen Filter, um bestimmte Aktivitäten in der Tabelle T2 zu filtern. Hierbei kann das Computersystem annehmen, dass aufgrund des Tabellennamens "Order History" und der in dieser Tabelle vorkommenden Spalte "Field" die Tabelle T2 Änderungen zu verschiedenen Feldern (z.B. Price und Amount) der Tabelle T1 (T1 und T2 sind ja über die Spalten Order Number miteinander verknüpft) speichert.In the “change price” and “change amount” activities determined above, the internal computer system also generates a filter based on the “field” attribute in order to filter certain activities in the table T2. Here, the computer system can assume that due to the table name "Order History" and the column "Field" in this table, table T2 changes to various fields (eg price and amount) of table T1 (T1 and T2 are above the order columns) Number linked) saves.

Basierend auf diesen Aktivitäten können nachfolgend mehrere Prozessprotokolle erzeugt werden, etwa ein Prozessprotokoll für Bestellungen oder ein Prozessprotokoll für Änderungen von Bestellungen.Based on these activities, several process logs can subsequently be generated, such as a process log for orders or a process log for changes to orders.

Diese Aktivitäten können aber auch kombiniert werden, um beispielsweise Prozessprotokolle für übergeordnete Prozesse zu erzeugen. So ist es beispielsweise möglich, ein Prozessprotokoll zu erzeugen, mit dem Änderungen von Bestellungen aufgrund von Kontaktaufnahmen mit dem Verkäufer analysiert werden können. Hierfür können die Aktivitäten Create Order, Change Order und Call Vendor miteinander kombiniert werden. Diese "übergeordnete" Aktivität (=übergeordneter Prozess, der mehrere Aktivitäten umfasst) basiert demnach auf den Tabellen T1, T2 und T3, und auf den Spalten "Creation Date" der Tabelle T1, "Date" der Tabelle T2 und "Date" der Tabelle T3. Die Beziehungen zwischen diesen drei Tabellen wurden bereits ermittelt und stehen für das nachfolgende Erzeugen des Prozessprotokolls zur Verfügung.These activities can also be combined, for example, to generate process logs for higher-level processes. For example, it is It is possible to generate a process log that can be used to analyze changes to orders based on contacting the seller. For this, the activities Create Order, Change Order and Call Vendor can be combined. This "superordinate" activity (= superordinate process, which comprises several activities) is therefore based on the tables T1, T2 and T3, and on the columns "Creation Date" in table T1, "Date" in table T2 and "Date" in the table T3. The relationships between these three tables have already been determined and are available for the subsequent generation of the process log.

Ein Nutzer kann nunmehr eine oder mehrere Aktivitäten auswählen, zu denen ein oder mehrere Prozessprotokolle erzeugt werden sollen. Wählt der Nutzer mehrere Aktivitäten aus, so kann das interne Computersystem auf Anweisung des Nutzers für jede Aktivität ein Prozessprotokoll erzeugen oder für alle ausgewählten Aktivtäten ein gemeinsames Prozessprotokoll.A user can now select one or more activities for which one or more process logs are to be generated. If the user selects several activities, the internal computer system can generate a process log for each activity on the user's instruction or a common process log for all selected activities.

Alternativ kann das Computersystem auch ohne Nutzerinteraktion für alle ermittelten Aktivitäten jeweils automatisch ein Prozessprotokoll erzeugen.Alternatively, the computer system can also automatically generate a process log for all activities determined without user interaction.

In dem nachfolgenden Schritt S6 erzeugt das interne Computersystem für jede ausgewählte Aktivität (oder alternativ für alle Aktivitäten oder für Kombinationen von Aktivitäten) eine ausführbare Transformation, mit der Daten aus den externen Computersystemen EC1 bis EC3 in ein Prozessprotokoll transformiert werden können.In the subsequent step S6, the internal computer system generates an executable transformation for each selected activity (or alternatively for all activities or for combinations of activities), with which data from the external computer systems EC1 to EC3 can be transformed into a process protocol.

Die Transformation, wenn sie ausgeführt wird, extrahiert zumindest aus den notwendigen Attributen der für das jeweilige Prozessprotokoll relevanten Tabellen und unter Berücksichtigung der relevanten Beziehungen zwischen den für das jeweilige Prozessprotokoll relevanten Tabellen Daten und speichert die extrahierten Daten als Prozessprotokoll. Das Extrahieren der Daten erfolgt unter Verwendung der gegebenenfalls notwendigen Filterkriterien, die durch die jeweiligen Aktivitäten vorgegeben sein können.The transformation, when it is carried out, extracts data at least from the necessary attributes of the tables relevant to the respective process protocol and taking into account the relevant relationships between the tables relevant to the respective process protocol and stores the extracted data as a process protocol. The data is extracted using the filter criteria that may be necessary, which can be specified by the respective activities.

Die so erzeugte Transformation wird dann gespeichert und in dem Schritt S7 ausgeführt.The transformation generated in this way is then stored and carried out in step S7.

Das durch die Ausführung der Transformation erzeugte Prozessprotokoll wird gespeichert und zur Auswertung einem Process Mining System zur Verfügung gestellt.The process log generated by executing the transformation is saved and made available to a process mining system for evaluation.

Die Transformation kann mehrfach ausgeführt werden, etwa zyklisch, wodurch das Prozessprotokoll um neue in den externen Systemen ausgeführte Prozessschritte bzw. um neu ausgeführte Prozesse angereichert werden kann.The transformation can be carried out several times, for example cyclically, as a result of which the process log can be enriched with new process steps carried out in the external systems or with newly executed processes.

Jeder Datensatz eines Prozessprotokolls repräsentiert hierbei einen Prozessschritt (Aktivität / Ereignis) eines in den externen Computersystemen ausgeführten Prozesses, wobei in dem Prozessprotokoll auch Prozessschritte mehrerer Prozesse gespeichert werden können.Each data record of a process log represents a process step (activity / event) of a process executed in the external computer systems, whereby process steps of several processes can also be stored in the process log.

Die notwendigen Attribute für das Erzeugen des Prozessprotokolls sind in jedem Fall

  • eine eindeutige Kennung des Prozesses des jeweiligen Prozessschrittes,
  • eine Kennung des jeweiligen Prozessschrittes, und
  • eine Reihenfolge der Prozessschritte innerhalb eines Prozesses.
The attributes required for generating the process log are in any case
  • a clear identification of the process of the respective process step,
  • an identifier of the respective process step, and
  • an order of process steps within a process.

Soll für die oben genannte Aktivität Change Order ein Prozessprotokoll erzeugt werden, so wären für jeden Datensatz des Prozessprotokolls die hierfür notwendigen Attributswerte

  • Order Number (= Kennung des Prozesses),
  • "Name" (= Kennung des Prozessschrittes - wird vom System automatisch erzeugt), und
  • Date (= Reihenfolge).
If a process log is to be generated for the change order activity mentioned above, the attribute values required for this would be for each data record of the process log
  • Order Number (= process ID),
  • "Name" (= identification of the process step - is generated automatically by the system), and
  • Date (= order).

Basierend auf den oben angegebenen Tabellen ergibt sich für die Aktivität Change Order folgendes Prozessprotokoll: Kennung des Prozesses Kennung des Prozessschrittes Reihenfolge 1 Change Price 01.01.2018 1 Change Amount 02.01.2018 1 Change Amount 03.01.2018 1 Change Price 04.01.2018 1 Change Price 05.01.2018 Based on the tables given above, the following process log results for the Change Order activity: Process ID Process step identifier sequence 1 Change price 01/01/2018 1 Change amount 02/01/2018 1 Change amount 03/01/2018 1 Change price 04/01/2018 1 Change price 05/01/2018

Die Kennung des jeweiligen Prozessschrittes kann das System aus den Werten der Spalte "Field" erzeugen.The system can generate the identifier of the respective process step from the values in the "Field" column.

Claims (15)

Computer-implementiertes Verfahren zum Erzeugen eines Prozessprotokolls in einem lokalen Computersystem, das einen Prozessor und eine Speichereinrichtung aufweist, wobei das Prozessprotokoll aus Rohdaten erzeugt wird, die teilweise in einem ersten externen Computersystem und teilweise in einem zweiten externen Computersystem gespeichert sind, wobei die Rohdaten in den externen Computersystemen in einer Anzahl von Datentabellen gespeichert werden, wobei die Rohdaten Daten umfassen, die bei der Ausführung von Prozessen in dem ersten externen Computersystem und in dem zweiten externen Computersystem erzeugt werden, und wobei das Verfahren umfasst: (a) importieren der Datentabellen aus dem ersten externen Computersystem und aus dem zweiten externen Computersystem in das lokale Computersystem und Speichern der importierten Datentabellen in der Speichereinrichtung des lokalen Computersystems, (b) in dem lokalen Computersystem, rekonstruieren der Beziehungen zwischen den importierten Datentabellen, (c) in dem lokalen Computersystem, ermitteln und auswählen einer ersten Datentabelle aus der Anzahl von importierten Datentabellen, die Objekte enthält, zu denen das Prozessprotokoll erzeugt werden soll, (d) in dem lokalen Computersystem, ermitteln und auswählen einer Anzahl von zweiten Datentabellen aus der Anzahl von importierten Datentabellen, die für das Erzeugen des Prozessprotokolls benötigt werden, basierend auf der ausgewählten ersten Datentabelle und basierend auf den Beziehungen zwischen den importierten Datentabellen, (e) in dem lokalen Computersystem, erzeugen einer ausführbaren Transformation, die angepasst ist, basierend - auf der ausgewählten ersten Datentabelle, - auf den ausgewählten zweiten Datentabellen und - auf den Beziehungen zwischen der ausgewählten ersten Datentabelle und den ausgewählten zweiten Datentabellen Daten aus der ersten Datentabelle und aus den zweiten Datentabellen zu extrahieren und die extrahierten Daten als Prozessprotokoll zu speichern, (f) in dem lokalen Computersystem, ausführen der Transformation und Speichern der extrahierten Daten als Prozessprotokoll und Bereitstellen des erzeugten Prozessprotokolls einem Process Mining System zum Analysieren und Rekonstruieren der in dem ersten externen Computersystem und in dem zweiten externen Computersystem ausgeführten Prozesse. Computer-implemented method for generating a process log in a local computer system, which has a processor and a storage device, the process log being generated from raw data, which are partly stored in a first external computer system and partly in a second external computer system, the raw data in the external computer systems are stored in a number of data tables, the raw data including data generated when processes are executed in the first external computer system and in the second external computer system, and the method comprises: (a) importing the data tables from the first external computer system and from the second external computer system into the local computer system and storing the imported data tables in the storage device of the local computer system, (b) in the local computer system, reconstruct the relationships between the imported data tables, (c) in the local computer system, determine and select a first data table from the number of imported data tables which contains objects for which the process log is to be generated, (d) in the local computer system, determine and select a number of second data tables from the number of imported data tables that are required for generating the process log, based on the selected first data table and based on the relationships between the imported data tables, (e) in the local computer system, generate an executable transform that is customized based - on the selected first data table, - on the selected second data tables and - on the relationships between the selected first data table and the selected second data tables Extract data from the first data table and from the second data tables and save the extracted data as a process log, (f) in the local computer system, performing the transformation and storing the extracted data as a process log and providing the generated process log to a process mining system for analyzing and reconstructing the processes carried out in the first external computer system and in the second external computer system. Verfahren nach Anspruch 1, wobei zumindest eine der ausgewählten Datentabellen aus dem ersten externen Computersystem importiert wird, und zumindest eine der ausgewählten Datentabellen aus dem zweiten externen Computersystem importiert wird.The method of claim 1, wherein at least one of the selected data tables is imported from the first external computer system, and at least one of the selected data tables is imported from the second external computer system. Verfahren nach Anspruch 1, wobei beim Ausführen der Transformation in dem Schritt (f) die Daten aus den in den externen Computersystemen gespeicherten Datentabellen extrahiert werden.The method of claim 1, wherein when performing the transformation in step (f), the data is extracted from the data tables stored in the external computer systems. Verfahren nach Anspruch 1, wobei beim Rekonstruieren der Beziehungen zwischen den importierten Datentabellen in dem Schritt (b) ermittelt wird, über welche Attribute die Datentabellen in Beziehung zueinander stehen.The method according to claim 1, wherein when the relationships between the imported data tables are reconstructed in step (b), it is determined via which attributes the data tables are related to one another. Verfahren nach dem vorhergehenden Anspruch, wobei zwei Datentabellen dann miteinander in Beziehung stehen, wenn ein Attribut der einen Datentabelle identisch oder ähnlich zu einem Attribut der anderen Datentabelle ist.Method according to the preceding claim, wherein two data tables are related to one another if an attribute of one data table is identical or similar to an attribute of the other data table. Verfahren nach Anspruch 1, wobei die zwischen jeweils zwei importierten Datentabellen rekonstruierten Beziehungen gespeichert werden, wobei die Namen der beiden Datentabellen, die jeweiligen Attribute und eine Zuordnung der Attribute der einen Datentabelle zu den Attributen der anderen Datentabelle gespeichert werden.The method of claim 1, wherein the relationships reconstructed between every two imported data tables are stored, the names of the two data tables, the respective attributes and an assignment of the attributes of one data table to the attributes of the other data table are stored. Verfahren nach Anspruch 1, wobei - zu den aus dem ersten externen Computersystem importierten Datentabellen ein dazugehöriges erstes Datenmodell aus dem ersten externen Computersystem in das lokale Computersystem importiert wird, wobei die Beziehungen zwischen den aus dem ersten externen Computersystem importierten Datentabellen anhand des ersten Datenmodells rekonstruiert werden, - zu den aus dem zweiten externen Computersystem importierten Datentabellen ein dazugehöriges zweites Datenmodell aus dem zweiten externen Computersystem in das lokale Computersystem importiert wird, wobei die Beziehungen zwischen den aus dem zweiten externen Computersystem importierten Datentabellen anhand des zweiten Datenmodells rekonstruiert werden, sodass nur die Beziehungen zwischen den Datentabellen aus dem ersten externen Computersystem und den Datentabellen aus dem zweiten externen Computersystem ohne Verwendung eines Datenmodells rekonstruiert werden müssen.The method of claim 1, wherein an associated first data model is imported from the first external computer system into the local computer system for the data tables imported from the first external computer system, the relationships between the data tables imported from the first external computer system being reconstructed on the basis of the first data model, an associated second data model is imported from the second external computer system into the local computer system for the data tables imported from the second external computer system, the relationships between the data tables imported from the second external computer system being reconstructed using the second data model, so that only the relationships between the data tables from the first external computer system and the data tables from the second external computer system need to be reconstructed without using a data model. Verfahren nach Anspruch 1, wobei beim Ermitteln und Auswählen einer ersten Datentabelle in dem Schritt (c) ermittelt wird, welche Datentabelle eine oder mehrere Bedingungen erfüllt, wobei die Bedingungen ausgewählt sind aus der Gruppe, umfassend - die Datentabelle enthält im Vergleich zu den anderen Datentabellen wenige Datensätze, - die Datentabelle enthält ein Attribut, in dem Zeitstempel gespeichert sind, - die Datentabelle wird von wenigen anderen Datentabellen referenziert, - und Kombinationen hiervon. The method of claim 1, wherein when determining and selecting a first data table in step (c), it is determined which data table meets one or more conditions, the conditions being selected from the group comprising - the data table contains few data records compared to the other data tables, the data table contains an attribute in which time stamps are stored, the data table is referenced by a few other data tables, - and combinations of these. Verfahren nach dem vorhergehenden Anspruch, wobei Informationen zu der ausgewählten ersten Datentabelle gespeichert werden.Method according to the preceding claim, wherein information on the selected first data table is stored. Verfahren nach Anspruch 1, wobei beim Ermitteln und Auswählen einer Anzahl von zweiten Datentabellen in dem Schritt (d) jene Datentabellen ausgewählt werden, die eine oder mehrere Bedingungen erfüllen, wobei die Bedingungen ausgewählt sind aus der Gruppe, umfassend - die Datentabellen enthalten im Vergleich zu der ersten Datentabelle viele Datensätze, - die Datentabelle werden direkt oder indirekt von der ersten Datentabelle referenziert - die Datentabellen enthalten jeweils ein Attribut, in dem Zeitstempel gespeichert sind, - und Kombinationen hiervon. The method of claim 1, wherein when determining and selecting a number of second data tables in step (d), those data tables are selected that meet one or more conditions, the conditions being selected from the group comprising the data tables contain many data records compared to the first data table, - The data table is referenced directly or indirectly from the first data table the data tables each contain an attribute in which time stamps are stored, - and combinations of these. Verfahren nach dem vorhergehenden Anspruch, wobei Informationen zu den ausgewählten zweiten Datentabellen und zu den Beziehungen zwischen den ausgewählten zweiten Datentabellen und der ersten Datentabelle gespeichert werden.Method according to the preceding claim, wherein information on the selected second data tables and on the relationships between the selected second data tables and the first data table is stored. Verfahren nach Anspruch 1, wobei beim Erzeugen der ausführbaren Transformation in dem Schritt (e) ermittelt wird, welche Attribute der ausgewählten ersten Datentabelle und der ausgewählten zweiten Datentabellen beim Extrahieren der Daten berücksichtigt werden.The method of claim 1, wherein when generating the executable transformation in step (e), it is determined which attributes of the selected first data table and the selected second data tables are taken into account when extracting the data. Verfahren nach dem vorhergehenden Anspruch, wobei beim Ausführen der Transformation in dem Schritt (f) Datensätze aus der ersten Datentabelle und aus den zweiten Datentabellen ausgelesen werden, wobei die ausgelesenen Datensätze die Attributswerte der für die jeweilige Datentabelle ermittelten Attribute umfasst, wobei die ausgelesenen Datensätze als Prozessprotokoll gespeichert werden, wobei jeder in dem Prozessprotokoll gespeicherte Datensatz einen Prozessschritt (Event) eines in dem ersten externen Computersystem und in dem zweiten externen Computersystem ausgeführten Prozesses repräsentiert.Method according to the preceding claim, wherein when the transformation is carried out in step (f), data records are read from the first data table and from the second data tables, the data records read out being the attribute values of the attributes determined for the respective data table comprises, the data records read being stored as a process log, each data record stored in the process log representing a process step (event) of a process carried out in the first external computer system and in the second external computer system. Verfahren nach dem vorhergehenden Anspruch, wobei die ausgelesenen Datensätze gemäß einer vorbestimmten Datenstruktur in dem Prozessprotokoll gespeichert werden, wobei die vorbestimmte Datenstruktur zumindest umfasst: - ein erstes Attribut, in dem eine eindeutige Kennung des Prozesses des jeweiligen Prozessschrittes gespeichert ist; - ein zweites Attribut, in dem eine Kennung des jeweiligen Prozessschrittes gespeichert ist; und - ein drittes Attribut, in dem eine Reihenfolge der Prozessschritte innerhalb eines Prozesses gespeichert ist. Method according to the preceding claim, wherein the read data records are stored in the process log according to a predetermined data structure, the predetermined data structure at least comprising: a first attribute in which a unique identifier of the process of the respective process step is stored; a second attribute in which an identifier of the respective process step is stored; and - a third attribute in which an order of the process steps within a process is stored. Verfahren nach dem vorhergehenden Anspruch, wobei die Attributswerte der Attribute des Prozessprotokolls aus - den Attributswerten der ausgelesenen Datensätze und/oder - aus den Tabellennamen und/oder Spaltennamen der ausgewählten ersten Datentabelle und/oder der ausgewählten zweiten Datentabellen ermittelt werden.Method according to the preceding claim, wherein the attribute values of the attributes of the process log - The attribute values of the data records read and / or - From the table names and / or column names of the selected first data table and / or the selected second data tables be determined.
EP20153403.9A 2019-01-24 2020-01-23 Method for producing process protocols Pending EP3686740A3 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/256,380 US11256708B2 (en) 2019-01-24 2019-01-24 Method of creating process protocols

Publications (2)

Publication Number Publication Date
EP3686740A2 true EP3686740A2 (en) 2020-07-29
EP3686740A3 EP3686740A3 (en) 2020-10-28

Family

ID=69190700

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20153403.9A Pending EP3686740A3 (en) 2019-01-24 2020-01-23 Method for producing process protocols

Country Status (2)

Country Link
US (1) US11256708B2 (en)
EP (1) EP3686740A3 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005041087A2 (en) * 2003-10-28 2005-05-06 Ids Scheer Aktiengesellschaft Systems and methods for acquiring time-dependent data for business process analysis
US8676859B2 (en) * 2010-01-21 2014-03-18 Hewlett-Packard Development Company, L.P. Method and system for analyzing data stored in a database
US10162861B2 (en) 2015-09-04 2018-12-25 Celonis Se Method for the analysis of processes
US10796257B2 (en) * 2016-01-26 2020-10-06 Celonis Se Method for providing business process analyses

Also Published As

Publication number Publication date
US20200242114A1 (en) 2020-07-30
EP3686740A3 (en) 2020-10-28
US11256708B2 (en) 2022-02-22

Similar Documents

Publication Publication Date Title
DE3855706T2 (en) Automated invoice of materials
EP1307816A1 (en) System for determining error causes
WO2000011581A1 (en) Method for advanced quantity-based cost allocation using different information sources
DE19535084A1 (en) Dynamic optimisation of business processes managed by computer system
EP3139289A1 (en) Method for analysing processes
WO2019091901A1 (en) Method for linking a first data block to a second data block, method for checking the integrity of a blockchain structure, device and computer program product
Jonen et al. Balanced IT Decision Card—An Instrument for Investment Controlling of IT Projects
EP1317728A1 (en) Method and device for carrying out an electronic auction in a communications network
DE102020211679A1 (en) COMPUTER-IMPLEMENTED SYSTEM AND METHOD WITH A DIGITAL TWIN AND A GRAPH BASED STRUCTURE
EP1134636A1 (en) Editor for process planning
DE10115046A1 (en) Method and device for generating an image of a network-like manufacturing process
EP3139274B1 (en) Method for determining a net lead time between process stages of a process instance
EP3139273B1 (en) Method for determining parallel process paths in process data
EP3686740A2 (en) Method for producing process protocols
DE19538448A1 (en) Database management system and data transmission process
EP3139272A1 (en) Method for efficient analysis of process data
DE19914819B4 (en) Method for supporting development processes
EP1166215A2 (en) Method for the automatic retrieval of engineering data of systems
WO2005022422A2 (en) Measuring method and pattern recognition machine for identifying a vector characteristic of business management of a subject of knowledge and method and machine for automatically characterizing a subject of knowledge from the point of view of business management
DE19539477A1 (en) Process for automated, optimal redundancy design of measurements for control technology in power plants
EP1269358A1 (en) Method and system for recording and saving data from a production plant
EP3696757A1 (en) Method and system for automatic evaluation of fire system installation companies
EP1376383A2 (en) Method for processing inputs and outputs data for statistical analysis and method for purging redundancies
EP3877926A1 (en) Device and method for converting data from a digital customer interface of a computer network system
DE102023201929A1 (en) Method and device for providing configuration suggestions for a configuration of a modular production system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 16/2455 20190101ALI20200923BHEP

Ipc: G06Q 10/06 20120101ALI20200923BHEP

Ipc: G06F 16/25 20190101ALI20200923BHEP

Ipc: G06F 9/50 20060101AFI20200923BHEP

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210428

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20220712