WO2005020070A1 - プログラム生成システム、プログラム生成プログラムおよびプログラム生成モジュール - Google Patents
プログラム生成システム、プログラム生成プログラムおよびプログラム生成モジュール Download PDFInfo
- Publication number
- WO2005020070A1 WO2005020070A1 PCT/JP2004/011778 JP2004011778W WO2005020070A1 WO 2005020070 A1 WO2005020070 A1 WO 2005020070A1 JP 2004011778 W JP2004011778 W JP 2004011778W WO 2005020070 A1 WO2005020070 A1 WO 2005020070A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- program
- unit
- source code
- parameters
- terminal device
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
Definitions
- Program generation system Program generation program and program generation module
- the present invention relates to a technique for generating a program, and particularly to a technique for generating a program without a user directly inputting a source code.
- Computers are now becoming indispensable in daily life.
- the computer is mounted on various devices such as, for example, a terminal device, a mobile phone, and a home appliance, and appropriately controls hardware included in the devices to realize predetermined functions.
- terminal devices are used for business management in corporations, for analysis of experimental results at research institutions, and at the individual level for sending and receiving e-mails and browsing web pages.
- it is necessary to execute the program on the computer.
- Patent Document 1 JP 2003-208307 A
- An object of the present invention is a technique for shortening a program development period, which is necessary for program development. It is an object of the present invention to provide a technology for reducing labor and a technology for easily creating a program.
- One embodiment of the present invention is a system for generating a program.
- the system includes a receiving unit for receiving input of a parameter for forming a program for realizing a predetermined process, a generating unit for dynamically generating a source code of the program based on the parameter, and compiling the source code.
- a compiling unit that generates a program executable by a predetermined terminal device, and an instruction unit that detects that the source code has been generated and instructs the compiling unit to compile the source code.
- the source code generation process and the compilation of the source code can be performed continuously. In other words, if the user simply inputs the parameters, the source code can be automatically generated and compiled, and the program can be generated.
- the system further checks that the data size of the program is smaller than a predetermined size, and, if the data size of the program is smaller than the predetermined size, further includes a checking unit that can provide the program to the terminal device. May be provided. Thereby, the program generation system can provide the terminal device with a program smaller than the predetermined size.
- the system may further include a notifying unit for notifying that the number of parameters is reduced when the data size of the program is larger than a predetermined size.
- a notifying unit for notifying that the number of parameters is reduced when the data size of the program is larger than a predetermined size.
- the predetermined size may be set for each terminal device that uses the program.
- a program can be generated according to the execution condition of the program for each terminal device.
- the system further includes a storage unit that stores the program inspected by the inspection unit, and a providing unit that provides the terminal device with the program stored in the storage unit.
- a storage unit that stores the program inspected by the inspection unit
- a providing unit that provides the terminal device with the program stored in the storage unit.
- the system may further include a limiter that limits the number of parameters so that the data size of the program is smaller than a predetermined size. This allows the number of parameters to be adjusted before the source code is generated, enabling efficient program generation. become.
- the generating unit generates a source code including a program code for forming a component as an input interface based on the parameter.
- the parameter is gnoled for each component. You can limit the number of parameters with. Thereby, the size of the program can be adjusted for each component. In other words, the component is provided for each adjustment item, and when the data size of the program is larger than a predetermined size, the size of the program can be adjusted by reducing the adjustment item.
- the restriction unit may predict the data size of the generated program according to the parameters received by the reception unit, and may determine whether it is necessary to reduce the number of parameters. As a result, the data size of the program can be predicted based on the parameters received without actually generating the program.
- the limiting unit may determine that it is necessary to reduce the number of meters.
- the limiting unit may compare the number of parameters received by the receiving unit with a preset number to determine whether it is necessary to reduce the number of parameters.
- the limiting unit If the number of parameters received by the receiving unit is larger than a preset number, the limiting unit
- the number of parameters may need to be reduced.
- the restriction unit may instruct the notification unit to perform the notification.
- the parameter includes information designating whether or not to use a predetermined function of the terminal device, and the generation unit generates a source code including a program code for using the specified predetermined function. You may. Thus, by executing the program on the terminal device, the functions of the terminal device can be used during the execution of the program.
- the “predetermined function” may be a function provided by a hard disk, software, or a combination thereof of the terminal device, such as a position information acquisition function, a photographing function, and a recording function.
- the generation unit may include a program code for using the location information acquisition function. You may also generate source code, including:
- the generating unit may generate a source code including a program code for using the photographing function.
- the system may further include a display processing unit that displays a parameter input screen on the display unit, and the receiving unit may receive the parameter input via the input screen.
- the generated program forms an input interface for inputting the adjustment data for the predetermined adjustment content, and transmits the adjustment data input via the input interface to the collection device via the network.
- the input screen is formed so as to accept a plurality of adjustment items as the content of the adjustment and a choice of an answer to the adjustment item.
- the receiving unit receives the parameters grouped for each adjustment item, and if the limiting unit determines that the number of parameters needs to be reduced, the notifying unit prompts to reduce the number of survey items. Notify me,
- Another embodiment of the present invention is a system for generating a program.
- This system holds a first storage unit that holds a first program code that can be used for general purposes, and a second program code that is configured by combining the first program code to form a predetermined program.
- a second storage unit a receiving unit that receives parameters necessary for forming a program, a generating unit that rewrites a part of the second program code based on the received parameters to generate a source code of the program, and a source unit.
- a compiling unit that compiles the code and generates a program executable on a predetermined terminal device, and an instruction unit that detects that the source code has been generated, and instructs the compiling unit to compile the source code.
- the system checks that the data size of the program is smaller than a predetermined size. If the data size of the program is smaller than the predetermined size, the system further includes a checking unit that can provide the program to the terminal device. May be provided.
- This program forms an input interface for inputting adjustment data for a predetermined adjustment content, and converts the adjustment data input via the input interface into a network.
- the second program code realizes a function of transmitting to a server via a network, and the second program code may include a program code for forming an input interface.
- the survey content includes a plurality of survey items, the parameter includes character information for each survey item, and the generation unit reads a second program code from the second storage unit for each survey item, and converts the source code into a source code. Incorporate, replace part of the embedded program code with the character information included in the parameter.
- Still another embodiment of the present invention relates to a program generation program and a program generation module.
- These include a receiving unit for receiving input of parameters for forming a program for realizing a predetermined process, a generating unit for dynamically generating a source code of the program based on the parameters, and a source code.
- a computer that compiles and generates a program that can be executed by a predetermined terminal device; and an instruction unit that detects that the source code has been generated and instructs the compile unit to compile the source code. To be realized.
- the program generation program and the program generation module check that the data size of the program to be generated is smaller than a predetermined size, and when the data size of the program is smaller than the predetermined size, check unit that can provide the program. Can be realized on a computer.
- the program generating program and the program generating module may further cause the computer to realize a notifying unit for notifying that the number of parameters is reduced.
- the predetermined size may be set for each terminal device.
- a source code is generated based on parameters, and a predetermined program is generated by compiling the source code, so that the user does not need to directly input the source code.
- a technology for generating a predetermined program can be provided.
- FIG. 1 is a configuration diagram of a survey system according to the present embodiment.
- FIG. 2 is a diagram showing an example of transition of a work screen displayed on a display unit in FIG. 1.
- FIG. 3 is an internal configuration diagram of the program generation device of FIG. 1.
- FIG. 4 is a diagram showing an example of an input screen displayed on the display unit in FIG. 3.
- FIG. 5 is a diagram showing an example of a data structure of a parameter group output from a parameter management unit in FIG. 3 to a reception unit.
- FIG. 6 is an internal configuration diagram of the program providing device of FIG. 1.
- FIG. 7 is an internal configuration diagram of the analyzer of FIG. 1.
- FIG. 8 is an example of a flowchart of a preparation program generation process in the program generation device of FIG. 3.
- FIG. 1 is a configuration diagram of a survey system 10 according to the present embodiment.
- the first terminal device 50a, the second terminal device 50b, the third terminal device 50c, and the fourth terminal device 50d are, for example, mobile phones and PDAs (Personal Digital Assistants). It is a portable terminal.
- the terminal device 50 has an upper limit on the data size of the program as a condition for executing the program, and may have a smaller memory size than a general terminal.
- the terminal device 50 includes, for example, a GPS (Global Positioning System) unit that receives a GPS signal from the GPS satellite 16 and acquires position information, a CCD camera, a microphone, and the like.
- Each terminal device 50 has a function of connecting to the network 12 via the base station 14 and communicating with the program providing device 200 and the analyzing device 300.
- the program generation device 100 causes the display unit 52 of the terminal device 50 to display the contents of the adjustment, generates a program for receiving the adjustment result, and stores the generated program in the program providing device 200.
- the program providing device 200 provides the program to the terminal device 50 via the network 12.
- the investigator conducts a survey based on the contents of the survey displayed on the display unit 52 by executing the program. For example, an investigator carries the terminal device 50 to a designated investigation point and conducts an investigation on the spot.
- the terminal device 50 displays the position of the travel point.
- Location information (hereinafter simply referred to as “survey location information”) is acquired using a GPS unit.
- the acquisition instruction may be performed based on the instruction of the researcher, may be automatically performed by a program inside the terminal device 50, or may be performed based on other external signals.
- the investigator uses the CCD camera of the terminal device 50 to take an image of the specified target, and inputs items according to the adjustment contents to the terminal device 50 using the operation unit 54 such as key buttons. Or
- the information obtained by the terminal device 50 other than the survey position information, the image, and other information directly input to the surveyor may not only be used as the survey result but also increase the reliability of the survey result. It is used as information for judgment. In other words, data obtained from the GPS, CCD camera, microphone, etc. of the terminal device 50 cannot generally be arbitrarily rewritten by an investigator, and thus is used as information for guaranteeing the reliability of the survey results. Available.
- the terminal device 50 transmits, to the analysis device 300, the items input to the researcher, the images obtained by the devices, the research position information, and the like as the research results.
- the analysis device 300 collects the survey results, determines the reliability of each survey result, and performs a predetermined analysis. As described above, the analysis device 300 collects the survey results associated with the survey location information from the plurality of terminal devices 50.
- FIG. 2 is a diagram showing an example of transition of the work screen 400 displayed on the display unit 52 of FIG.
- the first work screen 400a is first displayed on the display section 52 of FIG. 1, and the second work screen 400b, the third work screen 400c, the fourth work screen 400d, the fifth work screen 400e, And the sixth work screen 400f.
- the first work screen 400a has a title area 402, an input start button 404, and a data transmission button 406.
- the title area 402 is an area for displaying, for example, a signature name and the like, and is displayed at the top of the work screen 400.
- the work screen 400 includes an adjustment item instruction area 440 for displaying information indicating the contents of the adjustment, and a search result input area 442 for the researcher to input a search result for the search contents.
- the adjustment item designation area 440 includes, for example, an adjustment content character string 434 representing the adjustment content, and an appearance of the product related to the adjustment content, such as the appearance of the product, To explain technical terms included in the survey Image 420 is included.
- the survey result input area 442 includes components such as text boxes, radio buttons, and check boxes, which will be described later. In order to make answers efficiently and accurately, for example, it is possible to select answers from options. Is done.
- Input start button 404 is a button for receiving an instruction to start the adjustment. By selecting the input start button 404, the adjustment item is displayed on the display section 52. Here, the contents of the adjustment are composed of a plurality of adjustment items.
- the data transmission button 406 is a button for transmitting the answer to the analyzer 300 of FIG. 1 as a survey result after completing the answer to each survey item. By pressing or selecting the data transmission button 406, the investigation result is transmitted to the analyzer 300.
- the second work screen 400b is displayed when the input start button 404 is pressed.
- a page is provided for each adjustment item, and components for answer input suitable for the adjustment item are arranged.
- the page number area 408 is an area for displaying the page number.
- the answer content character string 410 is an area for displaying a character 1J indicating the answer content to be input to a text input area 412 described later.
- the text input area 412 is a text box for inputting an answer, and allows an arbitrary character string to be input.
- a radio button group 422 on the fourth work screen 400d is a component for selecting one answer from options prepared in advance. Although not shown, a check box power for selecting an arbitrary number of answers of options prepared in advance may be provided in the survey result input area 442.
- next screen display button 414a is a button for proceeding to the next survey item, and pressing this button switches the work screen 400.
- a third work screen 400c is displayed.
- the terminal device 50 has acquired the position information using the GPS unit.
- the fourth work screen 400d is displayed.
- the fifth work screen 400e is displayed. While sequentially switching the work screen 400 in this way, the attendant inputs an answer to a series of examination items.
- the shooting start button 430 on the fifth work screen 400e is the CCD force of the terminal device 50 in FIG. This button is used to shoot using the camera. By pressing the shooting start button 430, the CCD camera is activated and shooting is possible.
- the program provided by the program providing device 200 shown in FIG. 1 is designed so that data obtained by using hardware such as the GPS unit and the CCD camera of the terminal device 50 can be used as a survey result. Coded.
- the sixth work screen 400f which becomes the last work screen 400 has a save button 432.
- the save button 432 is a button for saving the answer entered on each work screen 400.
- the result is stored in the storage area of the terminal device 50 as a survey result.
- the terminal device 50 transmits the stored research result to the analysis device 300 in FIG.
- the survey can be performed in a place where radio waves do not reach, and the survey result can be transmitted in a place where radio waves reach.
- the survey can be performed without regard to the radio wave condition, so that it is possible to conduct the survey in various places.
- by realizing such a survey item and an input interface for answering by a program it is possible to provide an input interface suitable for the survey item. Investigation becomes possible. Also, for example, the number of accesses to the server is significantly reduced as compared with the case where the survey items are provided on a web page, so that the load on the server can be reduced.
- a program for displaying such a work screen 400 is, for example, a program created in a programming language such as JAVA (registered trademark). If this program was created by the programmer every time the program was run, it may not be possible to make a quick run, such as not being able to run the necessary run at the required time due to development time issues. In addition, due to a human error, an incorrect adjustment item or option may be included. Also, due to the problem of program development costs, it is possible that the cost will be lost.
- JAVA registered trademark
- the present inventor assumed various investigations and examined the input interface. As a result, by unifying the input interface for each adjustment item and creating a template, the combination processing of the template and the template were performed. I realized that it is possible to automatically generate source code by replacing a character string in a shape with another character string.
- the program generation device 100 in FIG. 1 generates a source code according to this method, and automatically generates a program by compiling the source code.
- FIG. 3 is an internal configuration diagram of the program generation device 100 of FIG.
- the components of the program generation device 100 include a CPU, a memory of an arbitrary computer, a program loaded into the memory to realize the components of the drawing, a storage unit such as a hard disk for storing the program, and a network connection interface. It is realized by an arbitrary combination of hardware and software, and it is understood by those skilled in the art that there are various modified examples of the method and the device. Each figure described below shows a functional unit block which is not a hardware unit configuration.
- the input screen information generation unit 124 displays an input screen for inputting various information necessary for forming the above-described research program (hereinafter simply referred to as a "research program"). Information to be formed on the display unit 102 is generated and output to the display processing unit 104.
- the display processing unit 104 causes the display unit 102 to display an input screen and the contents of a notification from a notification unit 106 described later.
- the operation unit 108 is, for example, an input device such as a keyboard and a mouse.
- the operation unit 108 receives an operation from a user and outputs various information on the input screen to the parameter management unit 109.
- the parameter management unit 109 manages the input information as a parameter in association with a parameter name or the like. Then, the input screen information generation unit 124 reads the parameters managed by the parameter management unit 109, and reflects the newly input parameters on the input screen. Further, the parameter management unit 109 outputs the parameter being managed to the reception unit 110 at a predetermined timing.
- FIG. 4 is a diagram showing an example of the input screen 450 displayed on the display unit 102 in FIG.
- the various information input area 460 is an area for inputting various information necessary for the tuning program to realize the above-described functions.
- the “Formulation ID” is used to identify the composition program. For example, when transmitting the survey result to the analyzer 300 in FIG. 1, the information is transmitted in association with the survey result.
- “Survey name” is a name for each survey and is displayed in the title area 402 of FIG.
- the “data transmission URL” is an area for inputting information for specifying the analysis device 300 shown in FIG. 1 as the transmission destination of the survey result on the network 12. For example, the URL (Uniform Resource Locator) of the analysis device 300 is used. Is set.
- the component addition operation button group 462 is used when adding an adjustment item.
- the type selection component 470 is a component for specifying the type of component to be used for inputting the answer of the adjustment item to be added.
- Type selection component 4 As the types of components that can be selected in 70, for example, a radio button (shown as “SA” in the figure) that allows you to select one answer from multiple choices, an arbitrary number from multiple choices There is a check box (shown as "MA” in the figure) that allows the user to select the answer, and a text box for writing text (shown as "Text” in the figure).
- SA radio button
- MA check box
- a text box for writing text shown as "Text” in the figure.
- Each component setting area 464 allows input of information necessary for forming the survey item designation area 440 of Fig. 2 and information necessary for forming the survey result input area 442 of Fig. 2. In addition, it is composed of components such as text boxes and check boxes.
- the first component setting area 464a is added when "text box" is selected as the component type.
- the type display area 476 the type of the component is displayed.
- a question sentence input area 480 and an image selection component 486 are provided to form the survey item indicating area 440 of FIG.
- an answer input area 482 a maximum character number specification area 488, and an input character type specification box 490 are provided.
- the question sentence input area 480 is, for example, an area for inputting a document for instructing an investigator to make a survey.
- the character string entered here is displayed as the adjustment content character string 434 in FIG.
- the image selection component 486 creates an image to display as image 420 in Figure 2. This component is used to select image content. For example, it is formed so that any image content can be selected from the list.
- the content storage unit 126 in FIG. 3 stores image contents
- the input screen information generation unit 124 generates a list of image contents stored in the content storage unit 126, and Of the image selection component 486.
- the answer input area 482 is an area for inputting a character string displayed around the text box. This string is placed above, below, on the left, or on the right side of the text box for entering the answer.
- the maximum character number designation area 488 is an area for setting the upper limit of the number of characters that can be input to the text bottus.
- Input character type designation box 490 is a check box for designating a character type that can be entered in the text box. In the present embodiment, by checking, only numbers can be input, and by removing the check, any character type such as hiragana, katakana, kanji, alphabets, and numbers can be input. Note that the answer input area 482, the maximum character number specification area 488, and the input character type specification box 490 are associated with each other.
- a response addition button 478 adds a response input area 482. That is, when a plurality of text boxes are provided as the survey result input area 442 in FIG. 2, the answer addition button 478 is pressed a desired number of times. As a result, the number of answer input areas 482 for which the answer addition button 478 has been pressed is newly added to the first component setting area 464a. In each of the added answer input areas 482, a character string can be individually set. Of course, the maximum character number specification area 488 and the input character type specification box 490 associated with each response input area 482 can be set individually. In addition, the answer addition button 478 in the second component setting area 464b and the third component setting area 464c described later An answer input area 482 for a Jo button and a check box is added.
- the answer deletion component 494 is a component for deleting the answer input area 482. By pressing the answer deletion component 494, the corresponding answer input area 482 is deleted.
- Radio button 474 is a component for designating whether or not to associate position information with a survey result, that is, whether to use the GPS unit of terminal device 50 in FIG.
- the location information is associated with the survey result.
- the radio button 474 of any one of the component setting areas 464 is checked, the location information is acquired at any timing after executing the adjustment program.
- the adjustment item deletion component 496 is a component for deleting an adjustment item. By pressing the adjustment item deletion component 496, the component setting area 464 of the corresponding adjustment item is deleted.
- the second component setting area 464b is added when "radio button" is selected as the component type.
- the character string input in the answer input area 482 of the second component setting area 464b is displayed in association with each radio button. That is, each option is entered in each answer input area 482.
- the link designation area 492 is a component for designating whether or not to display another survey item designated as a link destination instead of displaying the survey items in order when the answer is selected. .
- the link designation area 492 is formed so that an arbitrary survey item can be selected from a list of survey items. Then, when the radio button is selected, a screen of the survey item specified as the link destination is displayed.
- the third component setting area 464c is added when "check box" is selected as the component type.
- the character string entered in the answer input area 482 of the third component setting area 464c is displayed in association with each check box. That is, each option is entered in each answer input area 482.
- Such display processing is performed by the input screen information generation unit 124 to form the input screen 450 based on the parameters updated in response to the user's operation on the operation unit 108 in Fig. 3. It is realized by rewriting information as needed.
- the generate button 452 is a button for instructing to generate a source code using various information input on the input screen 450.
- a cancel button 454 is a button for canceling the input to the input screen 450.
- the parameter management unit 109 in FIG. 3 outputs the parameter being managed to the reception unit 110.
- the parameter management unit 109 receives each parameter as an XML (extensible Markup Language) format file (hereinafter, simply referred to as “parameter file”). Output to section 110.
- XML extensible Markup Language
- FIG. 5 is a diagram showing an example of a data structure of a parameter file output from parameter management section 109 in FIG. 3 to reception section 110. All parameters for generating one tuning program are held between a parameter start tag 151a indicating the start of a parameter and a parameter end tag: L51b indicating the end of the parameter. Each parameter is held by being surrounded by a tag indicating the name of the parameter.
- the survey ID column 152, the name column 154, and the URL column 156 hold the “survey ID”, “survey name”, and “data transmission URL” input in the various information input areas 460 in FIG.
- Various information input to the component setting area 464 in FIG. 4 is held in the page configuration information column 160 by being surrounded by tags.
- information for forming one page that is, one work screen 400 in FIG. 2 is included in one page configuration information column 160.
- the page number column 162 holds page identification information for identifying a page, and may hold, for example, the display order. That is, the generation unit 112 in FIG. 3 described later determines the order in which to display each page based on the page identification information, and generates a source code so as to display each page in that order.
- the page identification information is assigned to each component setting area 464 in, for example, an ascending order by the parameter management unit 109 in FIG.
- the component column 174 holds various information for forming the survey result input area 442 in FIG.
- the data name column 164 holds a data name that specifies the answer input or selected by the component.
- the terminal device 50 shown in FIG. When transmitting to 00, an answer is transmitted in association with the data name. Also, in another example, when the result of the analysis is transmitted in the CSV format, the data name need not be set.
- the type field 166 indicates the type of component such as a text (described as "Text” in the figure), a radio box (described as “SA” in the figure), and a check box (described as "MA” in the figure). Holds type information to be specified. Similarly, information for identifying components for controlling the hardware of the terminal device 50, such as a GPS component for acquiring position information and a photographing component for photographing an image using a CCD camera, is also stored in the type column 166 as type information. Is done.
- the character string column 168 holds the character string input to the answer input area 482 in FIG.
- the character type column 170 holds information for specifying the type of characters that can be input. In the present embodiment, when the input character type designation box 490 in FIG. 4 is checked, “number” is set, and when not checked, information indicating an arbitrary character type is set. .
- the number-of-characters field 172 holds the number entered in the maximum number-of-characters designation area 488 in FIG.
- the component column 174 When text is held in the type column 166, the component column 174 includes a character type column 170 and a character number column 172 to form a text box.
- a character string field for the number of branches of an option is required to form a radio box or a check box. 168 are included.
- the question text field 180 holds the character string input to the question text input area 480 in FIG.
- the image file name column 182 holds the file name of the image file selected by the image selection component 486 in FIG. In another example, the image file name field 182 may hold a path or URL indicating the storage location of the image file.
- the parameter management unit 109 in FIG. 3 holds the parameters for forming the work screen 400 in FIG. 2 in groups for each adjustment item, that is, for each page configuration information column 160.
- the parameter file to be output is output to the reception unit 110 in FIG.
- accepting section 110 accepts the parameter file from parameter managing section 109.
- the generation unit 112 dynamically generates the source code of the preparation program based on the parameter file.
- the template storage unit 128 stores multiple types of source code generation. Hold the stationery.
- the generation unit 112 combines the templates, inserts the parameters included in the parameter file at predetermined positions of each template, or replaces a predetermined character string in the template with the parameters to convert the source code. Generate.
- the model storage unit 128 holds a model and information specifying a function realized by the model, an input interface, and the like in association with each other.
- the model storage unit 128 stores program codes for realizing those components in the terminal device 50 as models, in association with the type information.
- API Application
- a function for realizing a predetermined process is prepared in advance as a program interface.
- Source code is created by combining those APIs according to the grammar of each programming language.
- the template can be, for example, a program code that combines multiple functions, or a program code that consists of a single function.
- the model storage unit 128 may hold the component type and the model in association with each other.
- the algorithm for generating the source code based on the parameter file is considered various.
- the model stored in the model storage unit 128 is appropriately prepared according to the algorithm.
- the template for generating the survey content display screen 400 having a text box as the survey result input area 442 in FIG. 2 displays a text string display function for displaying a character string and a text box. Includes a text box function and for. Then, for example, a predetermined variable name is assigned to the argument so that the information held in the character string column 168, the character type column 170, and the character number column 172 of FIG. 5 can be set as the argument of those functions. Have been.
- the generation unit 112 may generate a source code by substituting a parameter corresponding to the variable, or may generate a source code by replacing the variable with the parameter.
- the templates for generating the adjustment content display screen 400 having a radio box and a check box as the survey result input area 442 in Fig. 2 each include a character display function, and include a radio box function or a radio box function for displaying a radio box. It includes at least one of a check box function for displaying a check box.
- Program code included in these templates May be appropriately described according to the algorithm for generating the source code based on the parameter file.
- the generation unit 112 may specify a function or a model for forming the component based on the type information included in the parameter file, and set the parameter in the argument.
- the generation unit 112 reads the corresponding image content from the content storage unit 126 and outputs it to the compiling unit 114 together with the source code at a predetermined timing.
- the timing may be when a compiling unit 114 described later performs a compiling process.
- the generation unit 112 When the generation unit 112 finishes generating the source code, it outputs to that effect to the instruction unit 120 as a source code completion notification. For example, the generation unit 112 sequentially performs a process of converting into a source code in units of the page configuration information column 160 of the parameter file. Then, when the conversion is completed for all the page configuration information columns 160, the source code is completed. At this time, that is, when the conversion is completed for all the page configuration information fields 160, the generation unit 112 may output a message to that effect to the instruction unit 120.
- the generation unit 112 performs a process of sequentially converting the source code based on each parameter from the parameter start tag 151a to the parameter end tag 151b of the parameter file, and performs conversion when the parameter end tag 15 lb is reached. The processing may be terminated, and a source code completion notification may be output to the instruction unit 120.
- the instruction unit 120 Upon receiving the source code completion notification from the generation unit 112, the instruction unit 120 instructs the compilation unit 114 to compile the source code, triggered by the notification.
- the basic function storage unit 130 stores various files necessary for compilation.
- the compiling unit 114 converts a source code into an object code by using a file stored in the basic function storage unit 130, and generates a tuning program.
- the detecting unit 116 detects that the adjustment program generated by the compiling unit 114 can be executed in the terminal device 50 of FIG.
- the terminal device 50 in FIG. 1 has a smaller memory capacity and lower CPU performance than, for example, a desktop computer, and therefore, the size of an executable program (hereinafter simply referred to as the “maximum program size”). ) Is decided.
- the detection unit 116 determines that the size of the generated preparation program is smaller than the maximum program size. In this case, it is determined that the program can be executed, and the investigation program is output to the storage processing unit 118. Then, the storage processing unit 118 outputs the survey program to the program providing device 200, and makes the program available for distribution.
- the detection unit 116 outputs to the notification unit 106 information indicating that the terminal device 50 cannot execute the program because the program size is large. .
- the notifying unit 106 notifies the terminal processing unit 50 that the program size cannot be executed because the program size exceeds the maximum program size based on the information, and outputs a message prompting to reduce the number of adjustment items to the display processing unit 104.
- the display unit 102 displays a message that the program size of the adjustment program exceeds the maximum program size and a message that prompts the user to reduce the number of adjustment items.
- the program condition storage unit 132 holds the maximum program size of the terminal device 50 in association with the information (hereinafter, simply referred to as "terminal information") specifying the terminal device 50 in FIG.
- the inspection unit 116 refers to the program condition storage unit 132, specifies the maximum program size, and performs the above-described inspection.
- the terminal information may be specified via the input screen 450 of FIG. In this case, for example, an input field for inputting terminal information may be provided in the various information input area 460 in FIG.
- the restriction unit 122 restricts the number of adjustment items included in the survey program based on the parameters included in the parameter file. That is, while the detection unit 116 determines whether or not the terminal device 50 can be used based on the program size of the finally generated program, the restriction unit 122 generates the source code. Before this, whether or not the terminal device 50 can be used is predicted. Then, when the predicted program size exceeds the maximum program size, limiting section 122 instructs notifying section 106 to notify that the adjustment items are to be reduced. The notifying unit 106 displays a message prompting to reduce the number of items to be adjusted because the program size is expected to exceed the maximum program size according to the instruction. Is displayed on the display unit 102. As a result, it is possible to avoid unnecessary generation and compilation of source code.
- the restriction unit 122 reads the maximum program size corresponding to the terminal device 50 in Fig. 1 from the program condition storage unit 132. Then, the limiting unit 122 predicts the program size of the tuning program based on, for example, parameters included in the parameter file. For this purpose, the limiting unit 122 holds a table in which each parameter name, that is, the type of parameter, is associated with the program size. Then, limiting section 122 may specify the program size with reference to the table for each parameter included in the meter file, and may estimate the size of the adjustment program by, for example, adding.
- the limiting unit 122 determines the number of page configuration information fields 160 in Fig. 5 included in the parameter file and the preset upper limit of the number of survey items (hereinafter, simply referred to as "maximum number of items"). By comparing with, the number of items to be adjusted may be limited. For example, when the number of page configuration information fields 160 in FIG. 5 included in the parameter file is larger than the maximum number of items, the limiting unit 122 may notify the notifying unit 106 that the number of survey items is reduced.
- reception section 110 When receiving the parameter file from parameter management section 109, reception section 110 outputs the parameter file to restriction section 122. Then, the limiting unit 122 performs the above-described processing, and determines whether it is necessary to reduce the number of survey items. If there is no need to reduce the number of survey items, the restricting unit 122 permits the subsequent processing to be performed. If permitted, the receiving unit 110 outputs the meter file to the generating unit 112.
- the force provided with inspection unit 116 and restriction unit 122 In another embodiment, only one of inspection unit 116 and restriction unit 122 may be provided. Also in this embodiment, it is possible to generate a tuning program suitable for the execution conditions of the terminal device 50 in FIG.
- this program generation device 100 the user can simply input adjustment items using the input screen 450 of Fig. 4 to generate source code and automatically compile to generate an adjustment program. it can.
- FIG. 6 is an internal configuration diagram of the program providing device 200 of FIG.
- the registration unit 202 receives the adjustment program from the program generation device 100. Then, registration section 202 stores the received tuning program in program storage section 204.
- the program provider 206 In response to a request from the terminal device 50, a survey program stored in the program storage unit 204 is provided.
- the program providing unit 206 authenticates the researcher based on, for example, identification information uniquely assigned to the terminal device 50. If the authentication is successful, the program providing unit 206 transmits the survey program to the terminal device 50. May be provided.
- FIG. 7 is an internal configuration diagram of the analyzer 300 of FIG.
- the collection unit 302 receives the investigation result from the terminal device 50.
- the collection unit 302 collects the investigation result from the terminal device 50 in a format associated with, for example, a parameter name indicating a CSV format adjustment item.
- the collection unit 302 stores the survey result in the survey result storage unit 304.
- the analysis unit 306 performs a predetermined analysis such as, for example, statistical tallying, based on the survey results stored in the survey result storage unit 304, and outputs the analysis results.
- FIG. 8 is an example of a flowchart of the adjustment program generation processing in the program generation device 100 of FIG.
- the receiving unit 110 of FIG. 3 receives a parameter file from the parameter managing unit 109 of FIG. 3 (S10).
- the restriction unit 122 in FIG. 3 estimates the program size of the survey program based on the parameters included in the parameter file (S12).
- the restriction unit 122 in FIG. 3 determines whether or not the predicted program size is smaller than a preset maximum program size (S14). If the predicted program size is larger than the maximum program size (N in S14), the notification unit 106 in FIG. 3 notifies that the number of survey items will be reduced (S28).
- the generation unit 112 in FIG. 3 performs the model storage unit 128 in FIG. 3 based on the parameters included in the parameter file.
- a model is selected from the list (S16), and a predetermined argument in the model is replaced with a parameter in a parameter file (S18).
- the generation unit 112 determines whether the source code is completed (S20). If the source code is not completed (N in S20), return to step 16. When the source code is completed (Y in S20), the generation unit 112 outputs the fact to the instruction unit 120 in FIG. Then, the instruction unit 120 instructs the compiling unit 114 of FIG. 3 to compile the source code. Thereby, the compiling section 114 executes the compiling (S22).
- the compiling section 114 checks the preparation program shown in FIG. Output to section 116.
- the inspection unit 116 determines whether the program size of the investigation program is smaller than the maximum program size (S24). When the program size is larger than the maximum program size (N in S24), the notification unit 106 notifies that the number of survey items is reduced (S28). When the program size is smaller than the maximum program size (Y in S24), the detecting unit 116 outputs the adjustment program to the storage processing unit 118 in FIG. 3, and the storage processing unit 118 converts the adjustment program into the storage program in FIG. To the terminal device 50 of FIG. 1 (S26).
- the functions of the program generation device 100 are described by taking the adjustment program as an example.
- the program generation device 100 may generate not only the adjustment program but also various programs such as questionnaires and quizzes.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/568,622 US7784024B2 (en) | 2003-08-20 | 2004-08-17 | Program creating system, program creating program, and program creating module |
EP04771739A EP1657636A4 (en) | 2003-08-20 | 2004-08-17 | PROGRAMMING SYSTEM, PROGRAMMING PROGRAM AND PROGRAMMING MODULE |
JP2005513282A JP4220519B2 (ja) | 2003-08-20 | 2004-08-17 | プログラム生成システムおよびプログラム生成プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003-296761 | 2003-08-20 | ||
JP2003296761 | 2003-08-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2005020070A1 true WO2005020070A1 (ja) | 2005-03-03 |
Family
ID=34213595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2004/011778 WO2005020070A1 (ja) | 2003-08-20 | 2004-08-17 | プログラム生成システム、プログラム生成プログラムおよびプログラム生成モジュール |
Country Status (7)
Country | Link |
---|---|
US (1) | US7784024B2 (ja) |
EP (1) | EP1657636A4 (ja) |
JP (1) | JP4220519B2 (ja) |
KR (1) | KR100799183B1 (ja) |
CN (1) | CN1864133A (ja) |
TW (1) | TW200515172A (ja) |
WO (1) | WO2005020070A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008084259A (ja) * | 2006-09-29 | 2008-04-10 | Japan Tobacco Inc | データ収集システム |
JP4486159B1 (ja) * | 2009-10-19 | 2010-06-23 | 株式会社Osk | 業務システムにおけるカスタマイズシステム |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1864132A (zh) * | 2003-08-20 | 2006-11-15 | 日本烟草产业株式会社 | 程序生成系统、程序生成程序和程序生成模块 |
JP4522358B2 (ja) * | 2005-11-30 | 2010-08-11 | キヤノン株式会社 | データ処理装置及びデータ処理方法及びプログラム |
US8141039B2 (en) * | 2006-04-28 | 2012-03-20 | International Business Machines Corporation | Method and system for consolidating machine readable code |
US8020147B2 (en) * | 2007-10-12 | 2011-09-13 | Infosys Limited | Software package implementation sizing |
US20090138849A1 (en) * | 2007-10-30 | 2009-05-28 | Microsoft Corporation | Enhanced Prompting in a Visual Editor |
US20090327234A1 (en) * | 2008-06-27 | 2009-12-31 | Google Inc. | Updating answers with references in forums |
CN101697120B (zh) * | 2009-11-05 | 2012-11-28 | 河南辉煌科技股份有限公司 | 基于关系型数据库的j2ee代码生成方法 |
JP5817256B2 (ja) * | 2011-06-29 | 2015-11-18 | 株式会社ジェイテクト | 機械制御プログラム作成装置 |
US20150286204A1 (en) * | 2012-11-22 | 2015-10-08 | Mitsubishi Electric Corporation | Program-creation supporting device, method, and recording medium |
JP6729168B2 (ja) | 2016-08-22 | 2020-07-22 | ブラザー工業株式会社 | コンテンツ処理装置 |
CN107977236B (zh) * | 2017-12-21 | 2020-11-13 | 上海智臻智能网络科技股份有限公司 | 问答系统的生成方法、终端设备、存储介质及问答系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108634A (ja) * | 2000-10-02 | 2002-04-12 | Seiko Epson Corp | 情報処理方法、情報処理装置および情報処理プログラムを記録した記録媒体 |
JP2002202886A (ja) * | 2000-10-27 | 2002-07-19 | Toshiba Corp | アプリケーション開発システム、その方法およびアプリケーション開発プログラムおよびアプリケーション生成方法 |
JP2003044432A (ja) * | 2001-07-31 | 2003-02-14 | Faruma Minami Osaka:Kk | プログラム開発システム |
JP2003186673A (ja) * | 2001-12-20 | 2003-07-04 | Hitachi Ltd | コンピュータシステム構成要素の統合方法、およびコンフィギュレーションシステム |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63278145A (ja) * | 1987-05-11 | 1988-11-15 | Nec Corp | パラメ−タ対応検査方式 |
JPH0517701U (ja) * | 1991-08-20 | 1993-03-05 | 三菱電機株式会社 | プログラミング装置 |
CA2190487A1 (en) * | 1994-05-16 | 1995-11-23 | Daniel Kenneth Freeman | Instruction creation device |
JP2003518280A (ja) | 1999-02-05 | 2003-06-03 | テンシリカ インコーポレイテッド | 構成可能なプロセッサを設計するための自動プロセッサ生成システムおよび生成方法 |
US7127705B2 (en) * | 2000-09-06 | 2006-10-24 | Oracle International Corporation | Developing applications online |
CN1196995C (zh) * | 2000-10-27 | 2005-04-13 | 株式会社东芝 | 应用软件开发系统及其方法、以及应用软件生成方法 |
JP2002182910A (ja) | 2000-12-11 | 2002-06-28 | Sharp Corp | アプリケーション開発方法及びアプリケーション開発環境システム |
US7389492B2 (en) * | 2001-03-12 | 2008-06-17 | International Business Machines Corporation | Framework for code generators |
US7155381B2 (en) * | 2001-03-12 | 2006-12-26 | Sun Microsystems, Inc. | Module for developing wireless device applications using an integrated emulator |
CA2381832A1 (en) | 2001-04-17 | 2002-10-17 | Accelio Corporation | Method and system for cross-platform form creation and deployment |
US7043716B2 (en) * | 2001-06-13 | 2006-05-09 | Arius Software Corporation | System and method for multiple level architecture by use of abstract application notation |
JP2003022184A (ja) | 2001-07-06 | 2003-01-24 | Ntt Docomo Kansai Inc | アプリケーションプログラム生成システム、データ処理装置、アプリケーションプログラム提供装置、コンピュータプログラム、及び記録媒体 |
JP2003076544A (ja) * | 2001-08-30 | 2003-03-14 | Nippon Yunishisu Kk | ウェブアプリケーション開発方法及び装置 |
US7257620B2 (en) * | 2001-09-24 | 2007-08-14 | Siemens Energy & Automation, Inc. | Method for providing engineering tool services |
JP2003162414A (ja) * | 2001-11-27 | 2003-06-06 | Nec Corp | アプリケーション提供方法及びアプリケーション提供システム |
JP2003167740A (ja) * | 2001-11-30 | 2003-06-13 | Dainippon Printing Co Ltd | インストールファイル作成装置およびユーザー使用環境管理方法 |
JP2003188946A (ja) * | 2001-12-17 | 2003-07-04 | Nec Corp | 携帯電話端末及びその機能設定方法 |
JP2003208307A (ja) | 2002-01-16 | 2003-07-25 | Hitachi Software Eng Co Ltd | ソースプログラム生成システム |
US20030135842A1 (en) * | 2002-01-16 | 2003-07-17 | Jan-Erik Frey | Software development tool for embedded computer systems |
US7152229B2 (en) * | 2002-01-18 | 2006-12-19 | Symbol Technologies, Inc | Workflow code generator |
US20030149958A1 (en) * | 2002-02-06 | 2003-08-07 | Shumeet Baluja | Automatic code generation for applications which run on common platforms |
JP2003337644A (ja) * | 2002-03-14 | 2003-11-28 | Sony Corp | 電子機器装置、プログラム、プログラム提供装置及び記録媒体 |
US6563441B1 (en) * | 2002-05-10 | 2003-05-13 | Seiko Epson Corporation | Automatic generation of program logic to decode variable-length codes |
CA2418670A1 (en) * | 2003-02-11 | 2004-08-11 | Ibm Canada Limited - Ibm Canada Limitee | Method and system for generating executable code for formatiing and printing complex data structures |
US20040181777A1 (en) * | 2003-03-14 | 2004-09-16 | Swee-Koon Fam | Method and device for programming electronic devices using a uniform parameter format |
CN1864132A (zh) * | 2003-08-20 | 2006-11-15 | 日本烟草产业株式会社 | 程序生成系统、程序生成程序和程序生成模块 |
-
2004
- 2004-08-17 EP EP04771739A patent/EP1657636A4/en not_active Withdrawn
- 2004-08-17 US US10/568,622 patent/US7784024B2/en not_active Expired - Fee Related
- 2004-08-17 KR KR1020067003413A patent/KR100799183B1/ko not_active IP Right Cessation
- 2004-08-17 CN CNA200480029023XA patent/CN1864133A/zh active Pending
- 2004-08-17 WO PCT/JP2004/011778 patent/WO2005020070A1/ja active Application Filing
- 2004-08-17 JP JP2005513282A patent/JP4220519B2/ja not_active Expired - Fee Related
- 2004-08-20 TW TW093125211A patent/TW200515172A/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108634A (ja) * | 2000-10-02 | 2002-04-12 | Seiko Epson Corp | 情報処理方法、情報処理装置および情報処理プログラムを記録した記録媒体 |
JP2002202886A (ja) * | 2000-10-27 | 2002-07-19 | Toshiba Corp | アプリケーション開発システム、その方法およびアプリケーション開発プログラムおよびアプリケーション生成方法 |
JP2003044432A (ja) * | 2001-07-31 | 2003-02-14 | Faruma Minami Osaka:Kk | プログラム開発システム |
JP2003186673A (ja) * | 2001-12-20 | 2003-07-04 | Hitachi Ltd | コンピュータシステム構成要素の統合方法、およびコンフィギュレーションシステム |
Non-Patent Citations (1)
Title |
---|
See also references of EP1657636A4 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008084259A (ja) * | 2006-09-29 | 2008-04-10 | Japan Tobacco Inc | データ収集システム |
JP4568262B2 (ja) * | 2006-09-29 | 2010-10-27 | 日本たばこ産業株式会社 | データ収集システム |
JP4486159B1 (ja) * | 2009-10-19 | 2010-06-23 | 株式会社Osk | 業務システムにおけるカスタマイズシステム |
JP2011086251A (ja) * | 2009-10-19 | 2011-04-28 | Osk:Kk | 業務システムにおけるカスタマイズシステム |
Also Published As
Publication number | Publication date |
---|---|
JP4220519B2 (ja) | 2009-02-04 |
KR100799183B1 (ko) | 2008-01-29 |
EP1657636A4 (en) | 2010-01-20 |
TW200515172A (en) | 2005-05-01 |
EP1657636A1 (en) | 2006-05-17 |
US7784024B2 (en) | 2010-08-24 |
CN1864133A (zh) | 2006-11-15 |
KR20060033928A (ko) | 2006-04-20 |
US20070168912A1 (en) | 2007-07-19 |
JPWO2005020070A1 (ja) | 2007-11-01 |
TWI308700B (ja) | 2009-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10664651B2 (en) | Forms conversion and deployment system for mobile devices | |
JP4568262B2 (ja) | データ収集システム | |
WO2005020070A1 (ja) | プログラム生成システム、プログラム生成プログラムおよびプログラム生成モジュール | |
US20100125828A1 (en) | Data transformation based on a technical design document | |
CN101515232A (zh) | 一种软件持续集成系统及方法 | |
CN103377127A (zh) | 网页产品的开发测试系统、测试方法及装置 | |
KR20050115900A (ko) | 변경 요청 폼 주석 | |
CN105138312A (zh) | 一种表格生成方法及装置 | |
JP4220520B2 (ja) | プログラム生成システムおよびプログラム生成プログラム | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
US11846972B2 (en) | Method and apparatus for generating software test reports | |
CN111866158B (zh) | 路由方法、装置、计算机设备和存储介质 | |
US20150106701A1 (en) | Input support method and information processing system | |
CN108255509A (zh) | 应用部署方法、装置、设备及可读存储介质 | |
US20060136870A1 (en) | Visual user interface for creating multimodal applications | |
CN110825370B (zh) | 移动端应用开发方法、装置及系统 | |
JP6919420B2 (ja) | 情報処理装置、情報処理方法、プログラムおよび情報処理システム | |
CN112711435A (zh) | 版本更新方法、版本更新装置、电子设备和存储介质 | |
CN110780983A (zh) | 任务异常处理方法、装置、计算机设备以及存储介质 | |
CN111124815A (zh) | 一种日志查看方法、装置、设备及存储介质 | |
CN111158695B (zh) | 接口定位方法、装置、计算机设备和存储介质 | |
CN113687965B (zh) | 数据交互方法、装置、设备及存储介质 | |
CN114328172A (zh) | 一种服务测试方法、装置、计算机设备和存储介质 | |
CN113918208A (zh) | 一种中间件管理方法、装置、计算设备及存储介质 | |
CN114265847A (zh) | 数据库表信息记录方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200480029023.X Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2005513282 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020067003413 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2004771739 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1020067003413 Country of ref document: KR |
|
WWP | Wipo information: published in national office |
Ref document number: 2004771739 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007168912 Country of ref document: US Ref document number: 10568622 Country of ref document: US |
|
WWP | Wipo information: published in national office |
Ref document number: 10568622 Country of ref document: US |