Current-new comparison test support system

The comparison test support system analyzes dynamic performance information to identify updated tables, addressing log-less systems and ensuring effective migration tests.

JP2025112199APending Publication Date: 2025-07-31HITACHI LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024006358
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-18
Publication Date
2025-07-31

AI Technical Summary

Technical Problem

Current systems without log output mechanisms face challenges in performing current-new comparison tests, necessitating a new method to identify updated tables.

Method used

A comparison test support system that communicates with current and new databases to analyze dynamic performance information, using SQL statements and session IDs to identify updated tables.

Benefits of technology

Enables efficient identification of updated tables without log output, minimizing data comparison and supporting seamless migration tests.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025112199000001_ABST
    Figure 2025112199000001_ABST
Patent Text Reader

Abstract

To easily conduct a current-new comparison test even if a log is not output from a current-new comparison test support system.SOLUTION: A current-new comparison test support unit checks if information on a key touch test input by a user matches between a current system comprising a current database storing current data and a new system comprising a new database storing new data. The current database and new database are to store dynamic performance information. A current-new comparison test support system comprises a data analysis unit that specifies, from the dynamic performance information, a table updated by the SQL sentence that is a language for operating or controlling software for managing the current database and the new database during the execution of the key touch test. The current-new comparison test support unit compares an update table specified by the data analysis unit between the current system and the new system.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a current-new comparison test support system.

Background Art

[0002] When migrating an application program from an existing information system (existing system) to a new information system (new system), it is necessary to confirm whether the migration from the existing system to the new system is correctly performed. For this reason, tests are run on both the existing system and the new system, and the resulting data is compared to identify discrepancies. This test is referred to as a current-new comparison test.

[0003] During the current-new comparison test, due to issues such as a large amount of data to be tested and a slow network line, rather than checking for discrepancies in all data, it is desirable to identify tables that have been updated operationally in the existing system, transfer them to a terminal for current-new comparison, and investigate the discrepant locations.

[0004] Patent Document 1 describes a technique in which parts where the application has been modified are excluded from the analysis target using the input / output logs of the old and new systems, and the current input / output log recording the input / output data of the current information system is compared with the new input / output log recording the input / output data of the new information system to identify discrepant locations. According to the technique described in Patent Document 1, it becomes easier to analyze the reasons for differences between the old and new systems.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0006] By the way, in the current system, there are many systems that do not have a mechanism for outputting the current log. In the case of a system that does not output the current log, it is difficult to perform a current-new comparison test based on the analysis of the log as described in Patent Document 1.

[0007] In the case of a system that does not output the current log, a new mechanism is required to identify which part has been updated. Also, when identifying the update table, it is conceivable to identify it from the detailed design document, the CRUD diagram, etc. The CRUD diagram is a diagram showing the operation types when operating data, namely, Create (creation), Read (reference), Update (update), and Delete (deletion). However, in order to identify it from the detailed design document, the CRUD diagram, etc., it is not realistic because it requires an investigation of the program implemented in the system. Therefore, the development of a method for identifying the update table in the absence of input / output logs has been desired.

[0008] The present invention has been made in view of the above, and an object thereof is to provide a comparison test support system that can easily perform a current-new comparison test even in a system where no log is output.

Means for Solving the Problems

[0009] In order to solve the above problems, for example, the configuration described in the claims is adopted. This application includes multiple means for solving the above problems. For example, as a current-new comparison test support system, it is communicably connected to a current system having a current database storing current data and a new system having a new database storing new data, and is configured to confirm the match between the current and the new. The current database and the new database store dynamic performance information. The current-new comparison test support unit is configured to confirm the current-new match of the key input test information input by the user for the current system and the new system. The data analysis unit is configured to identify a table updated with an SQL statement, which is a language for operating or controlling software that manages the current database and the new database by executing the key input test, from the dynamic performance information. The current-new comparison test support unit compares the updated table identified by the data analysis unit between the current system and the new system.

Advantages of the Invention

[0010] According to the present invention, an updated table can be identified by analyzing the dynamic performance status of the current information system, and the amount of data to be compared can be minimized. As a result, it becomes possible to support the comparison by the current-new comparison test even for a system that does not have a mechanism for outputting the current log. Problems, configurations, and effects other than those described above will be clarified by the description of the following embodiments.

Brief Description of the Drawings

[0011]

Figure 1

Figure 2

Embodiments for Carrying Out the Invention

[0012] Hereinafter, an embodiment example of the current-new comparison test support system of the present invention (hereinafter referred to as "this example") will be described with reference to the accompanying drawings.

[0013] [Configuration of the New and Existing Comparison Test Support System] FIG. 1 is a diagram showing the system configuration of the new and existing comparison test support system of this example. As shown in FIG. 1, the new and existing comparison test support system 100 is a system that supports the execution of the new and existing comparison test required when migrating from the existing system 11 implemented on the existing server 10 to the new system 21 implemented on the new server 20, which is a new system. The existing system 11 and the new system 21 are application programs implemented on the respective servers 10 and 20.

[0014] Regarding the configuration of the existing server 10, the existing system 11 implemented on the existing server 10 includes an existing database 12 stored in a storage device (not shown). The existing database 12 stores programs, data obtained by executing those programs, and the like. As one of the data stored in the existing database 12, there is existing statistical information 13 which is metadata.

[0015] The existing statistical information 13 which is metadata is referred to as Oracle metadata or the like, and has at least an SQL statement 13a and a session ID. The statistical information referred to as Oracle metadata or the like is data in which internal information (dynamic performance information) such as session, memory, and lock acquisition status is continuously updated while the database is open. The SQL statement 13a is a language for operating or controlling the programs (software) stored in the existing database 12. The session ID 13b is the ID of the session when the operation or control is performed by the SQL statement 13a, and has information on the start time and end time of the session. For example, in the case of Oracle metadata, the following data can be acquired as a dynamic performance (V$) view. V$SQL: Shows the content of the executed SQL →LAST_ACTIVE_TIME: Execution time of the SQL SQL_ID: ID of the executed SQL SQLFULLTXT: Full text of the executed SQL In addition, when examining session information from Oracle metadata, it can be examined as follows. V$SESSION: → SQL_ID: ID of the executed SQL SID: Session ID

[0016] The configuration of the new server 20 is also the same as that of the current server 10. The new database 22 stored in a storage device (not shown) stores programs and data obtained by executing those programs. The new database 22 also has new statistical information 23 as metadata, and has at least an SQL statement 23a and a session ID 23b. The point that the session ID 23b has information on the start time and end time of the session when operations or controls are performed on the SQL statement 23a is the same as that of the current server 10.

[0017] In addition, the statistical information 13 and 23, which are metadata, can be regarded as dynamic performance information of each system by having an SQL statement and a session ID. Also, in the case of this example, neither the current system 11 nor the new system 21 has a mechanism for outputting the current log during process execution. However, the fact that the system to be tested by the current-new comparison test support system of this example is a system that does not output the current log is just an example, and the system of this example may be applied to a system that outputs the current log. Also, in FIG. 1, the current server 10 and the new server 20 are shown as separate entities. However, for example, the current database 12 and the new database 22 may exist within one server.

[0018] The current-new comparison test support system 100 is composed of an information processing apparatus (computer), and is communicably connected to the current server 10 and the new server 20. Note that a program (current-new comparison test support tool) that functions as the current-new comparison test support system 100 may be installed in a computer that operates as the current server 10 or the new server 20, so that one or both of these servers 10, 20 are configured as the current-new comparison test support system 100.

[0019] The hardware configuration of the computer as the current-new comparison test support system 100 is not shown in the figure, but for example, it includes a CPU (Central Processing Unit), a work memory, a storage, etc. And the computer as the current-new comparison test support system 100 reads a program installed in the storage into the work memory under the control of the CPU, so that each processing unit such as the current-new comparison test support unit 110 described below is configured. In addition, a keyboard for receiving keystrokes from a user who executes the current-new comparison test and a display unit for outputting comparison results are also connected to the computer as the current-new comparison test support system 100.

[0020] Referring to FIG. 1, the configuration of the current-new comparison test support system 100 will be described. The current-new comparison test support system 100 includes a current-new comparison test support unit 110 and a file information holding unit 120. The current-new comparison test support unit 110 includes a screen processing unit 111, a data extraction unit 112, a data analysis unit 113, a result output unit 114, and a result comparison unit 115. The screen processing unit 111 displays the keystroke test information 111a. At this time, the screen processing unit 111 displays the start time and end time of the keystroke. The data extraction unit 112 performs a data extraction process of obtaining statistical information based on the start time and end time of the keystroke.

[0021] The data analysis unit 113 acquires information necessary for current-new comparison from statistical information and performs data analysis. This data analysis unit 113 includes a session ID determination unit 113a. The result output unit 114 displays the analysis result from the data analysis unit 113. The result comparison unit 115 compares the results of the current system 11 and the new system 21. When the result comparison unit 115 makes a comparison, it refers to the definition file 121 and the processing result file 122 held by the file information holding unit 120.

[0022] [Processing example by the current-new comparison test support system] FIG. 2 is a flowchart showing a processing example at the time of the current-new comparison test by the current-new comparison test support system 100 of this example. First, before starting key input for the test, the user inputs, using the screen processing unit 111, the DB connection information necessary for performing the current-new comparison test process, the storage destination of the comparison target table list 132, and the storage destinations of the current and new processing result files 122 to be compared by the result comparison unit 115.

[0023] Then, by the key input of the user who executes the test, the current-new comparison test support unit 110 of the current-new comparison test support system 100 starts the current-new comparison test for each of the systems 11 and 21 (step S11). At the start of the current-new comparison test, the screen processing unit 111 records the start time. After that, the current-new comparison test support unit 110 ends the current-new comparison test (step S12). At the end of the current-new comparison test, the screen processing unit 111 records the end time.

[0024] Next, based on the start time and the end time obtained in step S11 and step S12, the data extraction unit 112 generates the data extraction SQL 131 (step S13). In step S13, the data extraction unit 112 generates the data extraction SQL 131 that acquires the SQL statements 13a and 23a and the session IDs 13b and 23b from the dynamic performance views of the current statistical information 13 and the new statistical information 23, i.e., V$SQL (in the case of Oracle metadata). The filtering of SQL statements 13a and 23a is performed using the times recorded in steps S11 and S12. Specifically, from the dynamic performance view, information is filtered by the start time and end time of test keying, and only the information of the tables updated during the test keying is acquired. Then, the acquired session ID and the entire SQL statement are obtained as the SQL for data extraction 131. The acquisition result is recorded as the definition file 121.

[0025] After generating the SQL for data extraction 131, the data analysis unit 113 causes the SQL for data extraction 131 to be executed against the current system 11 and the new system 21, and acquires the SQL statements 13a and 23a and the session IDs 13b and 23b of the statistical information 13 and 23. Then, the data analysis unit 113 analyzes the acquired statistical information 13 and 23 (step S14). In step S14, the data analysis unit 113 analyzes the operation information of INSERT (registration), UPDATE (update), and DELETE (deletion) and the target table on which the operation was performed from the SQL statements 13a and 23a. That is, the data analysis unit 113 searches for those that include INSERT / UPDATE / DELETE in the SQL statement, and extracts the SQL statement including the corresponding operation and table name, extracts the operation, and extracts the table name.

[0026] After the analysis in the data analysis unit 113, the result output unit 114 refers to the comparison target table list 132 of the definition file 121 held by the file information holding unit 120 and outputs the analysis result (step S15). In step S15, the result output unit 114 narrows down the tables for which the results are output by referring to the comparison target table list 132, and outputs the updated table, operation information, and session ID to the processing result file 122.

[0027] Then, the result comparison unit 115 refers to and compares the processing result files 133 of the processing result files 122 of the current system 11 and the new system 21, and determines whether the comparison results match (step S16). In step S16, the result comparison unit 115 narrows down the table for outputting results by referring to the comparison target table 132, and outputs the update table, operation information, and session ID to the processing result file 122. When outputting the update table, operation information, and session ID to the processing result file 122, the update table name is extracted from the SQL statements 13a and 23a, and the SQL statements 13a and 23a that contain update operations are targeted for extraction, and the update table name described after the update operation is extracted. In addition, when multiple people key in at the same time, the session ID is used to determine the grouping of tables executed in one transaction. This determination of the session ID is performed by the session ID determination unit 113a.

[0028] In the comparison in step S16, when the processing result files 133 match between the current system 11 and the new system 21, that is, when the number of mismatches is 0 (YES in step S16), the result comparison unit 115 ends the current-new comparison test support as "YES no problem" (the current-new comparison test is normal) (step S17). Also, in the comparison in step S16, when the processing result files 133 do not match between the current system 11 and the new system 21, that is, when there are mismatched data (NO in step S16), the result comparison unit 115 performs problem content confirmation processing (step S18).

[0029] In step S18, the result comparison unit 115 checks the update table or operation information where differences have occurred. That is, when there are mismatched data, the result comparison unit 115 determines that the current system 11 has been revised in the new system at the mismatched location. Then, based on the result of the check, the result comparison unit 115 performs retesting as necessary. Or, the target program is modified until there are no problems in the current-new comparison test.

[0030] As described above, according to the current-new comparison test support system of this example, by analyzing the statistical information (Oracle metadata), which is the dynamic performance information of the current information system, the updated table can be identified, and the amount of data to be compared can be minimized. As a result, even when the current system 11 and the new system 21 do not have a mechanism to output the current log, the comparison by the current-new comparison test can be easily supported.

[0031] Here, the dynamic performance information is metadata including SQL information. The data analysis unit 113 can narrow down the information by the start time and end time of the test keystrokes of the SQL information, and obtain the information of the table updated during the test keystrokes, so that the information of the table updated during the test keystrokes can be efficiently obtained.

[0032] In addition, the current-new comparison test support unit 110 can appropriately perform only the determinations required in the current-new comparison test by receiving and executing the determination only for the updated tables acquired by the data analysis unit 113.

[0033] In addition, in the data analysis unit 113, by extracting the updated table name from the SQL statement and extracting the updated table name described after the update operation for the SQL statements containing the update operation as the extraction targets, it becomes possible to appropriately extract and analyze the updated data.

[0034] Furthermore, the data analysis unit 113 has a session ID determination unit 113a that determines the set of tables executed in one transaction, so that even when operations are performed simultaneously by multiple people, only the data of one user can be extracted and processed.

[0035] [Modification Example] Note that each of the embodiment examples described so far has been described in detail for the purpose of easily understanding the present invention, and is not necessarily limited to those having all the configurations described. Also, part or all of the configurations and processes described in one embodiment example may be combined with those in other embodiment examples.

[0036] Also, in the block diagram of FIG. 1, only the control lines and information lines considered necessary for explanation are shown, and not all the control lines and information lines are necessarily shown on the product. In reality, it may be considered that almost all the components are interconnected. Also, the flow of the process shown in the flowchart of FIG. 2 is also an example, and if the processing results are the same, the order of some processes may be changed, or a plurality of processes may be executed simultaneously.

Explanation of Reference Numerals

[0037] 10... Current server, 11... Current system, 12... Current database, 13... Current statistical information, 13a... SQL statement, 13b... Session ID, 20... New server, 21... New system, 22... New database, 23... New statistical information, 23a... SQL statement, 23b... Session ID, 100... Current-new comparison test support system, 110... Current-new comparison test support unit, 111... Screen processing unit, 111a... Keystroke test information, 112... Data extraction unit, 113... Data analysis unit, 113a... Session ID determination unit, 114... Result output unit, 115... Result comparison unit, 120... File information holding unit, 121... Definition file, 122... Processing result file, 131... SQL for data extraction, 132... List of comparison target tables, 133... Processing result file

Claims

1. A current-new comparison test support system that is communicably connected to a current system having a current database storing current data and a new system having a new database storing new data, and that confirms the match between the current and the new. The current database and the new database store dynamic performance information. A current-new comparison test support unit that confirms the current-new match of the key input test information input by the user for the current system and the new system. A data analysis unit that identifies, from the dynamic performance information, a table updated in an SQL statement, which is a language for operating or controlling software that manages the current database and the new database when the key input test is executed. The current-new comparison test support unit compares the updated table identified by the data analysis unit between the current system and the new system. Current-new comparison test support system.

2. When the current-new comparison test support unit compares between the current system and the new system and they do not match, it determines that the current system is modified by the new system at the location of the mismatch. The current-new comparison test support system according to Claim 1.

3. The dynamic performance information is metadata including the SQL statement. The data analysis unit narrows down information by the start time and end time of the test key input of the SQL statement, and acquires information on the table updated during the test key input. The current-new comparison test support system according to Claim 1.

4. Furthermore, the current-new comparison test support unit receives data only for the updated table acquired by the data analysis unit and executes a determination. The current-new comparison test support system according to Claim 3.

5. Extract the updated table name from the SQL statement, extract those including an update operation in the SQL statement as extraction targets, and extract the updated table name described after the update operation. The current-new comparison test support system according to Claim 4.

6. The data analysis unit has a session ID determination unit that determines a set of tables executed in one transaction. The current-new comparison test support system according to Claim 1.

Citation Information

Patent Citations

  • Current and new matching test support system and support method

    JP2013020299A