WO2022075420A1 - ソフトウェア提供装置、ソフトウェア提供方法及びプログラム - Google Patents

ソフトウェア提供装置、ソフトウェア提供方法及びプログラム Download PDF

Info

Publication number
WO2022075420A1
WO2022075420A1 PCT/JP2021/037205 JP2021037205W WO2022075420A1 WO 2022075420 A1 WO2022075420 A1 WO 2022075420A1 JP 2021037205 W JP2021037205 W JP 2021037205W WO 2022075420 A1 WO2022075420 A1 WO 2022075420A1
Authority
WO
WIPO (PCT)
Prior art keywords
software
virtual machine
data processing
user group
information
Prior art date
Application number
PCT/JP2021/037205
Other languages
English (en)
French (fr)
Inventor
修二郎 奥田
由 渡邉
浩 井筒
啓輔 兒玉
Original Assignee
国立大学法人 新潟大学
デンカ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 国立大学法人 新潟大学, デンカ株式会社 filed Critical 国立大学法人 新潟大学
Priority to CN202180068770.8A priority Critical patent/CN116324722A/zh
Priority to EP21877719.1A priority patent/EP4227833A1/en
Priority to US18/030,612 priority patent/US20230367621A1/en
Priority to JP2022555568A priority patent/JPWO2022075420A1/ja
Priority to KR1020237014722A priority patent/KR20230084523A/ko
Publication of WO2022075420A1 publication Critical patent/WO2022075420A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Definitions

  • the present invention relates to a software providing device, a software providing method, and a program.
  • Patent Document 1 discloses an analyzer used in a clinical trial in which an anticancer drug is administered to a colorectal cancer patient.
  • an object of the present invention is to provide software for analyzing data on oncogenes while ensuring security.
  • the software providing device is a software providing device that provides software for processing data related to cancer genes, and the software operates on a virtual machine and executes data processing related to cancer genes.
  • the software providing device includes a module and setting information for determining an operation when the software module executes the data processing, and the software providing device receives an instruction regarding providing the software to a predetermined user group.
  • the software provided to the predetermined user group by instructing the information processing apparatus that stores the virtual machine template including the software to duplicate the virtual machine template. It has a generation unit for causing the information processing apparatus to generate a new virtual machine including the above.
  • FIG. 1 is a diagram showing an example of a software providing system according to the present embodiment.
  • the user terminal 10A-1 and the user terminal 10A-2 are terminals used by the user group A.
  • the user terminal 10B-1 and the user terminal 10B-2 are terminals used by the user group B.
  • a user terminal 10A-1, the user terminal 10A-2, the user terminal 10B-1 and the user terminal 10B-2 are not distinguished, they are referred to as a user terminal 10. Further, in the present embodiment, there is no limit to the number of user terminals 10.
  • User group A and user group B mean groups of users belonging to organizations such as hospitals and research institutes, respectively.
  • the users belonging to the user group A are doctors, nurses, laboratory technicians, and the like.
  • the user group B is a research institution, the user belonging to the user group B is a researcher or the like.
  • the administrator terminal 20 is a terminal used by an administrator or the like (hereinafter referred to as “software administrator”) who manages software (hereinafter referred to as “oncogene software”) that processes data related to oncogenes. ..
  • the software administrator operates the administrator terminal 20 to provide the oncogene software to the user group.
  • the server 30 is composed of one or a plurality of physical information processing devices, and can operate one or more virtual machines on the hypervisor.
  • the server 30 may be an information processing device managed by a software administrator or the like or an organization to which the software administrator belongs, or is an information processing device provided by a cloud service operated by a third party other than the software administrator. There may be.
  • Each virtual machine contains an OS (Operating System) and oncogene software. That is, the oncogene software is software that can be operated on the virtual machine on the server 30.
  • Virtual machine A is a virtual machine provided for user group A. Further, the virtual machine B is a virtual machine provided for the user group B. A virtual machine is also called a virtual machine instance.
  • the virtual machine template is the data that is the basis for creating a new virtual machine, and includes the OS and oncogene software.
  • User group A manages clinical information about cancer and analyzes various data by using oncogene software running on virtual machine A.
  • the user group B manages clinical information about cancer and analyzes various data by using the oncogene software running on the virtual machine B.
  • Virtual machine A and virtual machine B each operate as an independent virtual computer. Therefore, the user group A cannot access the data used by the user group B. Similarly, the user group B cannot access the data used by the user group A.
  • the software administrator When the software administrator provides the cancer gene software to an organization wishing to use the cancer gene software, the software administrator copies a virtual machine template using the administrator terminal 20 to create a new virtual machine (for example, virtual machine C). ) Is generated, and the settings for the new organization are set for the generated virtual machine. New organizations will be able to use oncogene software in a secure environment by accessing the new virtual machines that have been created.
  • a virtual machine for example, virtual machine C.
  • any information processing device such as a personal computer (PC), a notebook PC, a smartphone, or a tablet terminal can be used as long as it is an information processing device having a communication function.
  • PC personal computer
  • notebook PC notebook PC
  • smartphone smartphone
  • tablet terminal any information processing device having a communication function.
  • FIG. 2 is a diagram showing a hardware configuration example of the user terminal 10, the administrator terminal 20, and the server 30.
  • the user terminal 10, the administrator terminal 20, and the server 30 include a processor 11 such as a CPU (Central Processing Unit) and a GPU (Graphical processing unit), a memory, an HDD (Hard Disk Drive), and / or an SSD (Solid State Drive). It has a storage device 12, a communication IF (Interface) 13 for wired or wireless communication, an input device 14 for accepting input operations, and an output device 15 for outputting information.
  • the input device 14 is, for example, a keyboard, a touch panel, a mouse and / or a microphone.
  • the output device 15 is, for example, a display, a touch panel, and / or a speaker.
  • FIG. 3 is a diagram showing an example of a functional block configuration of the administrator terminal 20.
  • the administrator terminal 20 includes a reception unit 201, a generation unit 202, and a display unit 203.
  • the reception unit 201, the generation unit 202, and the display unit 203 can be realized by the processor 11 of the administrator terminal 20 executing the program stored in the storage device 12.
  • the program can be stored in a storage medium.
  • the storage medium in which the program is stored may be a non-transitory computer readable medium.
  • the non-temporary storage medium is not particularly limited, but may be, for example, a storage medium such as a USB memory or a CD-ROM.
  • the reception unit 201 receives various instructions regarding the provision of oncogene software from the software administrator. For example, the reception unit 201 receives an instruction regarding providing the oncogene software to a predetermined user group.
  • the generation unit 202 requests the server 30 (information processing device) that stores the template of the virtual machine to virtualize the virtual machine including the cancer gene software.
  • the server 30 is made to generate a new virtual machine including the software provided to a predetermined user group.
  • the display unit 203 displays a screen for the software administrator to manage the oncogene software on the display.
  • FIG. 4 is a diagram showing an example of a functional block configuration of the server 30.
  • the server 30 includes a storage unit 300, a reception unit 301, and an execution unit 302.
  • the storage unit 300 can be realized by using the storage device 12 included in the server 30.
  • the reception unit 301 and the execution unit 302 can be realized by the processor 11 of the server 30 executing the program stored in the storage device 12.
  • the program can be stored in a storage medium.
  • the storage medium in which the program is stored may be a non-temporary storage medium that can be read by a computer.
  • the non-temporary storage medium is not particularly limited, but may be, for example, a storage medium such as a USB memory or a CD-ROM.
  • the storage unit 300 stores a virtual machine template and a file for executing one or more virtual machines (virtual machine A, virtual machine B, etc.).
  • the reception unit 301 receives various operations (virtual machine duplication instructions, etc.) from an external information processing device (for example, the administrator terminal 20).
  • the execution unit 302 operates the virtual machine stored in the storage unit 300 on the hypervisor. In addition, the execution unit 302 performs processing such as creating a virtual machine, starting a virtual machine, and replicating a virtual machine.
  • each functional block included in the administrator terminal 20 may be implemented on the server 30 instead of the administrator terminal 20.
  • the administrator terminal 20 may be a general terminal provided with a Web browser.
  • the server 30 may have a Web server function, and the Web browser provided in the administrator terminal 20 may display a screen (such as FIG. 6 described later) related to the operation of the virtual machine according to the present embodiment.
  • the cancer gene software is a data processing module (software module) that executes data processing related to cancer genes, and setting information (for example, various processes) for determining the operation when the data processing module executes data processing related to cancer management. Executability setting, etc.) and are included.
  • the oncogene software may further include a database (for example, a database for storing clinical information) for storing various data handled by the data processing module.
  • the data processing related to oncogenes performed by the data processing module includes multiple data processing related to oncogenes. For example, a process of managing a donor (cancer patient), a process of managing clinical information on an oncogene obtained from a donor, a process of analyzing clinical information on an oncogene, and the like can be mentioned.
  • the process of managing donors includes a process of displaying a donor list page, a process of displaying an individual donor page, and the like.
  • On the donor list page it is possible to search and filter donors based on the type of cancer and clinical information obtained from the donor.
  • the individual donor page displays a list of oncogene mutations, clusters the oncogene mutations to show which cluster each donor belongs to, and a Pathway map of the mutated oncogenes in each donor. It is possible to perform operations such as displaying above and displaying / registering / editing / deleting clinical information.
  • the process of managing clinical information provided by the donor includes the process of importing / exporting clinical information.
  • processing to analyze clinical information related to oncogenes for example, Mutation bridge analysis, Alteration frequency analysis, DNA subsystem type analysis, Oncoprint analysis, Pathway analysis, Gene map analysis, Mutation signature analysis, Survival plot analysis, Crosstable test analysis. And so on.
  • Mutation bridge analysis Alteration frequency analysis
  • DNA subsystem type analysis for example, DNA subsystem type analysis, Oncoprint analysis, Pathway analysis, Gene map analysis, Mutation signature analysis, Survival plot analysis, Crosstable test analysis.
  • Gene map analysis Gene map analysis
  • Mutation signature analysis for survival plot analysis.
  • Crosstable test analysis are not limited to the clinical information of individual donors, but it is also possible to select an arbitrary donor group and perform the clinical information of the selected donor group.
  • the setting information includes information for setting the execution enablement / disapproval for each data processing related to the oncogene for each user group, in addition to the information regarding the user group using the oncogene software.
  • the data processing module reads the setting information at startup to determine whether or not each data processing can be executed. That is, the data processing module operates so as to execute data processing that is permitted to be executed by the setting information for a plurality of data processes, and not to execute data processing that is not permitted to be executed by the setting information.
  • FIG. 5 is a diagram showing an example of setting information.
  • the "user group ID” stores an ID for identifying a user group that uses the oncogene software.
  • the “user group name” the name of the user group that uses the oncogene software is stored.
  • the “login ID / password” initial values of an ID and a password for logging in to the oncogene software are set.
  • the "executability / non-execution setting the feasibility / non-execution for each data processing related to the oncogene is stored.
  • FIG. 6 is a diagram showing an example of a screen for managing oncogene software.
  • the software administrator provides the oncogene software to a new user group who wishes to use the oncogene software
  • the oncogene software is generated using the screen displayed on the administrator terminal 20.
  • the input area N10 is an area for inputting the ID and name of the user group using the oncogene software, the initial login ID for logging in to the oncogene software, and the password.
  • the input area N11 is an area for setting whether or not to execute the data processing related to the oncogene. Whether or not the execution is possible is determined, for example, by the content of the license agreement between the software administrator and the user group.
  • the oncogene software to be provided to the user group is generated.
  • FIG. 7 is a diagram for explaining a processing procedure when oncogene software is generated.
  • the processing procedure shown in FIG. 7 is executed, for example, by pressing the button B10 on the screen shown in FIG.
  • step S10 the reception unit 201 of the administrator terminal 20 receives an instruction from the software administrator regarding providing the oncogene software to the user group X (predetermined user group) via the screen shown in FIG.
  • the instructions include information about the user group X (name, login ID, etc.) and instructions for permitting the user group X to perform each of the plurality of data processes related to the oncogene. ..
  • the button B10 is pressed on the screen shown in FIG. 6, the process proceeds to the processing procedure of step S11.
  • step S11 the generation unit 202 instructs the server 30 to duplicate the virtual machine template.
  • the execution unit 302 of the server 30 Upon receiving the instruction, the execution unit 302 of the server 30 generates a new virtual machine to be used by the user group X by duplicating the virtual machine template including the oncogene software.
  • the virtual machine template includes the OS and cancer gene software (data processing module, setting information and database) in addition to the virtual machine setting data (CPU type, memory size, disk size, communication speed, etc.). .. Dummy data may be stored in the setting information. Further, the database may be an empty database in which no record is stored. Since the generated new virtual machine is a duplicate of the virtual machine template, it will include the OS and cancer gene software (data processing module, setting information and database) as in the virtual machine template.
  • step S12 the generation unit 202 of the administrator terminal 20 manages the setting information included in the new virtual machine provided to the user group X generated by duplicating the virtual machine template by software in the processing procedure of step S10. It is set whether or not each of the plurality of data processes related to the oncogene for the user group X, which is instructed by the user, can be executed.
  • the generation unit 202 may rewrite the setting information by directly manipulating the files constituting the new virtual machine before executing the new virtual machine.
  • the generation unit 202 may start a new virtual machine, log in to the OS started on the new virtual machine, and then rewrite the setting information stored in the disk of the virtual machine.
  • step S12 the software administrator informs the user group X of the initial login ID and password set in the setting information.
  • a user belonging to the user group X can use the oncogene software by accessing the newly created virtual machine using the user terminal 10.
  • the oncogene software is provided to a new user by duplicating the virtual machine template prepared in advance.
  • the virtual machines created by duplicating the virtual machine template cannot communicate with each other and cannot refer to the data on other virtual machines because each operates as a different computer. Therefore, according to the present embodiment, it is possible to provide software for analyzing data related to cancer while ensuring security.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)
  • Apparatus Associated With Microorganisms And Enzymes (AREA)

Abstract

癌遺伝子に関するデータ処理を行うソフトウェアを提供するソフトウェア提供装置であって、ソフトウェアは、仮想マシン上で動作し、癌遺伝子に関するデータ処理を実行するソフトウェアモジュールと、ソフトウェアモジュールがデータ処理を実行する際の動作を決定するための設定情報とを含み、ソフトウェア提供装置は、ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付ける受付部と、指示を受け付けた場合、ソフトウェアを含む仮想マシンのテンプレートを記憶する情報処理装置に対して、仮想マシンのテンプレートの複製を指示することで、所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、情報処理装置に生成させる生成部と、を有するソフトウェア提供装置を提供する。

Description

ソフトウェア提供装置、ソフトウェア提供方法及びプログラム
 本発明は、ソフトウェア提供装置、ソフトウェア提供方法及びプログラムに関する。
 医療分野においては、患者に関する臨床情報を分析することで様々な研究が行われている。例えば特許文献1には、大腸がん患者に抗がん剤を投与する治験に用いられる分析装置が開示されている。
特開2020-071517号公報
 現在、癌遺伝子の研究を行う病院等の施設で、癌遺伝子に関する臨床情報等の分析を行う際に用いられるソフトウェアの開発が進められている。しかしながら、各施設が扱う臨床情報や分析内容は異なることから、同一のソフトウェアを複数の施設が共用することは、セキュリティ上好ましくない。従って、癌遺伝子の研究を行う病院等の施設に対し、セキュリティを担保しながらソフトウェアを提供する仕組みが求められている。
 そこで、本発明は、癌遺伝子に関するデータ解析を行うソフトウェアを、セキュリティを担保しながら提供することを目的とする。
 本発明の一態様に係るソフトウェア提供装置は、癌遺伝子に関するデータ処理を行うソフトウェアを提供するソフトウェア提供装置であって、前記ソフトウェアは、仮想マシン上で動作し、癌遺伝子に関するデータ処理を実行するソフトウェアモジュールと、前記ソフトウェアモジュールが前記データ処理を実行する際の動作を決定するための設定情報とを含み、前記ソフトウェア提供装置は、前記ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付ける受付部と、前記指示を受け付けた場合、前記ソフトウェアを含む仮想マシンのテンプレートを記憶する情報処理装置に対して、前記仮想マシンのテンプレートの複製を指示することで、前記所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、前記情報処理装置に生成させる生成部と、を有する。
 本発明によれば、癌遺伝子に関するデータ解析を行うソフトウェアを、セキュリティを担保しながら提供することができる。
本実施形態に係るソフトウェア提供システムの一例を示す図である。 ユーザ端末、管理者端末及びサーバのハードウェア構成例を示す図である。 管理者端末の機能ブロック構成例を示す図である。 サーバの機能ブロック構成例を示す図である。 設定情報の一例を示す図である。 癌遺伝子ソフトウェアを管理するための画面の一例を示す図である。 癌遺伝子ソフトウェアが生成される際の処理手順を説明するための図である。
 添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
 <システム構成>
 図1は、本実施形態に係るソフトウェア提供システムの一例を示す図である。ユーザ端末10A-1及びユーザ端末10A-2は、ユーザグループAが利用する端末である。ユーザ端末10B-1及びユーザ端末10B-2は、ユーザグループBが利用する端末である。以下、ユーザ端末10A-1、ユーザ端末10A-2、ユーザ端末10B-1及びユーザ端末10B-2を区別しない場合、ユーザ端末10と呼ぶ。また、本実施形態において、ユーザ端末10の台数に制限はない。
 ユーザグループA及びユーザグループBは、それぞれ、病院や研究機関等の組織に属するユーザのグループを意味する。例えば、ユーザグループAが病院である場合、ユーザグループAに属するユーザは、医師、看護師及び検査技師等である。また、例えば、ユーザグループBが研究機関である場合、ユーザグループBに属するユーザは、研究者等である。本実施形態において、ユーザグループの数に制限はない。ユーザグループA及びユーザグループB以外のユーザグループを新たに追加することも可能である。
 管理者端末20は、癌遺伝子に関するデータ処理を行うソフトウェア(以下、「癌遺伝子ソフトウェア」と言う。)を管理する管理者等(以下、「ソフトウェア管理者」と言う。)が利用する端末である。ソフトウェア管理者は、管理者端末20を操作することで、ユーザグループに対し、癌遺伝子ソフトウェアを提供する。
 サーバ30は、1又は複数の物理的な情報処理装置から構成されており、ハイパーバイザー上で1以上の仮想マシンを動作させることができる。サーバ30は、ソフトウェア管理者等又はソフトウェア管理者が所属する組織が管理する情報処理装置であってもよいし、ソフトウェア管理者以外の第三者が運営するクラウドサービスにより提供される情報処理装置であってもよい。各仮想マシンには、OS(Operating System)及び癌遺伝子ソフトウェアが含まれている。つまり、癌遺伝子ソフトウェアは、サーバ30にて仮想マシン上で動作することができるソフトウェアである。
 仮想マシンAは、ユーザグループA向けに提供された仮想マシンある。また、仮想マシンBは、ユーザグループB向けに提供された仮想マシンである。仮想マシンは、仮想マシンインスタンスとも呼ばれる。
 仮想マシンテンプレートは、新たに仮想マシンを生成するための元になるデータであり、OS及び癌遺伝子ソフトウェアが含まれている。
 ユーザグループAは、仮想マシンAで動作する癌遺伝子ソフトウェアを利用することで、癌に関する臨床情報の管理や各種データの解析等を行う。同様に、ユーザグループBは、仮想マシンBで動作する癌遺伝子ソフトウェアを利用することで、癌に関する臨床情報の管理や各種データの解析等を行う。
 仮想マシンA及び仮想マシンBは、各々が独立した仮想的なコンピュータとして動作する。そのため、ユーザグループAは、ユーザグループBが利用しているデータにアクセスすることはできない。同様に、ユーザグループBは、ユーザグループAが利用しているデータにアクセスすることはできない。
 ソフトウェア管理者は、癌遺伝子ソフトウェアの利用を希望する組織に対して、癌遺伝子ソフトウェアを提供する場合、管理者端末20を用いて仮想マシンテンプレートをコピーすることで新たな仮想マシン(例えば仮想マシンC)を生成し、生成した仮想マシンに対して、当該新たな組織向けの設定を行う。新たな組織は、生成された新たな仮想マシンにアクセスすることで、セキュリティが確保された環境で癌遺伝子ソフトウェアを利用することができる。
 ユーザ端末10及び管理者端末20は、パーソナルコンピュータ(PC)、ノートPC、スマートフォン、タブレット端末など、通信機能を備えた情報処理装置であればあらゆる情報処理装置を用いることができる。
 <ハードウェア構成>
 図2は、ユーザ端末10、管理者端末20及びサーバ30のハードウェア構成例を示す図である。ユーザ端末10、管理者端末20及びサーバ30は、CPU(Central Processing Unit)、GPU(Graphical processing unit)等のプロセッサ11、メモリ、HDD(Hard Disk Drive)及び/又はSSD(Solid State Drive)等の記憶装置12、有線又は無線通信を行う通信IF(Interface)13、入力操作を受け付ける入力デバイス14、及び情報の出力を行う出力デバイス15を有する。入力デバイス14は、例えば、キーボード、タッチパネル、マウス及び/又はマイク等である。出力デバイス15は、例えば、ディスプレイ、タッチパネル及び/又はスピーカ等である。
 <機能ブロック構成>
 図3は、管理者端末20の機能ブロック構成例を示す図である。管理者端末20は、受付部201と、生成部202と、表示部203とを含む。受付部201と、生成部202と、表示部203とは、管理者端末20のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体(Non-transitory computer readable medium)であってもよい。非一時的な記憶媒体は特に限定されないが、例えば、USBメモリ又はCD-ROM等の記憶媒体であってもよい。
 受付部201は、ソフトウェア管理者から、癌遺伝子ソフトウェアの提供に関する各種の指示を受け付ける。例えば、受付部201は、癌遺伝子ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付ける。
 生成部202は、受付部201にて、癌遺伝子ソフトウェアを新たに生成するとの指示を受け付けた場合、仮想マシンのテンプレートを記憶するサーバ30(情報処理装置)に対して、癌遺伝子ソフトウェアを含む仮想マシンのテンプレートの複製を指示することで、所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、サーバ30に生成させる。
 表示部203は、ソフトウェア管理者が癌遺伝子ソフトウェアを管理するための画面を、ディスプレイに表示させる。
 図4は、サーバ30の機能ブロック構成例を示す図である。サーバ30は、記憶部300と、受付部301と、実行部302とを含む。記憶部300は、サーバ30が備える記憶装置12を用いて実現することができる。また、受付部301と、実行部302とは、サーバ30のプロセッサ11が、記憶装置12に記憶されたプログラムを実行することにより実現することができる。また、当該プログラムは、記憶媒体に格納することができる。当該プログラムを格納した記憶媒体は、コンピュータ読み取り可能な非一時的な記憶媒体であってもよい。非一時的な記憶媒体は特に限定されないが、例えば、USBメモリ又はCD-ROM等の記憶媒体であってもよい。
 記憶部300は、仮想マシンテンプレート及び1以上の仮想マシン(仮想マシンA、仮想マシンB等)を実行するためのファイルを記憶する。
 受付部301は、外部の情報処理装置(例えば管理者端末20)から各種の操作(仮想マシンの複製指示等)を受け付ける。
 実行部302は、記憶部300に記憶されている仮想マシンをハイパーバイザー上で動作させる。また、実行部302は、仮想マシンの作成、仮想マシンの起動、仮想マシンの複製等の処理を行う。
 なお、管理者端末20が備える各機能ブロックは、管理者端末20ではなくサーバ30に実装されることとしてもよい。また、管理者端末20は、Webブラウザを備える一般的な端末であってもよい。その場合、サーバ30はWebサーバ機能を備え、管理者端末20が備えるWebブラウザに、本実施形態に係る仮想マシンの操作等に関する画面(後述する図6等)を表示させるようにしてもよい。
 <処理内容>
 続いて、本実施形態に係るソフトウェア提供システムが行う処理内容を具体的に説明する。
 癌遺伝子ソフトウェアは、癌遺伝子に関するデータ処理を実行するデータ処理モジュール(ソフトウェアモジュール)と、当該データ処理モジュールが癌管理に関するデータ処理を実行する際の動作を決定するための設定情報(例えば、各種処理の実行可否設定等)とを含んでいる。また、癌遺伝子ソフトウェアは、更に、データ処理モジュールが扱う各種のデータを格納するデータベース(例えば臨床情報を格納するデータベース等)を含んでいてもよい。
 データ処理モジュールが行う癌遺伝子に関するデータ処理には、癌遺伝子に関する複数のデータ処理が含まれている。例えば、ドナー(癌患者)を管理する処理、ドナーから得られた癌遺伝子に関する臨床情報を管理する処理、癌遺伝子に関する臨床情報を解析する処理等が挙げられる。
 また、ドナー(癌患者)を管理する処理には、ドナー一覧ページを表示する処理、ドナー個別ページを表示する処理等が挙げられる。ドナー一覧ページでは、癌の種類や、ドナーから得られた臨床情報に基づくドナーの検索・フィルタリング等を行うことが可能である。ドナー個別ページでは、癌遺伝子の変異の一覧を表示すること、癌遺伝子の変異をクラスタリングした結果、各々のドナーがどのクラスタに属するのかを表示すること、各々のドナーにおける変異した癌遺伝子をPathwayマップ上で表示すること、及び、臨床情報を表示・登録・編集・削除すること等の操作を行うことが可能である。
 また、ドナーから提供された臨床情報を管理する処理には、臨床情報をインポート/エクスポートする処理等が挙げられる。また、癌遺伝子に関する臨床情報を解析する処理には、例えば、Mutation burden解析、Alteration frequency解析、DNA substitution type解析、Oncoprint解析、Pathway解析、Gene map解析、Mutation signature解析、Survival plot解析、Crosstable test解析等が挙げられる。これらの解析処理は、個々のドナーの臨床情報を対象に行うことに限られず、任意のドナー群を選択し、選択したドナー群の臨床情報に対して行うことも可能である。
 設定情報には、癌遺伝子ソフトウェアを利用するユーザグループに関する情報に加えて、癌遺伝子に関するデータ処理ごとの実行可否をユーザグループごとに設定するための情報が含まれている。また、データ処理モジュールは、起動時に設定情報を読み出すことで、各データ処理の実行可否を判定する。すなわち、データ処理モジュールは、複数のデータ処理について、設定情報により実行が許可されたデータ処理を実行し、設定情報により実行が許可されていないデータ処理については実行しないように動作する。
 図5は、設定情報の一例を示す図である。「ユーザグループID」には、癌遺伝子ソフトウェアを利用するユーザグループを識別するためのIDが格納される。「ユーザグループ名」には、癌遺伝子ソフトウェアを利用するユーザグループの名称が格納される。「ログインID/パスワード」には、癌遺伝子ソフトウェアにログインするためのID及びパスワードの初期値が設定される。「実行可否設定」には、癌遺伝子に関するデータ処理ごとの実行可否が格納される。
 図6は、癌遺伝子ソフトウェアを管理するための画面の一例を示す図である。ソフトウェア管理者は、癌遺伝子ソフトウェアの利用を希望する新たなユーザグループに癌遺伝子ソフトウェアを提供する場合、管理者端末20に表示される画面を用いて癌遺伝子ソフトウェアの生成を行う。
 入力エリアN10は、癌遺伝子ソフトウェアを利用するユーザグループのID、名称、癌遺伝子ソフトウェアにログインするための初期ログインID及びパスワードを入力するエリアである。入力エリアN11は、癌遺伝子に関するデータ処理ごとの実行可否を設定するエリアである。当該実行可否は、例えば、ソフトウェア管理者とユーザグループとの間のライセンス契約の内容等により決定される。
 ソフトウェア管理者がボタンB10を押下すると、ユーザグループに提供する癌遺伝子ソフトウェアが生成される。
 図7は、癌遺伝子ソフトウェアが生成される際の処理手順を説明するための図である。図7に示す処理手順は、例えば、図6に示す画面においてボタンB10が押下されることで実行される。
 ステップS10で、管理者端末20の受付部201は、ソフトウェア管理者から、図6に示す画面を介して、癌遺伝子ソフトウェアをユーザグループX(所定のユーザグループ)に提供することに関する指示を受け付ける。当該指示には、ユーザグループXに関する情報(名称やログインID等)と、ユーザグループXに対して、癌遺伝子に関する複数のデータ処理の各々について実行を許可するか否かの指示が含まれている。図6に示す画面においてボタンB10が押下されると、ステップS11の処理手順に進む。
 ステップS11で、生成部202は、サーバ30に対して、仮想マシンテンプレートの複製を指示する。当該指示を受けると、サーバ30の実行部302は、癌遺伝子ソフトウェアを含む仮想マシンテンプレートを複製することで、ユーザグループXが利用する新たな仮想マシンを生成する。仮想マシンテンプレートには、仮想マシンの設定データ(CPU種別、メモリサイズ、ディスクサイズ、通信速度等)に加えて、OSと癌遺伝子ソフトウェア(データ処理モジュール、設定情報及びデータベース)とが含まれている。なお、設定情報にはダミーデータが格納されていてもよい。また、データベースは、レコードが1件も格納されていない空のデータベースであってもよい。生成された新たな仮想マシンは、仮想マシンテンプレートを複製したものであることから、仮想マシンテンプレートと同様、OSと癌遺伝子ソフトウェア(データ処理モジュール、設定情報及びデータベース)とが含まれることになる。
 ステップS12で、管理者端末20の生成部202は、仮想マシンテンプレートを複製することで生成した、ユーザグループXに提供する新たな仮想マシンに含まれる設定情報に、ステップS10の処理手順でソフトウェア管理者から指示された、ユーザグループXに対する癌遺伝子に関する複数のデータ処理の各々についての実行可否を設定する。生成部202は、新たな仮想マシンを実行する前に、新たな仮想マシンを構成するファイルを直接操作することで、設定情報を書き換えるようにしてもよい。若しくは、生成部202は、新たな仮想マシンを起動し、新たな仮想マシン上で起動したOSにログインした上で、仮想マシンのディスク内に格納されている設定情報を書き換えるようにしてもよい。
 ステップS12の処理手順が完了すると、ソフトウェア管理者は、設定情報に設定された初期ログインID及びパスワードがユーザグループXに伝える。ユーザグループXに属するユーザは、ユーザ端末10を用いて、新たに作成された仮想マシンにアクセスすることで、癌遺伝子ソフトウェアを利用することができる。
 <まとめ>
 以上説明した実施形態によれば、予め用意された仮想マシンテンプレートを複製することで、新たなユーザに癌遺伝子ソフトウェアを提供するようにした。仮想マシンテンプレートを複製することで生成された仮想マシンは、各々が異なるコンピュータとして動作することから、互いに通信をすることができず、また、他の仮想マシン上のデータを参照することもできない。従って、本実施形態によれば、癌に関するデータ解析を行うソフトウェアを、セキュリティを担保しながら提供することが可能になる。
 以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態で説明したフローチャート、シーケンス、実施形態が備える各要素等は、例示したものに限定されるわけではなく適宜変更することができる。
 10…ユーザ端末、11…プロセッサ、12…記憶装置、13…通信IF、14…入力デバイス、15…出力デバイス、20…管理者端末、30…サーバ、201…受付部、202…生成部、203…表示部、300…記憶部、301…受付部、302…実行部

Claims (6)

  1.  癌遺伝子に関するデータ処理を行うソフトウェアを提供するソフトウェア提供装置であって、
     前記ソフトウェアは、仮想マシン上で動作し、癌遺伝子に関するデータ処理を実行するソフトウェアモジュールと、前記ソフトウェアモジュールが前記データ処理を実行する際の動作を決定するための設定情報とを含み、
     前記ソフトウェア提供装置は、
     前記ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付ける受付部と、
     前記指示を受け付けた場合、前記ソフトウェアを含む仮想マシンのテンプレートを記憶する情報処理装置に対して、前記仮想マシンのテンプレートの複製を指示することで、前記所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、前記情報処理装置に生成させる生成部と、
     を有するソフトウェア提供装置。
  2.  前記データ処理には、複数のデータ処理が含まれており、
     前記設定情報には、前記複数のデータ処理の各々についての実行可否をユーザグループごとに設定するための情報が含まれており、
     前記ソフトウェアモジュールは、前記複数のデータ処理について、前記設定情報により実行が許可されたデータ処理を実行し、前記設定情報により実行が許可されていないデータ処理については実行しないように動作する、
     請求項1に記載のソフトウェア提供装置。
  3.  前記受付部が受け付ける前記指示には、前記所定のユーザグループに対し、前記複数のデータ処理の各々について実行を許可するか否かの指示が含まれており、
     前記生成部は、前記新たな仮想マシンに含まれる前記設定情報に、前記指示された、前記所定のユーザグループに対する前記複数のデータ処理の各々についての実行可否を設定する、
     請求項2に記載のソフトウェア提供装置。
  4.  前記データ処理は、癌遺伝子に関する臨床情報を解析する処理を含む、
     請求項1~3のいずれか一項に記載のソフトウェア提供装置。
  5.  癌遺伝子に関するデータ処理を行うソフトウェアを提供するソフトウェア提供装置が実行するソフトウェア提供方法であって、
     前記ソフトウェアは、仮想マシン上で動作し、癌遺伝子に関するデータ処理を実行するソフトウェアモジュールと、前記ソフトウェアモジュールが前記データ処理を実行する際の動作を決定するための設定情報とを含み、
     前記ソフトウェア提供方法は、
     前記ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付けるステップと、
     前記指示を受け付けた場合、前記ソフトウェアを含む仮想マシンのテンプレートを記憶する情報処理装置に対して、前記仮想マシンのテンプレートの複製を指示することで、前記所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、前記情報処理装置に生成させるステップと、
     を含むソフトウェア提供方法。
  6.  癌遺伝子に関するデータ処理を行うソフトウェアを提供するコンピュータに実行させるためのプログラムであって、
     前記ソフトウェアは、仮想マシン上で動作し、癌遺伝子に関するデータ処理を実行するソフトウェアモジュールと、前記ソフトウェアモジュールが前記データ処理を実行する際の動作を決定するための設定情報とを含み、
     前記コンピュータに、
     前記ソフトウェアを、所定のユーザグループに提供することに関する指示を受け付けるステップと、
     前記指示を受け付けた場合、前記ソフトウェアを含む仮想マシンのテンプレートを記憶する情報処理装置に対して、前記仮想マシンのテンプレートの複製を指示することで、前記所定のユーザグループに提供するソフトウェアを含む新たな仮想マシンを、前記情報処理装置に生成させるステップと、
     を実行させるためのプログラム。
PCT/JP2021/037205 2020-10-07 2021-10-07 ソフトウェア提供装置、ソフトウェア提供方法及びプログラム WO2022075420A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202180068770.8A CN116324722A (zh) 2020-10-07 2021-10-07 软件提供装置、软件提供方法及程序
EP21877719.1A EP4227833A1 (en) 2020-10-07 2021-10-07 Software providing device, software providing method, and program
US18/030,612 US20230367621A1 (en) 2020-10-07 2021-10-07 Software providing apparatus, software providing method, and program
JP2022555568A JPWO2022075420A1 (ja) 2020-10-07 2021-10-07
KR1020237014722A KR20230084523A (ko) 2020-10-07 2021-10-07 소프트웨어 제공 장치, 소프트웨어 제공 방법 및 프로그램

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020169809 2020-10-07
JP2020-169809 2020-10-07

Publications (1)

Publication Number Publication Date
WO2022075420A1 true WO2022075420A1 (ja) 2022-04-14

Family

ID=81126980

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/037205 WO2022075420A1 (ja) 2020-10-07 2021-10-07 ソフトウェア提供装置、ソフトウェア提供方法及びプログラム

Country Status (6)

Country Link
US (1) US20230367621A1 (ja)
EP (1) EP4227833A1 (ja)
JP (1) JPWO2022075420A1 (ja)
KR (1) KR20230084523A (ja)
CN (1) CN116324722A (ja)
WO (1) WO2022075420A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019503016A (ja) * 2015-10-26 2019-01-31 サイフェローム がん患者のゲノム塩基配列変異情報と生存情報を利用したカスタマイズ型の薬物選択方法及びシステム
JP2019049798A (ja) * 2017-09-08 2019-03-28 アビームコンサルティング株式会社 移送方法
JP2019091153A (ja) * 2017-11-13 2019-06-13 富士通株式会社 管理プログラム、管理装置および管理方法
JP2020071517A (ja) 2018-10-29 2020-05-07 株式会社日立製作所 分析装置、分析方法、および分析プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019503016A (ja) * 2015-10-26 2019-01-31 サイフェローム がん患者のゲノム塩基配列変異情報と生存情報を利用したカスタマイズ型の薬物選択方法及びシステム
JP2019049798A (ja) * 2017-09-08 2019-03-28 アビームコンサルティング株式会社 移送方法
JP2019091153A (ja) * 2017-11-13 2019-06-13 富士通株式会社 管理プログラム、管理装置および管理方法
JP2020071517A (ja) 2018-10-29 2020-05-07 株式会社日立製作所 分析装置、分析方法、および分析プログラム

Also Published As

Publication number Publication date
JPWO2022075420A1 (ja) 2022-04-14
EP4227833A1 (en) 2023-08-16
US20230367621A1 (en) 2023-11-16
CN116324722A (zh) 2023-06-23
KR20230084523A (ko) 2023-06-13

Similar Documents

Publication Publication Date Title
Pai et al. Standard electronic health record (EHR) framework for Indian healthcare system
Mamlin et al. The promise of information and communication technology in healthcare: extracting value from the chaos
US10083064B2 (en) Systems and methods for smart tools in sequence pipelines
JP2020098634A (ja) 統合された臨床ケアのための情報科学プラットフォーム
US20130212061A1 (en) Content analytics system configured to support multiple tenants
CN112257108B (zh) 数据脱敏方法及装置、介质及电子设备
US20150066381A1 (en) Genomic pipeline editor with tool localization
JP2018508845A (ja) ノートブックアプリケーションでのクラスノートブックおよびそのセクショングループへのアクセス許可の管理
Bradford et al. Development of a HIPAA-compliant environment for translational research data and analytics
Nalluri et al. MACHINE LEARNING AND IMMERSIVE TECHNOLOGIES FOR USER-CENTERED DIGITAL HEALTHCARE INNOVATION
CN111128325A (zh) 医疗数据存储方法及装置、电子设备和存储介质
US20210295956A1 (en) Systems and Methods for Hashing-Based Assessment of Electronic Clinical Trial Outcomes
EP3144831A1 (en) Information processing apparatus, information processing method, and program
WO2022075420A1 (ja) ソフトウェア提供装置、ソフトウェア提供方法及びプログラム
JP2020035066A (ja) 情報秘匿化方法、情報秘匿化プログラム、情報秘匿化装置および情報提供システム
CN114360671A (zh) 电子病历的生成方法和装置、存储介质和电子装置
US20090150438A1 (en) Export file format with manifest for enhanced data transfer
Ye et al. Design and implementation of a mobile system for lung cancer patient follow-up in China and initial report of the ongoing patient registry
Koh et al. STAGEs: A web-based tool that integrates data visualization and pathway enrichment analysis for gene expression studies
Argraves et al. ArrayQuest: a web resource for the analysis of DNA microarray data
JP6799775B2 (ja) サーバ装置、通信システム、情報処理方法、および、情報処理プログラム
JP6858603B2 (ja) 傷病名変更情報出力プログラム、傷病名変更情報出力システム、および、傷病名変更情報出力方法
Daniyan pyGROMODS: a Python package for the generation of input files for molecular dynamic simulation with GROMACS
US20130246095A1 (en) Method and system for producing automated medical reports
O'Mahony et al. Tablet computers for recording tuberculosis data at a community health centre in King Sabata Dalindyebo Local Municipality, Eastern Cape: a proof of concept report

Legal Events

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

Ref document number: 21877719

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022555568

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20237014722

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021877719

Country of ref document: EP

Effective date: 20230508