Abstract:
The present invention prepares the parameter conversion identification files as the definition information of parameter description for the execution environment setting files for use in a program development server and a connection test server, respectively. In the connection test server, a parameter conversion table is created on the basis of the parameter conversion identification files, and the execution environment parameters of the execution environment setting file acquired from the program development server are converted on the basis of the parameter conversion table to create an execution environment setting file suitable for its own apparatus. Using a location identification file, each file acquired from the program development server is copied into a designated directory to construct an execution environment for the connection test server.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    1. Field of the Invention  
           [0002]    This invention relates to a distributed development support technique for application programs. More particularly, the present invention relates to an execution environment constructing method and an execution environment constructing program in which an execution environment setting file of a program in a program development server is automatically converted into an execution environment setting file in a connection test server, in the case where the program development and the connection test are made in different servers.  
           [0003]    2. Description of the Related Art  
           [0004]    Conventionally, when the program development and the connection test were made in different servers, a source program of developed program was transferred off line from the program development server to the connection test server, where the source program was compiled and linked, and an execution environment setting file for enabling the compiled and linked program to be operated in the connection test server was defined in accordance with the connection test server, whereby a connection test environment was newly created mainly manually. The execution environment setting file is a file defining the execution environment parameters required for executing a software program.  
           [0005]    Also, conventionally, when the program development server was in a remote site and a developer lives in the remote site, the developer often had to come to a place where the connection test server was installed to modify errors arising in the connection test and to make a test in the connection test server.  
           [0006]    In recent years, with the advent of JAVA (Registered Trademark of Sun Microsystems, Inc.), the program development not dependent on a platform that is an environment in operating the program has been allowed. Particularly in the field of a WEB application, with the advent of Servlet, JSP (Java server pages) and JDBC (Java database connectivity), the application development not dependent on the WEB server and RDB (relational database), in addition to the platform, has been allowed.  
           [0007]    Along with the spread of the Internet and the progress of security technologies, there has been an attempt in which a JAVA program is developed in the program development server in the remote site, including the overseas. Then, a JAVA bite code (JAVA program) not dependent on the platform and an execution environment setting file of the program development server are file transferred to the connection test server where the connection test is made.  
           [0008]    However, with the prior art, it was required to manually change an application file name, a data file name, an execution environment setting file storage directory name, and a JAVA install directory name, which are described in the execution environment setting file, into those for the connection test server. Also, for the WEB application, it was required to manually change a URL name, a host name, and a port number into those for the connection test server. Therefore, the following problems arose.  
           [0009]    (1) When the execution environment setting file of the program development server is changed to the execution environment setting file of the connection test server, it is difficult to change the execution environment setting file in the connection test server, if the execution environment of the program development server is unknown. Also, it is difficult for the program development server to change the execution environment setting file in accordance with the connection test server, if the execution environment of the connection test server is unknown.  
           [0010]    (2) In manually changing the execution environment setting file, if there is a great number of execution environment setting files or change items, the amount of workload of modifying operation will be increased by taking a lot of time to make a change process, and a change error will be easily caused. Moreover, since the change error is unknown before the connection test is performed, it takes a lot of time until the error correction is ended and the connection test is ready.  
           [0011]    (3) When the program development server is in a remote site and the developer also lives in a remote site, the developer has to come to the place where the test server is installed in order to modify errors caused owing to the execution environment and make the test, when the connection test is made in the connection test server. Therefore, the time for the developer to move to the place as well as the time for the modification of errors and the test are required, and the expense for the developer to move from the remote site is needed.  
         SUMMARY OF THE INVENTION  
         [0012]    The present invention has been achieved to solve the above-mentioned problems of the prior art in modifying the execution environment setting file, and it is an object of the invention to provide a technology for automatically converting the execution environment setting file without changing it manually to take a lot of time and cause many errors.  
           [0013]    To accomplish the above object, this invention prepares a parameter conversion identification file defining the parameter description for the execution environment setting file for each of the program development server and the connection test server. When converting the execution environment file of the program development server to the execution environment file of the connection test server, a parameter conversion table is created by collating the parameter conversion identification files for both the servers, and an execution environment setting file is automatically converted using the parameter conversion table.  
           [0014]    Also, a program, data, an execution environment setting file and a parameter conversion identification file are transferred as a temporary file, which is created under the temporary directory, from the program development server to the connection test server, where each file is copied into a directory designated by a location identification file prepared on the connection test server.  
           [0015]    More specifically, in the connection test server, the program acquired from the program development server, the execution environment setting file storing information of execution environment for that program in the program development server, and a parameter conversion setting file storing definition information of the parameter description for the execution environment setting file in the program development server are acquired. And the parameter conversion table describing the conversion information of the execution environment setting file is created from the parameter conversion setting file acquired from the program development server. And the parameter conversion setting file storing the definition information of the parameter description for the execution environment setting file in the program development server, and the execution environment setting file acquired from the program development server is automatically converted into the execution environment setting file in the connection test server, on the basis of the information of that parameter conversion table.  
           [0016]    Employing a location identification file storing the location identification information defined commonly in the program development server and the connection test server, and the associated information between the directory information for storing the file in the connection test server and the file name for use in the connection test server, each file acquired from the program development server is copied into a directory defined in the location identification file with a file name defined in the location identification file.  
           [0017]    The above processes can be implemented using a computer and a software program. The software program is stored in a suitable recording medium, such as a portable medium memory, a semiconductor memory, or a hard disk, which is readable by the computer.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0018]    [0018]FIG. 1 is a block diagram showing a configuration example of a system that implements the present invention.  
         [0019]    [0019]FIGS. 2A and 2B are tables showing an environment example of each server in this embodiment.  
         [0020]    [0020]FIG. 3 is a table exemplifying a location identification file for the program development server in this embodiment.  
         [0021]    [0021]FIGS. 4A and 4B are tables exemplifying a parameter conversion identification file in this embodiment.  
         [0022]    [0022]FIG. 5 is a table exemplifying a parameter conversion table in this embodiment.  
         [0023]    [0023]FIG. 6 is a table exemplifying a location identification file for the connection test server in this embodiment.  
         [0024]    [0024]FIGS. 7A and 7B are lists exemplifying an execution environment setting file in this embodiment.  
         [0025]    [0025]FIG. 8 is a processing flowchart of the system in this embodiment.  
         [0026]    [0026]FIG. 9 is a flowchart of a file transfer process in this embodiment.  
         [0027]    [0027]FIGS. 10A and 10B are flowcharts of a parameter conversion table creating process in this embodiment.  
         [0028]    [0028]FIG. 11 is a flowchart of a file creating process in this embodiment.  
         [0029]    [0029]FIG. 12 is a flowchart of a conversion file creating process in this embodiment.  
         [0030]    [0030]FIG. 13 is a flowchart of a temporary file deleting process in this embodiment.  
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT  
       [0031]    A preferred embodiment of the present invention will be described below with reference to the accompanying drawings. FIG. 1 is a block diagram showing a configuration example of a system that implements the present invention. In this embodiment, an application program developed in a program development server  10  is subjected to a connection test in a connection test server  20 . The application program developed in the program development server  10  is transferred to the connection test server  20  via a network  30  such as the Internet. The program development server  10  and the connection test server  20  are in mutually different execution environments.  
         [0032]    [0032]FIGS. 2A and 2B are tables showing an environment example of each server in this embodiment. FIG. 2A is an environment example of the program development server  10  in this embodiment, using the Windows NT made by Microsoft Inc. as the operating system. FIG. 2B is an environment example of the connection test server  20  in this embodiment, using the Solaris made by Sun Microsystems Inc. as the OS. The program environments to be treated are the Java environment and the Servlet environment, which are common to both the servers.  
         [0033]    The program development server  10  is a computer consisting of a CPU and a memory, and comprises a temporary file creating section  11 , a temporary file storing section  12  and a temporary file sending section  13 , which are configured by the software programs. The connection test server  20  is a computer consisting of a CPU and a memory, and comprises a temporary file receiving section  21 , a temporary file storing section  22 , a parameter conversion table creating section  23 , a file creating section  24 , and a temporary file deleting section  25 , which are configured by the software programs.  
         [0034]    The program development server  10  has an application file  101  and a data file  102  that are already developed, and an execution environment setting file  103  storing information of an execution environment for the application file and the data file on the program development server  10 . To copy the program, data and the execution environment from the program development server  10  to the connection test server  20  and change them for the execution environment for the connection test server  20 , a parameter conversion identification file  104  storing the definition of parameter description within the execution environment setting file  103  is also prepared. Also, a location identification file  105  storing a storage directory of each file on the program development server  10  is prepared.  
         [0035]    In the connection test server  20 , a parameter conversion identification file  204  storing the definition of parameter description for an execution environment setting file  203  for the connection test server  20  is prepared. Also, a location identification file  205  storing the storage directory of each file transferred from the program development server  10  on the connection test server  20  is prepared.  
         [0036]    In the program development server  10 , the temporary file creating section  11  reads each of the application file  101 , the data file  102 , the execution environment setting file  103 , and the parameter conversion identification file  104  from the storage directory in the order of records described in the location identification file  105 . Each read file is copied to the temporary file storing section  12  that is a temporary directory in the program development server  10  as a temporary file (which is created under the temporary directory) having a file name of a location identifier described in the location identification file  105 . The temporary file sending section  13  sends each temporary file in the temporary file storing section  12  to the connection test server  20 .  
         [0037]    [0037]FIG. 3 is a table exemplifying the location identification file  105  in the program development sever  10  in this embodiment. In the program development server  10 , each file described in a file name field of the location identification file  105  is stored in each directory described in a storage directory field. A location identifier is a file name of a temporary file when the file is temporary file. This location identifier is defined commonly in the program development server  10  and the connection test server  20 . A conversion flag field indicates whether or not it is required to change the contents of the file when the execution environment is changed. In FIG. 3, it is necessary that the contents of the file are changed if the conversion flag is “yes”, while it is unnecessary that the contents are changed if the conversion flag is “no”.  
         [0038]    In the connection test server  20 , the temporary file receiving section  21  receives each temporary file from the program development server  10 , and stores it in the temporary file storing section  22  that is a temporary directory in the connection test server  20 . The parameter conversion table creating section  23  creates a parameter conversion table  206  by discriminating a temporary file of the parameter conversion identification file  104  in the program development server  10  from the temporary files of the temporary file storing section  22  in terms of the location identifier, and collating it with the parameter conversion identification file  204  in the connection test server  20 .  
         [0039]    [0039]FIGS. 4A and 4B are tables exemplifying the parameter conversion identification files in this embodiment. FIG. 4A is an example of the parameter conversion identification file  104  in the program development server  10 , and FIG. 4B is an example of the parameter conversion identification file  204  in the connection test server  20 . In FIGS. 4A and 4B, a location identifier field indicates a location identifier (file name in temporary file) of a file subject to conversion, and a parameter field indicates a parameter to be converted.  
         [0040]    A parameter identifier field is a field recording an identifier for associating the parameter of FIG. 4A and the parameter of FIG. 4B. For example, there is an association in which the parameter “port=8009” for the parameter identifier “port” in FIG. 4A is converted to the parameter “port=9001” for the parameter identifier “port” in FIG. 4B.  
         [0041]    [0041]FIG. 5 is a table exemplifying the parameter conversion table  206  in this embodiment. This parameter conversion table  206  associates the parameters having the same location identifier and parameter identifier in the parameter conversion identification files  104  and  204  of FIGS. 4A and 4B, and is created by extracting the program development server parameter from FIG. 4A and the connection test server parameter from FIG. 4B. In the file indicated by the location identifier, the parameter described in the program development server parameter field is converted into the parameter described in the connection test server parameter field.  
         [0042]    [0042]FIG. 6 is a table exemplifying the location identification file  205  in the connection test server  20  in this embodiment. Each temporary file with conversion flag of “no” is stored in a designated storage directory with a designated file name without conversion by the file creating section  24 . A temporary file “jswatch” of the execution environment setting file  103  with conversion flag of “yes” is converted in accordance with the parameter conversion table  206  as shown in FIG. 5, and is stored in a directory “/home/webapl/opt/FJSVjs2” as the execution environment setting file  203  with a file name “jswatch.conf”.  
         [0043]    The file creating section  24  stores each temporary file within the temporary file storing section  22  in a designated storage directory with a designated file name in accordance with the location identification file  205  in the connection test server  20 . Then, the file with conversion flag of “no” is stored without conversion, while the file with conversion flag of “yes” is stored after conversion by referring to the parameter conversion table  206 . In this manner, the application file  201 , the data file  202 , and the execution environment setting file  203  that are executable in the connection test server  20  are automatically set up in the connection test server  20 .  
         [0044]    [0044]FIGS. 7A and 7B are lists exemplifying the execution environment setting files in this embodiment. FIG. 7A is an example of the execution environment setting file  103  in the program development server  10 , and FIG. 7B is an example of the execution environment setting file  203  in the connection test server  20 . In the file creating section  24 , a temporary file of the execution environment setting file  103  in FIG. 7A is turned into the execution environment setting file  203  in FIG. 7B, since the parameter described in the program development server parameter in the parameter conversion table  206  in FIG. 5 is converted into the parameter described in the connection test server parameter at the same line in the parameter conversion table  206  in FIG. 5.  
         [0045]    The temporary file deleting section  25  deletes all unnecessary temporary files within the temporary file storing section  22 , after the file creation by the file creating section  24  is completely ended.  
         [0046]    [0046]FIG. 8 is a processing flowchart of the system in this embodiment. First, in the program development server  10 , the temporary file creating section  11  creates a temporary file with a file name of a location identifier designated in the location identification file  105  for each file to be transferred. Then, the temporary file sending section transfers the temporary file to the connection test server  20  (step S 1 ). In this example, the temporary file is created for each file to be transferred, and then individually transferred. However, a plurality of temporary files may be collectively compressed and transferred, using an existing archive. The cost of transfer can be reduced with compressing the plurality of files.  
         [0047]    In the connection test server  20 , the temporary file receiving section  21  stores each temporary file received from the program development server  10  in the temporary file storing section  22 . Then, the parameter conversion table creating section  23  extracts a temporary file of the parameter conversion identification file  104  by confirming the location identifier, and creates a parameter conversion table  206  from the temporary file and the parameter conversion identification file  204  of the connection test server  20  (step S 2 ).  
         [0048]    The file creating section  24  reads sequentially the records of the location identification file  205  (step S 3 ). If reading of all the records is ended, the process jumps to step S 8  (step S 4 ). If one record is read, the file creating section  24  confirms a conversion flag field of that record (step S 5 ). If the conversion flag is “no”, the file creating section  24  copies a temporary file indicated by the location identification field of the record in a directory indicated by the storage directory field of the record with a file name indicated by the file name field of the record (step S 6 ), and then the process returns to step S 3 .  
         [0049]    At step S 5 , if the conversion flag field of the record is “yes”, the file creating section  24  converts the contents of the temporary file indicated by the location identifier field of the record in accordance with the parameter conversion table  206 , and copies the converted temporary file in a directory indicated by the storage directory field of the record with a file name indicated by the file name field of the record (step S 7 ). Then, the process returns to step S 3 . If reading of the records is ended (step S 4 ), the temporary file deleting section  25  deletes the temporary file stored in the temporary file storing section  22  (step S 8 ), and the process is ended.  
         [0050]    The above processes will be further described below with reference to a detailed flowchart. FIG. 9 is a flowchart of a file transfer processing in this embodiment. In the program development server  10 , the temporary file creating section  11  reads sequentially the records of the location identification file  105  (step S 10 ). If reading of the records is ended, the transfer process is ended (step S 11 ). If one record is read, the location identifier, the temporary file creating section  11  extracts the storage directory and the file name from the read record (step S 12 ), and copies a file indicated by the extracted file name from the directory indicated by the extracted storage directory to the temporary file storing section  12  as a temporary file with a file name of the location identifier (step S 13 ). The temporary file sending section  13  transfers the temporary file to the connection test server  20  (step S 14 ), and the process returns to step S 10 . The above processes are repeated until reading of the records in the location identification file  105  is ended.  
         [0051]    [0051]FIGS. 10A and 10B are flowcharts for creating the parameter conversion table in this embodiment. In the connection test server  20 , the parameter conversion table creating section  23  initializes a counter of the number of conversion data (the number of entries in the parameter conversion table  206 ) in the parameter conversion table  206  to zero (step S 20 ). The parameter conversion table creating section  23  sequentially reads the records of the parameter conversion identification file  204  on the connection test server  20  (step S 21 ). Until reading of the records is ended (step S 22 ), The parameter conversion table creating section  23  extracts the location identifier, the parameter identifier, and the parameter (connection test server parameter) from the read record, and records them in the parameter conversion table  206  (step S 23 ). The conversion data number counter in the parameter conversion table  206  is incremented by one (step S 24 ), and the process returns to step S 21 .  
         [0052]    If reading of all the records is ended (step S 22 ), a loop number counter is initialized to zero (step S 25 ). This loop number is employed as an index value specifying the record position in the parameter conversion table  206  in the following processing.  
         [0053]    Then, the file creating section  24  reads sequentially the records from the temporary file of the parameter conversion identification file  104  on the program development server  10  in the temporary file storing section  22  (step S 26 ). If reading of all the records is ended (step S 27 ), the process is ended. If one record is read, the file creating section  24  extracts the location identifier, the parameter identifier and the parameter (program development server parameter) from the read record (step S 28 ). The loop number counter is incremented by one (step S 29 ). And, the file creating section  24  extracts the location identifier and the parameter identifier of the record in the line of the parameter conversion table  206  indicated by the loop number (step S 30 ).  
         [0054]    Subsequently, the file creating section  24  determines whether or not the location identifier and the parameter identifier extracted at step S 28  are matched with the location identifier and the parameter identifier extracted at step S 30  (step S 31 ). If matched, the file creating section  24  adds the parameter (program development server parameter) extracted at step S 28  to the record in the line of the parameter conversion table  206  indicated by the loop number (step S 32 ), and then the process returns to step S 25 .  
         [0055]    If unmatched at step S 31 , the file creating section  24  compares the loop number and the conversion data number (step S 33 ). If the loop number is less than the conversion data number, the process returns to step S 29 , while if the loop number is greater than or equal to the conversion data number, the process returns to step S 25 .  
         [0056]    [0056]FIG. 11 is a flowchart of a file creating process in this embodiment. First, the file creating section  24  reads sequentially the records of the location identification file  205  on the connection test server  20  (step S 40 ). If reading of all the records is ended (step S 41 ), the process is ended.  
         [0057]    If one record is read, the file creating section  24  confirms a conversion flag of the read record (step S 42 ). If the conversion flag is “yes”, a conversion file creating process is made (step S 43 , detailed below with reference to FIG. 12), and the process returns to step S 40 .  
         [0058]    At step S 42 , if the conversion flag is “no”, the file creating section  24  extracts the location identifier, the storage directory and the file name from the read record (step S 44 ), and copies a temporary file in the temporary file storing section  22  corresponding to the extracted location identifier in the extracted storage directory with the extracted file name (step S 45 ), and the process returns to step S 40 .  
         [0059]    [0059]FIG. 12 is a flowchart of a conversion file creating process in this embodiment. A new file is opened with a designated file name in a storage directory designated by the location identification file  205  (step S 50 ). The file creating section  24  reads sequentially the records of the temporary file with the conversion specified (step S 51 ). If reading of all the records is ended (step S 52 ), the process jumps to step S 60 . If one record is read, a loop number (index value specifying the record position in the parameter conversion table  206 ) counter is initialized to zero (step S 53 ). And, the loop number counter is incremented by one (step S 54 ).  
         [0060]    Then, the file creating section  24  determines whether or not there is a portion in a character string of the record read at step S 52  that is matched with the program development server parameter in the line of the parameter conversion table  206  indicated by the loop number (step S 55 ). If there is a matched portion (step S 56 ), the file creating section  24  converts the corresponding character string by the connection test server parameter in the line of the parameter conversion table  206  indicated by the loop number (step S 57 ). The file creating section  24  compares the loop number and the conversion data number that is the number of records in the parameter conversion table  206  (step S 58 ), and if the loop number is less than the conversion data number, the process returns to step S 54 .  
         [0061]    At step S 58 , if the loop number is greater than or equal to the conversion data number, the file creating section  24  writes the record in the file opened at step S 50  (step S 59 ), and the process returns to step S 51 . At step S 56 , if there is no matched portion, the process jumps to step S 58 . At step S 52 , if reading of all the records is ended, the file opened at step S 50  is closed (step S 60 ), and the process is ended.  
         [0062]    [0062]FIG. 13 is a flowchart of a temporary file deleting process in this embodiment. The temporary file deleting section  25  reads sequentially the records of the location identification file  205  on the connection test server  20  (step S 70 ). If reading of all the records is ended (step S 71 ), the process is ended.  
         [0063]    If one record is read, the temporary file deleting section  25  extracts the location identifier from the read record (step S 72 ), and deletes the temporary file with a file name of the extracted location identifier from the temporary file storing section  22  (step S 73 ), and the process returns to step S 70 .  
         [0064]    In the above embodiment, an instance where the program and the execution environment are transferred from the program development server  10  to the connection test server  20  has been described. However, the present invention is also applicable to an instance where the file and the execution environment are transferred from the program development server  10  or the connection test sever  20  to another processing unit, whereby the execution environment can be automatically constructed.  
         [0065]    As described above, with the present invention, there is no need for manually creating or changing the execution environment setting file in the connection test server, whereby it is possible to shorten the preparation time for the connection test. Also, because there is less error caused by manually changing the execution environment, it is easier to investigate an abnormal cause than conventionally, if a non-conformity takes place in the connection test, especially when the program development server and the developer are in the remote site away from the connection test server. The developer does not need to take an official trip to the remote site where the connection test server is installed by utilizing a network such as the Internet, as needed.  
         [0066]    Also, in an instance where the program and the execution environment setting file are transferred from the program development server or the connection test server to other plural processing units in different execution environments, the processing units on the receiving side can automatically convert the execution environment setting file only by preparing the parameter conversion identification file appropriate for the processing units of theirs, without knowing the execution environment of apparatus on the transferring side, and thereby easily construct the execution environment.