WO2017170045A1 - Program source conversion method, program source conversion apparatus, information processing apparatus, information processing method, and program - Google Patents

Program source conversion method, program source conversion apparatus, information processing apparatus, information processing method, and program Download PDF

Info

Publication number
WO2017170045A1
WO2017170045A1 PCT/JP2017/011471 JP2017011471W WO2017170045A1 WO 2017170045 A1 WO2017170045 A1 WO 2017170045A1 JP 2017011471 W JP2017011471 W JP 2017011471W WO 2017170045 A1 WO2017170045 A1 WO 2017170045A1
Authority
WO
WIPO (PCT)
Prior art keywords
program source
maintenance
syntax
current
information
Prior art date
Application number
PCT/JP2017/011471
Other languages
French (fr)
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 CN201780022206.6A priority Critical patent/CN109074254B/en
Publication of WO2017170045A1 publication Critical patent/WO2017170045A1/en

Links

Images

Classifications

    • 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
    • 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/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • 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 software development technique that involves system migration from a current system to a new system.
  • Maintenance development of the current system may be carried out in the middle of conversion development. Since conversion development of a large-scale system is a long-term operation, maintenance development in the middle of conversion development may be performed several times. When maintenance development is carried out, catch-up work is performed on the new system under development.
  • the catch-up work refers to a work for reflecting the program correction change generated by the maintenance development in the new program source of the new system which has been created once and completed the system test.
  • the catch-up work is indispensable, it increases the amount of conversion development work and delays the system migration, so there is a demand to reduce the work man-hours and end it early.
  • the design contents of conversion development are not basically considered in maintenance development, it is difficult to estimate the work man-hours for catch-up work, and it is never easy to reduce the work man-hours.
  • Patent Document 1 discloses a program verification apparatus that verifies whether or not a verification target program satisfies a specified internal specification using an abstract syntax tree.
  • Patent Document 1 neither describes nor suggests the above-mentioned problem relating to catch-up work and its solution. As a result, it is not possible to realize early system transition where program conversion development is performed.
  • the present invention has been made in view of such circumstances, and an object thereof is to realize an early system transition from a current system in which maintenance and development are performed to a new system.
  • an information processing apparatus of the present invention provides: A program source conversion device for converting a first program source into a second program source, Creating a code check tool that analyzes the first program source and checks for allowed rules; Converting the first program source into the second program source; When the first program source is maintenance-developed, the maintenance-developed first program source is checked using the code check tool, and the maintenance-developed first program source is converted to the conversion. Extracting a usage outside the allowed rules to determine a policy to be reflected in the already-finished second program source; Performing the step of converting the first program source developed and maintained based on the policy into a second program source and merging with the converted second program source; It is characterized by that. Other means will be described later.
  • the system migration in which conversion development of a program as a comparative example is performed includes, for example, a current system server 1, a current system maintenance PC (Personal Computer) 2, a test server 2t, and a repository server 3 This is realized by exchanging information among the new system maintenance PC 4, test server 4 t, conversion development server 5, test server 5 t, and new system server 6.
  • a current system server 1 a current system maintenance PC (Personal Computer) 2
  • test server 2t a test server 2t
  • repository server 3 This is realized by exchanging information among the new system maintenance PC 4, test server 4 t, conversion development server 5, test server 5 t, and new system server 6.
  • the current system server 1 is a server that reads the current program source P1 (current program source before maintenance) and performs processing for the actual operation of the current system.
  • the current system server 1 is in the current system production environment, and is installed at, for example, a customer of a conversion developer.
  • the current program source P1 is a source code of a program for the current system.
  • the current program source P1 is described in, for example, COBOL, but may be described in another language.
  • the current program source may be referred to as a “first program source” and the current system may be referred to as a “first system” regardless of whether or not maintenance development has been performed.
  • the current system maintenance PC 2 is a server that modifies the current program source P1 and creates a maintained current program source P2.
  • the maintained current program source P2 is equal to the current program source P1 for which maintenance development has been completed.
  • the maintained current program source P2 is described in the same language as the current program source P1.
  • the test server 2t is a server that performs an operation check test on the maintained current program source P2.
  • the current system maintenance PC 2 and the test server 2t are in the current system maintenance development environment, and are installed at, for example, a customer of a conversion developer.
  • Maintenance development includes unscheduled work such as correcting a bug that causes a failure in the current system, and scheduled work such as changing the specification of a program in accordance with a revision of the law.
  • the repository server 3 is a resource management server.
  • the repository server 3 stores and manages the current program source P1, the maintained current program source P2, the new program source P3, and the maintained new program source P4.
  • the new program source P3 is a source code of a program for the new system.
  • the maintained new program source P4 is equal to the new program source P3 for which the maintenance development has been completed.
  • the repository server 3 is in a resource management environment and is installed at, for example, a customer.
  • the resource management environment may be the current system maintenance development environment or a new system maintenance development environment described later. In other words, the current system maintenance PC 2 or the new system maintenance PC 4 can be designed to function as the repository server 3.
  • the new system maintenance PC 4 is a server that modifies the new program source P3 and creates a maintained new program source P4.
  • the test server 4t is a server that performs an operation check test (system test) of the maintained new program source P4.
  • the new system maintenance PC 4 and the test server 4t are in a new system maintenance development environment and are installed at, for example, a customer.
  • the conversion development server 5 is a server that creates a new program source P3 by replacing the program language of the current program source P1 with another program language.
  • the new program source P3 is described in JAVA, for example, but may be described in another language.
  • the test server 5t is a server that performs a test for confirming the operation of the new program source P3.
  • the conversion development server 5 and the test server 5t are in a migration development environment, and are installed at, for example, a conversion developer.
  • the new system server 6 is a server that reads the maintained new program source P4 and performs processing for the actual operation of the new system.
  • the new system server 6 is in a new system production environment and is installed at, for example, a customer.
  • the new program source may be referred to as a “second program source” and the new system may be referred to as a “second system” regardless of whether or not maintenance development has been performed.
  • the system migration procedure in FIG. 1 is as follows. First, in step A1, the current system server 1 reads the current program source P1 acquired from the repository server 3 and performs the actual operation.
  • step A2 the conversion development server 5 performs conversion development of the current system for the current program source P1 acquired from the repository server 3, and creates a new program source P3.
  • the test server 5t performs a test for confirming the operation of the new program source P3.
  • the new program source P3 that has been tested by the test server 5t is stored in the new system maintenance PC 4.
  • step A3 the current system maintenance PC 2 modifies the current program source P1 acquired from the repository server 3, performs maintenance development, and creates a maintained current program source P2.
  • the test server 2t performs a test for confirming the operation of the maintained current program source P2.
  • Step A3 is performed one or more times in parallel with step A2 before completion of step A2 (parallel maintenance).
  • the maintained current program source P2 that has been tested by the test server 2t is stored in the repository server 3.
  • step A4 the test server 4t performs a system test of the new program source P3. Specifically, the test server 4t confirms the conversion result output as the new program source P3 as a system test.
  • the new program source P3 that has completed the system test in the test server 4t is stored in the repository server 3.
  • step A5 the current system server 1 reads the maintained current program source P2 acquired from the repository server 3, and starts the production operation with the maintained content.
  • step A6 the conversion development server 5 reads the maintained current program source P2 acquired from the repository server 3 and performs a catch-up operation. Specifically, the conversion development server 5 specifies the difference between the current program source P1 and the maintained current program source P2 as a program change correction amount by the maintenance development in step A3. Moreover, the conversion development server 5 performs conversion development of the current system that has been maintained for the specified program change correction. Also, the conversion development server 5 creates a maintained new program source P4 by reflecting the result of conversion development of the current system that has been maintained in the new program source P3. “Reflecting the result of conversion development of the current system that has been maintained in the new program source P3” means that the first conversion development design in step A2 is made to correspond to parallel maintenance. . In addition, the test server 5t performs a test for confirming the operation of the maintained new program source P4. The maintained new program source P4 that has been tested by the test server 5t is stored in the new system maintenance PC 4.
  • step A7 the test server 4t performs a system test of the maintained new program source P4. Specifically, the test server 4t confirms the conversion result output as the maintained new program source P4 as a system test.
  • the maintained new program source P4 that has completed the system test in the test server 4t is stored in the repository server 3.
  • step A8 system transition is performed (reference M1). Specifically, in step A5, the production operation with the maintained contents performed by the current system server 1 is terminated, and the new system server 6 acquires the maintained new program acquired from the repository server 3. The source P4 is read, and the production operation is started with the maintained content. Next, in step A9, the current system server 1 uses the maintained current program source P2 to start the backup operation with the maintained content.
  • the amount of the catch-up work in step A6 depends on the result of the program change correction of the current program source P1 in the maintenance development in step A3.
  • the design of conversion development is not basically considered in maintenance development (because maintenance developers prioritize the convenience of maintenance development and do not care about conversion development), the current program in maintenance development
  • the program may be corrected using a new (COBOL) instruction word that is not targeted for migration design in maintenance development (the “correction” is a correction using a new “instruction word”, and Including the meaning of both, using the new "How to use command words".
  • COBOL new
  • conversions program language conversions
  • the conversion tool should be adapted to accommodate this transition design modification. It needs to be corrected.
  • it is necessary to test the operation of the modified conversion tool itself in advance. Since these work may be accompanied by catch-up work, it is not easy for the conversion development side to predict the amount of work for the catch-up work, estimate the work man-hour for the catch-up work, and reduce it.
  • conversion may be performed manually without using a conversion tool from the viewpoint of development cost. It is assumed that maintenance development is corrected in the conversion manual work portion of the current program source P1. In this case, even if there is no correction of the conversion design for conversion development, in the catch-up operation, conversion according to the correction result of maintenance development is performed manually, and a test is performed to determine whether the conversion has been performed correctly.
  • step B1 is performed.
  • the conversion development server 5 determines the program syntax (hereinafter, simply referred to as “syntax”) as a premise for conversion development, and then the design standard 10 and code check tool reflecting the syntax. 20 is created.
  • the design standard 10 is a design standard for the new program source P3, and collectively describes necessary conditions for system migration design (described later).
  • the code check tool 20 is a tool used for maintenance development coding (described later) on the current system maintenance PC 2. Details of the code check tool 20 will be described later.
  • step B2 is performed instead of step A3 (FIG. 1).
  • the current system maintenance PC 2 performs maintenance and development, and uses the design standard 10 and the code check tool 20 acquired from the conversion development server 5 when creating the maintained current program source P2. Use syntax that assumes development (consideration).
  • the current system maintenance PC 2 operates the code check tool 20 on the created maintained current program source P2 to determine whether or not a syntax deviating from the design standard 10 is used. If there is a syntax deviating from the design standard 10, the current system maintenance PC 2 may create the maintained current program source P ⁇ b> 2 so that no syntax deviating from the design standard 10 exists.
  • the current system maintenance PC 2 creates a non-standard list 30 that describes the syntax and the like collectively.
  • the non-standard list 30 can determine a policy for reflecting the maintained current program source P2 in the new program source P3. Details of the non-standard list 30 will be described later.
  • Step B3 is performed at the end of Step A2.
  • the conversion development server 5 creates the new program source P3 by reflecting the non-standard list 30 acquired from the current system maintenance PC 2.
  • the catch-up work in step B4 is equivalent to the catch-up work in step A6 (FIG. 1).
  • the conversion development server 5 converts the maintained current program source P2 based on the policy of the non-standard list 30 and merges it with the new program source P3.
  • step A2 Conversion development (step A2) is performed in accordance with the design standard 10. For this reason, the non-standard list 30 is not created if the maintenance-completed current program source P2 is created in a manner consistent with the design standard 10 in maintenance development. As a result, in the catch-up operation (step B4), the part related to the migration design for system migration can be omitted. Further, even if the maintenance current program source P2 is created in a manner deviating from the design standard 10 and the non-standard list 30 is created in the maintenance development, the system migration corresponding to the syntax of the non-standard list 30 is performed.
  • the transition design can be performed at the stage of step B3, that is, prior to the catch-up work (step B4) (pre-empting the catch-up work). Conventionally (FIG.
  • step A6 after the catch-up operation (step A6), after the maintenance current program source P2 as a maintenance development product is acquired and parsed, the syntax of the non-standard list 30 is used.
  • the corresponding syntax could not be specified, and the system migration migration design corresponding to the specified syntax could not be performed.
  • step B4 a part of the catch-up work (step B4) can be omitted, or the system development transition design can be performed prior to the conversion development stage.
  • step B4 the system development transition design
  • the conversion development server 5 that executes the above steps B1, B3, and B4 and the current system maintenance PC 2 that executes step B2 constitute the program source conversion device of the present invention, and the program source conversion method of the present invention. Execute.
  • step B11 syntax analysis of the current program source P1 is performed.
  • step B12 setting of coding rules (example: variable naming, method and class setting) is performed.
  • the design standard 10 is created by the transition design (step B12).
  • step B13 the code check tool 20 is created by reflecting (reversing) the result of the migration design (step B12) in a parser of known technology.
  • step B31 the program language used in the current program source P1 is converted into another program language to create a new program source P3.
  • the conversion test step B32
  • a test of the new program source P3 is performed by the test server 5t.
  • the program conversion (step B31) and the conversion test (step B32) are executed in step B3 (FIG. 2).
  • step B41 the program language used in the maintained current program source P2 is converted into another program language to create a maintained new program source P4.
  • step B42 a test of the maintained new program source P4 by the test server 5t is performed.
  • the program conversion (step B41) and the conversion test (step B42) are executed in step B4 (FIG. 2).
  • step B21 basic design
  • step B22 detailed design
  • step B23 coding
  • step B24 a test
  • step B21 the modification change portion of the current program source P1 and the modification items of the portion are determined.
  • the design standard 10 is appropriately referred to.
  • step B22 the setting of the coding rule and the like are performed in a manner that is as close as possible to the design standard 10.
  • step B23 the maintained current program source P2 is created.
  • coding step B23
  • a coding review including the output result of the code check tool 20 is performed on the created maintained current program source P2. The coding review is repeatedly performed, and bugs and the like included in the maintained current program source P2 are removed.
  • step B42 a test of the current program source P2 that has been maintained by the test server 2t is performed.
  • step B42 a test of the current program source P2 that has been maintained by the test server 2t is performed.
  • step B42 a maintained current program source P2 in which operation confirmation is guaranteed is created.
  • the basic design (step B21), detailed design (step B22), coding (step B23), and test (step B24) are executed in step B2 (FIG. 2).
  • the reverse apparatus R (information processing apparatus) of this embodiment will be described with reference to FIG.
  • the reverse device R is a device that performs reverse (step B13 in FIG. 3), and is a device that is a part of the conversion development server 5.
  • the reverse device R 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 in accordance with instructions from the CPU. This realizes cooperation between software and hardware.
  • the program can be provided by being recorded on a recording medium or via a network.
  • the reverse device R includes a parser unit r1 (parser unit), a setting unit r2 (setting unit), an editing unit r3, and a tool creation unit r4 (tool creation unit).
  • the parser unit r1, the setting unit r2, the editing unit r3, and the tool creation unit r4 are specific functional units of the control unit of the reverse device R.
  • the reverse device R includes a code check program 14.
  • the code check program 14 constitutes a part of the code check tool 20 and is a program source in which processing contents of the code check tool 20 are described.
  • the code check program 14 is created in reverse (step B13 in FIG. 3) and stored in the storage unit of the reverse device R.
  • the parser unit r1 performs syntax analysis of the current program source P1. When the parsing of the current program source P1 is completed, the parser unit r1 can specify the token and syntax used for the current program source P1. The parser unit r1 outputs the specified token as a pre-maintenance token list P1a, and outputs the specified syntax as a pre-maintenance syntax list P1b. The parser unit r1 can be prepared for each programming language.
  • the setting unit r2 sets information permitted to be used for the new program source P3 as the permission information 11 based on the design standard 10 of the new program source P3.
  • the permission indicated by the permission information 11 is a permission from the conversion development side that creates the new program source P3 to the maintenance development side that creates the maintained current program source P2, and a viewpoint of shortening the catch-up work (step B4 in FIG. 2). Therefore, the information shown in the permission information 11 may be used for the maintained current program source P2.
  • the permission information 11 includes additional token permission information 11a, additional syntax permission information 11b, and additional character string permission information 11c.
  • the additional token permission information 11a is information indicating tokens that are permitted to be used for the new program source P3.
  • the additional syntax permission information 11b is information indicating a syntax permitted to be used for the new program source P3.
  • the additional character string permission information 11c is information indicating a character string permitted to be used for the new program source P3.
  • the “character string” is, for example, a comment sentence, and does not contribute to the operation of the program among codes used for the program source. In the present specification, the term “character string” is used in the meaning described on the left.
  • the token, syntax, and character string used in the current program source P1 are information to be developed for conversion development, it is preferable to use permission information 11 (tokens and maintenance in the pre-maintenance token list P1a).
  • the syntax in the previous syntax list P1b is classified as permission information 11).
  • this does not prevent the permission information 11 from including part of the token, syntax, and character string used in the current program source P1.
  • a token, syntax, and character string other than the token, syntax, and character string used in the current program source P 1 may be appropriately prepared and added to the permission information 11.
  • the setting unit r2 sets information prohibited from being used for the new program source P3 as the prohibition information 12 based on the design standard 10 of the new program source P3.
  • the prohibition indicated by the prohibition information 12 is a prohibition from the conversion development side that creates the new program source P3 to the maintenance development side that creates the maintained current program source P2, and is a viewpoint of shortening the catch-up work (step B4 in FIG. 2). This means that the information shown in the prohibition information 12 is not desired (or may not be used) for the maintained current program source P2.
  • the prohibition information 12 includes additional token prohibition information 12a, additional syntax prohibition information 12b, and additional character string prohibition information 12c.
  • the additional token prohibition information 12a is information indicating tokens that are prohibited from being used for the new program source P3.
  • the additional syntax prohibition information 12b is information indicating a syntax that is prohibited from being used for the new program source P3.
  • the additional character string prohibition information 12c is information indicating a character string prohibited from being used for the new program source P3.
  • the token, syntax, and character string used in the current program source P1 are information to be developed for conversion development, it is preferable not to use the prohibition information 12. However, it does not prevent the token, syntax, and part of the character string used in the current program source P1 from being included in the prohibition information 12.
  • the conversion development side may prepare a predetermined token, syntax, and character string as appropriate and add them to the prohibition information 12.
  • the permission information 11 and the prohibition information 12 described above constitute an allowance rule for maintenance development, and are presented from the conversion development side to the maintenance development side.
  • the editing unit r3 edits the pre-maintenance token list P1a and the pre-maintenance syntax list P1b output from the parser unit r1 and the permission information 11 and prohibition information 12 output from the setting unit r2 so as to be combined into a desired format. To do.
  • the editing unit r3 outputs the collected information as check information 13.
  • Tool creation unit r4 creates the code check tool 20 (tool) by packaging the check information 13 and the code check program 14.
  • the code check tool 20 created by the tool creation unit r4 and the design standard 10 created by the migration design (step B12 in FIG. 3) are installed in the test server 2t in the current system maintenance development environment (see FIG. 2). .
  • the code check tool 20 and the design standard 10 may be installed in the current system maintenance PC 2 in the current system maintenance development environment.
  • the code check tool 20 includes a parser unit 21 and a determination unit 22 in addition to the check information 13 already described.
  • the parser unit 21 and the determination unit 22 constitute a code check program 14.
  • the parser unit 21 performs syntax analysis of the current program source P5 after maintenance.
  • the post-maintenance current program source P5 is one in which the current program source P1 is tentatively or definitely modified and changed by maintenance development.
  • the post-maintenance current program source P5 is the maintained current program source P2 when coding (step B23 in FIG. 3) is in progress or completed (before the test), or the test (FIG. 3). Or the maintained current program source P2 when step B42) is completed.
  • the parser unit 21 can specify the token and syntax used in the current program source P5 after maintenance.
  • the parser unit 21 outputs the specified token as a post-maintenance token list P5a, and outputs the specified syntax as a post-maintenance syntax list P5b.
  • the parser unit 21 can be prepared for each programming language.
  • the determination unit 22 determines whether the permission information 11 and the prohibition information 12 are used in the current program source P5 after maintenance. Specifically, the post-maintenance token list P5a, the post-maintenance syntax list P5b, and the check information 13 (FIG. 4) of the code check tool 20 are input to the determination unit 22. Further, the difference between the post-maintenance token list P5a and the pre-maintenance token list P1a included in the check information 13 is specified, and the difference between the post-maintenance syntax list P5b and the pre-maintenance syntax list P1b included in the check information 13 is specified. Further, it is determined whether or not these specified differences are classified into the permission information 11 and whether or not the difference is classified into the prohibition information 12. Details of the determination process of the determination unit 22 will be described later.
  • the determination unit 22 causes the test server 2t to output the determination result 23 of the above determination.
  • the determination unit 22 A list of such information used is included in the determination result 23 as a non-standard list 30 (see FIG. 2).
  • the determination by the determination unit 22 can be performed after the syntax analysis by the parser unit 21 or can be performed while performing the syntax analysis.
  • the determination unit 22 can perform the same determination as described above not only on tokens and syntax but also on character strings. Specifically, first, the code check tool 20 extracts a character string from the post-maintenance current program source P5 using a known technique, and creates a post-maintenance character string list P5c. Further, the post-maintenance character string list P5c and the check information 13 (FIG. 4) are input to the determination unit 22. Further, it is determined whether or not each of the character strings included in the post-maintenance character string list P5c is classified into the permission information 11 and the prohibition information 12. The determination unit 22 causes the test server 2t to output a determination result 23 regarding the character string.
  • the determination unit 22 A list of such information used is included in the determination result 23 as a non-standard list 30 (see FIG. 2).
  • FIG. 6 describes the syntax included in the post-maintenance syntax list P5b of the post-maintenance program source P5.
  • step S1 the determination unit 22 determines whether or not the additional syntax permission information 11b of the permission information 11 includes the post-maintenance syntax list P5b. If included (Yes in step S1), it means that all of the syntaxes in the post-maintenance syntax list P5b are permitted to be used for the new program source P3, and the process proceeds to step S2. On the other hand, if it is not included (No in step S1), it means that at least one of the syntaxes in the post-maintenance syntax list P5b is not permitted to be used for the new program source P3. move on.
  • step S2 the determination unit 22 determines whether the additional syntax prohibition information 12b of the prohibition information 12 and the post-maintenance syntax list P5b are sparse. If they are sparse (Yes in step S2), it means that none of the syntaxes in the post-maintenance syntax list P5b corresponds to a syntax that is prohibited from being used in the new program source P3. Proceed to On the other hand, if they are not sparse (No in step S2), it means that at least one of the syntaxes in the post-maintenance syntax list P5b is prohibited from being used for the new program source P3, and the process proceeds to step S4. .
  • step S3 the determination unit 22 determines that the syntax in the post-maintenance syntax list P5b includes only the additional syntax permission information 11b of the permission information 11 (according to the design standard 10). Is output.
  • step S4 the determination unit 22 includes a syntax not included in the additional syntax permission information 11b of the permission information 11 in the syntax in the post-maintenance syntax list P5b, or an additional syntax of the prohibition information 12 An NG determination indicating that the syntax corresponding to the prohibition information 12b is included (departs from the design standard) is output.
  • step S5 the determination unit 22 extracts the syntax that has caused the NG determination from the syntax in the post-maintenance syntax list P5b, and adds it to the non-standard list 30 (usage outside acceptable rules). To do.
  • step S6 the determination unit 22 causes the test server 2t to output a determination result 23 obtained by combining the OK determination and the NG determination.
  • the determination result 23 is transmitted to the conversion development server 5 and the test server 5t in the migration development environment.
  • the conversion development side can create a new program source P3 based on the determination result 23.
  • the above description of the processing of the determination unit 22 is related to the syntax, but a token and a character string can be processed with the same logic. That is, it is determined whether or not the token in the post-maintenance syntax list P5b is composed only of the additional token permission information 11a of the permission information 11. Further, it is determined whether or not the character string in the post-maintenance syntax list P5b is composed only of the additional character string permission information 11c of the permission information 11.
  • conversion development for converting the program language of the current program source P1 to create a new program source P3 and maintenance development for the current program source P1 are used in parallel for the new program source P3.
  • Permission information 11 and prohibition information 12 that are permitted and prohibited to be set, and whether or not the permission information 11 and the prohibition information 12 are used in the current program source P5 after maintenance developed by the code check tool 20 Determine.
  • step B4) it is easy to estimate the work man-hours, and it is possible to reduce the work period of the catch-up work and reduce (reduce) the man-hours. Therefore, it is possible to realize early system transition from the current system where maintenance development is performed to the new system.
  • the code check tool 20 may indicate that the non-standard list 30 does not exist in the current program source P5 after maintenance, or if the non-standard list 30 exists, the non-standard list 30 may be acquired on the conversion development side. it can.
  • the part related to the system migration design can be omitted.
  • the system migration design can be performed prior to the catch-up work. As a result, it is possible to achieve further shortening of the work period and man-hour reduction of the catch-up work.
  • the present invention is not limited to the above-described embodiment, and can be modified without departing from the spirit of the present invention.
  • conversion development which is the conversion of the program language of the current program source
  • system development that provides the same type of service but needs to change the contents of the program source more or less by region. it can.
  • the program correction change due to the maintenance development of the current program source in the A region After grasping, it is possible to start catching up with a new program source for the region B.
  • the amount of the catch-up work can be reduced, and the work period of the catch-up work can be shortened and the number of steps can be reduced.
  • step B3 (FIG. 2) is assumed to be a part of step A2, and has been described as being performed prior to the catch-up operation (step B4).
  • step B3 may not be a part of step A2, but may be handled as a work subsequent to step A2 and handled as a work preceding the catch-up work (step B4).
  • the new program source P3 becomes a result of the work in step A2, and does not become a result of the work in step B3.
  • step B3 is an operation in which the conversion development server 5 reflects the non-standard list 30 acquired from the current system maintenance PC 2 in the new program source P3 created in step A2.
  • Step B3 can be handled to be performed in parallel with step A2. Further, the work combining Step B3 and Step B4 can be handled as a catch-up work.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

A reversing apparatus (R) at a conversion-development side is provided with: a parser unit (r1) that performs syntax analysis of a current program source (P1) before maintenance and generates lists (P1a, P2a) of tokens and syntaxes being used in the current program source (P1); a setting unit (r2) that sets, on the basis of a design standard (10) of a new program source, permission information (11) indicating tokens, syntaxes, and strings that are permitted to be used in the new program source, and prohibition information (12) indicating tokens, syntaxes, and strings that are prohibited from being used in the new program source; and a tool generating unit (r4) that generates a code check tool (20) for determining whether or not the permission information (11) and the prohibition information (12) are being used in the current program source after maintenance.

Description

プログラムソース変換方法、プログラムソース変換装置、情報処理装置、情報処理方法、および、プログラムProgram source conversion method, program source conversion device, information processing device, information processing method, and program
 本発明は、現行システムから新システムへのシステム移行を伴うソフトウェア開発の技術に関する。 The present invention relates to a software development technique that involves system migration from a current system to a new system.
 現行システムから新システムへのシステム移行において、例えば、プログラムのコンバージョン開発という作業がある。コンバージョン開発では、現行システムに用いられる現行プログラムソースのプログラム言語(例:COBOL(COmmon Business Oriented Language))を別のプログラム言語(例:JAVA(登録商標))に置き換えて、新システムに用いられる新プログラムソースを作成する。 In the system migration from the current system to the new system, for example, there is work of program conversion development. In conversion development, the program language of the current program source used in the current system (eg COBOL (COmmon Business Oriented Language)) is replaced with another program language (eg JAVA (registered trademark)), and the new used in the new system Create a program source.
 コンバージョン開発の途中段階で、現行システムの保守開発が実施される場合がある。大規模システムのコンバージョン開発であれば、長期の作業となるため、コンバージョン開発の途中段階での保守開発は複数回に及ぶこともある。保守開発が実施された場合、開発途中の新システムに対して追いつき作業を実施する。追いつき作業とは、一度作成し、システムテストまで終えた新システムの新プログラムソースに、保守開発によって発生したプログラム修正変更分を反映させる作業をいう。追いつき作業は、必須であるとはいえ、コンバージョン開発の作業量を増大させ、システム移行の遅延化を招くので、作業工数を低減化し早期に終了させたいという要望がある。しかし、保守開発ではコンバージョン開発の設計内容が基本的には考慮されないため、追いつき作業の作業工数を見積もることが困難であり、作業工数の低減化は決して容易でない。 ∙ Maintenance development of the current system may be carried out in the middle of conversion development. Since conversion development of a large-scale system is a long-term operation, maintenance development in the middle of conversion development may be performed several times. When maintenance development is carried out, catch-up work is performed on the new system under development. The catch-up work refers to a work for reflecting the program correction change generated by the maintenance development in the new program source of the new system which has been created once and completed the system test. Although the catch-up work is indispensable, it increases the amount of conversion development work and delays the system migration, so there is a demand to reduce the work man-hours and end it early. However, since the design contents of conversion development are not basically considered in maintenance development, it is difficult to estimate the work man-hours for catch-up work, and it is never easy to reduce the work man-hours.
 特許文献1には、検証対象プログラムが、指定した内部仕様を満足するか否かを、抽象構文木を用いて検証するプログラム検証装置について開示されている。 Patent Document 1 discloses a program verification apparatus that verifies whether or not a verification target program satisfies a specified internal specification using an abstract syntax tree.
特開2011-215998号公報JP 2011-215998 A
 しかし、特許文献1には、追いつき作業に関する上記問題やその解決策について記載も示唆もない。その結果、プログラムのコンバージョン開発が行われるシステム移行の早期化を実現することができない。 However, Patent Document 1 neither describes nor suggests the above-mentioned problem relating to catch-up work and its solution. As a result, it is not possible to realize early system transition where program conversion development is performed.
 そこで、本発明は、このような事情に鑑みてなされたものであり、保守開発が行われる現行システムから新システムへのシステム移行の早期化を実現することを目的とする。 Therefore, the present invention has been made in view of such circumstances, and an object thereof is to realize an early system transition from a current system in which maintenance and development are performed to a new system.
 前記目的を達成するために、本発明の情報処理装置は、
 第1のプログラムソースを第2のプログラムソースに変換するプログラムソース変換装置が、
 前記第1のプログラムソースを解析して許容される許容ルールをチェックするコードチェックツールを作成する工程と、
 前記第1のプログラムソースを前記第2のプログラムソースに変換する工程と、
 前記第1のプログラムソースに保守開発があった場合に、前記保守開発された第1のプログラムソースを、前記コードチェックツールを用いてチェックし、前記保守開発された第1のプログラムソースを前記変換済みの第2のプログラムソースに反映するための方針を決めるための、前記許容ルール外の用法を抽出する工程と、
 前記方針に基づいて前記保守開発された第1のプログラムソースを第2のプログラムソースに変換して前記変換済みの第2のプログラムソースに合流させる工程と、を実行する、
 ことを特徴とする。
 その他の手段については後記する。
In order to achieve the above object, an information processing apparatus of the present invention provides:
A program source conversion device for converting a first program source into a second program source,
Creating a code check tool that analyzes the first program source and checks for allowed rules;
Converting the first program source into the second program source;
When the first program source is maintenance-developed, the maintenance-developed first program source is checked using the code check tool, and the maintenance-developed first program source is converted to the conversion. Extracting a usage outside the allowed rules to determine a policy to be reflected in the already-finished second program source;
Performing the step of converting the first program source developed and maintained based on the policy into a second program source and merging with the converted second program source;
It is characterized by that.
Other means will be described later.
 本発明によれば、保守開発が行われる現行システムから新システムへのシステム移行の早期化を実現することができる。 According to the present invention, it is possible to realize an early system transition from a current system where maintenance development is performed to a new system.
本発明を適用しない場合のシステム移行を示すシーケンスである。It is a sequence which shows system transfer when not applying this invention. 本発明を適用した場合のシステム移行を示すシーケンスである。It is a sequence which shows system transfer at the time of applying this invention. 移行開発環境におけるコンバージョン開発の詳細手順、および、現行システム保守開発環境における保守開発の詳細手順を示すフローチャートである。It is a flowchart which shows the detailed procedure of the conversion development in a transfer development environment, and the detailed procedure of the maintenance development in the current system maintenance development environment. リバース装置の機能構成図である。It is a functional block diagram of a reverse apparatus. コードチェックツールの機能構成図である。It is a functional block diagram of a code check tool. 保守後現行プログラムソース判定処理(構文の場合)を示すフローチャートである。It is a flowchart which shows the present program source determination process (in the case of a syntax) after a maintenance.
 以下、本発明の好適な例となる実施形態について添付の図面を参照しながら詳細に説明する。 Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.
≪概要≫
[従来のシステム移行]
 図1に示すように、比較例となる、プログラムのコンバージョン開発が行われるシステム移行は、例えば、現行システム用サーバ1、現行システム保守用PC(Personal Computer)2、テストサーバ2t、リポジトリ用サーバ3、新システム保守用PC4、テストサーバ4t、コンバージョン開発用サーバ5、テストサーバ5t、および、新システム用サーバ6の間で情報のやり取りが行われることで実現される。
≪Overview≫
[Conventional system migration]
As shown in FIG. 1, the system migration in which conversion development of a program as a comparative example is performed includes, for example, a current system server 1, a current system maintenance PC (Personal Computer) 2, a test server 2t, and a repository server 3 This is realized by exchanging information among the new system maintenance PC 4, test server 4 t, conversion development server 5, test server 5 t, and new system server 6.
 現行システム用サーバ1は、現行プログラムソースP1(保守前現行プログラムソース)を読み込んで、現行システムの本番運用に供する処理を行うサーバである。現行システム用サーバ1は、現行システム本番環境下にあって、例えば、コンバージョン開発者の顧客先に設置されている。
 現行プログラムソースP1は、現行システム用のプログラムのソースコードである。現行プログラムソースP1は、例えば、COBOLで記述されているが、他の言語で記述してもよい。
 なお、本明細書にて、保守開発されたか否かにかかわらず現行プログラムソースを「第1のプログラムソース」と呼び、現行システムを「第1のシステム」と呼ぶ場合がある。
The current system server 1 is a server that reads the current program source P1 (current program source before maintenance) and performs processing for the actual operation of the current system. The current system server 1 is in the current system production environment, and is installed at, for example, a customer of a conversion developer.
The current program source P1 is a source code of a program for the current system. The current program source P1 is described in, for example, COBOL, but may be described in another language.
In this specification, the current program source may be referred to as a “first program source” and the current system may be referred to as a “first system” regardless of whether or not maintenance development has been performed.
 現行システム保守用PC2は、現行プログラムソースP1を修正して保守済現行プログラムソースP2を作成するサーバである。保守済現行プログラムソースP2は、保守開発が完了した現行プログラムソースP1に等しい。保守済現行プログラムソースP2は、現行プログラムソースP1と同じ言語で記述されている。
 テストサーバ2tは、保守済現行プログラムソースP2の動作確認のテストを行うサーバである。
 現行システム保守用PC2およびテストサーバ2tは、現行システム保守開発環境下にあって、例えば、コンバージョン開発業者の顧客先に設置されている。
 なお、保守開発とは、現行システムに発生した障害を引き起こすバグの修正などの非予定的な作業を含んだり、法改正に伴うプログラムの仕様変更などの予定的な作業を含んだりする。
The current system maintenance PC 2 is a server that modifies the current program source P1 and creates a maintained current program source P2. The maintained current program source P2 is equal to the current program source P1 for which maintenance development has been completed. The maintained current program source P2 is described in the same language as the current program source P1.
The test server 2t is a server that performs an operation check test on the maintained current program source P2.
The current system maintenance PC 2 and the test server 2t are in the current system maintenance development environment, and are installed at, for example, a customer of a conversion developer.
Maintenance development includes unscheduled work such as correcting a bug that causes a failure in the current system, and scheduled work such as changing the specification of a program in accordance with a revision of the law.
 リポジトリ用サーバ3は、リソース管理用サーバである。リポジトリ用サーバ3は、現行プログラムソースP1、保守済現行プログラムソースP2、新プログラムソースP3、および、保守済新プログラムソースP4を保存して管理している。
 新プログラムソースP3は、新システム用のプログラムのソースコードである。
 保守済新プログラムソースP4は、保守開発が完了した新プログラムソースP3に等しい。
 リポジトリ用サーバ3は、リソース管理環境下にあって、例えば、顧客先に設置されている。なお、リソース管理環境は、現行システム保守開発環境、または、後記する新システム保守開発環境が兼ねるようにしてもよい。換言すれば、現行システム保守用PC2、または、新システム保守用PC4がリポジトリ用サーバ3として機能するように設計することができる。
The repository server 3 is a resource management server. The repository server 3 stores and manages the current program source P1, the maintained current program source P2, the new program source P3, and the maintained new program source P4.
The new program source P3 is a source code of a program for the new system.
The maintained new program source P4 is equal to the new program source P3 for which the maintenance development has been completed.
The repository server 3 is in a resource management environment and is installed at, for example, a customer. The resource management environment may be the current system maintenance development environment or a new system maintenance development environment described later. In other words, the current system maintenance PC 2 or the new system maintenance PC 4 can be designed to function as the repository server 3.
 新システム保守用PC4は、新プログラムソースP3を修正して保守済新プログラムソースP4を作成するサーバである。
 テストサーバ4tは、保守済新プログラムソースP4の動作確認のテスト(システムテスト)を行うサーバである。
 新システム保守用PC4およびテストサーバ4tは、新システム保守開発環境下にあって、例えば、顧客先に設置されている。
The new system maintenance PC 4 is a server that modifies the new program source P3 and creates a maintained new program source P4.
The test server 4t is a server that performs an operation check test (system test) of the maintained new program source P4.
The new system maintenance PC 4 and the test server 4t are in a new system maintenance development environment and are installed at, for example, a customer.
 コンバージョン開発用サーバ5は、現行プログラムソースP1のプログラム言語を別のプログラム言語に置き換えて、新プログラムソースP3を作成するサーバである。新プログラムソースP3は、例えば、JAVAで記述されているが、他の言語で記述してもよい。
 テストサーバ5tは、新プログラムソースP3の動作確認のテストを行うサーバである。
 コンバージョン開発用サーバ5およびテストサーバ5tは、移行開発環境下にあって、例えば、コンバージョン開発者先に設置されている。
The conversion development server 5 is a server that creates a new program source P3 by replacing the program language of the current program source P1 with another program language. The new program source P3 is described in JAVA, for example, but may be described in another language.
The test server 5t is a server that performs a test for confirming the operation of the new program source P3.
The conversion development server 5 and the test server 5t are in a migration development environment, and are installed at, for example, a conversion developer.
 新システム用サーバ6は、保守済新プログラムソースP4を読み込んで、新システムの本番運用に供する処理を行うサーバである。新システム用サーバ6は、新システム本番環境下にあって、例えば、顧客先に設置されている。
 なお、本明細書にて、保守開発されたか否かにかかわらず新プログラムソースを「第2のプログラムソース」と呼び、新システムを「第2のシステム」と呼ぶ場合がある。
The new system server 6 is a server that reads the maintained new program source P4 and performs processing for the actual operation of the new system. The new system server 6 is in a new system production environment and is installed at, for example, a customer.
In this specification, the new program source may be referred to as a “second program source” and the new system may be referred to as a “second system” regardless of whether or not maintenance development has been performed.
 図1におけるシステム移行の手順は以下のとおりである。
 まず、ステップA1にて、現行システム用サーバ1は、リポジトリ用サーバ3から取得した現行プログラムソースP1を読み込んで、本番運用を行っている。
The system migration procedure in FIG. 1 is as follows.
First, in step A1, the current system server 1 reads the current program source P1 acquired from the repository server 3 and performs the actual operation.
 次に、ステップA2にて、コンバージョン開発用サーバ5は、リポジトリ用サーバ3から取得した現行プログラムソースP1に対して、現行システムのコンバージョン開発を行い、新プログラムソースP3を作成する。また、テストサーバ5tが新プログラムソースP3の動作確認のテストを行う。テストサーバ5tにてテストを終えた新プログラムソースP3は、新システム保守用PC4に保存される。 Next, in step A2, the conversion development server 5 performs conversion development of the current system for the current program source P1 acquired from the repository server 3, and creates a new program source P3. In addition, the test server 5t performs a test for confirming the operation of the new program source P3. The new program source P3 that has been tested by the test server 5t is stored in the new system maintenance PC 4.
 次に、ステップA3にて、現行システム保守用PC2は、リポジトリ用サーバ3から取得した現行プログラムソースP1を修正し、保守開発を行い、保守済現行プログラムソースP2を作成する。また、テストサーバ2tが保守済現行プログラムソースP2の動作確認のテストを行う。ステップA3は、ステップA2が完了する前にステップA2に並行して1または複数回行われる(並行保守)。テストサーバ2tにてテストを終えた保守済現行プログラムソースP2は、リポジトリ用サーバ3に保存される。 Next, in step A3, the current system maintenance PC 2 modifies the current program source P1 acquired from the repository server 3, performs maintenance development, and creates a maintained current program source P2. In addition, the test server 2t performs a test for confirming the operation of the maintained current program source P2. Step A3 is performed one or more times in parallel with step A2 before completion of step A2 (parallel maintenance). The maintained current program source P2 that has been tested by the test server 2t is stored in the repository server 3.
 次に、ステップA4にて、テストサーバ4tは、新プログラムソースP3のシステムテストを行う。具体的には、テストサーバ4tは、システムテストとして、新プログラムソースP3として出力されたコンバージョン結果の確認を行う。テストサーバ4tにてシステムテストを終えた新プログラムソースP3は、リポジトリ用サーバ3に保存される。 Next, in step A4, the test server 4t performs a system test of the new program source P3. Specifically, the test server 4t confirms the conversion result output as the new program source P3 as a system test. The new program source P3 that has completed the system test in the test server 4t is stored in the repository server 3.
 次に、ステップA5にて、現行システム用サーバ1は、リポジトリ用サーバ3から取得した保守済現行プログラムソースP2を読み込んで、保守済の内容で本番運用を開始する。 Next, in step A5, the current system server 1 reads the maintained current program source P2 acquired from the repository server 3, and starts the production operation with the maintained content.
 次に、ステップA6にて、コンバージョン開発用サーバ5は、リポジトリ用サーバ3から取得した保守済現行プログラムソースP2を読み込んで、追いつき作業を行う。具体的には、コンバージョン開発用サーバ5は、現行プログラムソースP1と保守済現行プログラムソースP2との差分を、ステップA3の保守開発によるプログラム変更修正分として特定する。また、コンバージョン開発用サーバ5は、特定したプログラム変更修正分に対して、保守済となった現行システムのコンバージョン開発を行う。また、コンバージョン開発用サーバ5は、保守済となった現行システムのコンバージョン開発の結果物を新プログラムソースP3に反映させて保守済新プログラムソースP4を作成する。「保守済となった現行システムのコンバージョン開発の結果物を新プログラムソースP3に反映」させることは、ステップA2での最初のコンバージョン開発の設計を並行保守に対応させるという工程をとることを意味する。また、テストサーバ5tが保守済新プログラムソースP4の動作確認のテストを行う。テストサーバ5tにてテストを終えた保守済新プログラムソースP4は、新システム保守用PC4に保存される。 Next, in step A6, the conversion development server 5 reads the maintained current program source P2 acquired from the repository server 3 and performs a catch-up operation. Specifically, the conversion development server 5 specifies the difference between the current program source P1 and the maintained current program source P2 as a program change correction amount by the maintenance development in step A3. Moreover, the conversion development server 5 performs conversion development of the current system that has been maintained for the specified program change correction. Also, the conversion development server 5 creates a maintained new program source P4 by reflecting the result of conversion development of the current system that has been maintained in the new program source P3. “Reflecting the result of conversion development of the current system that has been maintained in the new program source P3” means that the first conversion development design in step A2 is made to correspond to parallel maintenance. . In addition, the test server 5t performs a test for confirming the operation of the maintained new program source P4. The maintained new program source P4 that has been tested by the test server 5t is stored in the new system maintenance PC 4.
 次に、ステップA7にて、テストサーバ4tは、保守済新プログラムソースP4のシステムテストを行う。具体的には、テストサーバ4tは、システムテストとして、保守済新プログラムソースP4として出力されたコンバージョン結果の確認を行う。テストサーバ4tにてシステムテストを終えた保守済新プログラムソースP4は、リポジトリ用サーバ3に保存される。 Next, in step A7, the test server 4t performs a system test of the maintained new program source P4. Specifically, the test server 4t confirms the conversion result output as the maintained new program source P4 as a system test. The maintained new program source P4 that has completed the system test in the test server 4t is stored in the repository server 3.
 次に、ステップA8にて、システム移行が行われる(符号M1)。具体的には、ステップA5にて、現行システム用サーバ1が行っていた保守済の内容での本番運用を終了するとともに、新システム用サーバ6が、リポジトリ用サーバ3から取得した保守済新プログラムソースP4を読み込んで、保守済の内容で本番運用を開始する。
 次に、ステップA9にて、現行システム用サーバ1は、保守済現行プログラムソースP2を用いて、保守済の内容でバックアップ運用を開始する。
Next, in step A8, system transition is performed (reference M1). Specifically, in step A5, the production operation with the maintained contents performed by the current system server 1 is terminated, and the new system server 6 acquires the maintained new program acquired from the repository server 3. The source P4 is read, and the production operation is started with the maintained content.
Next, in step A9, the current system server 1 uses the maintained current program source P2 to start the backup operation with the maintained content.
 ステップA6の追いつき作業の作業量は、ステップA3の保守開発での現行プログラムソースP1のプログラム変更修正の結果に依存する。従来では、保守開発ではコンバージョン開発の設計内容が基本的には考慮されないため(保守開発業者は保守開発の都合を優先し、コンバージョン開発のことは気に留めないため)、保守開発での現行プログラムソースP1のプログラム変更修正の実現方式はさまざまである。例えば、保守開発にて移行設計が対象としていない新たな(COBOLの)命令語を用いてプログラムを修正することがある(当該「修正」は、新たな「命令語」を用いた修正、および、新たな「命令語の使い方」を用いた修正、の両方の意味を含む)。この場合、コンバージョン開発の移行設計の修正が必要となる。コンバージョン(プログラム言語の変換)の大半は、所定の変換ツール用いて機械的に行うことができるが、コンバージョン開発の移行設計が修正された場合、この移行設計の修正に対応するように変換ツールを修正する必要がある。また、修正した変換ツールを用いてコンバージョンを行う際、修正した変換ツール自体の動作確認のテストを事前に行う必要がある。これらの作業が追い付き作業に伴う場合があるため、コンバージョン開発側で追いつき作業の作業量を予測し、追いつき作業の作業工数を見積もり、低減化することは容易でない。
 なお、非常に複雑な変換手順に関しては、開発コストの観点から、変換ツールを用いず手作業でコンバージョンを行うことがある。現行プログラムソースP1のうちコンバージョン手作業部分に保守開発の修正があったとする。この場合、コンバージョン開発の移行設計の修正がなかったとしても、追いつき作業にて、保守開発の修正結果に合わせたコンバージョンが手作業でなされ、正しくコンバージョンなされたか否かのテストが行われる。
The amount of the catch-up work in step A6 depends on the result of the program change correction of the current program source P1 in the maintenance development in step A3. Conventionally, the design of conversion development is not basically considered in maintenance development (because maintenance developers prioritize the convenience of maintenance development and do not care about conversion development), the current program in maintenance development There are various ways of realizing program change and correction of the source P1. For example, the program may be corrected using a new (COBOL) instruction word that is not targeted for migration design in maintenance development (the “correction” is a correction using a new “instruction word”, and Including the meaning of both, using the new "How to use command words". In this case, the conversion design for conversion development needs to be corrected. The majority of conversions (program language conversions) can be done mechanically using a given conversion tool, but if the conversion development transition design is modified, the conversion tool should be adapted to accommodate this transition design modification. It needs to be corrected. In addition, when performing conversion using the modified conversion tool, it is necessary to test the operation of the modified conversion tool itself in advance. Since these work may be accompanied by catch-up work, it is not easy for the conversion development side to predict the amount of work for the catch-up work, estimate the work man-hour for the catch-up work, and reduce it.
For very complicated conversion procedures, conversion may be performed manually without using a conversion tool from the viewpoint of development cost. It is assumed that maintenance development is corrected in the conversion manual work portion of the current program source P1. In this case, even if there is no correction of the conversion design for conversion development, in the catch-up operation, conversion according to the correction result of maintenance development is performed manually, and a test is performed to determine whether the conversion has been performed correctly.
[本実施形態のシステム移行]
 上記のような事情に鑑みて、本実施形態では、図2に示す手順をとる。図2に示すように、本実施形態での、プログラムのコンバージョン開発が行われるシステム移行は、図1に示す比較例と同様、例えば、現行システム用サーバ1、現行システム保守用PC2、テストサーバ2t、リポジトリ用サーバ3、新システム保守用PC4、テストサーバ4t、コンバージョン開発用サーバ5、テストサーバ5t、および、新システム用サーバ6の間で情報のやり取りが行われることで実現される。以下、図1との相違点を中心的に述べて、本実施形態でのシステム移行について説明する。
[System migration of this embodiment]
In view of the above circumstances, in the present embodiment, the procedure shown in FIG. 2 is taken. As shown in FIG. 2, the system migration in which the conversion development of the program is performed in this embodiment is the same as the comparative example shown in FIG. 1, for example, the current system server 1, the current system maintenance PC 2, and the test server 2t. This is realized by exchanging information among the repository server 3, the new system maintenance PC 4, the test server 4t, the conversion development server 5, the test server 5t, and the new system server 6. Hereinafter, the system migration in the present embodiment will be described with a focus on differences from FIG.
 ステップA2の序盤にて、ステップB1が行われる。ステップB1にて、コンバージョン開発用サーバ5は、コンバージョン開発で前提とするプログラム構文(以下、単に、「構文」と称する場合がある)を決定した後、構文を反映した設計基準10およびコードチェックツール20を作成する。
 設計基準10は、新プログラムソースP3の設計基準であり、システム移行の移行設計(後記)の必要条件をまとめて記述したものである。
 コードチェックツール20は、現行システム保守用PC2での保守開発のコーディング(後記)に用いられるツールである。コードチェックツール20の詳細は後記する。
At the beginning of step A2, step B1 is performed. In step B1, the conversion development server 5 determines the program syntax (hereinafter, simply referred to as “syntax”) as a premise for conversion development, and then the design standard 10 and code check tool reflecting the syntax. 20 is created.
The design standard 10 is a design standard for the new program source P3, and collectively describes necessary conditions for system migration design (described later).
The code check tool 20 is a tool used for maintenance development coding (described later) on the current system maintenance PC 2. Details of the code check tool 20 will be described later.
 その後、ステップA3(図1)の代わりにステップB2が行われる。ステップB2にて、現行システム保守用PC2は、保守開発を行い、保守済現行プログラムソースP2を作成する際、コンバージョン開発用サーバ5から取得した、設計基準10およびコードチェックツール20を用いて、コンバージョン開発を前提とした(考慮した)構文などを利用する。現行システム保守用PC2は、作成した保守済現行プログラムソースP2に対して、コードチェックツール20を動作させ設計基準10から逸脱した構文などが利用されたか否かを判定する。現行システム保守用PC2は、設計基準10から逸脱した構文などが存在する場合は、設計基準10から逸脱した構文などが存在しないように保守済現行プログラムソースP2を作成してもよい。どうしても設計基準10から逸脱した構文などが保守開発に必要となる場合は、現行システム保守用PC2は、そのような構文などをまとめて記述した基準外一覧30を作成する。基準外一覧30は、保守済現行プログラムソースP2を新プログラムソースP3に反映するための方針を決めることができる。基準外一覧30の詳細は後記する。 Thereafter, step B2 is performed instead of step A3 (FIG. 1). In step B2, the current system maintenance PC 2 performs maintenance and development, and uses the design standard 10 and the code check tool 20 acquired from the conversion development server 5 when creating the maintained current program source P2. Use syntax that assumes development (consideration). The current system maintenance PC 2 operates the code check tool 20 on the created maintained current program source P2 to determine whether or not a syntax deviating from the design standard 10 is used. If there is a syntax deviating from the design standard 10, the current system maintenance PC 2 may create the maintained current program source P <b> 2 so that no syntax deviating from the design standard 10 exists. If a syntax that deviates from the design standard 10 is inevitably required for maintenance development, the current system maintenance PC 2 creates a non-standard list 30 that describes the syntax and the like collectively. The non-standard list 30 can determine a policy for reflecting the maintained current program source P2 in the new program source P3. Details of the non-standard list 30 will be described later.
 その後、ステップA2の終盤にて、ステップB3が行われる。ステップB3にて、基準外一覧30が存在する場合には、コンバージョン開発用サーバ5は、現行システム保守用PC2から取得した基準外一覧30を反映させて新プログラムソースP3を作成する。 Thereafter, Step B3 is performed at the end of Step A2. In step B3, if the non-standard list 30 exists, the conversion development server 5 creates the new program source P3 by reflecting the non-standard list 30 acquired from the current system maintenance PC 2.
 ステップB4の追いつき作業は、ステップA6(図1)の追いつき作業と同等の作業である。コンバージョン開発用サーバ5は、基準外一覧30の方針に基づいて、保守済現行プログラムソースP2をコンバージョンし、新プログラムソースP3に合流させる。 The catch-up work in step B4 is equivalent to the catch-up work in step A6 (FIG. 1). The conversion development server 5 converts the maintained current program source P2 based on the policy of the non-standard list 30 and merges it with the new program source P3.
 コンバージョン開発(ステップA2)は、設計基準10に即して行われる。このため、保守開発にて、設計基準10に即した態様で保守済現行プログラムソースP2が作成されれば基準外一覧30は作成されない。その結果、追いつき作業(ステップB4)では、システム移行の移行設計に関する部分を省略することができる。
 また、保守開発にて、設計基準10から逸脱した態様で保守済現行プログラムソースP2が作成され、基準外一覧30が作成されたとしても、基準外一覧30の構文などに対応した、システム移行の移行設計を、ステップB3の段階で、つまり、追いつき作業(ステップB4)に先行して行うことができる(追いつき作業の先取り)。従来(図1)では、追いつき作業(ステップA6)にて、保守開発の成果物としての保守済現行プログラムソースP2を取得して構文解析などをした後でないと、基準外一覧30の構文などに相当する構文などを特定することができず、この特定した構文などに対応した、システム移行の移行設計を行うことができなかった。
Conversion development (step A2) is performed in accordance with the design standard 10. For this reason, the non-standard list 30 is not created if the maintenance-completed current program source P2 is created in a manner consistent with the design standard 10 in maintenance development. As a result, in the catch-up operation (step B4), the part related to the migration design for system migration can be omitted.
Further, even if the maintenance current program source P2 is created in a manner deviating from the design standard 10 and the non-standard list 30 is created in the maintenance development, the system migration corresponding to the syntax of the non-standard list 30 is performed. The transition design can be performed at the stage of step B3, that is, prior to the catch-up work (step B4) (pre-empting the catch-up work). Conventionally (FIG. 1), after the catch-up operation (step A6), after the maintenance current program source P2 as a maintenance development product is acquired and parsed, the syntax of the non-standard list 30 is used. The corresponding syntax could not be specified, and the system migration migration design corresponding to the specified syntax could not be performed.
 上記のように、追いつき作業(ステップB4)の一部分を省略することができたり、コンバージョン開発の段階で先行してシステム開発の移行設計を行うことができたりする。その結果、ステップA6(図1)の追いつき作業と比較して、追いつき作業(ステップB4)の工期短縮や工数削減を達成することができ、本実施形態のシステム移行(符号M2)を、従来(図1参照)のシステム移行(符号M1)から繰り上げることができる(システム移行の早期化)。
 なお、ステップB1での、設計基準10およびコードチェックツール20の作成に要する期間や、ステップB3での基準外一覧30の反映に要する期間は、追いつき作業の短縮期間に比べて無視できるほど短い。
 上記のステップB1,B3,B4を実行するコンバージョン開発用サーバ5、および、ステップB2を実行する現行システム保守用PC2は、本発明のプログラムソース変換装置を構成し、本発明のプログラムソース変換方法を実行する。
As described above, a part of the catch-up work (step B4) can be omitted, or the system development transition design can be performed prior to the conversion development stage. As a result, compared with the catch-up work in step A6 (FIG. 1), it is possible to shorten the work period of the catch-up work (step B4) and reduce the number of man-hours. The system can be moved up from the system transition (reference numeral M1) in FIG. 1 (early system transition).
It should be noted that the period required to create the design standard 10 and the code check tool 20 in step B1 and the period required to reflect the non-standard list 30 in step B3 are so short that they can be ignored compared to the shortening period of the catch-up work.
The conversion development server 5 that executes the above steps B1, B3, and B4 and the current system maintenance PC 2 that executes step B2 constitute the program source conversion device of the present invention, and the program source conversion method of the present invention. Execute.
[コンバージョン開発の詳細、保守開発の詳細]
 図3を参照して、移行開発環境におけるコンバージョン開発の詳細手順、および、現行システム保守開発環境における保守開発の詳細手順について説明する。
 図3の左側に示すように、コンバージョン開発用サーバ5およびテストサーバ5tが配置されている移行開発環境では、移行性分析(ステップB11)、移行設計(ステップB12)、リバース(ステップB13)、プログラム変換(ステップB31)、変換テスト(ステップB32)、プログラム変換(ステップB41)、および、テスト(ステップB42)がこの順序で実行される。
[Conversion development details, maintenance development details]
With reference to FIG. 3, a detailed procedure of conversion development in the migration development environment and a detailed procedure of maintenance development in the current system maintenance development environment will be described.
As shown on the left side of FIG. 3, in the migration development environment in which the conversion development server 5 and the test server 5t are arranged, migration analysis (step B11), migration design (step B12), reverse (step B13), program Conversion (step B31), conversion test (step B32), program conversion (step B41), and test (step B42) are executed in this order.
 移行性分析(ステップB11)では、現行プログラムソースP1の構文解析などが行われる。
 移行設計(ステップB12)では、コーディングルール(例:変数命名、メソッドやクラスの設定)の設定などが行われる。移行設計(ステップB12)によって設計基準10が作成される。
 リバース(ステップB13)では、公知技術のパーサに移行設計(ステップB12)の結果を反映(リバース)することで、コードチェックツール20を作成する。
 上記の移行性分析(ステップB11)、移行設計(ステップB12)、リバース(ステップB13)は、ステップB1(図2)にて実行される。
In the migration analysis (step B11), syntax analysis of the current program source P1 is performed.
In the migration design (step B12), setting of coding rules (example: variable naming, method and class setting) is performed. The design standard 10 is created by the transition design (step B12).
In reverse (step B13), the code check tool 20 is created by reflecting (reversing) the result of the migration design (step B12) in a parser of known technology.
The above migration analysis (step B11), migration design (step B12), and reverse (step B13) are executed in step B1 (FIG. 2).
 プログラム変換(ステップB31)では、現行プログラムソースP1で使用されているプログラム言語を別のプログラム言語に変換して、新プログラムソースP3を作成する。
 変換テスト(ステップB32)では、テストサーバ5tによる新プログラムソースP3のテストを行う。
 上記のプログラム変換(ステップB31)および変換テスト(ステップB32)は、ステップB3(図2)にて実行される。
In the program conversion (step B31), the program language used in the current program source P1 is converted into another program language to create a new program source P3.
In the conversion test (step B32), a test of the new program source P3 is performed by the test server 5t.
The program conversion (step B31) and the conversion test (step B32) are executed in step B3 (FIG. 2).
 プログラム変換(ステップB41)では、保守済現行プログラムソースP2で使用されているプログラム言語を別のプログラム言語に変換して、保守済新プログラムソースP4を作成する。
 テスト(ステップB42)では、テストサーバ5tによる保守済新プログラムソースP4のテストを行う。
 上記のプログラム変換(ステップB41)および変換テスト(ステップB42)は、ステップB4(図2)にて実行される。
In the program conversion (step B41), the program language used in the maintained current program source P2 is converted into another program language to create a maintained new program source P4.
In the test (step B42), a test of the maintained new program source P4 by the test server 5t is performed.
The program conversion (step B41) and the conversion test (step B42) are executed in step B4 (FIG. 2).
 図3の右側に示すように、現行システム保守用PC2およびテストサーバ2tが配置されている現行システム保守開発環境では、基本設計(ステップB21)、詳細設計(ステップB22)、コーディング(ステップB23)、および、テスト(ステップB24)がこの順序で実行される。 As shown on the right side of FIG. 3, in the current system maintenance development environment in which the current system maintenance PC 2 and the test server 2t are arranged, basic design (step B21), detailed design (step B22), coding (step B23), And a test (step B24) is performed in this order.
 基本設計(ステップB21)では、現行プログラムソースP1の修正変更部分およびその部分の修正事項を決定する。基本設計(ステップB21)にて、設計基準10を適宜参照する。
 詳細設計(ステップB22)では、設計基準10になるべく即した態様でコーディングルールの設定などが行われる。詳細設計(ステップB22)が完了すると、保守済現行プログラムソースP2が作成される。
 コーディング(ステップB23)では、作成された保守済現行プログラムソースP2に対して、コードチェックツール20の出力結果を含めたコーディングレビューを行う。コーディングレビューは、繰り返し行われ、保守済現行プログラムソースP2に含まれるバグなどが取り除かれる。
 テスト(ステップB42)では、テストサーバ2tによる保守済現行プログラムソースP2のテストを行う。テスト(ステップB42)が完了すると、動作確認が保証された保守済現行プログラムソースP2が作成される。
 上記の基本設計(ステップB21)、詳細設計(ステップB22)、コーディング(ステップB23)、および、テスト(ステップB24)は、ステップB2(図2)にて実行される。
In the basic design (step B21), the modification change portion of the current program source P1 and the modification items of the portion are determined. In the basic design (step B21), the design standard 10 is appropriately referred to.
In the detailed design (step B22), the setting of the coding rule and the like are performed in a manner that is as close as possible to the design standard 10. When the detailed design (step B22) is completed, the maintained current program source P2 is created.
In coding (step B23), a coding review including the output result of the code check tool 20 is performed on the created maintained current program source P2. The coding review is repeatedly performed, and bugs and the like included in the maintained current program source P2 are removed.
In the test (step B42), a test of the current program source P2 that has been maintained by the test server 2t is performed. When the test (step B42) is completed, a maintained current program source P2 in which operation confirmation is guaranteed is created.
The basic design (step B21), detailed design (step B22), coding (step B23), and test (step B24) are executed in step B2 (FIG. 2).
≪構成≫
[リバース装置]
 図4を参照して本実施形態のリバース装置R(情報処理装置)について説明する。リバース装置Rは、リバース(図3のステップB13)を行う装置であって、コンバージョン開発サーバ5の一部となる装置である。リバース装置Rは、入力部、出力部、制御部、および記憶部といったハードウェアを含むコンピュータである。例えば、制御部がCPU(Central Processing Unit)から構成される場合、その制御部を含むコンピュータによる情報処理は、CPUによるプログラム実行処理で実現される。また、そのコンピュータが含む記憶部は、CPUの指令により、そのコンピュータの機能を実現するためのさまざまなプログラムを記憶する。これによりソフトウェアとハードウェアの協働が実現される。前記プログラムは、記録媒体に記録したり、ネットワークを経由したりすることで提供することができる。
≪Configuration≫
[Reverse device]
The reverse apparatus R (information processing apparatus) of this embodiment will be described with reference to FIG. The reverse device R is a device that performs reverse (step B13 in FIG. 3), and is a device that is a part of the conversion development server 5. The reverse device R is a computer including hardware such as an input unit, an output unit, a control unit, and a storage unit. For example, when 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 in accordance with instructions from the CPU. This realizes cooperation between software and hardware. The program can be provided by being recorded on a recording medium or via a network.
 リバース装置Rは、パーサ部r1(パーサ手段)と、設定部r2(設定手段)と、編集部r3と、ツール作成部r4(ツール作成手段)とを備える。パーサ部r1と、設定部r2と、編集部r3と、ツール作成部r4は、リバース装置Rの制御部の具体的な機能部である。また、リバース装置Rは、コードチェックプログラム14を備える。コードチェックプログラム14は、コードチェックツール20の一部を構成しており、コードチェックツール20の処理内容が記述されたプログラムソースである。コードチェックプログラム14は、リバース(図3のステップB13)にて作成され、リバース装置Rの記憶部に記憶されている。 The reverse device R includes a parser unit r1 (parser unit), a setting unit r2 (setting unit), an editing unit r3, and a tool creation unit r4 (tool creation unit). The parser unit r1, the setting unit r2, the editing unit r3, and the tool creation unit r4 are specific functional units of the control unit of the reverse device R. The reverse device R includes a code check program 14. The code check program 14 constitutes a part of the code check tool 20 and is a program source in which processing contents of the code check tool 20 are described. The code check program 14 is created in reverse (step B13 in FIG. 3) and stored in the storage unit of the reverse device R.
(パーサ部r1)
 パーサ部r1は、現行プログラムソースP1の構文解析を行う。現行プログラムソースP1の構文解析が完了すると、パーサ部r1は、現行プログラムソースP1に使用されているトークンおよび構文を特定することができる。パーサ部r1は、特定したトークンを保守前トークン一覧P1aとして出力し、特定した構文を保守前構文一覧P1bとして出力する。パーサ部r1は、プログラム言語ごとに用意することができる。
(Parser part r1)
The parser unit r1 performs syntax analysis of the current program source P1. When the parsing of the current program source P1 is completed, the parser unit r1 can specify the token and syntax used for the current program source P1. The parser unit r1 outputs the specified token as a pre-maintenance token list P1a, and outputs the specified syntax as a pre-maintenance syntax list P1b. The parser unit r1 can be prepared for each programming language.
(設定部r2)
 設定部r2は、新プログラムソースP3の設計基準10に基づいて、新プログラムソースP3に使用することが許可されている情報を許可情報11として設定する。許可情報11が示す許可とは、新プログラムソースP3を作成するコンバージョン開発側から保守済現行プログラムソースP2を作成する保守開発側に対する許可であり、追いつき作業(図2のステップB4)の短縮の観点から、保守済現行プログラムソースP2に対して、許可情報11に示す情報は使用してもよいことを意味する。
(Setting part r2)
The setting unit r2 sets information permitted to be used for the new program source P3 as the permission information 11 based on the design standard 10 of the new program source P3. The permission indicated by the permission information 11 is a permission from the conversion development side that creates the new program source P3 to the maintenance development side that creates the maintained current program source P2, and a viewpoint of shortening the catch-up work (step B4 in FIG. 2). Therefore, the information shown in the permission information 11 may be used for the maintained current program source P2.
 許可情報11は、追加トークン許可情報11a、追加構文許可情報11b、および、追加文字列許可情報11cを備える。
 追加トークン許可情報11aは、新プログラムソースP3に使用することが許可されているトークンを示す情報である。
 追加構文許可情報11bは、新プログラムソースP3に使用することが許可されている構文を示す情報である。
 追加文字列許可情報11cは、新プログラムソースP3に使用することが許可されている文字列を示す情報である。「文字列」とは、例えばコメント文であり、プログラムソースに用いられるコードのうちプログラムの動作に寄与しないものである。本明細書にて「文字列」という語は、左記の意味で用いることにする。
The permission information 11 includes additional token permission information 11a, additional syntax permission information 11b, and additional character string permission information 11c.
The additional token permission information 11a is information indicating tokens that are permitted to be used for the new program source P3.
The additional syntax permission information 11b is information indicating a syntax permitted to be used for the new program source P3.
The additional character string permission information 11c is information indicating a character string permitted to be used for the new program source P3. The “character string” is, for example, a comment sentence, and does not contribute to the operation of the program among codes used for the program source. In the present specification, the term “character string” is used in the meaning described on the left.
 例えば、現行プログラムソースP1に使用されているトークン、構文、文字列は、コンバージョン開発の開発対象とする情報であるため、許可情報11とすることが好ましい(保守前トークン一覧P1a中のトークンおよび保守前構文一覧P1b中の構文は許可情報11に分類される)。ただし、現行プログラムソースP1に使用されているトークン、構文、文字列の一部を許可情報11に含めないようにすることを妨げるものではない。また、コンバージョン開発側で、現行プログラムソースP1に使用されているトークン、構文、文字列以外のトークン、構文、文字列を適宜用意し、許可情報11に追加してもよい。 For example, since the token, syntax, and character string used in the current program source P1 are information to be developed for conversion development, it is preferable to use permission information 11 (tokens and maintenance in the pre-maintenance token list P1a). The syntax in the previous syntax list P1b is classified as permission information 11). However, this does not prevent the permission information 11 from including part of the token, syntax, and character string used in the current program source P1. On the conversion development side, a token, syntax, and character string other than the token, syntax, and character string used in the current program source P 1 may be appropriately prepared and added to the permission information 11.
 また、設定部r2は、新プログラムソースP3の設計基準10に基づいて、新プログラムソースP3に使用することが禁止されている情報を禁止情報12として設定する。禁止情報12が示す禁止とは、新プログラムソースP3を作成するコンバージョン開発側から保守済現行プログラムソースP2を作成する保守開発側に対する禁止であり、追いつき作業(図2のステップB4)の短縮の観点から、保守済現行プログラムソースP2に対して、禁止情報12に示す情報は使用してほしくない(または使用してはならないということにしてもよい)ことを意味する。 Further, the setting unit r2 sets information prohibited from being used for the new program source P3 as the prohibition information 12 based on the design standard 10 of the new program source P3. The prohibition indicated by the prohibition information 12 is a prohibition from the conversion development side that creates the new program source P3 to the maintenance development side that creates the maintained current program source P2, and is a viewpoint of shortening the catch-up work (step B4 in FIG. 2). This means that the information shown in the prohibition information 12 is not desired (or may not be used) for the maintained current program source P2.
 禁止情報12は、追加トークン禁止情報12a、追加構文禁止情報12b、および、追加文字列禁止情報12cを備える。
 追加トークン禁止情報12aは、新プログラムソースP3に使用することが禁止されているトークンを示す情報である。
 追加構文禁止情報12bは、新プログラムソースP3に使用することが禁止されている構文を示す情報である。
 追加文字列禁止情報12cは、新プログラムソースP3に使用することが禁止されている文字列を示す情報である。
The prohibition information 12 includes additional token prohibition information 12a, additional syntax prohibition information 12b, and additional character string prohibition information 12c.
The additional token prohibition information 12a is information indicating tokens that are prohibited from being used for the new program source P3.
The additional syntax prohibition information 12b is information indicating a syntax that is prohibited from being used for the new program source P3.
The additional character string prohibition information 12c is information indicating a character string prohibited from being used for the new program source P3.
 例えば、現行プログラムソースP1に使用されているトークン、構文、文字列は、コンバージョン開発の開発対象とする情報であるため、禁止情報12としないことが好ましい。ただし、現行プログラムソースP1に使用されているトークン、構文、文字列の一部を禁止情報12に含めるようにすることを妨げるものではない。また、コンバージョン開発側で、所定のトークン、構文、文字列を適宜用意し、禁止情報12に追加してもよい。
 上記した許可情報11および禁止情報12は、保守開発上の許容ルールを構成し、コンバージョン開発側から保守開発側に提示される。
For example, since the token, syntax, and character string used in the current program source P1 are information to be developed for conversion development, it is preferable not to use the prohibition information 12. However, it does not prevent the token, syntax, and part of the character string used in the current program source P1 from being included in the prohibition information 12. Moreover, the conversion development side may prepare a predetermined token, syntax, and character string as appropriate and add them to the prohibition information 12.
The permission information 11 and the prohibition information 12 described above constitute an allowance rule for maintenance development, and are presented from the conversion development side to the maintenance development side.
(編集部r3)
 編集部r3は、パーサ部r1から出力した、保守前トークン一覧P1aおよび保守前構文一覧P1b、並びに、設定部r2から出力した、許可情報11および禁止情報12を、所望の形式にまとめるように編集する。編集部r3は、まとめた情報をチェック情報13として出力する。
(Editor r3)
The editing unit r3 edits the pre-maintenance token list P1a and the pre-maintenance syntax list P1b output from the parser unit r1 and the permission information 11 and prohibition information 12 output from the setting unit r2 so as to be combined into a desired format. To do. The editing unit r3 outputs the collected information as check information 13.
(ツール作成部r4)
 ツール作成部r4は、チェック情報13とコードチェックプログラム14とをパッケージ化することで、コードチェックツール20(ツール)を作成する。
 ツール作成部r4が作成したコードチェックツール20、および、移行設計(図3のステップB12)によって作成された設計基準10は、現行システム保守開発環境のテストサーバ2tにインストールされる(図2参照)。なお、コードチェックツール20および設計基準10を、現行システム保守開発環境の現行システム保守用PC2にインストールしてもよい。
(Tool creation unit r4)
The tool creation unit r4 creates the code check tool 20 (tool) by packaging the check information 13 and the code check program 14.
The code check tool 20 created by the tool creation unit r4 and the design standard 10 created by the migration design (step B12 in FIG. 3) are installed in the test server 2t in the current system maintenance development environment (see FIG. 2). . The code check tool 20 and the design standard 10 may be installed in the current system maintenance PC 2 in the current system maintenance development environment.
[コードチェックツール20の詳細]
 図5に示すように、コードチェックツール20は、すでに説明したチェック情報13に加えて、パーサ部21および判定部22を備える。パーサ部21および判定部22は、コードチェックプログラム14を構成する。
[Details of Code Check Tool 20]
As shown in FIG. 5, the code check tool 20 includes a parser unit 21 and a determination unit 22 in addition to the check information 13 already described. The parser unit 21 and the determination unit 22 constitute a code check program 14.
(パーサ部21)
 パーサ部21は、保守後現行プログラムソースP5の構文解析を行う。保守後現行プログラムソースP5とは、保守開発によって、現行プログラムソースP1が暫定的にまたは確定的に修正変更されたものである。具体的には、保守後現行プログラムソースP5は、コーディング(図3のステップB23)が途中であるときや完了したときの(テスト前の)保守済現行プログラムソースP2であったり、テスト(図3のステップB42)が完了したときの保守済現行プログラムソースP2であったりする。
(Parser part 21)
The parser unit 21 performs syntax analysis of the current program source P5 after maintenance. The post-maintenance current program source P5 is one in which the current program source P1 is tentatively or definitely modified and changed by maintenance development. Specifically, the post-maintenance current program source P5 is the maintained current program source P2 when coding (step B23 in FIG. 3) is in progress or completed (before the test), or the test (FIG. 3). Or the maintained current program source P2 when step B42) is completed.
 パーサ部21は、保守後現行プログラムソースP5の構文解析が完了すると、保守後現行プログラムソースP5に使用されているトークンおよび構文を特定することができる。パーサ部21は、特定したトークンを保守後トークン一覧P5aとして出力し、特定した構文を保守後構文一覧P5bとして出力する。パーサ部21は、プログラム言語ごとに用意することができる。 When the parsing of the current program source P5 after maintenance is completed, the parser unit 21 can specify the token and syntax used in the current program source P5 after maintenance. The parser unit 21 outputs the specified token as a post-maintenance token list P5a, and outputs the specified syntax as a post-maintenance syntax list P5b. The parser unit 21 can be prepared for each programming language.
(判定部22)
 判定部22は、保守後現行プログラムソースP5に許可情報11および禁止情報12が使用されているか否かを判定する。具体的には、判定部22に、保守後トークン一覧P5a、保守後構文一覧P5b、および、コードチェックツール20が有するチェック情報13(図4)を入力する。また、保守後トークン一覧P5aとチェック情報13に含まれる保守前トークン一覧P1aとの差分を特定し、保守後構文一覧P5bとチェック情報13に含まれる保守前構文一覧P1bとの差分を特定する。また、特定したこれらの差分が許可情報11に分類されるか否か、かつ、禁止情報12に分類されるか否かを判定する。なお、判定部22の判定処理の詳細は後記する。
(Determination unit 22)
The determination unit 22 determines whether the permission information 11 and the prohibition information 12 are used in the current program source P5 after maintenance. Specifically, the post-maintenance token list P5a, the post-maintenance syntax list P5b, and the check information 13 (FIG. 4) of the code check tool 20 are input to the determination unit 22. Further, the difference between the post-maintenance token list P5a and the pre-maintenance token list P1a included in the check information 13 is specified, and the difference between the post-maintenance syntax list P5b and the pre-maintenance syntax list P1b included in the check information 13 is specified. Further, it is determined whether or not these specified differences are classified into the permission information 11 and whether or not the difference is classified into the prohibition information 12. Details of the determination process of the determination unit 22 will be described later.
 判定部22は、上記の判定の判定結果23をテストサーバ2tに出力させる。許可情報11に示されていない情報が保守後現行プログラムソースP5に使用されている、または、禁止情報12に示される情報が保守後現行プログラムソースP5に使用されているとき、判定部22は、使用されているこれらの情報の一覧を、基準外一覧30(図2参照)として判定結果23に含める。
 なお、判定部22による判定は、パーサ部21による構文解析を行った後に行うこともできるし、その構文解析を行いながら行うこともできる。
The determination unit 22 causes the test server 2t to output the determination result 23 of the above determination. When information not shown in the permission information 11 is used in the current program source P5 after maintenance or information shown in the prohibition information 12 is used in the current program source P5 after maintenance, the determination unit 22 A list of such information used is included in the determination result 23 as a non-standard list 30 (see FIG. 2).
The determination by the determination unit 22 can be performed after the syntax analysis by the parser unit 21 or can be performed while performing the syntax analysis.
 また、判定部22は、トークンおよび構文だけでなく、文字列に対しても上記と同様の判定を行うことができる。具体的には、まず、コードチェックツール20は、周知の技術によって、保守後現行プログラムソースP5から文字列を抽出し、保守後文字列一覧P5cを作成する。また、判定部22に、保守後文字列一覧P5cおよびチェック情報13(図4)を入力する。また、保守後文字列一覧P5cに含まれる文字列の各々が、許可情報11に分類されるか否か、かつ、禁止情報12に分類されるか否かを判定する。判定部22は、文字列に関して判定結果23をテストサーバ2tに出力させる。許可情報11に示されていない情報が保守後文字列一覧P5cに使用されている、または、禁止情報12に示される情報が保守後文字列一覧P5cに使用されているとき、判定部22は、使用されているこれらの情報の一覧を、基準外一覧30(図2参照)として判定結果23に含める。 Further, the determination unit 22 can perform the same determination as described above not only on tokens and syntax but also on character strings. Specifically, first, the code check tool 20 extracts a character string from the post-maintenance current program source P5 using a known technique, and creates a post-maintenance character string list P5c. Further, the post-maintenance character string list P5c and the check information 13 (FIG. 4) are input to the determination unit 22. Further, it is determined whether or not each of the character strings included in the post-maintenance character string list P5c is classified into the permission information 11 and the prohibition information 12. The determination unit 22 causes the test server 2t to output a determination result 23 regarding the character string. When information not shown in the permission information 11 is used in the post-maintenance character string list P5c, or when information shown in the prohibition information 12 is used in the post-maintenance character string list P5c, the determination unit 22 A list of such information used is included in the determination result 23 as a non-standard list 30 (see FIG. 2).
(判定部22の判定処理)
 図6に示すように、判定部22が保守後現行プログラムソースP5に対して行う、保守後現行プログラムソース判定処理は以下のとおりである。図6では、保守後現行プログラムソースP5の保守後構文一覧P5bに含まれる構文について説明する。
(Determination process of the determination unit 22)
As shown in FIG. 6, the post-maintenance current program source determination process performed by the determination unit 22 for the post-maintenance current program source P5 is as follows. FIG. 6 describes the syntax included in the post-maintenance syntax list P5b of the post-maintenance program source P5.
 まず、ステップS1にて、判定部22は、許可情報11の追加構文許可情報11bが、保守後構文一覧P5bを包含するか否かを判定する。包含する場合(ステップS1でYes)、保守後構文一覧P5b中の構文のすべてが、新プログラムソースP3に使用することが許可されている構文であることを意味しており、ステップS2に進む。一方、包含していない場合(ステップS1でNo)、保守後構文一覧P5b中の構文の少なくとも1つが、新プログラムソースP3に使用することが許可されていないことを意味しており、ステップS4に進む。 First, in step S1, the determination unit 22 determines whether or not the additional syntax permission information 11b of the permission information 11 includes the post-maintenance syntax list P5b. If included (Yes in step S1), it means that all of the syntaxes in the post-maintenance syntax list P5b are permitted to be used for the new program source P3, and the process proceeds to step S2. On the other hand, if it is not included (No in step S1), it means that at least one of the syntaxes in the post-maintenance syntax list P5b is not permitted to be used for the new program source P3. move on.
 次に、ステップS2にて、判定部22は、禁止情報12の追加構文禁止情報12bと、保守後構文一覧P5bとが互いに疎であるか否かを判定する。互いに疎である場合(ステップS2でYes)、保守後構文一覧P5b中の構文のいずれも、新プログラムソースP3に使用することが禁止されている構文に該当しないことを意味しており、ステップS3に進む。一方、互いに疎でない場合(ステップS2でNo)、保守後構文一覧P5b中の構文の少なくとも1つが、新プログラムソースP3に使用することが禁止されていることを意味しており、ステップS4に進む。 Next, in step S2, the determination unit 22 determines whether the additional syntax prohibition information 12b of the prohibition information 12 and the post-maintenance syntax list P5b are sparse. If they are sparse (Yes in step S2), it means that none of the syntaxes in the post-maintenance syntax list P5b corresponds to a syntax that is prohibited from being used in the new program source P3. Proceed to On the other hand, if they are not sparse (No in step S2), it means that at least one of the syntaxes in the post-maintenance syntax list P5b is prohibited from being used for the new program source P3, and the process proceeds to step S4. .
 次に、ステップS3にて、判定部22は、保守後構文一覧P5b中の構文が、許可情報11の追加構文許可情報11bのみから構成されている(設計基準10に従っている)ことを示すOK判定を出力する。
 また、ステップS4にて、判定部22は、保守後構文一覧P5b中の構文には、許可情報11の追加構文許可情報11bに該当しない構文が含まれている、または、禁止情報12の追加構文禁止情報12bに該当する構文が含まれている(設計基準から逸脱している)ことを示すNG判定を出力する。
 ステップS4の後、ステップS5では、判定部22は、保守後構文一覧P5b中の構文のうち、NG判定の要因となった構文を抽出し、基準外一覧30(許容ルール外の用法)に追加する。
 次に、ステップS6では、判定部22は、OK判定およびNG判定を合わせた判定結果23をテストサーバ2tに出力させる。
Next, in step S3, the determination unit 22 determines that the syntax in the post-maintenance syntax list P5b includes only the additional syntax permission information 11b of the permission information 11 (according to the design standard 10). Is output.
In step S4, the determination unit 22 includes a syntax not included in the additional syntax permission information 11b of the permission information 11 in the syntax in the post-maintenance syntax list P5b, or an additional syntax of the prohibition information 12 An NG determination indicating that the syntax corresponding to the prohibition information 12b is included (departs from the design standard) is output.
After step S4, in step S5, the determination unit 22 extracts the syntax that has caused the NG determination from the syntax in the post-maintenance syntax list P5b, and adds it to the non-standard list 30 (usage outside acceptable rules). To do.
Next, in step S6, the determination unit 22 causes the test server 2t to output a determination result 23 obtained by combining the OK determination and the NG determination.
 判定結果23は、移行開発環境のコンバージョン開発用サーバ5およびテストサーバ5tに送信される。コンバージョン開発側では、判定結果23を踏まえて、新プログラムソースP3を作成することができる。 The determination result 23 is transmitted to the conversion development server 5 and the test server 5t in the migration development environment. The conversion development side can create a new program source P3 based on the determination result 23.
 なお、上記の判定部22の処理の説明は、構文に関するものであったが、トークンおよび文字列の場合も同様のロジックで処理することができる。つまり、保守後構文一覧P5b中のトークンが許可情報11の追加トークン許可情報11aのみから構成されているか否かが判定される。また、保守後構文一覧P5b中の文字列が許可情報11の追加文字列許可情報11cのみから構成されているか否かが判定される。 Note that the above description of the processing of the determination unit 22 is related to the syntax, but a token and a character string can be processed with the same logic. That is, it is determined whether or not the token in the post-maintenance syntax list P5b is composed only of the additional token permission information 11a of the permission information 11. Further, it is determined whether or not the character string in the post-maintenance syntax list P5b is composed only of the additional character string permission information 11c of the permission information 11.
(まとめ)
 本実施形態によれば、現行プログラムソースP1のプログラム言語を変換して新プログラムソースP3を作成するコンバージョン開発と、現行プログラムソースP1の保守開発が並行している場合において、新プログラムソースP3に使用することが許可および禁止されている許可情報11および禁止情報12を設定し、コードチェックツール20によって、保守開発した保守後現行プログラムソースP5に許可情報11および禁止情報12が使用されているか否かを判定する。これにより、その判定結果に基づいて、保守開発によるプログラム修正変更分を的確に把握してから新プログラムソースP3のシステムテストなどを行うことができ、保守済現行プログラムソースP2に対する追いつき作業(図2のステップB4)の作業工数の見積もりを容易にするとともに、追いつき作業の工期短縮や工数削減(低減化)を達成することができる。
 したがって、保守開発が行われる現行システムから新システムへのシステム移行の早期化を実現することができる。
(Summary)
According to the present embodiment, conversion development for converting the program language of the current program source P1 to create a new program source P3 and maintenance development for the current program source P1 are used in parallel for the new program source P3. Permission information 11 and prohibition information 12 that are permitted and prohibited to be set, and whether or not the permission information 11 and the prohibition information 12 are used in the current program source P5 after maintenance developed by the code check tool 20 Determine. Thereby, based on the determination result, it is possible to perform a system test of the new program source P3 after accurately grasping the program correction change due to the maintenance development, and to catch up with the maintained current program source P2 (FIG. 2). In step B4), it is easy to estimate the work man-hours, and it is possible to reduce the work period of the catch-up work and reduce (reduce) the man-hours.
Therefore, it is possible to realize early system transition from the current system where maintenance development is performed to the new system.
 また、コードチェックツール20によって、保守後現行プログラムソースP5に基準外一覧30が存在しないこと、または、基準外一覧30が存在する場合にはその基準外一覧30をコンバージョン開発側で取得することができる。これにより、基準外一覧30が存在しなければ、保守済現行プログラムソースP2に対する追いつき作業では、システム移行の移行設計に関する部分を省略することができる。また、基準外一覧30が存在していたとしても、システム移行の移行設計を、追いつき作業に先行して行うことができる。その結果、追いつき作業のさらなる工期短縮や工数削減を達成することができる。 In addition, the code check tool 20 may indicate that the non-standard list 30 does not exist in the current program source P5 after maintenance, or if the non-standard list 30 exists, the non-standard list 30 may be acquired on the conversion development side. it can. As a result, if the non-standard list 30 does not exist, in the catch-up work for the current program source P2 that has been maintained, the part related to the system migration design can be omitted. Further, even if the non-standard list 30 exists, the system migration design can be performed prior to the catch-up work. As a result, it is possible to achieve further shortening of the work period and man-hour reduction of the catch-up work.
(変形例)
 本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の(a)、(b)のようなものがある。
 (a):現行プログラムソースのプログラム言語の変換というコンバージョン開発に限られず、同じ種類のサービスを提供するが、地域別に多少なりともプログラムソースの中身を変更する必要のあるシステム開発に適用することができる。つまり、A地域にて運用されているシステムの現行プログラムソースを利用してB地域にて運用する予定の新プログラムソースを作成する場合、A地域の現行プログラムソースの保守開発によるプログラム修正変更分を把握してから、B地域用の新プログラムソースの追いつき作業に取り掛かることができる。結果的に、その追いつき作業の作業量を低減させ、追いつき作業の工期短縮や工数削減を達成することができる。
(Modification)
The present invention is not limited to the above-described embodiment, and can be modified without departing from the spirit of the present invention. For example, there are the following (a) and (b).
(A): Not limited to conversion development, which is the conversion of the program language of the current program source, but can be applied to system development that provides the same type of service but needs to change the contents of the program source more or less by region. it can. In other words, when creating a new program source that is planned to be operated in the B region using the current program source of the system operated in the A region, the program correction change due to the maintenance development of the current program source in the A region After grasping, it is possible to start catching up with a new program source for the region B. As a result, the amount of the catch-up work can be reduced, and the work period of the catch-up work can be shortened and the number of steps can be reduced.
 (b):本実施形態では、ステップB3(図2)は、ステップA2の一部であるとし、追いつき作業(ステップB4)に先行して行われるものとして説明した。しかし、ステップB3を、ステップA2の一部とせず、ステップA2の後段の作業とし、追いつき作業(ステップB4)の前段の作業として取り扱ってもよい。この場合、新プログラムソースP3は、ステップA2の作業の結果物となり、ステップB3の作業の結果物とはならない。また、この場合、ステップB3は、コンバージョン開発用サーバ5が、ステップA2にて作成された新プログラムソースP3に、現行システム保守用PC2から取得した基準外一覧30を反映させる作業となる。ステップB3は、ステップA2と並行実施されるように取り扱うことができる。また、ステップB3とステップB4を合わせた作業を追いつき作業として取り扱うこともできる。 (B): In the present embodiment, step B3 (FIG. 2) is assumed to be a part of step A2, and has been described as being performed prior to the catch-up operation (step B4). However, step B3 may not be a part of step A2, but may be handled as a work subsequent to step A2 and handled as a work preceding the catch-up work (step B4). In this case, the new program source P3 becomes a result of the work in step A2, and does not become a result of the work in step B3. In this case, step B3 is an operation in which the conversion development server 5 reflects the non-standard list 30 acquired from the current system maintenance PC 2 in the new program source P3 created in step A2. Step B3 can be handled to be performed in parallel with step A2. Further, the work combining Step B3 and Step B4 can be handled as a catch-up work.
 また、本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
 本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
 その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
In addition, it is possible to realize a technique in which various techniques described in this embodiment are appropriately combined.
The software described in this embodiment can be realized as hardware, and the hardware can also be realized as software.
In addition, hardware, software, flowcharts, and the like can be changed as appropriate without departing from the spirit of the present invention.
 2   現行システム保守用PC
 2t  テストサーバ(テスト装置)
 5   コンバージョン開発用サーバ
 5t  テストサーバ
 P1  現行プログラムソース(保守前現行プログラムソース)
 P2  保守済現行プログラムソース
 P3  新プログラムソース
 P4  保守済新プログラムソース
 P5  保守後現行プログラムソース
 10  設計基準
 11  許可情報
 12  禁止情報
 13  チェック情報
 20  コードチェックツール
 21  パーサ部
 22  判定部
 23  判定結果
 30  基準外一覧
 R   リバース装置(情報処理装置)
 r1  パーサ部(パーサ手段)
 r2  設定部(設定手段)
 r3  編集部
 r4  ツール作成部(ツール作成手段)
2 PC for current system maintenance
2t test server (test equipment)
5 Conversion development server 5t Test server P1 Current program source (current program source before maintenance)
P2 Maintained current program source P3 New program source P4 Maintained new program source P5 Current program source after maintenance 10 Design standard 11 Permit information 12 Prohibition information 13 Check information 20 Code check tool 21 Parser part 22 Judgment part 23 Judgment result 30 Non-standard List R Reverse device (information processing device)
r1 parser section (parser means)
r2 setting part (setting means)
r3 editing part r4 tool creation part (tool creation means)

Claims (6)

  1.  第1のプログラムソースを第2のプログラムソースに変換するプログラムソース変換装置が、
     前記第1のプログラムソースを解析して許容される許容ルールをチェックするコードチェックツールを作成する工程と、
     前記第1のプログラムソースを前記第2のプログラムソースに変換する工程と、
     前記第1のプログラムソースに保守開発があった場合に、前記保守開発された第1のプログラムソースを、前記コードチェックツールを用いてチェックし、前記保守開発された第1のプログラムソースを前記変換済みの第2のプログラムソースに反映するための方針を決めるための、前記許容ルール外の用法を抽出する工程と、
     前記方針に基づいて前記保守開発された第1のプログラムソースを第2のプログラムソースに変換して前記変換済みの第2のプログラムソースに合流させる工程と、を実行する、
     ことを特徴とするプログラムソース変換方法。
    A program source conversion device for converting a first program source into a second program source,
    Creating a code check tool that analyzes the first program source and checks for allowed rules;
    Converting the first program source into the second program source;
    When the first program source is maintenance-developed, the maintenance-developed first program source is checked using the code check tool, and the maintenance-developed first program source is converted to the conversion. Extracting a usage outside the allowed rules to determine a policy to be reflected in the already-finished second program source;
    Performing the step of converting the first program source developed and maintained based on the policy into a second program source and merging with the converted second program source;
    The program source conversion method characterized by the above-mentioned.
  2.  第1のプログラムソースを第2のプログラムソースに変換するプログラムソース変換装置において、
     前記第1のプログラムソースを解析して許容される許容ルールをチェックするコードチェックツールを作成する手段と、
     前記第1のプログラムソースを前記第2のプログラムソースに変換する手段と、
     前記第1のプログラムソースに保守開発があった場合に、前記保守開発された第1のプログラムソースを、前記コードチェックツールを用いてチェックし、前記保守開発された第1のプログラムソースを前記変換済みの第2のプログラムソースに反映するための方針を決めるための、前記許容ルール外の用法を抽出する手段と、
     前記方針に基づいて前記保守開発された第1のプログラムソースを第2のプログラムソースに変換して前記変換済みの第2のプログラムソースに合流させる手段と、を備える、
     ことを特徴とするプログラムソース変換装置。
    In a program source conversion device for converting a first program source into a second program source,
    Means for analyzing the first program source and creating a code checking tool for checking permissible rules;
    Means for converting the first program source into the second program source;
    When the first program source is maintenance-developed, the maintenance-developed first program source is checked using the code check tool, and the maintenance-developed first program source is converted to the conversion. Means for extracting a usage outside the permissible rule for determining a policy to be reflected in the completed second program source;
    Means for converting the first program source developed and maintained based on the policy into a second program source and merging with the converted second program source;
    A program source conversion apparatus.
  3.  保守前現行プログラムソースの構文解析を行い、前記保守前現行プログラムソースに使用されているトークンおよび構文の一覧を作成するパーサ部と、
     新プログラムソースの設計基準に基づいて、前記新プログラムソースに使用することが許可されているトークン、構文、および文字列を示す許可情報、ならびに、前記新プログラムソースに使用することが禁止されているトークン、構文、および文字列を示す禁止情報を設定する設定部と、
     保守後現行プログラムソースに前記許可情報および前記禁止情報が使用されているか否かを判定するためのツールを作成するツール作成部と、を備える、
     ことを特徴とする情報処理装置。
    A parser unit that parses the current program source before maintenance and creates a list of tokens and syntax used in the current program source before maintenance;
    Based on the design criteria of the new program source, permission information indicating tokens, syntax, and character strings permitted to be used for the new program source, and use for the new program source are prohibited. A setting section for setting prohibition information indicating a token, syntax, and character string;
    A tool creation unit that creates a tool for determining whether the permission information and the prohibition information are used in the current program source after maintenance,
    An information processing apparatus characterized by that.
  4.  前記ツール作成部が作成したツールは、
     前記保守後現行プログラムソースのテストを行うテスト装置にて動作した場合、前記許可情報に示されていない情報が前記保守後現行プログラムソースに使用されている、または、前記禁止情報に示される情報が前記保守後現行プログラムソースに使用されているとき、前記使用されているこれらの情報の一覧を、前記テスト装置に出力させる、
     ことを特徴とする請求項3に記載の情報処理装置。
    The tool created by the tool creation unit is
    When operating in a test apparatus that tests the current program source after maintenance, information not shown in the permission information is used for the current program source after maintenance, or information shown in the prohibition information is When used in the current program source after the maintenance, the list of these used information is output to the test device.
    The information processing apparatus according to claim 3.
  5.  情報処理装置が、
     保守前現行プログラムソースの構文解析を行い、前記保守前現行プログラムソースに使用されているトークンおよび構文の一覧を作成するステップと、
     新プログラムソースの設計基準に基づいて、前記新プログラムソースに使用することが許可されているトークン、構文、および文字列を示す許可情報、ならびに、前記新プログラムソースに使用することが禁止されているトークン、構文、および文字列を示す禁止情報を設定するステップと、
     保守後現行プログラムソースに前記許可情報および前記禁止情報が使用されているか否かを判定するためのツールを作成するステップと、を実行する、
     ことを特徴とする情報処理方法。
    Information processing device
    Parsing the current program source before maintenance and creating a list of tokens and syntax used in the current program source before maintenance;
    Based on the design criteria of the new program source, permission information indicating tokens, syntax, and character strings permitted to be used for the new program source, and use for the new program source are prohibited. Setting forbidden information indicating tokens, syntax, and strings;
    Creating a tool for determining whether the permission information and the prohibition information are used in the current program source after maintenance; and
    An information processing method characterized by the above.
  6.  コンピュータを、
     保守前現行プログラムソースの構文解析を行い、前記構文解析に基づいて、前記保守前現行プログラムソースに使用されているトークンおよび構文の一覧を作成するパーサ手段、
     新プログラムソースの設計基準に基づいて、前記新プログラムソースに使用することが許可されているトークン、構文、および文字列を示す許可情報、ならびに、前記新プログラムソースに使用することが禁止されているトークン、構文、および文字列を示す禁止情報を設定する設定手段、
     保守後現行プログラムソースに前記許可情報および前記禁止情報が使用されているか否かを判定するためのツールを作成するツール作成手段、
     として機能させるためのプログラム。
    Computer
    Parser means for parsing the current program source before maintenance and creating a list of tokens and syntax used in the current program source before maintenance based on the parsing;
    Based on the design criteria of the new program source, permission information indicating tokens, syntax, and character strings permitted to be used for the new program source, and use for the new program source are prohibited. Setting means for setting prohibited information indicating token, syntax, and character string,
    Tool creation means for creating a tool for determining whether the permission information and the prohibition information are used in the current program source after maintenance;
    Program to function as.
PCT/JP2017/011471 2016-03-30 2017-03-22 Program source conversion method, program source conversion apparatus, information processing apparatus, information processing method, and program WO2017170045A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201780022206.6A CN109074254B (en) 2016-03-30 2017-03-22 Program source conversion method and program source conversion device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016069300A JP6653205B2 (en) 2016-03-30 2016-03-30 Program source conversion method, program source conversion device, information processing device, information processing method, and program
JP2016-069300 2016-03-30

Publications (1)

Publication Number Publication Date
WO2017170045A1 true WO2017170045A1 (en) 2017-10-05

Family

ID=59964446

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/011471 WO2017170045A1 (en) 2016-03-30 2017-03-22 Program source conversion method, program source conversion apparatus, information processing apparatus, information processing method, and program

Country Status (3)

Country Link
JP (1) JP6653205B2 (en)
CN (2) CN109074254B (en)
WO (1) WO2017170045A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02245875A (en) * 1989-03-20 1990-10-01 Fujitsu Ltd Information conversion managing and controlling system
JP2008305386A (en) * 2007-05-08 2008-12-18 Systems:Kk Program pattern analyzing device, pattern appearance status information production method, pattern information creation device and program
JP2012053657A (en) * 2010-09-01 2012-03-15 Systems:Kk Information processor, information processing method, and program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI259969B (en) * 2004-05-18 2006-08-11 Carry Computer Eng Co Ltd Method and system for show store apparatus volume label word
JP2012059026A (en) * 2010-09-09 2012-03-22 Hitachi Ltd Source code conversion method and source code conversion program
CN103942140A (en) * 2013-12-19 2014-07-23 江苏锐天信息科技有限公司 Automatic testing program conversion method
CN105426711B (en) * 2015-11-18 2018-05-15 北京理工大学 A kind of computer software source code similarity detection method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02245875A (en) * 1989-03-20 1990-10-01 Fujitsu Ltd Information conversion managing and controlling system
JP2008305386A (en) * 2007-05-08 2008-12-18 Systems:Kk Program pattern analyzing device, pattern appearance status information production method, pattern information creation device and program
JP2012053657A (en) * 2010-09-01 2012-03-15 Systems:Kk Information processor, information processing method, and program

Also Published As

Publication number Publication date
CN113986253A (en) 2022-01-28
JP6653205B2 (en) 2020-02-26
CN109074254A (en) 2018-12-21
CN109074254B (en) 2021-12-24
JP2017182491A (en) 2017-10-05

Similar Documents

Publication Publication Date Title
CN106528100B (en) System and method for model-based techniques and processes for safety-critical software development
Yue et al. RTCM: a natural language based, automated, and practical test case generation framework
JP6268029B2 (en) Test case generation apparatus and test case generation method
JP6479184B2 (en) Computer-executable model reverse engineering method and apparatus
US8326867B2 (en) Apparatus for generating job network flow from job control statement described in job control language and its method
Paiva et al. End-to-end automatic business process validation
Ulrich et al. The ETSI test description language TDL and its application
Svendsen et al. The future of train signaling
CN108459846B (en) Software cloud customization method and platform
CN103377076A (en) Method and system for adjusting task execution plans during operation
WO2017170045A1 (en) Program source conversion method, program source conversion apparatus, information processing apparatus, information processing method, and program
JP2008305079A (en) Requirement specification automatic verification method
WO2004051470A1 (en) Program automatic converting method and program automatic converting device
JP6058498B2 (en) Compiling method, program, and compiling device
Lin et al. Support for safety case generation via model transformation
CN114755990B (en) Low-code control system and control method for industrial automation production line
Gerdes et al. Linking unit tests and properties
JP2006079484A (en) Source program conversion program for system migration
CN117709256B (en) Verification information generation method and device, electronic equipment and storage medium
Jirapanthong Personal software process with automatic requirements traceability to support startups
CN109669868A (en) The method and system of software test
US20120054713A1 (en) Method for Generating Specifications of Static Test
JP5097070B2 (en) Property file reading system and method and program
JPH10207727A (en) System for automatically generating test program
Hausknecht et al. BIM/IFC software certification process by buildingSMART

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 17774586

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17774586

Country of ref document: EP

Kind code of ref document: A1