(57)【要約】【課題】制約を満たすサービスが選択できない場合、サービスの提供が行われなかった。【解決手段】サービス識別子と制約情報と適応情報とを有する１以上の制約満足情報を格納し得る制約満足情報格納部と、端末装置からサービス要求を受信するコアサーバ受信部と、サービス要求に含まれるサービス識別子を用いて取得した制約情報を満たすか否かを判断する制約判断部と、満たさないと判断した場合に適応情報が示す適応処理を行って制約を満たすようにする適応処理部と、サービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、決定したサービスサーバに適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備するコアサーバにより、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。【選択図】図２
2012014542.tif 000002
【特許請求の範囲】
【請求項１】
１以上の端末装置と１以上のサービスサーバと１以上のコアサーバとを有する情報システムであって、
前記端末装置は、
サービスを識別するサービス識別子を有するサービスの要求であるサービス要求を受け付ける端末受付部と、
前記サービス要求を前記コアサーバに送信する端末送信部と、
前記サービス要求の送信に応じて、サービスの結果を受信する端末受信部と、
前記端末受信部が受信したサービスの結果を出力する端末出力部とを具備し、
前記サービスサーバは、
前記サービスを遂行するための１以上の処理手段を格納し得る処理手段格納部と、
前記コアサーバから前記サービス要求を受信するサービスサーバ受信部と、
前記サービスサーバ受信部が受信したサービス要求に従って、前記処理手段格納部の処理手段を実行し、サービスを遂行し、サービスの結果を取得するサービス部と、
前記サービス部のサービスの結果を送信するサービスサーバ送信部とを具備し、
前記コアサーバは、
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する１以上の制約満足情報を格納し得る制約満足情報格納部と、
前記端末装置からサービス要求を受信するコアサーバ受信部と、
前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、
前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、
前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、
前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備する情報システム。
【請求項２】
前記制約情報は、
制約を特定する制約特定情報と、当該制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子と対になる検査情報を前記制約満足情報格納部から取得し、当該検査情報に従って検査を行い、前記制約特定情報で特定される制約を満たすか否かを判断する請求項１記載の情報システム。
【請求項３】
前記サービス要求が有するサービス識別子は、
複数のサービスが含まれる複合サービスであり、
前記コアサーバは、
複合サービスを識別する複合サービス識別子と、当該複合サービスに含まれる２以上の原子サービスを識別する２以上の原子サービス識別子とを対応づける複合サービス情報を格納している複合サービス情報格納部をさらに具備し、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記サービス要求に含まれる複合サービス識別子に対応する２以上の原子サービス識別子を、前記複合サービス情報格納部から取得し、当該２以上の各原子サービス識別子と対になる制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断し、
前記適応処理部は、
前記制約判断部が前記制約を満たさないと判断した場合に、当該制約を満たさない原子サービス識別子と対になる適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする請求項１または請求項２記載の情報システム。
【請求項４】
前記サービス要求が有するサービス識別子、または前記サービス要求が有するサービス識別子が複合サービス識別子である場合、当該複合サービス識別子に対応する２以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、
前記サービスサーバ決定部は、
抽象サービス識別子と、当該抽象サービス識別子で識別されるサービスを実現する１以上の具体的なサービスを識別する具象サービス識別子と、当該具象サービス識別子ごとに当該具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する１以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、
前記サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する１以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、
前記サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、
前記コアサーバ送信部は、
前記サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信する請求項１から請求項３いずれか記載の情報システム。
【請求項５】
前記制約情報は、
２以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または２以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記複合サービス識別子に対応する２以上の原子サービス識別子を、前記複合サービス情報格納部から取得し、当該２以上の原子サービス識別子が、前記外部制約情報が示す制約を満たすか否かを判断する請求項３または請求項４記載の情報システム。
【請求項６】
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する１以上の制約満足情報を格納し得る制約満足情報格納部と、
端末装置からサービス要求を受信するコアサーバ受信部と、
前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、
前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、
前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、
前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備するコアサーバ。
【請求項７】
請求項１から請求項５いずれか記載の情報システムを構成するコアサーバ。
【請求項８】
記録媒体に、
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する１以上の制約満足情報を格納しており、
コアサーバ受信部、制約判断部、適応処理部、サービスサーバ決定部、およびコアサーバ送信部により実現されるサービス提供方法であって、
前記コアサーバ受信部は、端末装置からサービス要求を受信するコアサーバ受信ステップと、
前記制約判断部は、前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断ステップと、
前記適応処理部は、前記制約判断ステップで前記制約を満たさないと判断された場合に、前記サービス識別子を用いて、適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理ステップと、
前記サービスサーバ決定部は、前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定ステップと、
前記コアサーバ送信部は、前記サービスサーバ決定ステップで決定されたサービスサーバに、前記適応処理ステップで適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信ステップとを具備するサービス提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、与えられた制約を満たすようにサービスを提供する情報システム等に関するものである。
【背景技術】
【０００２】
従来、サービス連携において、利用者の負担を伴わずに利用者の満足度を高めるサービスの選択ができるサービス選択制御技術があった（特許文献１参照）。かかるサービス選択制御技術は、通信ネットワークと情報ネットワークとの双方から利用可能な一または複数のサービスシナリオまたはサービスコンポーネントのうち任意のサービスを選択して提供する際のサービス選択を制御するサービス選択制御方法であって、サービスシナリオまたはサービスコンポーネントのそれぞれの評価値情報を算出する評価算出ステップと、評価値情報を記憶する評価値記憶ステップと、サービス選択の際に、評価値情報を参照し、評価値が高いサービスシナリオまたはサービスコンポーネントを検出するサービス選択ステップとを備えることを特徴とする。
【０００３】
また、従来、サービス合成を効率的に行うことができるサービス合成システムがあった（特許文献２参照）。本サービス合成システムは、サービス合成装置とサービス要素との整合がとれない場合、サービス合成装置とサービス要素とを仲介するサービス要素を利用可能なインターフェースとしてそのサービス要素に追加登録するシステムである。これにより、その後は、同様の不整合の場合に再度仲介サービス要素として機能するサービス要素を検索する必要がないので、効率的にサービス合成を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１６０１９８号公報（第１頁、第１図等）
【特許文献２】特開２００５−７１０５２号公報（第１頁、第１図等）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の技術においては、多数のサービスから与えられた制約を満たすサービスを選択する情報システムにおいて、制約を満たすサービスが選択できない場合、サービスの提供が行われない、という課題があった。
そこで、本発明は、情報システムにおいて、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行えるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本第一の発明の情報システムは、１以上の端末装置と１以上のサービスサーバと１以上のコアサーバとを有する情報システムであって、端末装置は、サービスを識別するサービス識別子を有するサービスの要求であるサービス要求を受け付ける端末受付部と、サービス要求をコアサーバに送信する端末送信部と、サービス要求の送信に応じて、サービスの結果を受信する端末受信部と、端末受信部が受信したサービスの結果を出力する端末出力部とを具備し、サービスサーバは、サービスを遂行するための１以上の処理手段を格納し得る処理手段格納部と、コアサーバからサービス要求を受信するサービスサーバ受信部と、サービスサーバ受信部が受信したサービス要求に従って、処理手段格納部の処理手段を実行し、サービスを遂行し、サービスの結果を取得するサービス部と、サービス部のサービスの結果を送信するサービスサーバ送信部とを具備し、コアサーバは、サービスを識別するサービス識別子と、サービスの制約に関する情報である制約情報と、制約を満たさない場合に制約を満たすようにするための情報である適応情報とを有する１以上の制約満足情報を格納し得る制約満足情報格納部と、端末装置からサービス要求を受信するコアサーバ受信部と、サービス要求に含まれるサービス識別子を用いて、制約情報を制約満足情報格納部から取得し、制約情報で特定される制約を満たすか否かを判断する制約判断部と、制約判断部が制約を満たさないと判断した場合に、サービス識別子を用いて、適応情報を制約満足情報格納部から取得し、適応情報で特定される適応処理を行って制約を満たすようにする適応処理部と、サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、サービスサーバ決定部が決定したサービスサーバに、適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備する情報システムである。
【０００７】
かかる構成により、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。
【０００８】
また、本第二の発明の情報システムは、第一の発明に対して、制約情報は、制約を特定する制約特定情報と、制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、制約判断部は、サービス要求に含まれるサービス識別子と対になる検査情報を制約満足情報格納部から取得し、検査情報に従って検査を行い、制約特定情報で特定される制約を満たすか否かを判断する情報システムである。
【０００９】
かかる構成により、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。
【００１０】
また、本第三の発明の情報システムは、第一または第二の発明に対して、サービス要求が有するサービス識別子は、複数のサービスが含まれる複合サービスであり、コアサーバは、複合サービスを識別する複合サービス識別子と、複合サービスに含まれる２以上の原子サービスを識別する２以上の原子サービス識別子とを対応づける複合サービス情報を格納している複合サービス情報格納部をさらに具備し、制約判断部は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、サービス要求に含まれる複合サービス識別子に対応する２以上の原子サービス識別子を、複合サービス情報格納部から取得し、２以上の各原子サービス識別子と対になる制約情報を制約満足情報格納部から取得し、制約情報で特定される制約を満たすか否かを判断し、適応処理部は、制約判断部が制約を満たさないと判断した場合に、制約を満たさない原子サービス識別子と対になる適応情報を制約満足情報格納部から取得し、適応情報で特定される適応処理を行って制約を満たすようにする情報システムである。
【００１１】
かかる構成により、複合サービスの場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。
【００１２】
また、本第四の発明の情報システムは、第一から第三いずれかの発明に対して、サービス要求が有するサービス識別子、またはサービス要求が有するサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する２以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、サービスサーバ決定部は、抽象サービス識別子と、抽象サービス識別子で識別されるサービスを実現する１以上の具体的なサービスを識別する具象サービス識別子と、具象サービス識別子ごとに具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する１以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する１以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、コアサーバ送信部は、サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、適応処理部が適応処理を行った結果を反映させたサービス要求を送信する情報システムである。
【００１３】
かかる構成により、抽象サービスの遂行が指示されている場合で、与えられた制約を満たす具象サービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、抽象サービスの提供を行える。
【００１４】
また、本第五の発明の情報システムは、第三または第四の発明に対して、制約情報は、２以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または２以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、制約判断部は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する２以上の原子サービス識別子を、複合サービス情報格納部から取得し、２以上の原子サービス識別子が、外部制約情報が示す制約を満たすか否かを判断する情報システムである。
【００１５】
かかる構成により、制約が複数のサービス間の制約である場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。
【発明の効果】
【００１６】
本発明による情報システムによれば、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態における情報システムの概念図
【図２】同情報システムのブロック図
【図３】同情報システムの動作について説明するフローチャート
【図４】同サービスサーバの動作について説明するフローチャート
【図５】同コアサーバの動作について説明するフローチャート
【図６】同サービス要求処理の動作について説明するフローチャート
【図７】同サービス要求処理の動作について説明するフローチャート
【図８】同サービスサーバ決定処理の動作について説明するフローチャート
【図９】同制約満足情報管理表を示す図
【図１０】同複合サービス情報管理表を示す図
【図１１】同サービスサーバ管理情報管理表を示す図
【図１２】同コンピュータシステムの概観図
【図１３】同コンピュータシステムのブロック図
【発明を実施するための形態】
【００１８】
以下、情報システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００１９】
（実施の形態１）
【００２０】
本実施の形態において、与えられた制約に合致するか否かを判断し、合致しない場合に、合致するように適応処理を行う情報システムについて説明する。
【００２１】
図１は、本実施の形態における情報システムの概念図である。情報システムは、１以上の端末装置１、１以上のサービスサーバ２、および１以上のコアサーバ３を備える。また、１以上の端末装置１、１以上のサービスサーバ２、および１以上のコアサーバ３は、インターネットやＬＡＮやＷＡＮ等のネットワーク４により、通信可能である。
【００２２】
なお、本実施の形態において、端末装置１が２以上、存在する場合、通常、２以上の国に分散している。しかし、２以上の端末装置１は、１国内に存在していても良い。また、サービスサーバ２が２以上、存在する場合、通常、２以上の国に分散している。しかし、２以上のサービスサーバ２は、１国内に存在していても良い。さらに、本実施の形態において、コアサーバ３が２以上存在する場合、２以上のコアサーバ３は、通常、２以上の国に分散している。しかし、２以上のコアサーバ３は、１国内に存在していても良い。また、端末装置１は、いわゆるパーソナルコンピュータ、携帯端末（携帯電話を含む）、ナビゲーション端末、テレビジョン端末等、問わない。
【００２３】
図２は、本実施の形態における情報システムのブロック図である。
【００２４】
端末装置１は、端末受付部１１、端末送信部１２、端末受信部１３、および端末出力部１４を備える。
【００２５】
サービスサーバ２は、処理手段格納部２１、サービスサーバ受信部２２、サービス部２３、およびサービスサーバ送信部２４を備える。
【００２６】
コアサーバ３は、制約満足情報格納部３１、複合サービス情報格納部３２、コアサーバ受信部３３、制約判断部３４、適応処理部３５、サービスサーバ決定部３６、およびコアサーバ送信部３７を備える。また、サービスサーバ決定部３６は、サービスサーバ管理情報格納手段３６１、サービス識別子取得手段３６２、およびサービスサーバ識別子取得手段３６３を備える。
【００２７】
端末装置１を構成する端末受付部１１は、サービス要求を受け付ける。サービス要求とは、サービスを識別するサービス識別子を有するサービスの要求である。サービス要求は、２以上のサービスを複合した複合サービスを識別するサービス識別子を有するサービスの要求であっても良い。また、サービス要求とは、通常、ユーザ識別子も有する。なお、ユーザ識別子は、予め端末装置１が保持している。また、ユーザ識別子は、例えば、ユーザがログインする際に入力した情報である。ユーザ識別子は、ユーザＩＤ、端末装置１のＩＰアドレス等、ユーザを識別できる情報であれば何でも良い。また、サービスには、一つの機能を果たす原子サービスと、複数の原子サービスが統合した複合サービスとがある。また、サービスは、何らかの機能を提供するものであり、例えば、機械翻訳処理や、形態素解析処理や、動画字幕同時翻訳のサービスや、言語翻訳付きのＴＶ会議システムのサービスなどである。ただし、サービスの内容は問わない。また、端末受付部１１は、ユーザから各種の指示やデータを受け付ける。また、サービス要求は、サービス対象のデータを含んでも良いことは言うまでもない。また、サービス要求は、複合サービスを構成する２以上の原子サービスの識別子である２以上原子サービスの識別子を含んでも良い。また、サービス要求は、いわゆるプログラムを含んでも良い。プログラムとは、複合サービスを定義した情報であり、２以上原子サービスの識別子を有し、かつ制御も有する。
【００２８】
ここで、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導１体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。サービス要求等の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。
【００２９】
端末送信部１２は、端末受付部１１が受け付けたサービス要求をコアサーバ３に送信する。また、端末送信部１２は、端末受付部１１が受け付けた他の命令や、データ等をコアサーバ３に送信する。
【００３０】
端末受信部１３は、サービス要求の送信に応じて、サービスの結果を受信する。ここでの受信は、通常、コアサーバ３からの受信である。しかし、端末受信部１３は、サービスの結果をサービスサーバ２から受信しても良い。また、端末受信部１３は、サービスを享受している間、サービスの結果を受信する。例えば、端末受信部１３は、サービス識別子「翻訳処理」と翻訳対象のデータとを含むサービス要求に対するサービスの結果である翻訳結果を受信する。また、例えば、要求されたサービスがＴＶ電話（ＴＶ会議）のサービスである場合、端末受信部１３は、会議中において、相手からの動画や音声等を受信し続ける。
【００３１】
端末出力部１４は、端末受信部１３が受信したサービスの結果を出力する。ここでの出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【００３２】
サービスサーバ２を構成する処理手段格納部２１は、サービスを遂行するための１以上の処理手段を格納し得る。ここで、処理手段とは、通常、サービスを実現するプログラム、ソフトウェアであるが、サービスを実現するハードウェアでも良い。なお、プログラムやソフトウェアは、通常、実行可能なプログラムやソフトウェアである。処理手段は、例えば、形態素解析プログラム、日英翻訳プログラム、音声認識プログラム等である。
【００３３】
サービスサーバ受信部２２は、コアサーバ３からサービス要求を受信する。
【００３４】
サービス部２３は、サービスサーバ受信部２２が受信したサービス要求に従って、処理手段格納部２１の処理手段を実行し、サービスを遂行し、サービスの結果を取得する。サービス部２３は、通常、サービス要求に含まれるサービス識別子に対応する処理手段を処理手段格納部２１から読み出し、当該読み出した処理手段を実行する。また、サービス要求が処理対象のデータを含む場合、サービス部２３は、当該データを、サービス要求に含まれるサービス識別子に対応する処理手段に渡し、当該処理手段を実行する。
【００３５】
サービスサーバ送信部２４は、サービス部２３のサービスの結果を送信する。サービスサーバ送信部２４は、サービスの結果を、通常、コアサーバ３に送信する。しかし、サービスサーバ送信部２４は、サービス要求を送信した端末装置１に送信しても良い。
【００３６】
コアサーバ３を構成する制約満足情報格納部３１は、１以上の制約満足情報を格納し得る。制約満足情報は、サービスを識別するサービス識別子と、制約情報と、適応情報とを有する。制約情報とは、サービスの制約に関する情報である。適応情報とは、制約を満たさない場合に制約を満たすようにするための情報である。なお、サービス識別子は、原子サービス識別子でも複合サービス識別子でも良い。原子サービス識別子は、一の処理手段（プログラム）で実現され得るサービスである原子サービスの識別子である。複合サービス識別子は、２以上の原子サービスを組み合わせて実現されるサービスである複合サービスの識別子である。また、サービス識別子は、具象サービス識別子でも、抽象サービス識別子でも良い。具象サービス識別子とは、サービスを提供する具体的な処理手段（プログラム）の名称やＩＤなどである。抽象サービス識別子とは、サービスの機能を象徴する名称やＩＤなどである。抽象サービス識別子は、例えば、「形態素解析」、「機械翻訳」などである。また、制約情報は、内部制約情報または外部制約情報である。内部制約情報とは、一のサービスに関する制約情報であり、例えば、処理可能なデータ量、処理可能な文字数などである。また、外部制約情報は、２以上のサービスに関する制約情報であり、例えば、２以上のサービスが一度に動作しないことを示す制約に関する情報、または２以上のサービスが一度に動作することを示す制約に関する情報である。ここで、「２以上のサービスが一度に動作する」とは、通常、２以上のサービスが同時に動作することではなく、２以上のサービスが組み合わされて動作すること、２以上のサービスが複合サービスで利用されること、２以上のサービスが連続して動作すること等の意味である。また、制約情報は、制約を特定する制約特定情報と、制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有しても良い。制約特定情報には、例えば、処理可能なデータ量、処理可能な文字数などの一のサービスに関する制約情報である内部制約情報がある。また、制約特定情報には、例えば、２以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または２以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報などがある。また、検査情報は、検査を行うプログラムの識別子であるプログラム識別子（処理識別子とも言う）、または検査を行うプログラムとそのプログラム識別子、または検査を行うプログラムなどである。
【００３７】
複合サービス情報格納部３２は、複合サービス情報を格納している。複合サービス情報は、複合サービス識別子と、２以上の原子サービス識別子とを対応づける情報である。複合サービス情報は、複合サービス識別子と２以上の原子サービス識別子とそれらの制御方法を含む、いわゆるプログラムでも良い。複合サービス情報は、端末装置１から送信されてきたサービス要求に含まれている情報でも良い。複合サービス識別子とは、複合サービスを識別する識別子である。
【００３８】
コアサーバ受信部３３は、端末装置１からサービス要求を受信する。また、コアサーバ受信部３３は、端末装置１からユーザ識別子やパスワード等の他の情報を受信しても良い。なお、コアサーバ受信部３３がユーザ識別子やパスワードを受信した場合、コアサーバ３の図示しない認証手段は、認証処理を行う。なお、認証処理は公知技術であるので、詳細な説明を省略する。また、コアサーバ受信部３３は、サービスサーバ２からサービスの結果を受信しても良い。
【００３９】
制約判断部３４は、サービス要求に含まれるサービス識別子を用いて、制約情報を制約満足情報格納部３１から取得し、サービス要求が制約情報で特定される制約を満たすか否かを判断する。なお、ここでのサービス識別子は、原子サービス識別子でも、複合サービス識別子でも良い。サービス要求に含まれるサービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該抽象サービス識別子に対応する１以上の具象サービス識別子を取得し、１以上のいずれかの具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たすか否かを判断する。そして、制約判断部３４は、すべての具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たさないと判断した場合に、サービス要求が制約情報で特定される制約を満たさない、と判断する。また、サービス要求に含まれるサービス識別子が具象サービス識別子である場合、制約判断部３４は、当該具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たすか否かを判断する。
【００４０】
また、制約判断部３４は、サービス要求に含まれるサービス識別子を用いて、検査情報を制約満足情報格納部３１から取得し、当該検査情報に従って検査を行い、制約特定情報で特定される制約を満たすか否かを判断する。サービス要求に含まれるサービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該抽象サービス識別子に対応する１以上の具象サービス識別子を取得し、１以上の各具象サービス識別子と対になる検査情報を制約満足情報格納部３１から取得し、当該検査情報に従って検査を行い、各具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。また、サービス要求に含まれるサービス識別子が具象サービス識別子である場合、制約判断部３４は、当該具象サービス識別子と対になる検査情報を制約満足情報格納部３１から取得し、当該検査情報に従って検査を行い、前記具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。
【００４１】
また、制約判断部３４は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、サービス要求に含まれる複合サービス識別子に対応する２以上の原子サービス識別子を、複合サービス情報格納部３２から取得し、２以上の各原子サービス識別子を用いて、制約情報を制約満足情報格納部３１から取得し、制約情報で特定される制約を満たすか否かを判断する。原子サービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該抽象サービス識別子に対応する１以上の具象サービス識別子を取得し、１以上の各具象サービス識別子と対になる検査情報を制約満足情報格納部３１から取得し、当該検査情報に従って検査を行い、各具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。また、原子サービス識別子が具象サービス識別子である場合、制約判断部３４は、当該具象サービス識別子と対になる検査情報を制約満足情報格納部３１から取得し、当該検査情報に従って検査を行い、前記具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。
【００４２】
なお、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、制約判断部３４は、複合サービス識別子と対になる制約情報を制約満足情報格納部３１から取得し、制約情報で特定される制約を満たすか否かを判断しても良い。また、複合サービス識別子に対応する２以上の原子サービス識別子が存在する場合、すべての原子サービス識別子に対応する制約情報が存在するとは限らない。
【００４３】
また、制約判断部３４は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する２以上の原子サービス識別子を、複合サービス情報格納部３２から取得し、２以上の原子サービス識別子が、外部制約情報が示す制約を満たすか否かを判断する。２以上の原子サービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該２以上の各抽象サービス識別子に対応する２以上の具象サービス識別子を取得し、当該２以上の具象サービス識別子のうちの各抽象サービス識別子に対応する２以上の具象サービス識別子で識別されるサービスが、外部制約情報が示す制約を満たすか否かを判断する。また、２以上の原子サービス識別子が具象サービス識別子である場合、当該２以上の具象サービス識別子で識別されるサービスが、外部制約情報が示す制約を満たすか否かを判断する。
【００４４】
適応処理部３５は、制約判断部３４が制約を満たさないと判断した場合に、サービス識別子と対になる適応情報を制約満足情報格納部３１から取得し、適応情報で特定される適応処理を行って制約を満たすようにする。
【００４５】
また、適応処理部３５は、制約判断部３４が制約を満たさないと判断した場合に、制約を満たさない原子サービス識別子と対になる適応情報を制約満足情報格納部３１から取得し、適応情報で特定される適応処理を行って制約を満たすようにする。
【００４６】
なお、適応処理部３５は、通常、適応情報に含まれる適応処理識別子で識別される適応処理手段を実行する。適応処理手段は、適応処理を行うプログラムである。適応情報は、例えば、適応処理識別子または適応処理手段を有する。適応情報が適応処理識別子のみを有する場合、適応処理手段は、別途図示しない記録媒体に格納されている。また、適応処理とは、例えば、処理対象のデータを処理可能なように分割する処理である。また、適応処理とは、例えば、複合サービスの場合に、一緒に使用可能な２以上のサービスを識別する２以上のサービス識別子を取得する処理である。なお、適応処理の処理内容は問わないことは言うまでもない。
【００４７】
サービスサーバ決定部３６は、サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定する。適応処理部３５が、例えば、一緒に使用可能な２以上のサービスを識別する２以上のサービス識別子を取得した場合、当該２以上のサービス識別子で識別されるサービスを提供可能なサービスサーバを、サービスを提供するサービスサーバとして決定する。サービスサーバ２を決定する処理は、例えば、サービスサーバ２を識別するサービスサーバ識別子を取得する処理である。また、サービスサーバ決定部３６は、制約判断部３４が制約を満たすと判断した場合は、サービス識別子に対応するサービスサーバ２の識別子を取得する。つまり、制約判断部３４が制約を満たすと判断した場合は、適応処理部３５による適応処理は行われない。さらに、適応処理部３５による適応処理を行っても制約を満たさない場合は、サービスサーバ決定部３６は、サービスサーバ２を決定できない。また、サービスサーバ決定部３６は、通常、サービス識別子とサービスサーバ識別子との対応表を保持している。ここでのサービス識別子は、抽象サービス識別子でも良いし、具象サービス識別子でも良い。
【００４８】
サービスサーバ管理情報格納手段３６１は、１以上のサービスサーバ管理情報を格納し得る。サービスサーバ管理情報は、抽象サービス識別子と、１以上の具象サービス識別子と、サービスサーバ識別子とを有する。抽象サービス識別子は、機能名や機能を特定するＩＤであり、例えば、形態素解析、専門用語辞書機能、機械翻訳等である。また、具象サービス識別子は、抽象サービス識別子で識別されるサービスを実現する具体的なサービスを識別する情報である。具象サービス識別子は、例えば、例えば、形態素解析を行うＭｅＣａｂ（「http://mecab.sourceforge.net/」を参照）、ＴｒｅｅＴａｇｇｅｒ（「http://nlp.nagaokaut.ac.jp/TreeTagger」を参照）などである。さらに、サービスサーバ識別子は、具象サービス識別子で識別されるサービスを行うサービスサーバ２を識別する情報である。
【００４９】
サービス識別子取得手段３６２は、サービスの提供を行う一の具象サービス識別子を取得する。サービス識別子取得手段３６２は、サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する１以上の具象サービス識別子から一の具象サービス識別子を取得する。サービスを実現する具象サービスの候補が２以上存在する場合、サービス識別子取得手段３６２は、ランダムに一の具象サービス識別子を選択しても良い。また、サービスを実現する具象サービスの候補が２以上存在する場合、サービス識別子取得手段３６２は、外部制約を満たすように、一の具象サービス識別子を選択しても良い。なお、外部制約を満たすように、一の具象サービス識別子を選択する処理は、通常、適応処理部３５が行う。かかる場合、サービス識別子取得手段３６２は、適応処理部３５の適応処理の結果を反映させ、適応処理部３５が選択した一の具象サービス識別子を選択する。
【００５０】
サービスサーバ識別子取得手段３６３は、サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得する。サービスサーバ識別子とは、例えば、サービスサーバのＩＰアドレス、サービスにアクセスするためのＵＲＬ、ＵＲＩなどである。また、サービスサーバ識別子取得手段３６３は、外部制約を満たすようにサービスサーバ識別子を取得することは好適である。
【００５１】
コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ２に、適応処理部３５が適応処理を行った結果を反映させたサービス要求を送信する。コアサーバ送信部３７が送信するサービス要求は、通常、具象サービス識別子を有する。つまり、コアサーバ受信部３３が受信したサービス要求が有するサービス識別子は抽象サービス識別子であり、コアサーバ送信部３７が送信するサービス要求が有するサービス識別子は具象サービス識別子であることは好適である。
【００５２】
さらに、具体的には、コアサーバ送信部３７は、サービスサーバ識別子取得手段３６３が取得したサービスサーバ識別子で識別されるサービスサーバ２に、適応処理部３５が適応処理を行った結果を反映させたサービス要求を送信する。ここで、「適応処理を行った結果を反映させたサービス要求の送信」とは、適応処理を行った結果を含むサービス要求の送信や、外部制約を満たすサービスサーバ２へのサービス要求の送信等である。
【００５３】
また、制約判断部３４が制約を満たすと判断した場合は、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ２に、受信されたサービス要求を送信する。
【００５４】
端末受付部１１は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００５５】
処理手段格納部２１、制約満足情報格納部３１、複合サービス情報格納部３２、およびサービスサーバ管理情報格納手段３６１は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。処理手段格納部２１等に処理手段等が記憶される過程は問わない。例えば、記録媒体を介して処理手段等が処理手段格納部２１等で記憶されるようになってもよく、通信回線等を介して送信された処理手段等が処理手段格納部２１等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された処理手段等が処理手段格納部２１等で記憶されるようになってもよい。
【００５６】
端末送信部１２、サービスサーバ送信部２４、およびコアサーバ送信部３７は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。
【００５７】
端末受信部１３、サービスサーバ受信部２２、およびコアサーバ受信部３３は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。
【００５８】
端末出力部１４は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。端末出力部１４は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００５９】
サービス部２３、制約判断部３４、適応処理部３５、サービスサーバ決定部３６、サービス識別子取得手段３６２、およびサービスサーバ識別子取得手段３６３は、通常、ＭＰＵやメモリ等から実現され得る。サービス部２３等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００６０】
次に、情報システムの動作について説明する。まず、情報システムを構成する端末装置１の動作について、図３のフローチャートを用いて説明する。
【００６１】
（ステップＳ３０１）端末受付部１１は、ユーザから指示等を受け付けたか否かを判断する。指示等を受け付ければステップＳ３０２に行き、指示等を受け付けなければステップＳ３０５に行く。
【００６２】
（ステップＳ３０２）端末送信部１２は、ステップＳ３０１で受け付けた指示等が、サービス要求であるか否かを判断する。サービス要求であればステップＳ３０３に行き、サービス要求でなければステップＳ３０４に行く。
【００６３】
（ステップＳ３０３）端末送信部１２は、ステップＳ３０１で受け付けたサービス要求をコアサーバ３に送信し、ステップＳ３０１に戻る。
【００６４】
（ステップＳ３０４）端末送信部１２または図示しない処理手段は、ステップＳ３０１で受け付けたその他の指示やデータに対応した処理を行い、ステップＳ３０１に戻る。なお、端末受付部１１がステップＳ３０１で、処理手段に渡す情報（例えば、ＴＶ会議では、動画や音声や字幕など）を受け付けた場合、端末送信部１２は当該処理手段に渡す情報をコアサーバ３またはサービスサーバ２に送信する。
【００６５】
（ステップＳ３０５）端末受信部１３は、サービスの結果を受信したか否かを判断する。サービスの結果を受信すればステップＳ３０６に行き、受信しなければステップＳ３０１に戻る。
【００６６】
（ステップＳ３０６）端末出力部１４は、ステップＳ３０９で受信されたサービスの結果を出力し、ステップＳ３０１に戻る。
【００６７】
なお、図３のフローチャートにおいて、ユーザがサービスの停止指示を入力した場合、サービス識別子を有する停止命令がコアサーバ３に送信される。
【００６８】
また、図３のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００６９】
次に、サービスサーバ２の動作について、図４のフローチャートを用いて説明する。
【００７０】
（ステップＳ４０１）サービスサーバ受信部２２は、コアサーバ３からサービス要求を受信したか否かを判断する。サービス要求を受信すればステップＳ４０２に行き、サービス要求を受信しなければステップＳ４０６に行く。
【００７１】
（ステップＳ４０２）サービス部２３は、ステップＳ４０１で受信されたサービス要求に含まれるサービス識別子を取得する。
【００７２】
（ステップＳ４０３）サービス部２３は、ステップＳ４０２で取得したサービス識別子に対応する処理手段を処理手段格納部２１から読み出し、当該読み出した処理手段を実行する。
【００７３】
（ステップＳ４０４）サービスサーバ送信部２４は、ステップＳ４０３におけるサービス部２３のサービスの結果を取得する。
【００７４】
（ステップＳ４０５）サービスサーバ送信部２４は、ステップＳ４０４で取得したサービスの結果を送信し、ステップＳ４０１に戻る。
【００７５】
（ステップＳ４０６）サービスサーバ受信部２２は、コアサーバ３から停止命令を受信したか否かを判断する。停止命令を受信すればステップＳ４０７に行き、停止命令を受信しなければステップＳ４０１に戻る。
【００７６】
（ステップＳ４０７）サービス部２３は、ステップＳ４０６で受信された停止命令に含まれるサービス識別子を取得する。
【００７７】
（ステップＳ４０８）サービス部２３は、ステップＳ４０７で取得したサービス識別子に対応する処理手段の実行を停止し、ステップＳ４０１に戻る。
【００７８】
なお、図４のフローチャートにおいて、サービス要求を受信した後、停止命令を受信するまで、サービス要求に含まれるサービス識別子に対応する処理手段を実行し続けても良い。そして、サービスの結果の取得、および送信を繰り返しても良い。
【００７９】
また、図４のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００８０】
次に、コアサーバ３の動作について、図５のフローチャートを用いて説明する。
【００８１】
（ステップＳ５０１）コアサーバ受信部３３は、端末装置１からサービス要求を受信したか否かを判断する。サービス要求を受信すればステップＳ５０２に行き、サービス要求を受信しなければステップＳ５０４に行く。
【００８２】
（ステップＳ５０２）コアサーバ３は、サービス要求を処理する。かかるサービス要求処理について、図６、図７のフローチャートを用いて説明する。
【００８３】
（ステップＳ５０３）コアサーバ送信部３７は、サービスサーバ２で行われたサービス要求に対する結果を、サービス要求を送信してきた端末装置１に送信し、ステップＳ５０１に戻る。
【００８４】
（ステップＳ５０４）コアサーバ受信部３３は、端末装置１から停止命令を受信したか否かを判断する。停止命令を受信すればステップＳ５０５に行き、停止命令を受信しなければステップＳ５０７に行く。
【００８５】
（ステップＳ５０５）コアサーバ送信部３７は、停止命令が有するサービス識別子で識別されるサービスを遂行しているサービスサーバ２のサービスサーバ識別子を取得する。なお、サービスを遂行しているサービスサーバ２のサービスサーバ識別子は、コアサーバ３の図示しない管理手段に格納されている、とする。
【００８６】
（ステップＳ５０６）コアサーバ送信部３７は、ステップＳ５０５で取得したサービスサーバ識別子で識別されるサービスサーバ２に、サービスの停止命令を送信し、ステップＳ５０１に戻る。
【００８７】
（ステップＳ５０７）コアサーバ受信部３３は、端末装置１から他の指示やデータ等を受信したか否かを判断する。他の指示やデータ等を受信すればステップＳ５０８に行き、受信しなければステップＳ５０１に戻る。
【００８８】
（ステップＳ５０８）コアサーバ３は、他の指示やデータに応じた処理を行う。例えば、ＴＶ会議サービスに利用されるデータ（動画や音声）等が継続して受信されている場合、コアサーバ受信部３３は、当該データを、処理対象のサービスサーバ２に送信し、ステップＳ５０１に戻る。
【００８９】
なお、図５のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００９０】
次に、ステップＳ５０２のサービス要求処理について、図６、図７のフローチャートを用いて説明する。
【００９１】
（ステップＳ６０１）制約判断部３４は、受信されたサービス要求に含まれるサービス識別子が複合サービス識別子であるか否かを判断する。複合サービス識別子であればステップＳ６０２に行き、複合サービス識別子でなければステップＳ６１０に行く。
【００９２】
（ステップＳ６０２）制約判断部３４は、サービス要求から複合サービス識別子を取得する。
【００９３】
（ステップＳ６０３）制約判断部３４は、複合サービス識別子に対応する複合サービス情報を、複合サービス情報格納部３２から取得する。また、制約判断部３４は、サービス要求に含まれる複合サービス情報を取得しても良い。
【００９４】
（ステップＳ６０４）制約判断部３４は、ステップＳ６０３で取得した複合サービス識別子と対になる制約情報を制約満足情報格納部３１から取得する。
【００９５】
（ステップＳ６０５）制約判断部３４は、ステップＳ６０４で制約情報を取得できたか否かを判断する。制約情報を取得できればステップＳ６０６に行き、制約情報を取得できなければステップＳ６１０に行く。
【００９６】
（ステップＳ６０６）制約判断部３４は、ステップＳ６０４で取得した制約情報を用いて、制約を満たすか否かを判断する。制約判断部３４は、例えば、サービス要求が有するデータを、検査情報で特定される検査手段（例えば、プログラム）に渡して、制約特定情報で特定される制約を満たすか否かを判断する。
【００９７】
（ステップＳ６０７）制約判断部３４は、ステップＳ６０６における判断結果が制約を満たさないとの判断の場合はステップＳ６０８に行き、満たすとの判断の場合はステップＳ６１０に行く。
【００９８】
（ステップＳ６０８）適応処理部３５は、複合サービス識別子と対になる適応情報を制約満足情報格納部３１から取得する。
【００９９】
（ステップＳ６０９）適応処理部３５は、ステップＳ６０８で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。なお、かかる処理は、適応情報が有するフラグを用いて行うことは好適である。フラグは、適応処理のタイミング、または適応処理の回数（１回または繰り返し）、または適応処理のタイミングと適応処理の回数とを示す情報である。適応処理のタイミングは、例えば、サービスを遂行する前、または後である。サービス識別子で識別されるサービス（処理）を行う前に行われる適応処理を前処理、サービス識別子で識別されるサービス（処理）を行った後に行われる適応処理を後処理という。
【０１００】
（ステップＳ６１０）制約判断部３４は、カウンタｉに１を代入する。
【０１０１】
（ステップＳ６１１）制約判断部３４は、ｉ番目の原子サービス識別子が存在するか否かを判断する。ここで、サービスが複合サービスである場合、制約判断部３４は、複合サービス情報に中の定義に従って、ｉ番目の原子サービス識別子が存在するか否かを判断する。また、サービスが原子サービスである場合、制約判断部３４は、「ｉ＝１」の場合のみ、ｉ番目の原子サービス識別子が存在すると判断する。ｉ番目の原子サービス識別子が存在すればステップＳ６１２に行き、存在しなければ上位処理にリターンする。
【０１０２】
（ステップＳ６１２）制約判断部３４は、ｉ番目の原子サービス識別子を、複合サービス情報またはサービス要求から取得する。
【０１０３】
（ステップＳ６１３）制約判断部３４は、ｉ番目の原子サービス識別子を用いて、制約情報を制約満足情報格納部３１から取得する。なお、ここでｉ番目の原子サービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該抽象サービス識別子に対応する１以上の具象サービス識別子を取得し、当該１以上の各具象サービス識別子と対になる制約情報を制約満足情報格納部３１から取得する。また、ここで、ｉ番目の原子サービス識別子が抽象サービス識別子である場合、制約のない当該抽象サービス識別子に対応する具象サービス識別子が、一つでも存在する場合、制約情報を取得しない。また、ｉ番目の原子サービス識別子が抽象サービス識別子である場合、制約のない当該抽象サービス識別子に対応する１以上のすべての具象サービス識別子が、対になる制約情報を有する場合のみ、１以上の各具象サービス識別子と対になる制約情報を制約満足情報格納部３１から取得する。なお、ここでｉ番目の原子サービス識別子が抽象サービス識別子である場合、制約判断部３４は、当該抽象サービス識別子と対になる制約情報を制約満足情報格納部３１から取得しても良い。
【０１０４】
（ステップＳ６１４）制約判断部３４は、ステップＳ６１３で制約情報を取得したか否かを判断する。ステップＳ６１３で制約情報を取得すればステップＳ６１５に行き、制約情報を取得しなければステップＳ６２０に行く。
【０１０５】
（ステップＳ６１５）制約判断部３４は、ステップＳ６１４で取得した１以上の制約情報を用いて、１以上の各制約を満たすか否かを判断する。制約判断部３４は、例えば、サービス要求が有するデータを、検査情報で特定される検査手段（例えば、プログラム）に渡して、制約特定情報で特定される制約を満たすか否かを判断する。なお、適応処理のタイミングがサービスの後である場合（後処理の場合）は、ここでは、制約判断部３４は、常に、制約を満たさない、と判断しても良い。後処理の場合、処理結果を得た後でなければ、制約を満たすか否かを判断できない場合もあるからである。
【０１０６】
（ステップＳ６１６）制約判断部３４は、ステップＳ６１５における判断結果が制約を満たさないとの判断の場合はステップＳ６１７に行き、満たすとの判断の場合はステップＳ６２０に行く。なお、ステップＳ６１４で１以上の制約情報を取得した場合、制約判断部３４は、ステップＳ６１５における判断結果が一つでも制約情報が示す制約を満たさないとの判断の場合にステップＳ６１７に行き、すべての制約情報が示す制約を満たすとの判断の場合はステップＳ６２０に行く。
【０１０７】
（ステップＳ６１７）適応処理部３５は、ｉ番目の原子サービス識別子を用いて、適応情報を制約満足情報格納部３１から取得する。ここで、ｉ番目の原子サービス識別子が抽象サービス識別子である場合、適応処理部３５は、当該原子サービス識別子に対応する１以上の各具象サービス識別子と対になる適応情報を制約満足情報格納部３１から取得する。
【０１０８】
（ステップＳ６１８）適応処理部３５は、ステップＳ６１７で取得した適応情報から、適応処理を行うタイミングがサービス遂行の前か否か（前処理か否か）を判断する。前処理であればステップＳ６１９に行き、前処理でなければステップＳ６２６に行く。
【０１０９】
（ステップＳ６１９）適応処理部３５は、ステップＳ６１７で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。なお、制約を満たさない２以上の具象サービス識別子で識別されるサービスが存在する場合、適応処理部３５は、制約を満たす一のサービスの具象サービス識別子を決定し、当該一の具象サービス識別子と対になる適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。ここで、制約を満たさない２以上の具象サービス識別子で識別されるサービスが存在する場合、適応処理部３５は、制約を満たす一のサービスの具象サービス識別子を、複数の具象サービス識別子の中からランダムに選択しても良いし、何らかのルール（例えば、現在、負荷が小さいサービスサーバのサービスの具象サービス識別子を取得するというルール）に基づいて制約を満たす一のサービスの具象サービス識別子を取得しても良い。
【０１１０】
（ステップＳ６２０）サービスサーバ決定部３６は、ｉ番目の原子サービス識別子で識別されるサービスが提供可能なサービスサーバ２を決定する。このサービスサーバ決定処理について、図８のフローチャートを用いて説明する。
【０１１１】
（ステップＳ６２１）コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ２にサービス要求を送信する。
【０１１２】
（ステップＳ６２２）コアサーバ受信部３３は、サービスサーバ２からサービスの結果を受信したか否かを判断する。受信すればステップＳ６２３、受信しなければステップＳ６２２に戻る。
【０１１３】
（ステップＳ６２３）適応処理部３５は、ステップＳ６１７で取得した適応情報から、適応処理を行うタイミングがサービス遂行の後か否か（後処理か否か）を判断する。後処理であればステップＳ６２４に行き、後処理でなければステップＳ６２５に行く。
【０１１４】
（ステップＳ６２４）適応処理部３５は、ステップＳ６１７で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。
【０１１５】
（ステップＳ６２５）制約判断部３４は、カウンタｉを１、インクリメントする。ステップＳ６１１に戻る。
【０１１６】
（ステップＳ６２６）適応処理部３５は、ステップＳ６１７で取得した適応情報から、適応処理を行うタイミングがサービス遂行の後か否か（後処理か否か）を判断する。後処理であればステップＳ６２０に行き、後処理でなければステップＳ６２７に行く。
【０１１７】
（ステップＳ６２７）適応処理部３５は、ステップＳ６１３で取得された制約情報から、制約が外部制約であるか否かを判断する。外部制約であればステップＳ６２８に行き、外部制約でなければステップＳ６２５に行く。
【０１１８】
（ステップＳ６２８）適応処理部３５は、適応情報をバッファに一時格納する。なお、バッファに一時格納された適応情報は、ステップＳ６２０のサービスサーバ決定処理で利用される。ステップＳ６２０に行く。
【０１１９】
次に、ステップＳ６２０のサービスサーバ決定処理について、図８のフローチャートを用いて説明する。
【０１２０】
（ステップＳ８０１）サービスサーバ決定部３６は、バッファに格納されている適応情報が存在するか否かを判断する。適応情報が存在すればステップＳ８０２に行き、適応情報が存在しなければステップＳ８０４に行く。
【０１２１】
（ステップＳ８０２）サービスサーバ決定部３６は、バッファに格納されている適応情報が有するサービス識別子が、現在、着目されているサービス識別子（通常、原子サービス識別子）に関連するか否かを判断する。サービスサーバ決定部３６は、適応情報とｉ番目の原子サービス識別子とを用いて、関連するか否かを判断する。関連すればステップＳ８０３に行き、関連しなければステップＳ８０４に行く。なお、関連するとは、適応情報が有するサービス識別子と着目されているサービス識別子とが一致する場合、着目されているサービス識別子が抽象サービス識別子で、適応情報が有するサービス識別子がその具象サービス識別子である場合などである。
【０１２２】
（ステップＳ８０３）サービス識別子取得手段３６２は、適応情報から、制約を満たす具象サービス識別子を取得する。ステップＳ８０５に行く。
【０１２３】
（ステップＳ８０４）サービス識別子取得手段３６２は、ｉ番目の原子サービス識別子から、具象サービス識別子を取得する。サービス識別子取得手段３６２は、例えば、サービスサーバ管理情報格納手段３６１から、ｉ番目の原子サービス識別子（ここでは、通常、抽象サービス識別子）と対になる具象サービス識別子を取得する。
【０１２４】
（ステップＳ８０５）サービスサーバ識別子取得手段３６３は、サービス識別子取得手段３６２が取得した具象サービス識別子と対になるサービスサーバ識別子を、サービスサーバ管理情報格納手段３６１から取得する。上位処理にリターンする。
【０１２５】
以下、本実施の形態における情報システムの具体的な動作について説明する。情報システムの概念図は図１である。
【０１２６】
今、コアサーバ３の制約満足情報格納部３１は、図９に示す制約満足情報管理表を保持している。制約満足情報管理表は、「ＩＤ」「サービス識別子」「制約情報」「適応情報」を有するレコードを１以上格納している。「ＩＤ」はレコードを識別する情報である。「制約情報」は、「制約特定情報」「検査情報」を有する。また、「適応情報」は「適応処理情報」「フラグ」を有する。「サービス識別子」の属性値は、具象サービス識別子または抽象サービス識別子がとり得る。ここでのサービス識別子は、サービス名である。「制約特定情報」は、制約の内容を特定する情報である。
【０１２７】
図９の「ＩＤ＝１」の制約特定情報「文字列長＜＝４００文字」は、文字列の長さが４００文字以内のデータのみを処理できることを示している。そして、「ＩＤ＝１」の検査情報「ｌｅｎｇｔｈ（文字列）」は文字列の長さを取得する関数（プログラム）「ｌｅｎｇｔｈ（文字列）」により、制約を満たすか否かを判断することを示している。さらに、「ＩＤ＝１」の適応処理情報「ｄｉｖｉｄｅ（文字列，４００）」は、文字列を４００字に分割する関数（プログラム）「ｄｉｖｉｄｅ（文字列，４００）」を実行する適応処理により、制約を満たすようにすることを示している。さらに、ここでのフラグは、適応処理を行うタイミングおよび繰り返し回数を示している。なお、フラグ「１」は、適応処理を行うタイミングは適応処理の前（前処理）であり、かつ処理回数は１回であることを示す。フラグ「２」は、適応処理を行うタイミングは適応処理の後（後処理）であり、かつ処理回数は１回であることを示す。フラグ「３」は、適応処理を行うタイミングは適応処理の前（前処理）であり、かつ処理回数はｎ回（ｎは１以上で、制約を満たすまで）であることを示す。さらに、フラグ「４」は、適応処理を行うタイミングは適応処理の後（後処理）であり、かつ処理回数はｎ回（ｎは１以上で、制約を満たすまで）であることを示す。なお、フラグは、適応処理を行うタイミングのみ、または繰り返し回数のみを示す情報であっても良い。また、「ＩＤ＝１」の制約情報は、一のサービス内における制約であるので、内部制約情報である。
【０１２８】
また、図９において、「ＩＤ＝２」の制約特定情報「日英翻訳２のみ利用可」は、形態素解析１を用いた際に、日英翻訳サービスを利用する場合には、日英翻訳２のみが利用できることを示している。そして、「ＩＤ＝２」の適応処理情報は、形態素解析１が選択された場合、日英翻訳サービスとして「日英翻訳２」が選択されることを示している。なお、図９において、「−」は空を意味する。また、「ＩＤ＝２」の制約情報は、２以上のサービス間における制約であるので、外部制約情報である。
【０１２９】
また、「ＩＤ＝３」の制約特定情報「フォーマット＝＝フォーマット１」は、処理できるフォーマットが「フォーマット１」であることを示している。「ＩＤ＝３」の検査情報は「ｃｈｅｃｋＦｏｒｍ（ｉｎｐｕｔ）」は、入力データのフォーマットをチェックする関数「ｃｈｅｃｋＦｏｒｍ（ｉｎｐｕｔ）」により、制約に合致するか否かを判断することを示す。また、「ＩＤ＝３」の適応処理情報「ｃｈａｎｇｅＦｏｒｍ（ｉｎｐｕｔ）」は、入力データをフォーマット１に変換し、制約を満たすようにする処理を示す。さらに、「ＩＤ＝３」のフラグ「１」は、適応処理を行うタイミングは適応処理の前（前処理）であり、かつ処理回数は１回であることを示す。また、「ＩＤ＝３」の制約情報は、内部制約情報である。
【０１３０】
また、「ＩＤ＝４」のサービス識別子は抽象サービス識別子「音声認識サービス」である。また、「ＩＤ＝４」の制約特定情報「認識結果の文字コード＝＝Ｓｈｉｆｔ−ＪＩＳ」は、音声認識サービスのサービス提供後にデータのコードを「Ｓｈｉｆｔ−ＪＩＳ」にしなければならないことを示す。そして、「ＩＤ＝４」の検査情報「ｃｈｅｃｋＣｏｄｅ（ｏｕｔｐｕｔ）」は、サービス提供後の出力データのコードをチェックする関数「ｃｈｅｃｋＣｏｄｅ（ｏｕｔｐｕｔ）」により、制約に合致するか否かを判断することを示す。また、「ＩＤ＝４」の適応処理情報「ｃｈａｎｇｅＣｏｄｅ（ｏｕｔｐｕｔ）」は、出力データを「Ｓｈｉｆｔ−ＪＩＳ」に変換し、制約を満たすようにすることを示す。さらに、「ＩＤ＝４」のフラグ「２」は、適応処理を行うタイミングは適応処理の後（後処理）であり、かつ処理回数は１回であることを示す。
【０１３１】
また、「ＩＤ＝５」のサービス識別子は抽象サービス識別子「国際電話翻訳サービス」である。また、「ＩＤ＝５」の制約特定情報「データ量＜＝１Ｋｂｙｔｅ」は、本サービスの対象のデータ量が１Ｋｂｙｔｅ以下であることを示す。また、「ＩＤ＝５」の検査情報は「ｌｅｎｇｔｈ（文字列）」は文字列の長さを取得する関数（プログラム）「ｌｅｎｇｔｈ（文字列）」により、制約を満たすか否かを判断することを示している。また、「ＩＤ＝５」の適応処理情報「ｄｉｖｉｄｅ（ｄａｔａ，１Ｋ）」は、データを１Ｋに分割する関数（プログラム）「ｄｉｖｉｄｅ（ｄａｔａ，１Ｋ）」を実行する適応処理により、制約を満たすようにすることを示している。さらに、フラグ「３」は、適応処理を行うタイミングは適応処理の前（前処理）であり、かつ処理回数はｎ回（ｎは１以上で、制約を満たすまで）であることを示す。
【０１３２】
さらに、「ＩＤ＝６」のサービス識別子は具象サービス識別子「形態素解析２」である。また、「ＩＤ＝６」の制約特定情報「日英翻訳２以外の日英翻訳サービスを利用可」は、形態素解析２を利用する時は、日英翻訳２は利用できないことを示している。また、「ＩＤ＝６」の適応処理情報は、形態素解析２が選択された場合、日英翻訳サービスとして、日英翻訳２は利用できず、他の日英翻訳サービスを選択することを示している。また、「ＩＤ＝６」の制約情報は、外部制約情報である。
【０１３３】
また、図１０は、複合サービス情報格納部３２に格納されている複合サービス情報管理表である。複合サービス情報管理表は、「ＩＤ」「複合サービス情報」を有するレコードを１以上格納している。「複合サービス情報」は、「複合サービス識別子」「原子サービス識別子」を有する。図１０の「ＩＤ＝１」は、複合サービス「科学技術論文日英機械翻訳」は、「形態素解析サービス」を行った後、専門用語に対して「専門用語辞書サービス」を行うことを示す。そして、最後に、日英翻訳サービスを行うことを示す。図１０の「ＩＤ＝１」の複合サービス情報は、いわゆるプログラムに該当する。
【０１３４】
また、図１０の「ＩＤ＝２」は、複合サービス「国際電話翻訳サービス」は、原子サービス「音声認識サービス」「翻訳サービス」「音声合成サービス」を順に行うことを示している。
【０１３５】
さらに、図１０は、サービスサーバ管理情報格納手段３６１に格納されているサービスサーバ管理情報管理表である。サービスサーバ管理情報管理表は、「ＩＤ」「抽象サービス識別子」「具象サービス識別子」「サービスサーバ識別子」「フラグ」を有する。ここで、サービスサーバ識別子は、具象サービス識別子で識別されるサービスが提供できるサービスサーバ２の識別子である。フラグは、抽象サービス識別子に対応するすべての具象サービス識別子で識別されるサービスを実行するのか、一の具象サービス識別子で識別されるサービスを選択して実行するのかを示す情報である。フラグ「０」は、抽象サービス識別子に対応する一の具象サービス識別子で識別されるサービスを選択して実行することを示す。フラグ「１」は、抽象サービス識別子に対応するすべての具象サービス識別子で識別されるサービスを実行することを示す。
【０１３６】
さらに、各サービスサーバ２の処理手段格納部２１には、サービスを遂行するための処理手段（例えば、実行可能なプログラム）が格納されている。
【０１３７】
かかる状況において、以下の３つの具体例について説明する。
（具体例１）
【０１３８】
具象サービス識別子であり、原子サービス識別子である「日英翻訳１」を有するサービス要求を、ユーザが入力した、とする。そして、このサービス要求には、翻訳対象の文章であり、ユーザが入力した文章である「私の名前は、山田太郎です。私は、現在・・・・・・・・」が含まれている、とする。なお、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」の文字列長は、７６０文字である、とする。
【０１３９】
次に、端末装置１の端末受付部１１は、サービス識別子「日英翻訳１」および上記文章を含むサービス要求を受け付ける。そして、端末送信部１２は、かかるサービス要求をコアサーバ３に送信する。
【０１４０】
次に、コアサーバ３のコアサーバ受信部３３は、端末装置１からサービス要求を受信する。そして、制約判断部３４は、サービス要求からサービス識別子「日英翻訳１」を取得する。
【０１４１】
次に、制約判断部３４は、サービス識別子「日英翻訳１」と対になる制約情報「文字列長＜＝４００文字」「ｌｅｎｇｔｈ（文字列）」を制約満足情報格納部３１から取得する。
【０１４２】
そして、制約判断部３４は、取得した制約情報を用いて、制約を満たすか否かを判断する。つまり、制約判断部３４は、「ｌｅｎｇｔｈ（"私の名前は、山田太郎です。私は、現在・・・・・・・・"）」を実行し、「文字列長＝７６０」を得る。そして、制約判断部３４は、「文字列長＝７６０」は制約特定情報「文字列長＜＝４００文字」を満たさない、と判断する。
【０１４３】
次に、適応処理部３５は、サービス識別子「日英翻訳１」と対になる適応処理情報「ｄｉｖｉｄｅ（文字列，４００）」、およびフラグ「１」を図９の制約満足情報管理表から取得する。
【０１４４】
次に、適応処理部３５は、取得したフラグ「１」から、適応処理は前処理である、と判断する。そして、適応処理部３５は、取得した適応処理情報「ｄｉｖｉｄｅ（文字列，４００）」を用いて、当該適応処理「ｄｉｖｉｄｅ（"私の名前は、山田太郎です。私は、現在・・・・・・・・"，４００）」を行って制約を満たすようにする。つまり、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」を、３８６文字と、残る３７４文字に分割する。なお、ｄｉｖｉｄｅ関数は、文の区切りで、文章を分割する関数である、とする。以上により、「日英翻訳１」の制約を満たすに至った。
【０１４５】
そして、次に、サービスサーバ決定部３６は、サービス識別子「日英翻訳１」で識別されるサービスが提供可能なサービスサーバの識別子「サービスサーバＥ」を、図１０のサービスサーバ管理情報管理表から取得する。
【０１４６】
次に、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ「サービスサーバＥ」にサービス要求「日英翻訳１」を送信する。ここで、サービス要求は、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」のうちの最初の３８６文字からなる１以上の文を有する。また、次に、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ「サービスサーバＥ」に、３８７文字目から７６０文字目までで構成される１以上の文を含むサービス要求「日英翻訳１」を送信する。
【０１４７】
次に、サービスサーバＥのサービスサーバ受信部２２は、コアサーバ３から１つ目のサービス要求「日英翻訳１」を受信する。そして、サービスサーバＥのサービス部２３は、受信されたサービス要求に含まれるサービス識別子「日英翻訳１」を取得する。次に、サービス部２３は、取得したサービス識別子「日英翻訳１」に対応する処理手段（通常、プログラム）を処理手段格納部２１から読み出し、当該読み出した処理手段に、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」のうちの最初の３８６文字からなる１以上の文を渡し、当該処理手段を実行する。そして、サービス部２３は、上記文の翻訳結果である「Ｍｙ  ｎａｍｅ  ｉｓ  Ｔａｒｏ  Ｙａｍａｄａ．  Ｉ  ・・・」を得る。そして、サービスサーバ送信部２４は、サービス部２３のサービスの結果「Ｍｙ  ｎａｍｅ  ｉｓ  Ｔａｒｏ  Ｙａｍａｄａ．  Ｉ  ・・・」を取得し、コアサーバ３に送信する。
【０１４８】
また、サービスサーバＥのサービスサーバ受信部２２は、コアサーバ３から２つ目のサービス要求「日英翻訳１」を受信する。そして、サービスサーバＥのサービス部２３は、受信されたサービス要求に含まれるサービス識別子「日英翻訳１」を取得する。次に、サービス部２３は、取得したサービス識別子「日英翻訳１」に対応する処理手段（通常、プログラム）を処理手段格納部２１から読み出し、当該読み出した処理手段に、上記文章中の３８７文字目から７６０文字目までで構成される１以上の文を渡し、当該処理手段を実行する。そして、サービス部２３は、翻訳結果を得る。そして、サービスサーバ送信部２４は、その翻訳結果を取得し、コアサーバ３に送信する。
【０１４９】
次に、コアサーバ受信部３３は、サービスサーバ２からサービスの結果「Ｍｙ  ｎａｍｅ  ｉｓ  Ｔａｒｏ  Ｙａｍａｄａ．  Ｉ  ・・・」を受信する。また、コアサーバ受信部３３は、次の翻訳結果も受信する。以上により、日本語文７６０文字の長さの文の翻訳結果（英文）が得られた。
【０１５０】
次に、コアサーバ送信部３７は、サービスサーバ２で行われた「日英翻訳１」のサービス要求に対する結果を、サービス要求を送信してきた端末装置１に送信する。
【０１５１】
次に、端末装置１の端末受信部１３は、サービスの結果を受信する。そして、端末出力部１４は、受信されたサービスの結果である、日本語文７６０文字の長さの文の翻訳結果（英文）を出力する。
（具体例２）
【０１５２】
抽象サービス識別子であり、原子サービス識別子である「音声認識サービス」を有するサービス要求を、ユーザが入力した、とする。なお、かかるサービス要求には、ユーザが入力した音声データが含まれている、とする。
【０１５３】
すると、端末装置１の端末受付部１１は、「音声認識サービス」と音声データを有するサービス要求を受け付ける。そして、端末送信部１２は、受け付けたサービス要求をコアサーバ３に送信する。
【０１５４】
次に、コアサーバ受信部３３は、端末装置１からかかるサービス要求を受信する。
【０１５５】
次に、制約判断部３４は、サービス要求が有するサービス識別子「音声認識サービス」を取得する。そして、制約判断部３４は、サービス識別子「音声認識サービス」と対になる制約特定情報「認識結果の文字コード＝＝Ｓｈｉｆｔ−ＪＩＳ」、検査情報「ｃｈｅｃｋＣｏｄｅ（ｏｕｔｐｕｔ）」を制約満足情報管理表（図９）から取得する。また、制約判断部３４は、抽象サービス識別子「音声認識サービス」に対応する具象サービス識別子「多言語音声認識１」を、図１０のサービスサーバ管理情報管理表から取得する。そして、制約判断部３４は、具象サービス識別子「多言語音声認識１」と対になる制約情報を取得しようするが、取得できない。
【０１５６】
次に、制約判断部３４は、取得した制約情報（「認識結果の文字コード＝＝Ｓｈｉｆｔ−ＪＩＳ」等）を用いて、制約を満たすか否かを判断する。なお、ここで、サービス識別子「音声認識サービス」に対応するフラグ「２」は、適応処理を行うタイミングは適応処理の後（後処理）であるので、ここでは、制約を満たさない、と判断する、とする。
【０１５７】
次に、適応処理部３５は、サービス識別子「音声認識サービス」と対になる適応処理情報「ｃｈａｎｇｅＣｏｄｅ（ｏｕｔｐｕｔ）」、およびフラグ「２」を制約満足情報管理表から取得する。
【０１５８】
次に、適応処理部３５は、フラグ「２」から適応処理を行うタイミングがサービスの後である、と判断する。
【０１５９】
次に、サービスサーバ決定部３６は、抽象サービス識別子「音声認識サービス」に対応する具象サービス識別子「多言語音声認識１」と対になるサービスサーバ識別子「サービスサーバＦ」を、図１０のサービスサーバ管理情報管理表から取得する。
【０１６０】
次に、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバＦにサービス識別子「多言語音声認識１」と音声データとを有するサービス要求を送信する。
【０１６１】
次に、サービスサーバＦのサービスサーバ受信部２２は、コアサーバ３から上記のサービス要求を受信する。
【０１６２】
そして、サービス部２３は、多言語音声認識１に対して、サービス要求が有する音声データを与えて、当該多言語音声認識１を動作させ、音声認識処理を行う。そして、サービス部２３は、音声データを音声認識処理した結果である文字列を得る。次に、サービスサーバ送信部２４は、取得したサービスの結果（文字列）を、コアサーバ３に送信する。
【０１６３】
次に、コアサーバ受信部３３は、サービスサーバ２からサービスの結果（文字列）を受信する。
【０１６４】
次に、適応処理部３５は取得した適応情報に含まれるフラグ「２」から、適応処理を行うタイミングがサービスの後であることを検知する。
【０１６５】
そして、適応処理部３５は、取得した適応処理情報「ｃｈａｎｇｅＣｏｄｅ（ｏｕｔｐｕｔ）」を用いて、当該適応処理情報「ｃｈａｎｇｅＣｏｄｅ（受信した文字列）」を実行し、「Ｓｈｉｆｔ−ＪＩＳ」のコードになった文字列を得る。
【０１６６】
次に、コアサーバ送信部３７は、「Ｓｈｉｆｔ−ＪＩＳ」のコードになった文字列を、サービス要求を送信してきた端末装置１に送信する。
【０１６７】
次に、端末装置１の端末受信部１３は、サービスの結果である文字列を受信する。そして、端末出力部１４は、受信されたサービスの結果である文字列を出力する。
（具体例３）
【０１６８】
複合サービス識別子「科学技術論文日英機械翻訳」および日本語の論文データ（文章）を有するサービス要求を、ユーザが入力した、とする。
【０１６９】
次に、端末装置１の端末受付部１１は、ユーザから上記のサービス要求を受け付ける。そして、端末送信部１２は、受け付けたサービス要求をコアサーバ３に送信する。
【０１７０】
次に、コアサーバ３のコアサーバ受信部３３は、端末装置１からサービス要求を受信する。
【０１７１】
そして、制約判断部３４は、受信されたサービス要求に含まれるサービス識別子「科学技術論文日英機械翻訳」が、図１０の複合サービス情報管理表から、複合サービス識別子であると判断する。
【０１７２】
次に、制約判断部３４は、複合サービス識別子「科学技術論文日英機械翻訳」に対応する複合サービスの内容を特定する情報「形態素解析サービス；  ｉｆ（用語が専門用語）｛専門用語辞書サービス；｝  日英翻訳サービス；」を、複合サービス情報管理表から取得する。
【０１７３】
次に、制約判断部３４は、複合サービス識別子「科学技術論文日英機械翻訳」と対になる制約情報を制約満足情報格納部３１から取得しようとするが、取得できなかった、とする。
【０１７４】
次に、制約判断部３４は、上記の複合サービス情報から、１番目の原子サービス識別子「形態素解析サービス」を取得する。
【０１７５】
次に、制約判断部３４は、１番目の原子サービス識別子「形態素解析サービス」が抽象サービス識別子であるので、抽象サービス識別子に対応する具象サービス識別子「形態素解析１」を取得した、とする。なお、ここでは、制約判断部３４は、抽象サービス識別子「形態素解析サービス」に対する具象サービス識別子は複数存在するが、制約判断部３４は、ランダムに一の具象サービス識別子「形態素解析１」を、図１０のサービスサーバ管理情報管理表から選択した、とする。
【０１７６】
次に、制約判断部３４は、サービス識別子「形態素解析１」と対になる制約特定情報「日英翻訳２のみ利用可」を制約満足情報管理表（図９）から取得する。
【０１７７】
次に、制約判断部３４は、取得した制約情報「日英翻訳２のみ利用可」を用いて、制約を満たすか否かを判断しようとするが、この制約情報は外部制約情報であるので、ここでは判断できない。
【０１７８】
そして、次に、適応処理部３５は、サービス識別子「形態素解析１」と対になる適応情報「ｉｆ（形態素解析１を選択）｛日英翻訳サービス＝日英翻訳２；｝」を制約満足情報管理表（図９）から取得する。
【０１７９】
次に、適応処理部３５は、取得された制約情報から、前処理でも後処置でもなく、制約が外部制約である、と判断する。
【０１８０】
次に、適応処理部３５は、適応情報「ｉｆ（形態素解析１を選択）｛日英翻訳サービス＝日英翻訳２；｝」をバッファに一時格納する。
【０１８１】
次に、サービスサーバ決定部３６は、図１１のサービスサーバ管理情報管理表を参照して、サービス識別子「形態素解析１」で識別されるサービスが提供可能なサービスサーバ２を「サービスサーバＡ」に決定する。
【０１８２】
次に、コアサーバ送信部３７は、サービスサーバＡに、サービス識別子「形態素解析１」および日本語の論文データを有するサービス要求を送信する。
【０１８３】
次に、サービスサーバＡのサービスサーバ受信部２２は、コアサーバ３からサービス識別子「形態素解析１」および日本語の論文データを有するサービス要求を受信する。
【０１８４】
次に、サービス部２３は、日本語の論文データに対して、「形態素解析１」の処理を実行し、形態素解析された日本語の論文データを得る。
【０１８５】
次に、サービスサーバ送信部２４は、サービス部２３のサービスの結果（形態素解析された日本語の論文データ）を、コアサーバ３に送信する。
【０１８６】
次に、コアサーバ３のコアサーバ受信部３３は、サービスサーバＡからサービスの結果（形態素解析された日本語の論文データ）を受信する。
【０１８７】
次に、適応処理部３５は、取得されている適応情報から、適応処理は後処理でない、と判断する。
【０１８８】
次に、制約判断部３４は、２番目のサービス識別子「専門用語辞書サービス」を取得する。
【０１８９】
次に、制約判断部３４は、２番目のサービス識別子「専門用語辞書サービス」と対になる制約情報を制約満足情報管理表から取得しようとするが、取得できなかった、とする。
【０１９０】
次に、サービスサーバ決定部３６は、バッファに適応情報が存在する、と判断する。そして、次に、サービスサーバ決定部３６は、バッファに格納されている適応情報「ｉｆ（形態素解析１を選択）｛日英翻訳サービス＝日英翻訳２；｝」が有するサービス識別子「日英翻訳サービス」が、現在、着目されているサービス識別子「専門用語辞書サービス」に関連しない、と判断する。
【０１９１】
そして、サービスサーバ決定部３６のサービス識別子取得手段３６２は、サービス識別子「専門用語辞書サービス」に対応する具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」の３つを取得する。また、かかる具象サービス識別子と対になるフラグが「１」であるので、サービス識別子取得手段３６２は、すべての具象サービス識別子で識別される具象サービスが実行される、と判断する。
【０１９２】
次に、サービスサーバ識別子取得手段３６３は、サービス識別子取得手段３６２が取得した具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」と対になるサービスサーバ識別子「サービスサーバＣ」「サービスサーバＡ」「サービスサーバＤ」を、サービスサーバ管理情報管理表（図１１）から取得する。
【０１９３】
次に、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバ２（「サービスサーバＣ」「サービスサーバＡ」「サービスサーバＤ」）にサービス要求（各具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」を含み、形態素解析された日本語の論文データから抽出された専門用語（名詞または名詞句等））を送信する。なお、専門用語の抽出は、コアサーバ３が行うことが好適であるが、サービスサーバ２が行っても良い。また、専門用語の抽出処理は公知技術であるので、説明を省略する。
【０１９４】
そして、３つの各サービスサーバのサービスサーバ受信部２２は、コアサーバ３からサービス要求を受信する。
【０１９５】
次に、３つの各サービスサーバのサービス部２３は、各専門用語辞書を用いて、可能な専門用語の翻訳を行う。そして、３つの各サービスサーバのサービスサーバ送信部２４は、専門用語の翻訳結果を、コアサーバ３に送信する。
【０１９６】
次に、コアサーバ３のコアサーバ受信部３３は、３つのサービスサーバ２からサービスの結果（専門用語の翻訳結果）を受信する。
【０１９７】
次に、適応処理部３５は、取得した適応情報から、後処理でないと判断する。
【０１９８】
次に、制約判断部３４は、複合サービス情報から３番目のサービス識別子「日英翻訳サービス」を取得する。
【０１９９】
次に、制約判断部３４は、３番目のサービス識別子「日英翻訳サービス」と対になる制約情報を制約満足情報管理表から取得しようとするが、取得できなかった、とする。
【０２００】
次に、サービスサーバ決定部３６は、バッファに格納されている適応情報が存在する、と判断する。
【０２０１】
次に、サービスサーバ決定部３６は、バッファに格納されている適応情報「ｉｆ（形態素解析１を選択）｛日英翻訳サービス＝日英翻訳２；｝」が有するサービス識別子「日英翻訳サービス」が、現在、着目されているサービス識別子「日英翻訳サービス」に関連する（ここでは、一致する）と判断する。
【０２０２】
そして、サービス識別子取得手段３６２は、適応情報「ｉｆ（形態素解析１を選択）｛日英翻訳サービス＝日英翻訳２；｝」を実行し、制約を満たす具象サービス識別子「日英翻訳２」を取得する。
【０２０３】
次に、サービスサーバ識別子取得手段３６３は、サービス識別子取得手段３６２が取得した具象サービス識別子「日英翻訳２」と対になるサービスサーバ識別子「サービスサーバＢ」を、サービスサーバ管理情報管理表（図１１）から取得する。
【０２０４】
次に、コアサーバ送信部３７は、サービスサーバ決定部３６が決定したサービスサーバＢに、サービス識別子「日英翻訳２」を有し、形態素解析サービス、３つの専門用語辞書サービスが完了したデータを有するサービス要求を送信する。
【０２０５】
次に、サービスサーバＢのサービスサーバ受信部２２は、コアサーバ３から上記のサービス要求を受信する。
【０２０６】
次に、サービス部２３は、サービス識別子「日英翻訳２」で識別される処理手段に、サービス要求が有するデータを渡し、当該処理手段を実行する。
【０２０７】
次に、サービスサーバ送信部２４は、サービスの結果（英文に翻訳された論文データ）を、端末装置１に送信する。
【０２０８】
次に、端末受信部１３は、サービスの結果（英文に翻訳された論文データ）を受信する。そして、端末出力部１４は、受信されたサービスの結果（英文に翻訳された論文データ）を出力する。
【０２０９】
以上、本実施の形態によれば、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。
【０２１０】
また、本実施の形態において、複合サービスの場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。
【０２１１】
また、本実施の形態において、抽象サービスの遂行が指示されている場合で、与えられた制約を満たす具象サービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、抽象サービスの提供を行える。
【０２１２】
また、本実施の形態において、制約が複数のサービス間の制約（外部制約）である場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。
【０２１３】
なお、本実施の形態によれば、抽象サービス識別子に対しても制約情報を持てる例を説明した。しかし、制約情報と対になるサービス識別子は、具象サービス識別子だけでも良い。
【０２１４】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態におけるコアサーバ３を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する１以上の制約満足情報を格納しており、コンピュータを、端末装置からサービス要求を受信するコアサーバ受信部と、前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部として機能させるためのプログラム、である。
【０２１５】
また、上記プログラムにおいて、前記制約情報は、制約を特定する制約特定情報と、当該制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、前記制約判断部は、前記サービス要求に含まれるサービス識別子と対になる検査情報を前記記録媒体から取得し、当該検査情報に従って検査を行い、前記制約特定情報で特定される制約を満たすか否かを判断するものとして、コンピュータを機能させることは好適である。
【０２１６】
また、上記プログラムにおいて、前記サービス要求が有するサービス識別子は、複数のサービスが含まれる複合サービスであり、記録媒体に、複合サービスを識別する複合サービス識別子と、当該複合サービスに含まれる２以上の原子サービスを識別する２以上の原子サービス識別子とを対応づける複合サービス情報を、さらに格納しており、前記制約判断部は、前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記サービス要求に含まれる複合サービス識別子に対応する２以上の原子サービス識別子を、前記記録媒体から取得し、当該２以上の各原子サービス識別子と対になる制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断し、前記適応処理部は、前記制約判断部が前記制約を満たさないと判断した場合に、当該制約を満たさない原子サービス識別子と対になる適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにするものとして、コンピュータを機能させることは好適である。
【０２１７】
また、上記プログラムにおいて、前記サービス要求が有するサービス識別子、または前記サービス要求が有するサービス識別子が複合サービス識別子である場合、当該複合サービス識別子に対応する２以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、前記サービスサーバ決定部は、抽象サービス識別子と、当該抽象サービス識別子で識別されるサービスを実現する１以上の具体的なサービスを識別する具象サービス識別子と、当該具象サービス識別子ごとに当該具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する１以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、前記サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する１以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、前記サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、前記コアサーバ送信部は、前記サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するものとして、コンピュータを機能させることは好適である。
【０２１８】
また、上記プログラムにおいて、前記制約情報は、２以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または２以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、前記制約判断部は、前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記複合サービス識別子に対応する２以上の原子サービス識別子を、前記記憶媒体から取得し、当該２以上の原子サービス識別子が、前記外部制約情報が示す制約を満たすか否かを判断するものとして、コンピュータを機能させることは好適である。
【０２１９】
また、図１２は、本明細書で述べたプログラムを実行して、上述した実施の形態の情報システム等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図１２は、このコンピュータシステム３４０の概観図であり、図１３は、コンピュータシステム３４０のブロック図である。
【０２２０】
図１２において、コンピュータシステム３４０は、ＦＤドライブ、ＣＤ−ＲＯＭドライブを含むコンピュータ３４１と、キーボード３４２と、マウス３４３と、モニタ３４４とを含む。
【０２２１】
図１３において、コンピュータ３４１は、ＦＤドライブ３４１１、ＣＤ−ＲＯＭドライブ３４１２に加えて、ＭＰＵ３４１３と、ＣＤ−ＲＯＭドライブ３４１２及びＦＤドライブ３４１１に接続されたバス３４１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ３４１５とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ３４１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３４１７とを含む。ここでは、図示しないが、コンピュータ３４１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０２２２】
コンピュータシステム３４０に、上述した実施の形態の情報システム等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３５０１、またはＦＤ３５０２に記憶されて、ＣＤ−ＲＯＭドライブ３４１２またはＦＤドライブ３４１１に挿入され、さらにハードディスク３４１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３４１に送信され、ハードディスク３４１７に記憶されても良い。プログラムは実行の際にＲＡＭ３４１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３５０１、ＦＤ３５０２またはネットワークから直接、ロードされても良い。
【０２２３】
プログラムは、コンピュータ３４１に、上述した実施の形態の情報システム等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３４０がどのように動作するかは周知であり、詳細な説明は省略する。
【０２２４】
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理（ハードウェアでしか行われない処理）は含まれない。
【０２２５】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０２２６】
また、上記各実施の形態において、一の装置に存在する２以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
【０２２７】
また、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０２２８】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２２９】
以上のように、本発明にかかる情報システムは、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える、という効果を有し、大規模情報システム等として有用である。
【符号の説明】
【０２３０】
１  端末装置
２  サービスサーバ
３  コアサーバ
１１  端末受付部
１２  端末送信部
１３  端末受信部
１４  端末出力部
２１  処理手段格納部
２２  サービスサーバ受信部
２３  サービス部
２４  サービスサーバ送信部
３１  制約満足情報格納部
３２  複合サービス情報格納部
３３  コアサーバ受信部
３４  制約判断部
３５  適応処理部
３６  サービスサーバ決定部
３７  コアサーバ送信部
３６１  サービスサーバ管理情報格納手段
３６２  サービス識別子取得手段
３６３  サービスサーバ識別子取得手段
【図１】
2012014542.tif 000003
【図２】
2012014542.tif 000004
【図３】
2012014542.tif 000005
【図４】
2012014542.tif 000006
【図５】
2012014542.tif 000007
【図６】
2012014542.tif 000008
【図７】
2012014542.tif 000009
【図８】
2012014542.tif 000010
【図９】
2012014542.tif 000011
【図１０】
2012014542.tif 000012
【図１１】
2012014542.tif 000013
【図１２】
2012014542.tif 000014
【図１３】
2012014542.tif 000015