(57)【要約】      （修正有）【課題】サーバが提供するサービスの追加や変更に応じて、サービス利用時のクライアントの動作を定義可能な動作定義情報を容易に作成できるようにする。【解決手段】サービスを提供するサーバ２００とクライアント１００とが接続されたシステムにおける、サービス利用時のクライアント１００の動作を定義した動作定義情報を作成する動作定義情報作成装置４００であって、サービス利用時のクライアント１００の状態およびその状態における操作をユーザに定義させる定義ステップと、ユーザにより定義されたサービス利用時のクライアントの状態およびその状態における操作から、サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成ステップとを備えた。【選択図】図３
2006099746.tif 000002
【特許請求の範囲】
【請求項１】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成方法であって、
前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義ステップと、
前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成ステップと
を備えたことを特徴とする動作定義情報作成方法。
【請求項２】
前記作成ステップは、前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を解析するステップと、
前記解析ステップで解析された解析結果に基づき、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成するステップと
を備えたことを特徴とする請求項１記載の動作定義情報作成方法。
【請求項３】
前記定義ステップは、前記サービス利用時のクライアントの状態およびその状態における操作を視覚的に、ユーザに定義させることを特徴とする請求項１又は２記載の動作定義情報作成方法。
【請求項４】
前記定義ステップは、前記サービス利用時のクライアントの状態およびその状態における操作を、状態遷移図でユーザに定義させることを特徴とする請求項３記載の動作定義情報作成方法。
【請求項５】
前記定義ステップは、前記サービス利用時のクライアントの状態およびその状態における操作を、シーケンス図でユーザに定義させることを特徴とする請求項３記載の動作定義情報作成方法。
【請求項６】
前記定義ステップは、前記サービス利用時のクライアントの状態およびその状態における操作を、表でユーザに定義させることを特徴とする請求項３記載の動作定義情報作成方法。
【請求項７】
前記作成ステップは、作成済みの前記動作定義情報をユーザに編集させることを特徴とする請求項１乃至６何れか一項記載の動作定義情報作成方法。
【請求項８】
前記作成ステップは、状態定義部分，メソッド定義部分及び状態遷移条件定義部分から成る動作定義情報を作成することを特徴とする請求項１乃至７何れか一項記載の動作定義情報作成方法。
【請求項９】
前記作成ステップは、前記サービス利用時のクライアントの動作を基本系列，代替系列及び例外系列で定義した動作定義情報を作成することを特徴とする請求項１乃至７何れか一項記載の動作定義情報作成方法。
【請求項１０】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成方法であって、
前記サービス利用時のクライアントの動作およびその動作における操作をユーザに定義させる定義ステップと、
前記ユーザにより定義された前記サービス利用時のクライアントの動作およびその動作における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成ステップと
を備えたことを特徴とする動作定義情報作成方法。
【請求項１１】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成装置であって、
前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義手段と、
前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成手段と
を備えたことを特徴とする動作定義情報作成装置。
【請求項１２】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成するコンピュータを、
前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義手段と、
前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成手段と
して機能させるための動作定義情報作成プログラム。
【請求項１３】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成するコンピュータを、
前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義手段と、
前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成手段と
して機能させるための動作定義情報作成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１４】
所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報のデータ構造であって、
前記サービス利用時のクライアントの動作を、状態定義部分，メソッド定義部分及び状態遷移条件定義部分で表した動作定義情報のデータ構造。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作定義情報作成方法、動作定義情報作成装置、動作定義情報作成プログラム、記録媒体及びデータ構造に係り、特にサービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成方法、動作定義情報作成装置、動作定義情報作成プログラム、記録媒体及びデータ構造に関する。
【背景技術】
【０００２】
近年、認証サービスや機器管理サービスといった各種サービスをＷｅｂサービスとしてクライアントに提供するサーバ（以下、Ｗｅｂサービスサーバという）が注目されるようになった。Ｗｅｂサービスサーバは、例えばＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ）に代表されるＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ベースのプロトコルでＷｅｂサービスの呼び出しやデータの送受信などを行う。
【０００３】
また、Ｗｅｂサービスを利用するクライアント（以下、Ｗｅｂサービスクライアントという）は、Ｗｅｂサービスが持つメソッドやパラメータの情報をＷＳＤＬ（Ｗｅｂ  Ｓｅｒｖｉｃｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）によって取得してから、ＳＯＡＰを利用してＷｅｂサービスの呼び出しを行っていた。
【０００４】
ＷＳＤＬとは、Ｗｅｂサービスを利用する際に必要となる情報であって、Ｗｅｂサービスが持つメソッドやパラメータの情報を取得する為のデータ記述方式を定めている。すなわち、Ｗｅｂサービスクライアントは、ＷｅｂサービスのＩ／Ｆ仕様をＷＳＤＬによって取得していた（例えば、特許文献１参照）。
【０００５】
図１は、Ｗｅｂサービスシステムの一例の構成図である。図１のＷｅｂサービスシステムは、Ｗｅｂサービスクライアント１００，１つ以上のＷｅｂサービスサーバ２００及びサービスディスカバリ３００が、ネットワークを介して接続された構成である。なお、Ｗｅｂサービスシステムはサービスディスカバリ３００の無い構成も可能である。
【０００６】
Ｗｅｂサービスを利用するＷｅｂサービスクライアント１００は、アプリケーション１１０，ネットワークＩ／Ｆ１２０を含む。アプリケーション１１０は、Ｕ／Ｉ（ユーザインターフェース）１１１，動作定義部１１２，ＷＳＤＬ処理部１１３を含む。
【０００７】
また、Ｗｅｂサービスを提供するＷｅｂサービスサーバ２００は、ネットワークＩ／Ｆ２１０，Ｗｅｂサービス実行部２２０を含む。また、Ｗｅｂサービスを管理するサービスディスカバリ３００はサービス管理部３１０，ＷＳＤＬが格納されている格納部３２０を含む。
【０００８】
図２は、Ｗｅｂサービスシステムの処理を表したシーケンス図である。Ｗｅｂサービスを提供するＷｅｂサービスサーバ２００は、ステップＳ１〜Ｓ２において、ＷｅｂサービスのＩ／Ｆ仕様を記述したＷＳＤＬをサービスディスカバリ３００に登録する。また、Ｗｅｂサービスを利用するＷｅｂサービスクライアント１００は、ステップＳ３〜Ｓ４において、Ｗｅｂサービスサーバ２００が提供するＷｅｂサービスをサービスディスカバリ３００から検索する。
【０００９】
Ｗｅｂサービスクライアント１００を操作するユーザは、検索したＷｅｂサービスの中から利用したいＷｅｂサービスを決定する。Ｗｅｂサービスクライアント１００は、ステップＳ５〜Ｓ６において、ユーザにより選択されたＷｅｂサービスに関する情報（例えばＷｅｂサービス名，Ｗｅｂサービスサーバ２００のＩＰアドレス，ＷＳＤＬ等）をサービスディスカバリ３００から取得する。
【００１０】
以上、Ｗｅｂサービスクライアント１００は、ユーザにより選択されたＷｅｂサービスのＷＳＤＬを、図２に表したシーケンス図のように取得する。したがって、Ｗｅｂサービスクライアント１００は、Ｗｅｂサービスがどのようなコマンドを持っており、そのコマンドを実行する為にどのようなパラメータをどのような形式で与えればよいかを知ることができた。
【特許文献１】特開２００４−３０３６０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、ＷＳＤＬはＷｅｂサービスのＩ／Ｆ仕様を定義しているが、そのＷｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を定義するものではない。したがってＷｅｂサービスクライアント１００は、ＷＳＤＬを取得しても、Ｗｅｂサービスの提供方法が変わったとき、新しい機能が追加されたとき、新しいＷｅｂサービスが追加となったときに対応できないという問題があった。
【００１２】
例えばＷｅｂサービス利用時のＷｅｂサービスクライアント１００の動作は、動作定義部１１２に予めコーディングされている。したがって、Ｗｅｂサービスクライアント１００は、Ｗｅｂサービスの提供方法が変わったとき、新しい機能が追加されたとき、新しいＷｅｂサービスが追加となったときは、動作定義部１１２を修正しなければならないという問題があった。
【００１３】
なお、特許文献１は、取得したＷＳＤＬに基づいて代理サーバ上に専用ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を作成し、その専用ＡＰＩ経由でＷｅｂサービスクライアントがＷｅｂサービスを利用するものであって、そのＷｅｂサービス利用時のＷｅｂサービスクライアントの動作を定義するものではない。
【００１４】
本発明は、上記の点に鑑みなされたもので、サーバが提供するサービスの追加や変更に応じて、サービス利用時のクライアントの動作を定義可能な動作定義情報を容易に作成する動作定義情報作成方法、動作定義情報作成装置、動作定義情報作成プログラム、記録媒体及びデータ構造を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するため、本発明は、所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成方法であって、前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義ステップと、前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成ステップとを備えたことを特徴とする。
【００１６】
また、本発明は、所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する動作定義情報作成装置であって、前記サービス利用時のクライアントの状態およびその状態における操作をユーザに定義させる定義手段と、前記ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、前記サービス利用時のクライアントの動作を定義した動作定義情報を作成する作成手段とを備えたことを特徴とする。なお、本発明は上記の各手段をコンピュータに実行させるための動作定義情報作成プログラム及びその動作定義情報作成プログラムを記録したコンピュータ読み取り可能な記録媒体としてもよい。
【００１７】
また、本発明は、所定のサービスを提供するサーバとそのサービスを利用するクライアントとが所定のネットワークにより接続されたシステムにおける、前記サービス利用時のクライアントの動作を定義した動作定義情報のデータ構造であって、前記サービス利用時のクライアントの動作を、状態定義部分，メソッド定義部分及び状態遷移条件定義部分で表したことを特徴とする。
【００１８】
本発明では、サービス利用時のクライアントの状態及びその状態における操作をユーザに定義させて、ユーザにより定義された前記サービス利用時のクライアントの状態およびその状態における操作から、サービス利用時のクライアントの動作を定義した動作定義情報を作成できる。
【００１９】
ユーザは、サービス利用時のクライアントの動作をサービス利用時のクライアントの状態及びその状態における操作により指定できる。また、ユーザはサービス利用時のクライアントの動作を定義した動作定義情報を容易に作成することができる。この結果、クライアントは動作定義情報を取得して利用することで、サーバが提供するサービスの追加や変更にサービス利用時の動作を対応させることができる。
【発明の効果】
【００２０】
本発明によれば、サーバが提供するサービスの追加や変更に応じて、サービス利用時のクライアントの動作を定義可能な動作定義情報を容易に作成する動作定義情報作成方法、動作定義情報作成装置、動作定義情報作成プログラム、記録媒体及びデータ構造を提供可能である。
【発明を実施するための最良の形態】
【００２１】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、以下の実施例ではＷｅｂサービス利用時のＷｅｂサービスクライアントの動作を定義した動作定義情報をシナリオと呼んでいる。
【００２２】
図３は、本発明のシナリオ作成装置を含んだＷｅｂサービスシステムの一例の構成図である。図３のＷｅｂサービスシステムは、Ｗｅｂサービスクライアント１００，１つ以上のＷｅｂサービスサーバ２００，サービスディスカバリ３００およびシナリオ作成装置４００が、インターネットやＬＡＮ（ローカルエリアネットワーク）等のネットワークを介して接続された構成である。なお、Ｗｅｂサービスシステムはサービスディスカバリ３００の無い構成も可能である。
【００２３】
Ｗｅｂサービスを利用するＷｅｂサービスクライアント１００は、アプリケーション１１０，ネットワークＩ／Ｆ１２０を含む。アプリケーション１１０は、Ｕ／Ｉ１１１，ＷＳＤＬ処理部１１３，シナリオ処理部１１４を含む。アプリケーション１１０は、ネットワークＩ／Ｆ１２０を介してネットワークに接続する。
【００２４】
また、Ｗｅｂサービスを提供するＷｅｂサービスサーバ２００は、ネットワークＩ／Ｆ２１０，Ｗｅｂサービス実行部２２０，シナリオ管理部２３０を含む。Ｗｅｂサービス実行部２２０及びシナリオ管理部２３０はネットワークＩ／Ｆ２１０を介してネットワークに接続する。Ｗｅｂサービスを管理するサービスディスカバリ３００は、サービス管理部３１０，ＷＳＤＬが格納されている格納部３２０を含む。
【００２５】
また、シナリオを作成するシナリオ作成装置４００はアプリケーション４１０，ネットワークＩ／Ｆ４２０を含む。アプリケーション４１０は、Ｕ／Ｉ４１１，エディタ制御部４１２，データ解析部４１３，ＸＭＬ生成部４１４，シナリオが管理及び格納されている格納部４１５を含む。アプリケーション４１０はネットワークＩ／Ｆ４２０を介してネットワークに接続する。なお、シナリオ作成装置４００の作成するシナリオは、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を定義するものである。
【００２６】
また、シナリオ作成装置４００は図３に示す構成の他、例えば図４〜図６に示す構成としてもよい。図４は、シナリオ作成装置４００の他の一例の構成図である。図４のシナリオ作成装置４００は、アプリケーション４１０，ネットワークＩ／Ｆ４２０を含む。アプリケーション４１０は、データ解析部４１３，ＸＭＬ生成部４１４，シナリオが格納されている格納部４１５，リクエスト処理部４１６を含む。
【００２７】
図４のシナリオ作成装置４００は、Ｕ／Ｉ４１１，エディタ制御部４１２が無い点で図３のシナリオ作成装置４００と異なっている。すなわち、図４のシナリオ作成装置４００はＵ／Ｉ４１１，エディタ制御部４１２を分離し、ネットワーク経由で接続されるＰＣ端末５００上のアプリケーション５１０として配置している。
【００２８】
ＰＣ端末５００は、アプリケーション５１０及びネットワークＩ／Ｆ５２０を含む。アプリケーション５１０は、Ｕ／Ｉ５１１及びエディタ制御部５１２を含む。シナリオ作成装置４００のリクエスト処理部４１６は、ＰＣ端末５００からの指示を受け付けることができる。
【００２９】
図５は、シナリオ作成装置４００の他の一例の構成図である。図５のシナリオ作成装置４００は、アプリケーション４１０，ネットワークＩ／Ｆ４２０を含む。アプリケーション４１０は、Ｕ／Ｉ４１１，エディタ制御部４１２，データ解析部４１３，ＸＭＬ生成部４１４を含む。
【００３０】
図５のシナリオ作成装置４００は、シナリオが管理及び格納されている格納部４１５が無い点で図３のシナリオ作成装置４００と異なっている。すなわち、図５のシナリオ作成装置４００はシナリオが管理及び格納されている格納部４１５を分離し、ネットワーク経由で接続されるシナリオ管理サーバ６００上の格納部６１０として配置している。
【００３１】
シナリオ管理サーバ６００は、格納部６１０及びネットワークＩ／Ｆ６２０を含む。格納部６１０はネットワークＩ／Ｆ６２０を介してネットワークに接続する。シナリオ作成装置４００のアプリケーション４１０は、シナリオ管理サーバ６００にシナリオを管理及び格納させることができる。
【００３２】
図６は、シナリオ作成装置４００の他の一例の構成図である。図６のシナリオ作成装置４００は、アプリケーション４１０，ネットワークＩ／Ｆ４２０を含む。アプリケーション４１０は、データ解析部４１３，ＸＭＬ生成部４１４及びリクエスト処理部４１６を含む。
【００３３】
図６のシナリオ作成装置４００は、Ｕ／Ｉ４１１，エディタ制御部４１２，シナリオが管理及び格納されている格納部４１５が無い点で図３のシナリオ作成装置４００と異なっている。すなわち、図６のシナリオ作成装置４００はＵ／Ｉ４１１，エディタ制御部４１２を分離し、ネットワーク経由で接続されるＰＣ端末５００上のアプリケーション５１０として配置すると共に、シナリオが管理及び格納されている格納部４１５を分離し、ネットワーク経由で接続されるシナリオ管理サーバ６００上の格納部６１０として配置している。
【００３４】
ＰＣ端末５００は、アプリケーション５１０及びネットワークＩ／Ｆ５２０を含む。アプリケーション５１０は、Ｕ／Ｉ５１１及びエディタ制御部５１２を含む。シナリオ作成装置４００のリクエスト処理部４１６は、ＰＣ端末５００からの指示を受け付けることができる。
【００３５】
シナリオ管理サーバ６００は、格納部６１０及びネットワークＩ／Ｆ６２０を含む。格納部６１０はネットワークＩ／Ｆ６２０を介してネットワークに接続する。シナリオ作成装置４００のアプリケーション４１０は、シナリオ管理サーバ６００にシナリオを管理及び格納させることができる。
【００３６】
図６のシナリオ作成装置４００は、図４及び図５のシナリオ作成装置４００の構成を組み合わせた例である。
【００３７】
図７は、シナリオ作成装置を実現するコンピュータの一実施例のハードウェア構成図である。図７のコンピュータは、それぞれバスＢで相互に接続されている入力装置１００１と，表示装置１００２と，ドライブ装置１００３と，補助記憶装置１００５と，メモリ装置１００６と，演算処理装置１００７と，インターフェース装置１００８とを有するように構成される。なお、図７のコンピュータを構成する各種デバイスは、１つの筐体に収容してもよいし、複数の筐体に分散して収容してもよい。
【００３８】
入力装置１００１はキーボード，マウスなどで構成され、様々な操作指示を入力するために用いられる。表示装置１００２はディスプレイなどで構成され、操作に必要な各種ウインドウやデータ等を表示する。インターフェース装置１００８は、ネットワークに接続する為のインターフェースであり、モデム，ルータ等で構成される。
【００３９】
シナリオ作成装置を制御するシナリオ作成プログラムは、ＣＤ−ＲＯＭ等の記録媒体１００４によって提供される。シナリオ作成プログラムを記録した記録媒体１００４は、ドライブ装置１００３にセットされ、シナリオ作成プログラムがドライブ装置１００３を介して補助記憶装置１００５にインストールされる。
【００４０】
シナリオ作成プログラムを記録した記録媒体１００４は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク（ＭＯ）等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、又はＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることが可能である。
【００４１】
また、シナリオ作成プログラムはインターフェース装置１００８を介して接続される他のコンピュータの記録媒体等に記録されているものも含まれる。他のコンピュータの記録媒体等に記録されているシナリオ作成プログラムは、インターフェース装置１００８を介してダウンロードされて補助記憶装置１００５にインストールされる。補助記憶装置１００５は、インストールされたシナリオ作成プログラムと、そのシナリオ作成プログラムの処理に必要な各種ファイル等を格納する。メモリ装置１００６は、起動時に補助記憶装置１００５からシナリオ作成プログラムを読み出して格納する。
【００４２】
演算処理装置１００７は、メモリ装置１００６に格納されたシナリオ作成プログラムに従ってシナリオ作成装置４００のアプリケーション４１０，ネットワークＩ／Ｆ４２０を各種プロセスで実現する。なお、ＰＣ端末５００及びシナリオ管理サーバ６００は例えば図７のようなハードウェア構成のコンピュータで実現できる。
【実施例１】
【００４３】
以下、本発明のシナリオ作成装置の処理について、詳細に説明していく。なお、以下の説明では図３のシナリオ作成装置４００の構成を例として説明する。図８は、本発明のシナリオ作成装置が行うシナリオ作成処理の一例のフローチャートである。
【００４４】
シナリオ作成装置４００のアプリケーション４１０は、状態遷移図を作成するためのエディタ機能を有している。ステップＳ１１では、ユーザがアプリケーション４１０のエディタ機能を利用して状態遷移図を作成する。具体的に、ユーザがエディタ機能の起動を指示すると、アプリケーション４１０のエディタ制御部４１２はＵ／Ｉ４１１を利用して図９のような状態遷移図作成画面２０００をユーザに呈示する。
【００４５】
図９は、状態遷移図作成画面の一例のイメージ図である。図９の状態遷移図作成画面２０００は、状態遷移図の作成に必要なパーツを選択可能なパーツ選択欄２００１と、実際に状態遷移図の作成を行う作業欄２００２と、登録済みメソッド一覧を表示するメソッド一覧表示欄２００３とで構成されている。
【００４６】
ユーザは、パーツ選択欄２００１から状態を表すアイコン２０１０や状態遷移を表すアイコン２０１１等、状態遷移図の作成に必要なパーツを選択し、そのパーツで作業欄２００２に状態遷移図を作成する。エディタ制御部４１２は、ユーザの操作に応じた状態遷移図を作業欄２００２に表示する。
【００４７】
作業欄２００２に表示されている状態を表すアイコン２０１０が選択されると、エディタ制御部４１２は図１０のような状態設定画面２１００をユーザに提示する。図１０は状態設定画面の一例のイメージ図である。エディタ制御部４１２は、状態設定画面２１００に入力された内容を状態名として設定する。
【００４８】
また、作業欄２００２に表示されている状態遷移を表すアイコン２０１１が選択されると、エディタ制御部４１２は図１１のようにメソッド，パラメータ，値及びオプションを設定可能な状態遷移設定画面２２００をユーザに提示する。図１１は、状態遷移設定画面の一例のイメージ図である。
【００４９】
図１１の状態遷移設定画面２２００は、メソッド，パラメータ，値及びオプションを設定する設定欄２２０１と、登録済みメソッド一覧を表示するメソッド一覧表示欄２２０２とで構成されている。エディタ制御部４１２は、設定欄２２０１に入力された内容をメソッド，パラメータ，値及びオプションとして設定する。例えば設定欄２２０１にメソッドが設定されると、図１１の状態遷移設定画面２２００は図１２のような状態遷移設定画面２３００に遷移する。図１２はメソッドが設定された状態遷移設定画面の一例のイメージ図である。
【００５０】
以上のようなエディタ機能を利用することで、ユーザは例えば図１３のような状態遷移図を作成できる。図１３は、ユーザにより作成された一例の状態遷移図である。図１３の状態遷移図は、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を視覚的に表した図の一例であって、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を、状態、利用するメソッド及び状態遷移条件で表している。言い換えれば、エディタ機能はＷｅｂサービス利用時のＷｅｂサービスクライアント１００の状態及びその状態における操作をユーザに定義させることができる。
【００５１】
ステップＳ１２では、データ解析部４１３が、ステップＳ１１で作成された状態遷移図を解析する。ステップＳ１２では、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を、状態、利用するメソッド及び状態遷移条件の観点で解析する。ステップＳ１３では、ＸＭＬ生成部４１４が、ステップＳ１２の解析結果に基づき、シナリオを作成する。
【００５２】
図１４は、作成されたシナリオを自然言語で表した一例のイメージ図である。なお、図１４のシナリオは理解の容易の為に自然言語で記述しているが、本来、ＸＭＬで記述されている。図１４のシナリオは、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を、基本系列，代替系列および例外系列で定義している。なお、図１４は図１３の状態遷移図から作成されたシナリオの一例である。
【００５３】
また、図１５〜図１９はＸＭＬで記述されたシナリオの一例の構成図である。なお、図１５〜図１９のシナリオは図１３の状態遷移図から作成されたシナリオの一例である。図１５〜図１９のシナリオは、状態定義部分，メソッド定義部分及び状態遷移条件定義部分から構成されている。
【００５４】
図１５及び図１６は、シナリオの状態定義部分を表している。図１７及び図１８は、シナリオのメソッド定義部分を表している。図１９は、シナリオの状態遷移条件定義部分を表している。なお、図１５〜図１９のシナリオに含まれるタグ＜ｓｔａｔｅ＞，＜ｍｅｔｈｏｄ＞及び＜ａｒｃ＞は状態，メソッド，状態遷移条件を表している。
【００５５】
したがって、シナリオ作成装置４００はユーザの作成した図１３のような状態遷移図から図１５〜図１９のようなＸＭＬで記述されたシナリオを作成可能である。
【実施例２】
【００５６】
実施例１のシナリオ作成装置４００では、ユーザに状態遷移図を作成させ、その状態遷移図からシナリオを作成していたが、ユーザにシーケンス図を作成させ、そのシーケンス図からシナリオを作成することもできる。図２０は、本発明のシナリオ作成装置が行うシナリオ作成処理の他の一例のフローチャートである。
【００５７】
シナリオ作成装置４００のアプリケーション４１０は、シーケンス図を作成するためのエディタ機能を有している。ステップＳ２１では、ユーザがアプリケーション４１０のエディタ機能を利用してシーケンス図を作成する。具体的に、ユーザがエディタ機能の起動を指示すると、アプリケーション４１０のエディタ制御部４１２はＵ／Ｉ４１１を利用して図２１のようなシーケンス図作成画面２４００をユーザに呈示する。
【００５８】
図２１は、シーケンス図作成画面の一例のイメージ図である。図２１のシーケンス図作成画面２４００は、シーケンス図の作成に必要なパーツを選択可能なパーツ選択欄２４０１と、実際にシーケンス図の作成を行う作業欄２４０２と、登録済みサービス一覧を表示するサービス一覧表示欄２４０３とで構成されている。
【００５９】
ユーザは、パーツ選択欄２４０１からアイコン等、必要なパーツを選択し、そのパーツで作業欄２４０２にシーケンス図を作成する。エディタ制御部４１２は、ユーザの操作に応じたシーケンス図を作業欄２４０２に表示する。例えばユーザがパーツ選択欄２４０１からアクターを表すアイコン２４１０を選択し、作業欄２４０２にドラッグすると、エディタ制御部４１２は作業欄２４０２にドラッグされたアイコン２４１０をモジュールとして示し、そのアイコン２４１０の下方に点線を表示する。また、ユーザがサービス一覧表示欄２４０３から機器管理サービスを表すアイコン２４３０を選択し、作業欄２４０２にドラッグすると、エディタ制御部４１２は作業欄２４０２にドラッグされたアイコン２４３０をモジュールとして示し、そのアイコン２４３０の下方に点線を表示する。
【００６０】
作業欄２４０２に表示されている状態遷移を表すアイコン２４１１が選択されると、エディタ制御部４１２は前述した図１１のようなメソッド，パラメータ，値及びオプションを設定可能な状態遷移設定画面をユーザに提示する。
【００６１】
以上のようなエディタ機能を利用することで、ユーザは例えば図２２のようなシーケンス図を作成できる。図２２は、ユーザにより作成された一例のシーケンス図である。図２２のシーケンス図は、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を視覚的に表した図の一例である。
【００６２】
図２２のシーケンス図は、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作をＷｅｂサービスクライアント１００からＷｅｂサービスに送信されるメッセージで表している。この場合、メッセージはＷｅｂサービスに対するメソッドに相当する。また、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作をシーケンス図で作成する場合、複数のＷｅｂサービスを連携させることも可能である。
【００６３】
ステップＳ２２に進み、エディタ制御部４１２は作成したシーケンス図から図２３のような状態遷移図を作成する。図２３は、シーケンス図から作成された一例の状態遷移図である。図２３は、図２２のシーケンス図から作成された状態遷移図の一例である。
【００６４】
図２３のステップＳ３１「管理者認証」は、図２２のメッセージ「１：ａｕｔｈｅｎｔｉｃａｔｅ」〜「３：ｓｔａｒｔＳｅｓｓｉｏｎ」に対応する。また、図２３のステップＳ３２「管理対象決定」は、図２２のメッセージ「４：ｓｅａｒｃｈＭａｎａｇｅｄＯｂｊｅｃｔ」〜「５：ｄｅｔｅｒｍｉｎｅＭａｎａｇｅｄＯｂｊｅｃｔ」に対応する。図２３のステップＳ３３「管理対象設定」は、図２２のメッセージ「６：ｇｅｔＯｂｊｅｃｔＦｉｅｌｄＣａｐａｂｉｌｉｔｙ」〜「７：ｓｅｔＯｂｊｅｃｔｆｉｅｌｄＬｉｓｔ」に対応する。図２３のステップＳ３４の「正常終了」は、図２２のメッセージ「８：ｔｅｒｍｉｎａｔｅＳｅｓｓｉｏｎ」に対応する。
【００６５】
以上のようなエディタ機能を利用することで、ユーザは例えば図２２のようなシーケンス図から図２３のような状態遷移図を作成できる。ステップＳ２３では、実施例１のステップＳ１２と同様に、データ解析部４１３が、ステップＳ２２で作成された状態遷移図を解析する。ステップＳ２４では、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を、状態、利用するメソッド及び状態遷移条件の観点で解析する。ステップＳ２４では、ＸＭＬ生成部４１４が、ステップＳ２３の解析結果に基づき、シナリオを作成する。
【００６６】
また、図２４〜図２５はＸＭＬで記述されたシナリオの一例の構成図である。なお、図２４〜図２５のシナリオは、図２３の状態遷移図から作成されたシナリオの一部を表している。図２３の状態遷移図から作成されたシナリオは、状態定義部分，メソッド定義部分及び状態遷移条件定義部分から構成されている。
【００６７】
なお、図２４は、シナリオの状態定義部分を表している。図２５は、シナリオのメソッド定義部分を表している。したがって、シナリオ作成装置４００はユーザの作成した図２２のようなシーケンス図から図２３のような状態遷移図を作成し、その状態遷移図から図２４〜図２５のようなＸＭＬで記述されたシナリオを作成可能である。
【００６８】
図２０のフローチャートでは、ユーザの作成した図２２のようなシーケンス図から図２３のような状態遷移図を作成し、その状態遷移図から図２４〜図２５のようなＸＭＬで記述されたシナリオを作成する例を示したが、ユーザの作成した図２２のようなシーケンス図から図２４〜図２５のようなＸＭＬで記述されたシナリオを直接作成するようにしてもよい。図２２のシーケンス図は、Ｗｅｂサービスクライアント１００の動作単位でＷｅｂサービスクライアント１００の操作をユーザに定義させるものである。
【００６９】
シナリオ作成装置４００は、ユーザが定義した、Ｗｅｂサービスクライアント１００からＷｅｂサービスにメッセージを送信するＷｅｂサービスクライアント１００の動作の情報を用いることで、図２４〜図２５のようなＸＭＬで記述されたシナリオを直接作成できる。
【実施例３】
【００７０】
実施例１のシナリオ作成装置４００では、ユーザに状態遷移図を作成させ、その状態遷移図からシナリオを作成していたが、ユーザに状態遷移表を作成させ、その状態遷移表からシナリオを作成することもできる。
【００７１】
シナリオ作成装置４００のアプリケーション４１０は、状態遷移表を作成するためのエディタ機能を有している。ユーザは、アプリケーション４１０のエディタ機能を利用して状態遷移表を作成する。エディタ機能を利用することで、ユーザは例えば図２６のような状態遷移表を作成できる。
【００７２】
図２６は、ユーザにより作成された一例の状態遷移表である。図２６の状態遷移表は図１３の状態遷移図における状態「Ｓ１：管理者認証」及び「Ｓ２：管理対象決定」を表形式で表現したものである。状態遷移表は、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作を視覚的に表した図の一例である。
【００７３】
エディタ機能を利用した作成された図２３のような状態遷移図は、実施例１のステップＳ１２と同様に、データ解析部４１３により解析される。そして、ＸＭＬ生成部４１４はデータ解析部４１３による解析結果に基づき、シナリオを作成できる。
（シナリオの利用）
上記の実施例１〜３のように作成されたシナリオは、ＸＭＬ生成部４１４から格納部４１５に格納される。そして、格納部４１５に格納されたシナリオはネットワークＩ／Ｆ４２０，ネットワーク，ネットワークＩ／Ｆ２１０を介して、Ｗｅｂサービスサーバ２００のシナリオ管理部２３０に登録される。なお、格納部４１５に格納されたシナリオはネットワークＩ／Ｆ４２０，ネットワーク，サービス管理部３１０を介して、サービスディスカバリ３００の格納部３２０に登録されるようにしてもよい。
【００７４】
また、シナリオ作成装置４００は、格納部４１５に格納されているシナリオをユーザに編集させる機能を設けるようにしても良い。この場合、ユーザは既存のシナリオを編集することにより、新たなシナリオを作成することができる。
【００７５】
このように、Ｗｅｂサービスクライアント１００は、Ｗｅｂサービスサーバ２００のシナリオ管理部２３０又はサービスディスカバリ３００の格納部３２０から、Ｗｅｂサービス利用時のＷｅｂサービスクライアント１００の動作が定義されたシナリオを取得して利用できるので、Ｗｅｂサービスの追加や変更にサービス利用時の動作を容易に対応させることができる。
【００７６】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【００７７】
【図１】Ｗｅｂサービスシステムの一例の構成図である。
【図２】Ｗｅｂサービスシステムの処理を表したシーケンス図である。
【図３】本発明のシナリオ作成装置を含んだＷｅｂサービスシステムの一例の構成図である。
【図４】シナリオ作成装置４００の他の一例の構成図である。
【図５】シナリオ作成装置４００の他の一例の構成図である。
【図６】シナリオ作成装置４００の他の一例の構成図である。
【図７】シナリオ作成装置を実現するコンピュータの一実施例のハードウェア構成図である。
【図８】本発明のシナリオ作成装置が行うシナリオ作成処理の一例のフローチャートである。
【図９】状態遷移図作成画面の一例のイメージ図である。
【図１０】状態設定画面の一例のイメージ図である。
【図１１】状態遷移設定画面の一例のイメージ図である。
【図１２】メソッドが設定された状態遷移設定画面の一例のイメージ図である。
【図１３】ユーザにより作成された一例の状態遷移図である。
【図１４】作成されたシナリオを自然言語で表した一例のイメージ図である。
【図１５】ＸＭＬで記述されたシナリオの一例の構成図（１／５）である。
【図１６】ＸＭＬで記述されたシナリオの一例の構成図（２／５）である。
【図１７】ＸＭＬで記述されたシナリオの一例の構成図（３／５）である。
【図１８】ＸＭＬで記述されたシナリオの一例の構成図（４／５）である。
【図１９】ＸＭＬで記述されたシナリオの一例の構成図（５／５）である。
【図２０】本発明のシナリオ作成装置が行うシナリオ作成処理の他の一例のフローチャートである。
【図２１】シーケンス図作成画面の一例のイメージ図である。
【図２２】ユーザにより作成された一例のシーケンス図である。
【図２３】シーケンス図から作成された一例の状態遷移図である。
【図２４】ＸＭＬで記述されたシナリオの一例の構成図（１／２）である。
【図２５】ＸＭＬで記述されたシナリオの一例の構成図（２／２）である。
【図２６】ユーザにより作成された一例の状態遷移表である。
【符号の説明】
【００７８】
１００    Ｗｅｂサービスクライアント
１１０，４１０，５１０    アプリケーション
１１１，４１１，５１１    Ｕ／Ｉ
１１３    ＷＳＤＬ処理部
１１４    シナリオ処理部
１２０，２１０，４２０，５２０，６２０    ネットワークＩ／Ｆ
２００    Ｗｅｂサービスサーバ
２２０    Ｗｅｂサービス実行部
２３０    シナリオ管理部
３００    サービスディスカバリ
３１０    サービス管理部
３２０，４１５，６１０    格納部
４００    シナリオ作成装置
４１２，５１２    エディタ制御部
４１３    データ解析部
４１４    ＸＭＬ生成部
４１６    リクエスト処理部
５００    ＰＣ端末
６００    シナリオ管理サーバ
１００１    入力装置
１００２    表示装置
１００３    ドライブ装置
１００４    記録媒体
１００５    補助記憶装置
１００６    メモリ装置
１００７    演算処理装置
１００８    インターフェース装置
Ｂ    バス
【図１】
2006099746.tif 000003
【図２】
2006099746.tif 000004
【図３】
2006099746.tif 000005
【図４】
2006099746.tif 000006
【図５】
2006099746.tif 000007
【図６】
2006099746.tif 000008
【図７】
2006099746.tif 000009
【図８】
2006099746.tif 000010
【図９】
2006099746.tif 000011
【図１０】
2006099746.tif 000012
【図１１】
2006099746.tif 000013
【図１２】
2006099746.tif 000014
【図１３】
2006099746.tif 000015
【図１４】
2006099746.tif 000016
【図１５】
2006099746.tif 000017
【図１６】
2006099746.tif 000018
【図１７】
2006099746.tif 000019
【図１８】
2006099746.tif 000020
【図１９】
2006099746.tif 000021
【図２０】
2006099746.tif 000022
【図２１】
2006099746.tif 000023
【図２２】
2006099746.tif 000024
【図２３】
2006099746.tif 000025
【図２４】
2006099746.tif 000026
【図２５】
2006099746.tif 000027
【図２６】
2006099746.tif 000028