JP7316240B2 - Program update management system, program update management method, and program update management program - Google Patents

Program update management system, program update management method, and program update management program Download PDF

Info

Publication number
JP7316240B2
JP7316240B2 JP2020038874A JP2020038874A JP7316240B2 JP 7316240 B2 JP7316240 B2 JP 7316240B2 JP 2020038874 A JP2020038874 A JP 2020038874A JP 2020038874 A JP2020038874 A JP 2020038874A JP 7316240 B2 JP7316240 B2 JP 7316240B2
Authority
JP
Japan
Prior art keywords
program
update
notification
service
information
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2020038874A
Other languages
Japanese (ja)
Other versions
JP2021140559A (en
Inventor
謙太 山崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020038874A priority Critical patent/JP7316240B2/en
Publication of JP2021140559A publication Critical patent/JP2021140559A/en
Application granted granted Critical
Publication of JP7316240B2 publication Critical patent/JP7316240B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、プログラムの更新を管理する技術に関する。 The present invention relates to technology for managing program updates.

近年、第三者が提供するサービスのWeb API(Application Programming Interface)を活用したアプリケーション(プログラム)開発が一般化している。Web APIを介して第三者が提供するサービスの機能、すなわち、サービスを実現するプログラムの機能を活用することで、アプリケーション開発者は自身のアプリケーションに容易に新しい機能を追加することができる。 In recent years, application (program) development utilizing a Web API (Application Programming Interface) of a service provided by a third party has become common. Application developers can easily add new functions to their own applications by utilizing the functions of services provided by third parties via Web API, that is, the functions of programs that implement services.

サービスと、そのサービスのプログラムに対するWeb APIを提供する第三者は多数に存在することから、それらを集約して登録し、カタログのようにアプリケーション開発者に提示するマーケットプレイスの提供も盛んになっている。 Since there are many third parties that provide web APIs for services and programs for those services, marketplaces that collect and register them and present them to application developers like catalogs have become popular. ing.

アプリケーション開発者は、マーケットプレイスに登録された複数のサービスを選択して利用開始することで、開発するアプリケーションに必要な複数の機能をサービスが提供するWeb APIを介して利用可能となる。 By selecting and starting to use a plurality of services registered in the marketplace, an application developer can use a plurality of functions required for the application to be developed via the Web API provided by the services.

マーケットプレイスに登録されるサービスを実現するプログラムは、それぞれが独立に更新されるため、アプリケーション開発者は、自身が利用しているサービスのプログラムや、そのプログラムを利用するためのWeb APIが更新されると、アプリケーションの品質に影響が無いか確認する必要が発生しうる。 Programs that implement services registered in the marketplace are updated independently of each other, so application developers can update service programs that they themselves use and Web APIs for using those programs. Therefore, it may be necessary to check whether the quality of the application is affected.

例えば、特許文献1、2には、定期的にWeb APIの入出力データや性能を監視することで、変更の検知や互換性検証を自動化する技術が開示されている。 For example, Patent Literatures 1 and 2 disclose techniques for automating change detection and compatibility verification by periodically monitoring input/output data and performance of Web APIs.

特開2011-257994号公報JP 2011-257994 A 特開2019-117465号公報JP 2019-117465 A

ところで近年、アプリケーション開発時のテスト工程を自動化する動きが盛んであり、例えば、CI/CD(Continuous Integration/Continuous Deployment)ツールの採用が進んでいる。通常、アプリケーション開発工程を様々なアプリケーションに対応可能なように標準化し、且つ規定化することで、開発工程を効率化させており、テスト工程もその例外ではない。 By the way, in recent years, there has been a vigorous movement toward automating the test process during application development, and for example, CI/CD (Continuous Integration/Continuous Deployment) tools are being adopted. Normally, the application development process is standardized and specified so that it can be applied to various applications, thereby making the development process more efficient, and the test process is no exception.

このため、特許文献1,2のように、サービスにおけるプログラムの更新に対して既存の開発工程とは独立に更新検知や検証が実施されると、アプリケーション開発者が気づかないうちにアプリケーション品質に変化が発生する懸念がある。 For this reason, as in Patent Documents 1 and 2, if update detection and verification are performed independently of the existing development process for program updates in services, the application quality will change without the application developer noticing. there is concern that

本発明は、上記事情に鑑みなされたものであり、その目的は、開発者の開発したプログラムに影響を及ぼす可能性があるプログラムの更新を、容易且つ適切に開発者に把握させることができる技術を提供することにある。 SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and its object is to enable developers to easily and appropriately grasp program updates that may affect programs developed by developers. is to provide

上記目的を達成するため、一観点に係るプログラム更新管理システムは、プログラムの更新を管理するプログラム更新管理システムであって、前記プログラム更新管理システムは、プロセッサ部を有し、前記プロセッサ部は、前記プログラムの利用者から前記プログラムの更新が発生した時の通知文書の内容を規定する通知文書内容情報を取得し、前記プログラムの更新が発生したか否かを判定し、前記プログラムの更新が発生した時に、前記通知文書内容情報に基づいて、前記プログラムの更新を通知する通知文書を作成し、前記プログラムの前記利用者に対して送信する。 To achieve the above object, a program update management system according to one aspect is a program update management system for managing program updates, the program update management system having a processor unit, the processor unit comprising the Acquiring notification document content information specifying the content of a notification document when the program is updated from a user of the program, determining whether or not the program has been updated, and determining whether the program has been updated. Sometimes, based on the notification document content information, a notification document for notifying the update of the program is created and sent to the user of the program.

本発明によれば、開発者の開発したプログラムに影響を及ぼす可能性のあるプログラムの更新を、容易且つ適切に開発者に把握させることができる。 According to the present invention, it is possible for a developer to easily and appropriately grasp update of a program that may affect the program developed by the developer.

図1は、一実施形態に係る計算機システムの全体構成図である。FIG. 1 is an overall configuration diagram of a computer system according to one embodiment. 図2は、一実施形態に係る計算機のハードウェア構成図である。FIG. 2 is a hardware configuration diagram of a computer according to one embodiment. 図3は、一実施形態に係る利用者情報の構成図である。FIG. 3 is a configuration diagram of user information according to one embodiment. 図4は、一実施形態に係るサービス一覧情報の構成図である。FIG. 4 is a configuration diagram of service list information according to one embodiment. 図5は、一実施形態に係るサービス情報の構成図である。FIG. 5 is a configuration diagram of service information according to one embodiment. 図6は、一実施形態に係るインスタンス情報の構成図である。FIG. 6 is a configuration diagram of instance information according to one embodiment. 図7は、一実施形態に係る通知管理情報の構成図である。FIG. 7 is a configuration diagram of notification management information according to one embodiment. 図8は、一実施形態に係る通知文書内容情報の構成図である。FIG. 8 is a configuration diagram of notification document content information according to one embodiment. 図9は、一実施形態に係るサービスデプロイ処理のフローチャートである。FIG. 9 is a flowchart of service deployment processing according to one embodiment. 図10は、一実施形態に係るサービス更新処理のフローチャートである。FIG. 10 is a flowchart of service update processing according to one embodiment. 図11は、一実施形態に係るサービス更新解析処理のフローチャートである。FIG. 11 is a flowchart of service update analysis processing according to one embodiment. 図12は、一実施形態に係るサービス更新通知処理のフローチャートである。FIG. 12 is a flowchart of service update notification processing according to one embodiment.

実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。 Embodiments will be described with reference to the drawings. It should be noted that the embodiments described below do not limit the invention according to the scope of claims, and that all of the elements described in the embodiments and their combinations are essential to the solution of the invention. is not limited.

以下の説明では、各種情報を、例えば、テーブル形式のデータ構造として説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。 In the following description, various types of information may be described as, for example, a table format data structure, but the information may be expressed in any data structure.

また、以下の説明では、「プロセッサ部」は、1以上のプロセッサを含む。少なくとも1つのプロセッサは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサである。1以上のプロセッサの各々は、シングルコアでもよいしマルチコアでもよい。プロセッサは、処理の一部または全部を行うハードウェア回路を含んでもよい。 Also, in the following description, a "processor unit" includes one or more processors. The at least one processor is typically a microprocessor such as a CPU (Central Processing Unit). Each of the one or more processors may be single-core or multi-core. A processor may include hardware circuitry that performs some or all of the processing.

また、以下の説明では、「プログラム」を動作主体として処理を説明する場合があるが、プログラムは、プロセッサ部(CPU等)によって実行されることで、定められた処理を、適宜に記憶資源(メモリ、記憶装置等)及びインターフェース部のうちの少なくとも1つを用いながら行うため、処理の主語が、プロセッサ部(或いは、プロセッサ部を有する計算機又は計算機システム)とされてもよい。 In the following explanation, the processing may be explained with the "program" as the main body of operation, but the program is executed by the processor unit (CPU etc.), and the determined processing is appropriately performed by the storage resource ( memory, storage device, etc.) and an interface unit, the subject of processing may be the processor unit (or a computer or computer system having a processor unit).

図1は、一実施形態に係る計算機システムの全体構成図である。 FIG. 1 is an overall configuration diagram of a computer system according to one embodiment.

計算機システムは、プログラム更新管理システムの一例としてのマーケットプレイスシステム100と、サービス開発者20がサービス開発などに使用する計算機200と、アプリケーション(プログラム)開発者30が開発などに使用する計算機300と、実行サーバ400とを備える。マーケットプレイスシステム100、計算機200、計算機300、及び実行サーバ400とは、ネットワーク10を介して接続されている。 The computer system includes a marketplace system 100 as an example of a program update management system, a computer 200 used by a service developer 20 for service development, etc., a computer 300 used by an application (program) developer 30 for development, etc. and an execution server 400 . Marketplace system 100 , computer 200 , computer 300 and execution server 400 are connected via network 10 .

ネットワーク10は、インターネットやローカルエリアネットワーク(LAN)、専用の通信網、またはVLAN(Virtual LAN)などに代表される仮想的なネットワークであってもよい。 The network 10 may be a virtual network represented by the Internet, a local area network (LAN), a dedicated communication network, or a VLAN (Virtual LAN).

マーケットプレイスシステム100、計算機200、計算機300、及び実行サーバ400は、それぞれ、プロセッサ(CPU)、メモリ、ハードディスクなどを備える1以上の計算機で構成してもよく、1以上の物理計算機を論理的に分割して構成される仮想計算機で構成してもよく、1以上の物理計算機のクラスタ上で構成されるタスク(プロセスやコンテナとも呼ばれる)で構成されてもよい。 The marketplace system 100, the computer 200, the computer 300, and the execution server 400 may each be composed of one or more computers equipped with a processor (CPU), memory, hard disk, etc., and logically one or more physical computers. It may be composed of divided virtual computers, or may be composed of tasks (also called processes or containers) configured on a cluster of one or more physical computers.

マーケットプレイスシステム100は、画面プログラム110と、デプロイプログラム120と、更新解析プログラム130と、更新通知プログラム140と、テンプレートエンジン160と、レジストリ150と、利用者情報T110と、サービス一覧情報T210と、サービス情報T310と、インスタンス情報T410と、通知管理情報T510と、通知文書内容情報T610とを備える。利用者情報T110、サービス一覧情報T210、サービス情報T310、インスタンス情報T410、通知管理情報T510、及び通知文書内容情報T610については後述する。 The marketplace system 100 includes a screen program 110, a deploy program 120, an update analysis program 130, an update notification program 140, a template engine 160, a registry 150, user information T110, service list information T210, service It comprises information T310, instance information T410, notification management information T510, and notification document content information T610. User information T110, service list information T210, service information T310, instance information T410, notification management information T510, and notification document content information T610 will be described later.

レジストリ150は、サービスイメージ151を保持する。サービスイメージ151は、VM(Virtual Machine:仮想マシーン)のイメージと、サービスを実現するプログラムとを含む。図1においては、便宜上、マーケットプレイスシステム100が備えるレジストリ150を1つとしているが、サービス情報T310と結びつくのであれば、複数であってもよい。レジストリ150は、例えば、イメージがいずれもコンテナイメージの場合は、Docker Registryなどに代表されるコンテナレジストリであり、イメージがバイナリである場合は、バイナリを配布する機能を有した各種レジストリである。なお、異なる複数種類のイメージ(例えば、バイナリとコンテナ)が混在する場合は、複数の異なる種類のレジストリ150としてもよい。レジストリ150は、オブジェクトストレージなどネットワーク10経由で利用できるストレージなどであってもよい。 The registry 150 holds service images 151 . The service image 151 includes a VM (Virtual Machine) image and a program that implements the service. In FIG. 1, for the sake of convenience, the marketplace system 100 has one registry 150, but there may be multiple as long as they are associated with the service information T310. The registry 150 is, for example, a container registry represented by Docker Registry when all images are container images, and various registries having a function of distributing binaries when the images are binary. Note that if different types of images (for example, binaries and containers) coexist, a plurality of different types of registries 150 may be used. The registry 150 may be storage that can be used via the network 10, such as object storage.

画面プログラム110(厳密には、画面プログラム110を実行するプロセッサ(例えば、CPU1930(図2参照)))は、アプリケーション開発者30の計算機300に対して、マーケットプレイスシステム100に登録されているサービス情報T310を表示し、計算機300からアプリケーション開発者30によるサービスの利用開始要求を受信する。また、画面プログラム110は、アプリケーション開発者30が利用中のサービス情報を利用者情報T110から抽出して計算機300に表示する。また、画面プログラム110は、サービス開発者20の計算機200に対して、サービス開発者20がマーケットプレイスシステム100に登録しているサービス情報T310を表示したり、サービスの更新情報を登録するための情報を表示したりする。 The screen program 110 (strictly speaking, the processor (for example, the CPU 1930 (see FIG. 2)) that executes the screen program 110 sends the service information registered in the marketplace system 100 to the computer 300 of the application developer 30. T310 is displayed, and a service usage start request from the application developer 30 is received from the computer 300 . The screen program 110 also extracts service information currently used by the application developer 30 from the user information T110 and displays it on the computer 300. FIG. The screen program 110 also displays service information T310 registered by the service developer 20 in the marketplace system 100 on the computer 200 of the service developer 20, and information for registering service update information. to display.

画面プログラム110は、APIを備えてもよく、アプリケーション開発者30の計算機300に対して、マーケットプレイスシステム100に登録されているサービス情報T310をAPI経由で提供したり、サービスの利用開始要求をAPI経由で受信したりしてもよい。また、画面プログラム110は、アプリケーション開発者30が利用中のサービス情報を利用者情報T110から抽出して計算機300にAPI経由で提供してもよい。また、画面プログラム110は、サービス開発者20の計算機200に対して、サービス開発者20がマーケットプレイスシステム100に登録しているサービス情報T310をAPI経由で提供したり、サービスの更新情報をAPI経由で登録したりしてもよい。 The screen program 110 may have an API, and provides the computer 300 of the application developer 30 with the service information T310 registered in the marketplace system 100 via the API, or requests to start using the service via the API. You may receive it via Further, the screen program 110 may extract service information being used by the application developer 30 from the user information T110 and provide it to the computer 300 via API. Further, the screen program 110 provides service information T310 registered in the marketplace system 100 by the service developer 20 via the API to the computer 200 of the service developer 20, and updates service update information via the API. You can register with

デプロイプログラム120(厳密には、デプロイプログラム120を実行するプロセッサ(例えば、CPU1930(図2参照)))は、アプリケーション開発者30の計算機300から渡された利用開始要求を解析し、利用開始要求に該当するサービスのサービスイメージ151をレジストリ150の中から検索し、得られたサービスイメージ151を実行サーバ400にデプロイする。デプロイプログラム120がサービスイメージ151をデプロイする処理(デプロイ処理)は、既存の技術を利用すればよく、例えば、コンテナイメージを使用する場合は、Docker(登録商標)やKubernetes(登録商標)などを利用してもよいし、仮想マシンイメージを使用する場合は、OpenStack(登録商標)などを利用してもよい。デプロイプログラム120によるデプロイ処理によると、例えば、サービスイメージ151がVMのイメージと、サービスを実現するプログラムを含む場合には、実行サーバ400上にサービスインスタンス410が形成され、VMが構成され、VMによりプログラムが実行されることにより、サービスが実行可能となる。 The deploy program 120 (strictly speaking, the processor (for example, the CPU 1930 (see FIG. 2) that executes the deploy program 120) analyzes the use start request passed from the computer 300 of the application developer 30, and responds to the use start request. The service image 151 of the corresponding service is searched from the registry 150 and the obtained service image 151 is deployed to the execution server 400 . The process (deployment process) in which the deploy program 120 deploys the service image 151 may use existing technology. For example, when using a container image, Docker (registered trademark) or Kubernetes (registered trademark) may be used. Alternatively, when using a virtual machine image, OpenStack (registered trademark) or the like may be used. According to the deployment processing by the deployment program 120, for example, when the service image 151 includes a VM image and a program that implements the service, the service instance 410 is formed on the execution server 400, the VM is configured, and the VM The service becomes executable by executing the program.

更新解析プログラム130(厳密には、更新解析プログラム130を実行するプロセッサ(例えば、CPU1930(図2参照)))は、サービス開発者20が計算機200を介して登録したサービスの更新情報を解析する。 The update analysis program 130 (strictly speaking, the processor (for example, the CPU 1930 (see FIG. 2)) that executes the update analysis program 130 analyzes the service update information registered by the service developer 20 via the computer 200 .

更新通知プログラム140は、(厳密には、更新通知プログラム140を実行するプロセッサ(例えば、CPU1930(図2参照)))は、更新解析プログラム130の解析結果をもとに、利用者情報T110と、サービス情報T310と、通知管理情報T510と、通知文書内容情報T610とを使用してサービスの更新(プログラムの更新も含む)を通知するための通知文書(更新通知文書ともいう)を生成し、アプリケーション開発者30に対して更新通知文書を送信する。 The update notification program 140 (strictly speaking, the processor (for example, the CPU 1930 (see FIG. 2)) that executes the update notification program 140, based on the analysis result of the update analysis program 130, the user information T110, The service information T310, the notification management information T510, and the notification document content information T610 are used to generate a notification document (also referred to as an update notification document) for notifying service updates (including program updates). An update notification document is sent to the developer 30 .

なお、更新通知文書の送信先、すなわち、サービス更新の通知先は、アプリケーション開発者30によって通知管理情報T510に事前に登録されている。アプリケーション開発者30に対する更新通知文書の通知手段としては、例えばアプリケーション開発者30の計算機300で動作する、アプリケーション開発者30が使用する開発管理プログラム310に送信する手段でもよいし、アプリケーション開発者30が使用するテストプログラム320に送信する手段でもよいし、電子メールを用いる手段でもよく、これに限られず、アプリケーション開発者30により指定された通知手段であればよい。 Note that the destination of the update notification document, that is, the destination of the service update, is registered in advance by the application developer 30 in the notification management information T510. As a means for notifying the application developer 30 of the update notification document, for example, means for transmitting to the development management program 310 used by the application developer 30, which operates on the computer 300 of the application developer 30, may be used. It may be a means of transmitting to the test program 320 to be used, or a means of using e-mail.

ここで、画面プログラム110、デプロイプログラム120、更新解析プログラム130、及び更新通知プログラム140の少なくとも1つのプログラムは、例えば、CD、DVD等のコンピュータ読取可能な記録媒体に格納させておき、この記録媒体から読み出して、マーケットプレイスシステム100にインストールしてもよい。 Here, at least one of the screen program 110, the deploy program 120, the update analysis program 130, and the update notification program 140 is stored in a computer-readable recording medium such as a CD or DVD. , and installed in the marketplace system 100.

テンプレートエンジン160は、通知文書内容情報T610のテンプレートに従って、通知文書を生成する。テンプレートエンジン160としては、例えばJinjaのような既存のテンプレートエンジンを用いることができる。 The template engine 160 generates a notification document according to the template of the notification document content information T610. As the template engine 160, an existing template engine such as Jinja can be used.

計算機300は、アプリケーション開発者30により使用される計算機であり、開発管理プログラム310と、テストプログラム320と、アプリプログラム(アプリケーションプログラム)330とを含む。 Computer 300 is used by application developer 30 and includes development management program 310 , test program 320 , and application program (application program) 330 .

アプリプログラム330は、アプリケーション開発者が開発した、又は、開発しているプログラム(アプリプログラム、アプリケーション、アプリともいう)である。本実施形態では、アプリプログラム330は、マーケットプレイスシステム100により提供されるサービスのプログラムの機能を利用して、各種処理を実行するプログラムである。テストプログラム320は、アプリプログラム330をテストするためのプログラムである。開発管理プログラム310は、アプリプログラム330の開発を管理するプログラムである。 The application program 330 is a program developed or being developed by an application developer (also referred to as an application program, application, or app). In this embodiment, the application program 330 is a program that uses the functions of the service program provided by the marketplace system 100 to execute various processes. A test program 320 is a program for testing the application program 330 . The development management program 310 is a program that manages development of the application program 330 .

次に、マーケットプレイスシステム100、計算機200、計算機300、及び実行サーバ400のそれぞれを構成する計算機の構成について説明する。 Next, the configurations of the computers constituting the marketplace system 100, computer 200, computer 300, and execution server 400 will be described.

図2は、一実施形態に係る計算機のハードウェア構成図である。 FIG. 2 is a hardware configuration diagram of a computer according to one embodiment.

計算機1910は、メモリ1920と、CPU1930と、入出力IF(インターフェース)1940と、記憶装置1950と、NW IF(ネットワークインターフェース)1960と、GPU(Graphics Processing Unit)1970とを備える。メモリ1920、CPU1930、入出力IF1940、記憶装置1950、NW IF1960、及びGPU1970は、内部バス1980を介して接続されている。なお、記憶装置1950は、必須要素ではなく、記憶装置1950の代わりに、例えば、外部ストレージ装置を用いてもよく、また、ストレージ装置の機能を論理的に提供するストレージサービスを用いてもよい。また、計算機1910に、図2に記載された以外の構成要素や、構成要素を接続する配線等が含まれていてもよい。 The computer 1910 includes a memory 1920 , a CPU 1930 , an input/output IF (interface) 1940 , a storage device 1950 , a NW IF (network interface) 1960 and a GPU (Graphics Processing Unit) 1970 . Memory 1920 , CPU 1930 , input/output IF 1940 , storage device 1950 , NW IF 1960 and GPU 1970 are connected via internal bus 1980 . Note that the storage device 1950 is not an essential element, and instead of the storage device 1950, for example, an external storage device may be used, or a storage service that logically provides the functions of the storage device may be used. In addition, the computer 1910 may include components other than those shown in FIG. 2, wires connecting the components, and the like.

NW IF1960は、例えば、有線LANカードや無線LANカードなどのNIC(ネットワークインターフェースカード)であり、ネットワーク10を介して他の装置と通信する。 The NW IF 1960 is, for example, a NIC (Network Interface Card) such as a wired LAN card or wireless LAN card, and communicates with other devices via the network 10 .

CPU1930は、メモリ1920及び/又は記憶装置1950に格納されているプログラムに従って各種処理を実行する。 CPU 1930 executes various processes according to programs stored in memory 1920 and/or storage device 1950 .

メモリ1920は、例えば、RAMであり、CPU1930で実行されるプログラムや、必要な情報を記憶する。本実施形態では、メモリ1920に、記憶装置1950に格納されているOS(Operating System)P1000がロードされて、CPU1930により実行される。 The memory 1920 is, for example, a RAM, and stores programs executed by the CPU 1930 and necessary information. In this embodiment, an OS (Operating System) P1000 stored in a storage device 1950 is loaded into the memory 1920 and executed by the CPU 1930 .

記憶装置1950は、例えば、ハードディスクやフラッシュメモリなどであり、CPU1930で実行されるプログラム(OS P1000等)や、CPU1930に利用されるデータを記憶する。マーケットプレイスシステム100、計算機200、計算機300、及び実行サーバ400のそれぞれを構成する計算機1910の記憶装置1950には、図1に記載した各構成のプログラムや情報等が格納される。なお、各プログラムは、1つの計算機1910ですべてのステップが実行されてもよいし、ステップによって異なる計算機で実行されてもよい。 The storage device 1950 is, for example, a hard disk or a flash memory, and stores programs (OS P1000, etc.) executed by the CPU 1930 and data used by the CPU 1930 . The storage device 1950 of the computer 1910 constituting each of the marketplace system 100, the computer 200, the computer 300, and the execution server 400 stores programs, information, etc. of each configuration shown in FIG. All steps of each program may be executed by one computer 1910, or may be executed by different computers depending on the steps.

入出力IF1940は、例えば、ディスプレイ等の出力装置や、キーボード、マウス等の入力装置であり、計算機1910の利用者からの各種入力を受け付けるとともに、利用者に対する各種情報を表示出力する。なお、Secure Shell(SSH)といった手段によりネットワーク10経由で、計算機1910が遠隔管理される場合には、入力IF1940を備えていなくてもよい。 The input/output IF 1940 is, for example, an output device such as a display, and an input device such as a keyboard and a mouse, and receives various inputs from the user of the computer 1910 and displays and outputs various information for the user. In addition, when the computer 1910 is remotely managed via the network 10 by a means such as Secure Shell (SSH), the input IF 1940 may not be provided.

GPU1970は、各種画像処理を実行する。なお、GPU1970を備えずに、CPU1930により画像処理を行うようにしてもよい。 The GPU 1970 executes various image processing. Image processing may be performed by the CPU 1930 without the GPU 1970 .

次に、マーケットプレイスシステム100に格納される各種情報について説明する。 Next, various information stored in the marketplace system 100 will be described.

まず、利用者情報T110について説明する。 First, the user information T110 will be explained.

図3は、一実施形態に係る利用者情報の構成図である。 FIG. 3 is a configuration diagram of user information according to one embodiment.

利用者情報T110は、マーケットプレイスシステム100のサービスを利用する利用者、すなわち、サービスを提供するプログラムの機能を利用してアプリケーション(プログラム)を開発するアプリケーション開発者(以下、単に、利用者ともいう)に関する情報である。 The user information T110 is a user who uses the service of the marketplace system 100, that is, an application developer who develops an application (program) using the function of the program that provides the service (hereinafter simply referred to as a user). ).

利用者情報T110は、例えば、テーブル形式で構成されており、各利用者毎のエントリを含む。利用者情報T110のエントリは、利用者ID T101と、サービス一覧ID T102と、通知管理ID T103とのフィールド(カラム)を含む。 The user information T110 is configured in, for example, a table format and includes an entry for each user. The entry of the user information T110 includes fields (columns) of a user ID T101, a service list ID T102, and a notification management ID T103.

利用者ID T101には、利用者を識別するID(利用者ID)が格納される。利用者IDは、利用者を一意に特定するための情報であればよく、例えば、数字や、利用者のアカウント名や、社員IDを用いてもよい。 The user ID T101 stores an ID (user ID) for identifying the user. The user ID may be any information that uniquely identifies the user, and may be, for example, a number, the user's account name, or an employee ID.

サービス一覧ID T102には、エントリに対応する利用者が利用しているサービスの一覧を識別するID(サービス一覧ID)が格納される。サービス一覧IDは、1つの利用者IDに対して複数存在してもよい。 The service list ID T102 stores an ID (service list ID) for identifying a list of services used by the user corresponding to the entry. A plurality of service list IDs may exist for one user ID.

通知管理ID T103には、エントリに対応する利用者に対する通知管理内容を識別するID(通知管理ID)が格納される。通知管理IDは、利用者についての通知管理内容を一意に特定するための情報であればよく、例えば、数字や、任意の文字列としてもよい。通知管理IDは、1つの利用者IDに対して複数存在してもよい。 The notification management ID T103 stores an ID (notification management ID) that identifies the content of notification management for the user corresponding to the entry. The notification management ID may be information for uniquely identifying the content of notification management for the user, and may be, for example, numbers or arbitrary character strings. A plurality of notification management IDs may exist for one user ID.

次に、サービス一覧情報T210について説明する。 Next, the service list information T210 will be explained.

図4は、一実施形態に係るサービス一覧情報の構成図である。 FIG. 4 is a configuration diagram of service list information according to one embodiment.

サービス一覧情報T210は、マーケットプレイスシステム100の利用者が利用しているサービスの一覧に関する情報である。 The service list information T210 is information relating to a list of services used by users of the marketplace system 100. FIG.

サービス一覧情報T210は、例えば、テーブル形式で構成されており、各サービス一覧のエントリを含む。サービス一覧情報T210のエントリは、サービス一覧ID T201と、サービスID T202と、インスタンスID T203とのフィールドを含む。 The service list information T210 is configured in, for example, a table format, and includes entries for each service list. The entry of the service list information T210 includes fields of service list ID T201, service ID T202, and instance ID T203.

サービス一覧ID T201には、サービス一覧を識別するID(サービス一覧ID)が格納される。サービス一覧IDは、サービス一覧ID T102の値と対応する。サービスID T202には、エントリに対応するサービス一覧に属するサービスを一意に特定するためのID(サービスID)が格納される。サービスIDは、サービスを一意に特定するための情報であればよく、例えば、数字や任意の文字列であってもよい。インスタンスID T203には、エントリに対応するサービスの実行サーバ400におけるインスタンスを一意に特定するための情報(インスタンスID)が格納される。インスタンスIDは、インスタンスを識別できる値であればよく、例えば、数字や任意の文字列であってもよい。 The service list ID T201 stores an ID (service list ID) for identifying a service list. The service list ID corresponds to the value of the service list ID T102. The service ID T202 stores an ID (service ID) for uniquely identifying a service belonging to the service list corresponding to the entry. The service ID may be information for uniquely identifying the service, and may be, for example, numbers or arbitrary character strings. The instance ID T203 stores information (instance ID) for uniquely identifying the instance in the execution server 400 of the service corresponding to the entry. The instance ID may be any value that can identify the instance, and may be a number or any character string, for example.

サービス一覧情報T210においては、同一の利用者のサービス一覧に属するサービスが複数ある場合には、同一のサービス一覧IDに対応するエントリが複数存在する。 In the service list information T210, when there are multiple services belonging to the same user's service list, there are multiple entries corresponding to the same service list ID.

次に、サービス情報T310について説明する。 Next, the service information T310 will be explained.

図5は、一実施形態に係るサービス情報の構成図である。 FIG. 5 is a configuration diagram of service information according to one embodiment.

サービス情報T310は、マーケットプレイスシステム100におけるサービスについての各種情報を管理するための情報である。サービスについての情報としては、サービスを実現するプログラムや、プログラムに対するAPIの情報等のプログラムに関する情報が含まれている。 The service information T<b>310 is information for managing various information about services in the marketplace system 100 . The service information includes a program that implements the service and information about the program such as API information for the program.

サービス情報T310は、例えば、テーブル形式で構成されており、各サービスごとのエントリを含む。サービス情報T310のエントリは、サービスID T301と、サービス名T302と、サービス説明T303と、サービス利用料金T304と、サービスイメージID T305と、現在サービスバージョンT306と、サービスAPI T307とのフィールドを含む。 The service information T310 is configured in, for example, a table format and includes an entry for each service. The entry of service information T310 includes fields of service ID T301, service name T302, service description T303, service charge T304, service image ID T305, current service version T306, and service API T307.

サービスID T301には、サービスを識別するサービスIDが格納される。サービスIDは、サービス一覧情報T210のサービスIDと対応する。サービス名T302には、エントリに対応するサービスの名称(サービス名)が格納される。サービス名は、例えば、マーケットプレイスシステム100にサービスを新たに登録するときや、サービスの名称を変更するときにサービス開発者20により設定される。サービス名は、例えば、サービスを示す文字列である。サービス説明T303には、エントリに対応するサービスについての説明が格納される。サービスの説明は、例えば、マーケットプレイスシステム100にサービスを新たに登録するときや、サービスの説明を変更する必要がある場合にサービス開発者20により設定される。サービス説明は、例えば、サービスの内容を説明する文字列である。 A service ID for identifying a service is stored in the service ID T301. The service ID corresponds to the service ID of the service list information T210. The service name T302 stores the name of the service (service name) corresponding to the entry. The service name is set by the service developer 20, for example, when registering a new service in the marketplace system 100 or when changing the name of the service. A service name is, for example, a character string indicating a service. The service description T303 stores a description of the service corresponding to the entry. The service description is set by the service developer 20, for example, when a new service is registered in the marketplace system 100 or when the service description needs to be changed. The service description is, for example, a character string describing the content of the service.

サービス利用料金T304には、エントリに対応するサービスを利用する時に要する料金(サービス利用料金)が格納される。サービス利用料金は、マーケットプレイスシステム100にサービスを新たに登録するときや、サービス料金を変更する必要がある場合にサービス開発者20により設定される。サービスイメージID T305には、エントリに対応するサービスのインスタンスを作成する際に使用するサービスイメージ151を一意に特定するための情報(サービスイメージID)が格納される。サービスイメージIDは、例えば、サービスイメージが格納されたレジストリ150上のパス及びバージョンなどのタグ情報、もしくはサービスイメージ151を特定するためのハッシュ値などである。 The service usage fee T304 stores the fee required when using the service corresponding to the entry (service usage fee). The service usage fee is set by the service developer 20 when a new service is registered in the marketplace system 100 or when the service fee needs to be changed. The service image ID T305 stores information (service image ID) for uniquely identifying the service image 151 used when creating an instance of the service corresponding to the entry. The service image ID is, for example, tag information such as a path and version on the registry 150 storing the service image, or a hash value for specifying the service image 151 .

現在サービスバージョンT306には、エントリに対応するサービスを提供するプログラムの現在のバージョン(現在サービスバージョン)が格納される。現在サービスバージョンは、マーケットプレイスシステム100にサービスを新たに登録するときや、サービスのプログラムを更新した時に設定される。現在サービスバージョンは、数値や文字列であってもよい。サービスAPI T307には、エントリに対応するサービスを提供するプログラムに対応するAPI(例えば、Web API)の情報が格納される。APIの情報は、例えば、マーケットプレイスシステム100にサービスを新たに登録するときや、サービスのプログラムのAPIを変更する必要がある場合にサービス開発者20により設定される。APIの情報は、例えば、APIにおけるアクセス先(例えば、URL)を示すエンドポイント情報(endpoint)、APIにおけるリクエストの形式を定義するリクエスト情報(request)、APIにおけるレスポンスの形式を定義するレスポンス情報(response)を含む。サービスAPI T307に格納されるAPIの情報は、これに限られず、例えば、OpenAPIのような標準仕様に準拠した形式で書かれたファイルへのパスとしてもよい。 The current service version T306 stores the current version (current service version) of the program that provides the service corresponding to the entry. The current service version is set when a new service is registered in the marketplace system 100 or when a service program is updated. The current service version may be a number or a string. The service API T307 stores information of an API (for example, Web API) corresponding to a program that provides a service corresponding to the entry. The API information is set by the service developer 20, for example, when a new service is registered in the marketplace system 100 or when the API of the service program needs to be changed. API information includes, for example, endpoint information (endpoint) indicating an access destination (e.g., URL) in the API, request information (request) defining the format of requests in the API, response information defining the format of responses in the API ( response). The API information stored in the service API T307 is not limited to this, and may be, for example, a path to a file written in a format conforming to standard specifications such as OpenAPI.

なお、サービス情報T310のエントリに、サービスのロゴや、サンプルコードなどを格納するフィールドを設けるようにしてもよい。 It should be noted that the entry of the service information T310 may be provided with fields for storing service logos, sample codes, and the like.

次に、インスタンス情報T410について説明する。 Next, the instance information T410 will be explained.

図6は、一実施形態に係るインスタンス情報の構成図である。 FIG. 6 is a configuration diagram of instance information according to one embodiment.

インスタンス情報T410は、実行サーバ400にデプロイしたサービスインスタンス(インスタンスともいう)410の情報を管理するための情報である。 The instance information T 410 is information for managing information on the service instance (also referred to as instance) 410 deployed on the execution server 400 .

インスタンス情報T410は、例えば、テーブル形式で構成されており、各インスタンスごとのエントリを含む。インスタンス情報T410のエントリは、インスタンスID T401と、サービスID T402と、利用者ID T403と、稼働サービスバージョンT404と、利用開始時間T405と、実行環境ID T406とのフィールドを含む。 The instance information T410 is configured in, for example, a table format and includes an entry for each instance. The entry of instance information T410 includes fields of instance ID T401, service ID T402, user ID T403, operating service version T404, usage start time T405, and execution environment ID T406.

インスタンスID T401には、エントリに対応するインスタンス410のインスタンスIDが格納される。インスタンスIDは、サービス一覧情報T210のインスタンスID T203のインスタンスIDと対応する。サービスID T402には、エントリに対応するインスタンス410に対応するサービスのサービスIDが格納される。サービスIDは、サービス情報T310のサービスID T301のサービスIDと対応する。 The instance ID T401 stores the instance ID of the instance 410 corresponding to the entry. The instance ID corresponds to the instance ID of the instance ID T203 of the service list information T210. The service ID T402 stores the service ID of the service corresponding to the instance 410 corresponding to the entry. The service ID corresponds to the service ID of service ID T301 of service information T310.

利用者ID T403には、エントリに対応するインスタンス410を利用する利用者の利用者IDが格納される。利用者IDは、利用者情報T110の利用者ID T101の利用者IDと対応する。稼働サービスバージョンT404には、エントリに対応するインスタンスがデプロイされた際のサービスのプログラムのバージョン(稼働サービスバージョン)が格納される。 The user ID T403 stores the user ID of the user who uses the instance 410 corresponding to the entry. The user ID corresponds to the user ID of user ID T101 of user information T110. The running service version T404 stores the program version of the service when the instance corresponding to the entry was deployed (running service version).

利用開始時間T405には、エントリに対応するインスタンス410の利用が開始された時間(利用開始時間)が格納される。利用開始時間としては、年月日や曜日、時刻といった情報を含んでもよい。実行環境ID T406には、エントリに対応するインスタンス410が実行されている実行環境(実行サーバ400)を一意に特定するための情報(実行環境ID)が格納される。実行環境IDとしては、実行環境を識別できる情報であればよく、インスタンス410を実行する実行サーバ400のIPアドレス、ホスト名、URL、又はこれらを含むテキストデータへのリンク情報であってもよい。 The use start time T405 stores the time (use start time) when the use of the instance 410 corresponding to the entry was started. The usage start time may include information such as date, day of the week, and time. The execution environment ID T406 stores information (execution environment ID) for uniquely identifying the execution environment (execution server 400) in which the instance 410 corresponding to the entry is executed. The execution environment ID may be any information that can identify the execution environment, and may be the IP address, host name, or URL of the execution server 400 that executes the instance 410, or link information to text data containing these.

次に、通知管理情報T510について説明する。 Next, the notification management information T510 will be explained.

図7は、一実施形態に係る通知管理情報の構成図である。 FIG. 7 is a configuration diagram of notification management information according to one embodiment.

通知管理情報T510は、サービスに関する更新が発生した場合における更新通知に関する情報を管理するための情報である。 The notification management information T510 is information for managing information regarding update notifications when updates regarding services occur.

通知管理情報T510は、例えば、テーブル形式で構成されており、各通知管理内容ごとのエントリを含む。通知管理情報T510のエントリは、通知管理ID T501と、通知先情報T502と、通知文書内容ID T503と、通知手段T504とのフィールドを含む。 The notification management information T510 is configured in, for example, a table format, and includes an entry for each notification management content. The entry of notification management information T510 includes fields of notification management ID T501, notification destination information T502, notification document content ID T503, and notification means T504.

通知管理ID T501には、エントリに対応する通知管理内容を識別する通知管理IDが格納される。通知管理IDは、利用者情報T110の通知管理ID T103の通知管理IDに対応する。通知先情報T502には、更新が発生した際に、通知文書を通知するアクセス先の情報(通知先情報)が格納される。通知先情報としては、例えば、WebhookのURLアドレスであってもよく、通知先のシステムのAPIであってもよく、電話番号、電子メールアドレスであってもよい。 The notification management ID T501 stores a notification management ID that identifies the content of notification management corresponding to the entry. The notification management ID corresponds to the notification management ID of the notification management ID T103 of the user information T110. The notification destination information T502 stores information of an access destination (notification destination information) to which a notification document is notified when an update occurs. The notification destination information may be, for example, a Webhook URL address, an API of the notification destination system, a telephone number, or an e-mail address.

通知文書内容ID T503には、通知文書の内容を一意に特定するための情報(通知文書内容ID)が格納される。通知文書内容IDとしては、通知文書内容を識別できる値であればよく、例えば、数字や任意の文字列を用いてもよい。通知手段T504には、通知文書を送信する際の通知手段を一意に特定するための情報が格納される。通知手段を特定するための情報としては、通知手段を一意に特定できる値であればよく、例えば、URLへの通知を示す「HTTP」、ショートメールでの通知を示す「SMS」、電子メールでの通知を示す「EMAIL」等であってもよい。 The notification document content ID T503 stores information (notification document content ID) for uniquely identifying the content of the notification document. Any value that can identify the content of the notification document may be used as the notification document content ID. For example, a number or an arbitrary character string may be used. The notification means T504 stores information for uniquely specifying the notification means when sending the notification document. The information for specifying the notification means may be any value that can uniquely identify the notification means. For example, "HTTP" indicating notification to URL, "SMS" indicating notification by short mail, and It may be "EMAIL" or the like indicating the notification of.

次に、通知文書内容情報T610について説明する。 Next, the notification document content information T610 will be described.

図8は、一実施形態に係る通知文書内容情報の構成図である。 FIG. 8 is a configuration diagram of notification document content information according to one embodiment.

通知文書内容情報T610は、通知文書の内容、例えば、通知文書の記載や、通知文書の記載方法等の情報である。通知文書内容情報T610は、通知文書内容毎に対応するエントリ(テンプレート)を格納する。通知文書内容情報T610のエントリは、例えば、通知先が受信可能且つ認識可能な形式のテキスト情報である。通知文書内容情報T610のエントリについては、利用者によって予め設定される。図8の例では、通知文書内容情報T610として、通知文書内容ID「ntfy-text001」に対応する通知文書内容のエントリT601と、通知文書内容ID「ntfy-text004」に対応する通知文書内容のエントリT602とが表示されている。 The notification document content information T610 is information about the content of the notification document, for example, the description of the notification document, the description method of the notification document, and the like. The notification document content information T610 stores an entry (template) corresponding to each notification document content. The entry of the notification document content information T610 is, for example, text information in a format that can be received and recognized by the notification recipient. The entry of the notification document content information T610 is set in advance by the user. In the example of FIG. 8, as the notification text content information T610, an entry T601 of the notification text content corresponding to the notification text content ID "ntfy-text001" and an entry T601 of the notification text content corresponding to the notification text content ID "ntfy-text004" T602 is displayed.

エントリT601においては、JSON(JavaScript(登録商標) Object Notation)形式のテキスト情報が含まれている。「message」項目には、「現在利用中のサービスに更新がありました。」と記載されている。また「body」項目には、更新されたサービス名(プログラム名に対応)の一覧をHTMLのリスト形式で記載するための、テンプレートエンジン160が処理可能なテンプレートのテキスト情報が記載されている。図の例では、「service.name」が更新のあったそれぞれのサービス名に置き換えられる変数項目である。エントリT601によると、計算機30、開発管理プログラム310や、テストプログラム320が容易に内容を認識することのできる形式の通知文書を作成することができる。したがって、この通知文書を、開発管理プログラム310や、テストプログラム320に取り込ませて各種処理を行うことができるようになり、サービスの更新に対処するためのプログラムの開発に係る処理を効率化することができる。 Entry T601 contains text information in JSON (Javascript (registered trademark) Object Notation) format. The item "message" describes "the service currently in use has been updated." The "body" item describes text information of a template that can be processed by the template engine 160 for describing a list of updated service names (corresponding to program names) in HTML list format. In the illustrated example, "service.name" is a variable item to be replaced with each updated service name. According to the entry T601, it is possible to create a notification document in a format that allows the computer 30, the development management program 310, and the test program 320 to easily recognize the content. Therefore, the notification document can be imported into the development management program 310 and the test program 320 to perform various processes, thereby improving the efficiency of the process related to the development of programs for updating services. can be done.

エントリT602においては、JSON形式のテキスト情報が含まれている。「message」項目には、「現在利用中のサービスに更新がありました。」と記載されている。また「body」項目には、更新されたサービス名(プログラム名に対応)を順次並べて記載するための、テンプレートエンジン160が処理可能なテンプレートのテキスト情報が記載されている。図の例では、「service.name」が更新のあったそれぞれのサービス名に置き換えられる変数項目である。エントリT602によると、利用者が容易に認識できる、電子メールに適した形式の通知文書を作成することができる。 Entry T602 contains text information in JSON format. The item "message" describes "the service currently in use has been updated." The "body" item describes text information of a template that can be processed by the template engine 160 for sequentially listing updated service names (corresponding to program names). In the illustrated example, "service.name" is a variable item to be replaced with each updated service name. According to entry T602, it is possible to create a notification document in a format suitable for e-mail that can be easily recognized by the user.

なお、通知文書情報T610は、JSON形式に限定されず、HTMLやXMLのような既存のマークアップ言語に従った記載としてもよい。また、通知文書情報T610に含ませる情報としては、サービス名を表示させることに限られず、後述して説明するサービス更新情報とサービス更新項目リストとから取得できる各種情報としてもよく、例えば、サービスを実現するプログラムのバージョンや、APIの情報としてもよく、その他のサービスの内容であってもよい。このようにすると、更新された内容及び又は更新前の内容等を通知文書から容易に把握することができる。 Note that the notification document information T610 is not limited to the JSON format, and may be described in accordance with existing markup languages such as HTML and XML. Information to be included in the notification document information T610 is not limited to displaying the service name, and may be various information that can be obtained from service update information and a service update item list, which will be described later. It may be the version of the program to be implemented, API information, or the contents of other services. By doing so, it is possible to easily grasp the updated contents and/or the contents before the update from the notification document.

次に、一実施形態に係るマーケットプレイスシステム100の処理動作について説明する。 Next, processing operations of the marketplace system 100 according to one embodiment will be described.

まず、サービスデプロイ処理について説明する。 First, the service deployment process will be explained.

図9は、一実施形態に係るサービスデプロイ処理のフローチャートである。 FIG. 9 is a flowchart of service deployment processing according to one embodiment.

サービスデプロイ処理は、マーケットプレイスシステム100が計算機300を介してアプリケーション開発者30からのサービスの利用開始要求を受け付けた際に実行される。 The service deployment process is executed when the marketplace system 100 receives a service usage start request from the application developer 30 via the computer 300 .

画面プログラム110(厳密には、画面プログラム110を実行するCPU1930)は、計算機300から利用者(アプリケーション開発者30)によるマーケットプレイスシステム100へのログイン要求を受け付ける(S101)。なお、マーケットプレイスシステム100のログインに必要なアカウント(利用者ID、パスワード等)については、例えば、初回利用時等に設定されているものとする。 The screen program 110 (strictly speaking, the CPU 1930 that executes the screen program 110) receives a login request from the user (application developer 30) to the marketplace system 100 from the computer 300 (S101). It is assumed that an account (user ID, password, etc.) required for logging into the marketplace system 100 is set, for example, at the time of first use.

画面プログラム100は、利用者の認証を実行し、認証が成功した場合には、利用者に対して利用開始するサービスを選択可能に表示するための画面を計算機300に表示させ、利用者から利用開始するサービスの選択を受け付ける(S102)。なお、画面プログラム110にAPIを備えるようにし、画面プログラム110は、API経由で利用者からの利用開始要求を取得するようにしてもよい。 The screen program 100 authenticates the user, and if the authentication succeeds, causes the computer 300 to display a screen for displaying the service to be used by the user so that the user can start using the service. A selection of a service to be started is accepted (S102). Note that the screen program 110 may be provided with an API, and the screen program 110 may acquire a usage start request from the user via the API.

次いで、画面プログラム110は、利用者からのサービス選択を受け付けたことを契機に、選択されたサービスについてのエントリをサービス情報T310から取得し、取得したエントリのサービスID T301からこのサービスのサービスIDを取得し、デプロイプログラム120に通知する(S103)。 Next, when the screen program 110 receives a service selection from the user, it acquires an entry for the selected service from the service information T310, and extracts the service ID of this service from the service ID T301 of the acquired entry. It acquires and notifies the deployment program 120 (S103).

通知を受けたデプロイプログラム120(厳密には、デプロイプログラム120を実行するCPU1930)は、サービス情報T310のサービスIDに対応するエントリのサービスイメージID T305からサービスイメージIDを取得し、サービスイメージIDに対応するサービスイメージ151をリポジトリ150から取得し、実行サーバ400にこのサービスイメージ151をデプロイする(ステップS104)。ここで、デプロイ処理は、既存の技術を利用すればよく、コンテナイメージを使用する場合はDockerやKubernetesなどを利用してもよく、仮想マシンイメージを使用する場合はOpenStackなどを利用してもよい。サービスイメージ151をデプロイする実行サーバ400は、デプロイプログラム120が既存のリソース管理技術を利用して任意に選択してもよいし、サービス選択時に利用者に実行サーバ400を選択させておき、その選択された実行サーバ400としてもよい。 The notified deploy program 120 (more precisely, the CPU 1930 executing the deploy program 120) acquires the service image ID from the service image ID T305 of the entry corresponding to the service ID of the service information T310, and corresponds to the service image ID. The service image 151 to be executed is acquired from the repository 150, and this service image 151 is deployed to the execution server 400 (step S104). Here, the deployment process may use existing technology, such as Docker or Kubernetes when using a container image, or OpenStack when using a virtual machine image. . The execution server 400 to which the service image 151 is to be deployed may be arbitrarily selected by the deployment program 120 using existing resource management technology, or the user may be allowed to select the execution server 400 when selecting the service. The execution server 400 may be an execution server 400 that has

次いで、デプロイプログラム120は、デプロイの実行結果を判定する(S105)。この結果、デプロイの実行が成功したと判定した場合(S105:Yes)には、デプロイプログラム120は、デプロイされたサービスイメージ151のサービスインスタンス410を一意に特定できるインスタンスIDを作成し、インスタンス情報T410にサービスインスタンス410に対応するエントリを追加し、更に、利用者情報T110を参照して、この利用者のサービス一覧IDを取得し、サービス一覧情報T210に、取得したサービス一覧IDと、サービスIDと、生成されたサービスインスタンス410のインスタンスIDと、を含むエントリを追加し(S106)、処理をステップS107に進める。一方、デプロイの実行に失敗したと判定した場合(S105:No)には、デプロイプログラム120は、処理をステップS107に進める。 Next, the deployment program 120 determines the deployment execution result (S105). As a result, when it is determined that execution of deployment has succeeded (S105: Yes), the deployment program 120 creates an instance ID that can uniquely identify the service instance 410 of the deployed service image 151, and sets the instance information T410. to add an entry corresponding to the service instance 410, further refer to the user information T110 to acquire the service list ID of this user, and store the acquired service list ID and the service ID in the service list information T210. , and the instance ID of the generated service instance 410 (S106), and the process proceeds to step S107. On the other hand, when it is determined that execution of deploy has failed (S105: No), the deploy program 120 advances the process to step S107.

ステップS107では、デプロイプログラム120は、デプロイの実行結果を画面プログラム110に通知し、サービスデプロイ処理を終了する。なお、画面プログラム110は、実行結果を計算機300のマーケットプレイス100用の画面に表示してもよいし、それとは別のポップアップ画面に表示してもよい。 In step S107, the deployment program 120 notifies the screen program 110 of the deployment execution result, and terminates the service deployment process. The screen program 110 may display the execution result on the screen for the marketplace 100 of the computer 300, or may display it on a separate pop-up screen.

次に、サービス更新処理について説明する。 Next, service update processing will be described.

図10は、一実施形態に係るサービス更新処理のフローチャートである。 FIG. 10 is a flowchart of service update processing according to one embodiment.

サービス更新処理は、マーケットプレイスシステム100に登録済みのサービスの更新(プログラムの更新を含む)を行う処理であり、サービス開発者20による計算機200からの操作に基づいて処理が行われる。 The service update process is a process of updating services (including program updates) registered in the marketplace system 100 , and is performed based on an operation from the computer 200 by the service developer 20 .

まず、画面プログラム110は、計算機200からサービス開発者20によるマーケットプレイスシステム100へのログイン要求を受け付ける(S201)。なお、マーケットプレイスシステム100のログインに必要なサービス開発者20のアカウント(サービス開発者ID、パスワード等)については、例えば、初回利用時等に設定されているものとする。また、サービス開発者20が作成したサービス情報については、サービス情報T310に登録されているものとする。 First, the screen program 110 receives a login request to the marketplace system 100 by the service developer 20 from the computer 200 (S201). It is assumed that the account (service developer ID, password, etc.) of the service developer 20 required for logging into the marketplace system 100 is set, for example, at the time of first use. Further, it is assumed that the service information created by the service developer 20 is registered in the service information T310.

次いで、画面プログラム110は、サービス開発者20の認証を実行し、認証が成功した場合には、サービス開発者20が更新を登録するサービスについての更新情報(サービス更新情報)を入力するための画面を計算機200に表示させ、計算機200により、サービス開発者20によるサービスについてのサービス更新情報の入力を受け付ける(S202)。なお、サービス更新情報としては、サービス情報T310のエントリにおける各項目の全てについての情報(値等)でもよいし、各項目のうちの、更新があった項目の情報だけでもよい。なお、画面プログラム110にAPIを備えるようにし、画面プログラム110は、API経由でサービス開発者20からのサービス更新情報を受け付けるようにしてもよい。 Next, the screen program 110 authenticates the service developer 20, and if the authentication is successful, a screen for inputting update information (service update information) about the service for which the service developer 20 registers updates. is displayed on the computer 200, and the computer 200 receives input of service update information about the service by the service developer 20 (S202). Note that the service update information may be information (values, etc.) about all of the items in the entry of the service information T310, or may be only information about items that have been updated among the items. The screen program 110 may be provided with an API, and the screen program 110 may receive service update information from the service developer 20 via the API.

次いで、画面プログラム110は、計算機200から、サービス開発者20から受け付けたサービス更新情報を取得する(S203)。次いで、画面プログラム110は、取得したサービス更新情報を更新解析プログラム130に通知する(S204)。サービス更新情報の通知を受け付けた更新解析プログラム130は、後述するサービス更新解析処理(図11参照)を実行することとなる。なお、サービス更新解析処理が終了した後に、画面プログラム110が、サービス更新情報をサービス情報T310の対応するサービスのエントリに反映(登録)してもよい。 Next, the screen program 110 acquires the service update information received from the service developer 20 from the computer 200 (S203). Next, the screen program 110 notifies the update analysis program 130 of the acquired service update information (S204). The update analysis program 130 that has received notification of the service update information executes service update analysis processing (see FIG. 11), which will be described later. After the service update analysis process is completed, the screen program 110 may reflect (register) the service update information in the entry of the corresponding service in the service information T310.

次いで、画面プログラム110は、サービスの更新登録が完了したことを、計算機200のマーケットプレイスシステム100用の画面に表示することにより、サービス開発者20に通知し(S205)、処理を終了する。なお、サービス開発者20が画面プログラム110のAPI経由でサービス更新情報を通知した場合は、そのAPIのレスポンス情報にサービス更新登録完了を含めて通知する。 Next, the screen program 110 notifies the service developer 20 by displaying the completion of service update registration on the screen for the marketplace system 100 of the computer 200 (S205), and terminates the process. When the service developer 20 notifies the service update information via the API of the screen program 110, the service update registration completion is included in the response information of the API.

次に、サービス更新解析処理について説明する。 Next, service update analysis processing will be described.

図11は、一実施形態に係るサービス更新解析処理のフローチャートである。 FIG. 11 is a flowchart of service update analysis processing according to one embodiment.

サービス更新解析処理は、更新解析プログラム130が画面プログラム110からサービス更新情報の通知(ステップS204)を受けた場合に実行される。 The service update analysis process is executed when the update analysis program 130 receives notification of service update information from the screen program 110 (step S204).

まず、更新解析プログラム130は、通知されたサービス更新情報を取得する(S301)。次いで、更新解析プログラム130は、サービス更新情報の対象であるサービスについてのエントリをサービス情報T310から取得する(S302)。 First, the update analysis program 130 acquires the notified service update information (S301). Next, the update analysis program 130 acquires the entry for the service targeted by the service update information from the service information T310 (S302).

次いで、更新解析プログラム130は、サービス更新情報の各項目の値(項目値)と、ステップS302で取得したサービスについてのエントリの各項目の値(項目値)とを比較する(S303)。 Next, the update analysis program 130 compares the value of each item (item value) of the service update information with the value of each item (item value) of the entry for the service acquired in step S302 (S303).

次いで、更新解析プログラム130は、サービス更新情報の各項目をそれぞれについて、ループ1の処理(ステップS304,S305)の処理を実行する。ここで、ループ1の処理の説明において、処理対象の項目を対象項目ということとする。 Next, the update analysis program 130 executes the processing of loop 1 (steps S304 and S305) for each item of the service update information. Here, in the explanation of the processing of loop 1, the item to be processed is called the target item.

ループ1の処理においては、更新解析プログラム130は、サービス更新情報の対象項目の項目値が、ステップS302で取得したエントリの対応する項目の項目値から更新されているか否かを判定する(S304)。これにより、例えば、サービス更新情報と、サービス情報T310のエントリとの間で、現在サービスバージョンの項目値(バージョン情報)が異なっていることにより、プログラムが更新されたことが判定でき、また、サービス更新情報と、サービス情報T310のエントリとでサービスAPIの項目値が異なっていれば、APIが更新されたことが判定できる。 In the processing of loop 1, the update analysis program 130 determines whether the item value of the target item of the service update information has been updated from the item value of the corresponding item of the entry acquired in step S302 (S304). . As a result, for example, if the item value (version information) of the current service version is different between the service update information and the entry of the service information T310, it can be determined that the program has been updated. If the item values of the service API are different between the update information and the entry of the service information T310, it can be determined that the API has been updated.

この結果、対象項目の項目値が更新されている場合(S304:Yes)には、更新解析プログラム130は、対象項目をサービス更新項目リストに追加する(S305)。ここで、サービス更新項目リストは、メモリ1920上の配列でもよいし、記憶装置1950に一時的に作成したテキストファイルやデータベースであってもよく、要は、後の処理で参照可能であればどの形式であってもよい。一方、対象項目の項目値が更新されていない場合(S304:No)には、更新解析プログラム130は、処理をループ1の最後に進める。 As a result, if the item value of the target item has been updated (S304: Yes), the update analysis program 130 adds the target item to the service update item list (S305). Here, the service update item list may be an array on the memory 1920, or may be a text file or database temporarily created in the storage device 1950. can be in the form On the other hand, if the item value of the target item has not been updated (S304: No), the update analysis program 130 advances the process to the end of loop 1. FIG.

更新解析プログラム130は、サービス更新情報のそれぞれの項目に対して、ループ1の処理を実行し、全ての項目に対して、ループ1の処理を行った場合には、ループ1を抜けて、処理をステップS306に進める。 The update analysis program 130 executes the processing of loop 1 for each item of the service update information. to step S306.

ステップS306では、更新解析プログラム130は、サービス更新情報と、サービス更新項目リストとを更新通知プログラム140に通知する。なお、サービス更新情報と、サービス更新項目リストとの通知を受けた更新通知プログラム140は、後述するサービス更新通知処理(図12参照)を実行することとなる。 In step S306, the update analysis program 130 notifies the update notification program 140 of the service update information and the service update item list. Note that the update notification program 140 that has received notification of the service update information and the service update item list executes service update notification processing (see FIG. 12), which will be described later.

更新解析プログラム130は、ステップS306の処理を実行後に、サービス更新解析処理を終了する。 The update analysis program 130 terminates the service update analysis process after executing the process of step S306.

次に、サービス更新通知処理について説明する。 Next, service update notification processing will be described.

図12は、一実施形態に係るサービス更新通知処理のフローチャートである。 FIG. 12 is a flowchart of service update notification processing according to one embodiment.

サービス更新通知処理は、更新通知プログラム140が更新解析プログラム130からサービス更新情報とサービス更新項目リストとの通知(ステップS306)を受けた場合に実行される。 The service update notification process is executed when the update notification program 140 receives notification of service update information and a service update item list from the update analysis program 130 (step S306).

まず、更新通知プログラム140は、通知されたサービス更新情報とサービス更新項目リストとを取得する(S401)。 First, the update notification program 140 acquires the notified service update information and service update item list (S401).

次いで、次に更新通知プログラム140は、サービス更新情報から、サービス更新情報の対象であるサービスのサービスIDを取得し、サービス一覧情報T210と利用者情報T110とを参照して、このサービスを利用している利用者の一覧(利用者一覧)を取得する(S402)。 Next, the update notification program 140 acquires the service ID of the service targeted by the service update information from the service update information, refers to the service list information T210 and the user information T110, and uses this service. (S402).

次いで、更新通知プログラム140は、利用者一覧の各利用者を処理対象として、ループ2の処理(ステップS403~S406)を実行する。ここで、ループ2の処理において、処理対象の利用者を対象利用者ということとする。 Next, the update notification program 140 executes loop 2 processing (steps S403 to S406) for each user in the user list. Here, in the processing of loop 2, the user to be processed is called the target user.

ループ2の処理においては、更新通知プログラム140は、利用者情報T110を参照し、対象利用者の通知管理IDを取得する(S403)。ここで、更新通知プログラム140は、対象利用者の通知管理IDが複数ある場合には、複数の通知管理IDを取得する。なお、複数の通知管理IDを取得した場合には、以下のステップ(S404~S406)においては、各通知管理ID毎のそれぞれについて同様の処理を行う。 In the process of loop 2, the update notification program 140 refers to the user information T110 and acquires the notification management ID of the target user (S403). Here, the update notification program 140 acquires multiple notification management IDs when there are multiple notification management IDs for the target user. Note that when a plurality of notification management IDs are obtained, the same processing is performed for each notification management ID in the following steps (S404 to S406).

次いで、更新通知プログラム140は、通知管理情報T510の通知管理IDに対応するエントリから通知先情報と、通知文書内容IDと、通知手段とを取得する(S404)。 Next, the update notification program 140 acquires the notification destination information, the notification document content ID, and the notification means from the entry corresponding to the notification management ID in the notification management information T510 (S404).

次いで、更新通知プログラム140は、通知文書情報T610から、取得した通知文書内容IDに対応するエントリ(テンプレート)を取得し、テンプレートエンジン160により、通知文書情報T610のエントリ(テンプレート)の変数項目の値を、サービス更新情報とサービス更新項目リストとの情報を用いて設定させることにより、通知文書を作成する(S405)。なお、テンプレートエンジン160を用いずに通知文書を作成してもよく、その場合には、サービス更新情報と、サービス更新項目リストとの情報をそのまま通知文書に含めるようにすればよい。 Next, the update notification program 140 acquires the entry (template) corresponding to the acquired notification document content ID from the notification document information T610, and the template engine 160 calculates the values of the variable items of the entry (template) of the notification document information T610. is set using the information of the service update information and the service update item list, thereby creating a notification document (S405). Note that the notification document may be created without using the template engine 160. In that case, the information of the service update information and the service update item list may be included in the notification document as they are.

次いで、更新通知プログラム140は、ステップS404で取得した通知先情報の通知先に対して、取得した通知手段により、通知文書を送信する(S406)。ここで、上記したように、ステップS403において複数の通知管理IDが取得されている場合には、複数の通知文書が、それぞれに対応する通知先及び通知手段により送信されることとなる。なお、送信に失敗した場合には、更新通知プログラム140は、リトライ処理を行ってもよい。 Next, the update notification program 140 transmits a notification document to the notification destination of the notification destination information acquired in step S404 using the acquired notification means (S406). Here, as described above, when a plurality of notification management IDs are acquired in step S403, a plurality of notification documents are transmitted by corresponding notification destinations and notification means. Note that if the transmission fails, the update notification program 140 may perform retry processing.

更新通知プログラム140は、利用者一覧の各利用者を対象として、ループ2の処理を実行し、全ての利用者に対して、ループ2の処理を行った場合には、ループ2を抜けて、サービス更新通知処理を終了する。 The update notification program 140 executes loop 2 processing for each user in the user list. End the service update notification process.

以上説明したように、一実施形態に係るマーケットプレイスシステム100によると、アプリケーション開発者30は、サービス開発者20がサービス更新したことを契機に、アプリケーション開発者30の指定した1以上の通知手段によって、指定した形式で記述された通知文書を受け取ることができる。これにより、アプリケーション開発者30は、アプリケーションに対するサービス更新対応における開発効率を向上することができる。 As described above, according to the marketplace system 100 according to one embodiment, when the service developer 20 updates the service, the application developer 30 uses one or more notification means specified by the application developer 30. , can receive notification documents written in a specified format. As a result, the application developer 30 can improve development efficiency in service update correspondence for applications.

なお、本発明は、上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で、適宜変形して実施することが可能である。 It should be noted that the present invention is not limited to the above-described embodiments, and can be modified appropriately without departing from the scope of the present invention.

例えば、上記実施形態においては、実行サーバ400で実行させるプログラム及び利用するAPIを対象に更新を判定し、通知文書を送信するようにしていたが、本発明はこれに限られず、例えば、計算機300等にダウンロードさせて、計算機300側で実行させるプログラム(アプリケーション、プログラム、API等を含む)を対象に更新を判定し、通知文書を送信するようにしてもよい。 For example, in the above-described embodiment, an update is determined for the program executed by the execution server 400 and the API to be used, and a notification document is sent, but the present invention is not limited to this. etc., and the program (including applications, programs, APIs, etc.) to be executed on the computer 300 side may be determined to be updated, and the notification document may be transmitted.

また、上記実施形態においては、マーケティングプレイスシステム100におけるサービスを提供するプログラムやAPIだけでなく、サービスに関するプログラムやAPI以外の項目についても更新の判定を行い、更新されたと判定した場合に通知文書を送信するようにしていたが、本発明はこれに限られず、更新を判定する対象としては、これらのうちの一部としてもよく、例えば、プログラムやAPIのみに限ってもよい。 Further, in the above embodiment, not only the programs and APIs that provide services in the marketing place system 100, but also items other than programs and APIs related to services are determined to be updated, and if it is determined that they have been updated, a notification document is sent. However, the present invention is not limited to this, and the update determination target may be a part of them, for example, limited to only a program or API.

また、上記実施形態において、CPUが行っていた処理の一部又は全部を、ハードウェア回路で行うようにしてもよい。また、上記実施形態におけるプログラムは、プログラムソースからインストールされてよい。プログラムソースは、プログラム配布サーバ又は記憶メディア(例えば可搬型の記憶メディア)であってもよい。 Moreover, in the above embodiments, part or all of the processing performed by the CPU may be performed by a hardware circuit. Also, the programs in the above embodiments may be installed from program sources. The program source may be a program distribution server or storage media (eg, portable storage media).

100…マーケットプレイスシステム、110…画面プログラム、120…デプロイプログラム、130…更新解析プログラム、140…更新通知プログラム、150…レジストリ、160…テンプレートエンジン、200,300…計算機、400…実行サーバ、T110…利用者情報、T210…サービス一覧情報、T310…サービス情報、T410…インスタンス情報、T510…通知管理情報、T610…通知文書内容情報

100... Marketplace system, 110... Screen program, 120... Deployment program, 130... Update analysis program, 140... Update notification program, 150... Registry, 160... Template engine, 200, 300... Computer, 400... Execution server, T110... User information, T210... Service list information, T310... Service information, T410... Instance information, T510... Notification management information, T610... Notification document content information

Claims (11)

プログラムの更新を管理するプログラム更新管理システムであって、
前記プログラム更新管理システムは、プロセッサ部を有し、
前記プロセッサ部は、
前記プログラムの利用者から前記プログラムの更新が発生した時の通知文書の内容を規定する通知文書内容情報を取得し、
前記プログラムの更新が発生したか否かを判定し、
前記プログラムの更新が発生した時に、前記通知文書内容情報に基づいて、前記プログラムの更新を通知する通知文書を作成し、前記通知文書を前記プログラムの前記利用者に対して送信し、
前記通知文書内容情報は、プログラムの更新内容に応じて記載することを示す変数項目を含むテンプレートであり、
前記プロセッサ部は、
前記テンプレートにおける前記変数項目を前記プログラムの更新内容に従って決定することにより、前記通知文書を作成する処理を実行する
プログラム更新管理システム。
A program update management system for managing program updates,
The program update management system has a processor unit,
The processor unit
Acquiring notification document content information that defines the content of a notification document when the program is updated from the user of the program;
determining whether an update of the program has occurred;
when an update of the program occurs, creating a notification document notifying the update of the program based on the content information of the notification document, and transmitting the notification document to the user of the program;
The notification document content information is a template including variable items indicating that it is written according to the update content of the program,
The processor unit
executing a process of creating the notification document by determining the variable items in the template according to the update contents of the program;
Program update management system.
前記プログラムは、所定の処理を実行する処理用プログラムと、前記処理用プログラム用のAPI(Application Programming Interface)とを含み、
前記プロセッサ部は、
前記処理用プログラム又は前記処理用プログラム用のAPIに更新が発生した場合に、前記プログラムの更新が発生したと判定する
請求項1に記載のプログラム更新管理システム。
The program includes a processing program for executing a predetermined process and an API (Application Programming Interface) for the processing program,
The processor unit
2. The program update management system according to claim 1, wherein when the processing program or the API for the processing program is updated, it is determined that the program has been updated.
前記プロセッサ部は、
少なくとも前記プログラムのバージョン情報に基づいて、前記プログラムが更新されたか否かを判定する
請求項1に記載のプログラム更新管理システム
The processor unit
2. The program update management system according to claim 1, wherein whether or not said program has been updated is determined based on at least version information of said program .
前記通知文書内容情報は、前記プログラムにより提供されるサービスの更新が発生した時の通知文書の内容を含み、
前記プロセッサ部は、
前記プログラムにより提供されるサービスについての更新が発生したか否かを判定し、
前記サービスの更新が発生した時に、前記通知文書に前記サービスについての更新内容を含ませる
請求項1に記載のプログラム更新管理システム。
The notification document content information includes the content of the notification document when the service provided by the program is updated,
The processor unit
determining whether an update to the service provided by the program has occurred;
2. A program update management system according to claim 1, wherein, when said service is updated, said notification document contains the updated contents of said service.
前記プロセッサ部は、
前記通知文書内容情報と、前記通知文書内容情報の通知文書を通知する通知先を示す通知先情報と、前記通知文書の通知手段とを対応付けた通知文書管理情報を取得し、
前記通知文書内容情報に基づく通知文書を、前記通知先情報の通知先に、前記通知手段により、通知する
請求項1に記載のプログラム更新管理システム。
The processor unit
Acquiring notification document management information in which the notification document content information, notification destination information indicating a notification destination of the notification document of the notification document content information, and notification means of the notification document are associated with each other;
2. The program update management system according to claim 1, wherein a notification document based on said notification document content information is notified to a notification destination of said notification destination information by said notification means.
前記プロセッサ部は、
前記プログラムの前記利用者から、1つのプログラムに対応付けて、複数の通知文書管理情報を取得可能であり、
複数の通知文書管理情報に対応付けられているプログラムに更新が発生した時に、複数の通知文書内容情報に基づく通知文書を作成し、各通知文書を、対応する前記通知先情報の通知先に、対応する前記通知手段により、通知する
請求項に記載のプログラム更新管理システム。
The processor unit
A plurality of pieces of notification document management information can be acquired from the user of the program in association with one program,
When an update occurs in a program associated with a plurality of pieces of notification document management information, a notification document is created based on a plurality of pieces of notification document content information, and each notification document is sent to a notification destination of the corresponding notification destination information, 6. The program update management system according to claim 5 , wherein notification is made by the corresponding notification means.
前記複数の通知文書管理情報には、プログラムに通知させるための形式で更新内容を通知するための通知文書内容情報と、人間に通知させるための形式で更新内容を通知するための通知内容情報とを設定可能である
請求項に記載のプログラム更新管理システム。
The plurality of pieces of notification document management information include notification document content information for notifying the update content in a format for causing the program to notify, and notification content information for notifying the update content in a format for causing a human to notify. 7. The program update management system according to claim 6 , wherein the setting is possible.
プログラムの更新を管理するプログラム更新管理システムによるプログラム更新管理方法であって、
前記プログラムの利用者から前記プログラムの更新が発生した時の通知文書の内容を規定する通知文書内容情報を取得し、
前記プログラムの更新が発生したか否かを判定し、
前記プログラムの更新が発生した時に、前記通知文書内容情報に基づいて、前記プログラムの更新を通知する通知文書を作成し、前記通知文書を前記プログラムの前記利用者に対して送信し、
前記通知文書内容情報は、プログラムの更新内容に応じて記載することを示す変数項目を含むテンプレートであり、
前記テンプレートにおける前記変数項目を前記プログラムの更新内容に従って決定することにより、前記通知文書を作成する処理を実行する
プログラム更新管理方法。
A program update management method by a program update management system for managing program updates,
Acquiring notification document content information that defines the content of a notification document when the program is updated from the user of the program;
determining whether an update of the program has occurred;
when an update of the program occurs, creating a notification document notifying the update of the program based on the content information of the notification document, and transmitting the notification document to the user of the program;
The notification document content information is a template including variable items indicating that it is written according to the update content of the program,
executing a process of creating the notification document by determining the variable items in the template according to the update contents of the program;
Program update management method.
前記プログラムは、所定の処理を実行する処理用プログラムと、前記処理用プログラム用のAPIとを含み、
前記処理用プログラム又は前記処理用プログラム用のAPIに更新が発生した場合に、前記プログラムの更新が発生したと判定する
請求項に記載のプログラム更新管理方法。
The program includes a processing program for executing a predetermined process and an API for the processing program,
9. The program update management method according to claim 8 , wherein it is determined that said program has been updated when said processing program or an API for said processing program has been updated.
プログラムの更新を管理する処理をコンピュータに実行させるためのプログラム更新管理プログラムであって、
前記コンピュータに、
前記プログラムの利用者から前記プログラムの更新が発生した時の通知文書の内容を規定する通知文書内容情報を取得させ、
前記プログラムの更新が発生したか否かを判定させ、
前記プログラムの更新が発生した時に、前記通知文書内容情報に基づいて、前記プログラムの更新を通知する通知文書を作成させ、前記通知文書を前記プログラムの前記利用者に対して送信させ
前記通知文書内容情報は、プログラムの更新内容に応じて記載することを示す変数項目を含むテンプレートであり、
前記コンピュータに、
前記テンプレートにおける前記変数項目を前記プログラムの更新内容に従って決定させることにより、前記通知文書を作成させる処理を実行させる
プログラム更新管理プログラム。
A program update management program for causing a computer to execute processing for managing program updates,
to the computer;
Acquiring notification document content information that defines the content of a notification document when the program is updated from a user of the program;
determining whether or not an update of the program has occurred;
creating a notification document notifying the update of the program based on the notification document content information when the update of the program occurs, and causing the notification document to be transmitted to the user of the program ;
The notification document content information is a template including variable items indicating that it is written according to the update content of the program,
to the computer;
executing processing for creating the notification document by determining the variable items in the template according to the update contents of the program;
Program update manager.
前記プログラムは、所定の処理を実行する処理用プログラムと、前記処理用プログラム用のAPIとを含み、
前記コンピュータに、
前記処理用プログラム又は前記処理用プログラム用のAPIに更新が発生した場合に、前記プログラムの更新が発生したと判定させる
請求項10に記載のプログラム更新管理プログラム。
The program includes a processing program for executing a predetermined process and an API for the processing program,
to the computer;
11. The program update management program according to claim 10 , which determines that the program has been updated when the processing program or the API for the processing program has been updated.
JP2020038874A 2020-03-06 2020-03-06 Program update management system, program update management method, and program update management program Active JP7316240B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020038874A JP7316240B2 (en) 2020-03-06 2020-03-06 Program update management system, program update management method, and program update management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020038874A JP7316240B2 (en) 2020-03-06 2020-03-06 Program update management system, program update management method, and program update management program

Publications (2)

Publication Number Publication Date
JP2021140559A JP2021140559A (en) 2021-09-16
JP7316240B2 true JP7316240B2 (en) 2023-07-27

Family

ID=77669630

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020038874A Active JP7316240B2 (en) 2020-03-06 2020-03-06 Program update management system, program update management method, and program update management program

Country Status (1)

Country Link
JP (1) JP7316240B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209693A (en) 2000-01-25 2001-08-03 Ntt Comware Corp Individual information management device and individual information distribution method
JP2011257994A (en) 2010-06-09 2011-12-22 Nippon Telegr & Teleph Corp <Ntt> Update api detection system, update api detection apparatus, update api detection method, and update api detection program
JP2017151824A (en) 2016-02-26 2017-08-31 日本電信電話株式会社 Web api update information management device, web api update notification method and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001209693A (en) 2000-01-25 2001-08-03 Ntt Comware Corp Individual information management device and individual information distribution method
JP2011257994A (en) 2010-06-09 2011-12-22 Nippon Telegr & Teleph Corp <Ntt> Update api detection system, update api detection apparatus, update api detection method, and update api detection program
JP2017151824A (en) 2016-02-26 2017-08-31 日本電信電話株式会社 Web api update information management device, web api update notification method and program

Also Published As

Publication number Publication date
JP2021140559A (en) 2021-09-16

Similar Documents

Publication Publication Date Title
US10528656B2 (en) Application module for managing jobs asynchronously
US9436580B2 (en) Analytics for mobile applications
US9977658B2 (en) Code validation using content assist
US9740543B1 (en) Multi-endpoint method implementation
US8584116B2 (en) Installing method, installer, and installing program
JP4824110B2 (en) Computer-implemented method, computer program, and data processing system for inheriting page layout for a page
US20170161059A1 (en) Management of multiple application programming interface versions for development environments
US20160357536A1 (en) Capability attributes based application packaging
US8640121B2 (en) Facilitating multi-installer product installations
US20060143430A1 (en) System and method for computer hardware identification
US10817267B2 (en) State machine representation of a development environment deployment process
JP5278924B2 (en) Method and apparatus for dynamic provisioning in a data processing environment
US8539474B2 (en) Method and system for management of interim software fixes
Vivian et al. Rapid and efficient analysis of 20,000 RNA-seq samples with Toil
US10120707B2 (en) Deployment of development environments
US9285870B2 (en) System locale name management
WO2022012305A1 (en) Method and apparatus for managing model file in inference application
JP7316240B2 (en) Program update management system, program update management method, and program update management program
US10394534B2 (en) Framework for flexible logging of development environment deployment
US20140040785A1 (en) Browser-based process flow control responsive to an external application
CN114730258A (en) User interface techniques for infrastructure orchestration services
KR102659154B1 (en) Appartus for providing application services, method thereof, and computationally-implementable storage medium for storing a program for providing application services
KR102659150B1 (en) Appartus for providing application services, method thereof, and computationally-implementable storage medium for storing a program for providing application services
WO2022190409A1 (en) Node management system and node management method
JP2009181240A (en) Workflow processing unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230627

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230714

R150 Certificate of patent or registration of utility model

Ref document number: 7316240

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150