JP7367784B2 - 入力支援装置、入力支援方法および入力支援プログラム - Google Patents

入力支援装置、入力支援方法および入力支援プログラム Download PDF

Info

Publication number
JP7367784B2
JP7367784B2 JP2021574390A JP2021574390A JP7367784B2 JP 7367784 B2 JP7367784 B2 JP 7367784B2 JP 2021574390 A JP2021574390 A JP 2021574390A JP 2021574390 A JP2021574390 A JP 2021574390A JP 7367784 B2 JP7367784 B2 JP 7367784B2
Authority
JP
Japan
Prior art keywords
api
parameters
function
parameter
combination
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
JP2021574390A
Other languages
English (en)
Other versions
JPWO2021152803A5 (ja
JPWO2021152803A1 (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2021152803A1 publication Critical patent/JPWO2021152803A1/ja
Publication of JPWO2021152803A5 publication Critical patent/JPWO2021152803A5/ja
Application granted granted Critical
Publication of JP7367784B2 publication Critical patent/JP7367784B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、入力支援装置、入力支援方法および入力支援プログラムに関する。
従来、Web API(Application Programming Interface)を利用して、新たなアプリケーションを作成する場合がある。Web APIを利用するには、例えば、ユーザがパラメータを適切に入力することになる。
先行技術としては、定義情報ファイルが更新されるたびに、定義情報ファイルに規定された、WebAPI関数のパラメータへの入力ボックスおよびパラメータに対する入力条件に基づくチェック関数を有するWebページ入力フォームを、WebAPIライブラリの利用者向けに公開するものがある。また、ルールファイルを参照して、要求項目に対してAPI規定に合わない箇所をチェックして、チェック結果の箇所と内容を登録し、チェック結果をAPI設計者にアウトプットする技術がある。
特開2012-73778号公報 特開2018-142271号公報
しかしながら、従来技術では、APIを利用するにあたり、どのパラメータを使えばよいのかをユーザが判断するのに時間や手間がかかる場合がある。
一つの側面では、本発明は、APIを利用する際のパラメータの入力を支援することを目的とする。
一つの実施態様では、複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定する特定部と、前記第1の機能と対応付けて、前記特定部によって特定された前記パラメータの組み合わせを出力する出力制御部と、を有する入力支援装置が提供される。
本発明の一側面によれば、APIを利用する際のパラメータの入力を支援することができるという効果を奏する。
図1は、実施の形態にかかる入力支援方法の一実施例を示す説明図である。 図2は、情報処理システム200のシステム構成例を示す説明図である。 図3は、入力支援装置101のハードウェア構成例を示すブロック図である。 図4は、利用者端末201のハードウェア構成例を示すブロック図である。 図5は、API管理DB220の記憶内容の一例を示す説明図である。 図6は、APIの仕様情報の具体例を示す説明図である。 図7は、入力支援装置101の機能的構成例を示すブロック図である。 図8は、API選択画面の画面例を示す説明図である。 図9は、タスク選択画面の画面例を示す説明図(その1)である。 図10は、タスク選択画面の画面例を示す説明図(その2)である。 図11は、API利用画面の画面例を示す説明図(その1)である。 図12は、API利用画面の画面例を示す説明図(その2)である。 図13は、入力支援装置101の入力支援処理手順の一例を示すフローチャートである。
以下に図面を参照して、本発明にかかる入力支援装置、入力支援方法および入力支援プログラムの実施の形態を詳細に説明する。
(実施の形態)
図1は、実施の形態にかかる入力支援方法の一実施例を示す説明図である。図1において、入力支援装置101は、APIを利用する際のパラメータの入力を支援するコンピュータである。APIは、ソフトウェア同士をつなげるインターフェースであり、例えば、OS(Operating System)やアプリケーションが、他のアプリケーションに対して、機能の一部を利用可能に提供する。
APIとしては、例えば、Web APIが挙げられる。Web APIは、HTTP(Hypertext Transfer Protocol)プロトコルを用いて、ネットワークを介して呼び出すソフトウェア間のインターフェースである。APIは、例えば、一連の手続きや関数の集まりなどにより実現される。
ここで、APIを利用する場合、パラメータを適切に入力する必要がある。一方、APIの仕様によっては、APIで使用可能なパラメータの数は膨大なものとなる。また、同じAPIでも提供可能な機能が複数存在することがあり、機能ごとに入力するパラメータの組み合わせが異なる場合がある。
すなわち、APIを利用するためには、APIの機能に応じた適切な組み合わせのパラメータを入力する必要がある。しかし、APIを利用するための既存のGUI(Graphical User Interface)では、膨大な数のパラメータからどのパラメータを使えばよいのかをユーザが判断するのに時間や手間がかかる場合がある。
例えば、日ごろAPIを使い慣れていないビジネスユーザの場合、どのパラメータを使えばよいのかを外部のドキュメント等を調べながら判断することになり、APIを利用するまでに非常に時間がかかる。また、ITスキルの高いユーザであっても、APIの機能によっては入力すべきパラメータを把握していないことがあり、APIを利用するまでに時間や手間がかかる場合がある。
そこで、本実施の形態では、APIの機能に応じた適切なパラメータの組み合わせを提示することで、APIを利用する際のパラメータの入力を支援する入力支援方法について説明する。以下、入力支援装置101の処理例について説明する。
(1)入力支援装置101は、記憶部110を参照して、APIにより提供可能な複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定する。ここで、記憶部110は、複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、パラメータの組み合わせと、APIにより提供される機能との対応関係を示す情報を記憶する。
APIの仕様情報は、APIの仕様を表す情報であり、例えば、APIで使用可能なパラメータに関する情報が記述されている。第1の機能は、APIにより提供可能な複数の機能のうちのいずれかの機能である。第1の機能は、例えば、ユーザによって指定または選択される。
図1の例では、API_Xにより提供可能な各機能A,Bについて、各機能A,Bに対応するパラメータの組み合わせが特定された場合を想定する。また、機能Aに対応するパラメータの組み合わせを、「パラメータ1、パラメータ3およびパラメータ4」とする。機能Bに対応するパラメータの組み合わせを、「パラメータ2、パラメータ4およびパラメータ5」とする。
(2)入力支援装置101は、第1の機能と対応付けて、特定したパラメータの組み合わせを出力する。具体的には、例えば、入力支援装置101は、第1の機能と対応付けて、特定したパラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能にディスプレイ120に表示することにしてもよい。
なお、ディスプレイ120は、入力支援装置101が有していてもよく、また、入力支援装置101とは異なるコンピュータ(例えば、後述の図2に示す利用者端末201)が有していてもよい。
図1の例では、API_Xにより提供される機能Aと対応付けて、特定されたパラメータの組み合わせ「パラメータ1,3,4」が、各パラメータ1,3,4の値を入力可能にディスプレイ120に表示されている。例えば、各ボックス121~123には、各パラメータ1,3,4の値を入力することができる。
また、API_Xにより提供される機能Bと対応付けて、特定されたパラメータの組み合わせ「パラメータ2,4,5」が、各パラメータ2,4,5の値を入力可能にディスプレイ120に表示されている。例えば、各ボックス124~126には、各パラメータ2,4,5の値を入力することができる。
なお、図1中、para1は、パラメータ1を表す。para2は、パラメータ2を表す。para3は、パラメータ3を表す。para4は、パラメータ4を表す。para5は、パラメータ5を表す。
このように、入力支援装置101によれば、APIの機能に応じた適切な組み合わせのパラメータを提示して、APIを利用する際のパラメータの入力を支援することができる。図1の例では、ユーザは、API_Xの各機能A,Bに応じた適切なパラメータの組み合わせを知らなくても、入力すべきパラメータを容易に判断することができる。
例えば、ユーザは、API_Xの機能Aを利用するためには、パラメータ1,3,4の入力が必要であることを容易に判断することができる。また、ユーザは、API_Xの機能Bを利用するためには、パラメータ2,4,5の入力が必要であることを容易に判断することができる。
(情報処理システム200のシステム構成例)
つぎに、図1に示した入力支援装置101を含む情報処理システム200のシステム構成例について説明する。情報処理システム200は、例えば、APIの実行環境を提供するコンピュータシステムに適用される。
図2は、情報処理システム200のシステム構成例を示す説明図である。図2において、情報処理システム200は、入力支援装置101と、利用者端末201とを含む。情報処理システム200において、入力支援装置101および利用者端末201は、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などである。
ここで、入力支援装置101は、API管理DB(Database)220を有する。API管理DB220は、APIで使用可能なパラメータに関する情報を記憶する。図1に示した記憶部110は、例えば、API管理DB220に相当する。API管理DB220の記憶内容については、図5を用いて後述する。入力支援装置101は、例えば、クラウドコンピューティングのサーバである。
利用者端末201は、情報処理システム200のユーザが使用するコンピュータである。情報処理システム200のユーザは、例えば、各種サービスやアプリケーションで提供されているAPIを利用する者である。利用者端末201は、例えば、PC、タブレット型PC(Personal Computer)などである。
なお、図2の例では、入力支援装置101と利用者端末201とを別体に設けることにしたが、これに限らない。例えば、入力支援装置101は、利用者端末201により実現されることにしてもよい。
(入力支援装置101のハードウェア構成例)
図3は、入力支援装置101のハードウェア構成例を示すブロック図である。図3において、入力支援装置101は、CPU(Central Processing Unit)301と、メモリ302と、ディスクドライブ303と、ディスク304と、通信I/F(Interface)305と、可搬型記録媒体I/F306と、可搬型記録媒体307と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、入力支援装置101の全体の制御を司る。CPU301は、複数のコアを有していてもよい。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMがOS(Operating System)のプログラムを記憶し、ROMがアプリケーションプログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ディスクドライブ303は、CPU301の制御に従ってディスク304に対するデータのリード/ライトを制御する。ディスク304は、ディスクドライブ303の制御で書き込まれたデータを記憶する。ディスク304としては、例えば、磁気ディスク、光ディスクなどが挙げられる。
通信I/F305は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して外部のコンピュータ(例えば、図2に示した利用者端末201)に接続される。そして、通信I/F305は、ネットワーク210と装置内部とのインターフェースを司り、外部のコンピュータからのデータの入出力を制御する。通信I/F305には、例えば、モデムやLANアダプタなどを採用することができる。
可搬型記録媒体I/F306は、CPU301の制御に従って可搬型記録媒体307に対するデータのリード/ライトを制御する。可搬型記録媒体307は、可搬型記録媒体I/F306の制御で書き込まれたデータを記憶する。可搬型記録媒体307としては、例えば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどが挙げられる。
なお、入力支援装置101は、上述した構成部のほかに、例えば、SSD(Solid State Drive)、入力装置、ディスプレイ等を有することにしてもよい。また、入力支援装置101は、上述した構成部のうち、例えば、ディスクドライブ303、ディスク304、可搬型記録媒体I/F306、可搬型記録媒体307を有していなくてもよい。
(利用者端末201のハードウェア構成例)
図4は、利用者端末201のハードウェア構成例を示すブロック図である。図4において、利用者端末201は、CPU401と、メモリ402と、ディスクドライブ403と、ディスク404と、通信I/F405と、ディスプレイ406と、入力装置407と、可搬型記録媒体I/F408と、可搬型記録媒体409と、を有する。また、各構成部はバス400によってそれぞれ接続される。
ここで、CPU401は、利用者端末201の全体の制御を司る。CPU401は、複数のコアを有していてもよい。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する記憶部である。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
ディスクドライブ403は、CPU401の制御に従ってディスク404に対するデータのリード/ライトを制御する。ディスク404は、ディスクドライブ403の制御で書き込まれたデータを記憶する。
通信I/F405は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータ(例えば、入力支援装置101)に接続される。そして、通信I/F405は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。
ディスプレイ406は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する表示装置である。ディスプレイ406としては、例えば、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイなどを採用することができる。図1に示したディスプレイ120は、例えば、ディスプレイ406に相当する。
入力装置407は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置407は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
可搬型記録媒体I/F408は、CPU401の制御に従って可搬型記録媒体409に対するデータのリード/ライトを制御する。可搬型記録媒体409は、可搬型記録媒体I/F408の制御で書き込まれたデータを記憶する。
なお、利用者端末201は、上述した構成部のうち、例えば、ディスクドライブ403、ディスク404、可搬型記録媒体I/F408、可搬型記録媒体409などを有さないことにしてもよい。
(API管理DB220の記憶内容)
つぎに、図5を用いて、入力支援装置101が有するAPI管理DB220の記憶内容について説明する。API管理DB220は、例えば、図3に示したメモリ302、ディスク304などの記憶装置により実現される。
図5は、API管理DB220の記憶内容の一例を示す説明図である。図5において、API管理DB220は、APIごとのAPI管理情報(例えば、API管理情報500-1,500-2)を記憶する。APIは、例えば、各種サービスやアプリケーションで提供されるWeb APIである。
各API管理情報は、API名、タスク名、パラメータ名、項目名、値、型および必須フラグの情報を含む。API名は、利用可能なAPIの名称を示す。タスク名は、APIにより提供可能な機能の名称を示す。パラメータ名は、APIの機能を利用する際に入力するパラメータの名称を示す。項目名は、パラメータに対応する項目の名称を示す。項目名としては、ユーザに対してパラメータの意味を分かりやすく伝えるための名称が設定される。
値は、パラメータに入力される値を示す。値が「空」の場合、ユーザが値を入力する必要があることを示す。型は、パラメータの型を示す。型としては、例えば、文字列、配列、数値、ブーリアンなどがある。必須フラグは、必須のパラメータであるか否かを示す。必須フラグ「1」は、必須のパラメータであることを示す(省略不可)。必須フラグ「0」は、必須のパラメータではないことを示す(省略可)。
例えば、API管理情報500-1は、API「Sheets API」について、タスク「シートに一行追加」を利用する際に入力するパラメータに関する情報と、タスク「シートに一列追加」を利用する際に入力するパラメータに関する情報とを含む。例えば、タスク「シートに一行追加」を利用する際に入力するパラメータは、「spreadSheetId」、「range」、「majorDimension」および「values」である。パラメータ「spreadSheetId」を例に挙げると、項目名は「シートのID」である。値は「空」である。型は「文字列」である。必須フラグは「1」である。
なお、API管理情報は、例えば、入力支援装置101の管理者によりAPI管理DB220へ登録される。すなわち、入力支援装置101の管理者が、利用可能なAPIを選定し、そのAPIにより提供される機能(タスク名)および機能に応じたパラメータの組み合わせを登録する。各パラメータのパラメータ名、値、型および必須フラグの情報は、例えば、APIの仕様情報から抽出される。APIの仕様情報の具体例については、図6を用いて後述する。各パラメータの項目名は、例えば、入力支援装置101の管理者により設定される。
(APIの仕様情報)
つぎに、図6を用いてAPIの仕様情報の具体例について説明する。
図6は、APIの仕様情報の具体例を示す説明図である。図6において、仕様情報600は、YAML形式で記述された、あるAPIの仕様を表す情報である。ただし、図6では、仕様情報600の一部を抜粋して表示している。
仕様情報600には、APIで使用可能なパラメータに関する情報(例えば、符号601の部分)が記述されている。例えば、nameは、パラメータ名に相当する。descriptionは、パラメータの説明に相当する。requiredは、必須のパラメータであるか否かを示す。typeは、パラメータの型に相当する。
APIで使用可能なパラメータ群は、仕様情報(例えば、仕様情報600)から抽出することができる。なお、図5に示したAPI管理DB220内の各API管理情報の項目名は、例えば、descriptionを参照して設定される。
(入力支援装置101の機能的構成例)
図7は、入力支援装置101の機能的構成例を示すブロック図である。図7において、入力支援装置101は、受付部701と、特定部702と、出力制御部703と、実行制御部704と、記憶部710と、を含む。具体的には、例えば、受付部701~実行制御部704は、図3に示したメモリ302、ディスク304、可搬型記録媒体307などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、通信I/F305により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302、ディスク304などの記憶装置に記憶される。また、記憶部710は、例えば、メモリ302、ディスク304などの記憶装置により実現される。具体的には、例えば、記憶部710は、図5に示したAPI管理DB220を記憶する。
受付部701は、APIの選択を受け付ける。選択対象となるAPIは、例えば、ユーザが利用するAPIである。APIの選択は、例えば、API選択画面において行われる。API選択画面は、利用可能な複数のAPIを、当該複数のAPIからいずれかのAPIを選択可能に表示する操作画面である。
例えば、API選択画面は、出力制御部703により、図2に示した利用者端末201からの要求に応じて、利用者端末201のディスプレイ406(図4参照)に表示される。また、利用可能なAPIは、例えば、入力支援装置101の管理者により予め設定されており、図5に示したAPI管理DB220から特定される。
利用者端末201は、API選択画面において、入力装置407(図4参照)を用いたユーザの操作入力により、利用可能な複数のAPIからいずれかのAPIの選択を受け付ける。そして、利用者端末201は、選択されたAPIの選択結果を入力支援装置101に送信する。この場合、受付部701は、利用者端末201からAPIの選択結果を受信することにより、APIの選択を受け付ける。
また、受付部701は、自装置の入力装置(不図示)を用いたユーザの操作入力により、APIの選択を受け付けることにしてもよい。また、受付部701は、自装置の入力装置(不図示)を用いたユーザの操作入力により、API名の入力を受け付けることにより、APIの選択を受け付けることにしてもよい。
なお、API選択画面の画面例については、図8を用いて後述する。
受付部701は、APIにより提供される機能の選択を受け付ける。選択対象となる機能は、例えば、ユーザが利用するAPIの機能である。APIの機能の選択は、例えば、タスク選択画面において行われる。タスク選択画面は、APIにより提供可能な複数の機能を、当該複数の機能からいずれかの機能を選択可能に表示する操作画面である。
例えば、タスク選択画面は、出力制御部703により、利用者端末201からの要求に応じて、利用者端末201のディスプレイ406に表示される。APIにより提供可能な複数の機能は、例えば、入力支援装置101の管理者により予め設定されており、API管理DB220から特定される。
利用者端末201は、タスク選択画面において、例えば、入力装置407を用いたユーザの操作入力により、APIにより提供可能な複数の機能から機能の選択を受け付ける。そして、利用者端末201は、選択されたAPIの機能の選択結果を入力支援装置101に送信する。受付部701は、利用者端末201からAPIの機能の選択結果を受信することにより、APIにより提供される機能の選択を受け付ける。
また、受付部701は、自装置の入力装置(不図示)を用いたユーザの操作入力により、APIの機能の選択を受け付けることにしてもよい。また、受付部701は、自装置の入力装置(不図示)を用いたユーザの操作入力により、APIの機能名の入力を受け付けることにより、APIの機能の選択を受け付けることにしてもよい。
なお、タスク選択画面の画面例については、図9および図10を用いて後述する。
以下の説明では、利用可能な複数のAPIのうちの任意のAPIを「API#」と表記する場合がある。また、API#により提供可能な複数の機能を「機能#1~#n」と表記し(n:2以上の自然数)、機能#1~#nのうちの任意の機能を「機能#i」と表記する場合がある(i=1,2,…,n)。なお、上述した「第1の機能」は、例えば、機能#iに相当する。
特定部702は、記憶部710を参照して、API#により提供可能な機能#1~#nに含まれる機能#iに対応するパラメータの組み合わせを特定する。ここで、記憶部710は、API#の仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、パラメータの組み合わせと、API#により提供される機能#iとの対応関係を示す情報を記憶する。
API#の仕様情報は、例えば、図6に示したような仕様情報600である。なお、API#の仕様情報からのパラメータ群の抽出処理は、例えば、人手により行われてもよく、また、入力支援装置101により自動で行われてもよい。
具体的には、例えば、特定部702は、API管理DB220を参照して、選択されたAPI#の機能#iに対応するパラメータの組み合わせを特定する。例えば、API#の機能#iとして、API「Sheets API」のタスク「シートに一行追加」が選択されたとする。この場合、特定部702は、API管理DB220を参照して、API「Sheets API」のタスク「シートに一行追加」に対応するパラメータの組み合わせ「spreadSheetId,range,majorDimension,values」を特定する。
また、API#の機能#iとして、API「Sheets API」のタスク「シートに一列追加」が選択されたとする。この場合、特定部702は、API管理DB220を参照して、API「Sheets API」のタスク「シートに一列追加」に対応するパラメータの組み合わせ「spreadSheetId,range,majorDimension,values」を特定する。
また、特定部702は、例えば、API管理DB220を参照して、API#により提供可能な機能#1~#nに含まれる各機能#iについて、各機能#iに対応するパラメータの組み合わせをそれぞれ特定することにしてもよい。
出力制御部703は、API#の機能#iと対応付けて、特定されたパラメータの組み合わせを出力する。例えば、出力制御部703は、API#の各機能#iと対応付けて、それぞれ特定されたパラメータの組み合わせを出力することにしてもよい。出力形式としては、例えば、通信I/F305による他のコンピュータ(例えば、利用者端末201)への送信、自装置の不図示のディスプレイへの表示などがある。
具体的には、例えば、出力制御部703は、API#の機能#iと対応付けて、特定されたパラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示することにしてもよい。すなわち、API#の機能#iに応じたパラメータの組み合わせを提示しつつ、各パラメータの値を入力可能にする。
また、出力制御部703は、API#の機能#iと対応付けて、特定されたパラメータの組み合わせに含まれる各パラメータに対応する項目名をそれぞれ出力することにしてもよい。パラメータに対応する項目名とは、ユーザに対してパラメータの意味を分かりやすく伝えるための名称である。各パラメータに対応する項目名は、API管理DB220から特定することができる。
また、出力制御部703は、API#の機能#iと対応付けて、特定されたパラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては、当該値が入力された状態で表示することにしてもよい。予め値が設定されているパラメータや、予め設定された値は、例えば、API管理DB220から特定することができる。
また、出力制御部703は、API#の機能#iと対応付けて、特定されたパラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しないことにしてもよい。すなわち、予め値が設定されているパラメータについては、ユーザに対して入力を求めないようにしてもよい。
より詳細に説明すると、例えば、出力制御部703は、API管理DB220を参照して、選択されたAPI#のAPI管理情報のうち、選択された機能#i(タスク)の情報を特定する。そして、出力制御部703は、特定した機能#i(タスク)の情報を参照して、利用者端末201にAPI利用画面を表示することにしてもよい。
ここで、API利用画面は、API#を利用する際に表示される操作画面であり、API#の機能#iと対応付けて、特定部702によって特定されたパラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示するものである。なお、API利用画面の画面例については、図11および図12を用いて後述する。
実行制御部704は、API#の機能#iと対応付けて出力されたパラメータの組み合わせに含まれる各パラメータの値の入力を受け付けた場合、入力された各パラメータの値に基づいて、機能#iについて、API#を実行する。
具体的には、例えば、実行制御部704は、入力された各パラメータの値に基づいて、API#の機能#iに関するAPIリクエストを作成する。APIリクエストは、API#の実行を依頼するものであり、API#の機能#iを特定する情報と、入力された各パラメータの値とを含む。
より詳細に説明すると、例えば、APIリクエストには、API#のAPI名、機能#iの機能名、各パラメータのパラメータ名、値、型、必須フラグなどが含まれる。そして、実行制御部704は、作成したAPIリクエストを、API#を提供するウェブサーバに送信する。この結果、ウェブサーバにおいて、各パラメータの値に基づいて、API#の機能#iが実行される。
また、出力制御部703は、実行されたAPI#の実行結果を出力する。具体的には、例えば、出力制御部703は、API#を提供するウェブサーバからのAPIレスポンスに基づいて、API#の実行結果を利用者端末201に表示する。APIレスポンスには、APIリクエストで要求された情報やステータスコードなどが含まれる。ステータスコードは、例えば、API#の実行が成功したか否かの実行結果の成否を示す。
API#の実行結果としては、例えば、APIリクエストで要求された情報や実行結果の成否などが表示される。これにより、ユーザは、API#の機能#iを利用して、所望の情報を取得したり、所望の処理を行ったりすることができる。また、ユーザは、要求した処理が正常に行われたか否かを確認することができる。
なお、上述した入力支援装置101の各機能部は、例えば、利用者端末201により実現されることにしてもよい。
(API選択画面の画面例)
つぎに、図8を用いて、API選択画面の画面例について説明する。ここでは、API選択画面は、利用者端末201のディスプレイ406に表示される場合を想定する。
図8は、API選択画面の画面例を示す説明図である。図8において、API選択画面800は、利用可能な複数のAPIを、当該複数のAPIからいずれかのAPIを選択可能に表示する操作画面の一例である。なお、API選択画面800に表示されるAPIは、例えば、API管理DB220に登録されているAPIである。
API選択画面800によれば、ユーザは、利用可能な複数のAPIを確認することができる。また、API選択画面800において、入力装置407を用いたユーザの操作入力により、利用可能な複数のAPIの中から任意のAPIを選択することができる。
例えば、API選択画面800において、ボックス801を選択した状態で、選択ボタン802を選択すると、API「Sheets API」を選択することができる。この場合、利用者端末201から入力支援装置101に、API「Sheets API」が選択されたことを示す選択結果が送信される。
(タスク選択画面の画面例)
つぎに、図9および図10を用いて、タスク選択画面の画面例について説明する。ここでは、タスク選択画面は、利用者端末201のディスプレイ406に表示される場合を想定する。
図9は、タスク選択画面の画面例を示す説明図(その1)である。図9において、タスク選択画面900は、API「Sheets API」により提供可能な複数の機能を、当該複数の機能からいずれかの機能を選択可能に表示する操作画面の一例である。タスク選択画面900は、例えば、図8に示したAPI選択画面800においてAPI「Sheets API」が選択された場合に表示される。なお、タスク選択画面900に表示される機能(タスク)は、例えば、API管理DB220に登録されている機能(タスク)である。
タスク選択画面900によれば、ユーザは、API「Sheets API」により提供可能な複数の機能(タスク)を確認することができる。また、タスク選択画面900において、入力装置407を用いたユーザの操作入力により、複数の機能(タスク)の中から任意の機能(タスク)を選択することができる。
例えば、タスク選択画面900において、ボックス901を選択した状態で、選択ボタン902を選択すると、API「Sheets API」のタスク「シートに一行追加」を選択することができる。この場合、利用者端末201から入力支援装置101に、API「Sheets API」のタスク「シートに一行追加」が選択されたことを示す選択結果が送信される。
図10は、タスク選択画面の画面例を示す説明図(その2)である。図10において、タスク選択画面1000は、各API#により提供可能な機能#1~#nを、機能#1~#nからいずれかの機能#iを選択可能に表示する操作画面の一例である。
タスク選択画面1000によれば、ユーザは、図8に示したようなAPI選択画面800を経由せずに、各API#により提供可能な機能#1~#nを確認することができる。また、タスク選択画面1000において、入力装置407を用いたユーザの操作入力により、各API#により提供可能な機能#1~#nの中から任意の機能(タスク)を直接選択することができる。
例えば、タスク選択画面1000において、ボックス1001を選択した状態で、選択ボタン1002を選択すると、API「Sheets API」のタスク「シートに一行追加」を選択することができる。この場合、利用者端末201から入力支援装置101に、API「Sheets API」のタスク「シートに一行追加」が選択されたことを示す選択結果が送信される。
(API利用画面の画面例)
つぎに、図11および図12を用いて、API利用画面の画面例について説明する。ここでは、API利用画面は、利用者端末201のディスプレイ406に表示される場合を想定する。
図11は、API利用画面の画面例を示す説明図(その1)である。図11において、API利用画面1100は、API「Sheets API」の機能「シートに一行追加」を利用する際に表示される操作画面の一例である。API利用画面1100は、例えば、図9に示したタスク選択画面900または図10に示したタスク選択画面1000においてタスク「シートに一行追加」が選択された場合に表示される。
API利用画面1100によれば、ユーザは、API「Sheets API」の機能「シートに一行追加」を利用するにあたり、どのようなパラメータを入力する必要があるのかを確認することができる。また、各パラメータが、コンピュータ内部で利用されるパラメータ名ではなく、パラメータの意味を分かりやすく伝えるための項目名で表示されている。このため、ユーザは、各パラメータが、どのような情報を指定するためのものであるかを理解しやすい。
また、API利用画面1100には、各パラメータが必須のパラメータであるか否かを示す情報と、各パラメータの型が表示される。このため、ユーザは、どのパラメータが省略不可あるいは省略可能であるかを判断することができる。また、ユーザは、各パラメータにどの型の値を入力すればよいのかを判断することができる。
より詳細に説明すると、ユーザは、API「Sheets API」の機能「シートに一行追加」を利用するにあたり、各項目名「シートのID」、「追加する行の内容」、「追加する位置」および「追加する方向」に対応するパラメータの値を入力する必要があることを把握することができる。
この際、ユーザは、全パラメータが、必須パラメータであることを把握することができる。また、ユーザは、項目名「シートのID」、「追加する位置」および「追加する方向」に対応するパラメータが文字列型であり、項目名「追加する行の内容」に対応するパラメータが配列型であることを把握することができる。
API利用画面1100において、入力装置407を用いたユーザの操作入力により、入力ボックス1101~1104を選択すると、各パラメータの値を入力することができる。例えば、入力ボックス1101を選択すると、項目名「シートのID」のパラメータ(パラメータ名:spreadSheetId)の値を入力することができる。また、入力ボックス1102を選択すると、項目名「追加する行の内容」のパラメータ(パラメータ名:values)の値を入力することができる。
一方、入力ボックス1103には、項目名「追加する位置」のパラメータ(パラメータ名:range)について、予め設定された値「A1」が入力された状態となっている。また、入力ボックス1104には、項目名「追加する方向」のパラメータ(パラメータ名:majorDimension)について、予め設定された値「ROWS」が入力された状態となっている。
このため、ユーザは、項目名「追加する位置」のパラメータおよび項目名「追加する方向」のパラメータの値について、入力操作を行う必要がなく作業負荷を軽減することができる。ただし、各入力ボックス1103,1104を選択することで、各パラメータの値を入力し直すことができる。
なお、API利用画面1100には、API「Sheets API」で使用可能な他のパラメータを表示するための操作ボタンが設けられていてもよい。これにより、API「Sheets API」の機能「シートに一行追加」を利用するにあたり、提示されたパラメータだけでなく、さらに他のパラメータの値を入力することが可能となる。
また、API利用画面1100において、各入力ボックス1101~1104に値が入力された状態で、実行ボタン1105を選択すると、API「Sheets API」の機能「シートに一行追加」の実行を開始することができる。具体的には、例えば、実行ボタン1105が選択されると、各入力ボックス1101~1104に入力された入力結果が、利用者端末201から入力支援装置101に送信される。
入力支援装置101は、利用者端末201から入力結果を受信することにより、API「Sheets API」の機能「シートに一行追加」に応じた各パラメータの値の入力を受け付ける。入力支援装置101は、入力された各パラメータの値に基づいて、API「Sheets API」の機能「シートに一行追加」に関するAPIリクエストを作成し、API「Sheets API」を提供するウェブサーバに送信する。この結果、ウェブサーバにおいて、入力された各パラメータの値に基づいて、API「Sheets API」の機能「シートに一行追加」が実行される。
図12は、API利用画面の画面例を示す説明図(その2)である。図12において、API利用画面1200は、API「Sheets API」の機能「シートに一行追加」を利用する際に表示される操作画面の一例である。API利用画面1200は、例えば、図9に示したタスク選択画面900または図10に示したタスク選択画面1000においてタスク「シートに一行追加」が選択された場合に表示される。
API利用画面1200は、項目名「追加する位置」のパラメータと、項目名「追加する方向」のパラメータについての情報が非表示となっている点で、図11に示したAPI利用画面1100と異なる。すなわち、予め値が設定されているパラメータについては、ユーザに対して入力を求めないようにしている。
API利用画面1200によれば、予め値が設定されており、ユーザ自身が値を入力しなくてもよいパラメータについての情報を非表示とすることで、ユーザが確認する情報量を削減することができる。なお、API「Sheets API」の機能「シートに一行追加」を実行する場合には、項目名「追加する位置」のパラメータ(パラメータ名:range)および項目名「追加する方向」のパラメータ(パラメータ名:majorDimension)については、予め設定された値「A1」および「ROWS」が用いられる。
(入力支援装置101の入力支援処理手順)
つぎに、図13を用いて、入力支援装置101の入力支援処理手順について説明する。
図13は、入力支援装置101の入力支援処理手順の一例を示すフローチャートである。図13のフローチャートにおいて、まず、入力支援装置101は、API管理DB220を参照して、API選択画面を利用者端末201に表示する(ステップS1301)。API選択画面は、例えば、図8に示したAPI選択画面800である。
つぎに、入力支援装置101は、API#の選択を受け付けたか否かを判断する(ステップS1302)。ここで、入力支援装置101は、API#の選択を受け付けるのを待つ(ステップS1302:No)。そして、入力支援装置101は、API#の選択を受け付けた場合(ステップS1302:Yes)、API管理DB220から、選択されたAPI#のAPI管理情報を取得する(ステップS1303)。
つぎに、入力支援装置101は、取得したAPI管理情報に基づいて、タスク選択画面を利用者端末201に表示する(ステップS1304)。タスク選択画面は、例えば、図9に示したタスク選択画面900である。そして、入力支援装置101は、API#のタスク#iの選択を受け付けたか否かを判断する(ステップS1305)。
ここで、入力支援装置101は、API#のタスク#iの選択を受け付けるのを待つ(ステップS1305:No)。そして、入力支援装置101は、API#のタスク#iの選択を受け付けた場合(ステップS1305:Yes)、取得したAPI管理情報を参照して、選択されたAPI#のタスク#iに対応するパラメータの組み合わせを特定する(ステップS1306)。
つぎに、入力支援装置101は、取得したAPI管理情報を参照して、API利用画面を利用者端末201に表示する(ステップS1307)。API利用画面は、API#の機能#iと対応付けて、ステップS1306において特定されたパラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示する操作画面であり、例えば、図11に示したAPI利用画面1100である。
そして、入力支援装置101は、特定したパラメータの組み合わせに含まれる各パラメータの値の入力を受け付けたか否かを判断する(ステップS1308)。ここで、入力支援装置101は、各パラメータの値の入力を受け付けるのを待つ(ステップS1308:No)。
入力支援装置101は、各パラメータの値の入力を受け付けた場合(ステップS1308:Yes)、入力された各パラメータの値に基づいて、選択された機能#i(タスク)について、API#を実行する(ステップS1309)。そして、入力支援装置101は、API#の実行結果を出力して(ステップS1310)、本フローチャートによる一連の処理を終了する。
これにより、API#の機能#iを利用する際に、API#の機能#iに応じて入力が必要となるパラメータの組み合わせを提示して、各パラメータの入力を支援するGUIを提供することができる。
以上説明したように、実施の形態にかかる入力支援装置101によれば、記憶部710(例えば、API管理DB220)を参照して、API#により提供可能な機能#1~#nに含まれる機能#iに対応するパラメータの組み合わせを特定することができる。記憶部710は、API#の仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、パラメータの組み合わせと、API#により提供される機能#iとの対応関係を示す情報を記憶する。APIは、例えば、Web APIである。そして、入力支援装置101によれば、機能#iと対応付けて、特定したパラメータの組み合わせを出力することができる。
これにより、API#の機能#iに応じた適切な組み合わせのパラメータを提示することができ、API#を利用する際のパラメータの入力を支援することができる。例えば、ユーザは、API#の用途(機能#i)に応じて異なるパラメータの組み合わせを知らなくても、入力すべきパラメータを容易に判断することができる。
また、入力支援装置101によれば、API#により提供可能な機能#1~#nを、機能#1~#nからいずれかの機能#iを選択可能に表示し、表示した機能#1~#nから機能#iが選択されたことに応じて、記憶部710を参照して、機能#iに対応するパラメータの組み合わせを特定することができる。
これにより、API#により提供可能な機能#1~#nを提示して、ユーザが利用したい機能#iを選択可能にするとともに、選択された機能#iに応じた適切な組み合わせのパラメータを提示することができる。
また、入力支援装置101によれば、機能#iと対応付けて、特定したパラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示することができる。
これにより、API#の機能#iに応じた適切な組み合わせのパラメータを提示しつつ、各パラメータの値を入力可能なGUIを提供することができる。
また、入力支援装置101によれば、機能#iと対応付けて、特定したパラメータの組み合わせに含まれる各パラメータに対応する項目名をそれぞれ表示することができる。
これにより、API#の機能#iに応じた適切な組み合わせのパラメータを提示する際に、各パラメータが、どのような情報を指定するためのものであるかをユーザに理解しやすくさせることができる。
また、入力支援装置101によれば、機能#iと対応付けて、特定したパラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては、当該値が入力された状態で表示することができる。
これにより、API#の機能#iに応じて入力が必要となるパラメータのうち、予め値が設定されているパラメータについては、ユーザによる入力操作を省略して作業負荷を軽減することができる。
また、入力支援装置101によれば、機能#iと対応付けて、特定したパラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しないようにすることができる。
これにより、API#の機能#iに応じて入力が必要となるパラメータのうち、ユーザ自身が値を入力しなくてもよいパラメータについての情報を非表示とすることで、API#を利用する際にユーザが確認する情報量を削減することができる。
また、入力支援装置101によれば、出力したパラメータの組み合わせに含まれる各パラメータの値の入力を受け付けた場合、入力された各パラメータの値に基づいて、機能#iについて、API#を実行することができる。
これにより、API#を利用して、ユーザが意図した処理を実行することができる。
これらのことから、実施の形態にかかる入力支援装置101および情報処理システム200によれば、APIを利用する際のパラメータの入力を支援して、幅広いユーザがAPIを利用しやすいサービス(実行環境)を提供することができる。例えば、日ごろAPIを使い慣れていないビジネスユーザであっても、どのパラメータを使えばよいのかを、外部のドキュメント等を調べることなく簡単に判断することができ、APIを利用する際の作業時間や作業負荷を削減することができる。また、ITスキルの高いユーザであっても、APIを利用する際の作業時間や作業負荷を削減して、生産性の向上につなげることができる。
なお、本実施の形態で説明した入力支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本入力支援プログラムは、ハードディスク、フレキシブルディスク、CD-ROM、DVD、USBメモリ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本入力支援プログラムは、インターネット等のネットワークを介して配布してもよい。
また、本実施の形態で説明した入力支援装置101は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けICやFPGAなどのPLD(Programmable Logic Device)によっても実現することができる。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定する特定部と、
前記第1の機能と対応付けて、前記特定部によって特定された前記パラメータの組み合わせを出力する出力制御部と、
を有することを特徴とする入力支援装置。
(付記2)前記出力制御部は、前記APIにより提供可能な複数の機能を、当該複数の機能からいずれかの機能を選択可能に表示し、
前記特定部は、表示された前記複数の機能から第1の機能が選択されたことに応じて、前記記憶部を参照して、前記第1の機能に対応するパラメータの組み合わせを特定する、ことを特徴とする付記1に記載の入力支援装置。
(付記3)前記出力制御部は、前記第1の機能と対応付けて、特定された前記パラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示する、ことを特徴とする付記1に記載の入力支援装置。
(付記4)前記出力制御部は、前記第1の機能と対応付けて、特定された前記パラメータの組み合わせに含まれる各パラメータに対応する項目名をそれぞれ表示する、ことを特徴とする付記3に記載の入力支援装置。
(付記5)前記出力制御部によって出力された前記パラメータの組み合わせに含まれる各パラメータの値の入力を受け付けた場合、入力された前記各パラメータの値に基づいて、前記第1の機能について、前記APIを実行する実行制御部、をさらに有する、ことを特徴とする付記1に記載の入力支援装置。
(付記6)前記出力制御部は、
前記第1の機能と対応付けて、特定された前記パラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては、当該値が入力された状態で表示する、ことを特徴とする付記3に記載の入力支援装置。
(付記7)前記出力制御部は、
前記第1の機能と対応付けて、特定された前記パラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しない、ことを特徴とする付記3に記載の入力支援装置。
(付記8)前記APIは、Web APIである、ことを特徴とする付記1に記載の入力支援装置。
(付記9)複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定し、
前記第1の機能と対応付けて、特定した前記パラメータの組み合わせを出力する、
処理をコンピュータが実行することを特徴とする入力支援方法。
(付記10)複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定し、
前記第1の機能と対応付けて、特定した前記パラメータの組み合わせを出力する、
処理をコンピュータに実行させることを特徴とする入力支援プログラム。
101 入力支援装置
110,710 記憶部
120,406 ディスプレイ
200 情報処理システム
201 利用者端末
210 ネットワーク
220 API管理DB
300,400 バス
301,401 CPU
302,402 メモリ
303,403 ディスクドライブ
304,404 ディスク
305,405 通信I/F
306,408 可搬型記録媒体I/F
307,409 可搬型記録媒体
407 入力装置
600 仕様情報
701 受付部
702 特定部
703 出力制御部
704 実行制御部
800 API選択画面
900,1000 タスク選択画面
1100,1200 API利用画面

Claims (6)

  1. 複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定する特定部と、
    前記第1の機能と対応付けて、前記特定部によって特定された前記パラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示する出力制御部と、
    を有し、
    前記出力制御部は、
    前記第1の機能と対応付けて、特定された前記パラメータの組み合わせを表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しない、ことを特徴とする入力支援装置。
  2. 前記出力制御部は、前記APIにより提供可能な複数の機能を、当該複数の機能からいずれかの機能を選択可能に表示し、
    前記特定部は、表示された前記複数の機能から第1の機能が選択されたことに応じて、前記記憶部を参照して、前記第1の機能に対応するパラメータの組み合わせを特定する、ことを特徴とする請求項1に記載の入力支援装置。
  3. 前記出力制御部は、前記第1の機能と対応付けて、特定された前記パラメータの組み合わせのうち前記予め値が設定されているパラメータ以外の各パラメータに対応する項目名をそれぞれ表示する、ことを特徴とする請求項1に記載の入力支援装置。
  4. 前記出力制御部によって表示された前記パラメータの組み合わせに含まれる各パラメータの値の入力を受け付けた場合、入力された前記各パラメータの値と、前記予め値が設定されているパラメータの当該値とに基づいて、前記第1の機能について、前記APIを実行する実行制御部、をさらに有する、ことを特徴とする請求項1に記載の入力支援装置。
  5. 複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定し、
    前記第1の機能と対応付けて、特定した前記パラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しない、
    処理をコンピュータが実行することを特徴とする入力支援方法。
  6. 複数の機能を提供可能なAPIの仕様情報から抽出したパラメータ群に含まれるパラメータの組み合わせごとに、前記パラメータの組み合わせと、前記APIにより提供される機能との対応関係を示す情報を記憶する記憶部を参照して、前記複数の機能に含まれる第1の機能に対応するパラメータの組み合わせを特定し、
    前記第1の機能と対応付けて、特定した前記パラメータの組み合わせを、当該組み合わせに含まれる各パラメータの値を入力可能に表示する際に、当該組み合わせのうち予め値が設定されているパラメータについては表示しない、
    処理をコンピュータに実行させることを特徴とする入力支援プログラム。
JP2021574390A 2020-01-30 2020-01-30 入力支援装置、入力支援方法および入力支援プログラム Active JP7367784B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/003560 WO2021152803A1 (ja) 2020-01-30 2020-01-30 入力支援装置、入力支援方法および入力支援プログラム

Publications (3)

Publication Number Publication Date
JPWO2021152803A1 JPWO2021152803A1 (ja) 2021-08-05
JPWO2021152803A5 JPWO2021152803A5 (ja) 2022-06-23
JP7367784B2 true JP7367784B2 (ja) 2023-10-24

Family

ID=77078499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021574390A Active JP7367784B2 (ja) 2020-01-30 2020-01-30 入力支援装置、入力支援方法および入力支援プログラム

Country Status (4)

Country Link
US (1) US20220342735A1 (ja)
EP (1) EP4099159A4 (ja)
JP (1) JP7367784B2 (ja)
WO (1) WO2021152803A1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005284741A (ja) 2004-03-30 2005-10-13 Advanced Telecommunication Research Institute International 汎用gui装置及び汎用guiプログラム
JP2007102665A (ja) 2005-10-07 2007-04-19 Hitachi Systems & Services Ltd リクエスタプログラムのチェック装置およびテスト値入力支援装置
JP2007241697A (ja) 2006-03-09 2007-09-20 Internatl Business Mach Corp <Ibm> シナリオをテストする方法、装置、及びプログラム
JP2010224632A (ja) 2009-03-19 2010-10-07 Toshiba Tec Corp Webサービステスト支援装置及びプログラム
JP2012073778A (ja) 2010-09-28 2012-04-12 Yahoo Japan Corp WebAPI作成支援装置及びWebAPI作成支援方法
US20160239274A1 (en) 2015-02-13 2016-08-18 Red Hat, Inc. Generating command line interface using application programming interface specification
JP2016170548A (ja) 2015-03-11 2016-09-23 株式会社リコー 情報処理システム、情報処理装置および情報処理プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219810A (ja) * 1994-02-04 1995-08-18 Canon Inc モジュールテスト方法および装置
US6138170A (en) * 1997-04-07 2000-10-24 Novell, Inc. Method and system for integrating external functions into an application environment
US6542937B1 (en) * 1998-02-27 2003-04-01 Amada Company, Limited Apparatus and method for transferring and editing sheet metal part data
US6066182A (en) * 1998-11-05 2000-05-23 Platinum Technology Ip, Inc. Method and apparatus for operating system personalization during installation
JP2009238040A (ja) * 2008-03-27 2009-10-15 Hitachi Ltd モジュール間連携支援方法、モジュール間連携支援プログラム、モジュール間連携支援システム
US9261871B2 (en) * 2012-03-29 2016-02-16 Yokogawa Electric Corporation Apparatus and method for determining operation compatibility between field devices
US9852390B2 (en) * 2014-06-05 2017-12-26 General Electric Company Methods and systems for intelligent evolutionary optimization of workflows using big data infrastructure
JP2018142271A (ja) 2017-02-28 2018-09-13 日本電信電話株式会社 Api規約チェック装置、api規約チェック方法、およびプログラム
US11120683B2 (en) * 2019-03-04 2021-09-14 Tony Trupp Remote control for interacting with smart home IoT devices and web services
US11681550B2 (en) * 2020-09-28 2023-06-20 Western Digital Technologies, Inc. Command management using allocated command identifier pools

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005284741A (ja) 2004-03-30 2005-10-13 Advanced Telecommunication Research Institute International 汎用gui装置及び汎用guiプログラム
JP2007102665A (ja) 2005-10-07 2007-04-19 Hitachi Systems & Services Ltd リクエスタプログラムのチェック装置およびテスト値入力支援装置
JP2007241697A (ja) 2006-03-09 2007-09-20 Internatl Business Mach Corp <Ibm> シナリオをテストする方法、装置、及びプログラム
JP2010224632A (ja) 2009-03-19 2010-10-07 Toshiba Tec Corp Webサービステスト支援装置及びプログラム
JP2012073778A (ja) 2010-09-28 2012-04-12 Yahoo Japan Corp WebAPI作成支援装置及びWebAPI作成支援方法
US20160239274A1 (en) 2015-02-13 2016-08-18 Red Hat, Inc. Generating command line interface using application programming interface specification
JP2016170548A (ja) 2015-03-11 2016-09-23 株式会社リコー 情報処理システム、情報処理装置および情報処理プログラム

Also Published As

Publication number Publication date
WO2021152803A1 (ja) 2021-08-05
JPWO2021152803A1 (ja) 2021-08-05
EP4099159A4 (en) 2023-02-08
US20220342735A1 (en) 2022-10-27
EP4099159A1 (en) 2022-12-07

Similar Documents

Publication Publication Date Title
JP4965623B2 (ja) 所定のソフトウェアの実行パラメータを入力フィールドへ入力することを支援するための方法、システム、およびプログラム
US20100205559A1 (en) Quick-launch desktop application
JP2017102901A (ja) プログラム、情報処理装置、設定方法および情報処理システム
US9256968B2 (en) Method for modeling using sketches
JP7367784B2 (ja) 入力支援装置、入力支援方法および入力支援プログラム
US20210209298A1 (en) Computer-implemented systems and methods for managing an electronic document
JP6032250B2 (ja) プログラム生成装置、情報処理装置、制御方法、およびプログラム
JP4958115B2 (ja) 情報処理装置および方法
JP2019095850A (ja) 文書処理装置およびプログラム
JP2019106137A (ja) 表示プログラム、表示方法、表示装置、コメント表示制御プログラム、コメント表示制御方法及びコメント表示制御装置
JPWO2021152803A5 (ja)
JP5211614B2 (ja) データベースシステム、サーバ、検索条件の継承方法、プログラム、及び記録媒体
CN114995722A (zh) 信息处理装置以及记录介质
JPWO2012101702A1 (ja) UI(UserInterface)作成支援装置、UI作成支援方法及びプログラム
JP2011233104A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム、記録媒体
JP6993751B1 (ja) ドキュメント処理システム、ドキュメント処理方法、および、ドキュメント処理プログラム
JP6918457B2 (ja) ファイル管理システム、及び制御方法
JP4713098B2 (ja) 選択項目表示装置、選択項目表示方法、および選択項目表示プログラム
JP7367783B2 (ja) サービス設計装置、サービス設計方法およびサービス設計プログラム
JP6995405B1 (ja) 情報提供方法、情報提供装置、情報提供プログラムおよび記録媒体
JP7273439B1 (ja) 情報処理システム、情報処理方法及びプログラム
CN110457377B (zh) 用于针对数据记录进行检索的交互方法和交互系统
EP4054166B1 (en) Information processing apparatus, information processing program, and information processing method
JP7404738B2 (ja) 情報処理システム、情報処理装置及びプログラム
JP7290095B2 (ja) 表示制御プログラム、表示制御方法および表示制御装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220418

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230601

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: 20230912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230925

R150 Certificate of patent or registration of utility model

Ref document number: 7367784

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150