JP7313309B2 - プログラム実行支援装置、及びプログラム実行支援方法 - Google Patents
プログラム実行支援装置、及びプログラム実行支援方法 Download PDFInfo
- Publication number
- JP7313309B2 JP7313309B2 JP2020062980A JP2020062980A JP7313309B2 JP 7313309 B2 JP7313309 B2 JP 7313309B2 JP 2020062980 A JP2020062980 A JP 2020062980A JP 2020062980 A JP2020062980 A JP 2020062980A JP 7313309 B2 JP7313309 B2 JP 7313309B2
- Authority
- JP
- Japan
- Prior art keywords
- environment
- program
- predetermined
- serverless
- executed
- 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
Links
- 238000000034 method Methods 0.000 title claims description 190
- 230000008569 process Effects 0.000 claims description 169
- 238000003860 storage Methods 0.000 claims description 31
- 230000010365 information processing Effects 0.000 claims description 18
- 238000012545 processing Methods 0.000 description 304
- 230000006870 function Effects 0.000 description 84
- 238000006243 chemical reaction Methods 0.000 description 18
- 230000015654 memory Effects 0.000 description 16
- 230000008859 change Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000011161 development Methods 0.000 description 7
- 230000000007 visual effect Effects 0.000 description 6
- 239000007787 solid Substances 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Stored Programmes (AREA)
Description
境を用いたプログラム(アプリケーション)を開発し、これを実行させることができる。
まず、図8は、従来のプログラム実行支援システム900の一例の概要を説明する図である。このプログラム実行支援システム900は、フローエディタ環境600、及びランタイム環境400を含んで構成される。フローエディタ環境600及びランタイム環境400はそれぞれ、1又は複数の情報処理装置を含む情報処理システムである。フローエディタ環境600及びランタイム環境400の間は、通信可能に接続されている。
ンタイム側処理ブロックプログラム412を予め記憶している。
図1は、本実施形態のプログラム実行支援システム1の構成の一例を示す図である。
ネットワーク5によって通信可能に接続される。
図2は、プログラム変換装置300が備えるハードウェア及び機能の一例を説明する図である。
D(Solid State Drive)、又はフラッシュメモリ等のローカルストレージ340と、他
の情報処理装置と通信するための、ネットワークインターフェイスカード等のネットワークインタフェース330とを備え、これらはバス等で互いに接続されている。なお、プログラム変換装置300は、キーボード若しくはタッチパネル等の入力装置又は、モニタ若しくはディスプレイ等の出力装置を備えていてもよい(いずれも不図示)。
図3は、ランタイム環境400が備えるハードウェア及び機能の一例を説明する図である。
図4は、サーバレス環境500が備えるハードウェア及び機能の一例を説明する図である。サーバレス環境500は、登録されたサーバレス関数を実行する環境である。また、サーバレス環境500には、サーバレス関数を実行するタイミングを定義することができる。
ム514を実行する。この際、サーバレスプログラム511は、トリガプログラム513及びサーバレス関数プログラム514の実行に必要なプロセッサ520、メモリ510、又はローカルストレージ540等のリソースを、これらのプログラムに割り当てる。
図5は、フローエディタ環境600が備えるハードウェア及び機能の一例を示す図である。フローエディタ環境600は、ハードウェアとして、CPU等のプロセッサ620(演算装置)、ソフトウェア及びデータ等が展開されるRAM(Random Access Memory)又はROM(Read Only Memory)等のメモリ610と、HDD(Hard Disk Drive)、SS
D(Solid State Drive)、又はフラッシュメモリ等のローカルストレージ640と、他
の情報処理装置と通信する、ネットワークインターフェイスカード等のネットワークインタフェース630と、キーボード若しくはタッチパネル等の入力装置650と、モニタ若しくはディスプレイ等の出力装置660とを備え、これらはバス等で互いに接続されている。
611に読み込まれるようにされていてもよい。この場合、例えば、ランタイム環境400のランタイム側処理ブロックプログラム412等の外部のプログラムが、フローエディタプログラム611を呼び出すようにしてもよい。
図6は、サーバレス化ルール700の一例を示す図である。サーバレス化ルール700は、処理ブロック610の種類を特定する情報である対象処理ブロック711と、対象処理ブロック711に係る処理ブロック610に設定されたプロパティの情報であるプロパティ設定712と、対象処理ブロック711に係る処理ブロック610にプロパティ設定712に係るプロパティが設定されている場合における、当該処理ブロック610に係る処理の実行先(実行環境)の情報である実行環境713と含む各項目の情報を有する、少なくとも1以上のレコードを備えるデータベースである。
0として設けられ、一連のフローを開始させる処理ブロック610として設けられる。http-inは、REST APIのエンドポイントを利用した処理ブロック610である。http-inに係る関数の実行により、HTTP又はHTTPS等のプロトコルに従って通信可能な情報処理装置(
サーバ)に新たにURLが割り当てられ(プロパティで指定)、このURLに外部からアクセスがあると、http-inの次の処理ブロック610に係る関数が実行される。例えば、スマー
トフォンアプリケーションがバックエンドサーバのデータベースを参照する場合に、http-in及びデータベース処理ブロックを組み合わせることで、REST APIを作成することがで
きる。
csv、xml、及びyamlは、前の処理ブロック610から受け取ったデータをそれぞれCSV形
式、XML形式、及びYAML形式のデータに変換し、変換したデータを、後続の処理ブロック
610に引き渡す。
パティに設定された期間停止した後、後続の処理ブロック610にそのデータを引き渡す。
次に、プログラム実行支援システム1における処理について説明する。
ント経由で呼び出される仕様のサーバレス関数プログラム514に変換してこれを登録情報とすべく、ランタイム側処理ブロックプログラム412をサーバレス環境定義512に基づき所定のデータでラップし、ラップしたプログラム(サーバレス関数プログラム514)を登録情報とする。これは、サーバレス関数プログラム514は通常、サーバレス環境500の仕様のため、REST API等のエンドポイント経由で呼び出される必要があるためである。
選択ブロックがinjectである場合、環境判定部3112は、選択ブロックのプロパティの内容を解析する(s806)。
理をサーバレス環境500で動作させることができるようになる。
選択ブロックがinject又はhttp-inである場合、環境判定部3112は、選択ブロック
のプロパティの内容を解析する(s806)。
2を選択ブロックのプロパティが示す条件にて実行するサーバレス関数プログラム514を、サーバレス環境500にて実行させることを含む(例えば、ランタイム側処理ブロックプログラム412に対応したサーバレス関数プログラム514をサーバレス環境500に登録する)。これにより、REST APIのエンドポイントとなる処理ブロック610をサーバレス環境500で実行させることができる。
が対応していない通信方法を指定している場合は、登録部3113は、登録情報をランタイム環境400に送信するようにしてもよい。例えば、http-inのプロパティに、HTTP又
はHTTPSによる通信においてDELETEメソッドを使う旨が設定されているが、サーバレス環
境500のトリガプログラム513がGETメソッド及びPOSTメソッドしか対応していない
場合は、登録部3113は、ランタイム側処理プロックプログラム412に係る登録情報を、ランタイム環境400に登録する。これにより、正常にDELETEメソッドが実行される。
選択ブロックがtemplate、sort、csv、xml、又はyamlである場合、登録部3113は、選択ブロックのプロパティに関わらず(s806:YES)、サーバレス化ルール700のレコード723(「サーバレス関数」)に基づき、サーバレス環境500のサーバレス関数プログラム514を実行環境とする登録情報を作成し、作成した登録情報をサーバレス環境500に送信する(s807)。
によらずサーバレス化することが適当であるからである。
選択ブロックがfunctionである場合、環境判定部3112は、選択ブロックのプロパティを解析することにより、そのプロパティが示す処理がローカルストレージ440内のデータの参照又はローカルストレージ440へのデータの書き込みを行っているか否かを判定する(s806)。
次に、選択ブロックがswitchである場合、環境判定部3112は、選択ブロックのプロパティを解析することにより、条件分岐を行う際にローカルストレージ440のデータを利用(参照又は書き込み)しているか否かを判定する(s806)。
報を作成し、作成した登録情報をランタイム環境400に送信する(s807)。
次に、選択ブロックがchangeの場合、環境判定部3112は、選択ブロックのプロパティを解析することにより、選択ブロックが代入処理又は置換処理においてデータをローカルストレージ440から読み込むか否か、及び、データをローカルストレージ440に書き込むか否かをそれぞれ判定する(s806)。
次に、選択ブロックがdelayである場合、環境判定部3112は、選択ブロックのプロ
パティを解析することにより、当該プロパティに、所定の時間以上停止する情報が設定されているか否かを判定する(s806)。
ることを含む(例えば、delayに係るランタイム側処理ブロックプログラム412をラン
タイム環境400に登録する)。このようにランタイム環境400を実行環境とする理由は、サーバレス環境500は一般的に、処理を実行した時間の長さ及び使用リソース量の大きさによりユーザに課金されるシステムであるため、停止時間が長いと、サーバレス化してリソースの使用時間を削減するメリットが少ない(リソース効率が低下する)ためである。
サーバレス関数プログラム514を実行させることを含む(例えば、delayに係るランタ
イム側処理ブロックプログラム412をサーバレス関数プログラム514としてサーバレス環境500に登録する)。このように、サーバレス環境500を実行環境とする理由は、停止時間が短いため、サーバレス化してもリソース効率に大きな影響がないためである。
次に、選択ブロックがexecである場合、環境判定部3112は、選択ブロックのプロパティを解析し、そのプロパティに、サーバレス環境500が対応していない(実行できない)コマンドが含まれているか否かを判定する(s806)。
サーバレス環境500のサーバレスプログラム511に対して、execに対応するサーバレス関数プログラム514を実行することを指示する。
次に、選択ブロックがfile又はtailである場合、登録部3113は、選択ブロックのプ
ロパティに関係なく(s806)、サーバレス化ルール700のレコード728、729(「ランタイム」)に基づき、ランタイム環境400のランタイム側処理ブロックプログラム412を実行環境とする登録情報を作成し、作成した登録情報をランタイム環境400に送信する(s807)。
行させることができる。
環境にて実行させることができる。
ーバレス環境700に移行することができる。
Claims (8)
- 実行対象の処理の情報及び当該処理の属性の情報を取得するフローデータ取得処理と、
所定の処理と当該所定の処理を実行する環境との間の関係を規定した所定のルールと、前記取得した属性の情報とに基づき、前記実行対象の処理を実行する環境を決定する環境判定処理と、
前記決定した環境に、当該環境にて前記実行対象の処理を実現するプログラムを実行させるための情報を送信する登録処理と、
を実行する演算装置を備え、
前記所定のルールは、前記所定の処理の属性としての、当該所定の処理がアクセスするリソースの場所が、前記所定の処理に対応するプログラムを予め記憶している所定のサーバから構成されるランタイム環境にのみ存在する場合に、当該所定の処理を実行する環境を前記ランタイム環境と規定し、当該所定の処理がアクセスするリソースの場所が、前記ランタイム環境と異なる環境であって、各ユーザが利用可能なプログラムを提供するサーバレス環境に存在する場合に、当該所定の処理を実行する環境を前記サーバレス環境と規定しており、
前記演算装置が、
前記環境判定処理において、前記実行対象の処理の属性としての、当該実行対象の処理がアクセスするリソースの場所の情報と、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
プログラム実行支援装置。 - 前記所定のルールは、前記所定の処理と、当該所定の処理の属性としての、当該所定の処理の開始に必要なアクセス場所と、当該アクセス場所に対応づけられた、当該所定の処理を実行する環境との間の関係を規定しており、
前記演算装置が、
前記環境判定処理において、前記実行対象の処理の属性としての、当該実行対象の処理の開始に必要なアクセス場所の情報と、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
請求項1に記載のプログラム実行支援装置。 - 前記所定のルールは、前記所定の処理がアクセスするリソースの場所として、当該所定の処理が書き込むデータの書き込み先又は当該所定の処理が読み込むデータの読み込み先を記憶しており、
前記演算装置が、
前記環境判定処理において、前記実行対象の処理の属性としての、当該実行対象の処理における前記データの書き込み先又は前記データの読み込み先の情報と、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
請求項1に記載のプログラム実行支援装置。 - 前記所定のルールは、前記所定の処理がアクセスするリソースの場所として、当該所定の処理が実行させるプログラムの記憶場所を記憶しており、
前記演算装置が、
前記環境判定処理において、前記実行対象の処理の属性としての、当該実行対象の処理が実行させるプログラムの記憶場所の情報と、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
請求項1に記載のプログラム実行支援装置。 - 前記所定のルールは、前記所定の処理と、当該所定の処理の属性としての、所定の時間以上停止するか否かの情報と、所定の時間以上停止するか否かの情報に対応づけられた、当該所定の処理を実行する環境との間の関係を規定しており、
前記演算装置が、
前記環境判定処理において、前記実行対象の処理の属性の情報として所定の時間以上停止する情報が設定されているか否かと、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
請求項1に記載のプログラム実行支援装置。 - 前記演算装置が、
前記登録処理において、前記プログラムを実行させるための情報として、前記決定した環境に対応づけられた、当該プログラムに関する情報が含まれる情報を送信する、
請求項1に記載のプログラム実行支援装置。 - 前記演算装置が、
前記フローデータ取得処理において、ユーザから、実行対象の処理及び当該処理の属性の入力を受け付け、受け付けた入力内容を所定の画面を表示する編集処理を実行する所定の装置に表示された当該画面に基づき、前記実行対象の処理の情報及び当該処理の属性の情報を取得する、
請求項1に記載のプログラム実行支援装置。 - 情報処理装置が、
実行対象の処理の情報及び当該処理の属性の情報を取得するフローデータ取得処理と、
所定の処理と当該所定の処理を実行する環境との間の関係を規定した所定のルールと、前記取得した属性の情報とに基づき、前記実行対象の処理を実行する環境を決定する環境判定処理と、
前記決定した環境に、当該環境にて前記実行対象の処理を実現するプログラムを実行させるための情報を送信する登録処理と、
を実行し、
前記所定のルールは、前記所定の処理の属性としての、当該所定の処理がアクセスするリソースの場所が、前記所定の処理に対応するプログラムを予め記憶している所定のサーバから構成されるランタイム環境にのみ存在する場合に、当該所定の処理を実行する環境を前記ランタイム環境と規定し、当該所定の処理がアクセスするリソースの場所が、前記ランタイム環境と異なる環境であって、各ユーザが利用可能なプログラムを提供するサーバレス環境に存在する場合に、当該所定の処理を実行する環境を前記サーバレス環境と規定しており、
前記環境判定処理において、前記実行対象の処理の属性としての、当該実行対象の処理がアクセスするリソースの場所の情報と、前記所定のルールとに基づき、前記実行対象の処理を実行する環境を決定する、
プログラム実行支援方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020062980A JP7313309B2 (ja) | 2020-03-31 | 2020-03-31 | プログラム実行支援装置、及びプログラム実行支援方法 |
US17/024,275 US20210303301A1 (en) | 2020-03-31 | 2020-09-17 | Program Execution Assistance Apparatus and Program Execution Assistance Method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020062980A JP7313309B2 (ja) | 2020-03-31 | 2020-03-31 | プログラム実行支援装置、及びプログラム実行支援方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021163092A JP2021163092A (ja) | 2021-10-11 |
JP7313309B2 true JP7313309B2 (ja) | 2023-07-24 |
Family
ID=77856097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020062980A Active JP7313309B2 (ja) | 2020-03-31 | 2020-03-31 | プログラム実行支援装置、及びプログラム実行支援方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20210303301A1 (ja) |
JP (1) | JP7313309B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015511032A (ja) | 2011-09-23 | 2015-04-13 | ラザ,アハマド | ソフトウエアの開発方法及び装置 |
JP2018190261A (ja) | 2017-05-10 | 2018-11-29 | 富士通株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
WO2019138570A1 (ja) | 2018-01-15 | 2019-07-18 | 富士通株式会社 | 部分処理定義データのデータ構造、部分処理定義データ生成方法、および部分処理定義データ生成プログラム |
US10417043B1 (en) | 2017-07-06 | 2019-09-17 | Binaris Inc | Systems and methods for executing tasks adaptively |
JP2020502676A (ja) | 2016-12-14 | 2020-01-23 | ピヴォタル・ソフトウェア・インコーポレーテッド | 資格情報の分散型検証 |
-
2020
- 2020-03-31 JP JP2020062980A patent/JP7313309B2/ja active Active
- 2020-09-17 US US17/024,275 patent/US20210303301A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015511032A (ja) | 2011-09-23 | 2015-04-13 | ラザ,アハマド | ソフトウエアの開発方法及び装置 |
JP2020502676A (ja) | 2016-12-14 | 2020-01-23 | ピヴォタル・ソフトウェア・インコーポレーテッド | 資格情報の分散型検証 |
JP2018190261A (ja) | 2017-05-10 | 2018-11-29 | 富士通株式会社 | 情報処理装置、情報処理方法および情報処理プログラム |
US10417043B1 (en) | 2017-07-06 | 2019-09-17 | Binaris Inc | Systems and methods for executing tasks adaptively |
WO2019138570A1 (ja) | 2018-01-15 | 2019-07-18 | 富士通株式会社 | 部分処理定義データのデータ構造、部分処理定義データ生成方法、および部分処理定義データ生成プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2021163092A (ja) | 2021-10-11 |
US20210303301A1 (en) | 2021-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108304201B (zh) | 对象更新方法、装置及设备 | |
Burns et al. | Kubernetes: up and running | |
US9928050B2 (en) | Automatic recognition of web application | |
US10547682B2 (en) | Dynamically scaling application components using microservices | |
JP5679989B2 (ja) | デバッグパイプライン | |
CN111221521B (zh) | 日志代码的生成方法、装置、计算机系统和可读存储介质 | |
US20190196672A1 (en) | Visual effects system for "big data" analysis workflow editors, distribution platforms, execution engines, and management systems comprising same | |
US20120166963A1 (en) | Converting desktop applications to web applications | |
US10901804B2 (en) | Apparatus and method to select services for executing a user program based on a code pattern included therein | |
Taura et al. | Design and implementation of GXP make—A workflow system based on make | |
CN105765534A (zh) | 虚拟计算系统和方法 | |
JP2018536227A5 (ja) | ||
JP6903755B2 (ja) | データ統合ジョブ変換 | |
Vivian et al. | Rapid and efficient analysis of 20,000 RNA-seq samples with Toil | |
CN114675875A (zh) | 一种共享组件发布方法、装置、设备及介质 | |
US10165036B1 (en) | Network resource remote process execution | |
JP7313309B2 (ja) | プログラム実行支援装置、及びプログラム実行支援方法 | |
US11307839B2 (en) | Updating of container-based applications | |
Alnasir | Fifteen quick tips for success with HPC, ie, responsibly BASHing that Linux cluster | |
CN112235132A (zh) | 动态配置服务的方法、装置、介质以及服务器 | |
CN114637499B (zh) | 可视化组件处理方法、装置、设备及介质 | |
JP2004362343A (ja) | ソースコード変換装置、ソースコード変換方法、およびプログラム | |
JP6981124B2 (ja) | システム構築支援装置、システム構築支援方法、及びプログラム | |
CN110780983A (zh) | 任务异常处理方法、装置、计算机设备以及存储介质 | |
Martínez et al. | Implementing crossplatform distributed algorithms using standard web technologies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220602 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230307 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230508 |
|
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: 20230711 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7313309 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |