The present invention relates to a software providing apparatus, a software providing method, and a program.
In the medical field, various researches have been performed by analyzing clinical information concerning patients. For example, Patent Literature 1 discloses an analysis apparatus used in a clinical trial for administering an anticancer drug to a colon cancer patient.
Patent Literature 1: Japanese Patent Application Laid-Open No. 2020-071517
Currently, development of software used in performing an analysis of clinical information and the like concerning oncogenes has been advanced in facilities such as hospitals that perform researches on oncogenes. However, since clinical information and analysis contents treated by each of the facilities are different, it is undesirable in terms of security that a plurality of facilities share the same software. Therefore, there have been demands for a mechanism for, while ensuring security, providing software to facilities such as hospitals that perform researches on oncogenes.
Therefore, an object of the present invention is to provide, while ensuring security, software for performing a data analysis concerning an oncogene.
A software providing apparatus according to an aspect of the present invention is a software providing apparatus that provides software for performing data processing concerning an oncogene, the software operating on a virtual machine and including a software module that executes data processing concerning an oncogene and setting information for determining an operation at a time when the software module executes the data processing, the software providing apparatus including: a receiving unit that receives an instruction concerning providing the software to an at least one predetermined user group; and a generating unit that, when the instruction has been received, instructs an information processing apparatus which stores a template of a virtual machine including the software to duplicate the template of the virtual machine, thereby causing the information processing apparatus to generate a new virtual machine including software to be provided to the at least one predetermined user group.
According to the present invention, it is possible to provide, while ensuring security, software for performing a data analysis concerning oncogenes.
An embodiment of the present invention is explained with reference to the accompanying drawings. Note that, in the figures, components denoted by the same reference numerals and signs have the same or similar configurations.
The user group A and the user group B respectively mean groups of users belonging to organizations such as hospitals or research institutes. For example, when the user group A is a hospital, users belonging to the user group A are doctors, nurses, laboratory technicians, and the like. For example, when the user group B is a research institute, users belonging to the user group B are researchers and the like. In this embodiment, the number of user groups is not limited. It is also possible to add an at least one user group other than the user group A or the user group B anew.
An administrator terminal 20 is a terminal used by an administrator or the like (hereinafter referred to as “software administrator”) who manages software for performing data processing concerning an oncogene (hereinafter referred to as “oncogene software”). The software administrator operates the administrator terminal 20 to provide the oncogene software to an at least one user group.
A server 30 is configured from one or a plurality of physical information processing apparatuses and can cause one or more virtual machines to operate on a hypervisor. The server 30 may be an information processing apparatus managed by the software administrator or the like or an organization to which the software administrator belongs or may be an information processing apparatus provided by a Cloud service operated by an outsider other than the software administrator. Each of the virtual machines includes OSs (Operating Systems) and the oncogene software. That is, the oncogene software is software that can operate on the virtual machine in the server 30.
The virtual machine A is a virtual machine provided to the user group A. The virtual machine B is a virtual machine provided to the user group B. The virtual machine is called virtual machine instance as well.
A virtual machine template is data serving as the source for generating a virtual machine anew and includes an OS and the oncogene software.
The user group A uses the oncogene software operating in the virtual machine A to perform management of clinical information concerning cancer, an analysis of various data, and the like. Similarly, the user group B uses the oncogene software operating in the virtual machine B to perform management of clinical information concerning cancer, an analysis of various data, and the like.
Each of the virtual machine A and the virtual machine B operates as an independent virtual computer. Therefore, the user group A cannot access data being used by the user group B. Similarly, the user group B cannot access data being used by the user group A.
When the oncogene software is provided to an organization desiring to use the oncogene software, the software administrator copies the virtual machine template using the administrator terminal 20 to generate a new virtual machine (for example, a virtual machine C) and performs, on the generated virtual machine, setting for the new organization. By accessing the generated new virtual machine, the new organization can use the oncogene software in an environment in which security is ensured.
The user terminal 10 and the administrator terminal 20 can use any information processing apparatuses including a communication function such as a personal computer (PC), a laptop PC, a smartphone, and a tablet terminal.
The receiving unit 201 receives various instructions concerning provision of the oncogene software from the software administrator. For example, the receiving unit 201 receives an instruction concerning providing the oncogene software to an at least one predetermined user group.
When the receiving unit 201 has received an instruction to generate oncogene software anew, the generating unit 202 instructs the server 30 (the information processing apparatus) which stores a template of a virtual machine to duplicate a template of a virtual machine including the oncogene software, thereby causing the server 30 to generate a new virtual machine including software to be provided to the at least one predetermined user group.
The display unit 203 causes a display to display a screen for the software administrator to manage the oncogene software.
The storage unit 300 stores a file for executing the virtual machine template and one or more virtual machines (the virtual machine A, the virtual machine B, and the like).
The receiving unit 301 receives various kinds of operation (a virtual machine duplication instruction and the like) from an external information processing apparatus (for example, the administrator terminal 20).
The executing unit 302 causes the virtual machines stored in the storage unit 300 to operate on a hypervisor. The executing unit 302 performs processing such as virtual machine creation, virtual machine start, and virtual machine duplication.
Note that each of the functional blocks included in the administrator terminal 20 may be implemented not in the administrator terminal 20 but in the server 30. The administrator terminal 20 may be a general terminal including a Web browser. In that case, the server 30 may include a Web server function and cause the Web browser included in the administrator terminal 20 to display a screen (
Subsequently, processing content performed by the software providing system according to this embodiment is specifically explained.
The oncogene software includes a data processing module (a software module) that executes data processing concerning an oncogene and setting information (for example, executability setting for various kinds of processing) for determining an operation wherein the data processing module executes data processing concerning cancer management. The oncogene software may further include a database that stores various data treated by the data processing module (for example, a database that stores clinical information).
The data processing concerning an oncogene performed by the data processing module includes a plurality of kinds of data processing concerning the oncogenes. Examples of the data processing include processing for managing a donor (a cancer patient), processing for managing clinical information concerning an oncogene obtained from the donor, and processing for analyzing the clinical information concerning the oncogenes.
Examples of the processing for managing the donor (the cancer patient) include processing for displaying a donor list page and processing for displaying a donor individual page. In the donor list page, it is possible to perform search, filtering, and the like of a donor based on a type of cancer and clinical information obtained from the donor. In the donor individual page, it is possible to perform operations for, for example, displaying a list of mutations of oncogenes, displaying to which clusters respective donors belong as a result of clustering the variations of the oncogenes, displaying, on a Pathway map, varied oncogenes in the respective donors, and displaying, registering, editing, and deleting clinical information.
Examples of the processing for managing the clinical information provided from the donor include processing for importing/exporting the clinical information. Examples of the processing for analyzing the clinical information concerning the oncogenes include a Mutation burden analysis, an Alteration frequency analysis, a DNA substitution type analysis, an Oncoprint analysis, a Pathway analysis, a Gene map analysis, a Mutation signature analysis, a Survival plot analysis, and a Crosstable test analysis. These kinds of analysis processing are not limited to be performed targeting the clinical information of the respective donors. It is also possible to select any donor group and perform these kinds of analysis processing on clinical information of the selected donor group.
The setting information includes, in addition to information concerning the at least one user group that use the oncogene software, information for setting, for each of the at least one user group, executability for each of the kinds of data processing concerning an oncogene. The data processing module reads out the setting information at a start time to determine executability of each of the kinds of data processing. That is, the data processing module operates, for the plurality of kinds of data processing, to execute data processing, execution of which has been permitted by the setting information, or not to execute data processing, execution of which has not been permitted by the setting information.
An input area N10 is an area for inputting an ID and a name of a user group that uses the oncogene software and an initial login ID and password for logging in to the oncogene software. An input area N11 is an area for setting executability for each of the kinds of data processing concerning an oncogene. The executability is determined by, for example, content of a license agreement between the software administrator and the user group.
When the software administrator has pressed a button B10, the oncogene software to be provided to the at least one user group is generated.
In step S10, the receiving unit 201 of the administrator terminal 20 receives, from the software administrator, via the screen shown in
In step S11, the generating unit 202 instructs the server 30 about duplication of the virtual machine template. When the instruction has been received, the executing unit 302 of the server 30 duplicates the virtual machine template including the oncogene software to generate a new virtual machine to be used by the user group X. The virtual machine template includes, in addition to setting data (a CPU type, a memory size, a disk size, communication speed, and the like) of the virtual machine, an OS and the oncogene software (the data processing module, the setting information, and the database). Note that dummy data may be stored in the setting information. The database may be an empty database in which no record is stored. Since the generated new virtual machine is a duplication of the virtual machine template, the new virtual machine includes, similarly to the virtual machine temperate, an OS and the oncogene software (the data processing module, the setting information, and the database).
In step S12, the generating unit 202 of the administrator terminal 20 sets, in the setting information included in the new virtual machine to be provided to the user group X, the new virtual machine having been generated by duplicating the virtual machine template, the executability for each of the plurality of kinds of data processing concerning an oncogene for the user group X, the executability having been instructed from the software administrator in the processing procedure in step S10. Before executing the new virtual machine, the generating unit 202 may directly operate a file configuring the new virtual machine to rewrite the setting information. Alternatively, the generating unit 202 may start the new virtual machine, log in to the OS started on the new virtual machine, and, then, rewrite the setting information stored in a disk of the virtual machine.
When the processing procedure in step S12 is completed, the software administrator informs the initial login ID and the initial password set in the setting information to the user group X. A user belonging to the user group X can use the oncogene software by accessing the virtual machine created anew using the user terminal 10.
According to the embodiment explained above, the virtual machine template prepared in advance is duplicated to provide the oncogene software to a new user. Since virtual machines generated by duplicating the virtual machine template respectively operate as different computers, the virtual machines cannot communicate with one another and cannot refer to data on the other virtual machines. Therefore, according to this embodiment, it is possible to provide, while ensuring security, software for performing a data analysis concerning cancer.
The embodiment explained above is for facilitating understanding of the present invention and is not for limitedly interpretating the present invention. The flowcharts, the sequences, the elements included in the embodiment, and the like explained in the embodiment are not limited to the illustrated ones and can be changed as appropriate.
Number | Date | Country | Kind |
---|---|---|---|
2020-169809 | Oct 2020 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2021/037205 | 10/7/2021 | WO |