JP2012014542A - Information system, core server, service providing method, and program - Google Patents

Information system, core server, service providing method, and program Download PDF

Info

Publication number
JP2012014542A
JP2012014542A JP2010151652A JP2010151652A JP2012014542A JP 2012014542 A JP2012014542 A JP 2012014542A JP 2010151652 A JP2010151652 A JP 2010151652A JP 2010151652 A JP2010151652 A JP 2010151652A JP 2012014542 A JP2012014542 A JP 2012014542A
Authority
JP
Japan
Prior art keywords
service
constraint
information
server
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010151652A
Other languages
Japanese (ja)
Inventor
Masahiro Tanaka
正弘 田仲
Yohei Murakami
陽平 村上
dong hui Lin
冬▲恵▼ 林
Toru Ishida
亨 石田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Institute of Information and Communications Technology
Original Assignee
National Institute of Information and Communications Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Institute of Information and Communications Technology filed Critical National Institute of Information and Communications Technology
Priority to JP2010151652A priority Critical patent/JP2012014542A/en
Publication of JP2012014542A publication Critical patent/JP2012014542A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

PROBLEM TO BE SOLVED: To solve the problem that any service is not provided when a service that satisfies restrictions can not be selected.SOLUTION: A core server includes: a restriction satisfaction information storage section capable of storing one or more restriction satisfaction information items each having a service identifier, restriction information and adaptation information; a core server receiving section for receiving a service request from a terminal device; a restriction judging section for judging whether or not restriction information acquired using a service identifier contained in a service request is satisfied; an adaptation processing section for performing adaptation processing indicated by the adaptation information to satisfy the restrictions in the case where it is judged that the restriction information is not satisfied; a service server determination section for determining a service server capable of providing a service; and a core server transmitting section for transmitting to the determined service server a service request reflected with a result of performing the adaptation processing. Even in the case where a service satisfying given restrictions can not be selected, adaptation processing that is processing for satisfying the given restrictions is performed by the core server, thereby providing services.

Description

本発明は、与えられた制約を満たすようにサービスを提供する情報システム等に関するものである。   The present invention relates to an information system or the like that provides a service so as to satisfy given constraints.

従来、サービス連携において、利用者の負担を伴わずに利用者の満足度を高めるサービスの選択ができるサービス選択制御技術があった(特許文献1参照)。かかるサービス選択制御技術は、通信ネットワークと情報ネットワークとの双方から利用可能な一または複数のサービスシナリオまたはサービスコンポーネントのうち任意のサービスを選択して提供する際のサービス選択を制御するサービス選択制御方法であって、サービスシナリオまたはサービスコンポーネントのそれぞれの評価値情報を算出する評価算出ステップと、評価値情報を記憶する評価値記憶ステップと、サービス選択の際に、評価値情報を参照し、評価値が高いサービスシナリオまたはサービスコンポーネントを検出するサービス選択ステップとを備えることを特徴とする。   Conventionally, in service cooperation, there has been a service selection control technique capable of selecting a service that increases user satisfaction without burdening the user (see Patent Document 1). This service selection control technique is a service selection control method for controlling service selection when selecting and providing an arbitrary service from one or a plurality of service scenarios or service components that can be used from both a communication network and an information network. An evaluation calculation step for calculating evaluation value information of each service scenario or service component, an evaluation value storage step for storing evaluation value information, and evaluation value information with reference to evaluation value information at the time of service selection. A service selection step of detecting a high service scenario or service component.

また、従来、サービス合成を効率的に行うことができるサービス合成システムがあった(特許文献2参照)。本サービス合成システムは、サービス合成装置とサービス要素との整合がとれない場合、サービス合成装置とサービス要素とを仲介するサービス要素を利用可能なインターフェースとしてそのサービス要素に追加登録するシステムである。これにより、その後は、同様の不整合の場合に再度仲介サービス要素として機能するサービス要素を検索する必要がないので、効率的にサービス合成を行うことができる。   Conventionally, there has been a service composition system that can efficiently perform service composition (see Patent Document 2). This service composition system is a system that additionally registers a service element that mediates between a service composition apparatus and a service element as an available interface in the service element when the service composition apparatus and the service element cannot be matched. As a result, after that, there is no need to search for a service element that functions as a mediation service element again in the case of similar inconsistencies, so that service composition can be performed efficiently.

特開2008−160198号公報(第1頁、第1図等)JP 2008-160198 A (first page, FIG. 1 etc.) 特開2005−71052号公報(第1頁、第1図等)JP-A-2005-71052 (first page, FIG. 1 etc.)

しかしながら、従来の技術においては、多数のサービスから与えられた制約を満たすサービスを選択する情報システムにおいて、制約を満たすサービスが選択できない場合、サービスの提供が行われない、という課題があった。
そこで、本発明は、情報システムにおいて、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行えるようにすることを目的とする。
However, in the conventional technology, in an information system that selects a service that satisfies a constraint given by a large number of services, there is a problem that a service is not provided when a service that satisfies the constraint cannot be selected.
Accordingly, an object of the present invention is to provide a service by performing an adaptive process, which is a process that satisfies a given constraint, even if a service that satisfies the given constraint cannot be selected in an information system. And

本第一の発明の情報システムは、1以上の端末装置と1以上のサービスサーバと1以上のコアサーバとを有する情報システムであって、端末装置は、サービスを識別するサービス識別子を有するサービスの要求であるサービス要求を受け付ける端末受付部と、サービス要求をコアサーバに送信する端末送信部と、サービス要求の送信に応じて、サービスの結果を受信する端末受信部と、端末受信部が受信したサービスの結果を出力する端末出力部とを具備し、サービスサーバは、サービスを遂行するための1以上の処理手段を格納し得る処理手段格納部と、コアサーバからサービス要求を受信するサービスサーバ受信部と、サービスサーバ受信部が受信したサービス要求に従って、処理手段格納部の処理手段を実行し、サービスを遂行し、サービスの結果を取得するサービス部と、サービス部のサービスの結果を送信するサービスサーバ送信部とを具備し、コアサーバは、サービスを識別するサービス識別子と、サービスの制約に関する情報である制約情報と、制約を満たさない場合に制約を満たすようにするための情報である適応情報とを有する1以上の制約満足情報を格納し得る制約満足情報格納部と、端末装置からサービス要求を受信するコアサーバ受信部と、サービス要求に含まれるサービス識別子を用いて、制約情報を制約満足情報格納部から取得し、制約情報で特定される制約を満たすか否かを判断する制約判断部と、制約判断部が制約を満たさないと判断した場合に、サービス識別子を用いて、適応情報を制約満足情報格納部から取得し、適応情報で特定される適応処理を行って制約を満たすようにする適応処理部と、サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、サービスサーバ決定部が決定したサービスサーバに、適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備する情報システムである。   The information system according to the first aspect of the present invention is an information system having one or more terminal devices, one or more service servers, and one or more core servers, wherein the terminal device is a service having a service identifier for identifying a service. A terminal reception unit that receives a service request that is a request, a terminal transmission unit that transmits a service request to a core server, a terminal reception unit that receives a service result in response to transmission of the service request, and a terminal reception unit A terminal output unit for outputting a service result, wherein the service server stores one or more processing units for performing the service, and a service server receiving unit that receives a service request from the core server. In accordance with the service request received by the service server and the service server receiver, A service unit that acquires a service result and a service server transmission unit that transmits a service result of the service unit. The core server includes a service identifier that identifies the service, and constraint information that is information related to a service constraint. , A constraint satisfaction information storage unit that can store one or more constraint satisfaction information having adaptation information that is information for satisfying the constraint when the constraint is not satisfied, and a core server that receives a service request from the terminal device A constraint determination unit for acquiring constraint information from the constraint satisfaction information storage unit using the service identifier included in the service request and determining whether the constraint specified by the constraint information is satisfied; and a constraint determination unit Is determined to satisfy the constraints, the service identifier is used to obtain adaptation information from the constraint satisfaction information storage, and the adaptation specified by the adaptation information An adaptive processing unit that performs constraints to satisfy the constraints, a service server determination unit that determines a service server that can provide a service identified by a service identifier included in the service request, and a service determined by the service server determination unit The information system includes a core server transmitting unit that transmits a service request reflecting a result of the adaptive processing performed by the adaptive processing unit to the server.

かかる構成により、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。   With this configuration, even when a service that satisfies a given constraint cannot be selected, the service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

また、本第二の発明の情報システムは、第一の発明に対して、制約情報は、制約を特定する制約特定情報と、制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、制約判断部は、サービス要求に含まれるサービス識別子と対になる検査情報を制約満足情報格納部から取得し、検査情報に従って検査を行い、制約特定情報で特定される制約を満たすか否かを判断する情報システムである。   The information system according to the second aspect of the present invention is a method for checking whether or not the constraint information satisfies the constraint identification information for identifying the constraint and the constraint identified by the constraint identification information. The constraint judgment unit obtains the test information paired with the service identifier included in the service request from the constraint satisfaction information storage unit, performs the test according to the test information, and is specified by the constraint specifying information. It is an information system that determines whether or not a constraint is satisfied.

かかる構成により、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。   With this configuration, even when a service that satisfies a given constraint cannot be selected, the service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

また、本第三の発明の情報システムは、第一または第二の発明に対して、サービス要求が有するサービス識別子は、複数のサービスが含まれる複合サービスであり、コアサーバは、複合サービスを識別する複合サービス識別子と、複合サービスに含まれる2以上の原子サービスを識別する2以上の原子サービス識別子とを対応づける複合サービス情報を格納している複合サービス情報格納部をさらに具備し、制約判断部は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、サービス要求に含まれる複合サービス識別子に対応する2以上の原子サービス識別子を、複合サービス情報格納部から取得し、2以上の各原子サービス識別子と対になる制約情報を制約満足情報格納部から取得し、制約情報で特定される制約を満たすか否かを判断し、適応処理部は、制約判断部が制約を満たさないと判断した場合に、制約を満たさない原子サービス識別子と対になる適応情報を制約満足情報格納部から取得し、適応情報で特定される適応処理を行って制約を満たすようにする情報システムである。   In the information system of the third invention, the service identifier of the service request is a composite service including a plurality of services, and the core server identifies the composite service. A composite service information storage unit that stores composite service information that associates the composite service identifier to be associated with two or more atomic service identifiers that identify two or more atomic services included in the composite service, and a constraint determination unit When the service identifier included in the service request is a composite service identifier, two or more atomic service identifiers corresponding to the composite service identifier included in the service request are acquired from the composite service information storage unit, and each of the two or more atomic The constraint information that is paired with the service identifier is acquired from the constraint satisfaction information storage, and the constraints specified by the constraint information If the constraint determination unit determines that the constraint is not satisfied, the adaptation processing unit acquires the adaptation information paired with the atomic service identifier that does not satisfy the constraint from the constraint satisfaction information storage unit, This is an information system that satisfies the constraints by performing an adaptive process specified by the adaptive information.

かかる構成により、複合サービスの場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。   With this configuration, even in the case of a composite service, even when a service that satisfies the given constraint cannot be selected, the composite service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

また、本第四の発明の情報システムは、第一から第三いずれかの発明に対して、サービス要求が有するサービス識別子、またはサービス要求が有するサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する2以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、サービスサーバ決定部は、抽象サービス識別子と、抽象サービス識別子で識別されるサービスを実現する1以上の具体的なサービスを識別する具象サービス識別子と、具象サービス識別子ごとに具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する1以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する1以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、コアサーバ送信部は、サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、適応処理部が適応処理を行った結果を反映させたサービス要求を送信する情報システムである。   The information system according to the fourth aspect of the present invention provides the service identifier that the service request has, or the service identifier that the service request has, which is a composite service identifier. Are two or more atomic service identifiers that are abstract service identifiers indicating the function of the service, and the service server determination unit includes the abstract service identifier and one or more specific items that realize the service identified by the abstract service identifier. Service server management information capable of storing one or more service server management information having a concrete service identifier for identifying a service and a service server identifier for identifying a service server that performs the service identified by the concrete service identifier for each concrete service identifier Storage means and abstract services included in service requests A service identifier acquisition unit that acquires one concrete service identifier from one or more concrete service identifiers that realize a service identified by a bespoke child, and a service server identifier that is paired with the concrete service identifier acquired by the service identifier acquisition unit And the core server transmission unit reflects the result of the adaptation processing performed by the adaptation processing unit on the service server identified by the service server identifier obtained by the service server identifier obtaining unit. An information system for transmitting a service request.

かかる構成により、抽象サービスの遂行が指示されている場合で、与えられた制約を満たす具象サービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、抽象サービスの提供を行える。   With this configuration, even when an execution of an abstract service is instructed and a concrete service that satisfies a given constraint cannot be selected, an abstract service is provided by performing adaptive processing that is a process that satisfies the given constraint. Can be done.

また、本第五の発明の情報システムは、第三または第四の発明に対して、制約情報は、2以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または2以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、制約判断部は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する2以上の原子サービス識別子を、複合サービス情報格納部から取得し、2以上の原子サービス識別子が、外部制約情報が示す制約を満たすか否かを判断する情報システムである。   In the information system of the fifth aspect of the invention, the restriction information is external restriction information that is information relating to restrictions indicating that two or more services do not operate at the same time, or 2 When the service identifier included in the service request is a composite service identifier, the constraint determination unit includes two or more corresponding to the composite service identifier. Is obtained from the composite service information storage unit and determines whether two or more atomic service identifiers satisfy the constraint indicated by the external constraint information.

かかる構成により、制約が複数のサービス間の制約である場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。   With this configuration, even when the constraint is a constraint between a plurality of services, even when a service that satisfies the given constraint cannot be selected, the composite service is provided by performing adaptive processing that is a process that satisfies the given constraint. Can be done.

本発明による情報システムによれば、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。   According to the information system of the present invention, even when a service that satisfies a given constraint cannot be selected, the service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

本実施の形態における情報システムの概念図Conceptual diagram of the information system in the present embodiment 同情報システムのブロック図Block diagram of the information system 同情報システムの動作について説明するフローチャートFlow chart explaining operation of the information system 同サービスサーバの動作について説明するフローチャートFlow chart explaining operation of the service server 同コアサーバの動作について説明するフローチャートFlow chart explaining operation of the core server 同サービス要求処理の動作について説明するフローチャートFlow chart for explaining the operation of the service request process 同サービス要求処理の動作について説明するフローチャートFlow chart for explaining the operation of the service request process 同サービスサーバ決定処理の動作について説明するフローチャートA flowchart for explaining the operation of the service server determination process 同制約満足情報管理表を示す図Figure showing the same constraint satisfaction information management table 同複合サービス情報管理表を示す図Figure showing the same composite service information management table 同サービスサーバ管理情報管理表を示す図Figure showing the service server management information management table 同コンピュータシステムの概観図Overview of the computer system 同コンピュータシステムのブロック図Block diagram of the computer system

以下、情報システム等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。   Hereinafter, embodiments of an information system and the like will be described with reference to the drawings. In addition, since the component which attached | subjected the same code | symbol in embodiment performs the same operation | movement, description may be abbreviate | omitted again.

(実施の形態1)   (Embodiment 1)

本実施の形態において、与えられた制約に合致するか否かを判断し、合致しない場合に、合致するように適応処理を行う情報システムについて説明する。   In the present embodiment, a description will be given of an information system that determines whether or not a given constraint is met, and performs an adaptive process so as to match if it does not match.

図1は、本実施の形態における情報システムの概念図である。情報システムは、1以上の端末装置1、1以上のサービスサーバ2、および1以上のコアサーバ3を備える。また、1以上の端末装置1、1以上のサービスサーバ2、および1以上のコアサーバ3は、インターネットやLANやWAN等のネットワーク4により、通信可能である。   FIG. 1 is a conceptual diagram of the information system in the present embodiment. The information system includes one or more terminal devices 1, one or more service servers 2, and one or more core servers 3. Further, the one or more terminal devices 1, the one or more service servers 2, and the one or more core servers 3 can communicate with each other via a network 4 such as the Internet, a LAN, or a WAN.

なお、本実施の形態において、端末装置1が2以上、存在する場合、通常、2以上の国に分散している。しかし、2以上の端末装置1は、1国内に存在していても良い。また、サービスサーバ2が2以上、存在する場合、通常、2以上の国に分散している。しかし、2以上のサービスサーバ2は、1国内に存在していても良い。さらに、本実施の形態において、コアサーバ3が2以上存在する場合、2以上のコアサーバ3は、通常、2以上の国に分散している。しかし、2以上のコアサーバ3は、1国内に存在していても良い。また、端末装置1は、いわゆるパーソナルコンピュータ、携帯端末(携帯電話を含む)、ナビゲーション端末、テレビジョン端末等、問わない。   In the present embodiment, when there are two or more terminal devices 1, they are usually dispersed in two or more countries. However, two or more terminal devices 1 may exist in one country. In addition, when there are two or more service servers 2, they are usually distributed in two or more countries. However, two or more service servers 2 may exist in one country. Further, in the present embodiment, when there are two or more core servers 3, the two or more core servers 3 are usually distributed in two or more countries. However, two or more core servers 3 may exist in one country. The terminal device 1 may be a so-called personal computer, portable terminal (including a mobile phone), navigation terminal, television terminal, or the like.

図2は、本実施の形態における情報システムのブロック図である。   FIG. 2 is a block diagram of the information system in the present embodiment.

端末装置1は、端末受付部11、端末送信部12、端末受信部13、および端末出力部14を備える。   The terminal device 1 includes a terminal reception unit 11, a terminal transmission unit 12, a terminal reception unit 13, and a terminal output unit 14.

サービスサーバ2は、処理手段格納部21、サービスサーバ受信部22、サービス部23、およびサービスサーバ送信部24を備える。   The service server 2 includes a processing means storage unit 21, a service server reception unit 22, a service unit 23, and a service server transmission unit 24.

コアサーバ3は、制約満足情報格納部31、複合サービス情報格納部32、コアサーバ受信部33、制約判断部34、適応処理部35、サービスサーバ決定部36、およびコアサーバ送信部37を備える。また、サービスサーバ決定部36は、サービスサーバ管理情報格納手段361、サービス識別子取得手段362、およびサービスサーバ識別子取得手段363を備える。   The core server 3 includes a constraint satisfaction information storage unit 31, a composite service information storage unit 32, a core server reception unit 33, a constraint determination unit 34, an adaptive processing unit 35, a service server determination unit 36, and a core server transmission unit 37. The service server determination unit 36 includes a service server management information storage unit 361, a service identifier acquisition unit 362, and a service server identifier acquisition unit 363.

端末装置1を構成する端末受付部11は、サービス要求を受け付ける。サービス要求とは、サービスを識別するサービス識別子を有するサービスの要求である。サービス要求は、2以上のサービスを複合した複合サービスを識別するサービス識別子を有するサービスの要求であっても良い。また、サービス要求とは、通常、ユーザ識別子も有する。なお、ユーザ識別子は、予め端末装置1が保持している。また、ユーザ識別子は、例えば、ユーザがログインする際に入力した情報である。ユーザ識別子は、ユーザID、端末装置1のIPアドレス等、ユーザを識別できる情報であれば何でも良い。また、サービスには、一つの機能を果たす原子サービスと、複数の原子サービスが統合した複合サービスとがある。また、サービスは、何らかの機能を提供するものであり、例えば、機械翻訳処理や、形態素解析処理や、動画字幕同時翻訳のサービスや、言語翻訳付きのTV会議システムのサービスなどである。ただし、サービスの内容は問わない。また、端末受付部11は、ユーザから各種の指示やデータを受け付ける。また、サービス要求は、サービス対象のデータを含んでも良いことは言うまでもない。また、サービス要求は、複合サービスを構成する2以上の原子サービスの識別子である2以上原子サービスの識別子を含んでも良い。また、サービス要求は、いわゆるプログラムを含んでも良い。プログラムとは、複合サービスを定義した情報であり、2以上原子サービスの識別子を有し、かつ制御も有する。   The terminal reception unit 11 configuring the terminal device 1 receives a service request. A service request is a request for a service having a service identifier that identifies the service. The service request may be a service request having a service identifier for identifying a composite service in which two or more services are combined. A service request usually also has a user identifier. Note that the user identifier is held in advance by the terminal device 1. The user identifier is, for example, information input when the user logs in. The user identifier may be anything as long as it is information that can identify the user, such as the user ID and the IP address of the terminal device 1. In addition, the service includes an atomic service that performs one function and a composite service in which a plurality of atomic services are integrated. The service provides a certain function, such as a machine translation process, a morphological analysis process, a moving picture subtitle simultaneous translation service, a TV conference system service with language translation, and the like. However, the content of the service does not matter. The terminal reception unit 11 receives various instructions and data from the user. Needless to say, the service request may include data to be serviced. In addition, the service request may include two or more atomic service identifiers that are identifiers of two or more atomic services constituting the composite service. The service request may include a so-called program. A program is information defining a composite service, has two or more atomic service identifiers, and has control.

ここで、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導1体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。サービス要求等の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。   Here, reception means reception of information input from an input device such as a keyboard, a mouse, a touch panel, reception of information transmitted via a wired or wireless communication line, an optical disk, a magnetic disk, and a semiconductor single body memory. It is a concept including reception of information read from a recording medium. The service request input means may be anything such as a keyboard, mouse or menu screen.

端末送信部12は、端末受付部11が受け付けたサービス要求をコアサーバ3に送信する。また、端末送信部12は、端末受付部11が受け付けた他の命令や、データ等をコアサーバ3に送信する。   The terminal transmission unit 12 transmits the service request received by the terminal reception unit 11 to the core server 3. In addition, the terminal transmission unit 12 transmits other commands received by the terminal reception unit 11, data, and the like to the core server 3.

端末受信部13は、サービス要求の送信に応じて、サービスの結果を受信する。ここでの受信は、通常、コアサーバ3からの受信である。しかし、端末受信部13は、サービスの結果をサービスサーバ2から受信しても良い。また、端末受信部13は、サービスを享受している間、サービスの結果を受信する。例えば、端末受信部13は、サービス識別子「翻訳処理」と翻訳対象のデータとを含むサービス要求に対するサービスの結果である翻訳結果を受信する。また、例えば、要求されたサービスがTV電話(TV会議)のサービスである場合、端末受信部13は、会議中において、相手からの動画や音声等を受信し続ける。   The terminal receiving unit 13 receives the service result in response to the transmission of the service request. The reception here is usually reception from the core server 3. However, the terminal reception unit 13 may receive the service result from the service server 2. Further, the terminal receiving unit 13 receives the service result while enjoying the service. For example, the terminal reception unit 13 receives a translation result that is a service result for a service request including a service identifier “translation processing” and data to be translated. Further, for example, when the requested service is a TV phone (TV conference) service, the terminal receiving unit 13 continues to receive moving images, voices, and the like from the other party during the conference.

端末出力部14は、端末受信部13が受信したサービスの結果を出力する。ここでの出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。   The terminal output unit 14 outputs the result of the service received by the terminal receiving unit 13. Output here refers to display on a display, projection using a projector, printing to a printer, sound output, transmission to an external device, storage in a recording medium, and output to other processing devices or other programs. It is a concept that includes delivery of processing results.

サービスサーバ2を構成する処理手段格納部21は、サービスを遂行するための1以上の処理手段を格納し得る。ここで、処理手段とは、通常、サービスを実現するプログラム、ソフトウェアであるが、サービスを実現するハードウェアでも良い。なお、プログラムやソフトウェアは、通常、実行可能なプログラムやソフトウェアである。処理手段は、例えば、形態素解析プログラム、日英翻訳プログラム、音声認識プログラム等である。   The processing means storage unit 21 constituting the service server 2 can store one or more processing means for performing the service. Here, the processing means is usually a program or software for realizing a service, but may be hardware for realizing a service. Note that the programs and software are usually executable programs and software. The processing means is, for example, a morphological analysis program, a Japanese-English translation program, a speech recognition program, or the like.

サービスサーバ受信部22は、コアサーバ3からサービス要求を受信する。   The service server receiving unit 22 receives a service request from the core server 3.

サービス部23は、サービスサーバ受信部22が受信したサービス要求に従って、処理手段格納部21の処理手段を実行し、サービスを遂行し、サービスの結果を取得する。サービス部23は、通常、サービス要求に含まれるサービス識別子に対応する処理手段を処理手段格納部21から読み出し、当該読み出した処理手段を実行する。また、サービス要求が処理対象のデータを含む場合、サービス部23は、当該データを、サービス要求に含まれるサービス識別子に対応する処理手段に渡し、当該処理手段を実行する。   The service unit 23 executes the processing unit of the processing unit storage unit 21 according to the service request received by the service server reception unit 22, performs the service, and acquires the service result. The service unit 23 normally reads out the processing unit corresponding to the service identifier included in the service request from the processing unit storage unit 21 and executes the read out processing unit. When the service request includes data to be processed, the service unit 23 passes the data to the processing unit corresponding to the service identifier included in the service request, and executes the processing unit.

サービスサーバ送信部24は、サービス部23のサービスの結果を送信する。サービスサーバ送信部24は、サービスの結果を、通常、コアサーバ3に送信する。しかし、サービスサーバ送信部24は、サービス要求を送信した端末装置1に送信しても良い。   The service server transmission unit 24 transmits the service result of the service unit 23. The service server transmission unit 24 normally transmits the service result to the core server 3. However, the service server transmission unit 24 may transmit the service request to the terminal device 1 that has transmitted the service request.

コアサーバ3を構成する制約満足情報格納部31は、1以上の制約満足情報を格納し得る。制約満足情報は、サービスを識別するサービス識別子と、制約情報と、適応情報とを有する。制約情報とは、サービスの制約に関する情報である。適応情報とは、制約を満たさない場合に制約を満たすようにするための情報である。なお、サービス識別子は、原子サービス識別子でも複合サービス識別子でも良い。原子サービス識別子は、一の処理手段(プログラム)で実現され得るサービスである原子サービスの識別子である。複合サービス識別子は、2以上の原子サービスを組み合わせて実現されるサービスである複合サービスの識別子である。また、サービス識別子は、具象サービス識別子でも、抽象サービス識別子でも良い。具象サービス識別子とは、サービスを提供する具体的な処理手段(プログラム)の名称やIDなどである。抽象サービス識別子とは、サービスの機能を象徴する名称やIDなどである。抽象サービス識別子は、例えば、「形態素解析」、「機械翻訳」などである。また、制約情報は、内部制約情報または外部制約情報である。内部制約情報とは、一のサービスに関する制約情報であり、例えば、処理可能なデータ量、処理可能な文字数などである。また、外部制約情報は、2以上のサービスに関する制約情報であり、例えば、2以上のサービスが一度に動作しないことを示す制約に関する情報、または2以上のサービスが一度に動作することを示す制約に関する情報である。ここで、「2以上のサービスが一度に動作する」とは、通常、2以上のサービスが同時に動作することではなく、2以上のサービスが組み合わされて動作すること、2以上のサービスが複合サービスで利用されること、2以上のサービスが連続して動作すること等の意味である。また、制約情報は、制約を特定する制約特定情報と、制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有しても良い。制約特定情報には、例えば、処理可能なデータ量、処理可能な文字数などの一のサービスに関する制約情報である内部制約情報がある。また、制約特定情報には、例えば、2以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または2以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報などがある。また、検査情報は、検査を行うプログラムの識別子であるプログラム識別子(処理識別子とも言う)、または検査を行うプログラムとそのプログラム識別子、または検査を行うプログラムなどである。   The constraint satisfaction information storage unit 31 constituting the core server 3 can store one or more constraint satisfaction information. The constraint satisfaction information includes a service identifier for identifying a service, constraint information, and adaptation information. The restriction information is information related to service restrictions. The adaptation information is information for satisfying the constraint when the constraint is not satisfied. The service identifier may be an atomic service identifier or a composite service identifier. The atomic service identifier is an identifier of an atomic service that is a service that can be realized by one processing means (program). The composite service identifier is an identifier of a composite service that is a service realized by combining two or more atomic services. The service identifier may be a concrete service identifier or an abstract service identifier. The concrete service identifier is the name or ID of a specific processing means (program) that provides the service. The abstract service identifier is a name or ID that symbolizes the function of the service. The abstract service identifier is, for example, “morpheme analysis”, “machine translation”, or the like. The constraint information is internal constraint information or external constraint information. The internal constraint information is constraint information related to one service, such as the amount of data that can be processed and the number of characters that can be processed. The external constraint information is constraint information related to two or more services, for example, information regarding constraints indicating that two or more services do not operate at once, or constraints indicating that two or more services operate at one time. Information. Here, “two or more services operate at the same time” usually means that two or more services do not operate simultaneously, but two or more services operate in combination. This means that two or more services operate continuously. Further, the constraint information may include constraint specifying information for specifying a constraint and inspection information indicating a method for checking whether or not the constraint specified by the constraint specifying information is satisfied. The constraint specifying information includes, for example, internal constraint information that is constraint information regarding one service such as the amount of data that can be processed and the number of characters that can be processed. In addition, the constraint specifying information includes, for example, external constraint information that is information regarding constraints indicating that two or more services do not operate at once, or external information that is information regarding constraints indicating that two or more services operate at a time. There is constraint information. The inspection information includes a program identifier (also referred to as a process identifier) that is an identifier of a program to be inspected, a program to be inspected and its program identifier, or a program to be inspected.

複合サービス情報格納部32は、複合サービス情報を格納している。複合サービス情報は、複合サービス識別子と、2以上の原子サービス識別子とを対応づける情報である。複合サービス情報は、複合サービス識別子と2以上の原子サービス識別子とそれらの制御方法を含む、いわゆるプログラムでも良い。複合サービス情報は、端末装置1から送信されてきたサービス要求に含まれている情報でも良い。複合サービス識別子とは、複合サービスを識別する識別子である。   The composite service information storage unit 32 stores composite service information. The composite service information is information that associates a composite service identifier with two or more atomic service identifiers. The composite service information may be a so-called program including a composite service identifier, two or more atomic service identifiers, and control methods thereof. The composite service information may be information included in the service request transmitted from the terminal device 1. The composite service identifier is an identifier for identifying a composite service.

コアサーバ受信部33は、端末装置1からサービス要求を受信する。また、コアサーバ受信部33は、端末装置1からユーザ識別子やパスワード等の他の情報を受信しても良い。なお、コアサーバ受信部33がユーザ識別子やパスワードを受信した場合、コアサーバ3の図示しない認証手段は、認証処理を行う。なお、認証処理は公知技術であるので、詳細な説明を省略する。また、コアサーバ受信部33は、サービスサーバ2からサービスの結果を受信しても良い。   The core server reception unit 33 receives a service request from the terminal device 1. Further, the core server receiving unit 33 may receive other information such as a user identifier and a password from the terminal device 1. When the core server receiving unit 33 receives a user identifier or password, an authentication unit (not shown) of the core server 3 performs an authentication process. Since the authentication process is a known technique, a detailed description is omitted. The core server reception unit 33 may receive the service result from the service server 2.

制約判断部34は、サービス要求に含まれるサービス識別子を用いて、制約情報を制約満足情報格納部31から取得し、サービス要求が制約情報で特定される制約を満たすか否かを判断する。なお、ここでのサービス識別子は、原子サービス識別子でも、複合サービス識別子でも良い。サービス要求に含まれるサービス識別子が抽象サービス識別子である場合、制約判断部34は、当該抽象サービス識別子に対応する1以上の具象サービス識別子を取得し、1以上のいずれかの具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たすか否かを判断する。そして、制約判断部34は、すべての具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たさないと判断した場合に、サービス要求が制約情報で特定される制約を満たさない、と判断する。また、サービス要求に含まれるサービス識別子が具象サービス識別子である場合、制約判断部34は、当該具象サービス識別子で識別される処理手段が制約情報で特定される制約を満たすか否かを判断する。   The constraint determination unit 34 acquires the constraint information from the constraint satisfaction information storage unit 31 using the service identifier included in the service request, and determines whether the service request satisfies the constraint specified by the constraint information. The service identifier here may be an atomic service identifier or a composite service identifier. When the service identifier included in the service request is an abstract service identifier, the constraint determination unit 34 acquires one or more concrete service identifiers corresponding to the abstract service identifier, and is identified by any one or more concrete service identifiers. It is determined whether or not the processing means satisfying the constraint specified by the constraint information. When the constraint determination unit 34 determines that the processing unit identified by all the concrete service identifiers does not satisfy the constraint specified by the constraint information, the service request does not satisfy the constraint specified by the constraint information. Judge. When the service identifier included in the service request is a concrete service identifier, the constraint determining unit 34 determines whether the processing unit identified by the concrete service identifier satisfies the constraint specified by the constraint information.

また、制約判断部34は、サービス要求に含まれるサービス識別子を用いて、検査情報を制約満足情報格納部31から取得し、当該検査情報に従って検査を行い、制約特定情報で特定される制約を満たすか否かを判断する。サービス要求に含まれるサービス識別子が抽象サービス識別子である場合、制約判断部34は、当該抽象サービス識別子に対応する1以上の具象サービス識別子を取得し、1以上の各具象サービス識別子と対になる検査情報を制約満足情報格納部31から取得し、当該検査情報に従って検査を行い、各具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。また、サービス要求に含まれるサービス識別子が具象サービス識別子である場合、制約判断部34は、当該具象サービス識別子と対になる検査情報を制約満足情報格納部31から取得し、当該検査情報に従って検査を行い、前記具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。   Further, the constraint determination unit 34 acquires the inspection information from the constraint satisfaction information storage unit 31 using the service identifier included in the service request, performs the inspection according to the inspection information, and satisfies the constraint specified by the constraint specifying information. Determine whether or not. When the service identifier included in the service request is an abstract service identifier, the constraint determination unit 34 acquires one or more concrete service identifiers corresponding to the abstract service identifier, and checks each paired with the one or more concrete service identifiers. Information is acquired from the constraint satisfaction information storage unit 31 and checked according to the check information, and it is determined whether or not the service identified by each concrete service identifier satisfies the constraint specified by the constraint specifying information. Further, when the service identifier included in the service request is a concrete service identifier, the constraint determination unit 34 obtains inspection information paired with the concrete service identifier from the constraint satisfaction information storage unit 31 and performs an inspection according to the inspection information. And determining whether the service identified by the concrete service identifier satisfies the constraint specified by the constraint specifying information.

また、制約判断部34は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、サービス要求に含まれる複合サービス識別子に対応する2以上の原子サービス識別子を、複合サービス情報格納部32から取得し、2以上の各原子サービス識別子を用いて、制約情報を制約満足情報格納部31から取得し、制約情報で特定される制約を満たすか否かを判断する。原子サービス識別子が抽象サービス識別子である場合、制約判断部34は、当該抽象サービス識別子に対応する1以上の具象サービス識別子を取得し、1以上の各具象サービス識別子と対になる検査情報を制約満足情報格納部31から取得し、当該検査情報に従って検査を行い、各具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。また、原子サービス識別子が具象サービス識別子である場合、制約判断部34は、当該具象サービス識別子と対になる検査情報を制約満足情報格納部31から取得し、当該検査情報に従って検査を行い、前記具象サービス識別子で識別されるサービスが、制約特定情報で特定される制約を満たすか否かを判断する。   In addition, when the service identifier included in the service request is a composite service identifier, the constraint determination unit 34 acquires two or more atomic service identifiers corresponding to the composite service identifier included in the service request from the composite service information storage unit 32. Then, using the two or more atomic service identifiers, the constraint information is acquired from the constraint satisfaction information storage unit 31, and it is determined whether the constraint specified by the constraint information is satisfied. When the atomic service identifier is an abstract service identifier, the constraint determination unit 34 acquires one or more concrete service identifiers corresponding to the abstract service identifier, and satisfies the constraint on the inspection information paired with the one or more concrete service identifiers. The information acquired from the information storage unit 31 is inspected according to the inspection information, and it is determined whether or not the service identified by each concrete service identifier satisfies the constraint specified by the constraint specifying information. Further, when the atomic service identifier is a concrete service identifier, the constraint determination unit 34 obtains inspection information that is paired with the concrete service identifier from the constraint satisfaction information storage unit 31 and performs an inspection according to the inspection information. It is determined whether or not the service identified by the service identifier satisfies the constraint specified by the constraint specifying information.

なお、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、制約判断部34は、複合サービス識別子と対になる制約情報を制約満足情報格納部31から取得し、制約情報で特定される制約を満たすか否かを判断しても良い。また、複合サービス識別子に対応する2以上の原子サービス識別子が存在する場合、すべての原子サービス識別子に対応する制約情報が存在するとは限らない。   When the service identifier included in the service request is a composite service identifier, the constraint determination unit 34 acquires the constraint information that is paired with the composite service identifier from the constraint satisfaction information storage unit 31, and the constraint specified by the constraint information It may be determined whether or not the above is satisfied. Further, when there are two or more atomic service identifiers corresponding to the composite service identifier, the constraint information corresponding to all the atomic service identifiers does not necessarily exist.

また、制約判断部34は、サービス要求に含まれるサービス識別子が複合サービス識別子である場合、複合サービス識別子に対応する2以上の原子サービス識別子を、複合サービス情報格納部32から取得し、2以上の原子サービス識別子が、外部制約情報が示す制約を満たすか否かを判断する。2以上の原子サービス識別子が抽象サービス識別子である場合、制約判断部34は、当該2以上の各抽象サービス識別子に対応する2以上の具象サービス識別子を取得し、当該2以上の具象サービス識別子のうちの各抽象サービス識別子に対応する2以上の具象サービス識別子で識別されるサービスが、外部制約情報が示す制約を満たすか否かを判断する。また、2以上の原子サービス識別子が具象サービス識別子である場合、当該2以上の具象サービス識別子で識別されるサービスが、外部制約情報が示す制約を満たすか否かを判断する。   In addition, when the service identifier included in the service request is a composite service identifier, the constraint determination unit 34 acquires two or more atomic service identifiers corresponding to the composite service identifier from the composite service information storage unit 32, and obtains two or more It is determined whether the atomic service identifier satisfies the constraint indicated by the external constraint information. When two or more atomic service identifiers are abstract service identifiers, the constraint determination unit 34 acquires two or more concrete service identifiers corresponding to the two or more abstract service identifiers, and among the two or more concrete service identifiers, It is determined whether or not a service identified by two or more concrete service identifiers corresponding to each abstract service identifier satisfies the constraint indicated by the external constraint information. If two or more atomic service identifiers are concrete service identifiers, it is determined whether or not the service identified by the two or more concrete service identifiers satisfies the constraint indicated by the external constraint information.

適応処理部35は、制約判断部34が制約を満たさないと判断した場合に、サービス識別子と対になる適応情報を制約満足情報格納部31から取得し、適応情報で特定される適応処理を行って制約を満たすようにする。   When the constraint determination unit 34 determines that the constraint is not satisfied, the adaptation processing unit 35 acquires the adaptation information paired with the service identifier from the constraint satisfaction information storage unit 31 and performs the adaptation process specified by the adaptation information. Satisfy the constraints.

また、適応処理部35は、制約判断部34が制約を満たさないと判断した場合に、制約を満たさない原子サービス識別子と対になる適応情報を制約満足情報格納部31から取得し、適応情報で特定される適応処理を行って制約を満たすようにする。   In addition, when the constraint determination unit 34 determines that the constraint is not satisfied, the adaptation processing unit 35 acquires the adaptation information paired with the atomic service identifier that does not satisfy the constraint from the constraint satisfaction information storage unit 31, and the adaptation information Perform the specified adaptive processing to satisfy the constraints.

なお、適応処理部35は、通常、適応情報に含まれる適応処理識別子で識別される適応処理手段を実行する。適応処理手段は、適応処理を行うプログラムである。適応情報は、例えば、適応処理識別子または適応処理手段を有する。適応情報が適応処理識別子のみを有する場合、適応処理手段は、別途図示しない記録媒体に格納されている。また、適応処理とは、例えば、処理対象のデータを処理可能なように分割する処理である。また、適応処理とは、例えば、複合サービスの場合に、一緒に使用可能な2以上のサービスを識別する2以上のサービス識別子を取得する処理である。なお、適応処理の処理内容は問わないことは言うまでもない。   Note that the adaptation processing unit 35 normally executes adaptation processing means identified by the adaptation process identifier included in the adaptation information. The adaptive processing means is a program that performs adaptive processing. The adaptation information includes, for example, an adaptation process identifier or adaptation process means. When the adaptation information has only the adaptation process identifier, the adaptation processing means is separately stored in a recording medium (not shown). The adaptive process is, for example, a process of dividing processing target data so that it can be processed. The adaptive process is a process for acquiring two or more service identifiers that identify two or more services that can be used together in the case of a composite service, for example. Needless to say, the processing content of the adaptive processing is not limited.

サービスサーバ決定部36は、サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定する。適応処理部35が、例えば、一緒に使用可能な2以上のサービスを識別する2以上のサービス識別子を取得した場合、当該2以上のサービス識別子で識別されるサービスを提供可能なサービスサーバを、サービスを提供するサービスサーバとして決定する。サービスサーバ2を決定する処理は、例えば、サービスサーバ2を識別するサービスサーバ識別子を取得する処理である。また、サービスサーバ決定部36は、制約判断部34が制約を満たすと判断した場合は、サービス識別子に対応するサービスサーバ2の識別子を取得する。つまり、制約判断部34が制約を満たすと判断した場合は、適応処理部35による適応処理は行われない。さらに、適応処理部35による適応処理を行っても制約を満たさない場合は、サービスサーバ決定部36は、サービスサーバ2を決定できない。また、サービスサーバ決定部36は、通常、サービス識別子とサービスサーバ識別子との対応表を保持している。ここでのサービス識別子は、抽象サービス識別子でも良いし、具象サービス識別子でも良い。   The service server determination unit 36 determines a service server that can provide the service identified by the service identifier included in the service request. For example, when the adaptive processing unit 35 acquires two or more service identifiers that identify two or more services that can be used together, a service server that can provide the service identified by the two or more service identifiers It is determined as a service server that provides The process for determining the service server 2 is, for example, a process for acquiring a service server identifier for identifying the service server 2. Further, when the constraint determining unit 34 determines that the constraint is satisfied, the service server determining unit 36 acquires the identifier of the service server 2 corresponding to the service identifier. That is, when the constraint determining unit 34 determines that the constraint is satisfied, the adaptive processing by the adaptive processing unit 35 is not performed. Furthermore, if the restriction is not satisfied even if the adaptation processing by the adaptation processing unit 35 is performed, the service server determination unit 36 cannot determine the service server 2. Further, the service server determination unit 36 normally holds a correspondence table between service identifiers and service server identifiers. The service identifier here may be an abstract service identifier or a concrete service identifier.

サービスサーバ管理情報格納手段361は、1以上のサービスサーバ管理情報を格納し得る。サービスサーバ管理情報は、抽象サービス識別子と、1以上の具象サービス識別子と、サービスサーバ識別子とを有する。抽象サービス識別子は、機能名や機能を特定するIDであり、例えば、形態素解析、専門用語辞書機能、機械翻訳等である。また、具象サービス識別子は、抽象サービス識別子で識別されるサービスを実現する具体的なサービスを識別する情報である。具象サービス識別子は、例えば、例えば、形態素解析を行うMeCab(「http://mecab.sourceforge.net/」を参照)、TreeTagger(「http://nlp.nagaokaut.ac.jp/TreeTagger」を参照)などである。さらに、サービスサーバ識別子は、具象サービス識別子で識別されるサービスを行うサービスサーバ2を識別する情報である。   The service server management information storage unit 361 can store one or more service server management information. The service server management information includes an abstract service identifier, one or more concrete service identifiers, and a service server identifier. The abstract service identifier is an ID that identifies a function name or function, and includes, for example, morphological analysis, technical term dictionary function, machine translation, and the like. The concrete service identifier is information for identifying a specific service that realizes the service identified by the abstract service identifier. Concrete service identifiers include, for example, MeCab (see “http://mecab.sourceforge.net/”) that performs morphological analysis, and TreeTager (see “http://nlp.nagaokaut.ac.jp/TreeTagger”). ) Etc. Furthermore, the service server identifier is information for identifying the service server 2 that performs the service identified by the concrete service identifier.

サービス識別子取得手段362は、サービスの提供を行う一の具象サービス識別子を取得する。サービス識別子取得手段362は、サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する1以上の具象サービス識別子から一の具象サービス識別子を取得する。サービスを実現する具象サービスの候補が2以上存在する場合、サービス識別子取得手段362は、ランダムに一の具象サービス識別子を選択しても良い。また、サービスを実現する具象サービスの候補が2以上存在する場合、サービス識別子取得手段362は、外部制約を満たすように、一の具象サービス識別子を選択しても良い。なお、外部制約を満たすように、一の具象サービス識別子を選択する処理は、通常、適応処理部35が行う。かかる場合、サービス識別子取得手段362は、適応処理部35の適応処理の結果を反映させ、適応処理部35が選択した一の具象サービス識別子を選択する。   The service identifier acquisition unit 362 acquires one concrete service identifier that provides a service. The service identifier acquisition unit 362 acquires one concrete service identifier from one or more concrete service identifiers that realize the service identified by the abstract service identifier included in the service request. When there are two or more concrete service candidates for realizing the service, the service identifier acquisition unit 362 may randomly select one concrete service identifier. When there are two or more concrete service candidates for realizing the service, the service identifier acquisition unit 362 may select one concrete service identifier so as to satisfy the external restriction. Note that the process of selecting one concrete service identifier so as to satisfy the external constraint is normally performed by the adaptive processing unit 35. In such a case, the service identifier acquisition unit 362 reflects the result of the adaptation process of the adaptation processing unit 35 and selects one concrete service identifier selected by the adaptation processing unit 35.

サービスサーバ識別子取得手段363は、サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得する。サービスサーバ識別子とは、例えば、サービスサーバのIPアドレス、サービスにアクセスするためのURL、URIなどである。また、サービスサーバ識別子取得手段363は、外部制約を満たすようにサービスサーバ識別子を取得することは好適である。   The service server identifier acquisition unit 363 acquires a service server identifier paired with the concrete service identifier acquired by the service identifier acquisition unit. The service server identifier is, for example, an IP address of a service server, a URL for accessing a service, a URI, or the like. In addition, it is preferable that the service server identifier acquisition unit 363 acquires the service server identifier so as to satisfy the external restriction.

コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ2に、適応処理部35が適応処理を行った結果を反映させたサービス要求を送信する。コアサーバ送信部37が送信するサービス要求は、通常、具象サービス識別子を有する。つまり、コアサーバ受信部33が受信したサービス要求が有するサービス識別子は抽象サービス識別子であり、コアサーバ送信部37が送信するサービス要求が有するサービス識別子は具象サービス識別子であることは好適である。   The core server transmitting unit 37 transmits a service request reflecting the result of the adaptive processing performed by the adaptive processing unit 35 to the service server 2 determined by the service server determining unit 36. The service request transmitted by the core server transmission unit 37 usually has a concrete service identifier. That is, it is preferable that the service identifier included in the service request received by the core server receiving unit 33 is an abstract service identifier, and the service identifier included in the service request transmitted by the core server transmitting unit 37 is a concrete service identifier.

さらに、具体的には、コアサーバ送信部37は、サービスサーバ識別子取得手段363が取得したサービスサーバ識別子で識別されるサービスサーバ2に、適応処理部35が適応処理を行った結果を反映させたサービス要求を送信する。ここで、「適応処理を行った結果を反映させたサービス要求の送信」とは、適応処理を行った結果を含むサービス要求の送信や、外部制約を満たすサービスサーバ2へのサービス要求の送信等である。   More specifically, the core server transmission unit 37 reflects the result of the adaptation processing unit 35 performing the adaptation process on the service server 2 identified by the service server identifier acquired by the service server identifier acquisition unit 363. Send a service request. Here, “transmission of a service request reflecting the result of adaptive processing” refers to transmission of a service request including the result of adaptive processing, transmission of a service request to the service server 2 that satisfies external constraints, etc. It is.

また、制約判断部34が制約を満たすと判断した場合は、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ2に、受信されたサービス要求を送信する。   If the constraint determination unit 34 determines that the constraint is satisfied, the core server transmission unit 37 transmits the received service request to the service server 2 determined by the service server determination unit 36.

端末受付部11は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。   The terminal reception unit 11 can be realized by a device driver of an input unit such as a keyboard, control software for a menu screen, or the like.

処理手段格納部21、制約満足情報格納部31、複合サービス情報格納部32、およびサービスサーバ管理情報格納手段361は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。処理手段格納部21等に処理手段等が記憶される過程は問わない。例えば、記録媒体を介して処理手段等が処理手段格納部21等で記憶されるようになってもよく、通信回線等を介して送信された処理手段等が処理手段格納部21等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された処理手段等が処理手段格納部21等で記憶されるようになってもよい。   The processing unit storage unit 21, the constraint satisfaction information storage unit 31, the composite service information storage unit 32, and the service server management information storage unit 361 are preferably non-volatile recording media, but can also be realized by volatile recording media. is there. The process in which the processing means is stored in the processing means storage unit 21 or the like is not limited. For example, the processing means or the like may be stored in the processing means storage unit 21 or the like via a recording medium, and the processing means or the like transmitted via a communication line or the like is stored in the processing means storage unit 21 or the like. Alternatively, the processing means or the like input via the input device may be stored in the processing means storage unit 21 or the like.

端末送信部12、サービスサーバ送信部24、およびコアサーバ送信部37は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されても良い。   The terminal transmission unit 12, the service server transmission unit 24, and the core server transmission unit 37 are usually realized by wireless or wired communication means, but may be realized by broadcasting means.

端末受信部13、サービスサーバ受信部22、およびコアサーバ受信部33は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されても良い。   The terminal receiving unit 13, the service server receiving unit 22, and the core server receiving unit 33 are usually realized by wireless or wired communication means, but may be realized by means for receiving broadcasts.

端末出力部14は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。端末出力部14は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。   The terminal output unit 14 may be considered as including or not including an output device such as a display or a speaker. The terminal output unit 14 can be implemented by output device driver software, or output device driver software and an output device.

サービス部23、制約判断部34、適応処理部35、サービスサーバ決定部36、サービス識別子取得手段362、およびサービスサーバ識別子取得手段363は、通常、MPUやメモリ等から実現され得る。サービス部23等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。   The service unit 23, the constraint determination unit 34, the adaptive processing unit 35, the service server determination unit 36, the service identifier acquisition unit 362, and the service server identifier acquisition unit 363 can be usually realized by an MPU, a memory, or the like. The processing procedure of the service unit 23 or the like is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (dedicated circuit).

次に、情報システムの動作について説明する。まず、情報システムを構成する端末装置1の動作について、図3のフローチャートを用いて説明する。   Next, the operation of the information system will be described. First, operation | movement of the terminal device 1 which comprises an information system is demonstrated using the flowchart of FIG.

(ステップS301)端末受付部11は、ユーザから指示等を受け付けたか否かを判断する。指示等を受け付ければステップS302に行き、指示等を受け付けなければステップS305に行く。   (Step S301) The terminal reception unit 11 determines whether an instruction or the like has been received from the user. If an instruction or the like is accepted, the process proceeds to step S302. If an instruction or the like is not accepted, the process proceeds to step S305.

(ステップS302)端末送信部12は、ステップS301で受け付けた指示等が、サービス要求であるか否かを判断する。サービス要求であればステップS303に行き、サービス要求でなければステップS304に行く。   (Step S302) The terminal transmission unit 12 determines whether or not the instruction received in Step S301 is a service request. If it is a service request, go to step S303, and if it is not a service request, go to step S304.

(ステップS303)端末送信部12は、ステップS301で受け付けたサービス要求をコアサーバ3に送信し、ステップS301に戻る。   (Step S303) The terminal transmission unit 12 transmits the service request received in Step S301 to the core server 3, and returns to Step S301.

(ステップS304)端末送信部12または図示しない処理手段は、ステップS301で受け付けたその他の指示やデータに対応した処理を行い、ステップS301に戻る。なお、端末受付部11がステップS301で、処理手段に渡す情報(例えば、TV会議では、動画や音声や字幕など)を受け付けた場合、端末送信部12は当該処理手段に渡す情報をコアサーバ3またはサービスサーバ2に送信する。   (Step S304) The terminal transmitter 12 or processing means (not shown) performs processing corresponding to the other instructions and data received in Step S301, and returns to Step S301. When the terminal receiving unit 11 receives information to be passed to the processing unit in step S301 (for example, in a video conference, a video, audio, caption, etc.), the terminal transmitting unit 12 sends the information to be passed to the processing unit to the core server 3. Alternatively, it is transmitted to the service server 2.

(ステップS305)端末受信部13は、サービスの結果を受信したか否かを判断する。サービスの結果を受信すればステップS306に行き、受信しなければステップS301に戻る。   (Step S305) The terminal reception unit 13 determines whether or not a service result has been received. If the service result is received, the process goes to step S306; otherwise, the process returns to step S301.

(ステップS306)端末出力部14は、ステップS309で受信されたサービスの結果を出力し、ステップS301に戻る。   (Step S306) The terminal output unit 14 outputs the result of the service received in step S309, and returns to step S301.

なお、図3のフローチャートにおいて、ユーザがサービスの停止指示を入力した場合、サービス識別子を有する停止命令がコアサーバ3に送信される。   In the flowchart of FIG. 3, when the user inputs a service stop instruction, a stop command having a service identifier is transmitted to the core server 3.

また、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。   Further, in the flowchart of FIG. 3, the process is ended by powering off or interruption for aborting the process.

次に、サービスサーバ2の動作について、図4のフローチャートを用いて説明する。   Next, operation | movement of the service server 2 is demonstrated using the flowchart of FIG.

(ステップS401)サービスサーバ受信部22は、コアサーバ3からサービス要求を受信したか否かを判断する。サービス要求を受信すればステップS402に行き、サービス要求を受信しなければステップS406に行く。   (Step S <b> 401) The service server reception unit 22 determines whether a service request is received from the core server 3. If the service request is received, the process goes to step S402, and if the service request is not received, the process goes to step S406.

(ステップS402)サービス部23は、ステップS401で受信されたサービス要求に含まれるサービス識別子を取得する。   (Step S402) The service unit 23 acquires a service identifier included in the service request received in step S401.

(ステップS403)サービス部23は、ステップS402で取得したサービス識別子に対応する処理手段を処理手段格納部21から読み出し、当該読み出した処理手段を実行する。   (Step S403) The service unit 23 reads the processing unit corresponding to the service identifier acquired in step S402 from the processing unit storage unit 21, and executes the read processing unit.

(ステップS404)サービスサーバ送信部24は、ステップS403におけるサービス部23のサービスの結果を取得する。   (Step S404) The service server transmission unit 24 acquires the service result of the service unit 23 in step S403.

(ステップS405)サービスサーバ送信部24は、ステップS404で取得したサービスの結果を送信し、ステップS401に戻る。   (Step S405) The service server transmission unit 24 transmits the result of the service acquired in step S404, and returns to step S401.

(ステップS406)サービスサーバ受信部22は、コアサーバ3から停止命令を受信したか否かを判断する。停止命令を受信すればステップS407に行き、停止命令を受信しなければステップS401に戻る。   (Step S <b> 406) The service server reception unit 22 determines whether a stop command has been received from the core server 3. If a stop command is received, the process proceeds to step S407, and if a stop command is not received, the process returns to step S401.

(ステップS407)サービス部23は、ステップS406で受信された停止命令に含まれるサービス識別子を取得する。   (Step S407) The service unit 23 acquires a service identifier included in the stop command received in Step S406.

(ステップS408)サービス部23は、ステップS407で取得したサービス識別子に対応する処理手段の実行を停止し、ステップS401に戻る。   (Step S408) The service unit 23 stops the execution of the processing means corresponding to the service identifier acquired in Step S407, and returns to Step S401.

なお、図4のフローチャートにおいて、サービス要求を受信した後、停止命令を受信するまで、サービス要求に含まれるサービス識別子に対応する処理手段を実行し続けても良い。そして、サービスの結果の取得、および送信を繰り返しても良い。   In the flowchart of FIG. 4, after receiving the service request, the processing means corresponding to the service identifier included in the service request may be continuously executed until a stop command is received. Then, acquisition and transmission of service results may be repeated.

また、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。   In the flowchart of FIG. 4, the process is terminated by power-off or a process termination interrupt.

次に、コアサーバ3の動作について、図5のフローチャートを用いて説明する。   Next, the operation of the core server 3 will be described using the flowchart of FIG.

(ステップS501)コアサーバ受信部33は、端末装置1からサービス要求を受信したか否かを判断する。サービス要求を受信すればステップS502に行き、サービス要求を受信しなければステップS504に行く。   (Step S <b> 501) The core server reception unit 33 determines whether a service request is received from the terminal device 1. If a service request is received, the process proceeds to step S502. If no service request is received, the process proceeds to step S504.

(ステップS502)コアサーバ3は、サービス要求を処理する。かかるサービス要求処理について、図6、図7のフローチャートを用いて説明する。   (Step S502) The core server 3 processes the service request. Such service request processing will be described with reference to the flowcharts of FIGS.

(ステップS503)コアサーバ送信部37は、サービスサーバ2で行われたサービス要求に対する結果を、サービス要求を送信してきた端末装置1に送信し、ステップS501に戻る。   (Step S503) The core server transmission unit 37 transmits the result of the service request made by the service server 2 to the terminal device 1 that has transmitted the service request, and returns to step S501.

(ステップS504)コアサーバ受信部33は、端末装置1から停止命令を受信したか否かを判断する。停止命令を受信すればステップS505に行き、停止命令を受信しなければステップS507に行く。   (Step S504) The core server reception unit 33 determines whether or not a stop command has been received from the terminal device 1. If a stop command is received, the process goes to step S505, and if a stop command is not received, the process goes to step S507.

(ステップS505)コアサーバ送信部37は、停止命令が有するサービス識別子で識別されるサービスを遂行しているサービスサーバ2のサービスサーバ識別子を取得する。なお、サービスを遂行しているサービスサーバ2のサービスサーバ識別子は、コアサーバ3の図示しない管理手段に格納されている、とする。   (Step S505) The core server transmission unit 37 acquires the service server identifier of the service server 2 that performs the service identified by the service identifier included in the stop command. It is assumed that the service server identifier of the service server 2 performing the service is stored in a management unit (not shown) of the core server 3.

(ステップS506)コアサーバ送信部37は、ステップS505で取得したサービスサーバ識別子で識別されるサービスサーバ2に、サービスの停止命令を送信し、ステップS501に戻る。   (Step S506) The core server transmission unit 37 transmits a service stop command to the service server 2 identified by the service server identifier acquired in step S505, and returns to step S501.

(ステップS507)コアサーバ受信部33は、端末装置1から他の指示やデータ等を受信したか否かを判断する。他の指示やデータ等を受信すればステップS508に行き、受信しなければステップS501に戻る。   (Step S507) The core server reception unit 33 determines whether another instruction, data, or the like has been received from the terminal device 1. If another instruction or data is received, the process goes to step S508, and if not received, the process returns to step S501.

(ステップS508)コアサーバ3は、他の指示やデータに応じた処理を行う。例えば、TV会議サービスに利用されるデータ(動画や音声)等が継続して受信されている場合、コアサーバ受信部33は、当該データを、処理対象のサービスサーバ2に送信し、ステップS501に戻る。   (Step S508) The core server 3 performs processing according to other instructions and data. For example, when data (video or audio) used for the TV conference service is continuously received, the core server reception unit 33 transmits the data to the service server 2 to be processed, and the process proceeds to step S501. Return.

なお、図5のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。   In the flowchart of FIG. 5, the process ends when the power is turned off or the process ends.

次に、ステップS502のサービス要求処理について、図6、図7のフローチャートを用いて説明する。   Next, the service request process of step S502 will be described using the flowcharts of FIGS.

(ステップS601)制約判断部34は、受信されたサービス要求に含まれるサービス識別子が複合サービス識別子であるか否かを判断する。複合サービス識別子であればステップS602に行き、複合サービス識別子でなければステップS610に行く。   (Step S601) The constraint determination unit 34 determines whether or not the service identifier included in the received service request is a composite service identifier. If it is a composite service identifier, go to step S602; otherwise, go to step S610.

(ステップS602)制約判断部34は、サービス要求から複合サービス識別子を取得する。   (Step S602) The constraint determination unit 34 acquires a composite service identifier from the service request.

(ステップS603)制約判断部34は、複合サービス識別子に対応する複合サービス情報を、複合サービス情報格納部32から取得する。また、制約判断部34は、サービス要求に含まれる複合サービス情報を取得しても良い。   (Step S <b> 603) The constraint determination unit 34 acquires composite service information corresponding to the composite service identifier from the composite service information storage unit 32. In addition, the constraint determination unit 34 may acquire composite service information included in the service request.

(ステップS604)制約判断部34は、ステップS603で取得した複合サービス識別子と対になる制約情報を制約満足情報格納部31から取得する。   (Step S604) The constraint determination unit 34 acquires constraint information that is paired with the composite service identifier acquired in Step S603 from the constraint satisfaction information storage unit 31.

(ステップS605)制約判断部34は、ステップS604で制約情報を取得できたか否かを判断する。制約情報を取得できればステップS606に行き、制約情報を取得できなければステップS610に行く。   (Step S605) The constraint determination unit 34 determines whether the constraint information has been acquired in step S604. If the constraint information can be acquired, the process proceeds to step S606. If the constraint information cannot be acquired, the process proceeds to step S610.

(ステップS606)制約判断部34は、ステップS604で取得した制約情報を用いて、制約を満たすか否かを判断する。制約判断部34は、例えば、サービス要求が有するデータを、検査情報で特定される検査手段(例えば、プログラム)に渡して、制約特定情報で特定される制約を満たすか否かを判断する。   (Step S606) The constraint determination unit 34 determines whether the constraint is satisfied using the constraint information acquired in step S604. For example, the constraint determination unit 34 passes the data included in the service request to an inspection unit (for example, a program) specified by the inspection information, and determines whether the constraint specified by the constraint specification information is satisfied.

(ステップS607)制約判断部34は、ステップS606における判断結果が制約を満たさないとの判断の場合はステップS608に行き、満たすとの判断の場合はステップS610に行く。   (Step S607) The constraint determination unit 34 proceeds to step S608 if it is determined that the determination result in step S606 does not satisfy the constraint, and proceeds to step S610 if it is determined that the constraint is satisfied.

(ステップS608)適応処理部35は、複合サービス識別子と対になる適応情報を制約満足情報格納部31から取得する。   (Step S <b> 608) The adaptation processing unit 35 acquires the adaptation information paired with the composite service identifier from the constraint satisfaction information storage unit 31.

(ステップS609)適応処理部35は、ステップS608で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。なお、かかる処理は、適応情報が有するフラグを用いて行うことは好適である。フラグは、適応処理のタイミング、または適応処理の回数(1回または繰り返し)、または適応処理のタイミングと適応処理の回数とを示す情報である。適応処理のタイミングは、例えば、サービスを遂行する前、または後である。サービス識別子で識別されるサービス(処理)を行う前に行われる適応処理を前処理、サービス識別子で識別されるサービス(処理)を行った後に行われる適応処理を後処理という。   (Step S609) The adaptation processing unit 35 uses the adaptation information acquired in step S608 to perform the adaptation process specified by the adaptation information so as to satisfy the constraint. Note that it is preferable to perform such processing using a flag included in the adaptation information. The flag is information indicating the timing of the adaptive processing, the number of times of adaptive processing (once or repeatedly), or the timing of the adaptive processing and the number of times of adaptive processing. The timing of the adaptation process is, for example, before or after performing the service. The adaptive process performed before the service (process) identified by the service identifier is referred to as pre-processing, and the adaptive process performed after the service (process) identified by the service identifier is referred to as post-process.

(ステップS610)制約判断部34は、カウンタiに1を代入する。   (Step S610) The constraint determination unit 34 substitutes 1 for the counter i.

(ステップS611)制約判断部34は、i番目の原子サービス識別子が存在するか否かを判断する。ここで、サービスが複合サービスである場合、制約判断部34は、複合サービス情報に中の定義に従って、i番目の原子サービス識別子が存在するか否かを判断する。また、サービスが原子サービスである場合、制約判断部34は、「i=1」の場合のみ、i番目の原子サービス識別子が存在すると判断する。i番目の原子サービス識別子が存在すればステップS612に行き、存在しなければ上位処理にリターンする。   (Step S611) The constraint determination unit 34 determines whether or not the i-th atomic service identifier exists. Here, when the service is a composite service, the constraint determination unit 34 determines whether or not the i-th atomic service identifier exists according to the definition in the composite service information. When the service is an atomic service, the constraint determination unit 34 determines that the i-th atomic service identifier exists only when “i = 1”. If the i-th atomic service identifier exists, the process goes to step S612, and if it does not exist, the process returns to the upper process.

(ステップS612)制約判断部34は、i番目の原子サービス識別子を、複合サービス情報またはサービス要求から取得する。   (Step S612) The constraint determination unit 34 acquires the i-th atomic service identifier from the composite service information or the service request.

(ステップS613)制約判断部34は、i番目の原子サービス識別子を用いて、制約情報を制約満足情報格納部31から取得する。なお、ここでi番目の原子サービス識別子が抽象サービス識別子である場合、制約判断部34は、当該抽象サービス識別子に対応する1以上の具象サービス識別子を取得し、当該1以上の各具象サービス識別子と対になる制約情報を制約満足情報格納部31から取得する。また、ここで、i番目の原子サービス識別子が抽象サービス識別子である場合、制約のない当該抽象サービス識別子に対応する具象サービス識別子が、一つでも存在する場合、制約情報を取得しない。また、i番目の原子サービス識別子が抽象サービス識別子である場合、制約のない当該抽象サービス識別子に対応する1以上のすべての具象サービス識別子が、対になる制約情報を有する場合のみ、1以上の各具象サービス識別子と対になる制約情報を制約満足情報格納部31から取得する。なお、ここでi番目の原子サービス識別子が抽象サービス識別子である場合、制約判断部34は、当該抽象サービス識別子と対になる制約情報を制約満足情報格納部31から取得しても良い。   (Step S613) The constraint determination unit 34 acquires constraint information from the constraint satisfaction information storage unit 31 using the i-th atomic service identifier. When the i-th atomic service identifier is an abstract service identifier, the constraint determination unit 34 acquires one or more concrete service identifiers corresponding to the abstract service identifier, and each of the one or more concrete service identifiers and Paired constraint information is acquired from the constraint satisfaction information storage unit 31. Here, when the i-th atomic service identifier is an abstract service identifier, when there is at least one concrete service identifier corresponding to the abstract service identifier without restriction, restriction information is not acquired. Further, when the i-th atomic service identifier is an abstract service identifier, each of the one or more only when one or more concrete service identifiers corresponding to the unrestricted abstract service identifier have paired constraint information. The constraint information paired with the concrete service identifier is acquired from the constraint satisfaction information storage unit 31. Here, when the i-th atomic service identifier is an abstract service identifier, the constraint determination unit 34 may acquire the constraint information paired with the abstract service identifier from the constraint satisfaction information storage unit 31.

(ステップS614)制約判断部34は、ステップS613で制約情報を取得したか否かを判断する。ステップS613で制約情報を取得すればステップS615に行き、制約情報を取得しなければステップS620に行く。   (Step S614) The constraint determination unit 34 determines whether constraint information has been acquired in step S613. If the constraint information is acquired in step S613, the process goes to step S615. If the constraint information is not acquired, the process goes to step S620.

(ステップS615)制約判断部34は、ステップS614で取得した1以上の制約情報を用いて、1以上の各制約を満たすか否かを判断する。制約判断部34は、例えば、サービス要求が有するデータを、検査情報で特定される検査手段(例えば、プログラム)に渡して、制約特定情報で特定される制約を満たすか否かを判断する。なお、適応処理のタイミングがサービスの後である場合(後処理の場合)は、ここでは、制約判断部34は、常に、制約を満たさない、と判断しても良い。後処理の場合、処理結果を得た後でなければ、制約を満たすか否かを判断できない場合もあるからである。   (Step S615) The constraint determination unit 34 determines whether one or more constraints are satisfied using the one or more constraint information acquired in step S614. For example, the constraint determination unit 34 passes the data included in the service request to an inspection unit (for example, a program) specified by the inspection information, and determines whether the constraint specified by the constraint specification information is satisfied. If the timing of the adaptive process is after the service (in the case of post-processing), here, the constraint determination unit 34 may determine that the constraint is not always satisfied. This is because in the case of post-processing, it may be impossible to determine whether or not the constraint is satisfied unless the processing result is obtained.

(ステップS616)制約判断部34は、ステップS615における判断結果が制約を満たさないとの判断の場合はステップS617に行き、満たすとの判断の場合はステップS620に行く。なお、ステップS614で1以上の制約情報を取得した場合、制約判断部34は、ステップS615における判断結果が一つでも制約情報が示す制約を満たさないとの判断の場合にステップS617に行き、すべての制約情報が示す制約を満たすとの判断の場合はステップS620に行く。   (Step S616) When it is determined that the determination result at step S615 does not satisfy the constraint, the constraint determining unit 34 proceeds to step S617, and when it is determined that the constraint is satisfied, the constraint determining unit 34 proceeds to step S620. When one or more pieces of constraint information are acquired in step S614, the constraint determination unit 34 goes to step S617 in the case where it is determined that even one determination result in step S615 does not satisfy the constraint indicated by the constraint information. If it is determined that the constraint indicated by the constraint information is satisfied, the process goes to step S620.

(ステップS617)適応処理部35は、i番目の原子サービス識別子を用いて、適応情報を制約満足情報格納部31から取得する。ここで、i番目の原子サービス識別子が抽象サービス識別子である場合、適応処理部35は、当該原子サービス識別子に対応する1以上の各具象サービス識別子と対になる適応情報を制約満足情報格納部31から取得する。   (Step S617) The adaptation processing unit 35 acquires adaptation information from the constraint satisfaction information storage unit 31 using the i-th atomic service identifier. Here, when the i-th atomic service identifier is an abstract service identifier, the adaptation processing unit 35 sets the adaptation information paired with one or more concrete service identifiers corresponding to the atomic service identifier to the constraint satisfaction information storage unit 31. Get from.

(ステップS618)適応処理部35は、ステップS617で取得した適応情報から、適応処理を行うタイミングがサービス遂行の前か否か(前処理か否か)を判断する。前処理であればステップS619に行き、前処理でなければステップS626に行く。   (Step S618) The adaptation processing unit 35 determines from the adaptation information acquired in Step S617 whether or not the timing for performing the adaptation process is before the performance of the service (whether it is a pre-process). If it is pre-processing, it will go to step S619, and if it is not pre-processing, it will go to step S626.

(ステップS619)適応処理部35は、ステップS617で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。なお、制約を満たさない2以上の具象サービス識別子で識別されるサービスが存在する場合、適応処理部35は、制約を満たす一のサービスの具象サービス識別子を決定し、当該一の具象サービス識別子と対になる適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。ここで、制約を満たさない2以上の具象サービス識別子で識別されるサービスが存在する場合、適応処理部35は、制約を満たす一のサービスの具象サービス識別子を、複数の具象サービス識別子の中からランダムに選択しても良いし、何らかのルール(例えば、現在、負荷が小さいサービスサーバのサービスの具象サービス識別子を取得するというルール)に基づいて制約を満たす一のサービスの具象サービス識別子を取得しても良い。   (Step S619) The adaptation processing unit 35 uses the adaptation information acquired in step S617 to perform the adaptation process specified by the adaptation information so as to satisfy the constraint. When there is a service identified by two or more concrete service identifiers that do not satisfy the constraint, the adaptive processing unit 35 determines a concrete service identifier of one service that satisfies the constraint, and matches the one concrete service identifier. The adaptation information specified by the adaptation information is used to satisfy the constraint. Here, when there is a service identified by two or more concrete service identifiers that do not satisfy the constraint, the adaptive processing unit 35 randomly selects a concrete service identifier of one service that satisfies the constraint from among the plurality of concrete service identifiers. Or a concrete service identifier of one service that satisfies the constraints based on some rule (for example, a rule that obtains a concrete service identifier of a service of a service server that currently has a low load). good.

(ステップS620)サービスサーバ決定部36は、i番目の原子サービス識別子で識別されるサービスが提供可能なサービスサーバ2を決定する。このサービスサーバ決定処理について、図8のフローチャートを用いて説明する。   (Step S620) The service server determination unit 36 determines the service server 2 that can provide the service identified by the i-th atomic service identifier. This service server determination process will be described with reference to the flowchart of FIG.

(ステップS621)コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ2にサービス要求を送信する。   (Step S621) The core server transmission unit 37 transmits a service request to the service server 2 determined by the service server determination unit 36.

(ステップS622)コアサーバ受信部33は、サービスサーバ2からサービスの結果を受信したか否かを判断する。受信すればステップS623、受信しなければステップS622に戻る。   (Step S622) The core server reception unit 33 determines whether or not a service result has been received from the service server 2. If received, the process returns to step S623, and if not received, the process returns to step S622.

(ステップS623)適応処理部35は、ステップS617で取得した適応情報から、適応処理を行うタイミングがサービス遂行の後か否か(後処理か否か)を判断する。後処理であればステップS624に行き、後処理でなければステップS625に行く。   (Step S623) The adaptation processing unit 35 determines from the adaptation information acquired in Step S617 whether or not the timing for performing the adaptation process is after service execution (whether it is post-processing). If it is post-processing, it will go to step S624, and if it is not post-processing, it will go to step S625.

(ステップS624)適応処理部35は、ステップS617で取得した適応情報を用いて、当該適応情報で特定される適応処理を行って制約を満たすようにする。   (Step S624) The adaptation processing unit 35 uses the adaptation information acquired in step S617 to perform the adaptation process specified by the adaptation information so as to satisfy the constraint.

(ステップS625)制約判断部34は、カウンタiを1、インクリメントする。ステップS611に戻る。   (Step S625) The constraint determination unit 34 increments the counter i by one. The process returns to step S611.

(ステップS626)適応処理部35は、ステップS617で取得した適応情報から、適応処理を行うタイミングがサービス遂行の後か否か(後処理か否か)を判断する。後処理であればステップS620に行き、後処理でなければステップS627に行く。   (Step S626) From the adaptation information acquired in step S617, the adaptation processing unit 35 determines whether or not the timing for performing the adaptation processing is after service execution (whether it is post-processing). If it is post-processing, it will go to step S620, and if it is not post-processing, it will go to step S627.

(ステップS627)適応処理部35は、ステップS613で取得された制約情報から、制約が外部制約であるか否かを判断する。外部制約であればステップS628に行き、外部制約でなければステップS625に行く。   (Step S627) The adaptation processing unit 35 determines whether or not the constraint is an external constraint from the constraint information acquired in Step S613. If it is an external constraint, go to step S628, and if it is not an external constraint, go to step S625.

(ステップS628)適応処理部35は、適応情報をバッファに一時格納する。なお、バッファに一時格納された適応情報は、ステップS620のサービスサーバ決定処理で利用される。ステップS620に行く。   (Step S628) The adaptation processing unit 35 temporarily stores adaptation information in a buffer. The adaptation information temporarily stored in the buffer is used in the service server determination process in step S620. Go to step S620.

次に、ステップS620のサービスサーバ決定処理について、図8のフローチャートを用いて説明する。   Next, the service server determination process in step S620 will be described with reference to the flowchart in FIG.

(ステップS801)サービスサーバ決定部36は、バッファに格納されている適応情報が存在するか否かを判断する。適応情報が存在すればステップS802に行き、適応情報が存在しなければステップS804に行く。   (Step S801) The service server determination unit 36 determines whether there is adaptation information stored in the buffer. If there is adaptation information, the process goes to step S802, and if there is no adaptation information, the process goes to step S804.

(ステップS802)サービスサーバ決定部36は、バッファに格納されている適応情報が有するサービス識別子が、現在、着目されているサービス識別子(通常、原子サービス識別子)に関連するか否かを判断する。サービスサーバ決定部36は、適応情報とi番目の原子サービス識別子とを用いて、関連するか否かを判断する。関連すればステップS803に行き、関連しなければステップS804に行く。なお、関連するとは、適応情報が有するサービス識別子と着目されているサービス識別子とが一致する場合、着目されているサービス識別子が抽象サービス識別子で、適応情報が有するサービス識別子がその具象サービス識別子である場合などである。   (Step S802) The service server determination unit 36 determines whether or not the service identifier included in the adaptation information stored in the buffer is related to the service identifier currently focused (usually the atomic service identifier). The service server determination unit 36 determines whether or not they are related using the adaptation information and the i-th atomic service identifier. If related, go to step S803, and if not related, go to step S804. Note that, when the service identifier of the adaptation information matches the service identifier of interest, the related service identifier is the abstract service identifier, and the service identifier of the adaptation information is the concrete service identifier. Such as the case.

(ステップS803)サービス識別子取得手段362は、適応情報から、制約を満たす具象サービス識別子を取得する。ステップS805に行く。   (Step S803) The service identifier acquisition unit 362 acquires a concrete service identifier satisfying the restriction from the adaptation information. Go to step S805.

(ステップS804)サービス識別子取得手段362は、i番目の原子サービス識別子から、具象サービス識別子を取得する。サービス識別子取得手段362は、例えば、サービスサーバ管理情報格納手段361から、i番目の原子サービス識別子(ここでは、通常、抽象サービス識別子)と対になる具象サービス識別子を取得する。   (Step S804) The service identifier acquisition unit 362 acquires a concrete service identifier from the i-th atomic service identifier. For example, the service identifier acquisition unit 362 acquires a concrete service identifier paired with the i-th atomic service identifier (usually an abstract service identifier here) from the service server management information storage unit 361.

(ステップS805)サービスサーバ識別子取得手段363は、サービス識別子取得手段362が取得した具象サービス識別子と対になるサービスサーバ識別子を、サービスサーバ管理情報格納手段361から取得する。上位処理にリターンする。   (Step S805) The service server identifier acquisition unit 363 acquires from the service server management information storage unit 361 a service server identifier that is paired with the concrete service identifier acquired by the service identifier acquisition unit 362. Return to upper process.

以下、本実施の形態における情報システムの具体的な動作について説明する。情報システムの概念図は図1である。   Hereinafter, a specific operation of the information system in the present embodiment will be described. A conceptual diagram of the information system is shown in FIG.

今、コアサーバ3の制約満足情報格納部31は、図9に示す制約満足情報管理表を保持している。制約満足情報管理表は、「ID」「サービス識別子」「制約情報」「適応情報」を有するレコードを1以上格納している。「ID」はレコードを識別する情報である。「制約情報」は、「制約特定情報」「検査情報」を有する。また、「適応情報」は「適応処理情報」「フラグ」を有する。「サービス識別子」の属性値は、具象サービス識別子または抽象サービス識別子がとり得る。ここでのサービス識別子は、サービス名である。「制約特定情報」は、制約の内容を特定する情報である。   Now, the constraint satisfaction information storage unit 31 of the core server 3 holds the constraint satisfaction information management table shown in FIG. The constraint satisfaction information management table stores one or more records having “ID”, “service identifier”, “constraint information”, and “adaptive information”. “ID” is information for identifying a record. The “constraint information” includes “constraint specifying information” and “inspection information”. “Adaptive information” includes “adaptive processing information” and “flag”. The attribute value of “service identifier” can be a concrete service identifier or an abstract service identifier. The service identifier here is a service name. The “constraint specifying information” is information for specifying the content of the constraint.

図9の「ID=1」の制約特定情報「文字列長<=400文字」は、文字列の長さが400文字以内のデータのみを処理できることを示している。そして、「ID=1」の検査情報「length(文字列)」は文字列の長さを取得する関数(プログラム)「length(文字列)」により、制約を満たすか否かを判断することを示している。さらに、「ID=1」の適応処理情報「divide(文字列,400)」は、文字列を400字に分割する関数(プログラム)「divide(文字列,400)」を実行する適応処理により、制約を満たすようにすることを示している。さらに、ここでのフラグは、適応処理を行うタイミングおよび繰り返し回数を示している。なお、フラグ「1」は、適応処理を行うタイミングは適応処理の前(前処理)であり、かつ処理回数は1回であることを示す。フラグ「2」は、適応処理を行うタイミングは適応処理の後(後処理)であり、かつ処理回数は1回であることを示す。フラグ「3」は、適応処理を行うタイミングは適応処理の前(前処理)であり、かつ処理回数はn回(nは1以上で、制約を満たすまで)であることを示す。さらに、フラグ「4」は、適応処理を行うタイミングは適応処理の後(後処理)であり、かつ処理回数はn回(nは1以上で、制約を満たすまで)であることを示す。なお、フラグは、適応処理を行うタイミングのみ、または繰り返し回数のみを示す情報であっても良い。また、「ID=1」の制約情報は、一のサービス内における制約であるので、内部制約情報である。   The constraint identification information “character string length <= 400 characters” of “ID = 1” in FIG. 9 indicates that only data having a character string length of 400 characters or less can be processed. Then, the inspection information “length (character string)” of “ID = 1” is determined by the function (program) “length (character string)” for obtaining the length of the character string to determine whether or not the constraint is satisfied. Show. Furthermore, the adaptive processing information “divide (character string, 400)” of “ID = 1” is obtained by adaptive processing that executes a function (program) “divide (character string, 400)” that divides the character string into 400 characters. It indicates that the constraint is satisfied. Further, the flag here indicates the timing for performing adaptive processing and the number of repetitions. The flag “1” indicates that the timing for performing the adaptive processing is before the adaptive processing (pre-processing), and the number of processing is one. The flag “2” indicates that the timing for performing the adaptation process is after the adaptation process (post-processing), and the number of processes is one. The flag “3” indicates that the timing of performing the adaptive processing is before the adaptive processing (preprocessing), and the number of processing is n times (n is 1 or more, until the constraint is satisfied). Further, the flag “4” indicates that the timing for performing the adaptive processing is after the adaptive processing (post processing), and the number of processing is n times (n is 1 or more, until the constraint is satisfied). The flag may be information indicating only the timing of performing the adaptive process or only the number of repetitions. Further, the constraint information of “ID = 1” is internal constraint information because it is a constraint within one service.

また、図9において、「ID=2」の制約特定情報「日英翻訳2のみ利用可」は、形態素解析1を用いた際に、日英翻訳サービスを利用する場合には、日英翻訳2のみが利用できることを示している。そして、「ID=2」の適応処理情報は、形態素解析1が選択された場合、日英翻訳サービスとして「日英翻訳2」が選択されることを示している。なお、図9において、「−」は空を意味する。また、「ID=2」の制約情報は、2以上のサービス間における制約であるので、外部制約情報である。   Further, in FIG. 9, the constraint identification information “ID = 2” can be used only for Japanese-English translation 2 is used when using the Japanese-English translation service when using morphological analysis 1. Only shows that it is available. The adaptive processing information “ID = 2” indicates that “Japanese-English translation 2” is selected as the Japanese-English translation service when morphological analysis 1 is selected. In FIG. 9, “-” means empty. The constraint information with “ID = 2” is external constraint information because it is a constraint between two or more services.

また、「ID=3」の制約特定情報「フォーマット==フォーマット1」は、処理できるフォーマットが「フォーマット1」であることを示している。「ID=3」の検査情報は「checkForm(input)」は、入力データのフォーマットをチェックする関数「checkForm(input)」により、制約に合致するか否かを判断することを示す。また、「ID=3」の適応処理情報「changeForm(input)」は、入力データをフォーマット1に変換し、制約を満たすようにする処理を示す。さらに、「ID=3」のフラグ「1」は、適応処理を行うタイミングは適応処理の前(前処理)であり、かつ処理回数は1回であることを示す。また、「ID=3」の制約情報は、内部制約情報である。   Further, the constraint identification information “format == format 1” of “ID = 3” indicates that the format that can be processed is “format 1”. The inspection information “ID = 3” indicates that “checkForm (input)” determines whether or not the constraint is met by a function “checkForm (input)” that checks the format of the input data. Also, the adaptive process information “changeForm (input)” of “ID = 3” indicates a process of converting the input data into the format 1 to satisfy the constraint. Further, the flag “1” with “ID = 3” indicates that the timing for performing the adaptive processing is before the adaptive processing (preprocessing), and the number of processing is one. The constraint information with “ID = 3” is internal constraint information.

また、「ID=4」のサービス識別子は抽象サービス識別子「音声認識サービス」である。また、「ID=4」の制約特定情報「認識結果の文字コード==Shift−JIS」は、音声認識サービスのサービス提供後にデータのコードを「Shift−JIS」にしなければならないことを示す。そして、「ID=4」の検査情報「checkCode(output)」は、サービス提供後の出力データのコードをチェックする関数「checkCode(output)」により、制約に合致するか否かを判断することを示す。また、「ID=4」の適応処理情報「changeCode(output)」は、出力データを「Shift−JIS」に変換し、制約を満たすようにすることを示す。さらに、「ID=4」のフラグ「2」は、適応処理を行うタイミングは適応処理の後(後処理)であり、かつ処理回数は1回であることを示す。   Further, the service identifier of “ID = 4” is the abstract service identifier “voice recognition service”. Further, the constraint identification information “ID = 4” character code of the recognition result == Shift-JIS indicates that the data code should be “Shift-JIS” after providing the voice recognition service. Then, the check information “checkCode (output)” of “ID = 4” is determined by the function “checkCode (output)” that checks the code of the output data after the service is provided to determine whether or not it matches the constraint. Show. Further, the adaptive processing information “changeCode (output)” with “ID = 4” indicates that the output data is converted to “Shift-JIS” so as to satisfy the constraint. Further, the flag “2” with “ID = 4” indicates that the timing for performing the adaptive processing is after the adaptive processing (post processing) and the number of processing is one.

また、「ID=5」のサービス識別子は抽象サービス識別子「国際電話翻訳サービス」である。また、「ID=5」の制約特定情報「データ量<=1Kbyte」は、本サービスの対象のデータ量が1Kbyte以下であることを示す。また、「ID=5」の検査情報は「length(文字列)」は文字列の長さを取得する関数(プログラム)「length(文字列)」により、制約を満たすか否かを判断することを示している。また、「ID=5」の適応処理情報「divide(data,1K)」は、データを1Kに分割する関数(プログラム)「divide(data,1K)」を実行する適応処理により、制約を満たすようにすることを示している。さらに、フラグ「3」は、適応処理を行うタイミングは適応処理の前(前処理)であり、かつ処理回数はn回(nは1以上で、制約を満たすまで)であることを示す。   The service identifier with “ID = 5” is the abstract service identifier “international telephone translation service”. Further, the constraint identification information “data amount <= 1 Kbyte” of “ID = 5” indicates that the target data amount of this service is 1 Kbyte or less. In addition, the inspection information of “ID = 5” is “length (character string)” is a function (program) that acquires the length of the character string, and “length (character string)” is used to determine whether or not the constraint is satisfied. Is shown. Further, the adaptive processing information “divide (data, 1K)” of “ID = 5” satisfies the constraint by the adaptive processing that executes a function (program) “divide (data, 1K)” that divides data into 1K. Shows that Further, the flag “3” indicates that the timing for performing the adaptive processing is before the adaptive processing (preprocessing), and the number of processing is n times (n is 1 or more, until the constraint is satisfied).

さらに、「ID=6」のサービス識別子は具象サービス識別子「形態素解析2」である。また、「ID=6」の制約特定情報「日英翻訳2以外の日英翻訳サービスを利用可」は、形態素解析2を利用する時は、日英翻訳2は利用できないことを示している。また、「ID=6」の適応処理情報は、形態素解析2が選択された場合、日英翻訳サービスとして、日英翻訳2は利用できず、他の日英翻訳サービスを選択することを示している。また、「ID=6」の制約情報は、外部制約情報である。   Furthermore, the service identifier of “ID = 6” is the concrete service identifier “morpheme analysis 2”. In addition, the constraint identification information “ID = 6” “Available for Japanese-English translation services other than Japanese-English translation 2” indicates that the Japanese-English translation 2 cannot be used when the morphological analysis 2 is used. Also, the adaptive processing information of “ID = 6” indicates that when morphological analysis 2 is selected, Japanese-English translation 2 cannot be used as a Japanese-English translation service, and another Japanese-English translation service is selected. Yes. The constraint information with “ID = 6” is external constraint information.

また、図10は、複合サービス情報格納部32に格納されている複合サービス情報管理表である。複合サービス情報管理表は、「ID」「複合サービス情報」を有するレコードを1以上格納している。「複合サービス情報」は、「複合サービス識別子」「原子サービス識別子」を有する。図10の「ID=1」は、複合サービス「科学技術論文日英機械翻訳」は、「形態素解析サービス」を行った後、専門用語に対して「専門用語辞書サービス」を行うことを示す。そして、最後に、日英翻訳サービスを行うことを示す。図10の「ID=1」の複合サービス情報は、いわゆるプログラムに該当する。   FIG. 10 is a composite service information management table stored in the composite service information storage unit 32. The composite service information management table stores one or more records having “ID” and “composite service information”. “Composite service information” includes “composite service identifier” and “atomic service identifier”. “ID = 1” in FIG. 10 indicates that the composite service “science and technology paper Japanese-English machine translation” performs “technical term dictionary service” for technical terms after performing “morphological analysis service”. Finally, we show that we will provide a Japanese-English translation service. The composite service information of “ID = 1” in FIG. 10 corresponds to a so-called program.

また、図10の「ID=2」は、複合サービス「国際電話翻訳サービス」は、原子サービス「音声認識サービス」「翻訳サービス」「音声合成サービス」を順に行うことを示している。   Further, “ID = 2” in FIG. 10 indicates that the composite service “international telephone translation service” performs the atomic services “speech recognition service”, “translation service”, and “speech synthesis service” in order.

さらに、図10は、サービスサーバ管理情報格納手段361に格納されているサービスサーバ管理情報管理表である。サービスサーバ管理情報管理表は、「ID」「抽象サービス識別子」「具象サービス識別子」「サービスサーバ識別子」「フラグ」を有する。ここで、サービスサーバ識別子は、具象サービス識別子で識別されるサービスが提供できるサービスサーバ2の識別子である。フラグは、抽象サービス識別子に対応するすべての具象サービス識別子で識別されるサービスを実行するのか、一の具象サービス識別子で識別されるサービスを選択して実行するのかを示す情報である。フラグ「0」は、抽象サービス識別子に対応する一の具象サービス識別子で識別されるサービスを選択して実行することを示す。フラグ「1」は、抽象サービス識別子に対応するすべての具象サービス識別子で識別されるサービスを実行することを示す。   FIG. 10 is a service server management information management table stored in the service server management information storage unit 361. The service server management information management table includes “ID”, “abstract service identifier”, “concrete service identifier”, “service server identifier”, and “flag”. Here, the service server identifier is an identifier of the service server 2 that can provide the service identified by the concrete service identifier. The flag is information indicating whether to execute a service identified by all the concrete service identifiers corresponding to the abstract service identifier or to select and execute a service identified by one concrete service identifier. The flag “0” indicates that a service identified by one concrete service identifier corresponding to the abstract service identifier is selected and executed. The flag “1” indicates that a service identified by all concrete service identifiers corresponding to the abstract service identifier is executed.

さらに、各サービスサーバ2の処理手段格納部21には、サービスを遂行するための処理手段(例えば、実行可能なプログラム)が格納されている。   Furthermore, the processing means storage unit 21 of each service server 2 stores processing means (for example, an executable program) for performing the service.

かかる状況において、以下の3つの具体例について説明する。
(具体例1)
In this situation, the following three specific examples will be described.
(Specific example 1)

具象サービス識別子であり、原子サービス識別子である「日英翻訳1」を有するサービス要求を、ユーザが入力した、とする。そして、このサービス要求には、翻訳対象の文章であり、ユーザが入力した文章である「私の名前は、山田太郎です。私は、現在・・・・・・・・」が含まれている、とする。なお、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」の文字列長は、760文字である、とする。   It is assumed that a user inputs a service request having a concrete service identifier and “Japanese-English translation 1” which is an atomic service identifier. This service request includes a sentence to be translated and a sentence entered by the user, “My name is Taro Yamada. I am currently ...” , And. It is assumed that the character string length of the sentence “My name is Taro Yamada. I am currently ...” is 760 characters.

次に、端末装置1の端末受付部11は、サービス識別子「日英翻訳1」および上記文章を含むサービス要求を受け付ける。そして、端末送信部12は、かかるサービス要求をコアサーバ3に送信する。   Next, the terminal reception unit 11 of the terminal device 1 receives a service request including the service identifier “Japanese-English translation 1” and the above sentence. Then, the terminal transmission unit 12 transmits the service request to the core server 3.

次に、コアサーバ3のコアサーバ受信部33は、端末装置1からサービス要求を受信する。そして、制約判断部34は、サービス要求からサービス識別子「日英翻訳1」を取得する。   Next, the core server receiving unit 33 of the core server 3 receives a service request from the terminal device 1. Then, the constraint determination unit 34 acquires the service identifier “Japanese-English translation 1” from the service request.

次に、制約判断部34は、サービス識別子「日英翻訳1」と対になる制約情報「文字列長<=400文字」「length(文字列)」を制約満足情報格納部31から取得する。   Next, the constraint determination unit 34 acquires the constraint information “character string length <= 400 characters” and “length (character string)” paired with the service identifier “Japanese-English translation 1” from the constraint satisfaction information storage unit 31.

そして、制約判断部34は、取得した制約情報を用いて、制約を満たすか否かを判断する。つまり、制約判断部34は、「length("私の名前は、山田太郎です。私は、現在・・・・・・・・")」を実行し、「文字列長=760」を得る。そして、制約判断部34は、「文字列長=760」は制約特定情報「文字列長<=400文字」を満たさない、と判断する。   Then, the constraint determination unit 34 determines whether the constraint is satisfied using the acquired constraint information. That is, the constraint determination unit 34 executes “length (“ My name is Taro Yamada. I am currently ... ”) and obtains“ character string length = 760 ”. Then, the constraint determination unit 34 determines that “character string length = 760” does not satisfy the constraint specifying information “character string length <= 400 characters”.

次に、適応処理部35は、サービス識別子「日英翻訳1」と対になる適応処理情報「divide(文字列,400)」、およびフラグ「1」を図9の制約満足情報管理表から取得する。   Next, the adaptive processing unit 35 acquires the adaptive processing information “divide (character string, 400)” and the flag “1” that are paired with the service identifier “Japanese-English translation 1” from the constraint satisfaction information management table of FIG. To do.

次に、適応処理部35は、取得したフラグ「1」から、適応処理は前処理である、と判断する。そして、適応処理部35は、取得した適応処理情報「divide(文字列,400)」を用いて、当該適応処理「divide("私の名前は、山田太郎です。私は、現在・・・・・・・・",400)」を行って制約を満たすようにする。つまり、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」を、386文字と、残る374文字に分割する。なお、divide関数は、文の区切りで、文章を分割する関数である、とする。以上により、「日英翻訳1」の制約を満たすに至った。   Next, the adaptation processing unit 35 determines from the acquired flag “1” that the adaptation processing is pre-processing. Then, the adaptive processing unit 35 uses the acquired adaptive processing information “divide (character string, 400)” and uses the adaptive processing “divide (“ My name is Taro Yamada. I am currently ... ... “, 400)” to satisfy the constraints. In other words, the sentence "My name is Taro Yamada. I am now ..." is divided into 386 characters and the remaining 374 characters. It is assumed that the divide function is a function that divides a sentence at sentence breaks. As a result, the constraints of “Japanese to English translation 1” have been satisfied.

そして、次に、サービスサーバ決定部36は、サービス識別子「日英翻訳1」で識別されるサービスが提供可能なサービスサーバの識別子「サービスサーバE」を、図10のサービスサーバ管理情報管理表から取得する。   Next, the service server determination unit 36 obtains the service server identifier “service server E” that can provide the service identified by the service identifier “Japanese-English translation 1” from the service server management information management table of FIG. get.

次に、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ「サービスサーバE」にサービス要求「日英翻訳1」を送信する。ここで、サービス要求は、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」のうちの最初の386文字からなる1以上の文を有する。また、次に、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ「サービスサーバE」に、387文字目から760文字目までで構成される1以上の文を含むサービス要求「日英翻訳1」を送信する。   Next, the core server transmission unit 37 transmits the service request “Japanese-English translation 1” to the service server “service server E” determined by the service server determination unit 36. Here, the service request has one or more sentences consisting of the first 386 characters of the sentence "My name is Taro Yamada. I am now ...". Next, the core server transmission unit 37 adds the service request “service server E” determined by the service server determination unit 36 to the service request “service server E” including one or more sentences including the 387th to 760th characters. Send Japanese-English translation 1 ”.

次に、サービスサーバEのサービスサーバ受信部22は、コアサーバ3から1つ目のサービス要求「日英翻訳1」を受信する。そして、サービスサーバEのサービス部23は、受信されたサービス要求に含まれるサービス識別子「日英翻訳1」を取得する。次に、サービス部23は、取得したサービス識別子「日英翻訳1」に対応する処理手段(通常、プログラム)を処理手段格納部21から読み出し、当該読み出した処理手段に、文章「私の名前は、山田太郎です。私は、現在・・・・・・・・」のうちの最初の386文字からなる1以上の文を渡し、当該処理手段を実行する。そして、サービス部23は、上記文の翻訳結果である「My name is Taro Yamada. I ・・・」を得る。そして、サービスサーバ送信部24は、サービス部23のサービスの結果「My name is Taro Yamada. I ・・・」を取得し、コアサーバ3に送信する。   Next, the service server receiving unit 22 of the service server E receives the first service request “Japanese-English translation 1” from the core server 3. Then, the service unit 23 of the service server E acquires the service identifier “Japanese-English translation 1” included in the received service request. Next, the service unit 23 reads the processing means (usually a program) corresponding to the acquired service identifier “Japanese-English translation 1” from the processing means storage unit 21, and reads the sentence “My name is I am Taro Yamada. I pass one or more sentences consisting of the first 386 characters of "Currently ..." and execute the processing means. Then, the service unit 23 obtains “My name is Taro Yamada. I...” That is a translation result of the above sentence. Then, the service server transmission unit 24 acquires the result “My name is Taro Yamada. I...” Of the service of the service unit 23 and transmits it to the core server 3.

また、サービスサーバEのサービスサーバ受信部22は、コアサーバ3から2つ目のサービス要求「日英翻訳1」を受信する。そして、サービスサーバEのサービス部23は、受信されたサービス要求に含まれるサービス識別子「日英翻訳1」を取得する。次に、サービス部23は、取得したサービス識別子「日英翻訳1」に対応する処理手段(通常、プログラム)を処理手段格納部21から読み出し、当該読み出した処理手段に、上記文章中の387文字目から760文字目までで構成される1以上の文を渡し、当該処理手段を実行する。そして、サービス部23は、翻訳結果を得る。そして、サービスサーバ送信部24は、その翻訳結果を取得し、コアサーバ3に送信する。   The service server receiving unit 22 of the service server E receives the second service request “Japanese-English translation 1” from the core server 3. Then, the service unit 23 of the service server E acquires the service identifier “Japanese-English translation 1” included in the received service request. Next, the service unit 23 reads the processing means (usually a program) corresponding to the acquired service identifier “Japanese-English translation 1” from the processing means storage unit 21, and sends the 387 characters in the sentence to the read processing means. One or more sentences composed of the first to 760th characters are passed and the processing means is executed. Then, the service unit 23 obtains a translation result. Then, the service server transmission unit 24 acquires the translation result and transmits it to the core server 3.

次に、コアサーバ受信部33は、サービスサーバ2からサービスの結果「My name is Taro Yamada. I ・・・」を受信する。また、コアサーバ受信部33は、次の翻訳結果も受信する。以上により、日本語文760文字の長さの文の翻訳結果(英文)が得られた。   Next, the core server receiving unit 33 receives the service result “My name is Taro Yamada. I...” From the service server 2. The core server reception unit 33 also receives the next translation result. As a result, a translation result (English) of a sentence having a length of 760 Japanese sentences was obtained.

次に、コアサーバ送信部37は、サービスサーバ2で行われた「日英翻訳1」のサービス要求に対する結果を、サービス要求を送信してきた端末装置1に送信する。   Next, the core server transmission unit 37 transmits the result of the “Japanese-English translation 1” service request made by the service server 2 to the terminal device 1 that has transmitted the service request.

次に、端末装置1の端末受信部13は、サービスの結果を受信する。そして、端末出力部14は、受信されたサービスの結果である、日本語文760文字の長さの文の翻訳結果(英文)を出力する。
(具体例2)
Next, the terminal receiving unit 13 of the terminal device 1 receives the service result. Then, the terminal output unit 14 outputs a translation result (English) of a sentence having a length of 760 characters, which is a result of the received service.
(Specific example 2)

抽象サービス識別子であり、原子サービス識別子である「音声認識サービス」を有するサービス要求を、ユーザが入力した、とする。なお、かかるサービス要求には、ユーザが入力した音声データが含まれている、とする。   It is assumed that the user has input a service request having “voice recognition service” which is an abstract service identifier and an atomic service identifier. It is assumed that the service request includes voice data input by the user.

すると、端末装置1の端末受付部11は、「音声認識サービス」と音声データを有するサービス要求を受け付ける。そして、端末送信部12は、受け付けたサービス要求をコアサーバ3に送信する。   Then, the terminal reception unit 11 of the terminal device 1 receives a service request having “voice recognition service” and voice data. Then, the terminal transmission unit 12 transmits the accepted service request to the core server 3.

次に、コアサーバ受信部33は、端末装置1からかかるサービス要求を受信する。   Next, the core server reception unit 33 receives the service request from the terminal device 1.

次に、制約判断部34は、サービス要求が有するサービス識別子「音声認識サービス」を取得する。そして、制約判断部34は、サービス識別子「音声認識サービス」と対になる制約特定情報「認識結果の文字コード==Shift−JIS」、検査情報「checkCode(output)」を制約満足情報管理表(図9)から取得する。また、制約判断部34は、抽象サービス識別子「音声認識サービス」に対応する具象サービス識別子「多言語音声認識1」を、図10のサービスサーバ管理情報管理表から取得する。そして、制約判断部34は、具象サービス識別子「多言語音声認識1」と対になる制約情報を取得しようするが、取得できない。   Next, the constraint determination unit 34 acquires a service identifier “voice recognition service” included in the service request. Then, the constraint determination unit 34 stores the constraint identification information “recognition result character code == Shift-JIS” and the inspection information “checkCode (output)” paired with the service identifier “voice recognition service” and the constraint satisfaction information management table ( Obtained from FIG. Further, the constraint determination unit 34 acquires the concrete service identifier “multilingual speech recognition 1” corresponding to the abstract service identifier “speech recognition service” from the service server management information management table of FIG. Then, the constraint determination unit 34 tries to acquire constraint information paired with the concrete service identifier “multilingual speech recognition 1”, but cannot acquire the constraint information.

次に、制約判断部34は、取得した制約情報(「認識結果の文字コード==Shift−JIS」等)を用いて、制約を満たすか否かを判断する。なお、ここで、サービス識別子「音声認識サービス」に対応するフラグ「2」は、適応処理を行うタイミングは適応処理の後(後処理)であるので、ここでは、制約を満たさない、と判断する、とする。   Next, the constraint determination unit 34 determines whether the constraint is satisfied using the acquired constraint information (such as “character code of recognition result == Shift-JIS”). Here, the flag “2” corresponding to the service identifier “speech recognition service” determines that the constraint processing is not satisfied here because the timing for performing the adaptation processing is after the adaptation processing (post-processing). , And.

次に、適応処理部35は、サービス識別子「音声認識サービス」と対になる適応処理情報「changeCode(output)」、およびフラグ「2」を制約満足情報管理表から取得する。   Next, the adaptation processing unit 35 acquires the adaptation process information “changeCode (output)” and the flag “2” that are paired with the service identifier “voice recognition service” from the constraint satisfaction information management table.

次に、適応処理部35は、フラグ「2」から適応処理を行うタイミングがサービスの後である、と判断する。   Next, the adaptation processing unit 35 determines from the flag “2” that the timing for performing the adaptation process is after the service.

次に、サービスサーバ決定部36は、抽象サービス識別子「音声認識サービス」に対応する具象サービス識別子「多言語音声認識1」と対になるサービスサーバ識別子「サービスサーバF」を、図10のサービスサーバ管理情報管理表から取得する。   Next, the service server determination unit 36 sets the service server identifier “service server F” paired with the concrete service identifier “multilingual speech recognition 1” corresponding to the abstract service identifier “voice recognition service” to the service server in FIG. Acquired from the management information management table.

次に、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバFにサービス識別子「多言語音声認識1」と音声データとを有するサービス要求を送信する。   Next, the core server transmission unit 37 transmits a service request having the service identifier “multilingual voice recognition 1” and voice data to the service server F determined by the service server determination unit 36.

次に、サービスサーバFのサービスサーバ受信部22は、コアサーバ3から上記のサービス要求を受信する。   Next, the service server receiving unit 22 of the service server F receives the service request from the core server 3.

そして、サービス部23は、多言語音声認識1に対して、サービス要求が有する音声データを与えて、当該多言語音声認識1を動作させ、音声認識処理を行う。そして、サービス部23は、音声データを音声認識処理した結果である文字列を得る。次に、サービスサーバ送信部24は、取得したサービスの結果(文字列)を、コアサーバ3に送信する。   Then, the service unit 23 gives voice data included in the service request to the multilingual voice recognition 1, operates the multilingual voice recognition 1, and performs voice recognition processing. Then, the service unit 23 obtains a character string that is a result of performing voice recognition processing on the voice data. Next, the service server transmission unit 24 transmits the acquired service result (character string) to the core server 3.

次に、コアサーバ受信部33は、サービスサーバ2からサービスの結果(文字列)を受信する。   Next, the core server reception unit 33 receives a service result (character string) from the service server 2.

次に、適応処理部35は取得した適応情報に含まれるフラグ「2」から、適応処理を行うタイミングがサービスの後であることを検知する。   Next, the adaptation processing unit 35 detects from the flag “2” included in the acquired adaptation information that the timing for performing the adaptation processing is after the service.

そして、適応処理部35は、取得した適応処理情報「changeCode(output)」を用いて、当該適応処理情報「changeCode(受信した文字列)」を実行し、「Shift−JIS」のコードになった文字列を得る。   Then, the adaptive processing unit 35 executes the adaptive processing information “changeCode (received character string)” using the acquired adaptive processing information “changeCode (output)”, resulting in a code of “Shift-JIS”. Get a string.

次に、コアサーバ送信部37は、「Shift−JIS」のコードになった文字列を、サービス要求を送信してきた端末装置1に送信する。   Next, the core server transmission unit 37 transmits the character string having the code of “Shift-JIS” to the terminal device 1 that has transmitted the service request.

次に、端末装置1の端末受信部13は、サービスの結果である文字列を受信する。そして、端末出力部14は、受信されたサービスの結果である文字列を出力する。
(具体例3)
Next, the terminal receiving unit 13 of the terminal device 1 receives a character string that is a result of the service. And the terminal output part 14 outputs the character string which is the result of the received service.
(Specific example 3)

複合サービス識別子「科学技術論文日英機械翻訳」および日本語の論文データ(文章)を有するサービス要求を、ユーザが入力した、とする。   It is assumed that the user inputs a service request having the composite service identifier “science and technology paper Japanese-English machine translation” and Japanese paper data (text).

次に、端末装置1の端末受付部11は、ユーザから上記のサービス要求を受け付ける。そして、端末送信部12は、受け付けたサービス要求をコアサーバ3に送信する。   Next, the terminal reception part 11 of the terminal device 1 receives said service request from a user. Then, the terminal transmission unit 12 transmits the accepted service request to the core server 3.

次に、コアサーバ3のコアサーバ受信部33は、端末装置1からサービス要求を受信する。   Next, the core server receiving unit 33 of the core server 3 receives a service request from the terminal device 1.

そして、制約判断部34は、受信されたサービス要求に含まれるサービス識別子「科学技術論文日英機械翻訳」が、図10の複合サービス情報管理表から、複合サービス識別子であると判断する。   Then, the constraint determination unit 34 determines that the service identifier “science and technology paper Japanese-English machine translation” included in the received service request is a composite service identifier from the composite service information management table of FIG.

次に、制約判断部34は、複合サービス識別子「科学技術論文日英機械翻訳」に対応する複合サービスの内容を特定する情報「形態素解析サービス; if(用語が専門用語){専門用語辞書サービス;} 日英翻訳サービス;」を、複合サービス情報管理表から取得する。   Next, the constraint determination unit 34 specifies information of the composite service corresponding to the composite service identifier “science and technology paper Japanese-English machine translation” “morpheme analysis service; if (term is technical term) {technical term dictionary service; } Japanese-English translation service; ”is acquired from the composite service information management table.

次に、制約判断部34は、複合サービス識別子「科学技術論文日英機械翻訳」と対になる制約情報を制約満足情報格納部31から取得しようとするが、取得できなかった、とする。   Next, it is assumed that the constraint determination unit 34 tries to acquire the constraint information paired with the composite service identifier “science and technology paper Japanese-English machine translation” from the constraint satisfaction information storage unit 31 but cannot acquire the constraint information.

次に、制約判断部34は、上記の複合サービス情報から、1番目の原子サービス識別子「形態素解析サービス」を取得する。   Next, the constraint determination unit 34 obtains the first atomic service identifier “morpheme analysis service” from the composite service information.

次に、制約判断部34は、1番目の原子サービス識別子「形態素解析サービス」が抽象サービス識別子であるので、抽象サービス識別子に対応する具象サービス識別子「形態素解析1」を取得した、とする。なお、ここでは、制約判断部34は、抽象サービス識別子「形態素解析サービス」に対する具象サービス識別子は複数存在するが、制約判断部34は、ランダムに一の具象サービス識別子「形態素解析1」を、図10のサービスサーバ管理情報管理表から選択した、とする。   Next, it is assumed that the constraint determining unit 34 acquires the concrete service identifier “morpheme analysis 1” corresponding to the abstract service identifier because the first atomic service identifier “morpheme analysis service” is an abstract service identifier. Here, the constraint determination unit 34 has a plurality of concrete service identifiers for the abstract service identifier “morpheme analysis service”, but the constraint determination unit 34 randomly selects one concrete service identifier “morpheme analysis 1”. It is assumed that ten service server management information management tables are selected.

次に、制約判断部34は、サービス識別子「形態素解析1」と対になる制約特定情報「日英翻訳2のみ利用可」を制約満足情報管理表(図9)から取得する。   Next, the constraint determination unit 34 acquires the constraint identification information “available only for Japanese-English translation 2” paired with the service identifier “morpheme analysis 1” from the constraint satisfaction information management table (FIG. 9).

次に、制約判断部34は、取得した制約情報「日英翻訳2のみ利用可」を用いて、制約を満たすか否かを判断しようとするが、この制約情報は外部制約情報であるので、ここでは判断できない。   Next, the constraint determination unit 34 tries to determine whether or not the constraint is satisfied by using the acquired constraint information “Only English-Japanese translation 2 is available”, but this constraint information is external constraint information. It cannot be judged here.

そして、次に、適応処理部35は、サービス識別子「形態素解析1」と対になる適応情報「if(形態素解析1を選択){日英翻訳サービス=日英翻訳2;}」を制約満足情報管理表(図9)から取得する。   Then, the adaptation processing unit 35 sets the adaptation information “if (select morpheme analysis 1) {Japanese-English translation service = Japanese-English translation 2;}” paired with the service identifier “morpheme analysis 1” as constraint satisfaction information. Obtained from the management table (FIG. 9).

次に、適応処理部35は、取得された制約情報から、前処理でも後処置でもなく、制約が外部制約である、と判断する。   Next, the adaptive processing unit 35 determines from the acquired constraint information that the constraint is an external constraint, neither pre-processing nor post-processing.

次に、適応処理部35は、適応情報「if(形態素解析1を選択){日英翻訳サービス=日英翻訳2;}」をバッファに一時格納する。   Next, the adaptation processing unit 35 temporarily stores adaptation information “if (select morpheme analysis 1) {Japanese-English translation service = Japanese-English translation 2;}” in the buffer.

次に、サービスサーバ決定部36は、図11のサービスサーバ管理情報管理表を参照して、サービス識別子「形態素解析1」で識別されるサービスが提供可能なサービスサーバ2を「サービスサーバA」に決定する。   Next, the service server determination unit 36 refers to the service server management information management table of FIG. 11 and changes the service server 2 that can provide the service identified by the service identifier “morpheme analysis 1” to “service server A”. decide.

次に、コアサーバ送信部37は、サービスサーバAに、サービス識別子「形態素解析1」および日本語の論文データを有するサービス要求を送信する。   Next, the core server transmission unit 37 transmits to the service server A a service request having a service identifier “morpheme analysis 1” and Japanese paper data.

次に、サービスサーバAのサービスサーバ受信部22は、コアサーバ3からサービス識別子「形態素解析1」および日本語の論文データを有するサービス要求を受信する。   Next, the service server receiving unit 22 of the service server A receives a service request having the service identifier “morpheme analysis 1” and Japanese paper data from the core server 3.

次に、サービス部23は、日本語の論文データに対して、「形態素解析1」の処理を実行し、形態素解析された日本語の論文データを得る。   Next, the service unit 23 performs a “morpheme analysis 1” process on the Japanese paper data to obtain Japanese paper data subjected to morphological analysis.

次に、サービスサーバ送信部24は、サービス部23のサービスの結果(形態素解析された日本語の論文データ)を、コアサーバ3に送信する。   Next, the service server transmission unit 24 transmits the service result of the service unit 23 (Japanese paper data subjected to morphological analysis) to the core server 3.

次に、コアサーバ3のコアサーバ受信部33は、サービスサーバAからサービスの結果(形態素解析された日本語の論文データ)を受信する。   Next, the core server receiving unit 33 of the core server 3 receives the service result (Japanese paper data subjected to morphological analysis) from the service server A.

次に、適応処理部35は、取得されている適応情報から、適応処理は後処理でない、と判断する。   Next, the adaptation processing unit 35 determines that the adaptation processing is not post-processing based on the acquired adaptation information.

次に、制約判断部34は、2番目のサービス識別子「専門用語辞書サービス」を取得する。   Next, the constraint determination unit 34 acquires the second service identifier “technical term dictionary service”.

次に、制約判断部34は、2番目のサービス識別子「専門用語辞書サービス」と対になる制約情報を制約満足情報管理表から取得しようとするが、取得できなかった、とする。   Next, it is assumed that the constraint determination unit 34 tries to acquire the constraint information paired with the second service identifier “technical term dictionary service” from the constraint satisfaction information management table, but cannot acquire the constraint information.

次に、サービスサーバ決定部36は、バッファに適応情報が存在する、と判断する。そして、次に、サービスサーバ決定部36は、バッファに格納されている適応情報「if(形態素解析1を選択){日英翻訳サービス=日英翻訳2;}」が有するサービス識別子「日英翻訳サービス」が、現在、着目されているサービス識別子「専門用語辞書サービス」に関連しない、と判断する。   Next, the service server determination unit 36 determines that the adaptation information exists in the buffer. Next, the service server determination unit 36 has the service identifier “Japanese-English translation” included in the adaptation information “if (select morphological analysis 1) {Japanese-English translation service = Japanese-English translation 2;}” stored in the buffer. It is determined that the “service” is not related to the service identifier “technical term dictionary service” currently focused on.

そして、サービスサーバ決定部36のサービス識別子取得手段362は、サービス識別子「専門用語辞書サービス」に対応する具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」の3つを取得する。また、かかる具象サービス識別子と対になるフラグが「1」であるので、サービス識別子取得手段362は、すべての具象サービス識別子で識別される具象サービスが実行される、と判断する。   Then, the service identifier acquisition unit 362 of the service server determination unit 36 acquires three concrete service identifiers “chemical specialty dictionary”, “electric specialty dictionary”, and “bio specialty dictionary” corresponding to the service identifier “technical term dictionary service”. . Further, since the flag paired with the concrete service identifier is “1”, the service identifier acquisition unit 362 determines that the concrete service identified by all the concrete service identifiers is executed.

次に、サービスサーバ識別子取得手段363は、サービス識別子取得手段362が取得した具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」と対になるサービスサーバ識別子「サービスサーバC」「サービスサーバA」「サービスサーバD」を、サービスサーバ管理情報管理表(図11)から取得する。   Next, the service server identifier acquisition unit 363 includes the service server identifiers “service server C” “pair” with the concrete service identifiers “chemical specialty dictionary”, “electric specialty dictionary”, and “bio specialty dictionary” acquired by the service identifier acquisition unit 362. “Service Server A” and “Service Server D” are acquired from the service server management information management table (FIG. 11).

次に、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバ2(「サービスサーバC」「サービスサーバA」「サービスサーバD」)にサービス要求(各具象サービス識別子「化学専門辞書」「電気専門辞書」「バイオ専門辞書」を含み、形態素解析された日本語の論文データから抽出された専門用語(名詞または名詞句等))を送信する。なお、専門用語の抽出は、コアサーバ3が行うことが好適であるが、サービスサーバ2が行っても良い。また、専門用語の抽出処理は公知技術であるので、説明を省略する。   Next, the core server transmission unit 37 sends a service request (each concrete service identifier “chemical specialty dictionary”) to the service server 2 (“service server C”, “service server A”, “service server D”) determined by the service server determination unit 36. "Specialized terms (nouns or noun phrases, etc.) extracted from Japanese paper data subjected to morphological analysis, including" electrical specialized dictionaries "and" biological specialized dictionaries "). The extraction of technical terms is preferably performed by the core server 3, but may be performed by the service server 2. Further, the technical term extraction process is a known technique, and thus the description thereof is omitted.

そして、3つの各サービスサーバのサービスサーバ受信部22は、コアサーバ3からサービス要求を受信する。   The service server receiving unit 22 of each of the three service servers receives a service request from the core server 3.

次に、3つの各サービスサーバのサービス部23は、各専門用語辞書を用いて、可能な専門用語の翻訳を行う。そして、3つの各サービスサーバのサービスサーバ送信部24は、専門用語の翻訳結果を、コアサーバ3に送信する。   Next, the service units 23 of each of the three service servers translate possible technical terms using the technical term dictionaries. Then, the service server transmission unit 24 of each of the three service servers transmits the technical term translation result to the core server 3.

次に、コアサーバ3のコアサーバ受信部33は、3つのサービスサーバ2からサービスの結果(専門用語の翻訳結果)を受信する。   Next, the core server receiving unit 33 of the core server 3 receives service results (translation results of technical terms) from the three service servers 2.

次に、適応処理部35は、取得した適応情報から、後処理でないと判断する。   Next, the adaptation processing unit 35 determines that it is not post-processing from the acquired adaptation information.

次に、制約判断部34は、複合サービス情報から3番目のサービス識別子「日英翻訳サービス」を取得する。   Next, the constraint determination unit 34 acquires the third service identifier “Japanese-English translation service” from the composite service information.

次に、制約判断部34は、3番目のサービス識別子「日英翻訳サービス」と対になる制約情報を制約満足情報管理表から取得しようとするが、取得できなかった、とする。   Next, it is assumed that the constraint determination unit 34 tries to acquire the constraint information paired with the third service identifier “Japanese-English translation service” from the constraint satisfaction information management table, but cannot acquire the constraint information.

次に、サービスサーバ決定部36は、バッファに格納されている適応情報が存在する、と判断する。   Next, the service server determination unit 36 determines that there is adaptation information stored in the buffer.

次に、サービスサーバ決定部36は、バッファに格納されている適応情報「if(形態素解析1を選択){日英翻訳サービス=日英翻訳2;}」が有するサービス識別子「日英翻訳サービス」が、現在、着目されているサービス識別子「日英翻訳サービス」に関連する(ここでは、一致する)と判断する。   Next, the service server determination unit 36 has the service identifier “Japanese-English translation service” included in the adaptation information “if (select morphological analysis 1) {Japanese-English translation service = Japanese-English translation 2;}” stored in the buffer. However, it is determined that the service identifier “Japanese-English translation service” currently focused on (matches here).

そして、サービス識別子取得手段362は、適応情報「if(形態素解析1を選択){日英翻訳サービス=日英翻訳2;}」を実行し、制約を満たす具象サービス識別子「日英翻訳2」を取得する。   Then, the service identifier acquisition unit 362 executes the adaptation information “if (select morpheme analysis 1) {Japanese-English translation service = Japanese-English translation 2;}”, and obtains a concrete service identifier “Japanese-English translation 2” that satisfies the constraints. get.

次に、サービスサーバ識別子取得手段363は、サービス識別子取得手段362が取得した具象サービス識別子「日英翻訳2」と対になるサービスサーバ識別子「サービスサーバB」を、サービスサーバ管理情報管理表(図11)から取得する。   Next, the service server identifier acquisition unit 363 stores the service server identifier “service server B” paired with the concrete service identifier “Japanese-English translation 2” acquired by the service identifier acquisition unit 362 in the service server management information management table (FIG. 11).

次に、コアサーバ送信部37は、サービスサーバ決定部36が決定したサービスサーバBに、サービス識別子「日英翻訳2」を有し、形態素解析サービス、3つの専門用語辞書サービスが完了したデータを有するサービス要求を送信する。   Next, the core server transmission unit 37 has the service identifier “Japanese-English translation 2” in the service server B determined by the service server determination unit 36, and receives the data obtained by completing the morphological analysis service and the three technical term dictionary services. The service request which has is transmitted.

次に、サービスサーバBのサービスサーバ受信部22は、コアサーバ3から上記のサービス要求を受信する。   Next, the service server receiving unit 22 of the service server B receives the service request from the core server 3.

次に、サービス部23は、サービス識別子「日英翻訳2」で識別される処理手段に、サービス要求が有するデータを渡し、当該処理手段を実行する。   Next, the service unit 23 passes the data included in the service request to the processing means identified by the service identifier “Japanese-English translation 2”, and executes the processing means.

次に、サービスサーバ送信部24は、サービスの結果(英文に翻訳された論文データ)を、端末装置1に送信する。   Next, the service server transmission unit 24 transmits the service result (thesis data translated into English) to the terminal device 1.

次に、端末受信部13は、サービスの結果(英文に翻訳された論文データ)を受信する。そして、端末出力部14は、受信されたサービスの結果(英文に翻訳された論文データ)を出力する。   Next, the terminal receiving unit 13 receives the service result (thesis data translated into English). Then, the terminal output unit 14 outputs the result of the received service (paper data translated into English).

以上、本実施の形態によれば、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える。   As described above, according to the present embodiment, even when a service that satisfies a given constraint cannot be selected, a service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

また、本実施の形態において、複合サービスの場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。   In the present embodiment, even in the case of a composite service, even if a service that satisfies the given constraint cannot be selected, the composite service can be provided by performing an adaptive process that is a process that satisfies the given constraint.

また、本実施の形態において、抽象サービスの遂行が指示されている場合で、与えられた制約を満たす具象サービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、抽象サービスの提供を行える。   Further, in the present embodiment, even when the execution of an abstract service is instructed and a concrete service that satisfies a given constraint cannot be selected, by performing an adaptive process that is a process that satisfies the given constraint, Provide abstract services.

また、本実施の形態において、制約が複数のサービス間の制約(外部制約)である場合で、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、複合サービスの提供を行える。   Further, in this embodiment, even when the constraint is a constraint between a plurality of services (external constraints), even when a service that satisfies the given constraint cannot be selected, an adaptive process that is a process that satisfies the given constraint is performed. By doing so, it is possible to provide composite services.

なお、本実施の形態によれば、抽象サービス識別子に対しても制約情報を持てる例を説明した。しかし、制約情報と対になるサービス識別子は、具象サービス識別子だけでも良い。   Note that, according to the present embodiment, an example has been described in which constraint information can be held for an abstract service identifier. However, the service identifier paired with the constraint information may be only the concrete service identifier.

さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態におけるコアサーバ3を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する1以上の制約満足情報を格納しており、コンピュータを、端末装置からサービス要求を受信するコアサーバ受信部と、前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部として機能させるためのプログラム、である。   Furthermore, the processing in the present embodiment may be realized by software. Then, this software may be distributed by software download or the like. Further, this software may be recorded and distributed on a recording medium such as a CD-ROM. This also applies to other embodiments in this specification. In addition, the software which implement | achieves the core server 3 in this Embodiment is the following programs. That is, this program stores, on the recording medium, a service identifier for identifying a service, constraint information that is information on the constraint of the service, and adaptation information that is information for satisfying the constraint when the constraint is not satisfied. 1 or more constraint satisfaction information is stored, the computer uses a core server receiving unit that receives a service request from a terminal device, and a service identifier included in the service request, and the constraint information is stored in the recording medium. And a constraint determination unit that determines whether or not the constraint specified by the constraint information is satisfied, and when the constraint determination unit determines that the constraint is not satisfied, using the service identifier, the adaptation information An adaptive processing unit that satisfies the restriction by performing an adaptive process specified by the adaptive information, and the service A service server determination unit that determines a service server that can provide the service identified by the service identifier included in the request, and a result of the adaptive processing unit performing adaptive processing on the service server determined by the service server determination unit. It is a program for functioning as a core server transmission part which transmits the reflected service request.

また、上記プログラムにおいて、前記制約情報は、制約を特定する制約特定情報と、当該制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、前記制約判断部は、前記サービス要求に含まれるサービス識別子と対になる検査情報を前記記録媒体から取得し、当該検査情報に従って検査を行い、前記制約特定情報で特定される制約を満たすか否かを判断するものとして、コンピュータを機能させることは好適である。   In the above program, the constraint information includes constraint specification information for specifying a constraint, and test information indicating a test method for checking whether or not the constraint specified by the constraint specification information is satisfied. The unit obtains inspection information paired with a service identifier included in the service request from the recording medium, performs inspection according to the inspection information, and determines whether or not the constraint specified by the constraint specifying information is satisfied. As a thing, it is preferable to make a computer function.

また、上記プログラムにおいて、前記サービス要求が有するサービス識別子は、複数のサービスが含まれる複合サービスであり、記録媒体に、複合サービスを識別する複合サービス識別子と、当該複合サービスに含まれる2以上の原子サービスを識別する2以上の原子サービス識別子とを対応づける複合サービス情報を、さらに格納しており、前記制約判断部は、前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記サービス要求に含まれる複合サービス識別子に対応する2以上の原子サービス識別子を、前記記録媒体から取得し、当該2以上の各原子サービス識別子と対になる制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断し、前記適応処理部は、前記制約判断部が前記制約を満たさないと判断した場合に、当該制約を満たさない原子サービス識別子と対になる適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにするものとして、コンピュータを機能させることは好適である。   In the above program, the service identifier included in the service request is a composite service including a plurality of services, and a composite service identifier for identifying the composite service and two or more atoms included in the composite service are included in the recording medium. Composite service information for associating two or more atomic service identifiers for identifying services is further stored, and the constraint determination unit, when the service identifier included in the service request is a composite service identifier, 2 or more atomic service identifiers corresponding to the composite service identifier included in the storage medium are acquired from the recording medium, and constraint information paired with the two or more atomic service identifiers is acquired from the recording medium, It is determined whether or not a specified constraint is satisfied, and the adaptation processing unit is configured to determine the constraint determination unit. When it is determined that the constraint is not satisfied, adaptation information paired with an atomic service identifier that does not satisfy the constraint is acquired from the recording medium, and an adaptation process specified by the adaptation information is performed to satisfy the constraint It is preferable to make a computer function as what makes it.

また、上記プログラムにおいて、前記サービス要求が有するサービス識別子、または前記サービス要求が有するサービス識別子が複合サービス識別子である場合、当該複合サービス識別子に対応する2以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、前記サービスサーバ決定部は、抽象サービス識別子と、当該抽象サービス識別子で識別されるサービスを実現する1以上の具体的なサービスを識別する具象サービス識別子と、当該具象サービス識別子ごとに当該具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する1以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、前記サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する1以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、前記サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、前記コアサーバ送信部は、前記サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するものとして、コンピュータを機能させることは好適である。   In the above program, when the service identifier included in the service request or the service identifier included in the service request is a composite service identifier, two or more atomic service identifiers corresponding to the composite service identifier indicate a service function. An abstract service identifier, and the service server determination unit includes an abstract service identifier, a concrete service identifier that identifies one or more specific services that realize the service identified by the abstract service identifier, and the concrete service identifier. Service server management information storage means for storing one or more service server management information having a service server identifier for identifying a service server that performs a service identified by the concrete service identifier, and an abstract service included in the service request Identify by identifier Service identifier acquisition means for acquiring one concrete service identifier from one or more concrete service identifiers for realizing the service to be performed, and a service server for acquiring a service server identifier paired with the concrete service identifier acquired by the service identifier acquisition means The core server transmitting unit reflects the result of the adaptive processing performed by the adaptive processing unit on the service server identified by the service server identifier acquired by the service server identifier acquiring unit. It is preferable to make the computer function as the one that transmits the service request.

また、上記プログラムにおいて、前記制約情報は、2以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または2以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、前記制約判断部は、前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記複合サービス識別子に対応する2以上の原子サービス識別子を、前記記憶媒体から取得し、当該2以上の原子サービス識別子が、前記外部制約情報が示す制約を満たすか否かを判断するものとして、コンピュータを機能させることは好適である。   Further, in the above program, the constraint information is external constraint information that is information regarding a constraint indicating that two or more services do not operate at once, or information regarding a constraint indicating that two or more services operate at a time. Including external constraint information, and when the service identifier included in the service request is a composite service identifier, the constraint determination unit acquires two or more atomic service identifiers corresponding to the composite service identifier from the storage medium, It is preferable that the computer is made to function as a judgment as to whether or not the two or more atomic service identifiers satisfy the constraint indicated by the external constraint information.

また、図12は、本明細書で述べたプログラムを実行して、上述した実施の形態の情報システム等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図12は、このコンピュータシステム340の概観図であり、図13は、コンピュータシステム340のブロック図である。   FIG. 12 shows the external appearance of a computer that executes the program described in this specification to realize the information system or the like of the above-described embodiment. The above-described embodiments can be realized by computer hardware and a computer program executed thereon. FIG. 12 is an overview diagram of the computer system 340, and FIG. 13 is a block diagram of the computer system 340.

図12において、コンピュータシステム340は、FDドライブ、CD−ROMドライブを含むコンピュータ341と、キーボード342と、マウス343と、モニタ344とを含む。   In FIG. 12, a computer system 340 includes a computer 341 including an FD drive and a CD-ROM drive, a keyboard 342, a mouse 343, and a monitor 344.

図13において、コンピュータ341は、FDドライブ3411、CD−ROMドライブ3412に加えて、MPU3413と、CD−ROMドライブ3412及びFDドライブ3411に接続されたバス3414と、ブートアッププログラム等のプログラムを記憶するためのROM3415とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3416と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3417とを含む。ここでは、図示しないが、コンピュータ341は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。   In FIG. 13, in addition to the FD drive 3411 and the CD-ROM drive 3412, the computer 341 stores an MPU 3413, a bus 3414 connected to the CD-ROM drive 3412 and the FD drive 3411, and a program such as a bootup program. A RAM 3416 for temporarily storing application program instructions and providing a temporary storage space; and a hard disk 3417 for storing application programs, system programs, and data. Although not shown here, the computer 341 may further include a network card that provides connection to the LAN.

コンピュータシステム340に、上述した実施の形態の情報システム等の機能を実行させるプログラムは、CD−ROM3501、またはFD3502に記憶されて、CD−ROMドライブ3412またはFDドライブ3411に挿入され、さらにハードディスク3417に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ341に送信され、ハードディスク3417に記憶されても良い。プログラムは実行の際にRAM3416にロードされる。プログラムは、CD−ROM3501、FD3502またはネットワークから直接、ロードされても良い。   A program that causes the computer system 340 to execute functions such as the information system of the above-described embodiment is stored in the CD-ROM 3501 or the FD 3502, inserted into the CD-ROM drive 3412 or the FD drive 3411, and further stored in the hard disk 3417. May be forwarded. Alternatively, the program may be transmitted to the computer 341 via a network (not shown) and stored in the hard disk 3417. The program is loaded into the RAM 3416 at the time of execution. The program may be loaded directly from the CD-ROM 3501, the FD 3502, or the network.

プログラムは、コンピュータ341に、上述した実施の形態の情報システム等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム340がどのように動作するかは周知であり、詳細な説明は省略する。   The program does not necessarily include an operating system (OS) or a third-party program that causes the computer 341 to execute functions such as the information system of the above-described embodiment. The program only needs to include an instruction portion that calls an appropriate function (module) in a controlled manner and obtains a desired result. How the computer system 340 operates is well known and will not be described in detail.

なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。   In the above program, in the step of transmitting information, the step of receiving information, etc., processing performed by hardware, for example, processing performed by a modem or an interface card in the transmission step (only performed by hardware) Processing) is not included.

また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。   Further, the computer that executes the program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.

また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。   Further, in each of the above embodiments, it goes without saying that two or more communication units existing in one apparatus may be physically realized by one medium.

また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。   In each of the above embodiments, each process (each function) may be realized by centralized processing by a single device (system), or by distributed processing by a plurality of devices. May be.

本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。   The present invention is not limited to the above-described embodiments, and various modifications are possible, and it goes without saying that these are also included in the scope of the present invention.

以上のように、本発明にかかる情報システムは、与えられた制約を満たすサービスが選択できない場合でも、与えられた制約を満たす処理である適応処理を行うことにより、サービスの提供を行える、という効果を有し、大規模情報システム等として有用である。   As described above, the information system according to the present invention can provide a service by performing an adaptive process, which is a process that satisfies a given constraint, even when a service that satisfies the given constraint cannot be selected. It is useful as a large-scale information system.

1 端末装置
2 サービスサーバ
3 コアサーバ
11 端末受付部
12 端末送信部
13 端末受信部
14 端末出力部
21 処理手段格納部
22 サービスサーバ受信部
23 サービス部
24 サービスサーバ送信部
31 制約満足情報格納部
32 複合サービス情報格納部
33 コアサーバ受信部
34 制約判断部
35 適応処理部
36 サービスサーバ決定部
37 コアサーバ送信部
361 サービスサーバ管理情報格納手段
362 サービス識別子取得手段
363 サービスサーバ識別子取得手段
DESCRIPTION OF SYMBOLS 1 Terminal device 2 Service server 3 Core server 11 Terminal reception part 12 Terminal transmission part 13 Terminal reception part 14 Terminal output part 21 Processing means storage part 22 Service server reception part 23 Service part 24 Service server transmission part 31 Restriction satisfaction information storage part 32 Composite service information storage unit 33 Core server reception unit 34 Constraint determination unit 35 Adaptive processing unit 36 Service server determination unit 37 Core server transmission unit 361 Service server management information storage unit 362 Service identifier acquisition unit 363 Service server identifier acquisition unit

Claims (8)

1以上の端末装置と1以上のサービスサーバと1以上のコアサーバとを有する情報システムであって、
前記端末装置は、
サービスを識別するサービス識別子を有するサービスの要求であるサービス要求を受け付ける端末受付部と、
前記サービス要求を前記コアサーバに送信する端末送信部と、
前記サービス要求の送信に応じて、サービスの結果を受信する端末受信部と、
前記端末受信部が受信したサービスの結果を出力する端末出力部とを具備し、
前記サービスサーバは、
前記サービスを遂行するための1以上の処理手段を格納し得る処理手段格納部と、
前記コアサーバから前記サービス要求を受信するサービスサーバ受信部と、
前記サービスサーバ受信部が受信したサービス要求に従って、前記処理手段格納部の処理手段を実行し、サービスを遂行し、サービスの結果を取得するサービス部と、
前記サービス部のサービスの結果を送信するサービスサーバ送信部とを具備し、
前記コアサーバは、
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する1以上の制約満足情報を格納し得る制約満足情報格納部と、
前記端末装置からサービス要求を受信するコアサーバ受信部と、
前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、
前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、
前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、
前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備する情報システム。
An information system having one or more terminal devices, one or more service servers, and one or more core servers,
The terminal device
A terminal accepting unit that accepts a service request that is a request for a service having a service identifier for identifying the service;
A terminal transmitter for transmitting the service request to the core server;
A terminal receiving unit for receiving a service result in response to the transmission of the service request;
A terminal output unit for outputting a result of the service received by the terminal reception unit;
The service server
A processing means storage unit capable of storing one or more processing means for performing the service;
A service server receiver that receives the service request from the core server;
In accordance with the service request received by the service server receiving unit, the processing unit of the processing unit storage unit executes the processing unit, performs the service, and obtains the result of the service;
A service server transmission unit for transmitting a service result of the service unit;
The core server is
One or more constraint satisfaction information including a service identifier for identifying a service, constraint information that is information regarding the constraint of the service, and adaptation information that is information for satisfying the constraint when the constraint is not satisfied A constraint satisfaction information storage that can be stored;
A core server receiving unit that receives a service request from the terminal device;
Using the service identifier included in the service request, the constraint information is acquired from the constraint satisfaction information storage unit, and a constraint determination unit that determines whether the constraint specified by the constraint information is satisfied;
When the constraint determination unit determines that the constraint is not satisfied, the service identifier is used to acquire adaptation information from the constraint satisfaction information storage unit, and an adaptation process specified by the adaptation information is performed to perform the constraint An adaptive processing unit to satisfy
A service server determination unit that determines a service server capable of providing a service identified by a service identifier included in the service request;
An information system comprising: a core server transmission unit that transmits a service request reflecting a result of the adaptive processing performed by the adaptive processing unit to the service server determined by the service server determination unit.
前記制約情報は、
制約を特定する制約特定情報と、当該制約特定情報で特定される制約を満たすか否かの検査の方法を示す検査情報とを有し、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子と対になる検査情報を前記制約満足情報格納部から取得し、当該検査情報に従って検査を行い、前記制約特定情報で特定される制約を満たすか否かを判断する請求項1記載の情報システム。
The constraint information is
Constraint specifying information for specifying a constraint, and inspection information indicating a method for checking whether or not the constraint specified by the constraint specifying information is satisfied,
The constraint determination unit
The inspection information that is paired with the service identifier included in the service request is acquired from the constraint satisfaction information storage unit, the inspection is performed according to the inspection information, and it is determined whether or not the constraint specified by the constraint specifying information is satisfied. The information system according to claim 1.
前記サービス要求が有するサービス識別子は、
複数のサービスが含まれる複合サービスであり、
前記コアサーバは、
複合サービスを識別する複合サービス識別子と、当該複合サービスに含まれる2以上の原子サービスを識別する2以上の原子サービス識別子とを対応づける複合サービス情報を格納している複合サービス情報格納部をさらに具備し、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記サービス要求に含まれる複合サービス識別子に対応する2以上の原子サービス識別子を、前記複合サービス情報格納部から取得し、当該2以上の各原子サービス識別子と対になる制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断し、
前記適応処理部は、
前記制約判断部が前記制約を満たさないと判断した場合に、当該制約を満たさない原子サービス識別子と対になる適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする請求項1または請求項2記載の情報システム。
The service identifier included in the service request is:
A composite service that includes multiple services,
The core server is
A composite service information storage unit that stores composite service information that associates a composite service identifier that identifies the composite service with two or more atomic service identifiers that identify two or more atomic services included in the composite service; And
The constraint determination unit
When the service identifier included in the service request is a composite service identifier, two or more atomic service identifiers corresponding to the composite service identifier included in the service request are acquired from the composite service information storage unit, and the two or more Obtaining constraint information that is paired with each atomic service identifier from the constraint satisfaction information storage unit, and determining whether the constraint specified by the constraint information is satisfied,
The adaptive processing unit includes:
When the constraint determination unit determines that the constraint is not satisfied, the adaptive information that is paired with the atomic service identifier that does not satisfy the constraint is acquired from the constraint satisfaction information storage unit, and the adaptation process specified by the adaptation information 3. The information system according to claim 1, wherein the restriction is satisfied to satisfy the restriction.
前記サービス要求が有するサービス識別子、または前記サービス要求が有するサービス識別子が複合サービス識別子である場合、当該複合サービス識別子に対応する2以上の原子サービス識別子は、サービスの機能を示す抽象サービス識別子であり、
前記サービスサーバ決定部は、
抽象サービス識別子と、当該抽象サービス識別子で識別されるサービスを実現する1以上の具体的なサービスを識別する具象サービス識別子と、当該具象サービス識別子ごとに当該具象サービス識別子で識別されるサービスを行うサービスサーバを識別するサービスサーバ識別子とを有する1以上のサービスサーバ管理情報を格納し得るサービスサーバ管理情報格納手段と、
前記サービス要求に含まれる抽象サービス識別子で識別されるサービスを実現する1以上の具象サービス識別子から一の具象サービス識別子を取得するサービス識別子取得手段と、
前記サービス識別子取得手段が取得した具象サービス識別子と対になるサービスサーバ識別子を取得するサービスサーバ識別子取得手段とを具備し、
前記コアサーバ送信部は、
前記サービスサーバ識別子取得手段が取得したサービスサーバ識別子で識別されるサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信する請求項1から請求項3いずれか記載の情報システム。
When the service identifier included in the service request or the service identifier included in the service request is a composite service identifier, two or more atomic service identifiers corresponding to the composite service identifier are abstract service identifiers indicating service functions;
The service server determination unit
An abstract service identifier, a concrete service identifier that identifies one or more specific services that realize the service identified by the abstract service identifier, and a service that performs the service identified by the concrete service identifier for each concrete service identifier Service server management information storage means capable of storing one or more service server management information having a service server identifier for identifying a server;
Service identifier acquisition means for acquiring one concrete service identifier from one or more concrete service identifiers for realizing a service identified by an abstract service identifier included in the service request;
Service server identifier acquisition means for acquiring a service server identifier paired with the concrete service identifier acquired by the service identifier acquisition means,
The core server transmitter is
The service request reflecting the result of the adaptive processing performed by the adaptive processing unit is transmitted to the service server identified by the service server identifier acquired by the service server identifier acquiring means. Information system.
前記制約情報は、
2以上のサービスが一度に動作しないことを示す制約に関する情報である外部制約情報、または2以上のサービスが一度に動作することを示す制約に関する情報である外部制約情報を含み、
前記制約判断部は、
前記サービス要求に含まれるサービス識別子が複合サービス識別子である場合、前記複合サービス識別子に対応する2以上の原子サービス識別子を、前記複合サービス情報格納部から取得し、当該2以上の原子サービス識別子が、前記外部制約情報が示す制約を満たすか否かを判断する請求項3または請求項4記載の情報システム。
The constraint information is
Including external constraint information that is information regarding constraints indicating that two or more services do not operate at one time, or external constraint information that is information regarding constraints indicating that two or more services operate at a time,
The constraint determination unit
When the service identifier included in the service request is a composite service identifier, two or more atomic service identifiers corresponding to the composite service identifier are acquired from the composite service information storage unit, and the two or more atomic service identifiers are The information system according to claim 3 or 4, wherein it is determined whether or not the constraint indicated by the external constraint information is satisfied.
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する1以上の制約満足情報を格納し得る制約満足情報格納部と、
端末装置からサービス要求を受信するコアサーバ受信部と、
前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記制約満足情報格納部から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断部と、
前記制約判断部が前記制約を満たさないと判断した場合に、前記サービス識別子を用いて、適応情報を前記制約満足情報格納部から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理部と、
前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定部と、
前記サービスサーバ決定部が決定したサービスサーバに、前記適応処理部が適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信部とを具備するコアサーバ。
One or more constraint satisfaction information including a service identifier for identifying a service, constraint information that is information regarding the constraint of the service, and adaptation information that is information for satisfying the constraint when the constraint is not satisfied A constraint satisfaction information storage that can be stored;
A core server receiver that receives a service request from a terminal device;
Using the service identifier included in the service request, the constraint information is acquired from the constraint satisfaction information storage unit, and a constraint determination unit that determines whether the constraint specified by the constraint information is satisfied;
When the constraint determination unit determines that the constraint is not satisfied, the service identifier is used to acquire adaptation information from the constraint satisfaction information storage unit, and an adaptation process specified by the adaptation information is performed to perform the constraint An adaptive processing unit to satisfy
A service server determination unit that determines a service server capable of providing a service identified by a service identifier included in the service request;
A core server comprising: a core server transmitting unit that transmits a service request reflecting a result of the adaptive processing performed by the adaptive processing unit to the service server determined by the service server determining unit.
請求項1から請求項5いずれか記載の情報システムを構成するコアサーバ。 The core server which comprises the information system in any one of Claims 1-5. 記録媒体に、
サービスを識別するサービス識別子と、当該サービスの制約に関する情報である制約情報と、制約を満たさない場合に前記制約を満たすようにするための情報である適応情報とを有する1以上の制約満足情報を格納しており、
コアサーバ受信部、制約判断部、適応処理部、サービスサーバ決定部、およびコアサーバ送信部により実現されるサービス提供方法であって、
前記コアサーバ受信部は、端末装置からサービス要求を受信するコアサーバ受信ステップと、
前記制約判断部は、前記サービス要求に含まれるサービス識別子を用いて、制約情報を前記記録媒体から取得し、当該制約情報で特定される制約を満たすか否かを判断する制約判断ステップと、
前記適応処理部は、前記制約判断ステップで前記制約を満たさないと判断された場合に、前記サービス識別子を用いて、適応情報を前記記録媒体から取得し、当該適応情報で特定される適応処理を行って前記制約を満たすようにする適応処理ステップと、
前記サービスサーバ決定部は、前記サービス要求に含まれるサービス識別子で識別されるサービスが提供可能なサービスサーバを決定するサービスサーバ決定ステップと、
前記コアサーバ送信部は、前記サービスサーバ決定ステップで決定されたサービスサーバに、前記適応処理ステップで適応処理を行った結果を反映させたサービス要求を送信するコアサーバ送信ステップとを具備するサービス提供方法。
On the recording medium,
One or more constraint satisfaction information including a service identifier for identifying a service, constraint information that is information regarding the constraint of the service, and adaptation information that is information for satisfying the constraint when the constraint is not satisfied Storing and
A service providing method realized by a core server receiving unit, a constraint determining unit, an adaptive processing unit, a service server determining unit, and a core server transmitting unit,
The core server receiving unit receives a service request from a terminal device;
The constraint determination unit obtains constraint information from the recording medium using a service identifier included in the service request, and determines whether or not the constraint specified by the constraint information is satisfied.
The adaptation processing unit acquires adaptation information from the recording medium using the service identifier when it is determined that the constraint is not satisfied in the constraint determination step, and performs an adaptation process specified by the adaptation information. An adaptive processing step to perform and satisfy the constraints;
The service server determining unit determines a service server capable of providing a service identified by a service identifier included in the service request; and
The core server transmission unit includes a core server transmission step of transmitting, to the service server determined in the service server determination step, a service request reflecting a result of the adaptive processing performed in the adaptation processing step. Method.
JP2010151652A 2010-07-02 2010-07-02 Information system, core server, service providing method, and program Pending JP2012014542A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010151652A JP2012014542A (en) 2010-07-02 2010-07-02 Information system, core server, service providing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010151652A JP2012014542A (en) 2010-07-02 2010-07-02 Information system, core server, service providing method, and program

Publications (1)

Publication Number Publication Date
JP2012014542A true JP2012014542A (en) 2012-01-19

Family

ID=45600868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010151652A Pending JP2012014542A (en) 2010-07-02 2010-07-02 Information system, core server, service providing method, and program

Country Status (1)

Country Link
JP (1) JP2012014542A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014020691A1 (en) * 2012-07-31 2014-02-06 株式会社日立製作所 Management system and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014020691A1 (en) * 2012-07-31 2014-02-06 株式会社日立製作所 Management system and program

Similar Documents

Publication Publication Date Title
US11195507B2 (en) Translating between spoken languages with emotion in audio and video media streams
CN109147784B (en) Voice interaction method, device and storage medium
JP5598998B2 (en) Speech translation system, first terminal device, speech recognition server device, translation server device, and speech synthesis server device
CN106796496B (en) Display apparatus and method of operating the same
US9104661B1 (en) Translation of applications
EP2492910B1 (en) Speech translation system, control device and control method
JP6819988B2 (en) Speech interaction device, server device, speech interaction method, speech processing method and program
US11330342B2 (en) Method and apparatus for generating caption
US20090187410A1 (en) System and method of providing speech processing in user interface
EP2978232A1 (en) Method and device for adjusting playback progress of video file
CN112231498A (en) Interactive information processing method, device, equipment and medium
US20140281855A1 (en) Displaying information in a presentation mode
US9442920B2 (en) Speech translation system, dictionary server, and program
US20050010422A1 (en) Speech processing apparatus and method
US20110137896A1 (en) Information processing apparatus, predictive conversion method, and program
JP5327737B2 (en) Dialogue device, weight information learning device, dialogue method, weight information learning method, and program
CN114390220A (en) Animation video generation method and related device
CN109792502B (en) Information processing apparatus, information processing method, storage medium, and information processing system
US20150261746A1 (en) Translation system, information processing apparatus, information processing method, and computer program product
KR102307330B1 (en) Reception device and reception method
JP2012014542A (en) Information system, core server, service providing method, and program
KR20120083025A (en) Multimedia device for providing voice recognition service by using at least two of database and the method for controlling the same
KR101428472B1 (en) An apparatus for presenting cloud streaming service and a method thereof
JP2010230948A (en) Content distribution system and text display method
JP2022017985A (en) Web page processing device, web page processing method, and program