(57)【要約】【課題】ＷｅｂＡＰＩの実行順序やパラメータ間の関係を可視化したＷｅｂＡＰＩ実行フローを生成する。【解決手段】ＷｅｂＡＰＩ実行フロー生成装置は、ＷｅｂＡＰＩ抽出部２０とＷｅｂＡＰＩ実行フロー生成部３０とＷｅｂＡＰＩ実行フロー補正部４０とを有する。ＷｅｂＡＰＩ抽出部２０は、Ｗｅｂアプリ概要書１６からキーワードを抽出して関連するＷｅｂＡＰＩを抽出する。ＷｅｂＡＰＩ実行フロー生成部３０は、抽出されたＷｅｂＡＰＩのパラメータが一致するＷｅｂＡＰＩを抽出し、ＷｅｂＡＰＩ実行フロー補正部４０は、ＷｅｂＡＰＩのパラメータに類似するパラメータをもつＷｅｂＡＰＩを抽出し、ＷｅｂＡＰＩ実行フロー生成部３０がＷｅｂＡＰＩの実行順序を判定してＷｅｂＡＰＩ実行フローを生成する。【選択図】図１
2018133044.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサービスの利用に必要なＷｅｂＡＰＩを抽出するＷｅｂＡＰＩ実行フロー生成装置であって、
前記Ｗｅｂサービスに関するキーワードと前記ＷｅｂＡＰＩとを関連付けたＷｅｂＡＰＩ概要データベースを備え、入力された前記キーワードに関連するＷｅｂＡＰＩを関連ＷｅｂＡＰＩとして前記ＷｅｂＡＰＩ概要データベースから抽出するＷｅｂＡＰＩ抽出部と、
各ＷｅｂＡＰＩに対応づけて、リクエストパラメータかレスポンスパラメータかの種別と、パラメータ名称と、パラメータ型とを記憶したＷｅｂＡＰＩパラメータデータベースを備え、前記関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のレスポンスパラメータをもつＷｅｂＡＰＩと、前記関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのレスポンスパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のリクエストパラメータをもつＷｅｂＡＰＩとを前記ＷｅｂＡＰＩパラメータデータベースから抽出し、当該ＷｅｂＡＰＩと前記関連ＷｅｂＡＰＩとの和である抽出ＷｅｂＡＰＩの中で１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とがそれぞれ同一であることで当該２つのＷｅｂＡＰＩに前後関係があると判断し、前記抽出ＷｅｂＡＰＩの実行順序を決定するＷｅｂＡＰＩ実行フロー生成部と
を有することを特徴とするＷｅｂＡＰＩ実行フロー生成装置。
【請求項２】
前記ＷｅｂＡＰＩのパラメータと当該パラメータに類似するパラメータをもつＷｅｂＡＰＩとを関連付けた類似リクエスト／レスポンスパラメータデータベースを備え、前記抽出ＷｅｂＡＰＩの中でパラメータ名称とパラメータ型が同一でありかつ種別が異なるパラメータをもつＷｅｂＡＰＩが存在しないパラメータをもつＷｅｂＡＰＩである不一致ＷｅｂＡＰＩが存在した場合に、前記不一致ＷｅｂＡＰＩのパラメータに類似するパラメータをもつＷｅｂＡＰＩを類似パラメータ保有ＷｅｂＡＰＩとして前記類似リクエスト／レスポンスパラメータデータベースから抽出し、１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータとが類似することで当該２つのＷｅｂＡＰＩに前後関係があると判断するＷｅｂＡＰＩ実行フロー補正部をさらに有し、
前記ＷｅｂＡＰＩ実行フロー生成部は、前記抽出ＷｅｂＡＰＩにさらに前記類似パラメータ保有ＷｅｂＡＰＩを加えて新規抽出ＷｅｂＡＰＩとし、前記ＷｅｂＡＰＩ実行フロー補正部が判断した前後関係と合わせて前記新規抽出ＷｅｂＡＰＩの実行順序を決定する
ことを特徴とする請求項１に記載のＷｅｂＡＰＩ実行フロー生成装置。
【請求項３】
前記ＷｅｂＡＰＩ実行フロー補正部は、前記レスポンスパラメータと前記リクエストパラメータとの類似度を、前記レスポンスパラメータまたは前記リクエストパラメータの名称の類似度、前記Ｗｅｂサービスの仕様書に記載してある前記レスポンスパラメータまたは前記リクエストパラメータの記述の類似度、前記レスポンスパラメータまたは前記リクエストパラメータの型の類似度の１つまたはその組合せにより算出する
ことを特徴とする請求項２に記載のＷｅｂＡＰＩ実行フロー生成装置。
【請求項４】
前記ＷｅｂＡＰＩ抽出部は、前記Ｗｅｂサービスに関連する用語と当該用語の類義語とを関連付けた類義語データベースをさらに備え、前記Ｗｅｂサービスを利用するＷｅｂアプリの設計概要書から前記用語を抽出し、前記用語の類義語を前記類義語データベースから抽出し、前記類義語を前記キーワードとして前記ＷｅｂＡＰＩ概要データベースから前記関連ＷｅｂＡＰＩを抽出する
ことを特徴とする請求項１〜３のいずれか１項に記載のＷｅｂＡＰＩ実行フロー生成装置。
【請求項５】
Ｗｅｂサービスの利用に必要なＷｅｂＡＰＩを抽出するＷｅｂＡＰＩ実行フロー生成装置のＷｅｂＡＰＩ実行フロー生成方法であって、
前記ＷｅｂＡＰＩ実行フロー生成装置は、
前記Ｗｅｂサービスに関するキーワードと前記ＷｅｂＡＰＩとを関連付けたＷｅｂＡＰＩ概要データベース、および、各ＷｅｂＡＰＩに対応づけて、リクエストパラメータかレスポンスパラメータかの種別と、パラメータ名称と、パラメータ型とを記憶したＷｅｂＡＰＩパラメータデータベースを備えており、
入力された前記キーワードに関連するＷｅｂＡＰＩを関連ＷｅｂＡＰＩとして前記ＷｅｂＡＰＩ概要データベースから抽出するＷｅｂＡＰＩ抽出ステップと、
前記抽出された関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のレスポンスパラメータをもつＷｅｂＡＰＩと、前記抽出された関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのレスポンスパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のリクエストパラメータをもつＷｅｂＡＰＩとを前記ＷｅｂＡＰＩパラメータデータベースから抽出し、当該ＷｅｂＡＰＩと前記抽出された関連ＷｅｂＡＰＩとの和である抽出ＷｅｂＡＰＩの中で１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とがそれぞれ同一であることで当該２つのＷｅｂＡＰＩに前後関係があると判断し、前記抽出ＷｅｂＡＰＩの実行順序を決定するＷｅｂＡＰＩ実行フロー生成ステップと
を実行することを特徴とするＷｅｂＡＰＩ実行フロー生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＷｅｂＡＰＩ（Web Application Programming Interface）の実行フローを生成するＷｅｂＡＰＩ実行フロー生成装置およびＷｅｂＡＰＩ実行フロー生成方法に関する。
【背景技術】
【０００２】
多数の事業者が、自社が提供しているサービスの機能を他社がインターネット経由で利用できるようにＷｅｂＡＰＩ（ＡＰＩ）を公開している。ＷｅｂＡＰＩの例として、通信販売事業者が提供する商品検索や在庫状況取得のＷｅｂＡＰＩ、ＳＮＳ（Social Networking Service）サイトが提供するメッセージ投稿やキーワードのトレンドランキング取得のＷｅｂＡＰＩなどがある。他にも、クラウドサービス事業者のＶＭ（Virtual Machine）の生成・起動のＷｅｂＡＰＩやデータベースにアクセスするＷｅｂＡＰＩなどがある。
【０００３】
Ｗｅｂアプリ開発者は、公開されたＷｅｂＡＰＩを利用することで、短期間・低コストで、多種多様なＷｅｂアプリを開発できるようになる。１つのＷｅｂＡＰＩを呼出して利用可能なサービスが存在する一方、複数のＷｅｂＡＰＩを順次呼出して利用可能となるサービスも存在する。後者の場合、Ｗｅｂアプリ開発者は、ＷｅｂＡＰＩの仕様書を読んで理解し、ＷｅｂＡＰＩの実行フローを把握する必要がある。ＷｅｂＡＰＩの実行フローとは、サービス利用に必要なＷｅｂＡＰＩを呼出す順序であり、呼出すＷｅｂＡＰＩのリクエストパラメータとレスポンスパラメータとの関係を含んだＷｅｂＡＰＩとその順序関係である。
【０００４】
図１１は、Ｗｅｂアプリ開発者がＷｅｂＡＰＩの実行フローを把握するために参照するＷｅｂＡＰＩ仕様書９２１を例示する図である。ＷｅｂＡＰＩ仕様書９２１はRunInstancesという１つのＷｅｂＡＰＩを説明する文書であり、ＡＰＩの概要説明９０２と、リクエストパラメータの説明９０３と、レスポンスパラメータの説明９０４とが記載されている。リクエストパラメータの説明９０３とレスポンスパラメータの説明９０４とには、各パラメータの名称や型を含めた説明が記載されている。
【０００５】
図１２は、Ｗｅｂアプリ開発者がＷｅｂＡＰＩの実行フローを把握するために行っている作業を説明するための図である。Ｗｅｂアプリ開発者は、利用したいサービスを決めて、各サービスごとにＷｅｂＡＰＩ仕様書９２１を参考に、当該サービスを利用するのに必要なＡＰＩ９２２を抽出する作業９１１を行う。次に、Ｗｅｂアプリ開発者は、抽出したＡＰＩ９２２の概要説明９０２やリクエストパラメータの説明９０３、レスポンスパラメータの説明９０４を参考にして、抽出したＡＰＩ９２２の実行順序９２３を導出する作業９１２を行う。
【０００６】
続いて、Ｗｅｂアプリ開発者は、リクエストパラメータを生成するＡＰＩやレスポンスパラメータを利用するためのＡＰＩなど、不足するＡＰＩ９２４を抽出する作業９１３を行う。さらに実行順序９２３をＡＰＩ９２４を含めた実行順序９２５に補正する作業９１４を行う。Ｗｅｂアプリ開発者は、不足するＡＰＩを抽出する作業９１３と実行順序を補正する作業９１４を繰り返して行う場合もある。
【０００７】
代表的なクラウドサービスであるＡｍａｚｏｎ  ＥＣ２（Elastic Compute Cloud）（「Ａｍａｚｏｎ」は登録商標）は１９９のＡＰＩを提供しており、その全てを把握することは容易ではない。また、異なる事業者が提供するＷｅｂＡＰＩを利用するとなると、さらにＷｅｂアプリ開発者の負担が大きくなる。Ｗｅｂアプリ開発者が行うＷｅｂＡＰＩ実行フローの作成作業を自動化または作業負担を軽減化することが求められている。
【０００８】
ＡＰＩまたは広く作業手順を自動導出する既存の技術として、特許文献１と非特許文献１とに記載の技術がある。非特許文献１には、ネットワーク運用者が記録した障害対応のログ情報から、ネットワーク機器の操作などの作業手順を自動生成する技術が記載されている。特許文献１には、複数のワークフローシステムがＷｅｂサービスを介して利用可能である場合に、複数のＷｅｂサービスに共通のインタフェース定義とＷｅｂサービスアプリケーションを生成する技術が記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００５−３４６４０８号公報
【非特許文献】
【００１０】
【非特許文献１】石橋圭介、林孝典、塩本公平、"機械学習・データ分析によるネットワーク設計・運用高度化"、ＮＴＴ技術ジャーナル、2015.12、pp.29-33.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、非特許文献１に記載の自動生成技術には、ログ情報が必要であり、その生成には一定数のシナリオが必要であるが、シナリオを導出する手段は開示されていない。特許文献１に記載の生成技術では、当該ワークフローシステムの連携情報を入力する必要があるが、連携情報を導出する手段は開示されていない。よって、既存の技術では、ＷｅｂＡＰＩ実行フローの作成作業を自動化することやＷｅｂアプリ開発者の作業負担を軽減することはできなかった。
【００１２】
本発明は、上記の問題を解決するものであり、ＷｅｂＡＰＩの実行順序やパラメータ間の関係を含んだＷｅｂＡＰＩ実行フローを生成することができるＷｅｂＡＰＩ実行フロー生成装置およびＷｅｂＡＰＩ実行フロー生成方法を提供することを課題とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するための手段として、請求項１に係る発明は、Ｗｅｂサービスの利用に必要なＷｅｂＡＰＩを抽出するＷｅｂＡＰＩ実行フロー生成装置であって、前記Ｗｅｂサービスに関するキーワードと前記ＷｅｂＡＰＩとを関連付けたＷｅｂＡＰＩ概要データベースを備え、入力された前記キーワードに関連するＷｅｂＡＰＩを関連ＷｅｂＡＰＩとして前記ＷｅｂＡＰＩ概要データベースから抽出するＷｅｂＡＰＩ抽出部と、各ＷｅｂＡＰＩに対応づけて、リクエストパラメータかレスポンスパラメータかの種別と、パラメータ名称と、パラメータ型とを記憶したＷｅｂＡＰＩパラメータデータベースを備え、前記関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のレスポンスパラメータをもつＷｅｂＡＰＩと、前記関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのレスポンスパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のリクエストパラメータをもつＷｅｂＡＰＩとを前記ＷｅｂＡＰＩパラメータデータベースから抽出し、当該ＷｅｂＡＰＩと前記関連ＷｅｂＡＰＩとの和である抽出ＷｅｂＡＰＩの中で１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とがそれぞれ同一であることで当該２つのＷｅｂＡＰＩに前後関係があると判断し、前記抽出ＷｅｂＡＰＩの実行順序を決定するＷｅｂＡＰＩ実行フロー生成部とを有することを特徴とするＷｅｂＡＰＩ実行フロー生成装置である。
【００１４】
上記課題を解決するための手段として、請求項５に係る発明は、Ｗｅｂサービスの利用に必要なＷｅｂＡＰＩを抽出するＷｅｂＡＰＩ実行フロー生成装置のＷｅｂＡＰＩ実行フロー生成方法であって、前記ＷｅｂＡＰＩ実行フロー生成装置は、前記Ｗｅｂサービスに関するキーワードと前記ＷｅｂＡＰＩとを関連付けたＷｅｂＡＰＩ概要データベース、および、各ＷｅｂＡＰＩに対応づけて、リクエストパラメータかレスポンスパラメータかの種別と、パラメータ名称と、パラメータ型とを記憶したＷｅｂＡＰＩパラメータデータベースを備えており、入力された前記キーワードに関連するＷｅｂＡＰＩを関連ＷｅｂＡＰＩとして前記ＷｅｂＡＰＩ概要データベースから抽出するＷｅｂＡＰＩ抽出ステップと、前記抽出された関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のレスポンスパラメータをもつＷｅｂＡＰＩと、前記抽出された関連ＷｅｂＡＰＩに含まれるＷｅｂＡＰＩのレスポンスパラメータのパラメータ名称とパラメータ型とそれぞれ同一であるパラメータ名称とパラメータ型のリクエストパラメータをもつＷｅｂＡＰＩとを前記ＷｅｂＡＰＩパラメータデータベースから抽出し、当該ＷｅｂＡＰＩと前記抽出された関連ＷｅｂＡＰＩとの和である抽出ＷｅｂＡＰＩの中で１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータのパラメータ名称とパラメータ型とがそれぞれ同一であることで当該２つのＷｅｂＡＰＩに前後関係があると判断し、前記抽出ＷｅｂＡＰＩの実行順序を決定するＷｅｂＡＰＩ実行フロー生成ステップとを実行することを特徴とするＷｅｂＡＰＩ実行フロー生成方法である。
【００１５】
かかる構成によれば、Ｗｅｂサービスを利用するＷｅｂアプリがＷｅｂサービスを呼出すのに用いるＷｅｂＡＰＩと、一致するレスポンスパラメータとリクエストパラメータから実行順序とを抽出することができる。これによりＷｅｂアプリ開発者がＷｅｂＡＰＩの仕様書を読み解く時間を減らすことができ、Ｗｅｂアプリの開発期間を短縮して開発コストを削減できる。また、Ｗｅｂサービスに精通していないＷｅｂアプリ開発者であっても、必要なＷｅｂＡＰＩを把握することができる。
【００１６】
上記課題を解決するための手段として、請求項２に係る発明は、前記ＷｅｂＡＰＩのパラメータと当該パラメータに類似するパラメータをもつＷｅｂＡＰＩとを関連付けた類似リクエスト／レスポンスパラメータデータベースを備え、前記抽出ＷｅｂＡＰＩの中でパラメータ名称とパラメータ型が同一でありかつ種別が異なるパラメータをもつＷｅｂＡＰＩが存在しないパラメータをもつＷｅｂＡＰＩである不一致ＷｅｂＡＰＩが存在した場合に、前記不一致ＷｅｂＡＰＩのパラメータに類似するパラメータをもつＷｅｂＡＰＩを類似パラメータ保有ＷｅｂＡＰＩとして前記類似リクエスト／レスポンスパラメータデータベースから抽出し、１つのＷｅｂＡＰＩのレスポンスパラメータと別のＷｅｂＡＰＩのリクエストパラメータとが類似することで当該２つのＷｅｂＡＰＩに前後関係があると判断するＷｅｂＡＰＩ実行フロー補正部をさらに有し、前記ＷｅｂＡＰＩ実行フロー生成部は、前記抽出ＷｅｂＡＰＩにさらに前記類似パラメータ保有ＷｅｂＡＰＩを加えて新規抽出ＷｅｂＡＰＩとし、前記ＷｅｂＡＰＩ実行フロー補正部が判断した前後関係と合わせて前記新規抽出ＷｅｂＡＰＩの実行順序を決定することを特徴とする請求項１に記載のＷｅｂＡＰＩ実行フロー生成装置である。
【００１７】
かかる構成によれば、類似するパラメータを考慮したより多くのＷｅｂＡＰＩを抽出することができ、必要なＷｅｂＡＰＩの抽出漏れを減らすことができる。
【００１８】
上記課題を解決するための手段として、請求項３に係る発明は、前記ＷｅｂＡＰＩ実行フロー補正部は、前記レスポンスパラメータと前記リクエストパラメータとの類似度を、前記レスポンスパラメータまたは前記リクエストパラメータの名称の類似度、前記Ｗｅｂサービスの仕様書に記載してある前記レスポンスパラメータまたは前記リクエストパラメータの記述の類似度、前記レスポンスパラメータまたは前記リクエストパラメータの型の類似度の１つまたはその組合せにより算出することを特徴とする請求項２に記載のＷｅｂＡＰＩ実行フロー生成装置である。
【００１９】
かかる構成によれば、パラメータの類似度を所定の項目を用いて算出することができる。Ｗｅｂアプリ開発者の要求に応じた類似度を用いてＷｅｂＡＰＩを抽出することができる。
【００２０】
上記課題を解決するための手段として、請求項４に係る発明は、前記ＷｅｂＡＰＩ抽出部は、前記Ｗｅｂサービスに関連する用語と当該用語の類義語とを関連付けた類義語データベースをさらに備え、前記Ｗｅｂサービスを利用するＷｅｂアプリの設計概要書から前記用語を抽出し、前記用語の類義語を前記類義語データベースから抽出し、前記類義語を前記キーワードとして前記ＷｅｂＡＰＩ概要データベースから前記関連ＷｅｂＡＰＩを抽出することを特徴とする請求項１〜３のいずれか１項に記載のＷｅｂＡＰＩ実行フロー生成装置である。
【００２１】
かかる構成によれば、Ｗｅｂアプリの設計概要書からＷｅｂＡＰＩを抽出することができる。Ｗｅｂアプリ開発者は、Ｗｅｂアプリが利用するＷｅｂサービスのキーワードを検討することがなくなるので、さらに開発期間を減らすことができる。
【発明の効果】
【００２２】
本発明によれば、ＷｅｂＡＰＩの実行順序やパラメータ間の関係を含んだＷｅｂＡＰＩ実行フローを生成することができるＷｅｂＡＰＩ実行フロー生成装置およびＷｅｂＡＰＩ実行フロー生成方法を提供することができる。
【図面の簡単な説明】
【００２３】
【図１】本実施形態に係るＷｅｂＡＰＩ実行フロー生成装置の全体構成を例示する図である。
【図２】本実施形態に係る類義語ＤＢのデータ構成を例示する図である。
【図３】本実施形態に係るＷｅｂＡＰＩ概要ＤＢのデータ構成を例示する図である。
【図４】本実施形態に係るＷｅｂＡＰＩパラメータＤＢのデータ構成を例示する図である。
【図５】本実施形態に係る類似リクエスト／レスポンスパラメータＤＢのデータ構成を例示する図である。
【図６】本実施形態に係るパラメータの類似度の算出方法を説明するための図である。
【図７】本実施形態に係るＷｅｂＡＰＩ実行フローの生成処理を例示するフローチャートである。
【図８】リクエスト／レスポンスパラメータ関係性判定部のパラメータペアの検出処理を説明するための図である。
【図９】ＷｅｂＡＰＩ実行順序判定部のＡＰＩ実行順決定処理を説明するための図である。
【図１０】ＷｅｂＡＰＩ実行順序判定部が生成するＷｅｂＡＰＩ実行フローを例示する図である。
【図１１】Ｗｅｂアプリ開発者がＷｅｂＡＰＩの実行フローを把握するために参照するＷｅｂＡＰＩ仕様書を例示する図である。
【図１２】Ｗｅｂアプリ開発者がＷｅｂＡＰＩの実行フローを把握するために行っている作業を説明するための図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態であるＷｅｂＡＰＩ実行フロー生成装置を、図面を参照しつつ説明する。
≪ＷｅｂＡＰＩ実行フロー生成装置の全体構成≫
図１は、本実施形態に係るＷｅｂＡＰＩ実行フロー生成装置１０の全体構成を例示する図である。ＷｅｂＡＰＩ実行フロー生成装置１０は、ＣＰＵ（Central Processing Unit）から構成される制御部１１、ハードディスクやＲＡＭ（Random Access Memory）等で構成される記憶部１２、不図示のディスプレイ、キーボードなどから構成される。ＷｅｂＡＰＩ実行フロー生成装置１０は、記憶部１２に記憶され、以下に説明する各機能部を実現するプログラムを制御部１１が実行することにより、ＷｅｂＡＰＩ実行フロー１７を生成する。ＷｅｂＡＰＩ実行フロー生成装置１０は、ＷｅｂＡＰＩ抽出部２０と、ＷｅｂＡＰＩ実行フロー生成部３０と、ＷｅｂＡＰＩ実行フロー補正部４０とを備える。
【００２５】
≪ＷｅｂＡＰＩ抽出部の構成≫
ＷｅｂＡＰＩ抽出部２０は、Ｗｅｂアプリ概要書（Ｗｅｂアプリの設計概要書）１６を解析し、Ｗｅｂアプリが利用するサービスの呼出しに必要なＷｅｂＡＰＩを抽出する。ＷｅｂＡＰＩ抽出部２０は、キーワード検索部２１と、類義語検索部２２と、ＷｅｂＡＰＩ判定部２３と、類義語ＤＢ（Database）２４とＷｅｂＡＰＩ概要ＤＢ２５とを備える。キーワード検索部２１と類義語検索部２２とＷｅｂＡＰＩ判定部２３とは制御部１１の一部として機能し、類義語ＤＢ２４とＷｅｂＡＰＩ概要ＤＢ２５とは記憶部１２に格納される。
【００２６】
キーワード検索部２１は、Ｗｅｂアプリ概要書１６を解析し、Ｗｅｂアプリが呼出すサービスを抽出し、そのサービスに関連するキーワードを抽出する。
類義語検索部２２は、類義語ＤＢ２４（後述する図２参照）を用いて、キーワード検索部２１が抽出したキーワードに類似する類似キーワードを抽出する。
【００２７】
図２は、本実施形態に係る類義語ＤＢ２４のデータ構成を例示する図である。類義語ＤＢ２４は、例えばテーブル形式のデータであって、キーワード２４１の列と類義語２４２の列とからなる。１つの行（レコード）は、１つのキーワード２４１と、当該キーワードに対する１つまたは複数の類義語２４２とを示す。
【００２８】
図１の説明に戻り、ＷｅｂＡＰＩ判定部２３は、ＷｅｂＡＰＩ概要ＤＢ２５（後述する図３参照）を用いて、類義語検索部２２が抽出した類似キーワードから関連するＷｅｂＡＰＩを抽出する。
図３は、本実施形態に係るＷｅｂＡＰＩ概要ＤＢ２５のデータ構成を例示する図である。ＷｅｂＡＰＩ概要ＤＢ２５は、例えばテーブル形式のデータであって、キーワード２５１の列とＷｅｂＡＰＩ２５２の列とからなる。１つのレコードは、１つのキーワード２５１に関連する１つまたは複数のＷｅｂＡＰＩ２５２を示す。ＷｅｂＡＰＩ概要ＤＢ２５は、ＷｅｂＡＰＩ仕様書９２１（図１１参照）の概要説明９０２からキーワードとなる技術用語（プログラミング関連用語）を取り出して、これをキーワード２５１とすることで作成できる。
【００２９】
≪ＷｅｂＡＰＩ実行フロー生成部の構成≫
ＷｅｂＡＰＩ実行フロー生成部３０は、ＷｅｂＡＰＩ抽出部２０が抽出したＷｅｂＡＰＩからＷｅｂＡＰＩ実行フロー１７を生成する。ＷｅｂＡＰＩ実行フロー生成部３０は、リクエスト／レスポンスパラメータ関係性判定部３１と、ＷｅｂＡＰＩ実行順序判定部３２と、ＷｅｂＡＰＩパラメータＤＢ３３とを備える。リクエスト／レスポンスパラメータ関係性判定部３１とＷｅｂＡＰＩ実行順序判定部３２とは制御部１１の一部として機能し、ＷｅｂＡＰＩパラメータＤＢ３３は記憶部１２に格納される。
【００３０】
リクエスト／レスポンスパラメータ関係性判定部３１は、ＷｅｂＡＰＩ抽出部２０が抽出したＡＰＩの中で、レスポンスパラメータとリクエストパラメータとが一致するパラメータの組合せ（パラメータペア、後述する図８（ｂ）参照）を検出する。リクエスト／レスポンスパラメータ関係性判定部３１は、ＷｅｂＡＰＩパラメータＤＢ３３（後述する図４参照）を用いてパラメータペアを検出する。また、リクエスト／レスポンスパラメータ関係性判定部３１は、パラメータペアを検出できなかった（一致するパラメータがなかった）パラメータ（不一致パラメータ）をＷｅｂＡＰＩ実行フロー補正部４０に送信する。
【００３１】
図４は、本実施形態に係るＷｅｂＡＰＩパラメータＤＢ３３のデータ構成を例示する図である。ＷｅｂＡＰＩパラメータＤＢ３３は、例えばテーブル形式のデータであって、ＷｅｂＡＰＩ３３１の列、種別３３２の列、パラメータ３３３の列、型３３４の列、記述３３５の列からなる。１つのレコードは、１つのパラメータに関連する情報を含む。
【００３２】
ＷｅｂＡＰＩ３３１は、当該パラメータをもつＷｅｂＡＰＩの名称である。
種別３３２は、当該パラメータがＷｅｂＡＰＩ３３１のリクエストパラメータであるかレスポンスパラメータであるかを示し、「入」ならばリクエストパラメータ、「出」ならばレスポンスパラメータである。
パラメータ３３３は、当該パラメータの名称（パラメータ名称）である。
型３３４は、当該パラメータの型（パラメータ型）である。
記述３３５は、当該パラメータの説明である。
【００３３】
ＷｅｂＡＰＩパラメータＤＢ３３は、ＷｅｂＡＰＩ仕様書９２１（図１１参照）のリクエストパラメータの説明９０３と、レスポンスパラメータの説明９０４から作成することができる。
図１の説明に戻り、ＷｅｂＡＰＩ実行順序判定部３２は、リクエスト／レスポンスパラメータ関係性判定部３１が検出したパラメータペアに基づいて、ＷｅｂＡＰＩの実行順序（呼出し順序）を判定し、ＷｅｂＡＰＩ実行フロー１７を生成する。また、不一致パラメータがあった場合には、ＷｅｂＡＰＩ実行フロー補正部４０が生成する類似パラメータペア（後述する図９（ｄ）参照）も取り入れて、ＷｅｂＡＰＩ実行フロー１７を生成する。
【００３４】
≪ＷｅｂＡＰＩ実行フロー補正部の構成≫
ＷｅｂＡＰＩ実行フロー補正部４０は、ＷｅｂＡＰＩ実行フロー生成部３０が検出した不一致パラメータについて、類似度の高いパラメータをもつＷｅｂＡＰＩを抽出し、類似パラメータペアを生成する。ＷｅｂＡＰＩ実行フロー補正部４０は、リクエスト／レスポンスパラメータ類似度判定部４１と、ＷｅｂＡＰＩ実行順序補正部４２と、類似リクエスト／レスポンスパラメータＤＢ４３とを備える。リクエスト／レスポンスパラメータ類似度判定部４１とＷｅｂＡＰＩ実行順序補正部４２とは制御部１１の一部として機能し、類似リクエスト／レスポンスパラメータＤＢ４３は記憶部１２に格納される。
【００３５】
リクエスト／レスポンスパラメータ類似度判定部４１は、ＷｅｂＡＰＩ実行フロー生成部３０が検出した不一致パラメータについて、類似するパラメータをもつＡＰＩとそのパラメータを検索する。リクエスト／レスポンスパラメータ類似度判定部４１は、類似リクエスト／レスポンスパラメータＤＢ４３（後述する図５参照）を用いて類似パラメータを検索する。
【００３６】
図５は、本実施形態に係る類似リクエスト／レスポンスパラメータＤＢ４３のデータ構成を例示する図である。類似リクエスト／レスポンスパラメータＤＢ４３は、例えばテーブル形式のデータであって、パラメータ４３１の列と、類似パラメータ４３２の列とからなる。１つのレコードは、１つのパラメータに類似するパラメータの情報を含む。
【００３７】
パラメータ４３１は、当該パラメータを示す情報であり、当該パラメータをもつＡＰＩの名称、リクエストパラメータかレスポンスパラメータかの種別、パラメータの名称を含んでいる。
類似パラメータ４３２は、当該パラメータに類似するパラメータの情報であり、類似するパラメータをもつＡＰＩの名称、リクエストパラメータかレスポンスパラメータかの種別、類似度、名称を含んでいる。類似パラメータ４３２は、複数の類似したパラメータの情報を含む場合もある。
【００３８】
類似リクエスト／レスポンスパラメータＤＢ４３を生成するには、パラメータ間の類似度を算出して、所定の値より高い類似度のパラメータのペアを類似リクエスト／レスポンスパラメータＤＢ４３に格納することで生成できる。パラメータのペアは、リクエストパラメータとレスポンスパラメータの組み合わせである。２つのパラメータの類似度は、パラメータの名称、パラメータの型、パラメータの記述から算出する。
【００３９】
図６は、本実施形態に係るパラメータの類似度の算出方法を説明するための図である。図６（ａ）は、ＡＰＩの１つであるCreateSecurityGroupのＷｅｂＡＰＩ仕様書６１１の一部であり、図６（ｂ）は、ＡＰＩの１つであるRunInstancesのＷｅｂＡＰＩ仕様書６１３の一部である。CreateSecurityGroupのレスポンスパラメータであるgroupId６１２とRunInstancesのリクエストパラメータであるSecurityGroupId６１４との類似度の算出方法を説明する。
【００４０】
パラメータ名称の類似度については、名称を単語に分解して算出する。groupIdはgroupとidとに分解でき、SecurityGroupIdはsecurityとgroupとidとに分解でき、この単語のグループ間の類似度をパラメータ名称の類似度とする。単語のグループ間の類似度算出方法としては、コサイン類似度が代表的であるが、単語の重複度などの指標を用いてもよいし、さらに単語の順序を考慮して算出してもよい。
【００４１】
パラメータ型の類似度は、型が一致する、上下関係（４バイト整数と２バイト整数など）、一方が他方の一部である関係（整数と整数配列など）などの関係から算出する。パラメータ記述の類似度は、パラメータ記述にある技術用語のグループ間の類似度としてもよいし、さらに技術用語の出現順序を考慮して類似度を算出してもよい。例えば、groupId６１２の記述では、(id, security, group)を技術用語のグループとする。パラメータ名称、パラメータ型、パラメータ記述のそれぞれの類似度から所定の方法でパラメータの類似度が算出できる。
【００４２】
≪全体処理≫
図７は、本実施形態に係るＷｅｂＡＰＩ実行フローの生成処理を例示するフローチャートである。図７を参照しながら、ＷｅｂＡＰＩ実行フロー生成装置１０が実行するＷｅｂＡＰＩ実行フローの生成処理を説明する。
【００４３】
ステップＳ７１において、キーワード検索部２１が入力されたＷｅｂアプリ概要書１６を解析し、利用するサービスごとにキーワードを抽出して、類義語検索部２２に送信する。Ｗｅｂアプリ概要書１６は、所定の形式でサービス利用の記載を含んでおり、キーワード検索部２１は、この記載から技術用語を抽出してキーワードとする。
以下では、Ｗｅｂアプリ概要書１６に記載されたサービスが１つだと仮定して、ＷｅｂＡＰＩ実行フロー１７を生成するまでの処理を説明する。複数のサービスが含まれていた場合には、以降の処理を繰り返し実行して、各々のサービスごとにＷｅｂＡＰＩ実行フロー１７を生成する。
【００４４】
ステップＳ７２において、類義語検索部２２がキーワードを受信し、類似キーワードを抽出して、ＷｅｂＡＰＩ判定部２３に送信する。類義語検索部２２は、類義語ＤＢ２４（図２参照）を用いて類似キーワードを抽出する。類義語検索部２２は、受信した各々のキーワードについて、キーワード２４１と一致する類義語２４２を検索し、検索結果の類義語の和をとって類似キーワードとする。
【００４５】
ステップＳ７３において、ＷｅｂＡＰＩ判定部２３が、受信した類似キーワードから関連するＡＰＩを抽出して、リクエスト／レスポンスパラメータ関係性判定部３１に送信する。ＷｅｂＡＰＩ判定部２３は、ＷｅｂＡＰＩ概要ＤＢ２５（図３参照）を用いてＡＰＩを抽出する。ＷｅｂＡＰＩ判定部２３は、受信した各々の類似キーワードについて、キーワード２５１と一致するＷｅｂＡＰＩ２５２を検索し、検索結果のＷｅｂＡＰＩの和をとって関連するＷｅｂＡＰＩ（ＡＰＩ）を抽出する。
【００４６】
ステップＳ７４において、リクエスト／レスポンスパラメータ関係性判定部３１が受信したＡＰＩのリクエストパラメータとレスポンスパラメータの中で一致するパラメータペアを検出して、ＷｅｂＡＰＩ実行順序判定部３２に送信する。リクエスト／レスポンスパラメータ関係性判定部３１は、パラメータが一致するか否かをＷｅｂＡＰＩパラメータＤＢ３３を用いて判断する。さらに、受信したＡＰＩのリクエストパラメータとレスポンスパラメータに一致するパラメータをＷｅｂＡＰＩパラメータＤＢ３３を用いて検索して、パラメータペアとしてＷｅｂＡＰＩ実行順序判定部３２に送信する。図８は、リクエスト／レスポンスパラメータ関係性判定部３１のパラメータペアの検出処理を説明するための図である。以下、図８を参照してリクエスト／レスポンスパラメータ関係性判定部３１の処理を説明する。
【００４７】
図８（ａ）は、リクエスト／レスポンスパラメータ関係性判定部３１が受信した３つのＡＰＩを模式的に示した図である。１番目のＡＰＩの記述６０１は、リクエストパラメータが左の矩形に示され、レスポンスパラメータが右の矩形に示され、これら矩形の間の矩形にＡＰＩ名称が示されている。２番目のＡＰＩの記述６０２と３番目のＡＰＩの記述６０３についても同様である。
図８（ｂ）は、図８（ａ）に示された３つのＡＰＩから検出された３つのパラメータペアを示した図である。パラメータペア６０４は、ＡＰＩ−ＦのレスポンスパラメータＰａｒａｍ−８と、ＡＰＩ−ＢのリクエストパラメータＰａｒａｍ−８とが一致していることを示している。パラメータペア６０５とパラメータペア６０６についても同様である。
【００４８】
図８（ｃ）は、受信したＡＰＩではなく、リクエスト／レスポンスパラメータ関係性判定部３１がＷｅｂＡＰＩパラメータＤＢ３３を用いて検索して新たに得たＡＰＩであるＡＰＩ−Ｌ６０７を示した図である。リクエスト／レスポンスパラメータ関係性判定部３１は、例えば、ＡＰＩ−Ｆ６０３のリクエストパラメータＰａｒａｍ−２５に一致するパラメータを検索することで、ＡＰＩ−Ｌ６０７のレスポンスパラメータのＰａｒａｍ−２５を得る。
【００４９】
図８（ｄ）は、ＡＰＩ−Ｌ６０７が検索されたことによる新たに検出されたパラメータペアを示した図である。パラメータペア６０８は、ＡＰＩ−Ｆ６０３のリクエストパラメータＰａｒａｍ−２５とＡＰＩ−Ｌ６０７のレスポンスパラメータのＰａｒａｍ−２５とが一致していることを示している。さらに、パラメータペア６０９、パラメータペア６００が検出される。
【００５０】
リクエスト／レスポンスパラメータ関係性判定部３１は、ＷｅｂＡＰＩパラメータＤＢ３３（図４参照）を用いて、一致するパラメータを検索する。詳しくは、種別３３２が「出」と「入」の組み合わせとなり、パラメータ３３３と型３３４とが一致するレコードを検索して、パラメータペアを抽出する。パラメータペアにより、２つのＡＰＩの前後関係が判明する。つまり、一致するパラメータがレスポンスパラメータであるＡＰＩが前で、一致するパラメータがリクエストパラメータであるＡＰＩが後となる前後関係が判明する。
【００５１】
図７に戻り、ステップＳ７５において、リクエスト／レスポンスパラメータ関係性判定部３１は、不一致パラメータが存在するか否かを判定し、存在すればステップＳ７６に進み、存在しなければステップＳ７９に進む。不一致パラメータは、リクエスト／レスポンスパラメータ関係性判定部３１が受信したＡＰＩとＷｅｂＡＰＩパラメータＤＢ３３を検索して得たＡＰＩのパラメータから検出する。
ステップＳ７６において、リクエスト／レスポンスパラメータ関係性判定部３１は、不一致パラメータをそれをもつＡＰＩとともにリクエスト／レスポンスパラメータ類似度判定部４１に送信する。
【００５２】
ステップＳ７７において、リクエスト／レスポンスパラメータ類似度判定部４１は、受信した不一致パラメータに類似するパラメータを検索し、結果をＷｅｂＡＰＩ実行順序補正部４２にそれをもつＡＰＩとともに送信する。詳しくは、リクエスト／レスポンスパラメータ類似度判定部４１は、類似リクエスト／レスポンスパラメータＤＢ４３（図５参照）の中で不一致パラメータに一致するパラメータ４３１のレコードを検索し、類似パラメータ４３２を得る。
【００５３】
ステップＳ７８において、ＷｅｂＡＰＩ実行順序補正部４２は、受信した類似パラメータとそれをもつＡＰＩとをパラメータペア（図８（ｂ）参照）と同じ形式にして、類似パラメータペアとしてＷｅｂＡＰＩ実行順序判定部３２に送信する。パラメータペアと同じ形式とは、（ＡＰＩ名，そのレスポンスパラメータ，ＡＰＩ名，そのリクエストパラメータ）であって、ＡＰＩの実行順序（呼出し順序）の関係を含んでいる。類似パラメータペアもパラメータペアと同様に、前後関係を含んでいる。
【００５４】
ステップＳ７９において、パラメータペアと類似パラメータに基づいてＷｅｂＡＰＩ実行順序判定部３２がＷｅｂＡＰＩ実行フロー１７を生成する。図９はＷｅｂＡＰＩ実行順序判定部３２のＡＰＩ実行順決定処理を説明するための図である。図９（ａ）は、図８（ｂ）と図８（ｄ）とを合わせた図であり、リクエスト／レスポンスパラメータ関係性判定部３１が検出したパラメータペアである。
【００５５】
図９（ｂ）は、図９（ａ）の６つのパラメータペア（６０４〜６０６、６０８、６０９、６００）から得られるＡＰＩの実行順序を示す図である。パラメータペア６０４から、ＡＰＩ−ＦのレスポンスパラメータがＡＰＩ−Ｂのリクエストパラメータに一致していることが分かり、ＡＰＩ−ＦがＡＰＩ−Ｂより前であるという実行順序６５１が得られる。同様に、パラメータペア６０５から再び実行順序６５１が得られ、パラメータペア６０６から実行順序６５２が得られる。さらに、パラメータペア６０８から実行順序６５３が得られ、パラメータペア６０９とパラメータペア６００から実行順序６５４が得られる。
【００５６】
図９（ｃ）は、４つの実行順序（６５１〜６５４）から得られる全体の実行順序６５５を示す図である。４つの実行順序（６５１〜６５４）を組み合わせることで、ＷｅｂＡＰＩ実行順序判定部３２は、ＡＰＩ−Ｂの前にＡＰＩ−Ｆがあり、その前にＡＰＩ−Ｌがあり、さらにその前にＡＰＩ−Ｃがあるという実行順序が得られる。
【００５７】
図９（ｄ）は、ＷｅｂＡＰＩ実行順序補正部４２が送信した類似パラメータペア６５６を示した図であり、ＡＰＩ−ＧのリクエストパラメータＰａｒａｍ−１３’が ＡＰＩ−ＢのレスポンスパラメータＰａｒａｍ−１３に類似していることを示す。図９（ｅ）は、類似パラメータペア６５６から得られるＡＰＩの実行順序を示す図である。パラメータペアのときと同様に、類似パラメータペア６５６からＡＰＩ−ＢがＡＰＩ−Ｇより前であるという実行順序６５７が得られる。
図９（ｆ）は、実行順序６５５と実行順序６５７から得られる全体の実行順序６５８を示す図である。以上のようにして、ＷｅｂＡＰＩ実行順序判定部３２は、類似パラメータを考慮したＡＰＩの実行順序を生成する。
【００５８】
続いて、ＷｅｂＡＰＩ実行順序判定部３２は、実行順序に含まれるＡＰＩとパラメータペアと類似パラメータペアの関係を図にしたＷｅｂＡＰＩ実行フロー１７を生成する。図１０は、ＷｅｂＡＰＩ実行順序判定部３２が生成するＷｅｂＡＰＩ実行フロー１７を例示する図である。図１０に記載のＷｅｂＡＰＩ実行フロー１７は、Ａｍａｚｏｎ  ＥＣ２で提供されるＷｅｂＡＰＩを例として、ＡＰＩの実行順序、パラメータペアと類似パラメータペアによるパラメータ間の対応関係を示している。ＡＰＩは図８（ａ）と同様に３つの矩形で示される。但し、リクエストパラメータまたはレスポンスパラメータがないＡＰＩは、左ないしは右の矩形が欠けて図示される。パラメータペアと類似パラメータペアとは、レスポンスパラメータからリクエストパラメータへ矢印を引くことで図示されており、パラメータ間の対応関係が示される。
【００５９】
点線６４１で囲われた領域において太線の矢印を除いたものは、リクエスト／レスポンスパラメータ関係性判定部３１が受信したＡＰＩとそのパラメータ間の対応関係である。リクエスト／レスポンスパラメータ関係性判定部３１が受信した４つのＡＰＩであるCreateSecurityGroup６３３、AuthorizeSecurityGroupIngress６３４、AuthorizeSecurityGroupEgress６３５、RunInstances６３６とこの４つのＡＰＩのパラメータの中でのパラメータペアから得られる対応関係が示されている。
【００６０】
点線６４１の外側の領域にある４つのＡＰＩのCreateVPC６３１、CreateSubnet６３２、CreateKeyPair６３７、DescribeImages６３８は、リクエスト／レスポンスパラメータ関係性判定部３１が受信したＡＰＩではなく、自身が追加したＡＰＩである。また、点線６４１の内側にあるCreateSecurityGroup６３３のレスポンスパラメータGroupIdとRunInstances６３６のリクエストパラメータSecurityGroupId.Nとは一致せず、類似したパラメータであり、ＷｅｂＡＰＩ実行順序補正部４２が送信した類似パラメータペアから得られた対応関係である。
【００６１】
≪変形例≫
ＷｅｂＡＰＩ判定部２３のＡＰＩ抽出（図７のステップＳ７３参照）は、類似キーワードに関連する全てのＡＰＩを抽出している。また、リクエスト／レスポンスパラメータ類似度判定部４１は類似する全てのパラメータを検索している（図７のステップＳ７７参照）。この結果、ＷｅｂＡＰＩ実行フローに含まれるＡＰＩやパラメータの対応関係が多過ぎて、ＷｅｂＡＰＩ実行フローが見づらかったり、全体が把握しにくかったりする可能性がある。ステップＳ７３のＡＰＩ抽出でのキーワードとＡＰＩの関連度やステップＳ７７の類似度を、利用者であるＷｅｂアプリ開発者がＷｅｂＡＰＩ実行フローを見ながら調整可能にするようにしてもよい。適切な量のＡＰＩや対応関係が図示されることで、Ｗｅｂアプリ開発者がＷｅｂＡＰＩ実行フローを理解しやすくなる。なお、キーワードとＡＰＩの関連度は、キーワードがＷｅｂＡＰＩの名称に含まれるか否か、概要説明９０２（図１１参照）に表れる割合などから算出できる。
【００６２】
また、Ｗｅｂアプリ概要書を入力とするのではなく、Ｗｅｂアプリ開発者が指定した特定のＡＰＩをリクエスト／レスポンスパラメータ関係性判定部３１の入力とすることで、当該ＡＰＩを起点としたＷｅｂＡＰＩ実行フローを生成することができる。こうすることで、Ｗｅｂアプリ開発者は当該ＡＰＩと実行順序の前後関係があるＡＰＩを知ることができる。
【００６３】
上記の実施形態では、Ｗｅｂアプリ概要書の中に所定の形式でサービス利用が記載されており、この記載からキーワード検索部２１はキーワードを抽出している（図７のステップＳ７１参照）。ＷｅｂＡＰＩ仕様書からキーワードとなる技術用語を予め抽出しておき、Ｗｅｂアプリ概要書の中でキーワードを検索するようにしてもよい。また、文や段落、節などの文書の論理的単位を１つのサービス利用の記載と捉えて、キーワード検索部２１がキーワードを抽出するようにしてもよい。
【００６４】
ＷｅｂＡＰＩ実行フロー１７（図１０参照）には、ＡＰＩ名称、パラメータ名称、レスポンスパラメータとリクエストパラメータの対応関係が図示されている。ＡＰＩの説明やパラメータの記述を加えてもよい。これらの説明は、画面上で常時表示されるのではなく、指示があったときにポップアップ表示されるようにしてもよい。
【００６５】
上記の実施形態では、インターネットを経由して利用するＷｅｂＡＰＩを対象に説明したが、これに限る必要はない。組織内ネットワークを経由して利用するＷｅｂＡＰＩでも構わないし、ネットワークを介さない１台の装置内ローカルのアプリケーションやライブラリのＡＰＩでも構わない。
【００６６】
≪ＷｅｂＡＰＩ実行フロー生成装置の効果≫
Ｗｅｂアプリ概要書からサービス単位でＷｅｂＡＰＩ実行フローを生成することができる。ＷｅｂＡＰＩには、サービス利用に関連するＷｅｂＡＰＩやそのパラメータ間の関係が図示されており、ＡＰＩの実行順序（呼出し順序）を含めてサービスの呼出し方をＷｅｂアプリ開発者が容易に理解できるようになる。このために、開発コストを下げることができる。また、当該Ｗｅｂサービスに精通していないＷｅｂアプリ開発者であっても、容易に開発できるようになる。
【符号の説明】
【００６７】
１０    ＷｅｂＡＰＩ実行フロー生成装置
１１    制御部
１２    記憶部
１６    Ｗｅｂアプリ概要書（Ｗｅｂアプリの設計概要書）
１７    ＷｅｂＡＰＩ実行フロー
２０    ＷｅｂＡＰＩ抽出部
２１    キーワード検索部
２２    類義語検索部
２３    ＷｅｂＡＰＩ判定部
２４    類義語ＤＢ
２５    ＷｅｂＡＰＩ概要ＤＢ
３０    ＷｅｂＡＰＩ実行フロー生成部
３１    リクエスト／レスポンスパラメータ関係性判定部
３２    ＷｅｂＡＰＩ実行順序判定部
３３    ＷｅｂＡＰＩパラメータＤＢ
４０    ＷｅｂＡＰＩ実行フロー補正部
４１    リクエスト／レスポンスパラメータ類似度判定部
４２    ＷｅｂＡＰＩ実行順序補正部
４３    類似リクエスト／レスポンスパラメータＤＢ
６００、６０４、６０５、６０６、６０８、６０９  パラメータペア
６１１、６１３、９２１  ＷｅｂＡＰＩ仕様書
６５６  類似パラメータペア
【図１】
2018133044.tif 000003
【図２】
2018133044.tif 000004
【図３】
2018133044.tif 000005
【図４】
2018133044.tif 000006
【図５】
2018133044.tif 000007
【図６】
2018133044.tif 000008
【図７】
2018133044.tif 000009
【図８】
2018133044.tif 000010
【図９】
2018133044.tif 000011
【図１０】
2018133044.tif 000012
【図１１】
2018133044.tif 000013
【図１２】
2018133044.tif 000014