(57)【特許請求の範囲】
【請求項１】
複数の作業の組合せから構成され、所定の目的を達成するために実行される業務を支援する計算機システムであって、
プロセッサ及び前記プロセッサに接続される記憶装置を有する少なくとも一つの計算機を備え、
業務の識別情報、前記業務の目的、前記業務を実行したユーザの情報、前記業務の作業の組合せ、及び前記業務の結果に対するユーザの評価を表す評価情報を含むログを格納する業務管理情報を管理し、
前記少なくとも一つの計算機は、
新規業務を実行する場合、前記新規業務と同一の目的を含む前記ログを取得し、
前記取得されたログに含まれる前記評価情報に基づいて、前記ログに対応する業務の第１評価値を算出し、
前記第１評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択し、
前記選択された作業の組合せを前記新規業務のユーザに提示する第１処理と、
前記ログに含まれる前記評価情報に基づいて、前記ログに対応する前記業務の第１スコアを算出し、
同一の目的を含む前記ログの中から第１ターゲットログを選択し、前記第１ターゲットログに対応する前記業務の前記第１スコア及び前記第１ターゲットログに含まれる前記作業の組合せの一部を流用した業務の前記第１スコアに基づいて、前記第１ターゲットログに含まれる前記作業の組合せの各作業の第２スコアを算出し、
同一の目的を含む前記ログの中から第２ターゲットログを選択し、前記第２ターゲットログに含まれる前記作業の組合せの一部を流用した業務に対応する前記ログの前記第１スコアに基づいて、前記第２ターゲットログに対応する前記業務を実行したユーザの第２評価値を算出し、前記第２ターゲットログと対応づけて管理する第２処理と、を実行し、
前記第１処理において、前記少なくとも一つの計算機は、
前記取得されたログの前記第２スコアに基づいて、前記取得されたログに対応する業務の前記第１評価値を算出し、
前記第１評価値及び前記第２評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択することを特徴とする計算機システム。
【請求項２】
計算機システムが実行する、複数の作業の組合せから構成され、所定の目的を達成するために実行される業務の支援方法であって、
前記計算機システムは、
プロセッサ及び前記プロセッサに接続される記憶装置を有する少なくとも一つの計算機を有し、
業務の識別情報、前記業務の目的、前記業務を実行したユーザの情報、前記業務の作業の組合せ、及び前記業務の結果に対するユーザの評価を表す評価情報を含むログを格納する業務管理情報を管理し、
前記業務の支援方法は、
前記少なくとも一つの計算機が、新規業務を実行する場合、前記新規業務と同一の目的を含む前記ログを取得する第１のステップと、
前記少なくとも一つの計算機が、前記取得されたログに含まれる前記評価情報に基づいて、前記ログに対応する業務の第１評価値を算出する第２のステップと、
前記少なくとも一つの計算機が、前記第１評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択する第３のステップと、
前記少なくとも一つの計算機が、前記選択された作業の組合せを前記新規業務のユーザに提示する第４のステップと、
前記少なくとも一つの計算機が、前記ログに含まれる前記評価情報に基づいて、前記ログに対応する前記業務の第１スコアを算出する第５のステップと、
前記少なくとも一つの計算機が、同一の目的を含む前記ログの中から第１ターゲットログを選択する第６のステップと、
前記少なくとも一つの計算機が、前記第１ターゲットログに対応する前記業務の前記第１スコア及び前記第１ターゲットログに含まれる前記作業の組合せの一部を流用した業務の前記第１スコアに基づいて、前記第１ターゲットログに含まれる前記作業の組合せの各作業の第２スコアを算出する第７のステップと、
前記少なくとも一つの計算機が、同一の目的を含む前記ログの中から第２ターゲットログを選択する第８のステップと、
前記少なくとも一つの計算機が、前記第２ターゲットログに含まれる前記作業の組合せの一部を流用した業務に対応する前記ログの前記第１スコアに基づいて、前記第２ターゲットログに対応する前記業務を実行したユーザの第２評価値を算出し、前記第２ターゲットログと対応づけて管理する第９のステップと、を含み、
前記第２のステップは、前記少なくとも一つの計算機が、前記取得されたログの前記第２スコアに基づいて、前記取得されたログに対応する業務の前記第１評価値を算出するステップを含み、
前記第３のステップは、前記少なくとも一つの計算機が、前記第１評価値及び前記第２評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択するステップを含むことを特徴とする業務の支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分析業務を支援する技術に関する。
【背景技術】
【０００２】
ビッグデータを用いたデータ分析は、経営戦略の立案及び業績の向上に欠かせないものとして多くの企業で積極的に取り入れられている。ビッグデータを用いたデータ分析は、複雑かつ困難であるため、データ分析を行える人が少ない。
【０００３】
したがって、データ分析の重要性に気付いていながらも、人材を確保できないために、有効にデータの活用ができない場合がある。
【０００４】
また、データ分析に用いるツール及び手法、またそれらに設定するパラメータの組合せは多岐にわたるため、データ分析に関わるノウハウの継承及び習得にはコストを要する。
【０００５】
そこで、熟練技術者の知識を活用したシステムが注目されている（例えば、特許文献１を参照）。特許文献１には、「設計業務をデータベースにデータテーブル（ＤＴ）の形で蓄積する。連結設計業務のＤＴは自己のＩＤと名称を有する。単位設計業務のＤＴは、自己のＩＤを有する他、連結設計業務のＩＤ、分類符号を有し、自己の名称、自己の前に行うべき単位設計業務のＩＤ、自己の後に行うべき単位設計業務のＩＤ、自己についての属性及びその値の任意個数の組、参照項目となる対象属性のＩＤ、設計項目となる対象項目のＩＤを有する。設計対象のＤＴは、自己のＩＤと名称、分類符号を有する。また、対象属性のＤＴは、自己のＩＤと名称及び値、対象属性のＩＤを有する。成果物のＤＴは、自己のＩＤと名称、単位設計業務のＩＤを有する。ＩＤを有するＤＴを新規作成及び登録、並びに編集していくことで、連結設計業務の詳細をデータベースに蓄積していくことができる。」ことが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−３１６６４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の技術では、一つの業務目的に対して最適な業務手順が一対一に存在することを前提としている。一方、データ分析では、目的及び実行する作業の組合せが多種多様である。そのため、特許文献１に記載の技術を用いた場合、適切な情報を提示できず、また、提示される情報量が膨大となる。
【０００８】
本発明は、新規分析業務の実行時に、分析業務のログの中から有用な情報を提示することによって、分析業務の支援を行うシステム及び方法を実現する。
【課題を解決するための手段】
【０００９】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数の作業の組合せから構成され、所定の目的を達成するために実行される業務を支援する計算機システムであって、プロセッサ及び前記プロセッサに接続される記憶装置を有する少なくとも一つの計算機を備え、業務の識別情報、前記業務の目的、前記業務を実行したユーザの情報、前記業務の作業の組合せ、及び前記業務の結果に対するユーザの評価を表す評価情報を含むログを格納する業務管理情報を管理し、前記少なくとも一つの計算機は、新規業務を実行する場合、前記新規業務と同一の目的を含む前記ログを取得し、前記取得されたログに含まれる前記評価情報に基づいて、前記ログに対応する業務の第１評価値を算出し、前記第１評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択し、前記選択された作業の組合せを前記新規業務のユーザに提示する第１処理と、前記ログに含まれる前記評価情報に基づいて、前記ログに対応する前記業務の第１スコアを算出し、同一の目的を含む前記ログの中から第１ターゲットログを選択し、前記第１ターゲットログに対応する前記業務の前記第１スコア及び前記第１ターゲットログに含まれる前記作業の組合せの一部を流用した業務の前記第１スコアに基づいて、前記第１ターゲットログに含まれる前記作業の組合せの各作業の第２スコアを算出し、同一の目的を含む前記ログの中から第２ターゲットログを選択し、前記第２ターゲットログに含まれる前記作業の組合せの一部を流用した業務に対応する前記ログの前記第１スコアに基づいて、前記第２ターゲットログに対応する前記業務を実行したユーザの第２評価値を算出し、前記第２ターゲットログと対応づけて管理する第２処理と、を実行し、前記第１処理において、前記少なくとも一つの計算機は、前記取得されたログの前記第２スコアに基づいて、前記取得されたログに対応する業務の前記第１評価値を算出し、前記第１評価値及び前記第２評価値に基づいて、前記取得されたログに含まれる前記作業の組合せの中から前記新規業務に推奨される作業の組合せを選択する。
【発明の効果】
【００１０】
本発明によれば、新規分析業務の実行時に、過去分析業務のログの中から有用な情報を提示することによって、分析業務を支援することができる。上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】実施例１の計算機のハードウェア構成及びソフトウェア構成の一例を説明する図である。
【図２】実施例１の分析者管理情報のデータ構造の一例を示す図である。
【図３Ａ】実施例１の目的管理情報のデータ構造の一例を示す図である。
【図３Ｂ】実施例１の目的管理情報のデータ構造の一例を示す図である。
【図４】実施例１の業務管理情報のデータ構造の一例を示す図である。
【図５】実施例１の作業管理情報のデータ構造の一例を示す図である。
【図６】実施例１の作業詳細管理情報のデータ構造の一例を示す図である。
【図７】実施例１の操作ログ管理情報のデータ構造の一例を示す図である。
【図８】実施例１の分析業務支援部が実行する処理の一例を説明するフローチャートである。
【図９】実施例１の主要処理部が実行する処理の一例を説明するフローチャートである。
【図１０】実施例１の業務管理部が実行する処理の一例を説明するフローチャートである。
【図１１】実施例１の作業管理部が実行する処理の一例を説明するフローチャートである。
【図１２Ａ】実施例１の主要処理部によって表示されるＵＩの一例を示す図である。
【図１２Ｂ】実施例１の主要処理部によって表示されるＵＩの一例を示す図である。
【図１３】実施例１の業務探索部が実行する処理の一例を説明するフローチャートである。
【図１４】実施例１の評価部が実行する処理の一例を説明するフローチャートである。
【図１５Ａ】実施例１の評価部が実行する処理の概念を説明する図である。
【図１５Ｂ】実施例１の評価部が実行する処理の概念を説明する図である。
【図１５Ｃ】実施例１の評価部が実行する処理の概念を説明する図である。
【図１５Ｄ】実施例１の評価部が実行する処理の概念を説明する図である。
【図１６】実施例１の事前処理部が実行する処理の一例を説明するフローチャートである。
【図１７】実施例２の計算機のハードウェア構成及びソフトウェア構成の一例を説明する図である。
【図１８】実施例２の作業管理情報のデータ構造の一例を示す図である。
【図１９】実施例２の主要処理部が実行する処理の一例を説明するフローチャートである。
【図２０】実施例２の業務探索部が実行する処理の一例を説明するフローチャートである。
【図２１】実施例３の主要処理部が実行する処理の一例を説明するフローチャートである。
【図２２】実施例３の業務探索部が実行する処理の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施例を、図面を用いて説明する。ただし、本発明は以下に示す実施例の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
【００１３】
以下に説明する発明の構成において、同一又は類似する構成又は機能には同一の符号を付し、重複する説明は省略する。
【００１４】
本明細書等における「第１」、「第２」、「第３」等の表記は、構成要素を識別するために付するものであり、必ずしも、数又は順序を限定するものではない。
【実施例１】
【００１５】
図１は、実施例１の計算機１００のハードウェア構成及びソフトウェア構成の一例を説明する図である。
【００１６】
計算機１００は、新規分析業務の実行時に、分析業務のログの中から所定の基準を満たすログに対応づけられる作業の組合せを、新規分析業務の作業の組合せを決定するためのレコメンド情報として提示する。なお、複数の計算機１００を有する計算機システムを用いて同様の機能を実現してもよい。
【００１７】
分析業務は、所定の目的を達成するために分析者が実行するデータ分析である。分析業務は、手順にしたがって複数の作業を実行することによって実現される。例えば、データの加工作業、サービス又はツールを用いた分析作業、データの整理／整形作業の順に作業を実行する分析業務が考えられる。
【００１８】
計算機１００は、ＣＰＵ１０１、光学ドライブ１０２、ネットワークインタフェース１０３、主記憶装置１０４、及び副記憶装置１０５を備える。前述のハードウェアは、内部バス１０６を介して互いに接続される。また、計算機１００には入力装置１０７及び出力装置１０８が接続される。入力装置１０７は、例えば、キーボード、マウス、及びタッチパネルであり、出力装置１０８は、例えば、ディスプレイ及びプリンタである。
【００１９】
ＣＰＵ１０１は、主記憶装置１０４に格納されるプログラムを実行する。ＣＰＵ１０１がプログラムにしたがって処理を実行することによって、特定の機能を実現する機能部（モジュール）として動作する。以下の説明では、機能部を主語に処理を説明する場合、ＣＰＵ１０１が当該機能部を実現するプログラムを実行していることを示す。
【００２０】
光学ドライブ１０２は、光学ディスクに対する書込処理及び読出処理を実行するドライブである。ネットワークインタフェース１０３は、ネットワーク１５０を介して外部装置と通信するためのインタフェースである。
【００２１】
ネットワーク１５０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）及びＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等である。なお、本発明は、ネットワーク１５０の種別及び接続方式に限定されない。
【００２２】
主記憶装置１０４は、メモリ等の記憶装置であり、ＣＰＵ１０１が実行するプログラム及びプログラムが使用する情報を格納する。主記憶装置１０４は、プログラムが一時的に使用するワークエリア１１２を含む。副記憶装置１０５は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置であり、データを永続的に格納する。
【００２３】
まず、副記憶装置１０５に格納される情報について説明する。副記憶装置１０５は、分析者管理情報１４０、目的管理情報１４１、業務管理情報１４２、作業管理情報１４３、作業詳細管理情報１４４、操作ログ管理情報１４５、及び実行ファイル１４６を格納する。なお、前述した情報は、計算機１００がアクセス可能なストレージ装置及びストレージシステムに格納されてもよい。ストレージ装置及びストレージシステムは、クラウドサービスによって提供されるものでもよい。
【００２４】
分析者管理情報１４０は、分析者（ユーザ）を管理するための情報である。分析者管理情報１４０のデータ構造の詳細は図２を用いて説明する。
【００２５】
目的管理情報１４１は、分析業務の目的を管理するための情報である。目的管理情報１４１のデータ構造の詳細は図３Ａ及び図３Ｂを用いて説明する。
【００２６】
業務管理情報１４２は、分析業務を管理するための情報である。業務管理情報１４２にて格納されるデータが分析業務のログである。業務管理情報１４２のデータ構造の詳細は図４を用いて説明する。
【００２７】
作業管理情報１４３は、分析業務の作業の組合せを管理するための情報である。ここで、作業の組合せは、作業の実行順を含む概念である。作業管理情報１４３のデータ構造の詳細は図５を用いて説明する。
【００２８】
作業詳細管理情報１４４は、個々の作業の詳細を管理するための情報である。作業詳細管理情報１４４のデータ構造の詳細は図６を用いて説明する。
【００２９】
操作ログ管理情報１４５は、一つの作業において行われた操作のログを管理するための情報である。操作ログ管理情報１４５のデータ構造の詳細は図７を用いて説明する。なお、複数の作業に対して一つの操作ログ管理情報１４５が存在してもよい。
【００３０】
実行ファイル１４６は、作業に使用する処理及びツール等を定義した情報であり、例えば、分析者が独自開発した分析プログラム、ＥＬＴ処理を実行するバッチファイル、及びシェルスクリプトである。
【００３１】
なお、作業の実行時に利用可能なマイクロサービス及びアプリケーションについては、システム管理者（又はシステム開発者）が操作ログの取得方法及び管理方法を設定し、予め実行ファイル１４６として登録する。分析者は登録されたマイクロサービス及びアプリケーションを利用して作業を行う。
【００３２】
なお、複数のファイルがパッケージ化されたファイルを実行ファイル１４６として設定してもよい。この場合、実行ファイル１４６の実行環境を予め用意する必要がある。
【００３３】
次に、主記憶装置１０４に格納されるプログラムについて説明する。主記憶装置１０４は、分析業務支援部１１０及びＯＳ１１１を実現するためのプログラムを格納する。
【００３４】
ＯＳ１１１は、計算機１００全体を制御する。分析業務支援部１１０は、分析業務に関するログを管理し、及び、ログを用いて分析業務を支援する。なお、ＯＳ１１１が分析業務支援部１１０の機能を有してもよい。
【００３５】
分析業務支援部１１０は、事前処理部１２０、主要処理部１２１、及びデータ管理部１２２を含む。
【００３６】
事前処理部１２０は、分析業務の一つの作業内で実行する実行ファイル１４６の登録を行う。データ管理部１２２は、データを格納するファイルシステム、ＤＢＭＳ、及びクラウドストレージ等のＡＰＩを有し、他の機能部からの要求に基づいてデータの読出及び書込等を制御する。
【００３７】
主要処理部１２１は、分析業務を支援する。具体的には、主要処理部１２１は、新規分析業務の実行時に、推奨される作業の組合せを提示する。主要処理部１２１は、業務管理部１３０、作業管理部１３１、業務探索部１３２、及び評価部１３３を含む。なお、主要処理部１２１に含まれる各機能部は、複数の機能部を一つの機能部にまとめてもよいし、一つの機能部を機能毎に複数の機能部に分けてもよい。
【００３８】
業務管理部１３０は、分析業務の実行を管理する。作業管理部１３１は、分析業務の各作業の実行を制御する。業務探索部１３２は、推奨される作業の組合せ（分析業務のログ）を検索する。評価部１３３は、分析業務に関する評価値を算出する。
【００３９】
次に、図２から図７を用いて計算機１００が保持する情報のデータ構造について説明する。
【００４０】
図２は、実施例１の分析者管理情報１４０のデータ構造の一例を示す図である。
【００４１】
分析者管理情報１４０は、分析者ＩＤ２０１、分析者名称２０２、及び分析者スコア２０３から構成されるエントリを格納する。一人の分析者に対して一つのエントリが存在する。
【００４２】
分析者ＩＤ２０１は、分析者（ユーザ）を一意に識別するための識別情報を格納するフィールドである。分析者名称２０２は、分析者の名称を格納するフィールドである。
【００４３】
分析者スコア２０３は、分析業務を実行した分析者の定量的な評価を表す評価値を格納するフィールドである。なお、分析者が実行した分析業務の目的ごとに評価値が格納されてもよい。
【００４４】
図３Ａ及び図３Ｂは、実施例１の目的管理情報１４１のデータ構造の一例を示す図である。図３Ａ及び図３Ｂには、それぞれ、異なったデータ構造の目的管理情報１４１を示している。
【００４５】
図３Ａに示す目的管理情報１４１は、目的ＩＤ３０１及び目的概要３０２から構成されるエントリを格納する。一つの分析業務の目的に対して一つのエントリが存在する。
【００４６】
目的ＩＤ３０１は、分析業務の目的を一意に識別するための識別情報を格納するフィールドである。目的概要３０２は、分析業務の目的を示す文字列等の情報を格納するフィールドである。
【００４７】
図３Ｂに示す目的管理情報１４１は、分析目的を階層化して管理している点が図３Ａに示す目的管理情報１４１と異なる。ここでは、分析目的が大分類及び小分類の二つの階層で表されるものとする。図３Ｂに示す目的管理情報１４１は、目的親ＩＤ３１１、目的子ＩＤ３１２、及び目的概要３１３から構成されるエントリを格納する。一つの分析業務の目的に対して一つのエントリが存在する。
【００４８】
目的親ＩＤ３１１は、分析業務の目的の大分類を一意に識別するための識別情報を格納するフィールドである。目的子ＩＤ３１２は、分析業務の目的の小分類を一意に識別するための識別情報を格納するフィールドである。なお、分析業務の大分類に対応するエントリの目的子ＩＤ３１２は空欄である。目的概要３１３は、分析業務の目的を示す文字列等の情報を格納するフィールドである。
【００４９】
本明細書では、図３Ａに示す目的管理情報１４１のデータ構造を採用するものとする。
【００５０】
図４は、実施例１の業務管理情報１４２のデータ構造の一例を示す図である。
【００５１】
業務管理情報１４２は、業務ＩＤ４０１、目的ＩＤ４０２、分析者ＩＤ４０３、ステータス４０４、評価４０５、及び完了日時４０６から構成されるエントリを格納する。一つの分析業務に対して一つのエントリが存在する。
【００５２】
業務ＩＤ４０１は、分析業務を一意に識別するための識別情報を格納するフィールドである。
【００５３】
目的ＩＤ４０２は、エントリに対応する分析業務の目的の識別情報を格納するフィールドである。目的ＩＤ４０２に格納される識別情報は、目的管理情報１４１の目的ＩＤ３０１に格納される識別情報と同一である。
【００５４】
分析者ＩＤ４０３は、エントリに対応する分析業務を実行した分析者の識別情報を格納するフィールドである。分析者ＩＤ４０３に格納される識別情報は、分析者管理情報１４０の分析者ＩＤ２０１に格納される識別情報と同一である。
【００５５】
ステータス４０４は、エントリに対応する分析業務の実行状態を示す情報を格納するフィールドである。例えば、「Ｃｏｍｐｌｅｔｅ」は分析業務が完了した状態であることを示す。分析業務が実行中である場合、ステータス４０４には、実行中の作業の識別情報を格納する。前述の情報は一例であってこれに限定されない。
【００５６】
評価４０５は、エントリに対応する分析業務の結果に対する分析者の評価を示す情報を格納するフィールドである。本実施例では、０から２までの数値が格納される。０が最も評価が低く、２が最も評価が高い。前述の情報は一例であってこれに限定されない。なお、定量的な評価でもよいし、定性的な評価でもよい。定性的な評価としては、例えば、「まる」、「ばつ」、「さんかく」等の記号でもよいし、「ｅｘｃｅｌｌｅｎｔ」、「ｇｏｏｄ」、「ｂａｄ」等の文字列でもよい。
【００５７】
完了日時４０６は、エントリに対応する分析業務が完了した日時を格納するフィールである。
【００５８】
図５は、実施例１の作業管理情報１４３のデータ構造の一例を示す図である。
【００５９】
作業管理情報１４３は、業務ＩＤ５０１、作業ＩＤ５０２、及び手順５０３から構成されるエントリを格納する。業務及び作業の一つの組合せに対して一つのエントリが存在する。
【００６０】
業務ＩＤ５０１は、分析業務を一意に識別するための識別情報を格納するフィールドである。業務ＩＤ５０１に格納される識別情報は、業務管理情報１４２の業務ＩＤ４０１に格納される識別情報と同一である。
【００６１】
作業ＩＤ５０２は、業務ＩＤ５０１に対応する分析業務において実行される作業を一意に識別するための識別情報を格納するフィールドである。作業の識別情報は、各作業に対して付与される情報である。そのため、異なる分析業務において同一の内容の作業が実行された場合、各分析業務の作業ＩＤ５０２には同一の識別情報が格納される。
【００６２】
手順５０３は、業務ＩＤ５０１に対応する分析業務における、作業ＩＤ５０２に対応する作業の実行順番を示す情報を格納するフィールドである。
【００６３】
図６は、実施例１の作業詳細管理情報１４４のデータ構造の一例を示す図である。
【００６４】
作業詳細管理情報１４４は、作業ＩＤ６０１、インプットファイル管理ディレクトリ６０２、アウトプットファイル管理ディレクトリ６０３、操作ログ管理情報６０４、操作プログラム６０５、運用サービス６０６、第１スコア６０７、及び第２スコア６０８から構成されるエントリを格納する。一つの作業に対して一つのエントリが存在する。
【００６５】
作業ＩＤ６０１は、作業を一意に識別するための識別情報を格納するフィールドである。作業ＩＤ６０１に格納される識別情報は、作業管理情報１４３の作業ＩＤ５０２に格納される識別情報と同一である。
【００６６】
インプットファイル管理ディレクトリ６０２及びアウトプットファイル管理ディレクトリ６０３は、作業毎に動的に変更されるディレクトリの情報を格納するフィールドである。作業を流用する場合、操作ログ内のコマンドを実行する上で置換する必要があるディレクトリの情報が格納される。なお、ディレクトリの情報は絶対パス及び相対パスのいずれでもよい。
【００６７】
操作ログ管理情報６０４は、作業において行われた操作のログを管理する操作ログ管理情報１４５の識別情報を格納するフィールドである。
【００６８】
操作プログラム６０５は、作業において操作されたプログラムに関する情報を格納するフィールドである。操作プログラム６０５には、例えば、プログラムの名称等が格納される。
【００６９】
運用サービス６０６は、作業において使用された外部サービス等に関する情報を格納するフィールドである。運用サービス６０６には、例えば、運用サービスの名称及び運用サービスを利用するためのＵＲＬ等が格納される。
【００７０】
第１スコア６０７は、作業ＩＤ６０１に対応する作業の定量的な評価を表すスコアを格納するフィールドである。
【００７１】
第２スコア６０８は、作業ＩＤ６０１に対応する作業が最終作業となる分析業務の結果の定量的な評価を表すスコアを格納するフィールドである。第２スコア６０８には、分析者が分析業務の結果に対して行われた評価（評価４０５）に基づいて算出された値が格納される。なお、分析業務の最終作業に該当するエントリの第２スコア６０８にのみ値が格納され、他のエントリの第２スコア６０８は空欄である。
【００７２】
図７は、実施例１の操作ログ管理情報１４５のデータ構造の一例を示す図である。
【００７３】
操作ログ管理情報１４５は、作業ＩＤ７０１、手順７０２、及び操作ログ７０３から構成されるエントリを格納する。一つの操作に対して一つのエントリが存在する。
【００７４】
作業ＩＤ７０１は、操作ログ７０３に格納される操作が行われた作業を一意に識別するための識別情報を格納するフィールドである。作業ＩＤ７０１に格納される識別情報は、作業管理情報１４３の作業ＩＤ５０２に格納される識別情報と同一である。
【００７５】
手順７０２は、作業ＩＤ７０１に対応する作業において、操作ログ７０３に格納される操作が実行された順番を示す情報を格納するフィールドである。
【００７６】
操作ログ７０３は、作業ＩＤ７０１に対応する作業において実行された操作を示す情報を格納するフィールドである。操作ログ７０３には、例えば、コマンドラインツールを用いて入力されたコマンドが格納される。
【００７７】
図２から図７を用いて説明した各種情報はテーブル形式の情報でなくてもよい。例えば、テキスト形式、ＣＳＶ形式、又はＸＭＬ形式の情報でもよい。例えば、操作ログ管理情報１４５をテキスト形式で保持する場合、ファイル名を作業ＩＤ７０１として扱い、操作ログの記載順を手順７０２として扱うことによって、同様の情報を保持することができる。
【００７８】
また、図２から図７を用いて説明した各種情報のうち、二つ以上の情報を統合し、一つの情報として管理してもよい。例えば、業務管理情報１４２及び作業管理情報１４３を一つにまとめてもよい。
【００７９】
以上が、計算機１００が保持する情報のデータ構造の説明である。次に、計算機１００が実行する処理について説明する。
【００８０】
図８は、実施例１の分析業務支援部１１０が実行する処理の一例を説明するフローチャートである。
【００８１】
計算機１００は、分析者からのアクセスを受け付けた場合、分析業務支援部１１０を呼び出す。呼び出された分析業務支援部１１０は、図８で説明する処理を開始する。
【００８２】
分析業務支援部１１０は、分析者に対して専用のＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供する。分析者は、当該ＵＩを用いて計算機１００に各種要求を入力する。
【００８３】
まず、分析業務支援部１１０はログイン処理を実行する（ステップＳ１０１）。ログイン処理は公知の技術であるため詳細な説明は省略する。このとき、分析業務支援部１１０は、分析者の識別情報をワークエリア１１２に格納する。分析者の識別情報は、ログイン処理において入力された氏名等に基づいて分析者管理情報１４０から取得することができる。なお、ログイン処理において、分析者の識別情報が入力されている場合には、当該情報がそのままワークエリア１１２に格納される。
【００８４】
ログイン処理の実行後、分析業務支援部１１０は分析者からの要求の入力を待つ。
【００８５】
分析業務支援部１１０は、受け付けた要求が分析業務の開始要求であるか否かを判定する（ステップＳ１０２）。
【００８６】
受け付けた要求が分析業務の開始要求であると判定された場合、分析業務支援部１１０は、主要処理部１２１を呼び出す（ステップＳ１０３）。主要処理部１２１による処理が終了した後、分析業務支援部１１０はステップＳ１０９に進む。
【００８７】
受け付けた要求が分析業務の開始要求ではないと判定された場合、分析業務支援部１１０は、受け付けた要求が事前処理の実行要求であるか否かを判定する（ステップＳ１０４）。
【００８８】
受け付けた要求が事前処理の実行要求であると判定された場合、分析業務支援部１１０は、事前処理部１２０を呼び出す（ステップＳ１０５）。事前処理部１２０による処理が終了した後、分析業務支援部１１０はステップＳ１０９に進む。
【００８９】
受け付けた要求が事前処理の実行要求ではないと判定された場合、分析業務支援部１１０は、受け付けた要求が分析業務の評価要求であるか否かを判定する（ステップＳ１０６）。
【００９０】
受け付けた要求が業務の評価要求でないと判定された場合、分析業務支援部１１０はステップＳ１０９に進む。
【００９１】
受け付けた要求が業務の評価要求であると判定された場合、分析業務支援部１１０は、分析者から分析業務の結果に対する評価を受け付ける（ステップＳ１０７）。
【００９２】
なお、分析者は、ＵＩを用いて、評価対象の分析業務の識別情報及び評価の情報を入力する。このとき、分析業務支援部１１０は、業務管理情報１４２を参照し、評価対象の分析業務に対応するエントリを検索する。分析業務支援部１１０は、検索されたエントリの評価４０５に分析者が入力した評価に関する情報を設定する。
【００９３】
次に、分析業務支援部１１０は評価部１３３を呼び出す（ステップＳ１０８）。評価部１３３による処理が終了した後、分析業務支援部１１０はステップＳ１０９に進む。
【００９４】
ステップＳ１０９では、分析業務支援部１１０は、システムの操作の終了要求を受け付けたか否かを判定する（ステップＳ１０９）。
【００９５】
システムの操作の終了要求を受け付けていないと判定された場合、分析業務支援部１１０は分析者からの要求の入力を待つ。入力される要求は、システムの操作の終了要求以外の要求である。分析者からの要求を受け付けた場合、分析業務支援部１１０は、ステップＳ１０２に戻り、同様の処理を実行する。
【００９６】
システムの操作の終了要求を受け付けたと判定された場合、分析業務支援部１１０は、ログアウト処理を実行し（ステップＳ１１０）、その後、処理を終了する。ログアウト処理は公知の技術であるため詳細な説明は省略する。このとき、一連の処理においてワークエリア１１２に格納されたデータは消去される。
【００９７】
図９は、実施例１の主要処理部１２１が実行する処理の一例を説明するフローチャートである。主要処理部１２１は、分析業務支援部１１０から呼び出された場合、以下で説明する処理を開始する。
【００９８】
まず、主要処理部１２１は、分析者から新規分析業務の目的の入力を受け付ける（ステップＳ２０１）。このとき、主要処理部１２１は以下のような処理を実行する。
【００９９】
（Ｓ２０１−１）主要処理部１２１は、目的管理情報１４１を参照し、目的概要３０２の値が入力された新規分析業務の目的と一致するエントリを検索する。主要処理部１２１は、文字列の類似性及び意味の類似性等に基づいて、入力された新規分析業務の目的と、目的概要３０２に格納される分析業務の目的とが一致するか否かを判定する。
【０１００】
（Ｓ２０１−２）前述の条件を満たすエントリが存在する場合、主要処理部１２１は、当該エントリの目的ＩＤ３０１の値を取得し、ワークエリア１１２に格納する。
【０１０１】
（Ｓ２０１−３）前述の条件を満たすエントリが存在しない場合、主要処理部１２１は、目的管理情報１４１にエントリを追加し、追加されたエントリの目的ＩＤ３０１に識別情報を設定し、目的概要３０２に入力された新規分析業務の目的を設定する。さらに、主要処理部１２１は、追加されたエントリの目的ＩＤ３０１の値をワークエリア１１２に格納する。以上がステップＳ２０１において実行される処理の説明である。
【０１０２】
次に、主要処理部１２１は、業務探索部１３２を呼び出す（ステップＳ２０２）。業務探索部１３２が後述する処理を実行することによって、新規分析業務の作業の組合せの決定を支援するためのレコメンド情報としてログ（作業の組合せ）が分析者に提示される。以下の説明では、レコメンド情報として表示されるログに対応する分析業務を参考業務と記載する。
【０１０３】
主要処理部１２１は、業務探索部１３２による処理が終了した後、業務管理部１３０を呼び出す（ステップＳ２０３）。業務管理部１３０が後述する処理を実行することによって、分析業務が実行される。
【０１０４】
主要処理部１２１は、業務管理部１３０による処理が終了した後、新規分析業務が完了したか否かを判定する（ステップＳ２０４）。
【０１０５】
具体的には、主要処理部１２１は、業務管理情報１４２の新規分析業務に対応するエントリを参照し、ステータス４０４が「Ｃｏｍｐｌｅｔｅ」であるか否かを判定する。ステータス４０４が「Ｃｏｍｐｌｅｔｅ」である場合、主要処理部１２１は新規分析業務が完了したと判定する。
【０１０６】
新規分析業務が完了していないと判定された場合、主要処理部１２１は処理を終了する。このとき、主要処理部１２１は分析業務支援部１１０に処理の終了を通知する。
【０１０７】
新規分析業務が完了していると判定された場合、主要処理部１２１は、新規分析業務の結果に対する分析者の評価が行われたか否かを判定する（ステップＳ２０５）。
【０１０８】
具体的には、主要処理部１２１は、業務管理情報１４２の新規分析業務に対応するエントリを参照し、評価４０５に値が格納されているか否かを判定する。評価４０５に値が格納されている場合、主要処理部１２１は新規分析業務の結果に対する分析者の評価が行われたと判定する。
【０１０９】
新規分析業務の結果に対する分析者の評価が行われていないと判定された場合、主要処理部１２１は処理を終了する。このとき、主要処理部１２１は分析業務支援部１１０に処理の終了を通知する。
【０１１０】
新規分析業務の結果に対する分析者の評価が行われたと判定された場合、主要処理部１２１は評価部１３３を呼び出す（ステップＳ２０６）。評価部１３３による処理が終了した後、主要処理部１２１は処理を終了する。このとき、主要処理部１２１は分析業務支援部１１０に処理の終了を通知する。
【０１１１】
図１０は、実施例１の業務管理部１３０が実行する処理の一例を説明するフローチャートである。
【０１１２】
業務管理部１３０は、新規分析業務を開始する（ステップＳ３０１）。
【０１１３】
このとき、業務管理部１３０は、業務管理情報１４２を更新する。具体的には、業務管理部１３０は、業務管理情報１４２にエントリを追加し、追加されたエントリの業務ＩＤ４０１に識別情報を設定する。業務管理部１３０は、追加されたエントリの目的ＩＤ４０２及び分析者ＩＤ４０３に、ワークエリア１１２に格納される目的の識別情報及び分析者の識別情報を設定する。業務管理部１３０は、追加されたエントリのステータス４０４に「実行中」等の値を設定してもよい。
【０１１４】
次に、業務管理部１３０は、参考業務が存在するか否かを判定する（ステップＳ３０２）。
【０１１５】
具体的には、業務管理部１３０は、新規分析業務の識別情報と異なる分析業務の識別情報がワークエリア１１２に存在するか否かを判定する。新規分析業務の識別情報と異なる分析業務の識別情報がワークエリア１１２に存在する場合、業務管理部１３０は、参考業務が存在すると判定する。
【０１１６】
参考業務が存在しないと判定された場合、業務管理部１３０はステップＳ３０７に進む。
【０１１７】
参考業務が存在すると判定された場合、業務管理部１３０は、参考業務の作業の組合せに含まれる作業を実行するか否かを判定する（ステップＳ３０３）。すなわち、業務管理部１３０は、参考業務の作業を流用するか否かを判定する。当該判定は、ＵＩを介した分析者の入力に基づいて行われる。以下の説明では、参考業務の作業の組合せに含まれる作業を参考作業と記載する。
【０１１８】
参考業務の作業の組合せに含まれる作業を実行しないと判定された場合、業務管理部１３０はステップＳ３０７に進む。
【０１１９】
参考業務の作業の組合せに含まれる作業を実行すると判定された場合、業務管理部１３０は、作業管理部１３１を呼び出す（ステップＳ３０４）。このとき、業務管理部１３０は、実行する作業の情報を作業管理部１３１に入力する。なお、作業の情報は、作業詳細管理情報１４４及び操作ログ管理情報１４５等から取得することができる。作業管理部１３１による処理が終了した後、業務管理部１３０はステップＳ３０５に進む。
【０１２０】
次に、業務管理部１３０は作業管理情報１４３を更新する（ステップＳ３０５）。
【０１２１】
具体的には、業務管理部１３０は、業務管理情報１４２にエントリを追加し、追加されたエントリの業務ＩＤ５０１及び作業ＩＤ５０２に、新規分析業務の識別情報及び作業管理部１３１によって実行された作業の識別情報を設定する。また、業務管理部１３０は、追加されたエントリの手順５０３に前回の作業の手順に１を加算した値を設定する。
【０１２２】
次に、業務管理部１３０は、参考業務の全ての作業が完了したか否かを判定する（ステップＳ３０６）。
【０１２３】
参考業務の全ての作業が完了していないと判定された場合、業務管理部１３０は、ステップＳ３０３に戻り、同様の処理を実行する。
【０１２４】
参考業務の全ての作業が完了したと判定された場合、業務管理部１３０はステップＳ３０９に進む。
【０１２５】
ステップＳ３０７では、業務管理部１３０は、作業管理部１３１を呼び出す（ステップＳ３０７）。この場合、作業管理部１３１によって、分析者が独自に設定した作業が実行される。作業管理部１３１による処理が終了した後、業務管理部１３０はステップＳ３０８に進む。
【０１２６】
次に、業務管理部１３０は作業管理情報１４３を更新し（ステップＳ３０８）、その後、ステップＳ３０９に進む。なお、ステップＳ３０８の処理はステップＳ３０５の処理と同一である。
【０１２７】
ステップＳ３０９では、業務管理部１３０は、別の作業を実行するか否かを判定する（ステップＳ３０９）。当該判定は、ＵＩを介した分析者の入力に基づいて行われる。
【０１２８】
別の作業を実行すると判定された場合、業務管理部１３０は、ステップＳ３０７に戻り、同様の処理を実行する。
【０１２９】
別の作業を実行しないと判定された場合、業務管理部１３０は、新規分析業務を終了し（ステップＳ３１０）、その後、処理を終了する。
【０１３０】
このとき、業務管理部１３０は、主要処理部１２１に処理の終了を通知し、また、業務管理情報１４２を更新する。具体的には、業務管理部１３０は、業務管理情報１４２を参照し、新規分析業務に対応するエントリのステータス４０４に「Ｃｏｍｐｌｅｔｅ」を設定する。また、業務管理部１３０は、新規分析業務に対応するエントリの完了日時４０６に現在の日時を設定する。
【０１３１】
図１１は、実施例１の作業管理部１３１が実行する処理の一例を説明するフローチャートである。
【０１３２】
作業管理部１３１は、参考作業が存在するか否かを判定する（ステップＳ４０１）。
【０１３３】
具体的には、作業管理部１３１は、業務管理部１３０から作業に関する情報が入力されたか否かを判定する。
【０１３４】
参考作業が存在すると判定された場合、作業管理部１３１は、分析者に参考作業に関する情報を提示する（ステップＳ４０２）。
【０１３５】
次に、作業管理部１３１は、分析者から作業の実行指示を受け付け（ステップＳ４０３）、当該実行指示に基づいて作業を実行する（ステップＳ４０４）。
【０１３６】
具体的には、作業管理部１３１は、ワークエリア１１２から業務探索部１３２によって構築された作業に関する情報を取得し、指示された作業を実行する。このとき、作業管理部１３１は、作業において実行されたコマンド等の操作に関する情報をワークエリア１１２に一時的に格納する。なお、コマンドの他に実行ファイル１４６の実行時の操作及びサービスの利用時の操作等のログもワークエリア１１２に一時的に格納される。
【０１３７】
外部のシステムによって提供されるサービス及びアプリケーションについては、計算機１００が当該サービス及びアプリケーションの操作ログを取得する。分析者にログを表示する場合、分析者が使用可能なサービス及びアプリケーションの操作ログのみを提示するようにしてもよい。
【０１３８】
次に、作業管理部１３１は、実行された作業が参考作業であるか否かを判定する（ステップＳ４０５）。すなわち、作業管理部１３１は、ステップＳ４０２において提示された参考作業と、実行された作業とが一致するか否かを判定する。
【０１３９】
実行された作業が参考作業であると判定された場合、作業管理部１３１は処理を終了する。このとき、作業管理部１３１は業務管理部１３０に処理の終了を通知する。
【０１４０】
実行された作業が参考作業ではないと判定された場合、作業管理部１３１はステップＳ４０８に進む。
【０１４１】
ステップＳ４０１において、参考作業が存在しないと判定された場合、作業管理部１３１は、分析者から作業の実行指示を受け付け（ステップＳ４０６）、当該実行指示に基づいて作業を実行する（ステップＳ４０７）。その後、作業管理部１３１はステップＳ４０８に進む。このとき、作業管理部１３１は、作業において実行されたコマンド等の操作に関する情報をワークエリア１１２に一時的に格納する。
【０１４２】
ステップＳ４０８では、作業管理部１３１は、作業詳細管理情報１４４を更新する（ステップＳ４０８）。その後、作業管理部１３１は処理を終了する。このとき、作業管理部１３１は業務管理部１３０に処理の終了を通知する。ステップＳ４０８では、以下のような処理が実行される。
【０１４３】
（Ｓ４０８−１）作業管理部１３１は、操作に関する情報に基づいて操作ログ管理情報１４５を生成する。このとき、作業管理部１３１は、操作ログ管理情報１４５にファイル名等の識別情報を設定する。
【０１４４】
（Ｓ４０８−２）作業管理部１３１は、作業詳細管理情報１４４にエントリを追加し、追加されたエントリの作業ＩＤ６０１に識別情報を設定し、操作ログ管理情報６０４に操作ログ管理情報１４５の識別情報を設定する。また、作業管理部１３１は、作業の内容に応じて、追加されたエントリのインプットファイル管理ディレクトリ６０２、アウトプットファイル管理ディレクトリ６０３、操作プログラム６０５、及び運用サービス６０６に値を設定する。なお、操作プログラム６０５及び運用サービス６０６は、作業の内容によっては値が設定されない。以上がステップＳ４０８の処理の説明である。
【０１４５】
ここで、ＵＩを用いて、業務管理部１３０及び作業管理部１３１の処理の流れについて説明する。図１２Ａ及び図１２Ｂは、実施例１の主要処理部１２１によって表示されるＵＩの一例を示す図である。
【０１４６】
図１２Ａは、参考業務が存在しない場合又は参考業務の作業以外の作業を行う場合に表示されるＵＩ１２００の一例を示す。ＵＩ１２００は、ユーザ欄１２０１、分析業務欄１２０２、作業実行欄１２０３、及び操作ボタン欄１２０４を含む。
【０１４７】
ユーザ欄１２０１は、分析者の名称及びログイン又はログアウトボタンが表示される。図１２Ａでは、ログイン済みであるため、ユーザ欄１２０１にはログアウトボタンが表示されている。
【０１４８】
分析業務欄１２０２は、現在実行中の分析業務の作業の組合せを表示する欄である。分析業務欄１２０２には、作業の実行順に、作業を表すシンボルが表示される。黒塗りのシンボルは実行済みの作業を表し、斜線のシンボルは実行する作業を表す。
【０１４９】
作業実行欄１２０３は、分析者が作業の具体的な操作を設定又は確認し、実行指示を出力するための欄である。作業実行欄１２０３は、コマンド入力欄１２１１及びファイル追加ボタン１２１２を含む。
【０１５０】
コマンド入力欄１２１１は、作業における操作を実現するコマンドを入力する欄である。コマンド入力欄１２１１に設定されたコマンドは操作ログ管理情報１４５に記録される。ファイル追加ボタン１２１２は、ファイルを配置するための操作ボタンである。分析者がファイル追加ボタン１２１２を操作した場合、コマンド入力欄１２１１に設定されたコマンドを格納するファイルが計算機１００にアップロードされる。ファイルに基づいて作業詳細管理情報１４４及び操作ログ管理情報１４５等が更新される。
【０１５１】
操作ボタン欄１２０４は、分析業務の継続及び終了等を指示するための操作ボタンを表示する欄である。操作ボタン欄１２０４は、業務完了ボタン１２２１及び作業追加ボタン１２２２を含む。
【０１５２】
業務完了ボタン１２２１は、分析業務の完了を指示するための操作ボタンである。分析者が業務完了ボタン１２２１を操作した場合、業務管理部１３０は、ステップＳ３０９において別の作業を実行しないと判定する。
【０１５３】
作業追加ボタン１２２２は、新たな作業の実行を指示するための操作ボタンである。分析者が作業追加ボタン１２２２を操作した場合、業務管理部１３０は、ステップＳ３０９において別の作業を実行すると判定する。
【０１５４】
図１２Ｂは、参考業務が存在する場合に表示されるＵＩ１２００の一例を示す。ＵＩ１２００は、ユーザ欄１２０１、分析業務欄１２０２、作業実行欄１２０３、及び操作ボタン欄１２０４を含む。
【０１５５】
分析業務欄１２０２には、参考業務の作業の組合せが表示される。白塗りのシンボルは、実行予定の作業を表す。
【０１５６】
作業実行欄１２０３は、コマンド入力欄１２１１及びファイル追加ボタン１２１２に加えて、個別操作実行ボタン１２１３及び全操作実行ボタン１２１４を含む。
【０１５７】
コマンド入力欄１２１１には、参考作業において実行されたコマンドが表示される。分析者は必要に応じてコマンド入力欄１２１１に表示されたコマンドの追加、削除、及び修正を行うことができる。以下の説明では、コマンドの追加、削除、及び修正をコマンドの更新と記載する。
【０１５８】
個別操作実行ボタン１２１３は、コマンド入力欄１２１１に参考作業で実行されたコマンドを表示するための操作ボタンである。分析者は、表示されたコマンドをそのまま実行する場合、コマンドの実行指示を入力する。表示されたコマンドそのまま実行しない場合、分析者はコマンドを更新し、更新したコマンドの実行指示を入力する。更新されたコマンドが実行された場合、ステップＳ４０５において、作業管理部１３１は、実行された作業が参考作業ではないと判定する。
【０１５９】
全操作実行ボタン１２１４は、実行済みのコマンド以降の全てのコマンドの実行を指示するための操作ボタンである。なお、コマンドが実行されていない状態で全操作実行ボタン１２１４が操作された場合、参考作業におけるコマンドがそのまま実行される。
【０１６０】
なお、作業実行欄１２０３には作業初期化ボタンをもうけてもよい。作業初期化ボタンが操作された場合、作業が最初からやり直される。
【０１６１】
操作ボタン欄１２０４は、業務完了ボタン１２２１及び作業追加ボタン１２２２に加えて、置換作業追加ボタン１２２３を含む。
【０１６２】
参考作業のコマンドが更新されることなく実行されている間、作業追加ボタン１２２２が有効化され、置換作業追加ボタン１２２３は無効化される。一方、参考作業のコマンドが更新された後、置換作業追加ボタン１２２３が有効化され、作業追加ボタン１２２２は無効化される。
【０１６３】
作業追加ボタン１２２２が操作された場合、業務管理部１３０は、ステップＳ３０３において、参考業務の作業の組合せに含まれる作業を実行すると判定する。置換作業追加ボタン１２２３が操作された場合、業務管理部１３０は、ステップＳ３０３において、参考業務の作業の組合せに含まれる作業を実行しないと判定する。置換作業追加ボタン１２２３が操作された場合、図１２Ｂに示すＵＩ１２００は図１２Ａに示すＵＩ１２００に切り替わる。
【０１６４】
以上が業務管理部１３０及び作業管理部１３１の処理の流れの説明である。
【０１６５】
図１３は、実施例１の業務探索部１３２が実行する処理の一例を説明するフローチャートである。
【０１６６】
業務探索部１３２は、業務管理情報１４２を参照し、新規分析業務と目的が同一である業務を特定する（ステップＳ５０１）。
【０１６７】
具体的には、業務探索部１３２は、目的ＩＤ４０２の値が、ワークエリア１１２に格納される目的の識別情報と一致するエントリを検索する。業務探索部１３２は、検索されたエントリの業務ＩＤ４０１の値及び分析者ＩＤ４０３の値から構成される業務一覧を生成し、ワークエリア１１２に格納する。
【０１６８】
次に、業務探索部１３２は、分析業務の評価値に基づく絞込処理を実行する（ステップＳ５０２）。当該処理によって、評価の高い分析業務が選択される。具体的には、以下のような処理が実行される。
【０１６９】
（Ｓ５０２−１）業務探索部１３２は、業務一覧に登録された分析業務の中からターゲット分析業務を選択する。
【０１７０】
（Ｓ５０２−２）業務探索部１３２は、作業管理情報１４３を参照し、業務ＩＤ５０１の値がターゲット分析業務の識別情報と一致するエントリを検索する。これによって、ターゲット分析業務の作業の組合せが特定される。業務探索部１３２は、作業詳細管理情報１４４を参照し、作業ＩＤ６０１の値が検索されたエントリの作業ＩＤ５０２の値と一致するエントリを検索する。
【０１７１】
（Ｓ５０２−３）業務探索部１３２は、作業詳細管理情報１４４から検索されたエントリの第１スコア６０７の値を取得する。すなわち、業務探索部１３２は、ターゲット分析業務に含まれる全ての作業のスコアを取得する。業務探索部１３２は、取得されたスコアの合計値をターゲット分析業務の評価値として算出する。なお、分析業務の評価値の算出方法は一例であってこれに限定されない。作業のスコアを用いたものであればどのような算出方法でもよい。
【０１７２】
（Ｓ５０２−４）業務探索部１３２は、業務一覧に登録された全ての分析業務の評価値を算出したか否かを判定する。業務一覧に登録された全ての分析業務の評価値を算出していない場合、業務探索部１３２は、（Ｓ５０２−１）に戻り、同様の処理を実行する。
【０１７３】
（Ｓ５０２−５）業務一覧に登録された全ての分析業務の評価値を算出した場合、業務探索部１３２は、分析業務の評価値と閾値とを比較し、比較結果に基づいて、業務一覧を更新する。例えば、業務探索部１３２は、分析業務の評価値が閾値より小さい分析業務を業務一覧から削除する。なお、閾値は任意に設定できる。以上がステップＳ５０２の処理の説明である。
【０１７４】
次に、業務探索部１３２は、分析業務を実行した分析者の評価値に基づく絞込処理を実行する（ステップＳ５０３）。当該処理によって、評価の高い分析者が実行した分析業務が選択される。具体的には、以下のような処理が実行される。
【０１７５】
（Ｓ５０３−１）業務探索部１３２は、業務一覧に登録された分析業務の中からターゲット分析業務を選択する。
【０１７６】
（Ｓ５０３−２）業務探索部１３２は、分析者管理情報１４０を参照し、分析者ＩＤ２０１がターゲット分析業務を実行した分析者の識別情報（分析者４０３の値）と一致するエントリを検索する。業務探索部１３２は、検索されたエントリの分析者スコア２０３を分析者の評価値として取得する。
【０１７７】
（Ｓ５０３−３）業務探索部１３２は、業務一覧に登録された全ての分析業務を実行した分析者の評価値を取得したか否かを判定する。業務一覧に登録された全ての分析業務を実行した分析者の評価値を取得していない場合、業務探索部１３２は、（Ｓ５０３−１）に戻り、同様の処理を実行する。
【０１７８】
（Ｓ５０３−４）業務一覧に登録された全ての分析業務を実行した分析者の評価値を取得した場合、業務探索部１３２は、分析者の評価値と閾値とを比較し、比較結果に基づいて、業務一覧を更新する。例えば、業務探索部１３２は、分析者の評価値が閾値より小さい分析業務を業務一覧から削除する。なお、閾値は任意に設定できる。以上がステップＳ５０３の処理の説明である。
【０１７９】
各絞込処理が実行された後の業務一覧に登録された分析業務が参考業務となる。
【０１８０】
次に、業務探索部１３２は、業務一覧に登録された参考業務のログを分析者に提示する（ステップＳ５０４）。
【０１８１】
このとき、業務探索部１３２は、分析業務の評価値及び分析者の評価値に基づいて業務一覧の分析業務をソートしてもよい。例えば、業務探索部１３２は、分析業務の評価値の降順に分析業務をソートする。分析業務の評価値が同一の分析業務については、業務探索部１３２は、分析者の評価値の降順に分析業務をソートする。
【０１８２】
また、業務探索部１３２は、分析業務の評価値及び分析者の評価値に基づいて、所定の数の分析業務を選択し、選択された分析業務のログを提示してもよい。
【０１８３】
次に、業務探索部１３２は、分析者が参考業務を選択したか否かを判定する（ステップＳ５０５）。
【０１８４】
分析者が参考業務を選択していないと判定された場合、業務探索部１３２は処理を終了する。このとき、業務探索部１３２は、ワークエリア１１２から業務一覧を削除し、主要処理部１２１に処理の終了を通知する。
【０１８５】
分析者が参考業務を選択したと判定された場合、業務探索部１３２は、選択された参考業務の識別情報をワークエリア１１２に格納する（ステップＳ５０６）。
【０１８６】
次に、業務探索部１３２は、参考業務の作業の組合せに基づいて、新規業務の作業を構築する（ステップＳ５０７）。その後、業務探索部１３２は処理を終了する。このとき、業務探索部１３２は、ワークエリア１１２から業務一覧を削除し、主要処理部１２１に処理の終了を通知する。
【０１８７】
具体的には、業務探索部１３２は、参考業務の識別情報に基づいて、作業管理情報１４３、作業詳細管理情報１４４、及び操作ログ管理情報１４５から参考業務の作業の組合せに関する情報を取得する。業務探索部１３２は、新規分析業務の識別情報及び分析者の識別情報に基づいて、インプットファイル及びアウトプットファイルの格納先を決定する。業務探索部１３２は、参考業務の作業の組合せに関する情報、並びに、インプットファイル及びアウトプットファイルの格納先の情報をワークエリア１１２に格納する。
【０１８８】
なお、ステップＳ５０３の処理は省略されてもよい。
【０１８９】
図１４は、実施例１の評価部１３３が実行する処理の一例を説明するフローチャートである。
【０１９０】
評価部１３３は、分析業務の結果に対する評価に基づいて、分析業務の結果のスコアリングを実行する（ステップＳ６０１）。
【０１９１】
評価部１３３は、評価対象の分析業務の結果に対する評価、及び、当該分析業務の作業の組合せの一部を流用した分析業務の結果に対する評価に基づいて、評価対象の分析業務の結果のスコアを算出する。具体的には、以下のような処理が実行される。
【０１９２】
（Ｓ６０１−１）評価部１３３は、業務管理情報１４２を参照し、業務ＩＤ４０１の値が評価対象の分析業務の識別情報と一致するエントリを検索する。評価部１３３は、検索されたエントリの評価４０５の値を取得し、当該値からスコアを算出する。評価部１３３は、算出されたスコアをワークエリア１１２に格納する。このとき、評価部１３３は、検索されたエントリの分析者ＩＤ４０３の値をワークエリア１１２に格納する。
【０１９３】
例えば、評価４０５の値が数値の場合、評価部１３３は、当該数値をスコアとして算出する。評価４０５の値が文字列又は記号の場合、評価部１３３は、変換規則にしたがって、文字列又は記号からスコアを算出する。なお、変換規則は予め設定される。
【０１９４】
（Ｓ６０１−２）評価部１３３は、作業管理情報１４３を参照し、業務ＩＤ５０１の値が評価対象の分析業務の識別情報と一致するエントリを検索する。検索されたエントリの作業ＩＤ５０２の値をワークエリア１１２に格納する。また、評価部１３３は、検索されたエントリの手順５０３に基づいて、評価対象の分析業務の最終作業を特定する。
【０１９５】
（Ｓ６０１−３）評価部１３３は、作業詳細管理情報１４４を参照し、作業ＩＤ６０１の値が特定された最終作業の識別情報と一致するエントリを検索する。評価部１３３は、検索されたエントリの第２スコア６０８の値に、ワークエリア１１２に格納されるスコアを加算する。
【０１９６】
ここでは、分析業務が評価されるたびに実行されるものとしているが、一定期間、分析業務の評価を蓄積した後に処理を実行してもよい。この場合、評価部１３３は、目的及び最終作業が同一である分析業務を特定する。すなわち、基準の分析業務と、当該分析業務を流用した分析業務とが特定される。評価部１３３は、特定された分析業務のスコアの合計値を第２スコア６０８に加算する。以上がステップＳ６０１の処理の説明である。
【０１９７】
次に、評価部１３３は、分析業務の結果に対する評価に基づいて、分析者のスコアリングを実行する（ステップＳ６０２）。
【０１９８】
評価部１３３は、分析業務における作業の流用結果に基づいて、分析者のスコアを算出する。具体的には、以下のような処理が実行される。
【０１９９】
（Ｓ６０２−１）評価部１３３は、作業管理情報１４３を参照し、最終作業が評価対象の分析業務の最終作業と同一である分析業務を特定する。評価部１３３は、業務管理情報１４２を参照し、業務ＩＤ４０１の値が特定された分析業務の識別情報と一致するエントリを検索する。このとき、評価対象の分析業務は検索対象から除外される。
【０２００】
（Ｓ６０２−２）評価部１３３は、評価対象の分析業務の作業の組合せからターゲット作業を選択する。
【０２０１】
（Ｓ６０２−３）評価部１３３は、検索されたエントリに対応する分析業務の中からターゲット作業を含む分析業務を特定する。評価部１３３は、検索された分析業務の完了日時４０６が評価対象の分析業務の完了日時４０６より前の分析業務を特定する。すなわち、評価対象の分析業務の実行前に実行された分析業務が特定される。さらに、評価部１３３は、特定された分析業務のうち、完了日時４０６が最も過去の分析業務を特定する。評価部１３３は、特定された分析業務の識別情報をワークエリア１１２に格納する。なお、すでに、同一の分析業務の識別情報がワークエリア１１２に格納されている場合、評価部１３３は、分析業務の識別情報の格納は行わない。
【０２０２】
ここで、（Ｓ６０２−３）は、評価対象の分析業務が流用している作業を最初に実行した分析業務を特定するための処理である。
【０２０３】
（Ｓ６０２−４）評価部１３３は、評価対象の分析業務の全ての作業について処理が完了したか否かを判定する。評価対象の分析業務の全ての作業について処理が完了していない場合、評価部１３３は、（Ｓ６０２−２）に戻り、同様の処理を実行する。
【０２０４】
（Ｓ６０２−５）評価対象の分析業務の全ての作業について処理が完了した場合、評価部１３３は、ワークエリア１１２に格納される分析業務の識別情報を一つ取得する。評価部１３３は、業務管理情報１４２を参照し、業務ＩＤ４０１の値が取得した分析業務の識別情報と一致するエントリを検索する。評価部１３３は、検索されたエントリの分析者ＩＤ４０３の値が、評価対象の分析業務の分析者の識別情報と一致するか否かを判定する。すなわち、二つの分析業務の分析者が同一である否かが判定される。
【０２０５】
（Ｓ６０２−６）二つの分析業務の分析者が同一であると判定された場合、評価部１３３は、特定された全ての分析業務について処理が完了したか否かを判定する。二つの分析業務の分析者が異なると判定された場合、評価部１３３は、分析者管理情報１４０を参照し、分析者ＩＤ２０１の値が、検索されたエントリの分析者ＩＤ４０３の値と一致するエントリを検索する。評価部１３３は、検索されたエントリの分析者スコア２０３の値に、ワークエリア１１２に格納されるスコアを加算する。その後、評価部１３３は、特定された全ての分析業務について処理が完了したか否かを判定する。
【０２０６】
なお、評価部１３３は、評価対象の分析業務と検索された分析業務とに含まれる作業の一致度から決定される係数及びスコアに基づいて、加算する値を算出してもよい。
【０２０７】
（Ｓ６０２−７）特定された全ての分析業務について処理が完了していない場合、評価部１３３は、（Ｓ６０２−５）に戻り、同様の処理を実行する。特定された全ての分析業務について処理が完了した場合、評価部１３３はステップＳ６０２の処理を終了する。
【０２０８】
ここでは、分析業務が評価されるたびに実行されるものとしているが、一定期間、分析業務の評価を蓄積した後に処理を実行してもよい。この場合、評価部１３３は、目的及び最終作業が同一である分析業務を特定する。すなわち、基準の分析業務と、当該分析業務を流用した分析業務とが特定される。評価部１３３は、基準の分析業務を実行した分析者に対応するエントリの分析者スコア２０３に、特定された分析業務のスコアの合計値を加算する。
【０２０９】
分析業務の流用結果を反映した分析者のスコアリングを行うことによって、分析者の経験及び能力等を客観的に評価することができる。以上がステップＳ６０２の処理を説明である。
【０２１０】
次に、評価部１３３は、分析業務の結果に対する評価に基づいて、当該分析業務に含まれる作業のスコアリングを実行する（ステップＳ６０３）。その後、評価部１３３は処理を終了する。このとき、評価部１３３は、評価部１３３を呼び出した分析業務支援部１１０又は主要処理部１２１に処理の終了を通知する。
【０２１１】
評価部１３３は、評価対象の分析業務の結果に対する評価、及び、当該分析業務の作業の組合せの一部を流用した分析業務の結果に対する評価に基づいて、評価対象の分析業務に含まれる作業のスコアを算出する。具体的には、以下のような処理が実行される。
【０２１２】
（Ｓ６０３−１）評価部１３３は、作業管理情報１４３を参照し、業務ＩＤ５０１の値が評価対象の分析業務の識別情報と一致するエントリを検索する。
【０２１３】
（Ｓ６０３−２）評価部１３３は、検索されたエントリに対応する作業の中からターゲット作業を選択する。
【０２１４】
（Ｓ６０３−３）評価部１３３は、作業詳細管理情報１４４を参照し、作業ＩＤ６０１の値がターゲット作業の識別情報と一致するエントリを検索する。評価部１３３は、検索されたエントリの第１スコア６０７の値に、ワークエリア１１２に格納されるスコアを加算する。
【０２１５】
（Ｓ６０３−４）評価部１３３は、評価対象の分析業務に含まれる全ての作業に対して処理を実行したか否かを判定する。
【０２１６】
（Ｓ６０３−５）評価対象の分析業務に含まれる全ての作業に対して処理を実行していないと判定された場合、評価部１３３は、（Ｓ６０３−２）に戻り、同様の処理を実行する。評価対象の分析業務に含まれる全ての作業に対して処理を実行したと判定された場合、評価部１３３はステップＳ６０３の処理を終了する。
【０２１７】
ここでは、分析業務が評価されるたびに実行されるものとしているが、一定期間、分析業務の評価を蓄積した後に処理を実行してもよい。この場合、評価部１３３は、目的及び最終作業が同一である分析業務を特定する。すなわち、基準の分析業務と、当該分析業務を流用した分析業務とが特定される。評価部１３３は、基準の分析業務及び特定された分析業務のスコアの合計値を、各分析業務に含まれる作業に対応するエントリの第１スコア６０７に加算する。
【０２１８】
分析業務の流用結果を反映した作業のスコアリングを行うことによって、分析業務の有用性を効率的かつ正確に評価することができる。以上がステップＳ６０３の処理の説明である。
【０２１９】
なお、ステップＳ６０２及びステップＳ６０３の処理は入れ替えてもよい。
【０２２０】
ここで、評価部１３３が実行する処理の概念について説明する。図１５Ａ、図１５Ｂ、図１５Ｃ、及び図１５Ｄは、実施例１の評価部１３３が実行する処理の概念を説明する図である。
【０２２１】
ここでは、分析者「Ｕ００１」が、分析業務Ａ１０１、分析業務Ａ１０２、分析業務Ａ１０３を実行し、次に、分析者「Ｕ００２」が、分析業務Ａ２０１、分析業務Ａ２０２、分析業務Ａ２０３を実行し、次に、分析者「Ｕ００３」が、分析業務Ａ３０１、分析業務Ａ３０２、分析業務Ａ３０３を実行したものとする。
【０２２２】
分析業務Ａ１０１の作業の組合せは、Ｓ０００１、Ｓ０００２、Ｓ０００３であり、分析業務Ａ１０２の作業の組合せは、Ｓ０００１、Ｓ０００４、Ｓ０００５、Ｓ０００６であり、分析業務Ａ１０３の作業の組合せは、Ｓ０００１、Ｓ０００４、Ｓ０００７、Ｓ０００８である。
【０２２３】
分析業務Ａ２０１の作業の組合せは、Ｓ０２０１、Ｓ０２０２、Ｓ０２０３であり、分析業務Ａ２０２の作業の組合せは、Ｓ０２０４、Ｓ０００４、Ｓ０００７、Ｓ０００８であり、分析業務Ａ２０３の作業の組合せは、Ｓ０２０４、Ｓ０００４、Ｓ０２０５、Ｓ０２０６である。
【０２２４】
分析業務Ａ２０２及び分析業務Ａ２０３は、分析者「Ｕ００１」が実行した分析業務の作業の組合せに含まれる作業の一部を流用している。
【０２２５】
分析業務Ａ３０１の作業の組合せは、Ｓ０３０１、Ｓ０００４、Ｓ０２０５、Ｓ０２０６であり、分析業務Ａ３０２の作業の組合せは、Ｓ０３０１、Ｓ０００４、Ｓ０００５、Ｓ０００６であり、分析業務Ａ３０３の作業の組合せは、Ｓ０３０１、Ｓ０００４、Ｓ０００７、Ｓ０００８である。
【０２２６】
分析業務Ａ３０１は、分析者「Ｕ００１」及び分析者「Ｕ００２」が実行した分析業務の作業の組合せに含まれる作業の一部を流用している。分析業務Ａ３０２及び分析業務Ａ３０３は、分析者「Ｕ００１」が実行した分析業務の作業の組合せに含まれる作業の一部を流用している。
【０２２７】
分析者の評価は、「まる」、「さんかく」、「ばつ」のいずれかであるものとする。また、「ばつ」のスコアを「０」、「さんかく」のスコアを「１」、「まる」のスコアを「２」と変換するための変換規則が評価部１３３に設定されているものとする。
【０２２８】
ここで、分析業務の目的、分析者、分析業務の作業の組合せ、分析業務の結果の関係を示す有向グラフを構築する。具体的には、分析業務の目的を表すノードに分析者を表すノードを接続し、分析者を表すノードに分析業務の作業の組合せを表すノード群を接続し、分析業務の最終作業に対応するノードの結果を表すノードを接続する。これによって、図１５Ａに示すような有向グラフを構築できる。ノード１５０１は分析業務の目的を表すノードであり、ノード１５０２はユーザを表すノードであり、ノード１５０３は作業を表すノードであり、ノード１５０４は分析業務の結果を表すノードである。分析業務の作業の組合せは、作業を表すノード１５０３から構成される有向グラフとして表される。ノード１５０２、１５０３、１５０４には初期スコア「０」が設定される。なお、ノード１５０２に設定されるスコアは分析者の評価値（分析者スコア２０３）に対応し、ノード１５０３に設定されるスコアは作業の評価値（第１スコア６０７）に対応し、ノード１５０４に設定されるスコアは分析業務の結果の評価値（第２スコア６０８）に対応する。
【０２２９】
以下の説明では、ノード１５０１をルートノード、ノード１５０２をユーザノード、ノード１５０３を作業ノード、ノード１５０４を結果ノードと記載する。
【０２３０】
図１５Ｂに示すように、分析者「Ｕ００１」が分析業務Ａ１０１の結果に対して評価「ばつ」を設定し、分析業務Ａ１０２の結果に対して評価「さんかく」を設定し、分析業務Ａ１０３の結果に対して評価「まる」を設定した場合の評価値の状態を示す。
【０２３１】
評価部１３３は、分析業務Ａ１０１の結果に対する評価に基づいて、結果ノード「Ｓ０００３」に「０」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０００１」、「Ｓ０００２」、「Ｓ０００３」に「０」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ１０２の結果に対する評価に基づいて、結果ノード「Ｓ０００６」に「１」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０００１」、「Ｓ０００４」、「Ｓ０００５」、「Ｓ０００６」に「１」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ１０３の結果に対する評価に基づいて、結果ノード「Ｓ０００８」に「２」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０００１」、「Ｓ０００４」、「Ｓ０００７」、「Ｓ０００８」に「２」を加算する（ステップＳ６０３）。
【０２３２】
分析業務Ａ１０１及び分析業務Ａ１０２は、他の分析者の作業を流用していないため分析者のスコアリングは実行されない。
【０２３３】
図１５Ｃに示すように、分析者「Ｕ００２」が分析業務Ａ２０１の結果に対して評価「ばつ」を設定し、分析業務Ａ２０２の結果に対して評価「さんかく」を設定し、分析業務Ａ２０３の結果に対して評価「まる」を設定した場合の評価値の状態を示す。
【０２３４】
評価部１３３は、分析業務Ａ２０１の結果に対する評価に基づいて、結果ノード「Ｓ２００３」に「０」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０２０１」、「Ｓ０２０２」、「Ｓ０２０３」に「０」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ２０２の結果に対する評価に基づいて、結果ノード「Ｓ０００８」に「１」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０２０４」、「Ｓ０００４」、「Ｓ０００７」、「Ｓ０００８」に「１」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ２０３の結果に対する評価に基づいて、結果ノード「Ｓ０２０６」に「２」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０２０４」、「Ｓ０００４」、「Ｓ０２０５」、「Ｓ０２０６」に「２」を加算する（ステップＳ６０３）。
【０２３５】
分析業務Ａ２０１は分析業務Ａ１０２の最終作業と同一であり、かつ、分析業務Ａ１０２の作業を流用している。そのため、評価部１３３は、分析業務Ａ２０２の結果に対する評価に基づいて、ユーザノード「Ｕ０００１」に「１」を加算する（ステップＳ６０２）。
【０２３６】
図１５Ｄに示すように、分析者「Ｕ００３」が分析業務Ａ３０１の結果に対して評価「さんかく」を設定し、分析業務Ａ３０２の結果に対して評価「さんかく」を設定し、分析業務Ａ３０３の結果に対して評価「まる」を設定した場合の評価値の状態を示す。
【０２３７】
評価部１３３は、分析業務Ａ３０１の結果に対する評価に基づいて、結果ノード「Ｓ２００６」に「１」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０３０１」、「Ｓ０００４」、「Ｓ０２０５」、「Ｓ０２０６」に「１」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ３０２の結果に対する評価に基づいて、結果ノード「Ｓ０００６」に「１」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０３０１」、「Ｓ０００４」、「Ｓ０００５」、「Ｓ０００６」に「１」を加算する（ステップＳ６０３）。評価部１３３は、分析業務Ａ３０３の結果に対する評価に基づいて、結果ノード「Ｓ０２０８」に「２」を加算し（ステップＳ６０１）、また、作業ノード「Ｓ０３０１」、「Ｓ０００４」、「Ｓ０００７」、「Ｓ０００８」に「２」を加算する（ステップＳ６０３）。
【０２３８】
分析業務Ａ３０１は分析業務Ａ２０３の最終作業と同一であり、かつ、分析業務Ａ２０３の作業を流用している。そのため、評価部１３３は、分析業務Ａ３０１の結果に対する評価に基づいて、ユーザノード「Ｕ０００２」に「１」を加算する（ステップＳ６０２）。分析業務Ａ３０２は分析業務Ａ１０２の最終作業と同一であり、かつ、分析業務Ａ１０２の作業を流用している。そのため、評価部１３３は、分析業務Ａ３０２の結果に対する評価に基づいて、ユーザノード「Ｕ０００１」に「１」を加算する（ステップＳ６０２）。分析業務Ａ３０３は分析業務Ａ１０３の最終作業と同一であり、かつ、分析業務Ａ１０３の作業を流用している。そのため、評価部１３３は、分析業務Ａ３０３の結果に対する評価に基づいて、ユーザノード「Ｕ０００１」に「２」を加算する（ステップＳ６０２）。
【０２３９】
図１５Ｄに示すようなスコアの状態において、業務探索部１３２が処理を実行した場合、分析業務Ａ１０１、１０２、１０３、２０１、２０２、２０３、３０１、３０２、３０３の各々の評価値は、「３」、「１７」、「２３」、「０」、「２３」、「１９」、「２０」、「１８」、「２４」となる。
【０２４０】
ステップＳ５０２において閾値を「２０」と設定した場合、業務一覧には分析業務Ａ１０３、２０２、３０１、３０３が残っている。また、ステップＳ５０３において閾値を「１」と設定した場合、業務一覧には分析業務Ａ１０３、２０２が残る。ステップＳ５０４では、評価部１３３は、例えば、分析業務Ａ１０３を参考業務として提示する。なお、評価部１３３は、図１５Ｄに示すような有向グラフを提示してもよい。
【０２４１】
図１６は、実施例１の事前処理部１２０が実行する処理の一例を説明するフローチャートである。
【０２４２】
事前処理部１２０は、対話方式のＵＩを提示し、当該ＵＩを介して実行ファイル１４６の登録要求を受け付ける。当該要求には実行ファイル１４６の実体となるデータが含まれる。
【０２４３】
事前処理部１２０は、実行ファイル１４６の登録要求を受け付けた場合、実行ファイル１４６を登録し（ステップＳ７０１）、その後、処理を終了する。このとき、事前処理部１２０は分析業務支援部１１０に処理の終了を通知する。
【０２４４】
実施例１によれば、計算機１００は、分析業務の結果に対する評価に基づいて算出された分析業務の評価値及び分析者の評価値を用いて、新規分析業務の作業の組合せを決定するために参考となる分析業務のログを提示することができる。
【０２４５】
分析者は、提示された分析業務のログを参考に分析業務を実行することができる。したがって、分析者が初心者であっても、一定以上の有用な結果を得られる分析業務を実行することができる。また、分析者は、提示された分析業務を参照することによって、分析業務のノウハウ等を取得することができる。また、過去の分析業務を流用することによって、分析業務に要するコストを削減することができる。
【０２４６】
なお、本発明では分析業務以外の業務についても適用することができる。例えば、複数の製造作業を含む製造業務にも適用することができる。
【実施例２】
【０２４７】
実施例２は、業務探索部１３２が実行する処理が一部異なる。以下、実施例１との差異を中心に実施例２について説明する。
【０２４８】
図１７は、実施例２の計算機１００のハードウェア構成及びソフトウェア構成の一例を説明する図である。
【０２４９】
実施例２の計算機１００のハードウェア構成は実施例１と同一である。
【０２５０】
実施例２では、副記憶装置１０５にインプットデータ１４７が格納される点が実施例１と異なる。インプットデータ１４７は分析業務の各作業において入力されるデータである。
【０２５１】
実施例２では、主要処理部１２１が、新たに、入力部１３４を含む。また、業務探索部１３２は類似判定処理部１３５を含む。
【０２５２】
入力部１３４は、インプットデータ１４７を登録する。類似判定処理部１３５はインプットデータ１４７間の類似性を判定する。
【０２５３】
実施例２では、作業管理情報１４３が一部異なる。その他の情報については実施例１と同一である。
【０２５４】
図１８は、実施例２の作業管理情報１４３のデータ構造の一例を示す図である。
【０２５５】
作業管理情報１４３に格納されるエントリは、新たに、インプットデータ５０４を含む。インプットデータ５０４は、インプットデータ１４７の識別情報を格納するフィールドである。例えば、ファイル名等がインプットデータ５０４に格納される。
【０２５６】
なお、計算機１００は、インプットデータ１４７を管理するための情報を保持してもよい。例えば、分析業務、作業、及びインプットデータ１４７を対応づけてエントリを格納する情報が考えられる。この場合、作業管理情報１４３のインプットデータ５０４は必要ない。
【０２５７】
分析業務支援部１１０、作業管理部１３１、評価部１３３、及び事前処理部１２０が実行する処理は実施例１と同一である。
【０２５８】
図１９は、実施例２の主要処理部１２１が実行する処理の一例を説明するフローチャートである。
【０２５９】
主要処理部１２１は、分析者から新規分析業務の目的の入力を受け付けた後（ステップＳ２０１）、入力部１３４を呼び出す（ステップＳ２５１）。
【０２６０】
入力部１３４は、分析者からインプットデータ１４７を取得し、副記憶装置１０５にインプットデータ１４７を格納する。このとき、入力部１３４は、インプットデータ１４７の識別情報をワークエリア１１２に格納する。
【０２６１】
ステップＳ２０１からステップＳ２０６までの処理は実施例１の処理と同一であるため詳細な説明は省略する。
【０２６２】
業務管理部１３０が実行する処理の流れは実施例１と同一である。ただし、ステップＳ３０５、Ｓ３０８の処理が一部異なる。具体的には、業務管理部１３０は、業務管理情報１４２にエントリを追加し、追加されたエントリの業務ＩＤ５０１及び作業ＩＤ５０２に、新規分析業務の識別情報及び作業管理部１３１によって実行された作業の識別情報を設定する。また、業務管理部１３０は、追加されたエントリの手順に５０３に前回の作業の手順に１を加算した値を設定する。さらに、業務管理部１３０は、追加されたエントリのインプットデータ５０４に、作業で用いられたインプットデータ１４７の識別情報を設定する。インプットデータ１４７の識別情報はワークエリア１１２から取得される。
【０２６３】
図２０は、実施例２の業務探索部１３２が実行する処理の一例を説明するフローチャートである。
【０２６４】
業務探索部１３２は、ステップＳ５０１の処理が実行された後、新規分析業務で扱われるインプットデータと、特定された分析業務で扱われたインプットデータの類似度を算出する（ステップＳ５５１）。具体的には、以下のような処理が実行される。
【０２６５】
（Ｓ５５１−１）類似判定処理部１３５は、業務一覧に登録された分析業務の中からターゲット分析業務を選択する。
【０２６６】
（Ｓ５５１−２）類似判定処理部１３５は、作業管理情報１４３を参照し、業務ＩＤ５０１の値がターゲット分析業務の識別情報と一致するエントリを検索する。類似判定処理部１３５は、検索されたエントリのインプットデータ５０４に基づいて、ターゲット分析業務で扱われるインプットデータ１４７を取得する。
【０２６７】
（Ｓ５５１−３）類似判定処理部１３５は、新規分析業務で扱われるインプットデータと、ターゲット分析業務で扱われるインプットデータ１４７との類似度を算出する。
【０２６８】
例えば、類似判定処理部１３５は、インプットデータ１４７の名称類似度を算出する。また、類似判定処理部１３５は、インプットデータ１４７のヘッダ等を参照して、カラム数及びカラム名の類似度を算出する。前述の類似度の算出方法は一例であってこれに限定されない。類似度としては、例えば、ユークリッド距離、ピアソンの積率相関係数、及びＪａｃｃａｒｄ係数を用いることが考えられる。
【０２６９】
（Ｓ５５１−４）類似判定処理部１３５は、業務一覧に登録された全ての分析業務について処理が完了したか否かを判定する。業務一覧に登録された全ての分析業務について処理が完了していない場合、類似判定処理部１３５は、（Ｓ５５１−１）に戻り、同様の処理を実行する。業務一覧に登録された全ての分析業務について処理が完了した場合、類似判定処理部１３５はステップＳ５５１の処理を終了する。以上がステップＳ５５１の処理の説明である。
【０２７０】
次に、業務探索部１３２は、インプットデータの類似度に基づく絞込処理を実行する（ステップＳ５５２）。
【０２７１】
具体的には、業務探索部１３２は、インプットデータの類似度と閾値とを比較し、比較結果に基づいて、業務一覧を更新する。例えば、業務探索部１３２は、インプットデータの類似度が閾値より小さい分析業務を業務一覧から削除する。なお、閾値は任意に設定できる。
【０２７２】
ステップＳ５０２、ステップＳ５０４からステップＳ５０７の処理は実施例１と同一である。なお、図２０に示す処理では、ステップＳ５０３の処理は省略されているが、ステップＳ５０３の処理が実行されてもよい。
【０２７３】
実施例２によれば、扱うデータが類似する分析業務の中から参考業務として提示する分析業務を選択できる。
【実施例３】
【０２７４】
実施例３では、計算機１００は、参考業務を参考に実行された分析業務の結果に対する評価に基づいて、参考業務の選択方法を変更する。以下、実施例１との差異を中心に実施例３について説明する。
【０２７５】
実施例３の計算機１００のハードウェア構成及びソフトウェア構成は実施例１と同一である。実施例３の計算機１００が保持する情報は実施例１と同一である。
【０２７６】
実施例３の分析業務支援部１１０、業務管理部１３０、評価部１３３、及び事前処理部１２０が実行する処理は実施例１と同一である。
【０２７７】
実施例３の作業管理部１３１が実行する処理の流れは実施例１と同一である。ただし、ステップＳ４０５において、実行された作業が参考作業であると判定された場合、作業管理部１３１は、参考業務の作業を流用したことを示す第１フラグを、流用した作業を含む分析業務の識別情報と紐づけてワークエリア１１２に格納する。
【０２７８】
実施例３では、主要処理部１２１及び業務探索部１３２が実行する処理が一部異なる。
【０２７９】
図２１は、実施例３の主要処理部１２１が実行する処理の一例を説明するフローチャートである。
【０２８０】
ステップＳ２０１からステップＳ２０６までの処理は実施例１と同一の処理である。ステップＳ２０６の処理が実行された後、主要処理部１２１は、新規分析業務の結果に対する分析者の評価に基づいて、分析業務を再度実行するか否かを判定する（ステップＳ２６１）。
【０２８１】
例えば、新規分析業務の結果に対する評価が「まる」でない場合、主要処理部１２１は、分析業務を再度実行すると判定する。また、今回実行した分析業務の結果に対する評価が、前回実行した分析業務の結果に対する評価より低くなった場合、主要処理部１２１は、分析業務を再度実行すると判定する。
【０２８２】
分析業務を再度実行しないと判定された場合、主要処理部１２１は処理を終了する。
【０２８３】
分析業務を再度実行すると判定された場合、主要処理部１２１は、再実行を示す第２フラグをワークエリア１１２に格納し、ステップＳ２０２に戻る。
【０２８４】
図２２は、実施例３の業務探索部１３２が実行する処理の一例を説明するフローチャートである。
【０２８５】
業務探索部１３２は、ステップＳ５０１の処理の実行後、選択方法を変更するか否かを判定する（ステップＳ５６１）。
【０２８６】
具体的には、業務探索部１３２は、ワークエリア１１２に第２フラグが存在するか否かを判定する。ワークエリア１１２に第２フラグが存在する場合、業務探索部１３２は、選択方法を変更すると判定する。
【０２８７】
選択方法を変更しないと判定された場合、業務探索部１３２はステップＳ５０２に進む。
【０２８８】
選択方法を変更すると判定された場合、業務探索部１３２は、前回の分析業務において参考業務が流用されたか否かを判定する（ステップＳ５６２）。
【０２８９】
具体的には、業務探索部１３２は、ワークエリア１１２に第１フラグが存在するか否かを判定する。ワークエリア１１２に第１フラグが存在する場合、業務探索部１３２は、前回の分析業務において参考業務が流用されたと判定する。
【０２９０】
前回の分析業務において参考業務が流用されていないと判定された場合、業務探索部１３２は、ワークエリア１１２から第１フラグを削除した後、ステップＳ５０２に進む。
【０２９１】
前回の分析業務において参考業務が流用されたと判定された場合、業務探索部１３２は、実行時刻に基づく絞込処理を実行する（ステップＳ５６３）。具体的には、以下のような処理が実行される。
【０２９２】
（Ｓ５６３−１）業務探索部１３２は、作業管理情報１４３を参照し、業務ＩＤ５０１の値がワークエリアに第１フラグに紐づけられる分析業務の識別情報と一致するエントリを検索する。業務探索部１３２は、検索されたエントリの手順５０３に基づいて、分析業務の最終作業を特定する。
【０２９３】
（Ｓ５６３−２）業務探索部１３２は、作業管理情報１４３を参照して、最終作業が、特定された最終作業と一致する分析業務を特定する。
【０２９４】
（Ｓ５６３−３）業務探索部１３２は、業務管理情報１４２を参照し、特定された分析業務に対応するエントリを検索する。業務探索部１３２は、検索されたエントリの完了日時４０６を取得し、最も新しい完了日時を特定する。
【０２９５】
（Ｓ５６３−４）業務探索部１３２は、業務一覧に登録されている分析業務の完了日時４０６に基づいて、特定された完了日時より前に実行された分析業務を業務一覧から削除する。業務探索部１３２は、ワークエリア１１２から第１フラグ、第２フラグ、第２フラグに紐づけられる分析業務の識別情報を削除する。以上がステップＳ５６３の処理の説明である。
【０２９６】
次に、業務探索部１３２は、分析業務の評価値に基づく絞込処理を実行し（ステップＳ５６４）、その後、ステップＳ５０４に進む。ステップＳ５６４の処理はステップＳ５０２の処理と同一である。
【０２９７】
実施例３によれば、実行日時が最新の分析業務を参考業務として選択することできる。
【０２９８】
なお、以下のような処理でもよい。計算機１００は、１回目に分析業務の評価値に基づく絞込処理を実行する。当該絞込処理に基づいて提示された作業の組合せを参考に実行された分析業務の結果が悪い場合、計算機１００は、分析者の評価値、インプットデータの類似度、又は時刻のいずれかに基づく絞込処理を実行する。
【０２９９】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０３００】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０３０１】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｐｙｔｈｏｎ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０３０２】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０３０３】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０３０４】
１００  計算機
１０１  ＣＰＵ
１０２  光学ドライブ
１０３  ネットワークインタフェース
１０４  主記憶装置
１０５  副記憶装置
１０６  内部バス
１０７  入力装置
１０８  出力装置
１１０  分析業務支援部
１１１  ＯＳ
１１２  ワークエリア
１２０  事前処理部
１２１  主要処理部
１２２  データ管理部
１３０  業務管理部
１３１  作業管理部
１３２  業務探索部
１３３  評価部
１３４  入力部
１３５  類似判定処理部
１４０  分析者管理情報
１４１  目的管理情報
１４２  業務管理情報
１４３  作業管理情報
１４４  作業詳細管理情報
１４５  操作ログ管理情報
１４６  実行ファイル
１４７  インプットデータ
１５０  ネットワーク
１２００  ＵＩ
【図１】
0006901533.tif 000002
【図２】
0006901533.tif 000003
【図３Ａ】
0006901533.tif 000004
【図３Ｂ】
0006901533.tif 000005
【図４】
0006901533.tif 000006
【図５】
0006901533.tif 000007
【図６】
0006901533.tif 000008
【図７】
0006901533.tif 000009
【図８】
0006901533.tif 000010
【図９】
0006901533.tif 000011
【図１０】
0006901533.tif 000012
【図１１】
0006901533.tif 000013
【図１２Ａ】
0006901533.tif 000014
【図１２Ｂ】
0006901533.tif 000015
【図１３】
0006901533.tif 000016
【図１４】
0006901533.tif 000017
【図１５Ａ】
0006901533.tif 000018
【図１５Ｂ】
0006901533.tif 000019
【図１５Ｃ】
0006901533.tif 000020
【図１５Ｄ】
0006901533.tif 000021
【図１６】
0006901533.tif 000022
【図１７】
0006901533.tif 000023
【図１８】
0006901533.tif 000024
【図１９】
0006901533.tif 000025
【図２０】
0006901533.tif 000026
【図２１】
0006901533.tif 000027
【図２２】
0006901533.tif 000028