(57)【特許請求の範囲】
【請求項１】
所定の作業を実現するために複数の処理項目が順序立てて記述された作業手順情報から、前記複数の処理項目の記述より目的語と動詞を含む複数の操作情報をそれぞれ抽出し、
操作情報毎に入力情報を複数定義した入力テンプレートを参照し、前記複数の処理項目毎に対応する入力情報を抽出し、
前記操作情報、前記入力情報、及び出力情報を有する複数の自動実行部品を参照し、処理項目毎に抽出した操作情報から、処理項目毎の自動実行部品を選択し、
選択した処理項目毎の自動実行部品について、不明となる入力情報が少なくなるように作業手順情報に対応する自動実行部品群を選択する、処理をコンピュータに実行させる実行フロー作成支援プログラム。
【請求項２】
前記自動実行部品群を選択する処理は、
前記処理項目毎に選択された第一の自動実行部品が含む第一の入力情報と、前記処理項目毎に抽出された第二の入力情報と、を対応付け、
前記対応付けの結果に応じて、前記第一の自動実行部品よりも前に実行される第二の自動実行部品を変更する、請求項１記載の実行フロー作成支援プログラム。
【請求項３】
前記対応付ける処理は、
前記第二の入力情報に、前記第一の入力情報と対応する情報が存在しない場合に、
前記第一の入力情報から、操作の内容を示す用語を抽出し、
複数の前記第二の自動実行部品のそれぞれが有する複数の操作情報のうち、前記用語が含まれる操作情報を有する第二の自動実行部品と対応する前記処理項目を、前記第一の入力情報と対応付ける、請求項２記載の実行フロー作成支援プログラム。
【請求項４】
前記変更する処理は、
前記第一の入力情報と対応付けられた処理項目に対応して選択された前記第二の自動実行部品を、
前記第二の自動実行部品と同じ操作を行い、且つ操作を行った結果を出力する第三の自動実行部品に変更する、請求項３記載の実行フロー作成支援プログラム。
【請求項５】
前記変更する処理は、
前記第二の入力情報が対応付けられていない前記第一の入力情報の数が最も小さくなるように、前記第三の自動実行部品を選択する、請求項４記載の実行フロー作成支援プログラム。
【請求項６】
コンピュータによる実行フロー作成支援方法であって、該コンピュータが、
所定の作業を実現するために複数の処理項目が順序立てて記述された作業手順情報から、前記複数の処理項目の記述より目的語と動詞を含む複数の操作情報をそれぞれ抽出し、
操作情報毎に入力情報を複数定義した入力テンプレートを参照し、前記複数の処理項目毎に対応する入力情報を抽出し、
前記操作情報、前記入力情報、及び出力情報を有する複数の自動実行部品を参照し、処理項目毎に抽出した操作情報から、処理項目毎の自動実行部品を選択し、
選択した処理項目毎の自動実行部品について、不明となる入力情報が少なくなるように作業手順情報に対応する自動実行部品群を選択する、実行フロー作成支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実行フロー作成支援プログラム及び実行フロー作成支援方法に関する。
【背景技術】
【０００２】
従来から、所定の作業を行うための処理手順が処理順に記述された手順書を、自動で実行させるための自動実行フローを作成する技術が知られている。この技術では、処理毎に手順書に記述された文章を解析し、予め用意された部品から、解析結果に応じた部品を選択して自動実行フローを作成する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２２８０７５号公報
【特許文献２】特開２０１４−１９１５４９号公報
【特許文献３】特開平９−１７９８７５号公報
【特許文献４】特開２０１２−２５２６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来の技術では、部品を選択する際に、入力情報と出力情報が異なる部品が複数用意されていた場合等には、人が試行錯誤してふさわしい部品を選択しなければならない。また、選択された部品に値が設定されていない入力変数を含む入力情報がある場合には、手順書から適切な値を選んで設定する必要があるが、適切な値が手順書に記載されていないこともある。
【０００５】
開示の技術は、修正が少なくなるように自動実行部品を選択できる実行フロー作成支援プログラム及び実行フロー作成支援方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
一態様によれば、所定の作業を実現するために複数の処理項目が順序立てて記述された作業手順情報から、前記複数の処理項目の記述より目的語と動詞を含む複数の操作情報をそれぞれ抽出し、操作情報毎に入力情報を複数定義した入力テンプレートを参照し、前記複数の処理項目毎に対応する入力情報を抽出し、前記操作情報、前記入力情報、及び出力情報を有する複数の自動実行部品を参照し、処理項目毎に抽出した操作情報から、処理項目毎の自動実行部品を選択し、選択した処理項目毎の自動実行部品について、不明となる入力情報が少なくなるように作業手順情報に対応する自動実行部品群を選択する、処理をコンピュータに実行させる。
【０００７】
上記各手順は、上記各手順を実現する機能部、各手順をコンピュータに実行させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体とすることもできる。
【発明の効果】
【０００８】
修正が少なくなるように自動実行部品を選択できる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態のプログラム構成を説明する図である。
【図２】実行フロー作成支援装置のハードウェア構成の一例を示す図である。
【図３】実行フロー作成支援装置の機能を説明する図である。
【図４】手順書情報の一例を示す図である。
【図５】自動実行部品リストデータベースの一例を示す図である。
【図６】入力テンプレートデータベースの一例を示す図である。
【図７】同義語辞書データベースの一例を示す図である。
【図８】項番別操作情報の一例を示す図である。
【図９】項番別入力情報の一例を示す図である。
【図１０】項番別部品リストの一例を示す図である。
【図１１】対応付け結果情報の一例を示す第一の図である。
【図１２】部品候補リストの一例を示す図である。
【図１３】実行フロー作成支援装置の動作を説明するフローチャートである。
【図１４】操作情報抽出部による処理を説明する図である。
【図１５】入力情報抽出部の処理を説明する図である。
【図１６】部品選択部の処理を説明する図である。
【図１７】入力情報対応付け部の処理を説明する第一の図である。
【図１８】入力情報対応付け部の処理を説明するフローチャートである。
【図１９】入力情報対応付け部の処理を説明する第二の図である。
【図２０】対応付け結果情報の一例を示す第二の図である。
【図２１】部品組み合わせ部の処理を説明する第一の図である。
【図２２】部品組み合わせ部の処理を説明するフローチャートである。
【図２３】部品候補リストの生成を説明する第一の図である。
【図２４】部品候補リストの生成を説明する第二の図である。
【図２５】部品組み合わせ部の処理を説明する第二の図である。
【図２６】部品組み合わせ部の処理を説明する第三の図である。
【図２７】実行フロー生成部の処理を説明する図である。
【図２８】実行フローと入力値未設定箇所リストの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して本実施形態について説明する。図１は、本実施形態のプログラム構成を説明する図である。
【００１１】
本実施形態の実行フロー作成支援プログラム１は、操作情報抽出処理２、入力情報抽出処理３、自動実行部品選択処理４、実行フロー出力処理５をコンピュータに実行させる。
【００１２】
本実施形態の実行フロー作成支援プログラム１は、手順書情報６を読み取って、操作情報抽出処理２、入力情報抽出処理３、自動実行部品選択処理４、実行フロー出力処理５を実行する。そして、実行フロー作成支援プログラム１は、処理の実行結果として、自動実行フロー７と入力値未設定箇所リスト８と、を出力する。
【００１３】
手順書情報６は、所定の作業を実現するための処理項目（以下、単に項目と呼ぶ。）が順序立てて記述された情報である。より具体的には、手順書情報６は、例えば情報システムに対する操作手順が項目毎に記述されたテキストデータである。本実施形態では、手順書情報６は、自然言語で記述されたドキュメントデータであれば良い。
【００１４】
実行フロー作成支援プログラム１は、操作情報抽出処理２において、操作情報を抽出する。操作情報は、手順書情報６に記述された各項目で実施する操作を示す情報である。続いて実行フロー作成支援プログラム１は、入力情報抽出処理３において、操作情報と、操作に必要な入力情報とが対応付けられた入力テンプレートを参照し、項目毎に、操作情報と対応する入力情報を抽出する。
【００１５】
続いて、実行フロー作成支援プログラム１は、自動実行部品選択処理４において、自動実行部品リストデータベースを参照し、項目毎に、操作情報と対応する自動実行部品を選択する。入力テンプレートと自動実行部品リストデータベースの詳細は後述する。
【００１６】
続いて、実行フロー作成支援プログラム１は、実行フロー出力処理５において、選択された項目毎の自動実行部品と、抽出された項目毎の入力情報とを対応付ける。そして、実行フロー作成支援プログラム１は、実行フロー出力処理５において、入力情報に含まれる入力変数のうち、値が設定されていない入力変数の数が最も少なくなる自動実行部品の組み合わせを求め、この組み合わせを自動実行フロー７として出力する。
【００１７】
言い換えれば、本実施形態の実行フロー作成支援プログラム１は、自動実行部品において、不明となる入力情報が最も少なくなるような自動実行部品の組み合わせを自動実行フロー７として出力する。
【００１８】
尚、実行フロー出力処理５において出力される実行フローは、入力情報が設定されていない自動実行部品を含む可能性がある。そこで、実行フロー出力処理５では、入力情報の値が未設定の自動実行部品が含まれる場合、値が未設定の入力情報と、この入力情報と対応する自動実行部品と、をリストにした入力値未設定箇所リスト８を出力する。
【００１９】
本実施形態では、以上のように、手順書情報６に含まれる各項目を示す操作情報から、操作情報に対応する自動実行部品と、入力情報とを取得し、自動実行部品と入力情報との対応付けを行う。そして、本実施形態では、その結果、値が未設定の入力情報が最も少なくなる自動実行部品の組み合わせを、自動実行フロー７として出力する。また、本実施形態では、値が未設定の入力情報を特定した入力値未設定箇所リスト８を出力する。
【００２０】
よって、本実施形態では、手順書情報６に記述された所定の作業を実現するにあたり、適切に自動実行部品を選択することができる。すなわち、本実施形態によれば、修正が少なくなるように自動実行部品を選択できる。
【００２１】
また、本実施形態では、出力された自動実行フロー７において、値が設定されていない入力変数を含む入力情報を容易に特定できるため、自動実行フローの作成にかかる手間を削減できる。
【００２２】
以下の説明では、本実施形態の実行フロー作成支援プログラム１が実装されたコンピュータを「実行フロー作成支援装置」と呼ぶ。
【００２３】
図２は、実行フロー作成支援装置のハードウェア構成の一例を示す図である。本実施形態の実行フロー作成支援１００は、それぞれバスＢで相互に接続されている入力装置１１、出力装置１２、ドライブ装置１３、補助記憶装置１４、メモリ装置１５、演算処理装置１６及びインターフェース装置１７を有する。
【００２４】
入力装置１１は、各種情報を入力するために用いられる。出力装置１２は、例えばディスプレイ等であり、各種の情報を出力するために用いられる。
【００２５】
インターフェース装置１７は、モデム、ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００２６】
実行フロー作成支援プログラム１は、実行フロー作成支援装置１００を制御する各種プログラムの少なくとも一部である。実行フロー作成支援プログラム１は例えば記録媒体１８の配布やネットワークからのダウンロードなどによって提供される。実行フロー作成支援プログラム１を記録した記録媒体１８は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００２７】
また、実行フロー作成支援プログラム１を記録した記録媒体１８がドライブ装置１３にセットされると、実行フロー作成支援プログラム１は記録媒体１８からドライブ装置１３を介して補助記憶装置１４にインストールされる。ネットワークからダウンロードされた実行フロー作成支援プログラム１は、インターフェース装置１７を介して補助記憶装置１４にインストールされる。
【００２８】
補助記憶装置１４は、実行フロー作成支援プログラム１を格納すると共に、必要なファイル，データ等を格納する。メモリ装置１５は、コンピュータの起動時に補助記憶装置１４から実行フロー作成支援プログラム１を読み出して格納する。そして、演算処理装置１６はメモリ装置１５に格納された実行フロー作成支援プログラム１に従って、後述するような各種処理を実現している。
【００２９】
図３は、実行フロー作成支援装置の機能を説明する図である。
【００３０】
本実施形態の実行フロー作成支援装置１００は、実行フロー作成支援処理部２００と、記憶部３００とを有する。本実施形態の実行フロー作成支援処理部２００は、演算処理装置１６が補助記憶装置１４やメモリ装置１５に格納された実行フロー作成支援プログラム１を実行することで実現される。本実施形態の記憶部３００は、補助記憶装置１４やメモリ装置１５等の記憶装置により実現される。
【００３１】
本実施形態の実行フロー作成支援処理部２００は、操作情報抽出部２１０、入力情報抽出部２２０、部品選択部２３０、入力情報対応付け部２４０、部品組み合わせ部２５０、実行フロー生成部２６０、出力部２７０を有する。
【００３２】
操作情報抽出部２１０は、操作情報抽出処理２を実現する。入力情報抽出部２２０は、入力情報抽出処理３を実現する。部品選択部２３０は、自動実行部品選択処理４を実現する。入力情報対応付け部２４０、部品組み合わせ部２５０、実行フロー生成部２６０、出力部２７０は、実行フロー出力処理５を実現する。
【００３３】
本実施形態の記憶部３００は、自動実行部品リストデータベース３１０、入力テンプレートデータベース３２０、同義語辞書データベース３３０、自動実行部品データデータベース３４０を格納する。本実施形態において、各データベースは、予め記憶部３００に格納されている。
【００３４】
また、本実施形態の記憶部３００は、項番別操作情報３５０、項番別入力情報３６０、項番別部品リスト３７０、対応付け結果情報３８０、部品候補リスト３９０、自動実行フロー４００、入力値未設定箇所リスト４１０、手順書情報６を格納する。これらの各情報と、各リスト及び自動実行フロー４００は、実行フロー作成支援処理部２００の各部の処理により生成され、記憶部３００に格納される。
【００３５】
以下に、実行フロー作成支援処理部２００の有する各部について説明する。本実施形態の操作情報抽出部２１０は、実行フロー作成支援装置１００に入力された手順書情報６から、所定の作業の項目毎に操作情報を抽出した結果を、項番別操作情報３５０として記憶部３００に格納する。
【００３６】
入力情報抽出部２２０は、入力テンプレートデータベース３２０と、項番別操作情報３５０とを参照して項目毎の入力情報を抽出した結果を、項番別入力情報３６０として記憶部３００に格納する。
【００３７】
部品選択部２３０は、自動実行部品リストデータベース３１０と、項番別操作情報３５０と、を参照し、自動実行部品リストデータベース３１０から項目毎に自動実行部品を選択して割り当てた結果を、項番別部品リスト３７０として記憶部３００に格納する。
【００３８】
入力情報対応付け部２４０は、自動実行部品リストデータベース３１０と、項番別入力情報３６０と、項番別部品リスト３７０と、に基づき、項目毎に、自動実行部品と入力情報の対応付けを行った結果を、対応付け結果情報３８０として記憶部３００に格納する。
【００３９】
部品組み合わせ部２５０は、自動実行部品リストデータベース３１０と、項番別部品リスト３７０と、対応付け結果情報３８０と、に基づき、入力情報に値が対応付けられていない部品について、再度割り当ての際の候補となる自動実行部品を抽出する。そして、部品組み合わせ部２５０は、抽出した自動実行部品を割り当てた項番別部品リスト３７０を、部品候補リスト３９０として記憶部３００に格納する。また、部品組み合わせ部２５０は、部品候補リスト３９０を参照し、値が設定されていない入力変数の数が最小となるように、項目毎の自動実行部品の割り当てを再度行う。
【００４０】
実行フロー生成部２６０は、部品組み合わせ部２５０により求められた組み合わせに従った実行フローを生成し、その結果を自動実行フロー４００として記憶部３００に格納する。また、実行フロー生成部２６０は、入力情報に値が設定されていない入力変数が含まれる自動実行部品が存在する場合に、該当する自動実行部品と、値が設定されていない入力変数とを対応付けた入力値未設定箇所リスト４１０を記憶部３００に格納する。
【００４１】
出力部２７０は、記憶部３００に格納された自動実行フロー４００と、入力値未設定箇所リスト４１０とを出力する。本実施形態の出力部２７０は、例えば自動実行フロー４００と、入力値未設定箇所リスト４１０とを、実行フロー作成支援装置１００の有するディスプレイや、実行フロー作成支援装置１００とネットワークを介して接続された端末装置へ出力しても良い。
【００４２】
次に、図４を参照して手順書情報６について説明する。図４は、手順書情報の一例を示す図である。図４に示す手順書情報６は、項目１〜３を実施するための操作手順が記述されている。
【００４３】
図４の手順書情報６において、項目１は、アプリログファイルをコピーする操作の記述であり、項目２は、作業ディレクトリを圧縮する操作の記述であり、項目３は、圧縮したファイルを転送する操作の記述である。
【００４４】
本実施形態の手順書情報６において、各項目は、作業の順序を示す項番であり、項目と対応する記述には、操作内容を示す具体的なコマンドと、コマンドの引数となる値が含まれる。コマンドの引数となる値は、例えばサーバ名、ファイル名、パス等である。
【００４５】
次に、図５乃至図１２を参照して、記憶部３００に格納されたデータベースと各情報について説明する。
【００４６】
図５は、自動実行部品リストデータベースの一例を示す図である。本実施形態の自動実行部品リストデータベース３１０は、情報の項目として、名前、入力情報、出力情報を有し、項目「名前」と、項目「入力情報」及び「出力情報」とが対応付けられている。
【００４７】
項目「名前」の値は、自動実行部品の名称を示す。本実施形態の自動実行部品リストデータベース３１０は、自動実行フローを実行する情報システムの種類に応じて、予め設けられている。
【００４８】
項目「入力情報」の値は、自動実行部品の入力情報として値が設定される入力変数と、入力変数の型を示す型情報とを示す。図５の例では、《》で括られた単語が型を示す型情報であり、《》に続く記述が入力変数の値である。具体的には、例えば《server》 hostnameの場合には、入力変数の型は、server型であり、値はhostnameとなる。
【００４９】
項目「出力情報」の値は、自動実行部品が実行された際の戻り値である。
【００５０】
尚、図５で、入力情報に含まれる値を、入力情報として値が設定される入力変数と、入力変数の型を示す型情報としたが、本実施形態における入力情報は、例えば入力変数の型と値のパターンや、手順書情報６から抽出した入力変数の型と対応した記述も含む。
【００５１】
図６は、入力テンプレートデータベースの一例を示す図である。本実施形態の入力テンプレートデータベース３２０は、操作情報と入力情報とが対応付けられている。
【００５２】
具体的には、本実施形態の入力テンプレートデータベース３２０は、情報の項目として、操作情報と、入力変数の型と値のパターンと、を有し、これらの項目が対応付けられている。
【００５３】
項目「操作情報」の値は、操作内容を示しており、項目「入力変数の型と値のパターン」の値は、操作情報に対応する入力変数の型情報と、入力変数の値との関係を示している。
【００５４】
図６では、例えば操作情報「ファイルをコピーする」と対応する入力変数の型は、《file》、《server》、《directory》である。
【００５５】
また、操作情報「ファイルをコピーする」という記述において、「《file》○を」という記述があった場合に、「○」が型《file》の入力変数の値となる。同様に、「《directory》△に」という記述があった場合、「△」が型《directory》の入力変数の値となる。
【００５６】
尚、本実施形態の入力テンプレートデータベース３２０は、予め設けられており、編集が可能なものとした。
【００５７】
図７は、同義語辞書データベースの一例を示す図である。本実施形態の同義語辞書データベース３３０は、予め実行フロー作成支援装置１００に設けられている。本実施形態の同義語辞書データベース３３０は、１つの単語と、その単語と同義の表現とが対応付けられている。
【００５８】
図７の例では、「複写」と対応付けられた同義の表現は、「コピーする」、「複写する」、「コピー」等である。
【００５９】
図８は、項番別操作情報の一例を示す図である。本実施形態の項番別操作情報３５０は、操作情報抽出部２１０により抽出され、記憶部３００に格納されるものである。項番別操作情報３５０の抽出の詳細は後述する。
【００６０】
本実施形態の項番別操作情報３５０は、情報の項目として、項番と、操作情報とを有し、項目「項番」と項目「操作情報」とが対応付けられている。
【００６１】
項目「項番」の値は、項目の値を示す。項目「操作情報」の値は、手順書情報６から取得した操作情報である。
【００６２】
図８の例では、項番「１」と対応する操作情報は、「ファイルをコピーする」であり、項番「２」と対応する操作情報は、「ディレクトリを圧縮する」である。
【００６３】
図９は、項番別入力情報の一例を示す図である。本実施形態の項番別入力情報３６０は、入力情報抽出部２２０により抽出され、記憶部３００に格納されるものである。項番別入力情報３６０の抽出の詳細は後述する。
【００６４】
本実施形態の項番別入力情報３６０は、情報の項目として、項番と、入力情報とを有し、項目「項番」と項目「入力情報」とが対応付けられている。
【００６５】
項目「入力情報」の値は、項番が示す操作情報と対応する入力情報が含む、入力変数の値と、入力変数の型情報とを示す。また、項目「入力情報」の値は、手順書情報６において、入力変数の型と対応する記述を含む。
【００６６】
図９の例では、項番「１」と対応する入力情報は、「《file》アプリログファイル：」と、「《server》サーバ：aplserver1」と、「《directory》作業ディレクトリ：c:\tmp」である。
【００６７】
入力情報「《file》アプリログファイル：」において、入力変数の型を示す型情報は、《file》である。また、手順書情報６における型と対応する記述は、「アプリログファイル」である。入力情報「《file》アプリログファイル：」では、入力変数の値は設定されていない。
【００６８】
入力変数「《server》サーバ：aplserver1」では、入力変数の型を示す型情報は、《server》である。また、手順書情報６における型と対応する記述は、「サーバ」である。また、入力情報「《server》サーバ：aplserver1」では、入力変数の値は、aplserver1である。 
図１０は、項番別部品リストの一例を示す図である。本実施形態の項番別部品リスト３７０は、部品選択部２３０により選択された自動実行部品のリストであり、部品選択部２３０により記憶部３００に格納される。項番別部品リスト３７０の生成の詳細は後述する。
【００６９】
本実施形態の項番別部品リスト３７０は、情報の項目として、項番と、自動実行部品名とを有し、項目「項番」と項目「自動実行部品名」とが対応付けられている。項目「自動実行部品名」の値は、自動実行部品の名前を示す。以下の説明では、項番別部品リスト３７０において、項目「項番」の値と、項目「項番」の値と対応付けられた項目「自動実行部品名」の値とを含む情報を部品リスト情報と呼ぶ。
【００７０】
図１０の例では、例えば項番「１」と対応する自動実行部品名は、「ファイルを複写Ａ」である。
【００７１】
図１１は、対応付け結果情報の一例を示す第一の図である。本実施形態の対応付け結果情報３８０は、入力情報対応付け部２４０により生成され、記憶部３００に格納される。対応付け結果情報３８０の生成の詳細は後述する。
【００７２】
本実施形態の対応付け結果情報３８０は、情報の項目として、項番と、入力変数と、入力変数の値と、出力対応とを有し、項目「項番」と、その他の項目とが対応付けられている。
【００７３】
以下の説明では、項目「項番」の値と、項目「項番」の値と対応付けられたその他の項目の値とを含む情報を、対応付け結果レコードと呼ぶ。つまり、本実施形態の対応付け結果情報３８０は、対応付け結果レコードの集合と言える。
【００７４】
項目「入力変数」の値は、項番と対応する入力情報に含まれる入力変数を示す。項目「入力変数の値」の値は、対応する入力変数に設定される値である。項目「出力対応」の値は、対応する入力変数を出力する自動実行部品の項番を示す。
【００７５】
図１１の例では、対応付け結果レコード３８１では、項番「１」の入力変数「《server》 hostname」について、入力変数の値として「サーバ：aplserver1」が設定されることがわかる。
【００７６】
また、図１１の対応付け結果レコード３８２では、入力変数「《file》sourcefil」について、入力変数の値が「アプリログファイル：」となっており、入力変数の値が設定されていないことがわかる。
【００７７】
図１１では、対応付け結果レコード３８３についても、入力変数「《directory》dirname：」について、入力変数の値が「作業ディレクトリ：」となっており、入力変数の値が設定されていないことがわかる。同様に、対応付け結果レコード３８４についても、入力変数「《file》sourcefil」について、入力変数の値が「圧縮したファイル：」となっており、入力変数の値が設定されていないことがわかる。
【００７８】
図１２は、部品候補リストの一例を示す図である。本実施形態の部品候補リスト３９０は、部品組み合わせ部２６０により抽出され、記憶部３００に格納される。部品候補リスト３９０の抽出の詳細は後述する。
【００７９】
本実施形態の部品候補リスト３９０は、情報の項目として、項番と、自動実行部品名とを有し、これらが対応付けられている。
【００８０】
本実施形態の部品候補リスト３９０における項目「自動実行部品名」の値は、対応する項番を実現する自動実行部品の候補の名前である。以下の説明では、部品候補リスト３９０において、項目「項番」の値と、項目「項番」の値と対応付けられた項目「自動実行部品名」の値と、を含む情報を、部品候補情報と呼ぶ。
【００８１】
図１２では、例えば項番「２」を実現する自動実行部品の候補として、「ディレクトリを圧縮Ｂ」という名前の自動実行部品と、「ディレクトリを圧縮Ｃ」という名前の自動実行部品と、が挙げられたことがわかる。
【００８２】
次に、図１３を参照して本実施形態の実行フロー作成支援装置１００の動作について説明する。図１３は、実行フロー作成支援装置の動作を説明するフローチャートである。
【００８３】
本実施形態の実行フロー作成支援装置１００は、実行フロー作成支援処理部２００の操作情報抽出部２１０により、入力された手順書情報６から項目毎の操作情報を抽出し、項番別操作情報３５０を記憶部３００に格納する（ステップＳ１３０１）。
【００８４】
続いて、実行フロー作成支援処理部２００は、入力情報抽出部２２０により、入力テンプレートデータベース３２０と、項番別操作情報３５０とを参照して、項番毎の入力情報を抽出し、項番別入力情報３６０を記憶部３００へ格納する（ステップＳ１３０２）。
【００８５】
続いて実行フロー作成支援処理部２００は、部品選択部２３０により、自動実行部品リストデータベース３１０と、同義語辞書データベース３３０と、項番別操作情報３５０と、を参照し、項番別部品リスト３７０を生成して記憶部３００へ格納する（ステップＳ１３０３）。
【００８６】
続いて実行フロー作成支援処理部２００は、入力情報対応付け部２４０により、自動実行部品リストデータベース３１０と、項番別入力情報３６０と、項番別部品リスト３７０とを参照し、項番毎の自動実行部品と入力情報との対応付けを行う。そして、入力情報対応付け部２４０は、その結果である対応付け結果情報３８０を記憶部３００へ格納する（ステップＳ１３０４）。
【００８７】
続いて実行フロー作成支援処理部２００は、部品組み合わせ部２５０により、自動実行部品リストデータベー３１０と、項番別部品リスト３７０と、対応付け結果情報３８０とを参照し、出力情報が、値が設定されていない入力変数に対応する自動実行部品のリストを抽出する。そして、部品組み合わせ部２５０は、抽出した自動実行部品を項番別部品リスト３７０に割り当てた部品候補リスト３９０を記憶部３００に格納する。さらに、部品組み合わせ部２５０は、部品候補リスト３９０を参照し、値が設定されていない入力変数を含む入力情報の数が最も少なくなるような自動実行部品の組み合わせを求める（ステップＳ１３０５）。
【００８８】
続いて実行フロー作成支援処理部２００は、実行フロー生成部２６０により、ステップＳ１３０５で求めた組み合わせに基づく自動実行フロー４００を生成し、出力部２７０により自動実行フロー４００を出力する（ステップＳ１３０６）。尚、実行フロー生成部２６０は、ステップＳ１３０５で求めた組み合わせにおいて、値が設定されていない入力変数が存在する場合、この入力変数と、この入力変数を含む入力情報と対応する自動実行部品の名前と、項番と、を対応付けた入力値未設定箇所リスト４１０を生成する。そして、出力部２７０により、入力値未設定箇所リスト４１０出力する。
【００８９】
次に、図１３に示した各ステップの処理についてさらに説明する。図１４は、操作情報抽出部による処理を説明する図である。図１４は、図１３のステップＳ１３０１の処理を示している。
【００９０】
本実施形態の操作情報抽出部２１０は、手順書情報６が入力されると、手順書情報６に対して形態素解析、係受け解析等の自然言語処理技術により、手順書情報６から目的語と、動詞の情報を抽出する。
【００９１】
具体的には、操作情報抽出部２１０は、手順書情報６に含まれる各項目の記述から、「○を△する」という形式の情報を操作情報として抽出する。そして、操作情報抽出部２１０は、項目を特定する番号である項番と、「○を△する」という形式の操作情報とを対応付けて、項番別操作情報３５０とする（図８参照）。
【００９２】
図１５は、入力情報抽出部の処理を説明する図である。図１５は、図１３のステップＳ１３０２の処理を示している。
【００９３】
本実施形態の入力情報抽出部２２０は、手順書情報６から入力情報を抽出する。より具体的には、入力情報抽出部２２０は、手順書情報６から、入力情報に含まれる入力変数と、入力変数の値を抽出する。
【００９４】
本実施形態の入力情報抽出部２２０は、例えば、項番別操作情報３５０から、項番「１」と対応する操作情報「ファイルをコピーする」を取得する。
【００９５】
次に、入力情報抽出部２２０は、入力テンプレートデータベース３２０において、操作情報「ファイルをコピーする」と対応する入力変数の型と値のパターンを取得する。ここで入力情報抽出部２２０が取得するパターンは、「《file》○を」、「《server》□の《directory》△に」等である。
【００９６】
続いて入力情報抽出部２２０は、取得したパターンと手順書情報６の項目１の記述とを参照し、出力したパターンに合致する情報を項目毎の入力情報として抽出する。
【００９７】
手順書情報６の項目１の記述から抽出される入力情報は、「《file》アプリログファイル：」、「《server》サーバ：aplserver1」、「《directory》作業ディレクトリ：c:\tmp」となる。
【００９８】
本実施形態の入力情報抽出部２２０は、以上の処理を手順書情報６の項目毎に行った結果を、項番別入力情報３６０とする（図９参照）。
【００９９】
図１６は、部品選択部の処理を説明する図である。図１６は、図１３のステップＳ１３０３の処理を示している。
【０１００】
本実施形態の部品選択部２３０は、自動実行部品リストデータベース３１０と、同義語辞書データベース３３０と、項番別操作情報３５０とを参照し、項番毎の操作情報と対応する自動実行部品を選択する。
【０１０１】
例えば部品選択部２３０は、項番「１」と対応する操作情報「ファイルをコピーする」であるため、同義語辞書データベース３３０を参照し、例えば「コピー」と同義の単語である「複写」を抽出する。
【０１０２】
次に、部品選択部２３０は、自動実行部品リストデータベース３１０を参照し、名前に「複写」が含まれる自動実行部品を、項番「１」の自動実行部品として抽出する。
【０１０３】
ここで、名前に「複写」が含まれる自動実行部品が複数存在した場合、部品選択部２３０は、対応する入力情報に含まれる入力変数の数が少ない方の自動実行部品を優先して選択しても良い。
【０１０４】
例えば、本実施形態の自動実行部品リストデータベース３１０において、名前に「複写」が含まれる自動実行部品は、「ファイルを複写Ａ」、「ファイルを複写Ｂ」の二つである（図５参照）。
【０１０５】
この場合、「ファイルを複写Ａ」に対応する入力情報に含まれる入力変数の数は３つであり、「ファイルを複写Ｂ」に対応する入力情報に含まれる入力変数の数は４つである。よって、部品選択部２３０は、項番「１」に対応する自動実行部品として、「ファイルを複写Ａ」を選択する。
【０１０６】
尚、本実施形態では、項番に対応する自動実行部品が複数存在する場合に、入力変数の数が少ない自動実行部品を優先的に選択するものとしたが、これに限定されない。項番に対応する自動実行部品が複数存在した場合には、例えば入力情報に含まれる入力変数のうち、値が取得された入力変数の数が多い自動実行部品を優先的に選択しても良い。本実施形態の部品選択部２３０は、項番に対応する自動実行部品が複数存在した場合には、予め決められた指針に沿って、項番と対応付ける自動実行部品を選択すれば良い。
【０１０７】
本実施形態の部品選択部２３０は、上記の処理を項番別操作情報３５０に含まれる全ての項番と対応する操作情報に対して実行し、その結果を項番別部品リスト３７０（図１０参照）とする。
【０１０８】
図１７は、入力情報対応付け部の処理を説明する第一の図である。図１７は、図１３のステップＳ１３０４の処理を示す。
【０１０９】
本実施形態の入力情報対応付け部２４０は、自動実行部品リストデータベース３１０と、項番別入力情報３６０と、項番別部品リスト３７０と、を参照し、項番毎の自動実行部品に対して入力変数の対応付けを行い、その結果を対応付け結果情報３８０とする。
【０１１０】
以下に、図１８乃至図２２を参照し、本実施形態の入力情報対応付け部２４０の処理について説明する。図１８は、入力情報対応付け部の処理を説明するフローチャートである。
【０１１１】
本実施形態の入力情報対応付け部２４０は、項番別部品リスト３７０の項番「１」から最後の項番まで、各項番に対応する自動実行部品の入力情報について、ステップＳ１８０２以降の処理を実行させる（ステップＳ１８０１）。
【０１１２】
入力情報対応付け部２４０は、項番別部品リスト３７０に項番「１」と対応する自動実行部品の入力情報に含まれる型情報と、項番別入力情報３６０の項番「１」に対応する入力情報に含まれる型情報とに基づき、入力変数の対応付けを行う（ステップＳ１８０２）。
【０１１３】
より具体的には、入力情報対応付け部２４０は、自動実行部品リストデータベース３１０を参照し、項番別部品リスト３７０の項番「１」の自動実行部品の入力情報を取得する。また、入力情報対応付け部２４０は、項番別入力情報３６０の項番「１」に対応する入力情報を取得する。そして、入力情報対応付け部２４０は、それぞれの入力情報に含まれる、入力変数の型を示す型情報を照合し、一致する型情報同士を対応付ける。
【０１１４】
続いて入力情報対応付け部２４０は、対応付けた入力情報に値が設定されているか否かを判定する（ステップＳ１８０３）。具体的には、入力情報対応付け部２４０は、項番別入力情報３６０において、型情報が対応付けられた入力変数に値が設定されているか否かを判定している。
【０１１５】
ステップＳ１８０３において、値が設定されていた場合、入力情報対応付け部２４０は、ステップＳ１８０１に戻る。
【０１１６】
ステップＳ１８０３において、値が設定されていない場合、入力情報対応付け部２４０は、項番別入力情報３６０において、値が設定されていない入力変数と対応する記述から、作用を示す用語を抽出する（ステップＳ１８０４）。つまり、入力情報対応付け部２４０は、値が設定されていない入力変数を含む入力情報から、作用を示す用語を抽出する。作用を示す用語とは、操作の内容を示す用語である。
【０１１７】
ステップＳ１８０４において、作用を示す用語が存在しない場合、入力情報対応付け部２４０は、後述するステップＳ１８０９へ進む。
【０１１８】
ステップＳ１８０４において、作用を示す用語が存在する場合、入力情報対応付け部２４０は、項番別操作情報３５０を参照し、先行する項番の操作情報を、ステップＳ１８０４で抽出した用語で検索する（ステップＳ１８０６）。
【０１１９】
検索した結果、抽出した用語と一致する用語が存在する場合（ステップＳ１８０７）、入力情報対応付け部２４０は、項番別操作情報３５０において、操作情報に一致する用語が存在する項番を、対応付け結果情報３８０の出力対応に格納する（ステップＳ１８０８）。
【０１２０】
ステップＳ１８０７において、一致する用語が存在しない場合、入力情報対応付け部２４０は、項番別入力情報３６０において、先行する項番の入力情報に、型が一致し、且つ値が設定された入力変数が存在するか否かを判定する（ステップＳ１８０９）。ステップＳ１８０９において、該当する入力変数が存在する場合、該当する入力変数の値を、自動実行部品の入力情報において値が設定されていない入力変数を対応付ける（ステップＳ１８１０）。
【０１２１】
ステップＳ１８０９において、該当する入力変数が存在しない場合、後述するステップＳ１８１１へ進む。
【０１２２】
入力情報対応付け部２４０は、ステップＳ１８０１からステップＳ１８１０までの処理を項番別部品リスト３７０に含まれる全ての項番について実行する（ステップＳ１８１１）。
【０１２３】
本実施形態の対応付け結果情報３８０は、図１８の処理を実行した結果の情報である。
【０１２４】
以下に、図１９乃至図２２を参照して入力情報対応付け部２４０の処理を具体的に説明する。
【０１２５】
図１９は、入力情報対応付け部の処理を説明する第二の図である。図１９において、入力情報１９１ａ〜１９１ｃは、項番別入力情報３６０における項番「１」と対応する入力情報を示す。入力情報１９２は、項番別入力情報３６０における項番「２」と対応する入力情報を示す。入力情報１９３ａ〜１９３ｃは、項番別入力情報３６０における項番「３」と対応する入力情報を示す。
【０１２６】
図１９において、自動実行部品１９４は、項番別部品リスト３７０における項番「１」と対応する自動実行部品である。自動実行部品１９５は、項番別部品リスト３７０における項番「２」と対応する自動実行部品である。自動実行部品１９６は、項番別部品リスト３７０における項番「３」と対応する自動実行部品である。
【０１２７】
まず、項番「１」の自動実行部品１９４の入力情報と、項番別入力情報３６０の項番「１」と対応する入力情報１９１ａ〜１９１ｃとの対応付けについて説明する。自動実行部品１９４の入力情報は、入力情報対応付け部２４０により、自動実行部品リストデータベース３１０から抽出される。
【０１２８】
入力情報１９１ａは、「《server》サーバ：aplserver1」である。よって、入力情報対応付け部２４０は、自動実行部品１９４の《server》型の入力変数hostnameに、値「aplserver1」を対応付ける。
【０１２９】
また、入力情報１９１ｂは、「《file》アプリログファイル：」である。よって、自動実行部品１９４の《file》型の入力変数sourcefileに対応付けられる値は存在しない。また、入力情報１９１ｂと対応する項番「１」より先行する項番は存在しない。
【０１３０】
このため、入力情報対応付け部２４０は、入力情報１９１ｂに含まれる型と対応する記述に、作用を示す用語が含まれるか否かを判定する。入力情報１９１ｂに含まれる型と対応する記述は、「アプリログファイル」であるから、該当する用語は存在しない。よって、自動実行部品１９４の《file》型の入力変数sourcefileの値は未設定となる。
【０１３１】
入力情報１９１ｃは、「《directory》作業ディレクトリ：c:\tmp」である。よって、入力情報対応付け部２４０は、自動実行部品１９４の《directory》型の入力変数destinationに、値「c:\tmp」を対応付ける。
【０１３２】
次に、項番「２」の自動実行部品１９５の入力情報と、項番別入力情報３６０の項番「２」と対応する入力情報１９２との対応付けについて説明する。自動実行部品１９５の入力情報は、入力情報対応付け部２４０により、自動実行部品リストデータベース３１０から抽出される。
【０１３３】
入力情報１９２は、「《directory》作業ディレクトリ：」である。よって、自動実行部品１９５の《server》型の入力変数hostnameに対応付けられる値は、入力情報１９２には存在しない。また、入力情報１９２には、自動実行部品１９５の《directory》型の入力変数dirnameに対応付けられる値も存在しない。
【０１３４】
そこで、入力情報対応付け部２４０は、項番「２」より先行する項番「１」の入力情報１９１ａ〜１９１ｃのうち、《server》型の入力変数の値「aplserver1」を、自動実行部品１９５の《server》型の入力変数hostnameの値に対応付ける。
【０１３５】
同様に、入力情報対応付け部２４０は、項番「２」より先行する項番「１」の入力情報１９１ａ〜１９１ｃのうち、《directory》型の入力変数の値「c:\tmp」を、自動実行部品１９５の《directory》型の入力変数dirnameの値に対応付ける。
次に、項番「３」の自動実行部品１９６の入力情報と、項番別入力情報３６０の項番「３」と対応する入力情報１９３ａ〜１９３ｃとの対応付けについて説明する。自動実行部品１９６の入力情報は、入力情報対応付け部２４０により、自動実行部品リストデータベース３１０から抽出される。
【０１３６】
入力情報１９３ａは、「《file》圧縮したファイル：」である。入力情報１９３ｂは、「《transserver》転送先サーバ：bkserver」である。入力情報１９３ｃは、「《transfile》転送先：c:\log\bk.log」である。
【０１３７】
よって、自動実行部品１９６の《server》型の入力変数hostnameの値に対応付けられる値は、入力情報１９３ａ〜１９３ｃには存在しない。そこで、入力情報対応付け部２４０は、項番「３」より先行する項番「１」の入力情報１９１ａ〜１９１ｃのうち、《server》型の入力変数の値「aplserver1」を、自動実行部品１９６の《server》型の入力変数hostnameの値に対応付ける。
【０１３８】
入力情報対応付け部２４０は、自動実行部品１９６の《transserver》型の入力変数transhostnameに、入力情報１９３ｂにおける入力変数の値「bkserver」を対応付ける。
【０１３９】
また、自動実行部品１９６の《file》型の入力変数sourcefileの値に対応付けられる値は、入力情報１９３ａに《file》型の入力変数の値が設定されていないため、存在しない。
【０１４０】
また、項番別入力情報３６０において、項番「３」に先行する項番「１」の入力情報１９１ａ〜１９１ｃと、項番「２」の入力情報１９２と、に、入力情報１９３ａと型が一致し、且つ値が設定された入力情報は存在しない。すなわち、入力情報１９１ａ〜１９１ｃ及び入力情報１９２には、《file》型で且つ入力変数に値が設定された入力情報は存在しない。
【０１４１】
よって、入力情報対応付け部２４０は、入力情報１９３ａに含まれる型と対応する記述に、作用を示す用語が含まれるか否かを判定する。入力情報１９３ａに含まれる型と対応する記述は、「圧縮したファイル」であり、「圧縮」が作用を示す用語に該当する。
【０１４２】
したがって、入力情報対応付け部２４０は、項番別操作情報３５０を参照し、項番別操作情報３５０において、先行する項番と対応する操作情報に、「圧縮」という用語を含む操作情報が存在するか否かを判定する。
【０１４３】
この場合、項番別操作情報３５０の項番「２」と対応する操作情報は、「ディレクトリを圧縮する」であるため、項番「２」の操作情報が該当する操作情報である。
【０１４４】
したがって、入力情報対応付け部２４０は、自動実行部品１９６の《file》型の入力変数sourcefileに、項番「２」の出力を対応付ける。
【０１４５】
次に、入力情報対応付け部２４０は、自動実行部品１９６の《transfile》型の入力変数destinationfileに、入力情報１９３ｃにおける入力変数の値「c:\log\bk.log」を対応付ける。
【０１４６】
以上のようにして、入力情報対応付け部２４０は、入力情報の対応付けを行う。
【０１４７】
図２０は、対応付け結果情報の一例を示す第二の図である。図２０に示す対応付け結果情報３８０Ａは、入力情報対応付け部２４０が図１９で説明した対応付けの処理を行った結果の対応付け結果情報である。
【０１４８】
図２０に示す対応付け結果情報３８０Ａでは、対応付け結果レコード３８２と、対応付け結果レコード３８４において、入力変数の値が対応付けられていない。また、対応付けレコード３８４には、項目「出力対応」の値として、項番「２」が格納されている。この対応付けは、項番「２」の操作により出力される値が、自動実行部品１９６の《file》型の入力変数sourcefileに対応することを示している。
【０１４９】
次に、図２１を参照して本実施形態の部品組み合わせ部２５０の処理について説明する。図２１は、部品組み合わせ部の処理を説明する図である。図２１は、図１３のステップＳ１３０５の処理を示す。
【０１５０】
本実施形態の部品組み合わせ部２５０は、自動実行部品リストデータベース３１０と、項番別部品リスト３７０と、対応付け結果情報３８０と、を参照し、自動実行部品の組み合わせを決定する。
【０１５１】
以下に、図２２乃至図２６を参照し、本実施形態の入力情報対応付け部２４０の処理について説明する。図２２は、部品組み合わせ部の処理を説明するフローチャートである。
【０１５２】
本実施形態の部品組み合わせ部２５０は、対応付け結果情報３８０の項目「出力対応」に値が設定されている全ての対応付けレコードについて、後述するステップＳ２２０２の処理を行う（ステップＳ２２０１）。
【０１５３】
部品組み合わせ部２５０は、対応付け結果情報３８０の項目「出力対応」に設定されている項番の自動実行部品の名前と、名前が一致する自動実行部品を自動実行部品リストデータベース３１０から自動実行部品を抽出する。そして、部品組み合わせ部２５０は、抽出した自動実行部品から、項目「出力対応」に値が設定された項番の自動実行部品の入力変数と対応する変数を出力する自動実行部品を取得し、部品候補リスト３９０に追加する（ステップＳ２２０２）。
【０１５４】
部品組み合わせ部２５０は、ステップＳ２２０２の処理を、項目「出力対応」に値が設定されている全ての対応付けレコードについて行う。
【０１５５】
続いて部品組み合わせ部２５０は、各組み合わせについて、評価値、候補部品の組み合わせを初期化する（ステップＳ２２０４）。尚、本実施形態の評価値とは、値が設定されていない入力変数の数を示す。
【０１５６】
部品組み合わせ部２５０は、対応付け結果情報３８０において、項目「出力対応」の値が設定された項番の自動実行部品の入力情報に、項目「出力対応」の値として設定された項番の自動実行部品の出力を対応付ける（ステップＳ２２０５）。続いて部品組み合わせ部２５０は、値が未設定の入力変数の数を評価値として求める（ステップＳ２２０６）。
【０１５７】
続いて部品組み合わせ部２５０は、評価値が保持されている最小評価値よりも小さいか否かを判定する（ステップＳ２２０７）。 尚、最小評価値は、例えば実行フロー作成支援装置１００の有するメモリ装置１５等に保持される。
【０１５８】
ステップＳ２２０７において、ステップＳ２２０６で求めた評価値が最小評価値以上である場合、部品組み合わせ部２５０は、ステップＳ２２０４へ戻る。
【０１５９】
ステップＳ２２０７において、ステップＳ２２０６で求めた評価値が最小評価値より小さい場合、部品組み合わせ部２５０は、この評価値を最小評価値として保持し、このときの自動実行部品の組み合わせを記憶する（ステップＳ２２０８）。
【０１６０】
本実施形態の部品組み合わせ部２５０は、ステップＳ２２０４からステップＳ２２０８までの処理を、部品候補リスト３９０に含まれる全ての自動実行部品を用いた組み合わせについて行う（ステップＳ２２０９）。
【０１６１】
続いて、実行フロー生成部２６０は、記憶された自動実行部品の組み合わせに応じた自動実行フロー４００と、値が設定されていない入力変数を示す入力値未設定箇所リスト４１０とを生成し、出力部２７０により自動実行フロー４００と入力値未設定箇所リスト４１０とを出力する（ステップＳ２２１０）。
【０１６２】
以下に、図２３、２４を参照し、図２２のステップＳ２２０１からステップＳ２２０３までの処理について説明する。
【０１６３】
図２３は、部品候補リストの生成を説明する第一の図である。対応付け結果情報３８０Ａにおいて、項目「出力対応」の値として設定されている項番は、項番「２」である。また、項番別部品リスト３７０において、項番「２」を含む部品リスト情報は、部品リスト情報３７１である。部品リスト情報３７１において、項番「２」と対応付けられている自動実行部品の名前は、「ディレクトリを圧縮Ａ」である。
【０１６４】
そこで、部品組み合わせ部２５０は、自動実行部品リストデータベース３１０から、自動実行部品の名前に「ディレクトリを圧縮」を含む自動実行部品を抽出する。図２３の例では、自動実行部品リストデータベース３１０から、名前が「ディレクトリを圧縮Ａ」「ディレクトリを圧縮Ｂ」「ディレクトリを圧縮Ｃ」の自動実行部品１９５、１９５Ａ、１９５Ｂが抽出される。つまり、部品組み合わせ部２５０は、同じ操作を行う複数の自動実行部品を抽出する。
【０１６５】
図２４は、部品候補リストの生成を説明する第二の図である。部品組み合わせ部２５０は、自動実行部品１９５、１９５Ａ、１９５Ｂが抽出されると、抽出された自動実行部品から、項番「３」の自動実行部品の入力変数となる変数と型情報が一致する値を出力する自動実行部品を取得する。
【０１６６】
項番「３」の自動実行部品の入力変数は、「《file》sourcefil」である。よって、部品組み合わせ部２５０は、自動実行部品１９５、１９５Ａ、１９５Ｂの中から、出力情報に《file》型の値が含まれる自動実行部品１９５Ａ、１９５Ｂを取得する。
【０１６７】
そして、部品組み合わせ部２５０は、項番別部品リスト３７０の項番「２」と対応する自動実行部品名の値に、自動実行部品１９５Ａ、１９５Ｂの名前を格納し、部品候補リスト３９０として記憶部３００に格納する。
【０１６８】
図２４の部品候補リスト３９０では、部品候補情報３９１における自動実行部品名は、「ディレクトリを圧縮Ｂ」「ディレクトリを圧縮Ｃ」である。
【０１６９】
次に、図２５、２６を参照し、図２２のステップＳ２２０４からステップＳ２２０９までの処理について説明する。
【０１７０】
図２５は、部品組み合わせ部の処理を説明する第二の図である。図２５では、項番「２」の自動実行部品を、自動実行部品名「ディレクトリを圧縮Ｂ」の自動実行部品１９５Ａとした場合を示している。
【０１７１】
図２５（Ａ）は、部品候補リスト３９０に基づく自動実行部品の入力情報の対応付けを説明する図である。図２５（Ｂ）は、部品候補リスト３９０に基づく自動実行部品の入力情報の対応付けの結果である対応付け結果情報３８０Ｂを示す図である。
【０１７２】
自動実行部品１９５Ａの出力情報には、「《file》 compressedfilename」が含まれており、圧縮された《file》型の変数が出力される。したがって、自動実行部品１９５Ａから出力される変数「《file》 compressedfilename」は、項番「２」の入力情報１９３ａの「《file》圧縮したファイル：」と値として対応付けられる。
【０１７３】
よって、この場合、自動実行部品１９６の《file》型の入力変数sourcefileには、自動実行部品１９５Ａの出力情報には、「《file》 compressedfilename」の値が対応付けられる。
【０１７４】
図２５（Ｂ）に示す対応付け結果情報３８０Ｂでは、対応付け結果レコード３８４において、入力変数「《file》sourcefile」について、《file》型の入力変数sourcefileの値に、「compressedfilename」が対応付けられていることがわかる。
【０１７５】
したがって、対応付け結果情報３８０Ｂでは、値が設定されてない入力変数を含む入力情報は、対応付けレコード３８２のみとなる。したがって、対応付け結果情報３８０Ｂにおける評価値は、１となる。
【０１７６】
図２６は、部品組み合わせ部の処理を説明する第三の図である。図２６では、項番「２」の自動実行部品を、自動実行部品名「ディレクトリを圧縮Ｃ」の自動実行部品１９５Ｂとした場合を示している。
【０１７７】
図２６（Ａ）は、部品候補リスト３９０に基づく自動実行部品の入力情報の対応付けを説明する図である。図２６（Ｂ）は、部品候補リスト３９０に基づく自動実行部品の入力情報の対応付けの結果である対応付け結果情報３８０Ｃを示す図である。
【０１７８】
自動実行部品１９５Ｂの出力情報には、「《file》 compressedfilename」が含まれており、圧縮された《file》型の変数が出力される。したがって、自動実行部品１９５Ｂから出力される変数「《file》 compressedfilename」は、項番「２」の入力情報１９３ａの「《file》圧縮したファイル：」と値として対応付けられる。
【０１７９】
よって、この場合、自動実行部品１９６の《file》型の入力変数sourcefileには、自動実行部品１９５Ｂの出力情報には、「《file》 compressedfilename」の値が対応付けられる。
【０１８０】
また、自動実行部品１９５Ｂの入力情報は、入力変数「《server》 hostname」、入力変数「《directory》 dirname」に加えて、入力変数「《type》compresstype」を含む。
【０１８１】
この場合、項番「２」に先行する項番「１」の入力情報１９１ａ〜１９１ｃに、《type》型の入力変数が存在しないため、自動実行部品１９５Ｂの入力変数「《type》compresstype」に対応付ける値は存在しない。
【０１８２】
したがって、図２６（Ｂ）に示す対応付け結果情報３８０Ｃでは、対応付け結果レコード３８４の《file》型の入力変数sourcefileの値に「compressedfilename」が対応付けられているが、項番２と対応する対応付け結果レコード３８５では、入力変数「《type》compresstype」は値が設定されないままとなる。
【０１８３】
したがって、対応付け結果情報３８０Ｃでは、値が設定されてない入力変数を含む入力情報は、対応付け結果レコード３８２、３８５となる。したがって、対応付け結果情報３８０Ｂにおける評価値は、２となる。
【０１８４】
よって、本実施形態の部品組み合わせ部２５０は、評価値が１となる自動実行部品１９４、１９５Ａ、１９６の組み合わせを記憶する。
【０１８５】
尚、部品組み合わせ部２５０は、自動実行部品の組み合わせが決定した後に、項番別部品リスト３７０が決定した自動実行部品の組み合わせとなるように更新することで、自動実行部品の組み合わせを記憶しても良い。
【０１８６】
次に、図２７を参照して本実施形態の実行フロー生成部２６０の処理について説明する。図２７は、実行フロー生成部の処理を説明する図である。図２７は、図１３のステップＳ１３０６の処理を示す。
【０１８７】
本実施形態の実行フロー生成部２６０は、自動実行部品データデータベース３４０と、項番別部品リスト３７０と、対応付け結果情報３８０と、を参照し、自動実行フロー４００を作成する。尚、ここで参照される項番別部品リスト３７０は、項番毎の自動実行部品が、部品組み合わせ部２５０により結果された組み合わせとなるように更新されたものとした。
【０１８８】
また、本実施形態の自動実行部品データデータベース３４０は、自動実行部品毎に、自動実行部品が実行する処理が記述されたデータが格納されたデータベースである。
【０１８９】
また、本実施形態の実行フロー生成部２６０は、対応付け結果情報３８０において、値が設定されていない入力変数が存在する場合に、入力値未設定箇所リスト４１０を生成する。そして、実行フロー生成部２６０は、出力部２７０により、自動実行フロー４００と、入力値未設定箇所リスト４１０とを出力する。
【０１９０】
図２８は、実行フローと入力値未設定箇所リストの一例を示す図である。図２８では、対応付け結果情報３８０Ｃ（図２６参照）に基づき自動実行フロー４００と、入力値未設定箇所リスト４１０とが生成された場合の例である。
【０１９１】
図２８（Ａ）は、自動実行フロー４００の一例を示しており、図２８（Ｂ）は入力値未設定箇所リスト４１０の一例を示している。
【０１９２】
図２８（Ａ）に示す自動実行フロー４００は、項番「１」を自動実行部品１９４により実行するステップＳ３１、項番「２」を自動実行部品１９５Ｂにより実行するステップＳ３２、項番「３」を自動実行部品１９６により実行するステップＳ３３を含む。
【０１９３】
また、図２８（Ｂ）に示す入力値未設定箇所リスト４１０は、情報の項目として、項番と、自動実行部品名と、入力変数と、を有する。
【０１９４】
図２８（Ｂ）の例では、項番「１」の自動実行部品名「ファイルを複写Ａ」という自動実行部品の入力変数sourcefileの値が未設定であることがわかる。
【０１９５】
以上のように、本実施形態では、入力情報に未知の値を含む処理よりも前に実行された処理のうち、処理結果が未知の値と対応する処理を実現する自動実行部品を、処理結果の出力まで行う自動実行部品へ変更することで、入力と出力とを関連付ける。
【０１９６】
したがって、本実施形態によれば、手順書情報６に記述された作業項目を実行する自動実行部品の選択において、入力情報に含まれる未知の値が少なくなるように自動実行部品を選択できる。また、本実施形態は、自動実行フロー４００と共に、入力値未設定箇所リスト４１０を出力するため、自動実行フロー４００を作成する上で不足している情報を容易に把握することができる。
【０１９７】
尚、本実施形態の実行フロー作成支援装置１００は、手順書情報６を各種の方法により取得することができる。具体的には、例えば実行フロー作成支援装置１００は、ネットワークを介して実行フロー作成支援装置１００と通信が可能な端末装置から手順書情報６を取得しても良い。この場合、実行フロー作成支援装置１００は、自動実行フロー４００と入力値未設定箇所リスト４１０とを端末装置のディスプレイ等に表示させても良い。
【０１９８】
また、本実施形態の実行フロー作成支援装置１００は、例えば手順書情報６が格納された記録媒体から手順書情報６を取得しても良い。この場合、実行フロー作成支援装置１００は、自動実行フロー４００と入力値未設定箇所リスト４１０とを実行フロー作成支援装置１００のディスプレイ等に表示させても良い。
【０１９９】
開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
所定の作業を実現するために複数の処理項目が順序立てて記述された作業手順情報から、前記複数の処理項目の記述より目的語と動詞を含む複数の操作情報をそれぞれ抽出し、
操作情報毎に入力情報を複数定義した入力テンプレートを参照し、前記複数の処理項目毎に対応する入力情報を抽出し、
前記操作情報、前記入力情報、及び出力情報を有する複数の自動実行部品を参照し、処理項目毎に抽出した操作情報から、処理項目毎の自動実行部品を選択し、
選択した処理項目毎の自動実行部品について、不明となる入力情報が少なくなるように作業手順情報に対応する自動実行部品群を選択する、処理をコンピュータに実行させる実行フロー作成支援プログラム。
（付記２）
前記自動実行部品群を選択する処理は、
前記処理項目毎に選択された第一の自動実行部品が含む第一の入力情報と、前記処理項目毎に抽出された第二の入力情報と、を対応付け、
前記対応付けの結果に応じて、前記第一の自動実行部品よりも前に実行される第二の自動実行部品を変更する、付記１記載の実行フロー作成支援プログラム。
（付記３）
前記対応付ける処理は、
前記第二の入力情報に、前記第一の入力情報と対応する情報が存在しない場合に、
前記第一の入力情報から、操作の内容を示す用語を抽出し、
複数の前記第二の自動実行部品のそれぞれが有する複数の操作情報のうち、前記用語が含まれる操作情報を有する第二の自動実行部品と対応する前記処理項目を、前記第一の入力情報と対応付ける、付記２記載の実行フロー作成支援プログラム。
（付記４）
前記変更する処理は、
前記第一の入力情報と対応付けられた前記処理項目に対応して選択された前記第二の自動実行部品を、
前記第二の自動実行部品と同じ操作を行い、且つ操作を行った結果を出力する第三の自動実行部品に変更する、付記３記載の実行フロー作成支援プログラム。
（付記５）
前記変更する処理は、
前記第二の入力情報が対応付けられていない前記第一の入力情報の数が最も小さくなるように、前記第三の自動実行部品を選択する、付記４記載の実行フロー作成支援プログラム。
（付記６）
選択された前記自動実行部品群に応じた自動実行フローを生成する、処理を前記コンピュータに実行させる付記１乃至４の何れか一項に記載の実行フロー作成支援プログラム。
（付記７）
選択された前記自動実行部品群において、
前記第二の入力情報が対応付けられていない前記第一の入力情報を特定するリストを生成する処理を、前記コンピュータに実行させる付記５又は６記載の実行フロー作成支援プログラム。
（付記８）
コンピュータによる実行フロー作成支援方法であって、該コンピュータが、
所定の作業を実現するために複数の処理項目が順序立てて記述された作業手順情報から、前記複数の処理項目の記述より目的語と動詞を含む複数の操作情報をそれぞれ抽出し、
操作情報毎に入力情報を複数定義した入力テンプレートを参照し、前記複数の処理項目毎に対応する入力情報を抽出し、
前記操作情報、前記入力情報、及び出力情報を有する複数の自動実行部品を参照し、処理項目毎に抽出した操作情報から、処理項目毎の自動実行部品を選択し、
選択した処理項目毎の自動実行部品について、不明となる入力情報が少なくなるように作業手順情報に対応する自動実行部品群を選択する、実行フロー作成支援方法。
【０２００】
尚、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０２０１】
１  実行フロー作成支援プログラム
２  操作情報抽出処理
３  入力情報抽出処理
４  自動実行部品選択処理
５  実行フロー生成処理
６  手順書情報
１００  実行フロー作成支援装置
２００  実行フロー作成支援処理部
２１０  操作情報抽出部
２２０  入力情報抽出部
２３０  部品選択部
２４０  入力情報対応付け部
２５０  部品組み合わせ部
２６０  実行フロー生成部
２７０  出力部
３００  記憶部
３１０  自動実行部品リストデータベース
３２０  入力テンプレートデータベース
３３０  同義語辞書データベース
３４０  自動実行部品データデータベース
３５０  項番別操作情報
３６０  項番別入力情報
３７０  項番別部品リスト
３８０、３８０Ａ、３８０Ｂ、３８０Ｃ  対応付け結果情報
３９０  部品候補リスト
４００  自動実行フロー
４１０  入力値未設定箇所リスト
【図１】
0006477341.tif 000002
【図２】
0006477341.tif 000003
【図３】
0006477341.tif 000004
【図４】
0006477341.tif 000005
【図５】
0006477341.tif 000006
【図６】
0006477341.tif 000007
【図７】
0006477341.tif 000008
【図８】
0006477341.tif 000009
【図９】
0006477341.tif 000010
【図１０】
0006477341.tif 000011
【図１１】
0006477341.tif 000012
【図１２】
0006477341.tif 000013
【図１３】
0006477341.tif 000014
【図１４】
0006477341.tif 000015
【図１５】
0006477341.tif 000016
【図１６】
0006477341.tif 000017
【図１７】
0006477341.tif 000018
【図１８】
0006477341.tif 000019
【図１９】
0006477341.tif 000020
【図２０】
0006477341.tif 000021
【図２１】
0006477341.tif 000022
【図２２】
0006477341.tif 000023
【図２３】
0006477341.tif 000024
【図２４】
0006477341.tif 000025
【図２５】
0006477341.tif 000026
【図２６】
0006477341.tif 000027
【図２７】
0006477341.tif 000028
【図２８】
0006477341.tif 000029