(57)【特許請求の範囲】
【請求項１】
シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムであって、
前記シナリオ管理装置は、
前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部と、
複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信部と、
前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析部と、
前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信部と、
前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信部と、
前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析部による分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供部と、
前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録部と、
を備え、
前記シナリオ実行端末は、
前記シナリオファイルに記述された前記シナリオを実行するシナリオ実行部と、
前記シナリオ実行部が実行した前記シナリオの情報を含むログデータを前記シナリオ管理装置に送信するログ送信部とを備える、
シナリオ分析システム。
【請求項２】
前記ログデータは、前記シナリオが実行された日時の情報と、前記シナリオに含まれる前記部品シナリオの実行が成功したか失敗したかの情報とをさらに含み、
前記分析部は、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ群に含まれる前記部品シナリオと、前記シナリオ群に含まれる前記部品組み合わせと、前記ユーザ属性情報と、前記部品シナリオの前後の関係と、共起する部品シナリオと、実行の成功と、実行の失敗と、シナリオにおける出現頻度と、実行タイミングと、実行頻度との少なくとも一部について相関的な分析を行う、
請求項１に記載のシナリオ分析システム。
【請求項３】
前記分析部は、前記シナリオの機能の情報と、前記シナリオの目的の情報と、前記部品シナリオの機能の情報とのうち一以上をさらに用いて相関的な分析を行う、
請求項２に記載のシナリオ分析システム。
【請求項４】
前記情報提供部は、前記シナリオ作成ユーザの前記ユーザ属性情報について前記分析部が分析した前記部品組み合わせのうち、所定よりも出現頻度が高く、かつ、前記部品情報及び前記実行順情報に基づくシナリオと共通の部品シナリオが所定以上使用されている部品組み合わせを選択し、選択した前記部品組み合わせの情報を前記ユーザ端末に送信する、
請求項１から請求項３のいずれか一項に記載のシナリオ分析システム。
【請求項５】
前記シナリオ管理装置は、
前記部品情報及び前記実行順情報に基づくシナリオの正常性を確認するシナリオ確認部をさらに備える、
請求項１から請求項４のいずれか一項に記載のシナリオ分析システム。
【請求項６】
シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムにおける前記シナリオ管理装置であって、
前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部と、
複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信部と、
前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析部と、
前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信部と、
前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信部と、
前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析部による分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供部と、
前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録部と、
を備えるシナリオ管理装置。
【請求項７】
シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムが実行するシナリオ情報抽出方法であって、
前記シナリオ管理装置は、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部を備えており、
前記シナリオ管理装置が、複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信ステップと、
前記シナリオ管理装置が、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析ステップと、
前記シナリオ管理装置が、前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信ステップと、
前記シナリオ管理装置が、前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信ステップと、
前記シナリオ管理装置が、前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析ステップにおける分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供ステップと、
前記シナリオ管理装置が、前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録ステップと、
前記シナリオ実行端末が、前記シナリオファイルに記述された前記シナリオを実行するシナリオ実行ステップと、
前記シナリオ実行端末が、前記シナリオ実行ステップにおいて実行された前記シナリオの情報を含むログデータを前記シナリオ管理装置に送信するログ送信ステップと、
を有するシナリオ情報抽出方法。
【請求項８】
シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムにおける前記シナリオ管理装置が実行するシナリオ情報抽出方法であって、
前記シナリオ管理装置は、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部を備えており、
前記シナリオ管理装置が、
複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信ステップと、
前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析ステップと、
前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信ステップと、
前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信ステップと、
前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析ステップにおける分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供ステップと、
前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録ステップと、
を有するシナリオ情報抽出方法。
【請求項９】
コンピュータを、請求項６のシナリオ管理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シナリオ分析システム、シナリオ管理装置、シナリオ情報抽出方法及びプログラムに関する。
【背景技術】
【０００２】
自動化ツールの一種であるＲＰＡ（Robotic Process Automation）は、ＰＣ（パーソナルコンピュータ）等の情報処理装置を用いて人手で行っていた定型的な作業を自動で実行可能な技術である。例えば、作業手順を記述したシナリオを作成し（例えば、特許文献１参照）、ＰＣがそのシナリオを実行することで、人手で行っていた作業を再現する（例えば、特許文献２参照）。ＲＰＡにより、時間的コストや人的コストを削減し、作業ミスを低減することもできる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５０２６４５１号公報
【特許文献２】特許第４８８３６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＲＰＡのシナリオの作成に不慣れなユーザや、シナリオ作成にかかる負担を軽減したいユーザのために、事業者が予め作成したシナリオをユーザに提供することが考えられる。提供されるシナリオは、事業者がユーザに利用されると想定した機能を実現するため情報処理装置の作業手順を含む。しかし、事業者が想定したニーズとユーザのニーズとが必ずしもマッチしない可能性があった。
【課題を解決するための手段】
【０００５】
上記事情に鑑み、本発明は、自動化ツールを利用するユーザの負荷を軽減しながら、ユーザのニーズに適したシナリオの作成が可能となるよう支援することができるシナリオ分析システム、シナリオ管理装置、シナリオ情報抽出方法及びプログラムを提供することを目的としている。
【０００６】
本発明の一態様は、シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムであって、前記シナリオ管理装置は、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部と、複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信部と、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析部と、前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信部と、前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信部と、前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析部による分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供部と、前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録部と、を備え、前記シナリオ実行端末は、前記シナリオファイルに記述された前記シナリオを実行するシナリオ実行部と、前記シナリオ実行部が実行した前記シナリオの情報を含むログデータを前記シナリオ管理装置に送信するログ送信部とを備える、シナリオ分析システムである。
本発明の一態様は、上述のシナリオ分析システムであって、前記ログデータは、前記シナリオが実行された日時の情報と、前記シナリオに含まれる前記部品シナリオの実行が成功したか失敗したかの情報とをさらに含み、前記分析部は、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ群に含まれる前記部品シナリオと、前記シナリオ群に含まれる前記部品組み合わせと、前記ユーザ属性情報と、前記部品シナリオの前後の関係と、共起する部品シナリオと、実行の成功と、実行の失敗と、シナリオにおける出現頻度と、実行タイミングと、実行頻度との少なくとも一部について相関的な分析を行う。
本発明の一態様は、上述のシナリオ分析システムであって、前記分析部は、前記シナリオの機能の情報と、前記シナリオの目的の情報と、前記部品シナリオの機能の情報とのうち一以上をさらに用いて相関的な分析を行う。
【０００８】
本発明の一態様は、上述のシナリオ分析システムであって、前記情報提供部は、前記シナリオ作成ユーザの前記ユーザ属性情報について前記分析部が分析した前記部品組み合わせのうち、所定よりも出現頻度が高く、かつ、前記部品情報及び前記実行順情報に基づくシナリオと共通の部品シナリオが所定以上使用されている部品組み合わせを選択し、選択した前記部品組み合わせの情報を前記ユーザ端末に送信する。
【００１０】
本発明の一態様は、上述のシナリオ提供システムであって、前記シナリオ管理装置は、前記部品情報及び前記実行順情報に基づくシナリオの正常性を確認するシナリオ確認部をさらに備える。
【００１３】
本発明の一態様は、シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムにおける前記シナリオ管理装置であって、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部と、複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信部と、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析部と、前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信部と、前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信部と、前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析部による分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供部と、前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録部と、を備えるシナリオ管理装置である。
【００１４】
本発明の一態様は、シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムが実行するシナリオ情報抽出方法であって、前記シナリオ管理装置は、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部を備えており、前記シナリオ管理装置が、複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信ステップと、前記シナリオ管理装置が、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析ステップと、前記シナリオ管理装置が、前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信ステップと、前記シナリオ管理装置が、前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信ステップと、前記シナリオ管理装置が、前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析ステップにおける分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供ステップと、前記シナリオ管理装置が、前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録ステップと、前記シナリオ実行端末が、前記シナリオファイルに記述された前記シナリオを実行するシナリオ実行ステップと、前記シナリオ実行端末が、前記シナリオ実行ステップにおいて実行された前記シナリオの情報を含むログデータを前記シナリオ管理装置に送信するログ送信ステップと、を有するシナリオ情報抽出方法である。
【００１５】
本発明の一態様は、シナリオ管理装置と複数のシナリオ実行端末とを有するシナリオ分析システムにおける前記シナリオ管理装置が実行するシナリオ情報抽出方法であって、前記シナリオ管理装置は、前記シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルとユーザの業種、業務又は地域のいずれかを少なくとも含むユーザ属性情報との対応付けを示すユーザシナリオ管理情報、前記シナリオを実行させるユーザであるシナリオ実行ユーザの前記シナリオ実行端末において実行された前記シナリオを示すログデータ、及び、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ属性情報を記憶する記憶部を備えており、前記シナリオ管理装置が、複数の前記シナリオ実行ユーザそれぞれの前記シナリオ実行端末からログデータを受信し、前記記憶部に書き込むログ受信ステップと、前記シナリオファイル及び前記ログデータに基づいて、前記シナリオ実行端末により実行された前記シナリオ群に含まれる前記部品シナリオ又は前記シナリオ群に含まれる前記部品シナリオの組み合わせである部品組み合わせと、ユーザ属性情報との組み合わせに関する分析を行う分析ステップと、前記シナリオ作成ユーザのユーザ端末に前記部品シナリオの情報を送信する部品シナリオ情報送信ステップと、前記ユーザ端末から前記シナリオ作成ユーザが選択した前記部品シナリオを示す部品情報と選択された前記部品シナリオの実行順を示す実行順情報とを受信する作成情報受信ステップと、前記シナリオ作成ユーザが選択した前記部品シナリオ及び前記シナリオ作成ユーザのユーザ属性情報と、前記分析ステップにおける分析結果とに基づいて、使用される可能性が高い前記部品シナリオを選択し、選択した前記部品シナリオの情報を前記ユーザ端末に送信する情報提供ステップと、前記部品情報及び前記実行順情報に基づくシナリオを記述したシナリオファイルを生成し、生成した前記シナリオファイルと前記シナリオ作成ユーザの前記ユーザ属性情報の対応付けを示すユーザシナリオ管理情報を前記記憶部に登録するシナリオ登録ステップと、を有するシナリオ情報抽出方法である。
【００１６】
本発明の一態様は、コンピュータを、上述したシナリオ管理装置として機能させるためのプログラムである。
【発明の効果】
【００１７】
本発明により、ＲＰＡを利用するユーザの負荷を軽減しながら、ユーザのニーズに適したシナリオの作成が可能となるよう支援することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態によるシナリオ提供システムの構成図である。
【図２】同実施形態によるシナリオの例を示す図である。
【図３】同実施形態によるシナリオ管理装置の構成を示す機能ブロック図である。
【図４】同実施形態によるシナリオ実行端末の構成を示す機能ブロック図である。
【図５】同実施形態によるユーザ管理情報の例を示す図である。
【図６】同実施形態による部品シナリオ管理情報の例を示す図である。
【図７】同実施形態によるユーザシナリオ管理情報の例を示す図である。
【図８】同実施形態によるサービスシナリオ管理情報の例を示す図である。
【図９】同実施形態によるスケジュール情報の例を示す図である。
【図１０】同実施形態によるログデータの例を示す図である。
【図１１】同実施形態による分析情報の例を示す図である。
【図１２】同実施形態によるセット情報の例を示す図である。
【図１３】同実施形態によるシナリオ作成画面の表示例を示す図である。
【図１４】同実施形態によるシナリオ作成画面の表示例を示す図である。
【図１５】同実施形態によるシナリオ作成画面の表示例を示す図である。
【図１６】同実施形態によるシナリオ作成画面の表示例を示す図である。
【図１７】同実施形態によるシナリオ提供システムの処理を示すフロー図である。
【図１８】同実施形態によるシナリオ提供システムの処理を示すフロー図である。
【図１９】同実施形態によるシナリオ提供システムの処理を示すフロー図である。
【図２０】同実施形態によるシナリオ提供システムの処理を示すフロー図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
図１は、本発明の一実施形態によるシナリオ提供システム１の構成図である。シナリオ提供システム１は、事業者のシナリオ管理装置２と、各ユーザのシナリオ実行端末４とを備える。同図では、各ユーザをユーザＵ１〜Ｕｎ（ｎは１以上の任意の整数）と記載している。また、同図では、１ユーザのシナリオ実行端末４を１台のみ示しているが、各ユーザが使用するシナリオ実行端末４の台数は任意である。ユーザの例は、企業、学校、団体などであるが、これらに限らない。シナリオ管理装置２は、インターネットなどのネットワーク６を介して、シナリオ実行端末４と接続される。例えば、シナリオ管理装置２は、コンピュータサーバなどの情報処理装置であり、シナリオ実行端末４は、ＰＣなどの情報処理装置である。
【００２０】
シナリオ管理装置２は、シナリオ実行端末４が実行するＲＰＡ（Robotic Process Automation）のシナリオを管理する。ＲＰＡは、自動化ツールの一例である。シナリオは、シナリオ実行端末４における処理の手順を示す。シナリオには、ユーザシナリオと、サービスシナリオとがある。ユーザシナリオは、シナリオ管理装置２が提供する１以上の部品シナリオを用いてユーザが作成したシナリオである。部品シナリオは、シナリオ実行端末４において比較的小さな機能を実現するための処理の手順を示すシナリオである。一方、サービスシナリオは、事業者により作成され、ユーザに提供されるシナリオである。部品シナリオがサービスシナリオを兼ねてもよい。また、部品シナリオを複数組み合わせて一つの部品シナリオが生成されてもよい。シナリオ管理装置２が提供する部品シナリオやサービスシナリオを、シナリオ管理装置２を保有する事業者が作成してもよく、その事業者とは異なるシナリオ提供業者が作成してもよい。
【００２１】
シナリオ実行端末４は、ＲＰＡのシナリオを実行する機能を有することに加え、ユーザがユーザシナリオを作成するための指示を入力するユーザ端末として動作する。シナリオ管理装置２は、ユーザがユーザシナリオを作成する際に、部品シナリオのリストをシナリオ実行端末４に提示する。ユーザは、シナリオ実行端末４に提示されるこのリストの中から使用する部品シナリオを選択し、選択した部品シナリオの実行順番を指定することにより、部品シナリオで構成されるユーザシナリオを作成する。シナリオ管理装置２は、作成されたユーザシナリオを構成する部品シナリオの実行順番やＩ／Ｏ整合性、重複などの正常性をチェックし、シナリオ実行端末４にチェック結果を提示する。ユーザは、作成したユーザシナリオをシナリオ管理装置２に登録する。
【００２２】
ユーザはシナリオ実行端末４を用いて、自分が作成したユーザシナリオや事業者が提供するサービスシナリオの実行スケジュールをシナリオ管理装置２に登録する。シナリオ管理装置２は、登録されたスケジュールに従ってシナリオ実行端末４にユーザシナリオ又はサービスシナリオの実行ファイルをダウンロードし、実行させる。
【００２３】
シナリオ管理装置２は、ユーザＵ１〜Ｕｎのシナリオ実行端末４において過去に実行されたユーザシナリオ群を分析する。ここでは、一例として、シナリオ管理装置２が、どのような部品シナリオの組み合わせがどれくらい利用されているかの利用度を分析する場合を例に説明する。以下では、部品シナリオの組み合わせを部品組み合わせと記載する。部品組み合わせは、複数の部品シナリオと、それら部品シナリオの実行順とにより表される。つまり、２つの部品組み合わせにおいて、要素となる部品シナリオの種類が同じであっても、部品シナリオの実行順が異なっている場合は、それらは異なる部品組み合わせとする。１つの部品組み合わせの要素となる複数の部品シナリオに、同じ種類の部品シナリオが含まれてもよい。シナリオ管理装置２は、分析結果を利用して、ユーザシナリオを作成しているユーザのシナリオ実行端末４に、利用される可能性が高いと予測される部品シナリオ、又は、作成しているユーザシナリオに類似する部品組み合わせの情報を提示する。
【００２４】
また、事業者は、シナリオ管理装置２による分析結果を利用して、利用度が高い部品組み合わせを用いたサービスシナリオを作成してユーザに提供したり、利用度が高い部品組み合わせを１つの部品シナリオとしてユーザに提供したりすることができる。また、事業者はユーザに、利用度が高い部品組み合わせを含んだ複数の部品シナリオを部品シナリオセットとして販売することもできる。ユーザは、部品シナリオセットの中から部品シナリオを選択してユーザシナリオを作成するため、多数の部品シナリオの中から必要なものを選択する作業が軽減する。
【００２５】
上記により、シナリオ提供システム１は、ユーザや事業者がユーザのニーズにマッチした機能を有するシナリオを簡易かつ柔軟に生成し、シナリオ実行端末４に実行させるよう支援することができる。
【００２６】
図２は、シナリオの例を示す図である。同図に示すシナリオは、部品シナリオＡ、Ｂ、及び、Ｃを組み合わせて構成される。部品シナリオＡは、固定記述形式の部品シナリオである。固定記述形式では、部品シナリオの中に直接各処理を定義している。そのため、同じ機能を実現する部品シナリオであっても、シナリオ実行端末４の環境が異なる場合や、処理に用いる設定値が異なる場合には、別の部品シナリオとして作成しなければならない場合がある。なお、環境の例は、アプリケーション（以下、アプリと記載）の種類、アプリのバージョン、ＯＳ（Operation System）の種類、ＯＳのバージョン、シナリオ実行端末４の画面の大きさなどである。
【００２７】
部品シナリオＢ及びＣは、汎用記述形式の部品シナリオである。汎用記述形式の部品シナリオは、カスタマイズが可能である。汎用記述形式の部品シナリオは、汎用部品シナリオとカスタマイズ用ファイルとにより構成される。汎用部品シナリオは、複数のユーザのシナリオ実行端末４において使用可能なように汎用的に記述された部品シナリオである。カスタマイズ用ファイルは、ユーザのシナリオ実行端末４の環境やユーザ独自の業務運用規則等に合うように汎用部品シナリオをカスタマイズするためのファイルである。各ユーザは、シナリオに含まれる汎用部品シナリオをカスタマイズ用ファイルによりカスタマイズしてから、シナリオ実行端末４にシナリオを実行させる。
【００２８】
汎用部品シナリオは、動作を抽象化し、ユーザがカスタマイズする対象となる変数の部分を除いて記述される。ユーザは、カスタマイズ用ファイルに、変数の設定値を記述する。例えば、汎用部品シナリオには、アクセス先のＵＲＬ（Universal Resource Locator）を変数で記述しておき、カスタマイズ用ファイルには、その変数の値として、ユーザが使用するウェブサイトのＵＲＬを記述する。また、例えば、汎用部品シナリオには、実行結果のファイルの格納場所を変数で記述しておき、カスタマイズ用ファイルには、その変数の値としてファイルを格納するフォルダ名を記述する。ユーザによる汎用部品シナリオの修正は不要である。このように、部品シナリオにおいて用いられる変数部分をカスタマイズ用ファイルに外部化することで、部品シナリオを抽象化して一つの汎用部品シナリオに集約することが可能となる。ユーザは、部品シナリオＣのカスタマイズ用ファイルに、部品シナリオＢのカスタマイズ用ファイルの設定内容を参照するように記述することもできる。
【００２９】
図３は、シナリオ管理装置２の構成を示す機能ブロック図である。シナリオ管理装置２は、例えば、クラウド上の１台以上の情報処理装置（コンピュータサーバ）により実現される。シナリオ管理装置２が、ネットワーク６を介して通信可能に接続された複数台の情報処理装置を用いて実装される場合、シナリオ管理装置２が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。シナリオ管理装置２の各機能部を、いずれの情報処理装置により実装するかは任意とすることができる。また、同一の機能部を複数の情報処理装置により実現してもよい。
【００３０】
シナリオ管理装置２は、記憶部２１と、処理部２２とを有する。記憶部２１は、ユーザ管理情報と、部品シナリオ管理情報と、ユーザシナリオ管理情報と、サービスシナリオ情報と、スケジュール情報と、ログデータと、課金情報と、分析情報と、セット情報とを記憶する。
【００３１】
ユーザ管理情報は、ユーザに関する情報を示す。例えば、ユーザ管理情報は、ユーザの識別情報、名前及び属性と、ユーザが保有するシナリオ実行端末４の情報とを含む。属性は、例えば、ユーザが属する業界の種類でもよく、部署の種類でもよく、それらの組み合わせでもよいが、これらに限定されない。業界の種類は、例えば、金融業界、ＩＴ業界などであり、部署の種類は、経理、営業などである。
【００３２】
部品シナリオ管理情報は、各部品シナリオの部品シナリオ名、部品シナリオファイル、分類及びチェック用情報を示すデータである。部品シナリオ名は、部品シナリオの名称である。部品シナリオファイルは、部品シナリオが記述されたファイルである。汎用記述形式の部品シナリオの場合、部品シナリオファイルは、汎用部品シナリオが記述されたファイルと、カスタマイズ用ファイルとを含む。分類は、部品シナリオを検索するためのキーとして用いられる。分類は、例えば、部品シナリオの機能でもよく、部品シナリオにおいて操作対象としているアプリ（以下、「アプリ」と記載）でもよく、部品シナリオが正常に動作するシナリオ実行端末４の環境でもよい。チェック用情報は、他の部品シナリオとの整合性を確認するために用いられる情報である。チェック用情報は、例えば、部品シナリオの実行前に設定されていなければならない変数や、部品シナリオにおいて設定される変数など、部品シナリオの変数に関する情報でもよい。あるいは、チェック用情報は、部品シナリオにおいて起動又は終了されるアプリ、部品シナリオの実行前に起動されていなければならないアプリなど、部品シナリオが操作対象としているアプリの情報でもよい。なお、チェック用情報をシナリオファイルから取得することも可能である。
【００３３】
ユーザシナリオ管理情報は、ユーザシナリオを作成したユーザの識別情報及び属性と、ユーザシナリオファイルとを含む。ユーザシナリオファイルは、ユーザシナリオが記述されたファイルである。ユーザシナリオファイルは、ユーザシナリオを構成する部品シナリオの実行順番を記述したファイルと、それら部品シナリオのシナリオファイルとを含む。あるいは、ユーザシナリオファイルは、ユーザシナリオを構成する部品シナリオそれぞれのシナリオファイルから読み出した部品シナリオを、それら部品シナリオの実行順番に従って記述したファイルである。ユーザシナリオが汎用記述形式の部品シナリオを含む場合、ユーザシナリオファイルは、汎用部品シナリオのカスタマイズ用ファイルを含む。
【００３４】
サービスシナリオ管理情報は、サービスシナリオファイルと、属性の情報とを含む。サービスシナリオファイルは、ユーザシナリオファイルと同様にサービスシナリオが記述されたファイルである。属性の情報は、サービスシナリオファイルを利用すると想定されるユーザの属性を示す。
【００３５】
スケジュール情報は、シナリオ実行端末４にシナリオを実行させるスケジュールを示す。シナリオ実行端末４に実行させるシナリオは、ユーザシナリオでもよく、サービスシナリオでもよい。
【００３６】
ログデータは、シナリオ実行端末４において発生したイベントの情報とその発生日時を示す。イベントがシナリオの実行である場合、ログデータは、シナリオ実行端末４において実行されたシナリオの情報を含む。
【００３７】
分析情報は、ユーザシナリオに用いられている部品シナリオに関する分析結果を示す。分析対象の（母集団となる）ユーザシナリオは、いずれかのユーザのシナリオ実行端末４において実行されたユーザシナリオ群である。分析結果は、例えば、ユーザシナリオに含まれる部品組み合わせと、分析対象の全ユーザシナリオにおけるその部品組み合わせの出現頻度とを対応付けた情報である。出現頻度は部品組み合わせが含まれるユーザシナリオの数でもよく、分析対象の全ユーザシナリオのうち部品組み合わせが含まれるユーザシナリオの割合でもよい。
【００３８】
セット情報は、所定の機能を実行するために用いられる複数の部品シナリオのセットを示す。セット情報は、部品シナリオセットに含まれる部品シナリオを用いて記述された部品シナリオを含んでもよい。部品シナリオセットは、出現頻度が高い分析結果が得られた部品組み合わせに基づき生成される。
【００３９】
処理部２２は、シナリオ生成部２２０と、スケジュール管理部２３１と、シナリオ送信部２３２と、ログ受信部２３３と、課金部２３４と、分析部２３５とを有する。
【００４０】
シナリオ生成部２２０は、シナリオ実行端末４におけるユーザ操作に従って、ユーザシナリオのファイルを生成する。シナリオ生成部２２０は、作成情報受信部２２１と、作成画面送信部２２２と、情報提供部２２３と、シナリオ確認部２２４と、シナリオ登録部２２５とを備える。
【００４１】
作成情報受信部２２１は、ユーザシナリオの作成に関する情報をシナリオ実行端末４から受信する。作成画面送信部２２２は、シナリオ作成画面を表示させる画面データをシナリオ実行端末４に送信する。シナリオ作成画面は、シナリオ管理装置２が提供する部品シナリオのリストと、作成中のユーザシナリオを構成する部品シナリオ及びその実行順番の情報を表示する。
【００４２】
情報提供部２２３は、分析情報やセット情報と、作成中のユーザシナリオに含まれる部品シナリオとを照合し、作成中のユーザシナリオに加えて使用される可能性が高い部品シナリオや、ユーザシナリオに含まれる部品組み合わせと類似する部品シナリオセットを選択する。情報提供部２２３は、選択した部品シナリオ又は部品シナリオセットの情報をシナリオ実行端末４に表示する。
【００４３】
シナリオ確認部２２４は、作成中のユーザシナリオにおける部品シナリオの実行順番、Ｉ／Ｏ整合性、及び、重複などの正常性を確認し、正常性確認結果をシナリオ実行端末４に表示する。シナリオ登録部２２５は、ユーザがシナリオ作成画面を用いて行った部品シナリオの選択及び選択された部品シナリオの実行順番の指定に基づいてユーザシナリオのシナリオファイルを生成する。シナリオ登録部２２５は、生成したシナリオファイルを設定したユーザシナリオ管理情報を記憶部２１に登録する。
【００４４】
スケジュール管理部２３１は、ユーザが選択したシナリオをシナリオ実行端末４に実行させるためのスケジュール情報を記憶部２１に登録する。スケジュール管理部２３１は、記憶部２１に記憶されたスケジュール情報に従ってシナリオの実行を指示する。シナリオ送信部２３２は、シナリオ実行端末４に実行させるシナリオのシナリオファイルをシナリオ実行端末４に送信する。ログ受信部２３３は、各シナリオ実行端末４からログデータを受信して、記憶部２１に書き込む。
【００４５】
課金部２３４は、ユーザのシナリオ実行端末４においてシナリオが実行された場合に課金を行い、ユーザに請求する料金の情報を記憶部２１に書き込む。課金部２３４は、ユーザシナリオかサービスシナリオかによって料金を決定してもよい。また、課金部２３４は、ユーザシナリオにおいて実行された部品シナリオの数によって料金を決定してもよく、サービスシナリオの種類によって料金を決定してもよい。また、課金部２３４は、作成されたユーザシナリオに含まれる部品シナリオの数に応じて課金を行い、ユーザに請求する料金の情報を記憶部２１に書き込んでもよい。
【００４６】
分析部２３５は、シナリオ実行端末４において実行されたユーザシナリオに基づいて分析情報を生成し、記憶部２１に書き込む。例えば、分析部２３５は、各ユーザシナリオに出現する部品組み合わせをすべて抽出し、各部品組み合わせの出現頻度を算出する。分析部２３５は、抽出された部品組み合わせそれぞれの出現頻度を設定した分析情報を生成する。具体例を以下に示す。
【００４７】
部品組み合わせを構成する部品シナリオｘ１，…，ｘｊ（ｊは２以上の整数）をユーザシナリオにおいて実行される順に並べ、（ｘ１，…，ｘｊ）と記載する。部品組み合わせを構成する要素の数ｊの最小値及び最大値は任意とすることができる。部品シナリオｘ１，…，ｘｊには、種類が同じ部品シナリオが含まれてもよい。例えば、図２に示すように部品シナリオＡ、部品シナリオＢ、部品シナリオＣの順に実行されるユーザシナリオであり、ｊの最小値が２であるとする。この場合、分析部２３５は、（部品シナリオＡ，部品シナリオＢ，部品シナリオＣ）、（部品シナリオＡ、部品シナリオＢ）、（部品シナリオＡ，部品シナリオＣ）、（部品シナリオＢ，部品シナリオＣ）それぞれの部品組み合わせの出現回数を１回とする。分析部２３５は、同様に、いずれかのシナリオ実行端末４において実行されたユーザシナリオそれぞれについて部品組み合わせを抽出する。分析部２３５は、部品組み合わせ別に出現頻度を算出し、分析情報を生成する。
【００４８】
分析部２３５は、全ユーザの全ユーザシナリオを分析対象として分析情報を生成してもよく、ユーザの属性毎、部品シナリオの分類毎、ユーザの属性及び部品シナリオの分類の組み合わせ毎に分析情報を生成してもよい。分析部２３５は、部品シナリオの分類を特定して分析情報を生成する場合、その分類に属する部品シナリオを要素とする部品組み合わせをユーザシナリオから抽出し、出現頻度を算出する。
【００４９】
図４は、シナリオ実行端末４の構成を示す機能ブロック図である。シナリオ実行端末４は、ユーザの情報処理装置である。シナリオ実行端末４は、記憶部４１と、入力部４２と、表示部４３と、処理部４４とを備える。記憶部４１は、シナリオファイルを記憶する。入力部４２は、キーボード、ポインティングデバイス（マウス、タブレット等）、ボタン、タッチパネル等の既存の入力装置を用いて構成される。入力部４２は、ユーザの指示をシナリオ実行端末４に入力する際にユーザによって操作される。表示部４３は、ＣＲＴ（Cathode Ray Tube）ディスプレイ、液晶ディスプレイ、有機ＥＬ（Electro Luminescence）ディスプレイ等の画像表示装置である。
【００５０】
処理部４４は、作成指示部４４１と、情報受信部４４２と、スケジュール登録部４４３と、シナリオ受信部４４４と、シナリオ実行部４４５と、ログ送信部４４６と、機能Ｘ実行部４４７とを備える。
【００５１】
作成指示部４４１は、入力部４２によるユーザの入力に従って、部品シナリオにより構成されるユーザシナリオの作成指示をシナリオ管理装置２に指示する。情報受信部４４２は、シナリオ管理装置２から受信したシナリオ作成画面の画面データを表示部４３に表示する。また、情報受信部４４２は、作成中のユーザシナリオにおける部品シナリオに対する正常性確認結果をシナリオ管理装置２から受信し、表示部４３に表示する。また、情報受信部４４２は、作成中のユーザシナリオに加えて使用される可能性が高い部品シナリオや、作成中のユーザシナリオに含まれる部品組み合わせに類似する部品シナリオセットの情報をシナリオ管理装置２から受信して表示部４３に表示する。
【００５２】
スケジュール登録部４４３は、入力部４２によりユーザが入力した指示に基づいて、シナリオの実行スケジュールをシナリオ管理装置２に登録する。シナリオ受信部４４４は、シナリオ管理装置２からシナリオファイルを受信し、記憶部４１に書き込む。シナリオ実行部４４５は、記憶部４１からシナリオファイルを読み出し、読み出したシナリオファイルに記述されたシナリオを実行する。汎用シナリオ形式の部品シナリオを含むシナリオファイルの場合、シナリオ実行部４４５は、カスタマイズ用ファイルに記述された変数の値を汎用部品シナリオに設定して生成されたシナリオを実行する。ログ送信部４４６は、実行したシナリオを示すログデータを生成し、シナリオ管理装置２に通知する。
【００５３】
機能Ｘ実行部４４７は、機能Ｘのアプリを実行する。機能Ｘは、シナリオの実行に使用され得る機能であり、例えば、表計算、文書編集、ウェブブラウザ、はがき作成、図形描画等、ＰＣに実装される任意の機能とすることができる。同図では、機能Ａ、Ｂ、Ｃそれぞれのアプリを実行する機能Ｘ実行部４４７（Ｘ＝Ａ、Ｂ、Ｃ）を、機能Ａ実行部４４７ａ、機能Ｂ実行部４４７ｂ、機能Ｃ実行部４４７ｃと記載している。本実施形態では、機能Ａ実行部４４７ａにより実行されるアプリが、文書編集アプリや表計算アプリなど、テキストデータを編集可能な機能を有するアプリであるとする。機能Ａ実行部４４７ａは、シナリオファイルに含まれるカスタマイズ用ファイルの編集を行うファイル編集部として動作する。
【００５４】
次に、シナリオ管理装置２の記憶部２１に記憶される各情報の例を説明する。
図５は、ユーザ管理情報の例を示す図である。ユーザ管理情報は、ユーザのユーザＩＤ、ユーザ名、属性、ユーザアカウント及びシナリオ実行端末情報を示すデータを含む。ユーザＩＤは、ユーザを特定する識別情報である。ユーザ名は、ユーザの名前である。ユーザアカウントは、事業者がユーザに払い出したサービス利用のためのアカウントである。ユーザＩＤがユーザアカウントを兼ねてもよい。また、１ユーザに複数のユーザアカウントが払い出されてもよい。シナリオ実行端末情報は、ユーザが保有するシナリオ実行端末４の実行端末ＩＤ及びアドレスを示す。実行端末ＩＤは、シナリオ実行端末４の識別情報である。実行端末ＩＤがユーザアカウントを兼ねてもよい。アドレスは、例えば、シナリオ実行端末４のＩＰアドレスを示す。ユーザ管理情報は、さらに、ユーザの住所などの情報を含んでもよい。
【００５５】
図６は、部品シナリオ管理情報の例を示す図である。同図に示す部品シナリオ管理情報は、部品シナリオのシナリオＩＤ、部品シナリオ名、部品シナリオファイル、分類及びチェック用情報を示すデータを含む。シナリオＩＤは、シナリオを一意に特定する識別情報である。部品シナリオファイルは、部品シナリオが記述されたシナリオファイルである。部品シナリオが汎用シナリオ形式である場合、部品シナリオファイルは、汎用部品シナリオを記述したファイルと、カスタマイズ用ファイルとからなる。
【００５６】
図７は、ユーザシナリオ管理情報の例を示す図である。同図に示すユーザシナリオ管理情報は、ユーザＩＤと、ユーザシナリオのシナリオＩＤ、ユーザシナリオ名及びユーザシナリオファイルと、属性とを示すデータを含む。シナリオＩＤは、シナリオを一意に特定する識別情報である。ユーザＩＤは、ユーザシナリオを作成したユーザを特定する。属性は、ユーザシナリオを作成したユーザの属性を示す。ユーザシナリオ管理情報は、ユーザシナリオに適用されている部品シナリオセットのセットＩＤを示す適用セットを含んでもよい。
【００５７】
図８は、サービスシナリオ管理情報の例を示す図である。同図に示すサービスシナリオ管理情報は、サービスシナリオのシナリオＩＤ、サービスシナリオ名、サービスシナリオファイル、属性及び説明を示すデータを含む。属性は、ユーザがサービスシナリオを選択する際のメニューのメニュー項目として用いることもできる。説明は、サービスシナリオの機能などの説明である。
【００５８】
図９は、スケジュール情報の例を示す図である。スケジュール情報は、ユーザＩＤ、ユーザアカウント、スケジュールＩＤ、スケジュール名、実行端末ＩＤ、実行シナリオ及び実行タイミングを示すデータを含む。ユーザＩＤ及びユーザアカウントは、スケジュールを登録したユーザを示す。スケジュールＩＤは、スケジュール情報を一意に識別する情報である。実行端末ＩＤは、シナリオを実行するシナリオ実行端末４を特定する。実行シナリオは、実行対象のユーザシナリオ又はサービスシナリオのシナリオＩＤである。実行タイミングは、シナリオ実行端末４にシナリオを実行させるタイミングを示す。実行タイミングは、即時、あるいは、日にち又は曜日と時刻との組み合わせ等により示される。
【００５９】
図１０は、ログデータの例を示す図である。同図に示すログデータは、ユーザＩＤ、ユーザアカウント、イベント発生端末、時刻及び発生イベントを示すデータを含む。時刻は、イベントが発生した時刻を示す。イベント発生端末は、イベントが発生したシナリオ実行端末４を示す。イベント発生端末は、実行端末ＩＤにより示される。発生イベントは、シナリオ実行端末４に発生したイベントを示す。発生イベントは、例えば、シナリオ実行端末４が実行したシナリオのシナリオＩＤと、シナリオの実行が正常終了した（動作ＯＫ）か、異常終了した（動作ＮＧ）かのシナリオ実行結果などを示す。発生イベントは、シナリオ実行端末４が実行した部品シナリオの情報と、その部品シナリオの実行が正常に行われたか否かの情報を含んでもよい。
【００６０】
図１１は、分析情報の例を示す図である。分析情報は、部品組み合わせと、その出現頻度とを示すデータを含む。ユーザの属性別に分析した部品組み合わせ及び出現頻度である場合、分析情報に属性の情報が設定される。部品シナリオの種類別に分析した部品組み合わせ及び出現頻度である場合、分析情報に種類の情報が設定される。ユーザの属性及び部品シナリオの種類の組み合わせ別に分析した部品組み合わせ及び出現頻度である場合、分析情報に属性及び種類の情報が設定される。
【００６１】
図１２は、セット情報の例を示す図である。セット情報は、セットＩＤ、セット名、部品シナリオセット及び属性を示すデータを含む。セットＩＤは、部品シナリオセットを特定する識別情報である。セット名は、部品シナリオセットの名称である。セットＩＤがセット名を兼ねてもよい。部品シナリオセットは、部品シナリオセットに含まれる各部品シナリオのシナリオＩＤ及び部品シナリオ名により示される。属性は、部品シナリオセットを利用すると想定されるユーザの属性を示す。シナリオセットの適用によりユーザシナリオの生成や実行に対する料金が決まる場合、セット情報に金額の情報が含まれる。また、セット情報は、部品シナリオセットの説明の情報を含んでもよい。また、セット情報は、部品シナリオセットに含まれる部品シナリオを用いて記述された部品シナリオを含んでもよい。
【００６２】
図１３〜図１６は、シナリオ管理装置２から受信した情報に基づいてシナリオ実行端末４が表示するシナリオ作成画面の表示例を示す図である。図１３に示すシナリオ作成画面５００ａは、メニュー表示領域５０１、検索条件入力領域５０２、検索結果表示領域５０３及び実行順番指定領域５０４を有する。メニュー表示領域５０１は、シナリオ作成に関する機能を実行させるためのメニューを表示する領域である。検索条件入力領域５０２は、部品シナリオの検索条件を入力する領域である。検索結果表示領域５０３は、検索条件に合致する部品シナリオのリストを部品シナリオ名により表示する領域である。
【００６３】
実行順番指定領域５０４は、部品シナリオの実行順番を指定する領域である。実行順番指定領域５０４には、ユーザが入力部４２により選択した部品シナリオのシナリオ名が記述された矩形の部品シンボル５１０−１、５１０−２、５１０−３、５１０−４が表示されている。部品シンボル間の矢印５２０−１、５２０−２は、部品シナリオの実行順を表す。矢印５２０−１は、矢印の根元の部品シンボル５１０−１が表す部品シナリオを実行した後に、矢印の先の部品シンボル５１０−２が表す部品シナリオを実行することを表す。同様に、矢印５２０−２は、矢印の根元の部品シンボル５１０−２が表す部品シナリオを実行した後に、矢印の先の部品シンボル５１０−３が表す部品シナリオを実行することを表す。
【００６４】
図１３のシナリオ作成画面５００ａのメニュー表示領域５０１においてユーザが入力部４２によりチェックのメニューを選択した場合、シナリオ実行端末４は、図１４に示すように、シナリオ作成画面５００ａに加えてチェック実行結果表示ボックス５３０を表示する。チェック実行結果表示ボックス５３０は、作成中のユーザシナリオに対してシナリオ管理装置２のシナリオ確認部２２４が行った正常性確認結果に応じたメッセージを表示する。図１４に示すチェック実行結果表示ボックス５３０は、シナリオ確認部２２４が、ユーザが選択した部品シナリオのうち実行順番が指定されていない部品シナリオがあると判断した場合のメッセージを表示している。入力部４２により所定の操作が行われた場合、情報受信部４４２は、チェック実行結果表示ボックス５３０の表示を終了する。
【００６５】
図１３のシナリオ作成画面５００ａにおいて作成中のユーザシナリオに部品シナリオを追加する操作をユーザが入力部４２により行った場合、シナリオ実行端末４は、図１５に示すシナリオ作成画面５００ｂを表示する。具体的には、ユーザは、マウス等の入力部４２により、検索結果表示領域５０３に表示される部品シナリオの一覧の中から、追加する部品シナリオを選択し、実行順番指定領域５０４までドラッグする。追加する部品シナリオを追加部品シナリオと記載する。シナリオ実行端末４は、ドラッグの終了位置に、追加部品シナリオの部品シナリオ名を表示する部品シンボル５１０−５を追加表示する。続いて、ユーザは、入力部４２により、部品シンボル５１０−３の次に部品シンボル５１０−５を実行する実行順を入力する。シナリオ実行端末４は、部品シンボル５１０−３から部品シンボル５１０−５への矢印５２０−３を追加表示する。
【００６６】
また、シナリオ実行端末４は、追加部品シナリオの部品シンボルの表示が追加されたとき、又は、追加部品シナリオの実行順が指定されたときに、サジェスチョン表示ボックス５４０を表示する。サジェスチョン表示ボックス５４０は、シナリオ管理装置２の情報提供部２２３が、追加部品シナリオと組み合わせて使用される可能性が高いと判断した部品シナリオの情報をサジェスチョンとして表示する。図１５では、サジェスチョンの対象を、追加部品シナリオと同じ分類に限定しているが、分類を限定しなくてもよい。
【００６７】
図１６は、ユーザシナリオ完成後のシナリオ作成画面５００ｃを示す。シナリオ作成画面５００ｃのメニュー表示領域５０１において、ユーザが入力部４２によりチェックのメニューを選択した場合、シナリオ実行端末４は、シナリオ作成画面５００ｃに加えてチェック実行結果表示ボックス５５０を表示する。チェック実行結果表示ボックス５５０は、シナリオ管理装置２のシナリオ確認部２２４によるユーザシナリオの確認結果と、情報提供部２２３による部品シナリオセットのサジェスチョンを表示する。
【００６８】
続いて、シナリオ提供システム１の動作について説明する。
図１７及び図１８は、シナリオ提供システム１のユーザシナリオ生成処理を示すフロー図である。図１７において、シナリオ実行端末４の作成指示部４４１は、シナリオ管理装置２にユーザＩＤ、ユーザアカウント及び実行端末ＩＤを設定したユーザシナリオ作成要求を送信する（ステップＳ１０１）。作成指示部４４１は、作成途中のユーザシナリオを読み出す場合、そのユーザシナリオのシナリオＩＤをユーザシナリオ作成要求にさらに設定する。
【００６９】
シナリオ管理装置２の作成情報受信部２２１が、ユーザシナリオ作成要求を受信すると（ステップＳ２０１）、作成画面送信部２２２は、シナリオ作成画面をシナリオ実行端末４に送信する（ステップＳ２０２）。作成画面送信部２２２は、ユーザシナリオ作成要求にシナリオＩＤが設定されていない場合、新規のシナリオ作成画面の画面データをシナリオ実行端末４に送信する。新規のシナリオ作成画面は、検索条件入力領域５０２、検索結果表示領域５０３及び実行順番指定領域５０４に表示がないシナリオ作成画面である。作成画面送信部２２２は、ユーザシナリオ作成要求にシナリオＩＤが設定されている場合、ユーザＩＤ及びシナリオＩＤにより特定されるユーザシナリオ管理情報からユーザシナリオファイルを読み出す。作成画面送信部２２２は、読み出したユーザシナリオファイルが示すユーザシナリオを実行順番指定領域５０４に表示するシナリオ作成画面の画面データをシナリオ実行端末４に送信する。シナリオ実行端末４の情報受信部４４２は、受信した画面データに基づいて、シナリオ作成画面を表示部４３に表示する（ステップＳ１０２）。
【００７０】
ユーザは、シナリオ実行端末４の入力部４２によりユーザシナリオ作成に関する操作を行う（ステップＳ１０３）。例えば、まずユーザは、部品シナリオを検索するための検索条件を入力部４２により入力する。作成指示部４４１は、ステップＳ１０３において、シナリオ作成画面の検索条件入力領域５０２に検索条件が入力されたか否かを判定する（ステップＳ１０４）。作成指示部４４１は、検索条件が入力さていないと判定した場合（ステップＳ１０４：ＮＯ）、ステップＳ１０７の処理を行う。一方、作成指示部４４１は、検索条件が入力されたと判定した場合（ステップＳ１０４：ＹＥＳ）、入力された検索条件をシナリオ管理装置２に送信する（ステップＳ１０５）。
【００７１】
シナリオ管理装置２の作成情報受信部２２１は、シナリオ実行端末４から検索条件を受信したか否かを判定する（ステップＳ２０３）。作成情報受信部２２１は、検索条件を受信していないと判定した場合（ステップＳ２０３：ＮＯ）、ステップＳ２０６の処理を行う。一方、作成情報受信部２２１が検索条件を受信したと判定した場合（ステップＳ２０３：ＹＥＳ）、作成画面送信部２２２は、ステップＳ２０４の処理を行う。作成画面送信部２２２は、受信した検索条件により部品シナリオ管理情報を検索し、検索により得られたシナリオ管理情報からシナリオＩＤ及び部品シナリオ名を読み出す（ステップＳ２０４）。また、作成画面送信部２２２は、受信した検索条件によりセット情報を検索し、検索により得られたセット情報から部品シナリオセットを構成する部品シナリオのシナリオＩＤ及び部品シナリオ名を読み出してもよい。
【００７２】
作成画面送信部２２２は、シナリオ実行端末４に現在表示しているシナリオ作成画面に対し、読み出した部品シナリオ名の一覧を検索結果表示領域５０３に表示させるよう変更を行ったシナリオ作成画面の画面データを生成し、シナリオ実行端末４に送信する（ステップＳ２０５）。作成画面送信部２２２は、部品シナリオセットを構成する部品シナリオについては、シナリオ名と対応付けてセット情報から読み出したセット名や金額の情報を付加して表示させるようにしてもよい。作成画面送信部２２２は、各部品シナリオ名の表示に、部品シナリオのシナリオＩＤを紐づける。シナリオ生成部２２０は、ステップＳ２０３の処理に戻る。シナリオ実行端末４の情報受信部４４２は、シナリオ管理装置２から受信した画面データに基づいて、シナリオ作成画面を表示部４３に表示すると（ステップＳ１０６）、ステップＳ１０３に戻る。なお、シナリオ管理装置２の作成画面送信部２２２は、変更後の検索結果表示領域５０３の表示データのみをシナリオ実行端末４に送信し、表示させてもよい。
【００７３】
ステップＳ１０３において、ユーザが入力部４２により部品シナリオの追加を入力したとする。具体的には、ユーザは、マウスなどの入力部４２によりシナリオ作成画面の検索結果表示領域５０３に表示されている部品シナリオ名のいずれかを選択し、ドラッグすることにより実行順番指定領域５０４において表示場所を指定する。作成指示部４４１は、ステップＳ１０４においてＮＯと判定し、部品シナリオの追加が入力されたか否かを判定する（ステップＳ１０７）。作成指示部４４１は、ステップＳ１０７において部品シナリオの追加が入力されていないと判定した場合、図１８に示すステップＳ１２１の処理を行う。一方、作成指示部４４１は、ステップＳ１０７において部品シナリオの追加が入力されたと判定した場合（ステップＳ１０７：ＹＥＳ）、ステップＳ１０８の処理を行う。すなわち、作成指示部４４１は、選択された部品シナリオ名に紐づけられているシナリオＩＤと、指定された表示場所とを示す部品シナリオ追加情報をシナリオ管理装置２に送信する（ステップＳ１０８）。以下では、選択された部品シナリオ名に紐づけられているシナリオＩＤを追加シナリオＩＤと記載する。追加シナリオＩＤにより特定される部品シナリオは、追加部品シナリオである。
【００７４】
シナリオ管理装置２の作成情報受信部２２１は、ステップＳ２０３においてＮＯと判定し、シナリオ実行端末４から部品シナリオ追加情報を受信したか否かを判定する（ステップＳ２０６）。作成情報受信部２２１は、部品シナリオ追加情報を受信していないと判定した場合（ステップＳ２０６：ＮＯ）、後述する図１８のステップＳ２２１の処理を行う。一方、作成情報受信部２２１が部品シナリオ追加情報を受信したと判定した場合（ステップＳ２０６：ＹＥＳ）、作成画面送信部２２２は、ステップＳ２０７の処理を行う。すなわち、作成画面送信部２２２は、シナリオ実行端末４に現在表示しているシナリオ作成画面に対し、実行順番指定領域５０４に追加部品シナリオの部品シンボルを追加表示するよう変更を行ったシナリオ作成画面の画面データを生成する。追加表示する部品シンボルは、部品シナリオ追加情報が示す追加シナリオＩＤに紐づけられたシナリオ名を表示し、部品シナリオ追加情報が示す表示場所に表示される。追加表示する部品シンボルには、追加シナリオＩＤが紐づけられる。作成画面送信部２２２は、生成したシナリオ作成画面の画面データをシナリオ実行端末４に送信する（ステップＳ２０７）。
【００７５】
続いて、情報提供部２２３は、サジェスチョンを行う部品シナリオを選択する。情報提供部２２３は、作成中のユーザシナリオから、追加部品シナリオを含む部品組み合わせを抽出する。情報提供部２２３は、検索対象の分析情報から、追加部品シナリオ又は抽出した部品組み合わせを含んだ部品組み合わせのうち、出現頻度が閾値よりも多い部品組み合わせを読み出す。検索対象の分析情報は、全属性及び全種類の分析情報、ユーザの属性が設定された分析情報、追加部品シナリオの種類が設定された分析情報、ユーザの属性及び追加部品シナリオの種類が設定された分析情報のうち一以上である。いずれを検索対象とするかは、任意に設定可能である。また閾値は、部品組み合わせに含まれる部品シナリオの数に応じた値とする。なお、情報提供部２２３は、ユーザの属性の情報を、ユーザＩＤにより特定されるユーザ管理情報から読み出し、追加部品シナリオの種類を、追加シナリオＩＤにより特定される部品シナリオ管理情報から読み出す。
【００７６】
情報提供部２２３は、読み出した部品組み合わせから、作成中のユーザシナリオに含まれる部品シナリオを除いた部品シナリオをサジェスチョン対象とする。情報提供部２２３は、サジェスチョン対象の部品シナリオを、読み出した部品組み合わせに含まれる部品シナリオのうち、出現順が追加部品シナリオよりも後の部品シナリオに限定してもよい。情報提供部２２３は、サジェスチョン対象の部品シナリオのシナリオ名を表示するサジェスチョン表示ボックスの表示データを生成する。情報提供部２２３は、サジェスチョン表示ボックスの表示データをシナリオ実行端末４に送信する（ステップＳ２０８）。シナリオ生成部２２０は、図１７のステップＳ２０３の処理に戻る。
【００７７】
シナリオ実行端末４の情報受信部４４２は、シナリオ管理装置２から受信した画面データに基づいて、シナリオ作成画面を表示部４３に表示する（ステップＳ１０９）。さらに、情報受信部４４２は、シナリオ管理装置２から受信した表示データに基づいてサジェスチョン表示ボックスを表示部４３に表示する。シナリオ実行端末４は、ステップＳ１０３に戻る。なお、シナリオ管理装置２の作成画面送信部２２２は、変更後の実行順番指定領域５０４の表示データのみをシナリオ実行端末４に送信し、表示させてもよい。
【００７８】
ステップＳ１０３において、ユーザが入力部４２により２つの部品シナリオ間の実行順を入力したとする。具体的には、ユーザは、入力部４２により実行順番指定領域５０４において、部品シンボルを選択し、選択された部品シンボルの後の実行順の部品シンボルを選択する。作成指示部４４１は、ステップＳ１０４及びステップＳ１０７においてＮＯと判定する。作成指示部４４１は、図１８のステップＳ１２１の処理を行い、２つの部品シナリオ間の実行順が入力されたか否かを判定する（ステップＳ１２１）。作成指示部４４１は、実行順が入力さていないと判定した場合（ステップＳ１２１：ＮＯ）、ステップＳ１２４の処理を行う。作成指示部４４１は、実行順が入力されたと判定した場合（ステップＳ１２１：ＹＥＳ）、実行順指定情報をシナリオ管理装置２に送信する（ステップＳ１２２）。ここでは、実行順が先の部品シンボルに紐づけられたシナリオＩＤを第一シナリオＩＤ、実行順が後の部品シンボルに紐づけられたシナリオＩＤを第二シナリオＩＤと記載する。作成指示部４４１は、第一シナリオＩＤ及び第二シナリオＩＤを実行順指定情報に設定し、シナリオ管理装置２に送信する。
【００７９】
シナリオ管理装置２の作成情報受信部２２１は、図１７のステップＳ２０３及びステップＳ２０６においてＮＯと判定する。作成情報受信部２２１は、図１８のステップＳ２２１の処理を行い、シナリオ実行端末４から実行順指定情報を受信したか否かを判定する（ステップＳ２２１）。作成情報受信部２２１は、実行順指定情報を受信していないと判定した場合（ステップＳ２２１：ＮＯ）、ステップＳ２２３の処理を行う。一方、作成情報受信部２２１が、実行順指定情報を受信したと判定した場合（ステップＳ２２１：ＹＥＳ）、作成画面送信部２２２はステップＳ２２２の処理を行う。すなわち、作成画面送信部２２２は、シナリオ実行端末４に現在表示しているシナリオ作成画面に対し、第一シナリオＩＤに紐づけられた部品シンボルから第二シナリオＩＤに紐づけられた部品シンボルへの矢印を追加表示するよう変更を行ったシナリオ作成画面の画面データを生成する。追加表示する矢印には、第一シナリオＩＤ及び第二シナリオＩＤが紐づけられる。作成画面送信部２２２は、シナリオ作成画面の画面データをシナリオ実行端末４に送信する（ステップＳ２２２）。シナリオ生成部２２０は、図１７のステップＳ２０３の処理に戻る。シナリオ実行端末４の情報受信部４４２は、シナリオ管理装置２から受信した画面データに基づいて、シナリオ作成画面を表示部４３に表示すると（ステップＳ１２３）、図１７のステップＳ１０３に戻る。
【００８０】
ステップＳ１０３において、ユーザが入力部４２によりメニュー表示領域５０１のチェックの実行を入力したとする。作成指示部４４１は、ステップＳ１０４、ステップＳ１０７、及び、図１８のステップＳ１２１においてＮＯと判定する。作成指示部４４１は、図１８のステップＳ１２４の処理を行い、チェック実行が入力されたか否かを判定する（ステップＳ１２４）。作成指示部４４１は、チェック実行が入力されていないと判定した場合（ステップＳ１２４：ＮＯ）、ステップＳ１２７の処理を行う。一方、作成指示部４４１は、チェック実行が入力されたと判定した場合（ステップＳ１２４：ＹＥＳ）、チェック要求をシナリオ管理装置２に送信する（ステップＳ１２５）。
【００８１】
シナリオ管理装置２の作成情報受信部２２１は、図１７のステップＳ２０３及びステップＳ２０６、ならびに、図１８のステップＳ２２１においてＮＯと判定する。作成情報受信部２２１は、図１８のステップＳ２２３の処理を行い、シナリオ実行端末４からチェック要求を受信したか否かを判定する（ステップＳ２２３）。作成情報受信部２２１は、チェック要求を受信していないと判定した場合（ステップＳ２２３：ＮＯ）、ステップＳ２２９の処理を行う。一方、作成情報受信部２２１がチェック要求を受信したと判定した場合（ステップＳ２２３：ＹＥＳ）、シナリオ確認部２２４は、ステップＳ２２４の処理を行う。すなわち、シナリオ確認部２２４は、実行順番指定領域５０４に表示させている各部品シンボルに紐づけられたシナリオＩＤと、各矢印に紐づけられている第一シナリオＩＤ及び第二シナリオＩＤとに基づいて、作成中のユーザシナリオにおける部品シナリオとその実行順番を特定し、正常性確認を行う（ステップＳ２２４）。例えば、シナリオ確認部２２４は、部品シナリオの重複や、実行順序が設定されていない部品シナリオを検出した場合、エラーと判断する。また、シナリオ確認部２２４は、各部品シナリオの部品シナリオ管理情報からチェック用情報を読み出し、読み出したチェック用情報を用いてエラーの有無を判断する。例えば、シナリオ確認部２２４は、以下の場合にエラーと判断する。
【００８２】
（１）あるアプリに対する操作を行う部品シナリオの前に、そのアプリを起動する部品シナリオがない。
（２）部品シナリオの処理に用いられる変数に、その変数の値を設定する処理を行う部品シナリオがない。
（３）部品シナリオの処理に用いられる変数と、その変数に値を設定する処理を行う部品シナリオにおいて、データ形式が異なる。
【００８３】
なお、上記は一例であり、シナリオ確認部２２４は、任意の整合性チェックを行うことができる。シナリオ確認部２２４は、正常性確認がエラーである場合（ステップＳ２２５：ＮＯ）、エラーの原因を表示するチェック実行結果表示ボックスの表示データを生成し、シナリオ実行端末４に送信する（ステップＳ２２６）。シナリオ生成部２２０は、図１７のステップＳ２０３の処理に戻る。シナリオ実行端末４の情報受信部４４２は、シナリオ管理装置２から受信した表示データに基づいて、チェック実行結果表示ボックスを表示部４３に表示すると（ステップＳ１２６）、図１７のステップＳ１０３に戻る。
【００８４】
一方、シナリオ確認部２２４は、正常性確認が正常である場合（ステップＳ２２５：ＹＥＳ）、情報提供部２２３にサジェスチョンを指示する。情報提供部２２３は、部品シナリオセットのサジェスチョンを生成する（ステップＳ２２７）。情報提供部２２３は、ユーザの属性が設定されているセット情報又は全セット情報から部品シナリオセット及びセット名を読み出す。情報提供部２２３は、読み出した部品シナリオセットのうち、部品シナリオセットに含まれる部品シナリオがユーザシナリオに所定割合以上使用されているものをサジェスチョンの対象とする。情報提供部２２３は、正常性チェックが正常である旨と、サジェスチョン対象の部品シナリオセットのセット名とを表示するチェック実行結果表示ボックスの表示データを生成し、シナリオ実行端末４に送信する（ステップＳ２２８）。なお、サジェスチョン対象が複数ある場合、ユーザシナリオに使用されている割合が多いほどサジェスチョンの順位を高くしてもよく、部品シナリオセットに含まれる部品シナリオの数が少ないほどサジェスチョンの順位を高くしてもよい。情報提供部２２３は、チェック実行結果表示ボックスに、サジェスチョンの順位に応じて並べたセット名を表示させる。シナリオ生成部２２０は、図１７のステップＳ２０３の処理に戻る。シナリオ実行端末４の情報受信部４４２は、シナリオ管理装置２から受信した表示データに基づいて、チェック実行結果表示ボックスを表示部４３に表示すると（ステップＳ１２６）、図１７のステップＳ１０３に戻る。
【００８５】
なお、シナリオ管理装置２の情報提供部２２３は、サジェスチョン対象の部品シナリオセットの表示要求をシナリオ実行端末４から受信した場合、部品シナリオセットの詳細情報を表示する表示データを生成してシナリオ実行端末４に送信し、表示させる。部品シナリオセットの詳細情報は、部品シナリオセットに含まれる部品シナリオのシナリオ名や、部品シナリオセットに含まれる部品シナリオを用いて記述された部品シナリオであり、セット情報から読み出される。情報提供部２２３は、シナリオ実行端末４から部品シナリオセットの適用を受信した場合、適用が指示された部品シナリオセットの情報を記憶する。
【００８６】
ステップＳ１０３において、ユーザが入力部４２によりユーザシナリオの作成終了を入力したとする。作成指示部４４１は、ステップＳ１０４及びステップＳ１０７、ならびに、図１８のステップＳ１２１及びステップＳ１２４においてＮＯと判定する。作成指示部４４１は、ユーザシナリオの作成終了が入力されたか否かを判定する（ステップＳ１２７）。作成指示部４４１は、ユーザシナリオの作成終了が入力さていないと判定した場合（ステップＳ１２７：ＮＯ）、図１７のステップＳ１０３の処理に戻る。作成指示部４４１は、ユーザシナリオの作成終了が入力されたと判定した場合（ステップＳ１２７：ＹＥＳ）、作成終了指示をシナリオ管理装置２に送信する（ステップＳ１２８）。作成終了指示には、入力部４２により入力されたユーザシナリオ名が含まれてもよい。
【００８７】
シナリオ管理装置２の作成情報受信部２２１は、図１７のステップＳ２０３及びステップＳ２０６、ならびに、図１８のステップＳ２２１及びステップＳ２２３においてＮＯと判定する。作成情報受信部２２１は、シナリオ実行端末４からユーザシナリオの作成終了を受信したか否かを判定する（ステップＳ２２９）。作成情報受信部２２１がユーザシナリオの作成終了を受信していないと判定した場合（ステップＳ２２９：ＮＯ）、シナリオ生成部２２０は、図１７のステップＳ２０３の処理に戻る。一方、作成情報受信部２２１がユーザシナリオの作成終了を受信したと判定した場合（ステップＳ２２９：ＹＥＳ）、シナリオ登録部２２５は、ユーザシナリオ管理情報を生成して記憶部２１に登録する（ステップＳ２３０）。
【００８８】
具体的には、シナリオ登録部２２５は、実行順番指定領域５０４に表示させている各部品シンボルに紐づけられたシナリオＩＤと、各矢印に紐づけられている第一シナリオＩＤ及び第二シナリオＩＤとに基づいて、部品シナリオとその実行順番を特定する。シナリオ登録部２２５は、各部品シナリオの部品シナリオファイルを部品シナリオ管理情報から読み出し、部品シナリオの実行順番に従って部品シナリオファイルを実行させるユーザシナリオファイルを生成する。シナリオ登録部２２５は、ユーザＩＤと、シナリオＩＤと、ユーザシナリオファイルと、属性と、作成終了指示から読み出したユーザシナリオ名とを設定したユーザシナリオ管理情報を記憶部２１に書き込む。なお、シナリオ登録部２２５がシナリオＩＤを割り当ててもよく、シナリオ実行端末４からユーザが入力したシナリオＩＤを受信してもよい。また、シナリオ登録部２２５は、属性をユーザ管理情報から読み出す。また、シナリオセットの適用を受信済みの場合、適用が指示されたシナリオセットのセットＩＤをユーザシナリオ管理情報に設定する。シナリオ登録部２２５は、ユーザシナリオ管理情報を記憶部２１に書き込むと、登録終了をシナリオ実行端末４に通知し、表示させる。
【００８９】
なお、シナリオ管理装置２は、ステップＳ２０８の処理を、ステップＳ２２２の処理の後に行ってもよい。この場合、シナリオ管理装置２は、第二シナリオＩＤに紐づけられた部品シナリオを追加部品シナリオとしてステップＳ２０８の処理を行う。
【００９０】
図１９は、シナリオ提供システム１のシナリオ実行スケジュール登録処理を示すフロー図である。シナリオ実行端末４のスケジュール登録部４４３は、ユーザＩＤ、ユーザアカウント及び実行端末ＩＤを設定したシナリオ情報要求をシナリオ管理装置２に送信する（ステップＳ３０１）。シナリオ情報要求には、入力部４２により入力されたシナリオ検索条件が含まれてもよい。シナリオ検索条件は、ユーザシナリオかサービスシナリオかのシナリオ種別や、シナリオの属性などを用いることができる。
【００９１】
シナリオ管理装置２の情報提供部２２３は、受信したシナリオ情報要求から読み出したユーザＩＤが設定されているユーザシナリオ管理情報を特定する。情報提供部２２３は、特定したユーザシナリオ管理情報それぞれからユーザシナリオ名及びシナリオＩＤを読み出す（ステップＳ４０１）。シナリオ情報要求にシナリオ検索条件が含まれる場合、情報提供部２２３は、ユーザＩＤが設定されたユーザシナリオ管理情報と、サービスシナリオ管理情報とのうち、シナリオ検索条件に合致するユーザシナリオ管理情報及びサービスシナリオ管理情報を特定する。情報提供部２２３は、特定されたユーザシナリオ管理情報からユーザシナリオ名及びシナリオＩＤを、特定されたサービスシナリオ管理情報からサービスシナリオ名及びシナリオＩＤを読み出す。情報提供部２２３は、読み出したユーザシナリオ名及びサービスシナリオ名の一覧を表示するシナリオ選択画面の画面データを生成し、シナリオ実行端末４に送信する（ステップＳ４０２）。この画面データにおいて、ユーザシナリオ名及びサービスシナリオ名にはシナリオＩＤが紐づけられている。
【００９２】
シナリオ実行端末４のスケジュール登録部４４３は、シナリオ管理装置２から受信した画面データを用いて表示部４３にシナリオ選択画面を表示する（ステップＳ３０２）。スケジュール登録部４４３は、ユーザが入力部４２により選択したユーザシナリオ名又はサービスシナリオ名の情報を受ける（ステップＳ３０３）。スケジュール登録部４４３は、選択されたユーザシナリオ名又はサービスシナリオ名に紐づけられているシナリオＩＤをシナリオ選択画面の画面データから取得する。
【００９３】
続いて、スケジュール登録部４４３は、ユーザが入力部４２により入力したスケジュール名及び実行タイミングの情報を受ける（ステップＳ３０４）。スケジュール登録部４４３は、ユーザＩＤ、ユーザアカウント及び実行端末ＩＤと、画面情報から取得したシナリオＩＤと、ユーザが入力したスケジュール名及び実行タイミングとを設定したスケジュール登録要求をシナリオ管理装置２に送信する（ステップＳ３０５）。
【００９４】
シナリオ管理装置２のスケジュール管理部２３１は、シナリオ実行端末４からスケジュール登録要求を受信すると、スケジュール情報を記憶部２１に書き込む（ステップＳ４０３）。スケジュール管理部２３１は、このスケジュール情報に、スケジュール登録要求に設定されているユーザＩＤ、ユーザアカウント、実行端末ＩＤ、シナリオＩＤ、スケジュール名及び実行タイミングと、割り当てたスケジュールＩＤとを設定する。
【００９５】
図２０は、シナリオ提供システム１のシナリオ実行処理を示すフロー図である。シナリオ管理装置２のスケジュール管理部２３１は、スケジュール情報に設定されている実行タイミングであることを検出する（ステップＳ５０１）。シナリオ送信部２３２は、スケジュール情報に設定されているシナリオＩＤによりユーザシナリオ管理情報又はサービスシナリオ管理情報を特定する。シナリオ送信部２３２は、シナリオ管理装置２に送信するシナリオファイルとして、特定したユーザシナリオ管理情報からユーザシナリオファイルを、又は、特定したサービスシナリオ管理情報からサービスシナリオファイルを読み出す。シナリオ送信部２３２は、読み出したシナリオファイルを、スケジュール情報に設定されているユーザＩＤ、ユーザアカウント及び実行端末ＩＤに基づいてユーザ管理情報から読み出したＩＰアドレスのシナリオ実行端末４に送信する（ステップＳ５０２）。
【００９６】
シナリオ実行端末４のシナリオ受信部４４４は、シナリオ管理装置２からシナリオファイルを受信すると、受信したシナリオファイルを記憶部４１に書き込む（ステップＳ６０１）。シナリオファイルにカスタマイズ用ファイルが含まれる場合、機能Ａ実行部４４７ａは、カスタマイズ用ファイルを記憶部４１から読み出して表示する。機能Ａ実行部４４７ａは、表示されたカスタマイズ用ファイルに、入力部４２を用いてユーザが入力した変数の値を書き込み、カスタマイズ用ファイルを更新する。
【００９７】
シナリオ実行部４４５は、記憶部４１に記憶されているシナリオファイルを用いてシナリオを実行する（ステップＳ６０２）。ログ送信部４４６は、シナリオを実行すると、ユーザＩＤ、ユーザアカウント、実行端末ＩＤ、時刻及び発生イベントを設定したログデータを生成して、シナリオ管理装置２に送信する（ステップＳ６０３）。ログ送信部４４６は、ログデータの発生イベントに、シナリオ実行端末４が実行したシナリオのシナリオＩＤを設定する。ログ送信部４４６は、発生イベントに、シナリオ実行端末４が実行した部品シナリオのシナリオＩＤを設定してもよい。なお、ログ送信部４４６におけるログデータの生成及び送信は、シナリオ内の処理として記述されてもよい。
【００９８】
シナリオ管理装置２のログ受信部２３３は、シナリオ実行端末４から受信したログデータを記憶部２１に書き込む（ステップＳ５０３）。課金部２３４は、ログデータが示す発生イベントに基づいて料金を決定する。課金部２３４は、例えば、ユーザシナリオファイルに用いられている部品シナリオの数や種類、シナリオセットの利用などに基づいて料金を決定する。課金部２３４は、決定した料金をユーザに課金するための課金データを生成して記憶部２１に書き込む（ステップＳ５０４）。
【００９９】
シナリオ管理装置２の分析部２３５は、定期的に、分析指示が入力された場合に、又は、ユーザシナリオの実行を示すログデータが記憶部２１に所定数書き込まれる度に、分析情報を生成し、記憶部２１に書き込む。分析部２３５は、ログデータの発生イベントから、シナリオ実行端末４において実行されたシナリオＩＤを読み出し、重複をなくす。分析部２３５は、読み出したシナリオＩＤがユーザシナリオを示す場合、そのユーザシナリオがシナリオ実行端末４により実行されたと判断する。なお、分析部２３５は、シナリオ送信部２３２がシナリオ実行端末４に送信したユーザシナリオ、又は、スケジュール情報の実行シナリオに設定されたユーザシナリオを、シナリオ実行端末４により実行されたユーザシナリオとみなし、分析対象としてもよい。分析部２３５は、いずれかのシナリオ実行端末４により実行された各ユーザシナリオに含まれる部品組み合わせを抽出し、部品組み合わせの出現頻度を算出する。分析部２３５は、部品組み合わせとして抽出しない部品シナリオの組み合わせを予め登録しておき、それら部品シナリオが含まれる部品組み合わせについてはユーザシナリオから抽出しないようにしてもよい。
【０１００】
分析部２３５は、分析結果に基づいてセット情報を生成してもよい。具体的には、分析部２３５は、属性毎に、所定数以上の部品シナリオからなる部品組み合わせのうち、出現頻度が閾値以上の部品組み合わせを抽出し、部品シナリオセットとする。閾値は、部品組み合わせに含まれる部品シナリオの数に応じた値とする。分析部２３５は、部品シナリオセットにセットＩＤを付与し、セットＩＤ、部品シナリオセット及び属性を設定したセット情報を生成し、記憶部２１に書き込む。この場合、部品シナリオセットは、部品シナリオの実行順の情報をさらに含むため、部品シナリオセットのサジェスチョンを行う場合は、ユーザシナリオにおける部品シナリオの実行順との合致も考慮する。そこで、ステップＳ２２７において、情報提供部２２３は、ユーザの属性が設定されているセット情報から読み出した部品シナリオセットのうち、部品シナリオセットに含まれる部品シナリオがユーザシナリオに所定割合以上使用されているものを抽出する。部品シナリオセットに含まれる部品シナリオのうち、ユーザシナリオに用いられている部品シナリオを共通部品シナリオと記載する。情報提供部２２３は、抽出した部品シナリオセットに含まれる共通部品シナリオの実行順と、ユーザシナリオにおける共通部品シナリオの実行順とが所定割合以上同じである場合、その部品シナリオセットをサジェスチョンの対象とする。
【０１０１】
また、事業者は、シナリオ管理装置２の記憶部２１に記憶される分析情報を参照し、ユーザ全体で、特定の業種で、特定の種類のアプリで、特定の業種及び特定の種類のアプリの組み合わせで出現頻度が高い部品組み合わせを得る。事業者は、この高い出現頻度の部品組み合わせを用いたサービスシナリオを生成し、記憶部２１に生成したサービスシナリオのサービスシナリオ管理情報を登録する。また、事業者は、この高い出現頻度の部品組み合わせを用いた部品シナリオを生成し、記憶部２１に生成した部品シナリオの部品シナリオ管理情報を登録する。これにより、事業者は、多くのユーザに使用されるサービスシナリオや部品シナリオを提供することができる。
【０１０２】
また、事業者は、出現頻度が高い部品組み合わせを含む部品シナリオセットのセット情報を生成し、記憶部２１に登録してもよい。シナリオ管理装置２の情報提供部２２３は、シナリオの作成前又は作成中に、ユーザの属性が設定されているセット情報から部品シナリオセットの情報を読み出し、シナリオ実行端末４に表示する。部品シナリオセットの情報は、部品シナリオセットを構成する部品シナリオや、それら部品シナリオを用いた部品シナリオの例などである。ユーザは、シナリオ実行端末４に表示される部品シナリオセットの情報を参照して、ユーザシナリオを生成する。これにより、ユーザが部品シナリオを選んで組み立てる作業を軽減することができる。
【０１０３】
上記実施形態においては、シナリオ管理装置２の分析部２３５が、いずれかのシナリオ実行端末４において実行されたユーザシナリオを分析対象として、部品組み合わせの出現頻度を分析する場合を例に説明したが、分析部２３５は、以下の分析を行ってもよい。
【０１０４】
分析部２３５は、いずれかのシナリオ実行端末４において実行されたユーザシナリオ群についての分析単位を、（Ａ１）部品シナリオ、（Ａ２）部品組み合わせ、（Ａ３）実行順序を考慮しない部品組み合わせ、（Ａ４）ユーザシナリオとし、各分析対象軸について各分析項目の値を得る多変量解析を行う。（Ａ３）実行順序を考慮しない部品組み合わせとは、上述した実施形態と同様に部品組み合わせを抽出し、部品組み合わせを構成する部品シナリオが同じ場合には、ユーザシナリオにおいてそれらの部品シナリオが実行される順序にかかわらず、同じ部品組み合わせとみなして重複をなくしたものである。分析部２３５は、分析対象のユーザシナリオそれぞれから、（Ａ１）部品シナリオ、（Ａ２）部品組み合わせ、（Ａ３）実行順序を考慮しない部品シナリオを分析単位として抽出し、抽出した分析単位ごとに多変量解析を行う。また、（Ａ４）ユーザシナリオを分析単位とする場合、分析部２３５は、分析対象のユーザシナリオ毎に多変量解析を行う。多変量解析の分析対象軸及び分析対象項目の例を以下に示す。分析部２３５は、分析単位、分析対象軸及び分析対象項目の組み合わせを任意に選択可能である。
【０１０５】
分析対象軸は、（Ｂ１）部品シナリオ、（Ｂ２）部品組み合わせ、（Ｂ３）シナリオ属性、（Ｂ４）ユーザ、（Ｂ５）ユーザの属性である。なお、分析単位が（Ａ１）部品シナリオであり、分析対象軸が（Ｂ２）部品組み合わせである場合、分析単位となる部品シナリオが含まれる部品組み合わせ毎に各分析項目の値を得る。（Ｂ３）シナリオ属性とは、ユーザシナリオを分類する属性であり、ユーザがシナリオ実行端末４に入力した情報である。シナリオ登録部２２５は、ユーザが入力したシナリオ属性の情報をシナリオ実行端末４から受信し、ユーザシナリオ管理情報に設定しておく。分析部２３５は、シナリオ属性の情報をユーザシナリオ管理情報から読み出す。分析部２３５は、（Ｂ５）ユーザの属性の情報を、ユーザ管理情報から読み出す。
【０１０６】
分析項目は、（Ｃ１）実行頻度関連項目、（Ｃ２）提案採否関連項目、（Ｃ３）実行時間関連項目、（Ｃ４）その他の要素の項目などである。
【０１０７】
（Ｃ１）実行頻度関連項目には、（Ｃ１−１）採用頻度、（Ｃ１−２）ユーザシナリオに占める工程数割合、（Ｃ１−３）成功率、（Ｃ１−４）エラー率がある。（Ｃ１−１）採用頻度とは、分析単位に属する分析対象のユーザシナリオ群のうち分析対象軸のものが使用されているユーザシナリオの割合又は数である。（Ｃ１−２）ユーザシナリオに占める工程数割合とは、分析単位に属する分析対象のユーザシナリオを構成する全部品シナリオのうち、分析対象軸のものが占める割合である。（Ｃ１−３）成功率とは、分析単位に属する分析対象のユーザシナリオ群において分析対象軸のものが正常に実行された割合を示し、ログデータが示す情報に基づいて得られる。（Ｃ１−４）失敗率とは、分析単位に属する分析対象のユーザシナリオ群において分析対象軸のものが正常に実行されなかった割合を示し、ログデータが示す情報に基づいて得られる。
【０１０８】
（Ｃ２）提案採否関連項目には、（Ｃ２−１）他ユーザへの提案頻度、（Ｃ２−２）他ユーザの採用頻度、（Ｃ２−３）同一ユーザの採用頻度がある。（Ｃ２−１）他ユーザへの提案頻度とは、分析対象軸のものが情報提供部２２３により他のユーザへのサジェスチョンとして採用された頻度である。（Ｃ２−２）他ユーザの採用頻度は、分析対象軸のものが他のユーザへサジェスチョンされた場合に、採用された頻度である。（Ｃ２−３）同一ユーザの利用頻度は、分析対象軸のものが同一ユーザへサジェスチョンされた場合に、採用された頻度である。
【０１０９】
（Ｃ３）実行時間関連項目には、（Ｃ３−１）実行日時、（Ｃ３−２）日時別の実行頻度、（Ｃ３−３）実行される時間間隔などがある。これらは、ログデータから得られる。
【０１１０】
（Ｃ４）その他の要素には、（Ｃ４−１）部品シナリオの意味性、（Ｃ４−２）ユーザシナリオの目的性、（Ｃ４−３）部品シナリオの目的性、（Ｃ４−４）部品組み合わせの目的性、（Ｃ４−５）ユーザの地域、（Ｃ４−６）ユーザの業界、（Ｃ４−７）特殊性・独自性、（Ｃ４−８）順番、関係性、相互依存性である。
【０１１１】
（Ｃ４−１）部品シナリオの意味性の情報は、部品シナリオ管理情報に予め設定される。分析部２３５は、部品シナリオ管理情報から部品シナリオの意味性の情報を読み出す。
【０１１２】
（Ｃ４−２）シナリオの目的性は、ユーザシナリオを作成したユーザがシナリオ実行端末４に入力した情報である。シナリオ登録部２２５は、ユーザが入力したシナリオの目的性の情報をシナリオ実行端末４から受信し、ユーザシナリオ管理情報に設定しておく。分析部２３５は、ユーザシナリオの目的性の情報をユーザシナリオ管理情報から読み出す。シナリオ登録部２２５は、ユーザシナリオの目的性に代えて、ユーザシナリオの説明の情報を受信し、ユーザシナリオ管理情報に設定してもよい。分析部２３５は、設定されている説明から、予め設定された目的性を表すキーワードに合致した単語を抽出する。事業者がユーザシナリオを解析して判断したユーザシナリオの目的性の情報を、ユーザシナリオ管理情報に書き込んでもよい。
【０１１３】
（Ｃ４−３）部品シナリオの目的性及び（Ｃ４−４）部品組み合わせの目的性は、ユーザシナリオを作成したユーザがシナリオ実行端末４に入力した情報である。シナリオ登録部２２５は、ユーザが指定した部品シナリオ又は部品組み合わせと、指定された部品シナリオ又は部品組み合わせの説明の情報をシナリオ実行端末４から受信し、ユーザシナリオファイルに書き込む。分析部２３５は、部品シナリオの説明の情報及び部品組み合わせの説明の情報をユーザシナリオファイルから読み出し、読み出した説明の情報から、予め設定された目的性を表すキーワードに合致した単語を抽出する。事業者がユーザシナリオを解析して判断した部品シナリオの目的性又は部品組み合わせの目的性の情報を、ユーザシナリオファイルに書き込んでもよい。
【０１１４】
分析部２３５は、（Ｃ４−４）ユーザの地域、及び、（Ｃ４−５）ユーザの業界を、ユーザ管理情報に予め設定された情報から読み出す。（Ｃ４−６）特殊性・独自性とは、分析単位及び分析対象軸のものが特定の状況で使用されることを表す情報である。例えば、分析部２３５は、特定の状況と、その特定の状況に合致する条件とを予め記憶しておき、その条件と合致するか否かにより特定の状況で使用されるか否かを判断する。条件は、例えば、ユーザがユーザシナリオ又はユーザシナリオに含まれる部品組み合わせについて入力した情報や、ユーザ管理情報から得られるユーザの情報や、ログデータから得られる任意の情報等により表される。例えば、分析部２３５は、特定の業界や部署、月初又は月末などの特定の期間、特定の曜日、特定の時間帯、あるいは、それらを任意の組み合わせた状況に使用される場合、特殊性・独自性があると判断する。（Ｃ４−７）順番、関係性、相互依存性とは、２以上の部品シナリオがユーザシナリオに共起する頻度やそれらの出現順序、それらの間に出現する他の部品シナリオの数等により表される。
【０１１５】
分析部２３５は、上記の多変量解析を用いた分析結果を記憶部２１に書き込む。事業者は、この分析結果を利用することによりユーザのニーズを把握し、ニーズに合ったサービスシナリオや部品シナリオセットを作成してユーザに提供することができる。
【０１１６】
情報提供部２２３は、上記の多変量解析による分析結果を用いて、ステップＳ２０８においてサジェスチョンする部品シナリオや、ステップＳ２２７においてサジェスチョンする部品シナリオセットを選択する。この選択には、例えば、機械学習などのＡＩ（人工知能）を用いることができる。
【０１１７】
例えば、ステップＳ２０８においては、ユーザシナリオのｉ番目（ｉは１以上の整数）までに使用されている各部品シナリオの種類と、当該ユーザシナリオについて上述した多変量解析を用いて得られた分析結果の少なくとも一部とを入力とし、（ｉ＋１）番目以降に各種類の部品シナリオが使用される確率を出力とするＡＩの予測モデルを用いる。情報提供部２２３は、分析対象のユーザシナリオを用いてこの予測モデルを学習しておく。ステップＳ２０８において、情報提供部２２３は、学習した予測モデルに、作成中のユーザシナリオに使用されている各部品シナリオの種類と、この作成中のユーザシナリオについて多変量解析を用いて得られた分析結果とを入力することにより、高い確率で使用されることが予測される部品シナリオの情報を得る。
【０１１８】
また、例えば、ステップＳ２２７においては、ユーザシナリオに使用されている部品シナリオの種類と、当該ユーザシナリオについて上述した多変量解析を用いて得られた分析結果の少なくとも一部とを入力とし、各部品シナリオセットとの関連度を出力とするＡＩの関連モデルを用いる。関連度は、ユーザシナリオと部品シナリオセットとの関連の高さを定量的に表す値である。情報提供部２２３は、分析対象のユーザシナリオについて得られた入力データ、及び、当該ユーザシナリオと各部品シナリオセットとの関連度を対応付けた学習データを用いて、関連モデルを学習しておく。学習データは、分析結果を用いて事業者が生成してもよく、分析部２３５が任意の方法により生成してもよい。ステップＳ２２７において、情報提供部２２３は、学習した関連モデルに、作成されたユーザシナリオに使用されている各部品シナリオの種類と、この作成中のユーザシナリオについて多変量解析を用いて得られた分析結果とを入力することにより、各部品シナリオセットの関連度を得る。情報提供部２２３は、関連度に基づいてサジェスチョン対象の部品シナリオセットを選択する。
【０１１９】
シナリオ管理装置２が提供可能なサービスシナリオには限りがあるため、個々のユーザのニーズに合った処理だけを含むサービスシナリオを提供することは難しい。そこで、上述した実施形態のように、シナリオ管理装置２は、比較的小さな機能を実現するためにシナリオ実行端末４に実行させる処理を記述した部品シナリオをユーザに提供する。ユーザは、シナリオ実行端末４を用いて部品シナリオを選択し、選択した部品シナリオの順番を指定する。これにより、ユーザは、部品シナリオにより構成される１つの大きなシナリオであるユーザシナリオを作成することができる。
【０１２０】
また、シナリオ管理装置２は、ユーザがユーザシナリオを作成する際に、過去に他のユーザにより実行又は生成されたユーザシナリオの情報を分析して、適切な部品シナリオ又は部品シナリオの組み合わせを提案する。さらに、シナリオ管理装置２は、ユーザシナリオの正常性のチェック等を行う。よって、ユーザは、当該ユーザにおいて必要な機能を含み、不要な機能を含まないユーザシナリオを簡易かつ柔軟に生成し、シナリオ実行端末４に実行させるよう支援することができる。
【０１２１】
上記においては、ユーザは、シナリオ実行端末４を用いてユーザシナリオを生成しているが、シナリオ実行端末４とは異なるＰＣなどのユーザ端末（情報処理装置）を用いてユーザシナリオを作成してもよい。この場合、ユーザ端末は、入力部４２、表示部４３、作成指示部４４１及び情報受信部４４２を備え、さらにスケジュール登録部４４３を備えてもよい。また、シナリオ実行端末４又はユーザ端末は、シナリオ管理装置２のシナリオ生成部２２０の一部の機能を有してもよい。例えば、シナリオ実行端末４又はユーザ端末が、ユーザ操作に従ってユーザシナリオを生成し、シナリオ管理装置２に生成したユーザシナリオを送信してもよい。
【０１２２】
上述した実施形態におけるシナリオ管理装置２及びシナリオ実行端末４の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【０１２３】
以上説明した実施形態によれば、シナリオ提供システムは、シナリオ管理装置と複数のユーザそれぞれのシナリオ実行端末とを有する。シナリオ管理装置は、記憶部と、シナリオ送信部と、分析部を備える。記憶部は、シナリオ実行端末における処理の手順を示す部品シナリオを組み合わせたシナリオが記述されたシナリオファイルと、当該シナリオを作成したユーザの情報とを対応付けて記憶する。シナリオ送信部は、ユーザのシナリオ実行端末に当該ユーザの情報に対応付けられたシナリオファイルを送信する。分析部は、シナリオファイルに基づいてシナリオ実行端末により実行されたシナリオ群に含まれる部品シナリオに関する分析を行う。例えば、分析部は、シナリオ実行端末により実行されたシナリオ群に所定以上の頻度で出現する部品シナリオの組み合わせを抽出する。シナリオ実行端末は、シナリオ管理装置から受信したシナリオファイルに記述されたシナリオを実行するシナリオ実行部を備える。
【０１２４】
シナリオ管理装置は、部品シナリオ情報送信部と、作成情報受信部と、シナリオ登録部とをさらに有してもよい。例えば、部品シナリオ情報送信部は、作成画面送信部２２２であり、シナリオ登録部は、シナリオ登録部２２５である。部品シナリオ情報送信部は、シナリオを作成するユーザであるシナリオ作成ユーザのユーザ端末に部品シナリオの情報を送信する。例えば、ユーザ端末は、シナリオ実行端末４である。作成情報受信部は、ユーザ端末からシナリオ作成ユーザが選択した部品シナリオを示す部品情報と選択された部品シナリオの実行順を示す実行順情報とを受信する。例えば、部品情報は、実施形態における部品シナリオ追加情報であり、実行順情報は、実行順指定情報である。情報提供部は、シナリオ作成ユーザが選択した部品シナリオと、分析部による分析結果とに基づいて、使用される可能性が高い部品シナリオを選択し、選択した部品シナリオの情報をユーザ端末に送信する。シナリオ登録部は、部品情報及び実行順情報に基づくシナリオを記述したシナリオファイルを生成し、シナリオ作成ユーザの情報と対応付けて記憶部に登録する。また、シナリオ管理装置は、部品情報及び実行順情報に基づいて生成されるシナリオの正常性を確認するシナリオ確認部を備えてもよい。
【０１２５】
また、情報提供部は、分析部による分析結果に基づいて、シナリオ作成ユーザが選択した部品シナリオの組み合わせに関連する部品シナリオの組み合わせを選択し、選択した前記組み合わせの情報を前記ユーザ端末に送信する。例えば、情報提供部は、シナリオ実行端末により実行されたシナリオ群に所定以上の頻度で出現する部品シナリオの組み合わせのうち、シナリオ作成ユーザが選択した部品シナリオの組み合わせに類似した組み合わせを選択し、選択した組み合わせの情報をユーザ端末に送信してもよい。
【０１２６】
また、記憶部は、ユーザの属性の情報を記憶し、分析部は、属性別に、当該属性のユーザのシナリオ実行端末により実行されたシナリオ群に含まれる部品シナリオに関する分析を行ってもよい。情報提供部は、シナリオ作成ユーザの属性についての分析部による分析結果に基づいて、シナリオ作成ユーザが選択した部品シナリオの組み合わせに関連した部品シナリオの組み合わせを選択する。例えば、分析部は、ユーザの属性別に、当該属性のユーザのシナリオ実行端末により実行されたシナリオ群に所定以上の頻度で出現する部品シナリオの組み合わせを抽出してもよい。情報提供部は、シナリオ作成ユーザの属性について分析部が抽出した部品シナリオの組み合わせのうち、シナリオ作成ユーザが選択した部品シナリオの組み合わせに類似した組み合わせを選択し、選択した組み合わせの情報をユーザ端末に送信する。
【０１２７】
分析部は、シナリオ実行端末により実行されたシナリオ群から得られる部品シナリオに関する情報に加えて、シナリオ実行端末がシナリオを実行することにより生成したログデータから得られる情報と、部品シナリオの機能の情報と、シナリオの目的の情報と、シナリオを作成したユーザに関する情報とのうち一以上の情報を用いて分析を行ってもよい。
【０１２８】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１２９】
１…シナリオ提供システム，  ２…シナリオ管理装置，  ４…シナリオ実行端末，  ６…ネットワーク，  ２１…記憶部，  ２２…処理部，  ４１…記憶部，  ４２…入力部，  ４３…表示部，  ４４…処理部，  ２２０…シナリオ生成部，  ２２１…作成情報受信部，  ２２２…作成画面送信部，  ２２３…情報提供部，  ２２４…シナリオ確認部，  ２２５…シナリオ登録部，  ２３１…スケジュール管理部，  ２３２…シナリオ送信部，  ２３３…ログ受信部，  ２３４…課金部，  ２３５…分析部，  ４４１…作成指示部，  ４４２…情報受信部，  ４４３…スケジュール登録部，  ４４４…シナリオ受信部，  ４４５…シナリオ実行部，  ４４６…ログ送信部，  ４４７ａ…機能Ａ実行部，  ４４７ｂ…機能Ｂ実行部，  ４４７ｃ…機能Ｃ実行部
【図１】
0006840804.tif 000002
【図２】
0006840804.tif 000003
【図３】
0006840804.tif 000004
【図４】
0006840804.tif 000005
【図５】
0006840804.tif 000006
【図６】
0006840804.tif 000007
【図７】
0006840804.tif 000008
【図８】
0006840804.tif 000009
【図９】
0006840804.tif 000010
【図１０】
0006840804.tif 000011
【図１１】
0006840804.tif 000012
【図１２】
0006840804.tif 000013
【図１３】
0006840804.tif 000014
【図１４】
0006840804.tif 000015
【図１５】
0006840804.tif 000016
【図１６】
0006840804.tif 000017
【図１７】
0006840804.tif 000018
【図１８】
0006840804.tif 000019
【図１９】
0006840804.tif 000020
【図２０】
0006840804.tif 000021