WO2019039394A1 - Dispositif de conversion et procédé de conversion - Google Patents

Dispositif de conversion et procédé de conversion Download PDF

Info

Publication number
WO2019039394A1
WO2019039394A1 PCT/JP2018/030483 JP2018030483W WO2019039394A1 WO 2019039394 A1 WO2019039394 A1 WO 2019039394A1 JP 2018030483 W JP2018030483 W JP 2018030483W WO 2019039394 A1 WO2019039394 A1 WO 2019039394A1
Authority
WO
WIPO (PCT)
Prior art keywords
conversion
source
correction
converted
merge
Prior art date
Application number
PCT/JP2018/030483
Other languages
English (en)
Japanese (ja)
Inventor
佳範 城代
芳恵 堀岡
Original Assignee
株式会社日立社会情報サービス
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 株式会社日立社会情報サービス filed Critical 株式会社日立社会情報サービス
Priority to CN201880055029.6A priority Critical patent/CN111052077B/zh
Publication of WO2019039394A1 publication Critical patent/WO2019039394A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/76Adapting program code to run in a different environment; Porting

Definitions

  • the present invention relates to a conversion device and a conversion method.
  • a confirmation test (actual device confirmation) is performed to confirm whether or not the obtained converted source has a defect. Specifically, the same input value is input to the conversion source and the converted source, and if the same output value is obtained between the two, there is no defect, and if different output values are obtained, it is determined as defective. In conversion development, if there is a defect in the converted source, the conversion tool or manual correction that created the cause of the failure is identified, and the identified conversion tool or manual correction is corrected to remove the defective cause.
  • Patent Document 1 "the conversion means for converting mainframe data to open data, the allocation means for allocating a color for each byte of input data, and the color allocated for each byte by the allocation means" And display means for displaying input data, and when the mainframe system data is input as input data, the allocation means assigns a color to each byte of the mainframe system data, and the display means The display means displays the mainframe system data to which a color is assigned for each byte by the assignment means, and when the open system data is inputted as input data, the assignment means is for each of the open system data. Assigning a color, the display means being assigned a color for each byte by the assigning means It discloses an information processing apparatus. "For displaying data of the serial open system.
  • Patent Document 1 it is possible to roughly check whether the conversion from the conversion source corresponding to the data of the mainframe system to the converted source corresponding to the data of the open system is appropriately performed or not, It would be possible to display the offending lines for the after source.
  • Patent Document 1 does not describe or suggest specifying the conversion of data in which the cause of failure is incorporated. Therefore, Patent Document 1 can not reduce the defect handling cost in conversion development.
  • the present invention has an object to reduce the cost for dealing with defects in system migration such as conversion development.
  • the present invention is A conversion device for converting a conversion source into a converted source, A meta-information management unit that manages meta-information related to conversion to each of the conversion intermediate sources, for a set of conversion intermediate sources generated by converting a part of the conversion source to a part of the converted source; And a test unit for identifying a conversion in which the cause of the defect is created by referring to the meta information when there is a defect in the post-conversion source confirmation test. It is characterized by Other inventions will be described later.
  • the conversion device of the present embodiment is a computer including hardware such as an input unit, an output unit, a control unit, and a storage unit.
  • the control unit is configured by a CPU (Central Processing Unit)
  • information processing by a computer including the control unit is realized by program execution processing by the CPU.
  • the storage unit included in the computer stores various programs for realizing the functions of the computer according to an instruction of the CPU. This enables collaboration between software and hardware.
  • the program can be provided by being recorded on a recording medium or via a network.
  • the conversion device 1 of this embodiment includes converters c1 to cn, conversion result repositories r11 to r1 n for each converter, a version control tool 10, a meta information DB (DataBase) 11, and a merge tool m1. And a machine conversion result repository r 2, a manual correction management tool 20, a manual correction execution work space 21, a manual correction result repository r 3, a merge tool m 2, a conversion result repository r 4, and a test tool 30. .
  • the conversion source COBOL source s1 in Fig. 1 is source code that records COBOL code ("COBOL 1", “COBOL 2", ..., “COBON”, “COBOLX”) described in COBOL, and the customer is current Executed to operate the system.
  • the converted Java source s2 in FIG. 1 is source code in which JAVA code (“Java 1”, “Java 2”,..., “Java N”, “Java X”) described in JAVA is recorded, and is a customer Is implemented to operate the new system.
  • the various conversion sources s31 to s3 n, s4, and s5 in FIG. 1 will be described later.
  • the converters c1 to cn mechanically convert a part of COBOL code of the conversion source COBOL source s1 into JAVA code.
  • the character strings as COBOL code to be converted by each of the converters c1 to cn are predetermined, and can be prepared, for example, in units of instruction words (eg, "MOVE" of COBOL code to "set” of JAVA code) Converter to convert).
  • the converters c1 to cn can be prepared in syntactic units, and can be designed at various granularities in language grammar.
  • Each of the converters c1 to cn is designed so as not to redundantly convert the same line of the conversion source COBOL source s1. As shown in FIG. 1, the converter c1 converts “COBOL1” of the conversion source COBOL source s1 into “Java1”, but the converter c2 or the like does not perform the same conversion. Similarly, each of the converters c2 to cn converts each of "COBOL2" to "COBON" of the conversion source COBOL source s1 into “Java2" to "JavaN".
  • "COBOLX" of the conversion source COBOL source s1 is a manually corrected COBOL code, but the details will be described later.
  • Each of the conversion result repositories r11 to r1n by converter executes each of the converters c1 to cn with respect to the conversion source COBOL source s1 so that part of the COBOL code is converted into JAVA code. Store each one.
  • the version management tool 10 acquires and manages information on conversion when each of the converters c1 to cn converts from the conversion source COBOL source s1 to each of the conversion in-progress sources s31 to s3n as meta information.
  • the meta information corresponds to the conversion source COBOL code and the converted JAVA code, the ID (Identifier) of the converter that has executed the conversion, the contents of conversion (for example, “MOVE” ⁇ “set”), conversion This includes, but is not limited to, the ID of the design, the date and time of execution of the conversion, and a comment as a supplementary explanation.
  • the version control tool 10 of this embodiment can be implemented as a distributed version control tool such as Git.
  • the meta information DB 11 stores the meta information acquired by the version control tool 10.
  • the conversion device 1 of the present embodiment may be provided with a GUI (Graphic User Interface) such as Tortoise Git to enable visual tracking of meta information and sources s31 to s3n during conversion.
  • GUI Graphic User Interface
  • the merge tool m1 merges the conversion-in-progress sources s31 to s3 n stored in the converter-by-converter conversion result repositories r11 to r1 n.
  • the merge process can use, for example, three-way merge (well-known and detailed description will be omitted) used in a distributed version control tool.
  • the merge tool m1 performs three-way merging with the conversion source COBOL source s1 as a parent and any two conversion sources s31 to s3n derived from the parent as children, and the conversion points of the two children are reflected to the parent To obtain the result (conversion in progress conversion source).
  • three-way merge fails (collision) if the conversion points of the two children are in the same row, the converters c1 to cn in this embodiment are designed to have only one conversion point. The conversion point of is never the same line.
  • the merge tool m1 first performs three-way merging with the conversion source COBOL source s1 as a parent and the conversion in-progress sources s31 and s32 as first children and second children, and obtains a first result.
  • the merge tool m1 performs three-way merge with the conversion source COBOL source s1 as a parent, the first result as a first child, and the conversion in-progress source s33 as a second child, and the second result as a second obtain.
  • the conversion-in-progress sources s4 (“Java 1”, “Java 2”,..., “Java N”) on which all mechanical conversions by the converters c1 to cn have been executed. , "COBOLX”) can be obtained. Further, the merge tool m1 can merge the sources s31 to s3n in the middle of conversion at once as a merge process to obtain the source s4 in the middle of conversion.
  • the machine conversion result repository r2 stores the conversion-in-progress source s4 in which all the results of the mechanical conversion are merged by the merge tool m1.
  • the manual correction management tool 20 manages manual correction for converting a part of the conversion source COBOL source s1 to a part of the converted Java source s2. Specifically, the manual correction management tool 20 manually converts the COBOL code "COBOLX" of the conversion source COBOL source s1 into the JAVA code "JavaX” of the Java source s2 after conversion. Further, the manual correction management tool 20 outputs, to the version management tool 10, information on conversion of the manual correction as meta information.
  • Hand correction required example 1 Presence of multiple same data item names
  • Hand correction required example 2 Presence of clear dead code (unreachable code)
  • Hand correction required example 3 Presence of multiple same branch conditions
  • [COBOL code] EVALUATE A WHEN 0 ... CONTINUE WHEN 0 ... END EVALUATE.
  • [JAVA code] switch (a) ⁇ case 0: ⁇ ⁇ ; break; case 0: ⁇ ⁇ ; : ⁇ Is created.
  • the above COBOL code does not have a problem with COBOL syntax, but the above JAVA code causes a compile error due to overlapping branch conditions in JAVA.
  • the manual correction implementation workspace 21 is a work area for performing manual correction by the manual correction management tool 20.
  • the manual correction result repository r3 stores the conversion in-progress source s5 in which part of the COBOL code is converted into JAVA code by executing manual correction with the manual correction management tool 20 on the conversion source COBOL source s1.
  • the merge tool m2 merges the conversion in-progress source s4 stored in the machine conversion result repository r2 with the conversion in-progress source s5 stored in the manual correction result repository r3. Specifically, the merge tool m2 performs three-way merging with the conversion source COBOL source s1 as a parent, the conversion in-process source s4 as a first child, and the conversion in-process source s5 as a second child, and the converted Java source s2 Get Also, the merge tool m1 and the merge tool m2 can merge the conversion in-process sources s31 to s3 n and the conversion in-process source s5 collectively as a merge process to obtain a converted Java source s2.
  • conversion result repository r4 The conversion result repository r4 is mechanically converted and manually converted by the merge tool m2, and stores only Java code and stores the converted Java source s2.
  • Test tool 30 performs a confirmation test (actual machine confirmation) of the Java source s2 after conversion.
  • a confirmation test for example, if the same input value is input to the conversion source COBOL source s1 and the converted Java source s2, and the same output value is obtained between both, no defect is determined, and a different output value is determined as defective.
  • the test tool 30 refers to the meta information DB 11 based on the defect location information, and specifies the conversion in which the defect is created.
  • the test tool 30 As a result of the test tool 30 executing the confirmation test, it is determined that there is a defect and it turns out that the JAVA code "Java 2" of the converted Java source s2 is the cause of the defect. Specifically, the conversion code corrects the operation of the line of “Java 2”, which the conversion developer knows in advance, and the JAVA described in the converted Java source s 2 output from the merge tool m 2 Suppose that the difference with the code "Java 2" is found. In this case, the test tool 30 refers to the meta information DB 11 to acquire meta information on conversion from the COBOL code “COBOL 2” to the JAVA code “Java 2”.
  • the test tool 30 analyzes the acquired meta information to find a problem with the converter c2 itself that has executed conversion to the JAVA code "Java 2". There is a problem with the conversion design related to the conversion to the JAVA code "Java 2". , Etc can be identified details of the cause of failure.
  • FIG. 1 is also referred to as appropriate.
  • the conversion device 1 performs format formatting on the conversion source COBOL source s1 (step S1). Specifically, the conversion device 1 performs shaping such as conversion to one line of separation, unification of upper and lower case, and the like by the converters c1 to cn with respect to the COBOL code of the conversion source COBOL source s1.
  • the conversion device 1 converts the conversion source COBOL source s1 into a definition part DB (step S2). Specifically, the conversion device 1 analyzes the COBOL code of the conversion source COBOL source s1, and stores the definition information of the data item in the DB (storage unit not shown in FIG. 1).
  • the conversion device 1 grammatically shapes the conversion source COBOL source s1 (step S3). Specifically, the conversion device 1 shapes the syntax of the conversion source COBOL source s1 into a syntax that assumes input to the converters c1 to cn, such as unifying the sugar coating syntax into the normal notation.
  • the conversion device 1 performs common conversion to the JAVA language on the conversion source COBOL source s1 (step S4). Specifically, the conversion device 1 applies a conversion design that is necessary in common among the converters c1 to cn regardless of the characteristics of the conversion design, such as the JAVA import statement and the description of the main method. According to step S4, the conversion design of each of the converters c1 to cn can not include a common conversion design among the converters c1 to cn, and the conversion design of each of the converters c1 to cn can be simplified. can do.
  • the conversion device 1 performs order-dependent conversion to the JAVA language on the conversion source COBOL source s1 (step S5). Specifically, conversion device 1 depends on the execution results of one conversion design for the execution of one conversion design for conversion designs of conversion source COBOL source s1 to conversion to Java source s2 after conversion. If so, apply the conversion design related to that dependency, and perform conversion with execution order dependency. According to step S5, by executing the conversion having the execution order dependency in advance, the conversion by each of the converters c1 to cn can be made to have no execution order dependency, and the converter c1 to c The conversion design of each cn can be simplified.
  • the conversion device 1 performs parallel conversion to the JAVA language on the conversion source COBOL source s1 (step S6). Specifically, the conversion device 1 applies the conversion design of each of the converters c1 to cn, and the conversion that can not be handled or can not be handled by the conversion by the converters c1 to cn is manually corrected by the manual correction management tool 20 Apply the transformation design of.
  • step S6 corresponds to, for example, individual instruction word conversion (1) to (N) (steps S6-1 to S6-N) corresponding to each of the converters c1 to cn, and manual correction.
  • step S6-X can be divided into manual correction transformations.
  • Individual instruction word conversion (1) to (N) is processing for performing mechanical conversion to JAVA for each type of COBOL instruction word (for example, “MOVE” ⁇ “set”).
  • the individual instruction word conversions (1) to (N) can be performed mechanically and in parallel since the conversion between the converters c1 to cn is designed so as not to affect other conversions. .
  • mechanical conversion may be performed individually in units of syntax.
  • the manual correction conversion (S6-X) is a conversion by the manual correction management tool 20.
  • step S6 the version control tool 10 acquires meta-information on individual command conversions (1) to (N) corresponding to each of the converters c1 to cn and meta-information on manual correction conversion corresponding to manual correction. , Stored in the meta information DB11.
  • the conversion device 1 merges the conversion results of the parallel conversion in step S6 (step S7). Specifically, the conversion device 1 is converted by the merge tools m1 and m2 by the conversion in-progress sources s31 to s3 n (or conversion in-progress source s4) converted by the converters c1 to cn and the manual correction management tool 20 During conversion, merge processing is performed on the source s5, and a converted Java source s2 is generated.
  • the conversion device 1 performs a confirmation test of the converted Java source s2 by the test tool 30 (step S8).
  • the test tool 30 specifies conversion based on the defect location information with reference to the corresponding meta information stored in the meta information DB 11 to create the defect cause of the defect.
  • step S6 the individual instruction word conversion corresponding to the corrected converter only needs to be performed. There is no need to perform instruction word conversion. Therefore, in the merge of step S7, the conversion result of the individual instruction word conversion corresponding to the converter which is not corrected can be diverted, which contributes to the reduction of the number of reconversion steps after handling the defect, which is required for the processing of FIG. The burden can be reduced or the time can be shortened.
  • the version management tool 10 can trace the conversion history by managing the meta information.
  • the identification of the cause of the defect when there is a defect in the converted Java source s2 can be sufficiently achieved by referring to the meta information, and it becomes easy without the need for the examination of a conventional expert. Therefore, it is possible to reduce the defect handling cost in conversion development.
  • catch-up work is essential, it increases the amount of conversion development work and causes delay in system migration, so there is a demand to reduce the number of work steps and terminate it early.
  • conventionally for example, in the case of hand-correcting necessary examples 1 to 3 described above for the conversion source source, when hand-correcting the corresponding line in the first conversion development, the same line It had to be corrected and it was inefficient.
  • conventionally even if the confirmation test is performed on the converted part of the converted source by manual correction before the freezing, almost the same confirmation test needs to be performed again in the catch-up operation, and the test man-hours for the catch-up operation could not be reduced.
  • the conversion device 1 of the present embodiment uses the three-way merge performed by the merge tools m1 and m2 to mechanically perform the hand correction result before freezing, which is irrelevant to the correction of the specification change on the customer side in the catch-up operation.
  • the three-way merge for the hand correction result is performed by the merge tool m2, and the following description is also described as the three-way merge by the merge tool m2, but can be performed similarly by the merge tool m1.
  • a conversion source source sp As shown in FIG. 3, a conversion source source sp, a correction version conversion source source sc1, and a manual correction source sc2 are prepared.
  • the conversion source source sp is source code in which COBOL code (1st line “COBOL1", 2nd line “COBOL2", 3rd line “COBOL3”) described in COBOL is recorded.
  • the conversion source source sp is a conversion development object originally provided by the customer from the conversion developer side.
  • the conversion source source sp corresponds to the conversion source COBOL source s1 in FIG.
  • the modified version conversion source sc1 is a source code in which COBOL code (1st line “COBOL 1", 2nd line “COBOL 2", 3rd line “COBOA”) written in COBOL is recorded.
  • the modified version conversion source sc1 is equal to the conversion source source sp that reflects the correction of the specification change on the customer side (“COBOL 3” (specific line) ⁇ “COBOLA”).
  • the modified version conversion source sc1 is provided by the customer during catch-up operation, that is, after freezing.
  • the manual correction source sc2 is source code obtained by converting a part of the COBOL code of the conversion source source sp into JAVA code (“COBOL 2” ⁇ “Java 2”) by the manual correction management tool 20.
  • the manual correction source sc2 is created in the first conversion development, that is, before freezing.
  • the version control tool 10 manages meta information on the conversion source source sp, the correction version conversion source source sc1, the manual correction source sc2, the conversion source source sp, the correction version conversion source source sc1, and the manual correction source sc2. Content can be managed.
  • the merge tool m2 is a three-way merge with the conversion source sp as the merge parent, the modified conversion source sc1 as the merge child (first child), and the hand correction source sc2 as the merge child (second child) I do.
  • the hand correction diversion source sd shown in FIG. 3 is obtained.
  • the version control tool 10 acquires and manages meta-information on the manual correction diversion source sd.
  • the code of the second line "COBOL2" is converted to "Java2" without being affected by the customer correction to the third line "COBOL3". It can be said that the hand correction result by the hand correction source sc2 can be diverted to the correction version conversion source sc1.
  • conversion of “COBOL 2” ⁇ “Java 2” is manually performed on the correction version conversion source sc 1, but according to the present invention, it is possible to save time for the conversion.
  • the target of manual correction in the catch-up operation is limited to the COBOL code in which the customer-side specification change has been corrected among the COBOL code which has been manually corrected before freezing.
  • the confirmation test before freezing with respect to the converted source including the manual correction result by the manual correction source sc 2 has already been completed, and the manual correction result is used. Therefore, in the catch-up operation, when performing the confirmation test of the converted source (customer correction reflected) after the merge processing using the hand correction diversion source sd, the confirmation item of the confirmation test for the conversion by the hand correction which is diverted is omitted be able to. As a result, it is possible to reduce the number of test steps for catch-up work.
  • the merge tool m2 performs one-side three-way merge that gives priority to the customer-side correction line.
  • FIG. 4 the case where the conversion source source sp, the correction version conversion source source sc1a, and the manual correction source sc2 are prepared will be described.
  • the conversion source sp and hand correction source sc2 in FIG. 4 are the same as the conversion source sp and hand correction source sc2 shown in FIG.
  • the modified version conversion source sc1a is a source code in which COBOL code (1st line “COBOL 1", 2nd line “COBOA”, 3rd line “COBOL 3") described in COBOL is recorded.
  • the modified version conversion source sc1a is equal to the conversion source source sp that reflects the correction of the specification change on the customer side (“COBOL 2” ⁇ “COBOLA”).
  • the modified version conversion source sc1a is provided from the customer during the catch-up operation, that is, after freezing.
  • the version management tool 10 can manage meta information on the modified version conversion source source sc1a and can manage the content of the modified version conversion source source sc1a.
  • the merge tool m2 merges the conversion source source sp into a merge parent, the modified version conversion source source sc1a into a merge child (first child), and the hand correction source sc2 merges into a child (first Performs one-way three-way merge with 2).
  • the customer modification priority source sda (1st line "COBOL1", 2nd line “COBOLA”, 3rd line “COBOL3" not including the manual correction result ("Java 2") but including the customer correction ("COBOLA”) Get ").
  • the version control tool 10 acquires and manages meta information on the customer modification priority source sda.
  • the customer correction can be reliably reflected on the product of the three-way merge.
  • the customer's inherent requirements can be met with certainty.
  • the conversion device 1 of this embodiment converts the conversion source source sp (for example, COBOL) after conversion source sq (for example, JAVA)
  • conversion design setting for example, COBOL
  • converter generation for example, converter generation
  • machine conversion + hand correction step S13
  • three-way merge step S14
  • the conversion design setting (step S11) is a step in which the conversion development side analyzes the conversion source source sp, and sets one or more types of conversion design necessary for creating the converted source sq to the conversion source source sp. is there.
  • Conversion design is a framework that defines how to rewrite the code string to be converted. The type of conversion design that is required may be determined as appropriate, for example, by the conversion developer, but the method of determination is not limited thereto.
  • the conversion designs A1 to E1 are conversion designs related to mechanical conversion by the converter (corresponding to the converters c1 to cn in FIG. 1).
  • the conversion designs D1 and E1 are conversion designs related to conversion by hand correction (corresponding to hand correction performed by the hand correction management tool 20 in FIG. 1).
  • the converter generation (step S12) is a step of generating a converter associated with the conversion design related to the machine conversion among the set conversion designs.
  • a converter A2 for conversion design A1, a converter B2 for conversion design B1, and a converter C2 for conversion design C1 are generated for each of conversion designs A1 to C1 related to mechanical conversion.
  • the converter A2 for conversion design A1, the converter B2 for conversion design B1, and the converter C2 for conversion design C1 have the same functions as the converters c1 to cn in FIG.
  • Machine transformation + hand correction (step S13) is a step of performing machine transformation and hand correction in accordance with the transformation design.
  • each of the converters A2 to C2 executes machine conversion according to the conversion designs A1 to C1 on each of conversion targets in the conversion source source sp, and outputs conversion results A3 to C3.
  • the manual correction management tool 20 (FIG. 1) performs manual correction in accordance with the conversion designs D1 and E1 on each of conversion targets in the conversion source source sp, and outputs conversion results D3 and E3.
  • the conversion results A3 to E3 correspond to the sources s31 to s3 n, s4, and s5 during conversion shown in FIG.
  • the conversion device 1 of the present embodiment manages the conversion results by the converters c1 to cn in the repository for each converter (converter-specific conversion result repositories r11 to r1n in FIG. 1).
  • the conversion results due to the corrections were collectively managed in one repository (FIG. 1 manual correction result repository r3).
  • the management unit by repository can be set arbitrarily. Therefore, for the description with reference to FIGS. 5 and 6, the conversion device 1 of this embodiment manages the conversion result in the repository for each conversion design. That is, the conversion results A3 to E3 shown in FIG. 5 are managed in a repository (not shown in FIG. 5) prepared for each of the conversion designs A1 to E1.
  • a repository instead of a repository prepared for each conversion design, a repository for a collection of multiple conversion designs may be prepared.
  • the conversion developer side checks the conversion results A3 to E3 on the desk.
  • Desktop confirmation is a known method and the description is omitted. In the present embodiment, it is assumed that the result of desktop confirmation for the conversion results A3 to E3 is good.
  • the three-way merge (step S14) is a step of performing the three-way merge on the conversion result obtained by machine conversion + hand correction (step S13).
  • the three-way merge (step S14) is executed by the merge tools m1 and m2 shown in FIG. In FIG. 5, the converted source sq is obtained by executing three-way merge on the conversion results A3 to E3.
  • the conversion developer side checks the actual source for the converted source sq.
  • the actual machine confirmation corresponds to the confirmation test of the test tool 30 shown in FIG. This completes the first conversion development.
  • the conversion device 1 of the present embodiment converts the conversion source source spa (corresponding to the correction version conversion source source) including the correction portion spa1 of the customer Convert to the transformed source sqa including sqa1.
  • conversion design setting step S21
  • converter generation step S22
  • machine conversion + hand correction step S23
  • three-way merge step S24
  • the conversion design setting (step S21) is the same step as the conversion design setting (step S11) of FIG. As shown in FIG. 6, in the conversion design setting (step S21), conversion designs B1 and D1 (FIG. 5) are converted into conversion designs B11 and D11, respectively, in response to the correction source spa including the correction part spa1. Instead of the above, it is assumed that five types of conversion designs A1, B11, C1, D11, and E1 are set for each conversion target with respect to the conversion source source spa.
  • the conversion design B11 is a conversion design related to machine conversion.
  • the conversion design D11 is a conversion design related to conversion by manual correction.
  • the converter generation (step S22) is the same step as the converter generation (step S12) of FIG. As shown in FIG. 6, in addition to the converter A2 for conversion design A1 (FIG. 5) already generated and the converter C2 for conversion design C1 (FIG. 5), conversion design B11 is performed with respect to the newly set conversion design B11. Forward converter B21 is newly generated.
  • the converter B21 for conversion design B11 has the same function as the converters c1 to cn in FIG.
  • the machine conversion + hand correction (step S23) is the same step as the machine conversion + hand correction (step S13) of FIG.
  • the converter B21 for conversion design B11 performs machine conversion according to conversion design B11 for the conversion target in conversion source source sp.
  • the hand correction management tool 20 (FIG. 1) converts the conversion design D11 for the conversion target in the conversion source source sp.
  • the conversion results B31 and D31 correspond to the sources s31 to s3 n, s4 and s5 during conversion shown in FIG.
  • the conversion developer side checks the new conversion results B31 and D31 on the desk.
  • the conversion results A3, C3, and E3 that have already been generated, since desktop confirmation has been completed (FIG. 5), they are omitted in the catch-up operation. Therefore, by managing the conversion result for each conversion design, it is possible to reduce the number of test steps for desktop confirmation in the catch-up operation. Further, in the present embodiment, it is assumed that the result of the desktop confirmation with respect to the conversion results B31 and D31 is good.
  • the three-way merge (step S24) is the same step as the three-way merge (step S14) of FIG. In FIG. 6, by executing three-way merge on conversion results A3, B31, C3, D31, and E3, a converted source sqa including the correction part sqa1 corresponding to the correction part spa1 is obtained.
  • the conversion developer side checks the actual source for the converted source sqa.
  • the confirmation items that the correction part sqa1 does not affect the conversion items related to the conversion designs A1, C1 and E1 other than the conversion design B11 and D11 changed according to the correction part spa1 Since it has already been confirmed before the catch-up operation (FIG. 5), it may be omitted in the catch-up operation. Therefore, as shown in the example of FIGS. 5 and 6, by managing the conversion result for each conversion design, it is only necessary to confirm the confirmation item affected by the correction part sqa1 among all the confirmation items of the actual device confirmation. . As a result, it is possible to reduce the number of test steps for checking the actual machine in the catch-up operation.
  • the programming language of conversion source in conversion development is not limited to COBOL, and may be another programming language.
  • the program language of the converted source in conversion development is not limited to JAVA, and may be another programming language.
  • language conversion in conversion development is not limited to conversion to a different kind of programming language such as conversion from COBOL to JAVA, which was taken up in this embodiment, and the same kind of programming language such as conversion from host-based COBOL to open-based COBOL. May be converted to
  • the present invention is applicable not only to conversion development for conversion of program language, but also to various migration development involved in system migration, such as data migration development for migrating data processed by the current application to a new application.
  • the present invention can also be applied to a method of sequentially executing a plurality of conversion tools prepared for the conversion source as in the prior art.
  • a tool for mechanically converting a programming language there is a tool for parsing (parsing tree interpretation) and replacing code.
  • This tool is configured as one (or a few) tools that can handle almost all language conversions, and is generally large and complex.
  • the present invention can also be applied to such tools, and contributes to identification of the cause of defects, reduction in the number of test steps in catch-up work, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

L'invention concerne un dispositif de conversion (1) qui est caractérisé en ce qu'il comprend : un outil de gestion de version (10) qui, pour un ensemble de sources de conversion en cours (s31)-(s3n) qui sont générées par conversion d'une partie d'une source COBOL d'origine de conversion (s1) en une partie d'une source Java post-conversion (s2), (s4), (s5), gère des métadonnées relatives à la conversion aux sources de conversion en cours (s31)-(s3n), (s4), (s5); et un outil de test (30) qui, lorsqu'une défaillance est trouvée dans un test de vérification de la source Java post-conversion (s2), spécifie la conversion dans laquelle la cause de défaillance de la défaillance a été créée, en se référant aux métadonnées.
PCT/JP2018/030483 2017-08-25 2018-08-17 Dispositif de conversion et procédé de conversion WO2019039394A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201880055029.6A CN111052077B (zh) 2017-08-25 2018-08-17 变换装置以及变换方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-161973 2017-08-25
JP2017161973A JP6944838B6 (ja) 2017-08-25 2017-08-25 変換装置および変換方法

Publications (1)

Publication Number Publication Date
WO2019039394A1 true WO2019039394A1 (fr) 2019-02-28

Family

ID=65439075

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/030483 WO2019039394A1 (fr) 2017-08-25 2018-08-17 Dispositif de conversion et procédé de conversion

Country Status (3)

Country Link
JP (1) JP6944838B6 (fr)
CN (1) CN111052077B (fr)
WO (1) WO2019039394A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334325A (ja) * 2003-04-30 2004-11-25 Nri & Ncc Co Ltd ファイル変換システムおよび方法
JP2014215938A (ja) * 2013-04-30 2014-11-17 株式会社システムズ 情報処理装置、情報処理方法、およびプログラム
US20160350204A1 (en) * 2015-05-27 2016-12-01 Oracle International Corporation System and method for providing automated computer language translation and verification

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100337203C (zh) * 2004-04-05 2007-09-12 中国科学院计算技术研究所 一种遗产代码向现代语言变换过程中的控制流变换方法
JP4724387B2 (ja) * 2004-06-24 2011-07-13 富士通株式会社 プログラム変換プログラム、プログラム変換装置およびプログラム変換方法
CN101770363B (zh) * 2005-06-27 2014-03-12 Csc科技(新加坡)私人有限公司 将可执行代码转换为不同编程语言的方法及设备
CN101105814A (zh) * 2007-09-11 2008-01-16 金蝶软件(中国)有限公司 一种将Script语言转换成SQL语言的方法及装置
CN104391730B (zh) * 2014-08-03 2017-07-11 浙江网新恒天软件有限公司 一种软件源码语言翻译系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334325A (ja) * 2003-04-30 2004-11-25 Nri & Ncc Co Ltd ファイル変換システムおよび方法
JP2014215938A (ja) * 2013-04-30 2014-11-17 株式会社システムズ 情報処理装置、情報処理方法、およびプログラム
US20160350204A1 (en) * 2015-05-27 2016-12-01 Oracle International Corporation System and method for providing automated computer language translation and verification

Also Published As

Publication number Publication date
CN111052077B (zh) 2023-09-29
CN111052077A (zh) 2020-04-21
JP2019040399A (ja) 2019-03-14
JP6944838B2 (ja) 2021-10-06
JP6944838B6 (ja) 2021-11-02

Similar Documents

Publication Publication Date Title
US8005788B2 (en) System and method for legacy system component incremental migration
US20160170719A1 (en) Software database system and process of building and operating the same
US11194550B2 (en) System and method for migrating legacy software to a system common architecture
US20070169023A1 (en) Restructuring computer programs
JP6268029B2 (ja) テストケース生成装置及びテストケース生成方法
US20140130006A1 (en) Apparatus and method of generating multi-level test case from unified modeling language sequence diagram based on multiple condition control flow graph
WO2004025463A1 (fr) Procede de definition des besoins, procede de mise au point de logiciel, procede de modification du mot des besoins, et procede de nouvelle definition
US20100031263A1 (en) Process model lean notation
EP2913757A1 (fr) Méthode, système et logiciel informatique produit pour l'automatisation des tests
WO2006095434A1 (fr) Programme de construction de logiciel, support d'enregistrement sur lequel le programme est enregistre, methode de construction de logiciel et systeme de construction de logiciel
US20050262485A1 (en) Duplicate merge avoidance in parallel development of interdependent semi-derived artifacts
WO2019039394A1 (fr) Dispositif de conversion et procédé de conversion
JP3047771B2 (ja) 分岐命令処理方法及び装置
JP2009245066A (ja) ソフトウェアマイグレーションシステム及び方法
CN109766125A (zh) 批次间追平冲突的识别方法及装置
JP5374405B2 (ja) モデルデバッグ装置およびモデルデバッグ方法
Teppe The ARNO project: Challenges and experiences in a large-scale industrial software migration project
US20100070954A1 (en) Custom database system and method of building and operating the same
JPH01230132A (ja) ジェネレータ
WO2017170045A1 (fr) Procédé de conversion de source de programme, appareil de conversion de source de programme, appareil de traitement d'informations, procédé de traitement d'informations et programme
Hayashi et al. Agile stock assessment
US20220398096A1 (en) Conversion apparatus, conversion method and program
CN116909545A (zh) 一种基于微服务架构的低代码mom平台
CN114090419A (zh) 一种程序测试方法、系统、装置、电子设备以及存储介质
JP2016151973A (ja) 制御コントロールシステム、その開発支援装置、制御装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18848613

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18848613

Country of ref document: EP

Kind code of ref document: A1