JP2000353087A - Computer system having operation scenario developing environment of high available system - Google Patents

Computer system having operation scenario developing environment of high available system

Info

Publication number
JP2000353087A
JP2000353087A JP11163881A JP16388199A JP2000353087A JP 2000353087 A JP2000353087 A JP 2000353087A JP 11163881 A JP11163881 A JP 11163881A JP 16388199 A JP16388199 A JP 16388199A JP 2000353087 A JP2000353087 A JP 2000353087A
Authority
JP
Japan
Prior art keywords
scenario
component
editor
configuration
parts
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
JP11163881A
Other languages
Japanese (ja)
Inventor
Akitomo Yamada
晃智 山田
Kenichi Mizoguchi
研一 溝口
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP11163881A priority Critical patent/JP2000353087A/en
Publication of JP2000353087A publication Critical patent/JP2000353087A/en
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a developing tool which can easily generate the desired operation scenario of a distributed system without an error by generating the parts of the scenario through the use of a parts editor and holding the generated parts in a scenario parts library. SOLUTION: A parts editor 3 constituting a scenario developing environment 1 generates parts constituting a scenario by using a graphical user interface(GUI) and registers them in a parts library for HA system 5. A constitution editor 7 compiles an element depending on the constitution of a system and the operation of the system and generates a scenario constitution file 9. A parameter item editor 11 designs the setting items of a parameter depending on the system which is actually operated and designs keys to be operated actually in the system and items to be monitored. A compiler 13 converts a scenario constitution file generated in GUI into a scenario template.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、分散システム、
特に複数のサーバ計算機が連携して処理を行ない、いず
れかのサーバ計算機で障害が発生しても他のサーバ計算
機が処理を引き継ぐことができる高可用性システムの動
作シナリオの開発環境に関する。
The present invention relates to a distributed system,
More particularly, the present invention relates to a development environment for an operation scenario of a high availability system in which a plurality of server computers cooperate to perform processing, and even if a failure occurs in any one of the server computers, another server computer can take over the processing.

【0002】[0002]

【従来の技術】高可用性計算機システム(以下HA(High
Availability)システムと呼ぶ場合もある)において
は、他のクライアント計算機に対してサービスを提供す
る複数のサーバ計算機をネットワークによって連携さ
せ、いずれかのサーバ計算機で障害が発生しても、他の
サーバ計算機がサービスを引き継ぐことによりシステム
全体としては、サービスの中断を可能な限り短くするよ
うに設計される。
2. Description of the Related Art High availability computer systems (hereinafter referred to as HA (High
Availability) system), a plurality of server computers that provide services to other client computers are linked by a network, and even if a failure occurs in any one of the server computers, other server computers By taking over the service, the system as a whole is designed to minimize the interruption of the service as much as possible.

【0003】このような高可用性システムを実現すると
きには、サーバ計算機や使用する装置類の数、ソフトウ
エア構成といった一般のシステムでの設計事項に加え、
どのような障害が発生したときに、どのようにサービス
を引き継ぐかを決定しなければならない。
To realize such a high-availability system, in addition to the design items of a general system such as a server computer, the number of devices to be used, and a software configuration,
You must decide how to take over the service in the event of a failure.

【0004】従来のHAシステムの実現方法の簡単なも
のは、固定のハードウエア構成と、障害に対する固定的
なサービス引継ぎ手順が用意されていて、それを利用す
るというものである。一般には、種々のシステム形態に
より柔軟に対応する必要があるために、障害時のサービ
ス引継ぎ手順については、スクリプト言語で記述する方
式を採る場合が多かった。
A simple method of realizing a conventional HA system is that a fixed hardware configuration and a fixed service takeover procedure for a failure are prepared and used. In general, since it is necessary to flexibly cope with various system forms, a service takeover procedure at the time of a failure has often been described in a script language.

【0005】[0005]

【発明が解決しようとする課題】HAシステムは信頼性
が最も重視されるシステムである。従って設計ミスのた
めに、実際に障害が発生したときに意図していたサービ
ス引継ぎが行われなかったり、新たな誤動作を引き起こ
しては、HAシステム化の意味がない。
The HA system is a system in which reliability is most important. Therefore, if the intended service takeover is not performed or a new malfunction is caused due to a design error due to an actual failure, the HA system is meaningless.

【0006】しかし、システムの動作をシステム設計者
がその都度、スクリプト言語で記述する従来の技術で
は、その作成に多くの作業工数を必要とし、なおかつ記
述誤りの混入する可能性が高かった。
However, in the prior art in which the system designer describes the operation of the system in a script language each time, a large number of work steps are required to create the system, and there is a high possibility that a description error is mixed.

【0007】この発明の目的は、上記事情に鑑みてなさ
れたもので、分散システムの所望の動作シナリオを簡単
かつ誤りなく作成することのできる分散システムの動作
シナリオの開発ツールを提供することである。
An object of the present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a tool for developing an operation scenario of a distributed system, which can easily create a desired operation scenario of the distributed system without error. .

【0008】[0008]

【課題を解決するための手段】この発明は、複数のサー
バ計算機が連携して処理を行う高可用性システムの振る
舞いをスクリプト言語で記述したシナリオとして開発す
るための高可用性システムの動作シナリオ開発環境を有
する計算機システムにおいて、前記シナリオの部品を作
成する部品エディタと、前記部品エディタにより作成さ
れた部品群を保持するシナリオ部品ライブラリと、前記
高可用性システムの構成を定義する構成エディタと、高
可用性システムのシナリオにおけるシステム構成に関す
る定義を保持する高可用性システム用シナリオ構成ファ
イルと、実システムでユーザが設定すべき項目を定義す
るパラメータ項目エディタと、前記高可用性システム用
シナリオ構成ファイルをシナリオ記述言語で記述された
シナリオテンプレートに変換するコンパイラと、を具備
したことを特徴とする。
SUMMARY OF THE INVENTION The present invention provides an operation scenario development environment for a high availability system for developing the behavior of a high availability system in which a plurality of server computers cooperate to perform processing as a scenario described in a script language. A computer system having a component editor for creating components of the scenario, a scenario component library for holding a component group created by the component editor, a configuration editor for defining a configuration of the high availability system, A scenario configuration file for a high availability system that holds a definition related to a system configuration in a scenario, a parameter item editor that defines items to be set by a user in a real system, and the scenario configuration file for a high availability system is described in a scenario description language. Scenario template Characterized by comprising a compiler to convert the bets, the.

【0009】この発明は、部品エディタを用いてシナリ
オの部品を作成し、作成した部品をシナリオ部品ライブ
ラリに保持することにより様々な構成の高可用性計算機
システムに使用可能である。また、構成エディタでシナ
リオのシステム構成に関する定義を行うことができる。
従って、ある構成に対する構成ファイルを作成すれば、
それを流用して別の構成のシナリオを容易に作成でき
る。さらに、パラメータ項目エディタにより、HAシス
テム用シナリオ構成ファイルに保持されたシステム構成
に関する定義を用いて、必要な項目をもれなく定義する
ことができる。さらに、コンパイラはGUIで作成した
情報をシナリオテンプレートに変換する。変換の際に不
適切な個所があればメッセージにより指摘する。変換の
際に不適切な個所があれば、メッセージによりエラー個
所が表示されるので、誤りを容易に検出することができ
る。また、シミュレータによりシナリオのシミュレーシ
ョンを実行し、動作の確認を行うことができるので、実
システムが無くても作成したシナリオの検証を行うこと
ができる。
The present invention can be used for high-availability computer systems of various configurations by creating scenario components using a component editor and storing the created components in a scenario component library. The configuration editor can be used to define the system configuration of the scenario.
Therefore, if you create a configuration file for a configuration,
It can be easily used to create scenarios with different configurations. Further, by using the parameter item editor, it is possible to completely define all necessary items using the system configuration definition held in the HA system scenario configuration file. Further, the compiler converts the information created by the GUI into a scenario template. If there is an inappropriate part during the conversion, it will be indicated by a message. If there is an inappropriate portion during the conversion, an error portion is displayed by a message, so that the error can be easily detected. Further, since the simulation of the scenario can be executed by the simulator and the operation can be confirmed, the created scenario can be verified without the real system.

【0010】また、この発明は、複数のサーバ計算機が
連携して処理を行う高可用性システムの振る舞いをスク
リプト言語で記述したシナリオとして開発するための高
可用性システムの動作シナリオ開発環境を有する計算機
システムにおいて、高可用性システムの構成を定義する
構成エディタと、実システムでユーザが設定すべき項目
を定義するパラメータ項目エディタと、前記構成エディ
タを制御し、シナリオ構成ファイルを生成すると共に前
記パラメータ項目エディタを制御し前記シナリオ構成フ
ァイルに対してシステム固有のパラメータに関する情報
を定義するシナリオテンプレート自動生成制御部と、具
備したことを特徴とする。
Further, the present invention relates to a computer system having a high availability system operation scenario development environment for developing a behavior of a high availability system in which a plurality of server computers cooperate to perform processing as a scenario described in a script language. A configuration editor for defining a configuration of a high availability system, a parameter item editor for defining items to be set by a user in a real system, controlling the configuration editor, generating a scenario configuration file and controlling the parameter item editor And a scenario template automatic generation control unit for defining information on system-specific parameters for the scenario configuration file.

【0011】この発明によれば、種々の高可用性計算機
システムに対応可能な部品ライブラリを作成しておくこ
とにより、定義した要求仕様から自動的にシナリオテン
プレートを生成することができる。
According to the present invention, a scenario template can be automatically generated from a defined requirement specification by creating a component library that can support various high availability computer systems.

【0012】[0012]

【発明の実施の形態】以下、図面を参照して本発明の実
施形態を説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0013】図1はこの発明の分散システムの動作シナ
リオ開発環境およびその周辺を示すシステムブロック図
である。図1において、シナリオ開発環境1は、部品エ
ディタ3、HAシステム用部品ライブラリ5、構成エデ
ィタ7、HAシステム用シナリオ構成ファイル9、パラ
メータ項目エディタ11、コンパイラ13およびシミュ
レータ15とで構成される。
FIG. 1 is a system block diagram showing an operation scenario development environment of a distributed system according to the present invention and its periphery. In FIG. 1, a scenario development environment 1 includes a component editor 3, a component library 5 for an HA system, a configuration editor 7, a scenario configuration file 9 for an HA system, a parameter item editor 11, a compiler 13, and a simulator 15.

【0014】部品エディタ部品エディタ3は、シナリオ
を構成する部品をグラフィカルユーザインターフェース
(GUI)を用いて作成し、HAシステム用部品ライブ
ラリ5(以下、単にライブラリと呼ぶ場合もある)に登
録する。HAシステム用部品ライブラリ5は、(1)作
成した部品の名前空間を表現する木構造と(2)名前空
間に置かれる部品とで構成される。
The component editor The component editor 3 creates components constituting a scenario using a graphical user interface (GUI) and registers the components in an HA system component library 5 (hereinafter sometimes simply referred to as a library). The HA system component library 5 is composed of (1) a tree structure expressing the namespace of the created components and (2) components placed in the namespace.

【0015】部品エディタ3で作成するものは、シナリ
オテンプレートのロジックを構成する部品(ファンクシ
ョン)、および部品を登録する階層的名前空間(ライブ
ラリ)である。部品をHAシステム用部品ライブラリ5
に登録することにより、部品に名前がつけられる。HA
システム用部品ライブラリ5に登録する部品を構成する
基本的な部品には、原始的部品、Structure部品、およ
びリファレンス部品の3種類がある。HAシステム用部
品ライブラリ5に登録する部品は、その部品を構成する
部品間の接続、およびStructure部品を用いた階層構造
化により作成する。部品間を線で接続することにより、
接続された部品間の関連づけが行われる。線の接続は、
部品上にあるポート同士を結ぶことで行う。ポートの属
性には、方向とデータ型と名前がある。
The components created by the component editor 3 are components (functions) constituting the logic of the scenario template, and a hierarchical namespace (library) for registering the components. Parts library for HA system parts 5
By registering the part, a name is given to the part. HA
There are three types of basic components constituting the components registered in the system component library 5, a primitive component, a Structure component, and a reference component. The parts to be registered in the HA system parts library 5 are created by connecting the parts constituting the parts and by structuring a hierarchy using Structure parts. By connecting the parts with wires,
The association between the connected components is performed. The wire connections are
This is done by connecting the ports on the component. Port attributes include direction, data type, and name.

【0016】原始的部品は、あらかじめHAシステム用
部品ライブラリ5に登録されている部品であり、それ以
上分解できない最小単位の部品である。原始的部品は例
えば14種類あり、それぞれに機能が定義されている。
複数の原始的部品を接続することにより、目的の機能を
持つ部品を作成することができる。Structure部品は、
部品を階層的に構築するための部品である。Structure
部品はその内側に他の部品を置くことができる。複数の
Structure部品に同一の部品を置くことができる。Struc
ture部品に部品を置く場合、置かれた部品はハードリン
クであり、その部品の名前を変更しても、置かれている
部品は変わらない。Structure部品の外側の部品と内側
の部品は、Structure部品のポートを介して結ぶことが
できる。Structure部品の初期状態では、ポートは存在
せず、すべてのポートはユーザによって追加される。
A primitive component is a component registered in the HA system component library 5 in advance, and is a minimum unit component that cannot be further disassembled. There are, for example, 14 types of primitive parts, each of which has a defined function.
By connecting a plurality of primitive parts, a part having a desired function can be created. Structure parts
This is a component for constructing components hierarchically. Structure
A part can have other parts inside it. plural
The same part can be placed on the Structure part. Struc
When a part is placed on the ture part, the placed part is a hard link, and even if the name of the part is changed, the placed part does not change. The outer part and the inner part of the Structure part can be connected via the port of the Structure part. In the initial state of the Structure part, there are no ports, and all ports are added by the user.

【0017】リファレンス部品は、部品からエンティテ
ィを参照するための部品である。エンティティへの参照
は、シンボリックリンクであり、リファレンス部品は、
参照先のエンティティの名前を持つ。エンティティは、
シナリオテンプレートを構成するオブジェクトの実態を
表すものであり、エンティティエディタで作成される。
複雑な部品を作る場合は、まず、それを構成する簡単な
機能を持つ部品を作成してライブラリに登録し、それら
を使用して複雑な部品を作成してライブラリに登録する
ことができる。
The reference component is a component for referencing an entity from the component. References to entities are symbolic links, and reference parts are:
Contains the name of the referenced entity. The entity is
This represents the actual state of the objects that make up the scenario template, and is created by the entity editor.
In the case of making a complex part, first, a part having a simple function of constituting the part can be created and registered in a library, and a complex part can be created and registered in the library using them.

【0018】部品は、あらかじめ用意された原始的GU
I部品を組み合せて作成する。原始的GUI部品とは、
それ以上分割できない部品として定義される。
Parts are primitive GUs prepared in advance.
Created by combining I parts. Primitive GUI parts are
It is defined as a part that cannot be further divided.

【0019】図2に部品エディタ1のGUI画面17を
示す。GUI画面17は設計画面表示部19とメニュー
画面表示部21とから構成される。メニュー画面表示部
21には、プリミティブな部品群、AND、OR、サー
バの状態変化を通知する部品、BRANCH等があらか
じめ登録されている。オペレータは、上記いずれかの部
品を選択し、例えばマウスによりクリックすると、選択
された部品が設計画面表示部19に表示される。オペレ
ータは、選択した部品をマウスによりドラッグすること
により、設計画面表示部19上の任意の位置に移動する
ことができる。図2に示す例では、プリミティブな部品
としてANDおよびORが選択され、ANDの出力とO
Rの一方の入力とを接続した部品例が示されている。部
品同士の関連づけは、図3に示すようにポートの接続に
より行う。ポートには方向があり、方向にはIN(入
力)23とOUT(出力)25がある。ポート間の接続
は、OUTのポートとINのポート間でのみ可能であ
る。ポートにはデータ型があり、データ型には、bool
(図3(d))、 read(図3(b))、 write(図3
(c))、 event(図3(a))がある。boolは、真、
偽の値を取る。readは文字列の値を取る。writeは文字
列の値を取る。eventに値は無い。ポート間の接続は同
一のデータ型のポート間でのみ可能である。
FIG. 2 shows a GUI screen 17 of the component editor 1. The GUI screen 17 includes a design screen display unit 19 and a menu screen display unit 21. In the menu screen display unit 21, a primitive component group, AND, OR, a component for notifying a server status change, BRANCH, and the like are registered in advance. When the operator selects any of the above components and clicks with, for example, a mouse, the selected component is displayed on the design screen display unit 19. The operator can move the selected part to an arbitrary position on the design screen display unit 19 by dragging the selected part with a mouse. In the example shown in FIG. 2, AND and OR are selected as primitive components, and AND output and O
An example of components connected to one input of R is shown. The components are associated with each other by connecting ports as shown in FIG. A port has a direction, and there are IN (input) 23 and OUT (output) 25 in the direction. The connection between the ports is possible only between the OUT port and the IN port. The port has a data type and the data type is bool
(FIG. 3 (d)), read (FIG. 3 (b)), write (FIG. 3
(C)) and event (FIG. 3 (a)). bool is true,
Take a fake value. read takes a string value. write takes a string value. event has no value. Connection between ports is possible only between ports of the same data type.

【0020】分岐可能性は、ポートに複数の線を接続で
きるということをあらわす。分岐可能な時、0本以上の
線を接続することができる。0本接続するということ
は、接続していない状態を示す。分岐可能でないとき
は、かならず1本をポートに接続する。readの線はout
からinに向かって分岐可能である。(readのoutポート
は分岐可能である。)これは、何人が読み出してもよい
ということを表す。readのinポートは分岐可能でない。
The possibility of branching indicates that a plurality of wires can be connected to a port. When branching is possible, zero or more wires can be connected. The fact that no connection is made indicates a state where no connection is made. If not, always connect one to the port. read line is out
It is possible to branch from to in. (The out port of read can branch.) This indicates that any person can read. The read in port is not branchable.

【0021】boolの線は、outからinに向かって分岐可
能である。(boolのoutポートは分岐可能である。)こ
れは何人が読み出してもよいということを表す。boolの
inポートは分岐可能でない。
The bool line can branch from out to in. (The out port of the bool can branch.) This indicates that anyone can read the data. bool
The in port is not branchable.

【0022】writeの線はinからoutに向かって分岐可能
である。(writeのinポートは分岐可能である。)これ
は、何人が書き込んでもよいということを表す。write
のoutポートは、分岐可能でない。
The write line can branch from in to out. (The in port of write can be branched.) This indicates that anyone can write. write
Out port is not branchable.

【0023】eventの線は双方向に分岐可能である。つ
まり、双方向に相手がいるかいないか関知しない。複数
のレシーバがいる場合は、イベントがブロードキャスト
される。例えば、メモリパッケージには、readのoutとw
riteのinがポートとしてあり、これらのポートは、上の
定義から両方とも分岐可能である。
The event line can be bidirectionally branched. That is, it does not know whether or not there is a partner in both directions. If there are multiple receivers, the event is broadcast. For example, memory packages include read out and w
There are rite in as ports, and both of these ports can branch from the above definition.

【0024】イベントはある種のコンテキストを表して
いる。特にイベントによって動作の順序を定義する。す
なわち、ある部品はイベントを受けてから動作する。ま
た、ある部品は、動作を完了してからイベントを出力す
る。readとwriteに関してコヒーレンシは常に保たれ
る。すなわち、同一メモリに対する順序関係のあるwrit
eとreadの効果の順序は保証される。ここでの、writeと
readの順序関係とは、イベントによって順序付けられた
という意味である。イベントによる順序づけに関して
は、強い意味での推移律しか成立しない。すなわち、A
→B、A→C、C→Dならば、A→Dであるが、B→D
であるとは限らない。すなわち、イベントの線の接続が
コンテキストの継続を表していないことである。特にリ
ファレンスによりコンテキストをまたがった場合と、原
始的部品のDelayをまたがった場合は、そこでコンテキ
ストが中断する。
An event represents some kind of context. In particular, the order of operation is defined by events. That is, a part operates after receiving an event. Some components output an event after completing the operation. Coherency is always preserved for read and write. In other words, writ which has
The order of e and read effects is guaranteed. Where write and
The read order relation means that the order is determined by the event. Regarding the ordering by events, only the transition rule in a strong sense is established. That is, A
→ B, A → C, C → D, then A → D, but B → D
Is not always the case. That is, the connection of the event lines does not represent a continuation of the context. In particular, when a reference is crossed over a context, and when it crosses a delay of a primitive part, the context is interrupted there.

【0025】図3(a)に示すeventはAの部品の実行
後にOにイベントを出力することにより部品Bが実行可
能状態となる。Bより前にAが実行される。図3(b)
に示すreadは、部品Bの実行時にIから値(任意の文字
列)を読み込む。さらに、図3(c)に示すwriteは部
品Aの実行時にOから値(任意の文字列)を書き込む。
さらに、図3(d)に示すboolは部品Bの実行時に、I
から値(真または偽)を読み込む。
The event shown in FIG. 3A outputs an event to O after the execution of the part A, and the part B becomes executable. A is executed before B. FIG. 3 (b)
Read reads a value (arbitrary character string) from I when component B is executed. Further, write shown in FIG. 3C writes a value (arbitrary character string) from O when the component A is executed.
Further, the bool shown in FIG.
Read value (true or false) from.

【0026】図4および図5は、ライブラリにあらかじ
め登録されている原始的部品を示す。図4(a)は「Li
teral」部品であり、Oに定数を出力する。図4(b)
は、「memory」部品であり、Iが入力されると記憶し、
Oに記憶を出力する。図4(c)は「compare」部品で
あり、AとBが等しいときはQが真となり、等しくない
場合はQが偽となる。図4(d)は「selector」部品で
あり、Cが真のときはOにAを出力し、Cが偽のときは
OにBを出力する。図4(e)は「not」部品であり、
Cが真のときは、Qは偽となり、Cが偽のときはQが真
となる。図4(f)は、「AND」部品であり、Cまたは
Dが偽のときQは偽となり、CとDが真のときはQが真
となる。図4(g)は「OR」部品であり、CまたはDが
真のとき、Qは真となり、CとDが偽のとき、Qは偽と
なる。図4(h)は「assign」部品であり、Kが入力さ
れるとAをSへ出力する。そのあとFを出力する。図4
(i)は「branch」部品であり、Kが入力されたとき、
Cが真ならばFを出力する。図4(j)は「notify」部
品であり、Aで得られる値が変化したときにFを出力す
る。図4(k)は「Delay」部品であり、Kの入力を遅
延してFに出力する。図4(l)は、「DomainState」
部品であり、コンテキストの状態が変化したときにFに
イベントを出力する。Oにコンテキストの状態を出力す
る。さらに、図5(a)は、「Timer」部品であり、K
が入力されたときCが偽ならタイマをスタートし、タイ
ムアウト時にFにイベントを出力する。タイマスタート
してタイムアウトするまでにKが入力されCが真ならタ
イマをキャンセルし完了したらEにイベントを出力す
る。Aはタイムアウト値を表す。図5(b)は「proces
s」部品であり、Kが入力されたらプロセスを起動し、
成功すればFにイベントを出力し、失敗したらEにイベ
ントを出力する。なお、A1はカレントディレクトリ
を、A2は終了コードを、B0は実行ファイルパスを、
B1乃至B16はそれぞれ引数を表す。
FIGS. 4 and 5 show primitive parts registered in the library in advance. FIG. 4A shows “Li
teral "component, and outputs a constant to O. FIG. 4 (b)
Is a "memory" part, which stores when I is input,
Output the memory to O. FIG. 4 (c) shows a "compare" component. When A and B are equal, Q is true, and when they are not equal, Q is false. FIG. 4D shows a “selector” component, which outputs A to O when C is true, and outputs B to O when C is false. FIG. 4E shows a “not” part.
When C is true, Q becomes false, and when C is false, Q becomes true. FIG. 4 (f) shows an "AND" component, where Q is false when C or D is false, and Q is true when C and D are true. FIG. 4 (g) shows an "OR" component, where Q is true when C or D is true, and Q is false when C and D are false. FIG. 4H shows an “assign” component, which outputs A to S when K is input. After that, F is output. FIG.
(I) is a "branch" part, and when K is input,
If C is true, output F. FIG. 4 (j) shows a "notify" component, which outputs F when the value obtained by A changes. FIG. 4K shows a “Delay” component, which delays the input of K and outputs it to F. FIG. 4 (l) shows “DomainState”
It is a component and outputs an event to F when the state of the context changes. Output the context status to O. FIG. 5A shows a “Timer” component.
When C is false when is input, a timer is started, and an event is output to F when a timeout occurs. If K is input by the time the timer starts and time out, and if C is true, the timer is canceled and an event is output to E when it is completed. A represents a timeout value. FIG. 5B shows “proces
s "part, start the process when K is input,
If successful, an event is output to F; if unsuccessful, an event is output to E. A1 is the current directory, A2 is the end code, B0 is the executable file path,
B1 to B16 each represent an argument.

【0027】リファレンス部品により、シナリオ構成フ
ァイル中のエンティティを参照することができる。参照
は、シナリオ構成ファイル中のエンティティへのシンボ
リックリンク(名前による参照)である。参照先のエン
ティティ(の指す部品)によって、リファレンス部品の
機能が決定される。すなわち、図6に示す例では、サー
ビス1が3台のサーバで構成され、リファレンス部品
は、サーバ3のプロセス処理と関連づけられている。従
ってこの場合のリファレンス部品の機能はプロセスの実
行である。部品の中で実行されるコンテキストを変えた
い場合は、リファレンス部品を使用する。コンテキスト
は分散システムを構成する各サーバ、またはグローバル
コンテキストである。グローバルコンテキストは、すべ
てのサーバにまたがって存在する。実行されるコンテキ
ストは、部品の作成時には意識しない。コンテキストの
指定は、シナリオ構成ファイルのエンティティに対して
行われるため、部品中でコンテキストを変更するために
は、リファレンスを使用する。
An entity in the scenario configuration file can be referred to by the reference component. A reference is a symbolic link (reference by name) to an entity in the scenario configuration file. The function of the reference component is determined by (the component indicated by) the reference destination. That is, in the example illustrated in FIG. 6, the service 1 includes three servers, and the reference component is associated with the process processing of the server 3. Therefore, the function of the reference component in this case is to execute the process. If you want to change the context executed in the part, use a reference part. The context is each server constituting the distributed system or a global context. A global context exists across all servers. The context to be executed is not considered when creating the component. Since the context is specified for the entity in the scenario configuration file, the reference is used to change the context in the component.

【0028】図7および図8はリファレンス部品を表
す。リファレンス部品には下記の8種類がある。
FIGS. 7 and 8 show reference components. There are the following eight types of reference parts.

【0029】 1.Reference部品 2.AbsoluteReference部品 3.ButtonReference部品 4.ButtonAbsoluteReference部品 5.MonitorReference部品 6.MonitorAbsoluteReference部品 7.ConstantReference部品 8.ConstantAbsoluteReference部品 Reference部品は、図7(a)に示すように、エンティ
ティに対する相対パスをもつ汎用のリファレンスであ
る。相対パスはそのリファレンス部品の置かれている部
品を指すエンティティの置かれているディレクトリから
の相対パスである。リファレンス部品は、初期状態で
は、ポートは存在せず、参照先のエンティティの指す部
品のポート構成に合わせてポートを作成しなければなら
ない。
[0029] 1. Reference parts 2. AbsoluteReference parts 3. ButtonReference component 4. ButtonAbsoluteReference part5. MonitorReference parts 6. 6. MonitorAbsoluteReference part 7. ConstantReference parts ConstantAbsoluteReference component The Reference component is a general-purpose reference having a relative path to an entity, as shown in FIG. The relative path is a relative path from the directory where the entity indicating the component where the reference component is located is located. In the initial state, the reference component has no port, and a port must be created in accordance with the port configuration of the component indicated by the reference destination entity.

【0030】AbsoluteReference部品は、図7(b)に
示すように、エンティティに対する絶対パスをもつ汎用
のリファレンス部品である。絶対パスは、ディレクトリ
のrootからのパスである。AbsoluteReference部品は、
初期状態では、ポートは存在せず、参照先のエンティテ
ィの指す部品のポート構成に合わせてポートを作成しな
ければならない。
The AbsoluteReference component is a general-purpose reference component having an absolute path to an entity, as shown in FIG. The absolute path is the path from the root of the directory. AbsoluteReference parts are
In the initial state, no port exists, and a port must be created in accordance with the port configuration of the component indicated by the referenced entity.

【0031】ButtonReferenceは、Buttonエンティティ
専用のリファレンスであり、Buttonエンティティに対し
て相対パスで参照する。ButtonReferenceのポートは固
定であり、図8(a)に示すようなポート構成となって
いる。図8(a)に示すポート構成は、運用ツールでボ
タンが押されたときに、Eにイベントを出力する。
The ButtonReference is a reference dedicated to the Button entity, and refers to the Button entity by a relative path. The ButtonReference port is fixed, and has a port configuration as shown in FIG. The port configuration shown in FIG. 8A outputs an event to E when a button is pressed with the operation tool.

【0032】ButtonAbsoluteReferenceは、Buttonエン
ティティ専用のリファレンスであり、Buttonエンティテ
ィに対して絶対パスで参照する。ButtonAbsoluteRefere
nceのポートは固定であり、図8(a)に示すようなポ
ート構成になっている。
The ButtonAbsoluteReference is a reference dedicated to the Button entity, and refers to the Button entity by an absolute path. ButtonAbsoluteRefere
The nce port is fixed, and has a port configuration as shown in FIG.

【0033】MonitorReferenceは、Monitorエンティテ
ィ専用のリファレンスであり、Monitorエンティティに
対して相対パスで参照する。MonitorReferenceのポート
は固定であり、図8(b)に示すようなポート構成とな
っている。図8(b)に示すポート構成は、Iで得られ
る値を運用ツール上で表示する。
The MonitorReference is a reference dedicated to the Monitor entity, and refers to the Monitor entity by a relative path. The port of MonitorReference is fixed, and has a port configuration as shown in FIG. The port configuration shown in FIG. 8B displays the value obtained by I on the operation tool.

【0034】ConstantReferenceは、Constantエンティ
ティ専用のリファレンスであり、Constantエンティティ
に対して相対パスで参照する。ConstantReferenceのポ
ートは固定であり、図8(c)に示すようなポート構成
となっている。図8(c)に示すポート構成はOに定数
が出力される。
The ConstantReference is a reference dedicated to the Constant entity, and refers to the Constant entity by a relative path. The port of the ConstantReference is fixed, and has a port configuration as shown in FIG. In the port configuration shown in FIG. 8C, a constant is output to O.

【0035】ConstantAbsoluteReferenceは、Constant
エンティティ専用のリファレンスであり、Constantエン
ティティに対して絶対パスで参照する。ConstantAbsolu
teReferenceのポートは固定であり、図8(c)に示す
ようなポート構成になっている。
ConstantAbsoluteReference is Constant
This is an entity-specific reference, and refers to the Constant entity with an absolute path. ConstantAbsolu
The port of teReference is fixed, and has a port configuration as shown in FIG.

【0036】Structure部品は、部品を階層的に構築す
るための部品である。Structure部品は、その中に部品
を置くことができる。Structure部品の外の部品と、Str
uctureの中の部品は、そのStructure部品のポートを介
して接続される。Structure部品のポートは、図9
(a)に示すように内側と外側に分けられ、内側と外側
のポートの方向は逆である。すなわち、ポートAは、外
側から見るとINポートであり、内側から見るとOUT
ポートである。また、ポートBは、外側から見るとOU
Tポートであり、内側から見るとINポートである。
Structure components are components for constructing components hierarchically. Structure parts can have parts in them. Parts outside the Structure part and Str
The components in the structure are connected via the ports of the structure component. Fig. 9
As shown in (a), the inner and outer ports are divided, and the directions of the inner and outer ports are opposite. That is, port A is an IN port when viewed from the outside, and is an OUT port when viewed from the inside.
Port. Port B is OU when viewed from the outside.
It is a T port and an IN port when viewed from the inside.

【0037】event型のポートは、IN、OUTともに
分岐可能である。Structure部品のポートの場合、図9
(b)に示すように、外側との接続、内側との接続とも
に分岐可能である。
The event type port can branch both IN and OUT. Fig. 9 for Structure part port
As shown in (b), the connection to the outside and the connection to the inside can be branched.

【0038】read型およびbool型のポートは、OUTか
らINに向かって分岐可能であり、INからOUTへは
分岐可能でない。Structure部品のポートの場合、図9
(c)に示すように、外側のOUTと内側のOUTが分
岐可能であり、外側のINと内側のINが分岐可能でな
い。
The read type and bool type ports can branch from OUT to IN, but not from IN to OUT. Fig. 9 for Structure part port
As shown in (c), the outer OUT and the inner OUT can branch, and the outer IN and the inner IN cannot branch.

【0039】write型のポートは、INからOUTに向
かって分岐可能であり、OUTからINへは分岐可能で
ない。Structure部品のポートの場合、図9(d)に示
すように外側のINと内側のINが分岐可能であり、外
側のOUTと内側のOUTが分岐可能でない。
A write-type port can branch from IN to OUT, but cannot branch from OUT to IN. In the case of a port of a Structure part, as shown in FIG. 9D, the outer IN and the inner IN can branch, and the outer OUT and the inner OUT cannot branch.

【0040】Structure部品にはアトミック属性を指定
することができる。アトミック属性は、部品の実行の順
序に影響を与える属性であり、Structure部品にアトミ
ック属性を指定すると、そのStructure部品は、1つの
原始的部品のようにアトミックに実行される。すなわ
ち、アトミック属性を指定されたStructure部品にイベ
ントが入力されて、Structure部品内部の複数の部品が
実行され、最終的にStructure部品からイベントが出力
される場合、イベントが入力されてから出力されるまで
は、そのStructure部品の外部の部品は実行されない。
例として、図10および図11の部品A、B、C、X、
Y、Zの実行順序を考える。図中の部品間の接続は、す
べてイベントであるとする。
Atomic attributes can be specified for Structure components. The atomic attribute is an attribute that affects the order of execution of components. When an atomic attribute is specified for a Structure component, the Structure component is executed atomically like one primitive component. In other words, when an event is input to a Structure component having an atomic attribute specified, a plurality of components inside the Structure component are executed, and finally, when the event is output from the Structure component, the event is input and then output. Until then, components outside the Structure component are not executed.
As an example, the parts A, B, C, X,
Consider the execution order of Y and Z. Assume that all connections between components in the figure are events.

【0041】図10(a)では、実行順序は、A→B→
CおよびX→Y→Zである。この接続で規定されるの
は、A、B、C値の実行順序とX、Y、Z間の実行順序
だけである。A、B、Cの各部品とX、Y、Zの各部品
間の実行順序は規定されない。すなわち、A→B→C→
X→Y→Zのように、A、B、Cの列が終わってから
X、Y、Zの列が実行されるかも知れないし、A→X→
B→Y→C→Zのように、A、B、Cの列とX、Y、Z
の列が混ざり合って実行されるかも知れない。
In FIG. 10A, the execution order is A → B →
C and X → Y → Z. This connection defines only the execution order of the A, B, and C values and the execution order between X, Y, and Z. The execution order between the components A, B, and C and the components X, Y, and Z is not specified. That is, A → B → C →
Like the sequence of X → Y → Z, the sequence of X, Y, Z may be executed after the sequence of A, B, C ends, or the sequence of A → X →
A, B, C columns and X, Y, Z, such as B → Y → C → Z
May be mixed and executed.

【0042】図10(b)では、A、B、Cがアトミッ
ク属性を指定されたStructure S2の中に入っている。こ
の場合、A→B→Cの実行の列は分解されないので、A
→X→B→Y→C→Zのように、A、B、Cの実行の間
に別の部品の実行が入り込むことは無い。
In FIG. 10B, A, B, and C are included in Structure S2 in which the atomic attribute is specified. In this case, the sequence of execution of A → B → C is not decomposed, so that A
As in the case of → X → B → Y → C → Z, execution of another component does not enter during the execution of A, B and C.

【0043】さらに、図11に示すように、アトミック
属性をもつStructureが入れ子構造になってもよい。こ
の場合は、Structure S2の中の部品の実行の列は分解さ
れないし、Structure S1の中の部品の実行の列も分解さ
れない。
Further, as shown in FIG. 11, Structures having an atomic attribute may have a nested structure. In this case, the sequence of execution of the components in Structure S2 is not decomposed, and the sequence of execution of the components in Structure S1 is not decomposed.

【0044】アトミック属性もつStructureは下記の条
件を満たさなければならない。
A structure having an atomic attribute must satisfy the following conditions.

【0045】(1)アトミックなStructureには、2つ
のイベントINポートがあってはならない。
(1) An atomic structure must not have two event IN ports.

【0046】(2)アトミックなStructure内のロジッ
ク部品は、そのアトミックなStructureの外から参照さ
れてはならない。すなわち、アトミック属性をもつStru
ctureの中にリファレンスがあり、そのリファレンスの
参照先のエンティティが指す部品中にロジック部品が含
まれる場合、そのエンティティがアトミック指定をした
Structureの外部から参照されてはならない。ロジック
部品とは、Assign、 Branch、 Notify、 Delay、 Time
r、 Processの各原始的部品である。
(2) A logic component in an atomic structure must not be referenced from outside the atomic structure. In other words, Stru with atomic attribute
If there is a reference in the cture and the component pointed to by the reference contains a logic component, the entity specified atomic
Must not be referenced outside of Structure. Logic components are Assign, Branch, Notify, Delay, Time
r, each primitive part of Process.

【0047】また、上記エンティティがButtonの場合に
も、アトミック指定をしたStructureの外部から参照さ
れていてはならない。
Also, even when the above-mentioned entity is a Button, it must not be referenced from outside the Structure that has been specified atomically.

【0048】図12に示す例では、Atomic Structure
が、アトミック指定されたStructureであり、その中の
リファレンスReference1をたどった先に、ロジック部品
であるAssign1が存在する。そのAssign1を含むStructur
e3を指すEntity3は、Atomic Structureの外部のリファ
レンスReference3から参照されているため条件を満たさ
ない。
In the example shown in FIG.
Is an atomically designated Structure, and Assign1 which is a logic component exists before following Reference 1 in the Structure. Structur containing its Assign1
Entity3 that points to e3 does not satisfy the condition because it is referenced from Reference3 outside the Atomic Structure.

【0049】(3)アトミックなStructure内の部品
は、同一のコンテキスト内になければならない。すなわ
ち、アトミックなStructure内のすべての部品およびエ
ンティティは、同一コンテキストに属さなければならな
い。アトミックなStructure内にリファレンスが存在す
る場合は、そのリファレンスの参照先をたどったすべて
の部品が同一のコンテキストに属さなければならない。
(3) Parts in an atomic structure must be in the same context. That is, all parts and entities in an atomic Structure must belong to the same context. If a reference exists in an atomic structure, all components following the reference must belong to the same context.

【0050】図12(b)の例では、Atomic Structure
が、アトミック指定されたStructureであり、そのコン
テキストは、cpu1である。Atomic Structure1の中
のリファレンスReference1をたどるとcpu1と異なる
コンテキストであるcpu2をもつエンティティEntity
3が存在するため条件を満たさない。
In the example of FIG. 12B, the Atomic Structure
Is an atomically designated Structure, and its context is cpu1. Following Reference1 in Atomic Structure1, Entity with cpu2 which is a different context from cpu1
The condition is not satisfied because 3 exists.

【0051】(4)アトミックなStructure内に、イベ
ントのループがあってはならない。イベントのループ
は、リファレンスを介している場合も含む。
(4) There must be no event loop in the atomic structure. The event loop includes the case where the event is performed via the reference.

【0052】構成エディタ 構成エディタ7で作成するシナリオ構成ファイルは
(1)シナリオ構成ファイル9に対応するシナリオ部品
ライブラリの名前と(2)システムの構成を表現する、
木構造の名前空間の要素で構成される。名前空間の木構
造をGUIでコピーすることで簡単にシステム構成を変
更することができる。例えば、図13に示すように3台
のサーバからなる分散システム用のシナリオのserver3
の部分木をコピーしてserver4とし4台のサーバからな
る分散システム用のシナリオを簡単に作成できる。
Configuration Editor The scenario configuration file created by the configuration editor 7 represents (1) the name of the scenario parts library corresponding to the scenario configuration file 9 and (2) the system configuration.
It is composed of elements of a tree-structured namespace. By copying the tree structure of the name space with the GUI, the system configuration can be easily changed. For example, as shown in FIG. 13, server3 of a scenario for a distributed system composed of three servers.
Can be easily copied to server4 to create a scenario for a distributed system consisting of four servers.

【0053】構成エディタ7は、システムの構成および
システムの動作に依存する要素を編集するエディタであ
り、シナリオテンプレートを構成するオブジェクトの実
体を表すエンティティ、およびエンティティを登録する
階層的名前空間(ディレクトリ)を作成する。ディレク
トリの名前空間の構造は、シナリオテンプレートの構成
(サーバの数、サービスの数、サービス中のプロセスの
数など)を表現する。
The configuration editor 7 is an editor for editing an element depending on the configuration of the system and the operation of the system. The configuration editor 7 is an entity representing the entity of the object constituting the scenario template, and a hierarchical namespace (directory) for registering the entity. Create The structure of the namespace of the directory expresses the configuration of the scenario template (the number of servers, the number of services, the number of processes in service, and the like).

【0054】1つのディレクトリには、1つのライブラ
リが対応づけられる。ディレクトリに登録されているエ
ンティティは、対応づけられたライブラリ中の部品への
シンボリックリンク(その部品の、ライブラリ中の名
前)をもつ。従って、ディレクトリに対応させるライブ
ラリを入れ替えると、そのエンティティの指す部品も別
のものとなり、別の機能を持つことになる。
One directory is associated with one library. The entity registered in the directory has a symbolic link to the component in the library (the name of the component in the library) associated with the entity. Therefore, when the library corresponding to the directory is replaced, the component indicated by the entity becomes different, and has another function.

【0055】エンティティには、部品エンティティ、コ
ンスタントエンティティ、ボタンエンティティ、モニタ
エンティティの4種類がある。
There are four types of entities: a component entity, a constant entity, a button entity, and a monitor entity.

【0056】部品エンティティは、そのエンティティの
登録されているディレクトリに対応づけられたライブラ
リ中の部品に対するシンボリックリンク(ライブラリ中
の名前)を1つもつ。部品エンティティは、シナリオテ
ンプレートを構成するオブジェクトの実体であり、その
機能は、それが指す部品で決定される。複数の部品エン
ティティが、同一の部品に対するシンボリックリンクを
もつ場合もあり、その場合は、それらの部品エンティテ
ィは、同じ機能をもつが別の実体となる。
The component entity has one symbolic link (name in the library) to the component in the library associated with the directory in which the component is registered. A component entity is an entity of an object constituting a scenario template, and its function is determined by a component indicated by the component. A plurality of component entities may have symbolic links to the same component, in which case those component entities have the same function but are different entities.

【0057】コンスタントエンティティ、ボタンエンテ
ィティ、モニタエンティティはエンティティのみで機能
が決定され、部品には対応しない。
The functions of the constant entity, button entity, and monitor entity are determined only by the entities, and do not correspond to components.

【0058】コンスタントエンティティは、定数の実体
である。定数の値は、構成エディタで設定するか、HA
システム用シナリオ構成ファイルに設定された値を使用
する。HAシステム用シナリオ構成ファイルに設定され
た値を使用するためには、パラメータ項目エディタで、
コンスタントエンティティと、HAシステム用シナリオ
構成ファイル中の設定項目を対応づける。コンスタント
エンティティをライブラリから参照する場合は、Cosnta
ntReferenceまたはConstantAbsoluteReferenceの各リフ
ァレンスを使用する。
A constant entity is an entity of a constant. The value of the constant can be set in the configuration editor or
Use the value set in the system scenario configuration file. To use the value set in the HA system scenario configuration file, use the parameter item editor
The constant entity is associated with the setting items in the HA system scenario configuration file. If you want to reference a constant entity from the library, use Cosnta
Use ntReference or ConstantAbsoluteReference.

【0059】ボタンエンティティは、運用管理ツールの
ボタンに対応する。ボタンエンティティに対応するボタ
ンを運用管理ツール上に表示するためには、パラメータ
項目エディタで、ボタンエンティティと、HAシステム
用シナリオ構成ファイル中のボタンの定義を対応付け
る。ボタンエンティティをライブラリから参照する場合
は、ButtonReference、 ButtonAbsoluteReferenceの各
リファレンスを使用する。
The button entity corresponds to a button of the operation management tool. In order to display the button corresponding to the button entity on the operation management tool, the button item is associated with the definition of the button in the HA system scenario configuration file using the parameter item editor. When referencing the button entity from the library, use the ButtonReference and ButtonAbsoluteReference references.

【0060】モニタエンティティは、運用管理ツールの
状態変数表示ラベルに対応する。モニタエンティティに
対応する状態変数表示ラベルを運用管理ツール上に表示
するためには、パラメータ項目エディタで、モニタエン
ティティと、HAシステム用シナリオ構成ファイル中の
表示レベルの定義を対応づける。モニタエンティティ
を、ライブラリから参照する場合は、MonitoReferenc
e、 MonitorAbsoluteReferenceの各リファレンスを使用
する。
The monitor entity corresponds to the state variable display label of the operation management tool. In order to display the state variable display label corresponding to the monitor entity on the operation management tool, the monitor entity is associated with the display level definition in the HA system scenario configuration file using the parameter item editor. If you want to reference the monitor entity from the library, use MonitoReferenc
e, Use each reference of MonitorAbsoluteReference.

【0061】エンティティにはコンテキストを指定す
る。コンテキストは、cpu1、cpu2、cpu3、
cpu4、globalのいずれかであり、そのエンテ
ィティが実行されるコンテキストを表す。cpu1乃至
cpu4は、各サーバのローカルコンテキストであり、
globalは同期コンテキストである。cpu1乃至
cpu4と実際のサーバの対応づけは、パラメータ項目
エディタで行われる。
A context is specified for an entity. The contexts are cpu1, cpu2, cpu3,
Either cpu4 or global, and represents the context in which the entity is executed. cpu1 to cpu4 are local contexts of each server,
global is the synchronization context. The correspondence between cpu1 to cpu4 and the actual server is performed by the parameter item editor.

【0062】ライブラリ中では、部品がどのコンテキス
トで実行されるかは指定されない。部品間の接続が、コ
ンテキストをまたぐようにするためには少なくともどち
らか一方の部品を、リファレンスとし、そのリファレン
スの参照先のエンティティのコンテキストを適切に指定
する必要がある。
In the library, the context in which the component is executed is not specified. In order for the connection between the components to cross the context, it is necessary to use at least one of the components as a reference and appropriately specify the context of the entity referred to by the reference.

【0063】名前空間の部分木をファイルに保存し別の
シナリオ構成ファイルで利用することができる。また、
シナリオ構成ファイルに対応づけたライブラリファイル
中のリファレンスが参照しているエンティティの名前を
自動的に生成する機能をもつ。これにより、必要なエン
ティティの作成をもれなくすることができる。
The subtree of the namespace can be stored in a file and used in another scenario configuration file. Also,
It has a function to automatically generate the name of the entity referenced by the reference in the library file associated with the scenario configuration file. This makes it possible to omit creation of necessary entities.

【0064】パラメータ項目エディタ パラメータ項目エディタ11は、実運用するシステムに
依存するパラメータの設定項目の設計および実運用する
システムで操作するボタンやモニタする項目の設計を行
う。これらの設計はスロット方式を用いて行う。スロッ
ト方式の詳細は、同一出願人により出願された特願平9
−307131に記載されている。
Parameter Item Editor The parameter item editor 11 designs the setting items of the parameters depending on the system to be actually operated and the buttons to be operated in the system to be actually operated and the items to be monitored. These designs are performed using a slot method. For details of the slot system, see Japanese Patent Application No.
307131.

【0065】設定項目は下記のパスで特定される。The setting items are specified by the following paths.

【0066】 種別/対象/名称 種別/対象/プロパティ名/項目 種別/対象/コネクション名/サーバ/項目 上記パスにおいて、「対象」は、システムで使われてい
る装置の種類(例えばサーバ、ディスク、LAN等)を
表す。「種別」は例えばサーバやディスクの名前を指定
する。「名称」は行の名前を表す。例えば、「名称」が
「name」と記載されていれば、その行は名前を表す行で
あることを示す。また、「property」と記載されていれ
ば、その行が属性の行であることを表す。「プロパティ
名」は例えば、装置の種類がLANであれば、IPアド
レス名を記載し、「項目」には実際のIPアドレスを記
載する。また、「コネクション名」はサーバと装置で決
定される属性を表す。従って、コネクション/サーバ/
項目は例えば、あるLANのあるサーバに接続されてい
るIPアドレスを表す。
Type / target / name Type / target / property name / item Type / target / connection name / server / item In the above path, “target” indicates the type of device used in the system (for example, server, disk, LAN, etc.). “Type” designates, for example, the name of a server or a disk. "Name" represents the name of the row. For example, if "name" is described as "name", it indicates that the line is a line representing a name. If "property" is described, it indicates that the line is an attribute line. For the “property name”, for example, if the type of device is LAN, the IP address name is described, and the “item” describes the actual IP address. The “connection name” indicates an attribute determined by the server and the device. Therefore, connection / server /
The item indicates, for example, an IP address connected to a certain server on a certain LAN.

【0067】上記設定項目のパスはGUIツールを用い
て作成される。設定項目に対応する構成ファイル9中の
構成データを指定リンクする。(エンティティは対象構
成データのパスをGUIで指定する)。指定時に表示す
る対象の構成データのタイプはコンスタントエンティテ
ィに対応付ける。(エラーチェック/表示)設定属性の
指定としては、タイプの指定(文字列、数値等)、デフ
ォルト値の指定、設定タイプの指定(表示のみ、必須項
目等)、入力タイプの指定(文字入力/項目選択)、範
囲の指定(文字入力時)(例えば、数値が入力される場
合に、数値の範囲を限定する)、選択項目の指定(項目
選択時)がある。
The path of the setting item is created by using a GUI tool. The configuration data in the configuration file 9 corresponding to the setting item is designated and linked. (The entity specifies the path of the target configuration data in the GUI.) The type of configuration data to be displayed at the time of designation is associated with a constant entity. (Error check / display) Setting attributes are specified as type (character string, numeric value, etc.), default value, setting type (display only, required item, etc.), input type (character input / Item selection), range specification (when characters are input) (for example, when a numerical value is input, the range of numerical values is limited), and specification of a selection item (when an item is selected).

【0068】運用情報は下記のパスで特定される。The operation information is specified by the following path.

【0069】 種別/対象/コネクション/サーバ/項目 種別/対象/コネクション/サーバ/項目 この場合の種別は「モニタ」あるいは「ボタン」であ
る。これらの運用情報のパスはGUIツールを用いて作
成する。運用情報のリンクは運用情報に対応する構成デ
ータを指定してリンクする。エンティティは対象構成デ
ータのパスをGUIで指定する。
Type / Target / Connection / Server / Item Type / Target / Connection / Server / Item The type in this case is “monitor” or “button”. These operation information paths are created using a GUI tool. The link of the operation information specifies and links the configuration data corresponding to the operation information. The entity specifies the path of the target configuration data in the GUI.

【0070】 モニタ−モニタ・構成データ ボタン−ボタン・構成データ 本ツールで作成したデータをコンパイラ13に渡し分散
オブジェクトの制御シナリオのスロットとフレームを作
成する。
Monitor-Monitor / Configuration Data Button-Button / Configuration Data The data created by this tool is passed to the compiler 13 to create slots and frames for the control scenario of the distributed object.

【0071】なお、構成データのパスの付け方はあらか
じめ決められているので、(スロットファイルの記述ル
ールに従って)構成データのパスから種別、対象、項
目、サーバを自動生成することができる。また、所定の
ルールに従って配置されている構成データのコンスタン
ト、モニタ、ボタンから自動的に、設定項目/運用情報
のパスを作成し、対象の構成データをリンクすることが
できる。
Since the path of the configuration data is determined in advance, the type, target, item, and server can be automatically generated from the configuration data path (according to the slot file description rules). Also, a path for setting item / operation information can be automatically created from the constant, monitor, and button of the configuration data arranged according to a predetermined rule, and the target configuration data can be linked.

【0072】以下、ライブラリ、ディレクトリの作成例
を示す。例として、2台系のシナリオのサービス開始処
理の部分を作成する。
The following is an example of creating a library and a directory. As an example, a service start process part of a two-unit scenario is created.

【0073】ここでは、2台系用のサービス開始処理を
1つの部品(SevericeStart2Cpu)として作成する。この
部品は、あるサービスに対してサービス開始ボタンが押
されたときに、サービスの起動を行う。作成するサービ
ス開始部品のトップレベルの構造を図14に示す。
Here, the service start processing for two systems is created as one component (SevericeStart2Cpu). This component activates a service when a service start button is pressed for a service. FIG. 14 shows the top-level structure of the service start component to be created.

【0074】サービス開始ボタン(Start Button)が押
されると、Start Checkが実行される。Start Checkで
は、サービスを構成するプロセスを起動し、起動に成功
すれば、Complete Action を実行し、起動に失敗すれ
ば、Fail Actionを実行する。
When the service start button (Start Button) is pressed, Start Check is executed. In the Start Check, the processes that make up the service are started, and if the start is successful, the Complete Action is executed. If the start is failed, the Fail Action is executed.

【0075】次に、このサービス開始部品の各構成要素
の詳細を作成する。
Next, details of each component of the service start component are created.

【0076】 Start Button Start Buttonは、cpu1用、cpu2用ともに運用ツ
ール上の開始ボタンに対応するので、Buttonエンティテ
ィを指すButtonリファレンスとする。Start Buttonが実
行されるコンテキストは、ローカルコンテキストである
必要がある。コンテキストの指定はエンティティで行
う。
Start Button The Start Button corresponds to the start button on the operation tool for both cpu1 and cpu2, and is therefore a Button reference indicating a Button entity. The context in which the Start Button is executed must be a local context. The context is specified by the entity.

【0077】 Start Check cpu1用のStart Checkは、図15のように作成でき
る。まず、Start Checkにeventが入力されると、原始的
部品Branchにeventが入力される。原始的部品branchで
は、自サーバのサービス状態(GROUP_STATE(cpu1))をチ
ェックし、組み込み状態(IN)であれば、eventを出力す
る。Check Another Server's Stateは、他のサーバでサ
ービスが実行中かどうかをチェックし、他サーバで実行
中でなければ、eventを出力する。チェックは、GROUP_S
TATE(cpu2)の値を調べることで行う。Check Another Se
rver's Stateの詳細な構造の説明は省略する。原始的部
品Assignは、GROUP STATE(cpu1)にSTARTを代入する。c
pu2用のStart Checkの構造も同様である。cpu1用と
異なるのは、GROUP STATE(cpu1)がGROUP_STATE(cpu2)と
なり、GROUP_STATE(cpu2)がGROUP_STATE(cpu1)となるこ
とである。
Start Check A Start Check for cpu1 can be created as shown in FIG. First, when an event is input to Start Check, an event is input to the primitive component Branch. The primitive component branch checks the service state (GROUP_STATE (cpu1)) of the own server, and outputs an event if the service state is the built-in state (IN). Check Another Server's State checks whether the service is running on another server and outputs an event if it is not running on another server. Check GROUP_S
This is done by checking the value of TATE (cpu2). Check Another Se
A detailed description of the structure of rver's state is omitted. The primitive part Assign assigns START to GROUP STATE (cpu1). c
The same applies to the structure of Start Check for pu2. The difference from cpu1 is that GROUP STATE (cpu1) becomes GROUP_STATE (cpu2) and GROUP_STATE (cpu2) becomes GROUP_STATE (cpu1).

【0078】ここで、GROUP_STATE(cpu1)とGROUP_STATE
(cpu2)は、Start Check(cpu1)とStartCheck(cpu2)の両
方で使用される。GROUP_STATE(cpu1)およびGROUP_STATE
(cpu2)は、それぞれ実体は1でなければならないのでリ
ファレンスとする。GROUP STATEの参照先エンティティ
の指す部品(GroupState)は図16に示すように原始的部
品Memoryを使用して作成できる。GroupStateでは、表示
のためにMonitorリファレンスを使用している。Start C
heckは、名前をつけてライブラリに登録することもでき
るが、ここでは、名前のないStructureとして、Service
Start2Cpu部品中に直接置く。Start Check内のCheck An
other Server's Stateも、名前のないStructureとし、S
tart Check中に直接置く。Start Check中のすべての部
品のコンテキストは、同期コンテキストである必要があ
る。
Here, GROUP_STATE (cpu1) and GROUP_STATE
(cpu2) is used in both Start Check (cpu1) and StartCheck (cpu2). GROUP_STATE (cpu1) and GROUP_STATE
(cpu2) is used as a reference because each entity must be 1. The part (GroupState) indicated by the reference destination entity of the GROUP STATE can be created using the primitive part Memory as shown in FIG. GroupState uses Monitor references for display. Start C
Although heck can be registered in the library with a name, here, as an unnamed Structure, Service
Put directly in Start2Cpu part. Check An in Start Check
other Server's State is also an unnamed Structure and S
Place directly during tart check. The contexts of all components during Start Check need to be synchronous contexts.

【0079】 Execute Processes Execute Processesは、複数のプロセスを実行する部品
である。実行するプロセスの数は、シナリオによって異
なるので、部品の組合わせによって任意の数のプロセス
を実行できることが望ましい。ここでは1つのeventIN
ポートと2つのeventOUTポートをもつ2つの部品を用意
する。(図17参照) 出力ポートcompleteは、プロセス起動に成功した場合
に、eventが出力され、failは、このタイプの部品をPro
cedureと呼ぶことにする。
Execute Processes Execute Processes is a component that executes a plurality of processes. Since the number of processes to be executed differs depending on the scenario, it is desirable that an arbitrary number of processes can be executed by combining parts. Here is one eventIN
Prepare two parts with ports and two eventOUT ports. (See Fig. 17) The output port complete outputs an event when the process is successfully started, and fail outputs this type of component
I will call it cedure.

【0080】(a)OneProcessProcedureは、1つのプ
ロセスを実行する部品で、内部で原始的部品Processを
実行する。Processへの入力は、実行ファイルのパス(Pa
th)のみ指定可能とし、カレントディレクトリは、"/"、
その他の入力は0で固定とする。Pathは、指定可能とす
るためにConstantリファレンスとする。
(A) OneProcessProcedure is a component that executes one process, and internally executes a primitive component Process. Input to Process is the path of executable file (Pa
th) can be specified, and the current directory is "/",
Other inputs are fixed at 0. Path is a Constant reference so that it can be specified.

【0081】(b)TwoProcduresProcedureは、2つのP
rocedureを実行する部品で、P1およびP2に、OnePro
cessProcedureまたは、TwoProceduresProcedureを置
く。再帰的な構造を取ることにより、任意の数のプロセ
スを実行できる。P1およびP2は2つのタイプのProc
edureを指定可能とするためにReferenceとする。OnePro
cessProcedureとTwoProceduresProcedureは、汎用的に
使用可能なのでライブラリに登録する。Execute Proces
sesは、2つのタイプのProcedureを指定可能とするため
にReferenceとする。Execute Processesが実行されるコ
ンテキストは、ローカルコンテキストである必要があ
る。
(B) TwoProcduresProcedure consists of two P
Parts that execute rocedure. OnePro for P1 and P2
Put cessProcedure or TwoProceduresProcedure. By taking a recursive structure, any number of processes can be performed. P1 and P2 are two types of Proc
Set to Reference so that edure can be specified. OnePro
Since cessProcedure and TwoProceduresProcedure can be used for general purposes, register them in the library. Execute Proces
ses is a Reference so that two types of Procedures can be specified. The context in which Execute Processes is executed must be a local context.

【0082】 Complete Action、 Fail Action 図18および図19に示すように、Complete Action、
Fail Actionは、単純にGROUP_STATEに状態を代入するの
みとする。図中のGROUP_STATEは、Start Check中のもの
と同じ実体を指す必要があるためリファレンスとする。
Complete ActionおよびFail Actionは名前のないStruct
ureとしServiceStart2Cpuに直接置く。Complete Action
およびFail Actionが実行されるコンテキストは、同期
コンテキストでなければならない。
Complete Action, Fail Action As shown in FIG. 18 and FIG.
Fail Action simply assigns a state to GROUP_STATE. The GROUP_STATE in the figure needs to refer to the same entity as that in the Start Check, so it is used as a reference.
Complete Action and Fail Action are unnamed Struct
ure and put directly on ServiceStart2Cpu. Complete Action
The context in which the Fail Action is executed must be a synchronization context.

【0083】StartCheckは、cpu1用とcpu2用があり、ど
ちらも同期コンテキストで実行される。また、Start Ch
eck(cpu1)とStart Check(cpu2)は、どちらもGROUP_STAT
Eを参照し、GROUP_STATEへ代入する。
StartCheck is for cpu1 and cpu2, and both are executed in a synchronous context. Also, Start Ch
eck (cpu1) and Start Check (cpu2) are both GROUP_STAT
Refer to E and assign to GROUP_STATE.

【0084】Start Check(cpu1)とStart Check(cpu2)と
GROUP_STATEの関係がわかりやすいように記述したもの
を図20に示す。図中の(A)、(B)、(C)、
(X)、(Y)、(Z)の実行順序を考える。これらの
部品の実行順序に関して、eventの線の接続関係によ
り)規定されるのは、(A)→(B)→(C)という順
序と、(X)→(Y)→(Z)という順序のみである。
全体としては、例えば、(A)→(B)→(X)→
(Y)→(C)→(Z)という順序となる可能性ががあ
る。この場合2つのGROUP STATEの値がともにINな
ら、(c)と(Z)の両方が実行され、cpu1とcpu2の両
方で同じサービスが開始されてしまうことになる。この
ような場合には、Start Check Structureをアトミック
指定し、Structure内の部品の実行の列を分解できない
ようにする必要がある。両方のStart Checkをアトミッ
ク指定することにより、実行順序は、((A)→(B)→
(c))→((x)→(y)→(z))という順序となる可能性
がある。この場合、2つのGROUP STATEの値がともにI
Nなら、(c)と(z)の両方が実行され、cpu1とcpu2の
両方で同じサービスが開始されてしまうことになる。こ
のような場合には、Start Check Structureをアトミッ
ク指定し、Structure内の部品の実行の列を分解できな
いようにする必要がある。両方のStart Checkをアトミ
ック指定することにより、実行順序は((A)→(B)
→(C))→((X)→(Y)→(Z))または、
((X)→(Y)→(Z))→((A)→(B)→
(C))となり、両方のサーバで同じサービスが実行さ
れることはなくなる。
Start Check (cpu1) and Start Check (cpu2)
FIG. 20 illustrates the GROUP_STATE relationship so that it can be easily understood. (A), (B), (C),
Consider the execution order of (X), (Y), and (Z). Regarding the execution order of these components, the order of (A) → (B) → (C) and the order of (X) → (Y) → (Z) are defined by the connection relation of the event lines. Only.
As a whole, for example, (A) → (B) → (X) →
There is a possibility that the order is (Y) → (C) → (Z). In this case, if the values of the two GROUP STATEs are both IN, both (c) and (Z) are executed, and the same service is started in both cpu1 and cpu2. In such a case, it is necessary to specify Start Check Structure atomically so that the execution sequence of parts in the Structure cannot be decomposed. By specifying both Start Checks atomically, the execution order is ((A) → (B) →
(c)) → ((x) → (y) → (z)). In this case, the values of both GROUP STATEs are I
If N, both (c) and (z) will be executed, and the same service will be started on both cpu1 and cpu2. In such a case, it is necessary to specify Start Check Structure atomically so that the execution sequence of parts in the Structure cannot be decomposed. By specifying both Start Checks atomically, the execution order is ((A) → (B))
→ (C)) → ((X) → (Y) → (Z)) or
((X) → (Y) → (Z)) → ((A) → (B) →
(C)), and the same service is not executed on both servers.

【0085】作成した部品(ファンクション)のうちラ
イブラリに登録すべきものは以下の4つである。
Among the created components (functions), the following four should be registered in the library.

【0086】 I. ServiceStart2Cpu II. OneProcessProcedure III. TwoProceduresProcedure IV. GroupState IとIVはサービスに関する部品であり、IIとIIIはプロセ
ス実行のための部品なので、図21に示すようにライブ
ラリのrootの下は、serviceとprocesureに分ける。さら
に、Iはロジック部品であり、IVは状態を表す変数なの
で、service下をlogicとstateに分ける。また、Iは2台
系専用なので、2cpuの下に置く。
I. ServiceStart2Cpu II. OneProcessProcedure III. TwoProceduresProcedure IV. GroupState I and IV are parts related to service, and II and III are parts for process execution. Therefore, as shown in FIG. Divide into service and procedure. Furthermore, since I is a logic component and IV is a variable that represents a state, the area under service is divided into logic and state. Also, I is for 2 systems only, so put it under 2cpu.

【0087】使用されたリファレンスは下記の通りであ
る。
The references used are as follows:

【0088】 A) Start Button B) GROUP_STATE C) GROUP_STATE Monitor D) Execute Processes E) P1、 P2 F) Path リファレンスについては、エンティティを指すパスを相
対パスにするか絶対パスにするか、また、パス名をどう
するか決めなければならないが、これらはエンティティ
の構造と合わせて検討しなければならない。
A) Start Button B) GROUP_STATE C) GROUP_STATE Monitor D) Execute Processes E) P1, P2 F) For Path reference, whether the path indicating the entity is a relative path or an absolute path, and the path name Must be determined, but these must be considered in conjunction with the structure of the entity.

【0089】一般に、ライブラリの作成者とディレクト
リの作成者は別である。ライブラリの作成者は、部品中
で使用するリファレンスの参照先パスを決定しなければ
ならない。そのためには、ディレクトリの構造も考えな
ければならない。ディレクトリ作成者はライブラリを選
択し、シナリオに必要な機能を決定すれば、ディレクト
リ構造の大部分は、自然に決まるため、比較的容易にシ
ナリオを作成することができる。
In general, the creator of the library is different from the creator of the directory. The creator of the library must determine the reference destination path of the reference used in the part. To do so, you must also consider the directory structure. If the directory creator selects a library and determines the functions required for the scenario, most of the directory structure is naturally determined, so that the scenario can be created relatively easily.

【0090】ディレクトリに登録すべきエンティティは
下記の部品に対応する。
The entities to be registered in the directory correspond to the following parts.

【0091】 (ア)ServiceStart2Cpu (イ)Start Button (ウ)GROUP_STATE (エ)GROUP_STATE Monitor (オ)Execute Processes (カ)P1、P2 (キ)Path 以下で、上記(ア)から(キ)に対するエンティティを
ディレクトリ上に作成する。この例では、サービスが1
つの場合のディレクトリを作成する。
(A) ServiceStart2Cpu (A) Start Button (C) GROUP_STATE (D) GROUP_STATE Monitor (E) Execute Processes (F) P1, P2 (G) Path Create on a directory. In this example, the service is 1
Create a directory for two cases.

【0092】(ア)ServiceStart2Cpu ServiceStart2Cpuに対応するエンティティは、サービス
毎に必要なので、図22に示すようなrootの下にSERVIC
E1というディレクトリを作成し、その下にstartという
名前で作成する。エンティティstartは、部品/service/
logic/2cpu/startを指す。コンテキストはglobalを指定
する。
(A) ServiceStart2Cpu Since an entity corresponding to ServiceStart2Cpu is required for each service, SERVIC under root as shown in FIG.
Create a directory called E1 and create it under the name start. Entity start is part / service /
Refers to logic / 2cpu / start. The context specifies global.

【0093】(イ)Start Button /service/logic/2cpu/start中には2つのButtonリファ
レンス(Start Button(cpu1)、 Start Button(cpu2))が
存在する。これらに対応するButtonエンティティは、サ
ーバごとに必要であるので図23に示すようなディレク
トリ構造とする。
(B) Start Button / service / logic / 2cpu / start includes two Button references (Start Button (cpu1) and Start Button (cpu2)). Since Button entities corresponding to these are required for each server, they have a directory structure as shown in FIG.

【0094】すなわち、Start Button(cpu1), ./cpu1/B
UTTON/START OP, ./CPU2/BUTTON/START OPとする。これ
らのパスの指定は、サービスに依存しないように相対パ
スとする(リファレンスのタイプはButtonReferenc
e)。相対パスとは、リファレンスの存在する部品を指
すエンティティの置かれているディレクトリからの相対
パスである。この例の場合、/service/logic/2cpu/star
t中で相対パス指定のリファレンスが使用されているの
で、startエンティティの置かれているディレクトリ/SE
RVICE1からの相対パスとなる。
That is, Start Button (cpu1), ./cpu1/B
UTTON / START OP, ./CPU2/BUTTON/START OP Specify these paths as relative paths so that they do not depend on the service (reference type is ButtonReferenc
e). The relative path is a relative path from the directory where the entity indicating the component where the reference exists is located. In this example, / service / logic / 2cpu / star
Since the reference that specifies the relative path is used in t, the directory where the start entity is located / SE
This is a relative path from RVICE1.

【0095】Buttonエンティティのコンテキストは、ロ
ーカルコンテキストを指定する。
The context of the Button entity specifies a local context.

【0096】(ウ)GROUP_STATE GROUP_STATEリファレンスは、複数使用されているが、
すべて/service/logic/2cpu/start部品の中にあるた
め、相対パスで指定することができる(リファレンスの
タイプはReference)。
(C) GROUP_STATE Although a plurality of GROUP_STATE references are used,
Since everything is in the / service / logic / 2cpu / start part, it can be specified with a relative path (reference type is Reference).

【0097】ディレクトリ構造は図24に示すようにす
る。すなわち、GROUP_STATE(cpu1)リファレンスとGROUP
_STATE(cpu2)リファレンスの参照先パスは、それぞれ./
STATE/CPU1/GROUP_STATEと./STATE/CPU2/GROUP STATEと
する。これらのエンティティは部品/service/state/gro
upStateを指す。コンテキストはglobalを指定する。
The directory structure is as shown in FIG. That is, GROUP_STATE (cpu1) reference and GROUP
The reference path of the _STATE (cpu2) reference is ./
STATE / CPU1 / GROUP_STATE and ./STATE/CPU2/GROUP STATE. These entities are parts / service / state / gro
Indicates upState. The context specifies global.

【0098】(エ)GROUP_STATE Monitor 部品/service/state/groupStateには、状態表示用のMon
itorリファレンスが存在する。状態表示用のMonitorリ
ファレンスの参照先パスは、相対パスで、./GROUP_STAT
E_MONITORとして、リファレンスのタイプは、MonitorRe
ferenceとする。ディレクトリ構造は図25に示すよう
になる。
(D) GROUP_STATE Monitor component / service / state / groupState contains Mon for status display.
There is an itor reference. The reference path of the Monitor reference for status display is a relative path, ./GROUP_STAT
As E_MONITOR, the reference type is MonitorRe
ference. The directory structure is as shown in FIG.

【0099】(オ)Execute Processes Execute Processesリファレンスは、/service/logic/2c
pu/start部品で使用されており参照先は相対パスで示す
ことができる。(リファレンスのタイプはReferenc
e)。ディレクトリ構造は、図26に示すようにする。
すなわちExecute Processes(cpu1)リファレンスおよびE
xecute Processes(cpu2)リファレンスの参照先パスは、
それぞれ./CPU1/PROCESS/START/PROCEDUREと./CPU2/PRO
CESS/START/PROCEDUREとする。これらのエンティティの
指す部品は、いくつのプロセスを起動するかによって決
める。ここでは2つのプロセスを実行することにし、/p
rocedure/twoProceduresProcedureを指す。プロセス実
行のコンテキストはローカルコンテキストである。
(E) Execute Processes The Execute Processes reference is / service / logic / 2c
It is used in the pu / start part, and the reference destination can be indicated by a relative path. (The reference type is Referenc
e). The directory structure is as shown in FIG.
That is, Execute Processes (cpu1) reference and E
The reference path of the xecute Processes (cpu2) reference is
./CPU1/PROCESS/START/PROCEDURE and ./CPU2/PRO respectively
CESS / START / PROCEDURE. The parts pointed to by these entities are determined by how many processes are started. Here we decide to run two processes, / p
Refers to rocedure / twoProceduresProcedure. The context of the process execution is the local context.

【0100】(カ)(P1、P2) /procedure/twoProceduresProcedure部品には2つのリ
ファレンスがある。それらのリファレンスには再帰的に
/procedure/twoProceduresProcedure部品が適用できる
ようにする。従って、図27のようなディレクトリ構造
とする。すなわち、リファレンスのタイプは、Referenc
eとし、その参照先パスは、それぞれ./P1/PROCEDUREお
よび./P2/PROCEDUREとする。また、それらのエンティテ
ィは、1つのプロセスを実行する部品/procedure/onePr
ocessProcedureを指す。3つ以上のプロセスを実行した
い場合には、procedure/oneProcessProcedureでなく、
さらに/procedure/twoProcessProcedureを指すようにす
ればよい。
(F) (P1, P2) The / procedure / twoProceduresProcedure part has two references. Recursively in those references
Make the / procedure / twoProceduresProcedure part applicable. Therefore, the directory structure is as shown in FIG. That is, the type of reference is Referenc
e, and the reference destination paths are ./P1/PROCEDURE and ./P2/PROCEDURE, respectively. In addition, those entities are parts that execute one process / procedure / onePr
Points to ocessProcedure. If you want to run more than two processes, instead of procedure / oneProcessProcedure,
You can also point it to / procedure / twoProcessProcedure.

【0101】(キ)Path /procedure/oneProcessProcedure部品には、プロセスの
実行ファイルのパス名を与えるためのリファレンスがあ
る。このリファレンスは、図28に示すようにConstant
Referenceとし、その参照先のConstantエンティティの
パスは./PATHとする。
(G) Path / procedure / oneProcessProcedure component has a reference for giving a path name of a process execution file. This reference, as shown in FIG.
Reference, and the path of the referenced Constant entity is ./PATH.

【0102】以上で、ディレクトリのサービス開始に関
する部分の作成は完了する。ディレクトリ作成後、シナ
リオ作成者は、ディレクトリ中のMonitorエンティテ
ィ、Buttonエンティティ、Constantエンティティをそれ
ぞれ、スロットファイル上の、状態表示ラベル、操作ボ
タン、設定値の各項目と対応づけなければならない。対
応づけはパラメータ項目エディタで行う。
With the above, the creation of the part related to the service start of the directory is completed. After creating the directory, the scenario creator must associate the Monitor entity, Button entity, and Constant entity in the directory with the status display label, operation button, and setting value items on the slot file. The association is performed with the parameter item editor.

【0103】このようにして、構成エディタ7により作
成したHAシステム用シナリオ構成はHAシステム用シ
ナリオ構成ファイル9に保持される。これは、例えばメ
ニュー画面に表示された「保存」コマンドを選択するこ
とにより実行される。
The HA system scenario configuration created by the configuration editor 7 in this manner is stored in the HA system scenario configuration file 9. This is executed, for example, by selecting the "save" command displayed on the menu screen.

【0104】コンパイラ 図29に示すように、コンパイラ13は、GUIで作成
したシナリオ構成ファイルをシナリオテンプレートに変
換する。コンパイラ13は、シナリオ構成ファイルの情
報をコンパイラの内部表現27に変換する内部表現変換
部29をもつ。すなわち、ライブラリ5とシナリオ構成
ファイル9との間でリンクづけがされているので、コン
パイラ13はそのリンクをたどって、部品の接続をグラ
フ構造として、コンパイラ内部に作成する。また、コン
パイラ13は、GUI上の原始的部品をシナリオ記述言
語に変換するための情報として原始的部品情報31を有
する。また、内部表現と原始的部品情報からシナリオテ
ンプレートを生成するシナリオ記述への変換部33を有
する。シナリオ記述への変換部33は、ロジック生成部
35を有し、シナリオテンプレートのロジック部41を
生成する。ロジック生成部は誤りチェック部37を有す
る。また、シナリオ記述への変換部33は、シンボル情
報生成部39を有し、シナリオテンプレートのシンボル
情報を生成する。シンボル情報には、GUIコード対応
情報45を有し、GUI上の原始的部品とシナリオテン
プレート中の記述の対応情報を表現する。シンボル情報
は部品位置情報47を有し、原始的部品のGUI上での
位置に関する詳細情報を表現する。
Compiler As shown in FIG. 29, the compiler 13 converts a scenario configuration file created by the GUI into a scenario template. The compiler 13 has an internal representation conversion unit 29 that converts information of the scenario configuration file into an internal representation 27 of the compiler. That is, since the library 5 and the scenario configuration file 9 are linked, the compiler 13 follows the link and creates the connection of the parts as a graph structure inside the compiler. The compiler 13 has primitive component information 31 as information for converting primitive components on the GUI into a scenario description language. Further, it has a conversion unit 33 for converting a scenario description from an internal representation and primitive component information into a scenario description. The scenario description conversion unit 33 has a logic generation unit 35, and generates a scenario template logic unit 41. The logic generation unit includes an error check unit 37. The scenario description conversion unit 33 has a symbol information generation unit 39 and generates symbol information of the scenario template. The symbol information has GUI code correspondence information 45, and expresses correspondence information between primitive parts on the GUI and descriptions in the scenario template. The symbol information has component position information 47 and expresses detailed information on the position of the primitive component on the GUI.

【0105】コンパイラ13は以下のチェック機能を有
する。
The compiler 13 has the following check functions.

【0106】(i)ライブラリに関するチェック (i−1)Structure ・部品中に自分自身がある。(I) Check related to library (i-1) Structure There is a part in the part itself.

【0107】名前のついた部品が、Structureを用いた
階層構造となっている場合、その階層構造のどこかに自
分自身が出現する場合はエラーとする。層構造のどこか
に自分自身が出現する場合はエラーとする。図30の例
では、/tools/function1という名前のStructureの中に
置かれている/tools/function2の中に/tools/function1
自身が置かれているのでエラーとなる。
If the named component has a hierarchical structure using Structure, and if itself appears anywhere in the hierarchical structure, it is an error. It is considered an error if itself appears anywhere in the layered structure. In the example of FIG. 30, / tools / function1 is stored in / tools / function2 located in the structure named / tools / function1.
It is an error because it is located.

【0108】(i−2)リファレンス ・リファレンス先のエンティティがない。(I-2) Reference There is no reference destination entity.

【0109】リファレンスからエンティティへの参照
は、シンボリックリンク(名前による参照)であり、参
照先のエンティティがなくてもリファレンスは作成でき
る。リファレンスの参照先のエンティティが存在しない
場合はエラーとなる。
The reference from the reference to the entity is a symbolic link (reference by name), and the reference can be created without the referenced entity. An error will occur if the referenced entity does not exist.

【0110】・リファレンスのポートと参照先のエンテ
ィティに対する部品のポートの不一致(a)リファレン
ス先のエンティティが部品エンティティの場合 リファレンスのすべてのポートのデータ型と方向と名前
が、リファレンス先のエンティティの指す部品のポート
一致しなければならない。
Inconsistency between the port of the reference and the port of the part for the entity of the reference destination (a) When the reference destination entity is a part entity The data types, directions, and names of all the ports of the reference point to the entity of the reference destination Port of parts must match.

【0111】(b)リファレンス先のエンティティがCo
nstant、Button、Monitorの場合 Constant、 Button、 Monitorの各エンティティに対す
るリファレンスとして、ConstantReference、 Constant
AbsoluteReferenceが用意されている。これらのリファ
レンスは、対応するエンティティに必要なポートがあら
かじめ固定されているためポートの追加、削除は不要で
ある。
(B) The reference destination entity is Co
For nstant, Button, Monitor ConstantReference, Constant as a reference for each entity of Constant, Button, Monitor
AbsoluteReference is provided. In these references, the ports required for the corresponding entity are fixed in advance, so that it is not necessary to add or delete ports.

【0112】汎用のリファレンスであるReference、 Ab
soluteReferenceをこれらのエンティティに対して使用
する場合は、図31に示すようにポートの構成は、それ
ぞれConstantReference、 ButtonReference、 MonitorR
eferenceと同様でなければならない。
Reference, Ab, which are general-purpose references
When soluteReference is used for these entities, the ports are configured as ConstantReference, ButtonReference, MonitorR as shown in Figure 31.
Must be similar to eference.

【0113】・リファレンスの参照グループ 図32に示すように、リファレンスからエンティティ、
そのエンティティに対する部品中のリファレンスからエ
ンティティ、そのエンティティに対する部品中のリファ
レンスからエンティティ、とたどって行くと元のエンテ
ィティに戻るような構造が存在する場合はエラーとす
る。
Reference Reference Group As shown in FIG.
If there is a structure that returns from the reference in the part for the entity to the entity and the reference from the reference to the entity in the part for the entity, and returns to the original entity, it is an error.

【0114】(ii)ポートの接続のチェック (ii−1)event ・イベントポートが異なるローカルcontext間で接続さ
れているイベントポート間の接続で許されるのは下記の
(a)または(b)の場合である。
(Ii) Checking Port Connections (ii-1) event A connection between event ports where event ports are connected between different local contexts is permitted in the following (a) or (b): Is the case.

【0115】(a)同一context内の接続 (b)local contextとglobal context間の接続 ・Delayを介さないイベントループがある。(A) Connection within the same context (b) Connection between local context and global context ・ There is an event loop that does not pass through Delay.

【0116】イベントを入力して、イベントを出力する
部品をつなげてループにする場合には、必ず原始的部品
を使用しなければならない。Delayを使用しないでイベ
ントがループしている場合は、エラーとする。図33に
示す例はエラーとなる。(A、B、…CはすべてDelayでは
ないとする) 図34は、図33にDelayを追加したもので、イベント
ループに関するエラーとはならない。
When an event is input and a component for outputting the event is connected to form a loop, a primitive component must be used. If the event loops without using Delay, it is an error. The example shown in FIG. 33 results in an error. (It is assumed that all of A, B,... C are not delays.) FIG. 34 is obtained by adding delays to FIG.

【0117】(ii−2)read ・readポートが異なるcontext間で接続されている。(Ii-2) read The read port is connected between different contexts.

【0118】readポート間の接続で許されるのは、同一
のcontext内の接続のみである。
Only connections within the same context are permitted for connections between read ports.

【0119】・readINポートは、分岐可能でないため必
ず1つのポートに接続されなければならない。
The readIN port must be connected to one port because it cannot branch.

【0120】・readINポートの入力値の展開でループを
検出した。
A loop was detected by expanding the input value of the readIN port.

【0121】readINポートを逆向きにたどると元の部品
に戻るようなループ構造となっている個所がある場合は
エラーとする。
If there is a loop structure that returns to the original part when the readIN port is traced in the opposite direction, it is determined that an error has occurred.

【0122】図35に示す例では、部品AのreadINポー
トを逆向きにたどると、Selector2→Selector1→Select
or2というループがあるためエラーとなる。
In the example shown in FIG. 35, when the readIN port of component A is traced in the opposite direction, Selector2 → Selector1 → Select
An error occurs because there is a loop called or2.

【0123】(ii−3)bool ・boolポートが異なるcontext間で接続されているbool
ポート間の接続で許されるのは、同一context内の接続
のみである。
(Ii-3) bool bool The bool port is connected between different contexts.
Only connections within the same context are allowed for connections between ports.

【0124】・boolINポートが1つのポートに接続され
ていない。
The boolIN port is not connected to one port.

【0125】boolINポートは、分岐可能でないため、必
ず1つのポートに接続されなければならない。
Since the boolIN port is not branchable, it must be connected to one port.

【0126】・boolINポートの入力値の展開でループを
検出した boolINポートを逆向きにたどると元の部品に戻るような
ループ構造となっている個所がある場合はエラーとす
る。図36に示す例では、部品AのboolINポートを逆向
きにたどるとAnd2→And1→And2というループがあるため
エラーとなる。
A loop is detected by expanding the input value of the boolIN port. If the boolIN port has a loop structure that returns to the original part when the boolIN port is traced in the reverse direction, an error is generated. In the example shown in FIG. 36, if the boolIN port of the component A is traced in the opposite direction, an error occurs because there is a loop of And2 → And1 → And2.

【0127】(ii−4)write ・writeポートが異なるcontext間で接続されている。(Ii-4) write The write port is connected between different contexts.

【0128】writeポート間の接続で許されるのは同一c
ontext内の接続のみである。
The same connection is permitted between write ports.
Only connections within ontext.

【0129】・writeOUTポートが1つのポートに接続さ
れていない writeOUTポートは、分岐可能でないため、必ず1つのポ
ートに接続されなければならない。
A writeOUT port whose writeOUT port is not connected to one port must be connected to one port because it cannot be branched.

【0130】(ii−5)DomainState ・DomainStateのrreadOUTポートに直接またはSelector
部品を介して間接的にNotifyまたはMonitorに接続され
ている。
(Ii-5) DomainState Directly to the rreadOUT port of DomainState or Selector
Indirectly connected to Notify or Monitor via parts.

【0131】DomainStateは、contextの状態の変化は、
eventOUTポートFに出力されるイベントによって得ら
れ、readOUTポートの出力の変化は得られないため、図
37に示すように直接または間接的にNotifyまたはMoni
torが接続されている場合はエラーとする。
DomainState is a change in the state of the context:
Since it is obtained by the event output to the eventOUT port F and the change of the output of the readOUT port cannot be obtained, as shown in FIG.
It is an error if tor is connected.

【0132】(iii)アトミックなStructure アトミック属性を持つStructureの満たすべき条件を満
たしていない場合はエラーとする。
(Iii) Atomic Structure If the condition to be satisfied by the Structure having the atomic attribute is not satisfied, it is regarded as an error.

【0133】アトミックなStructureが、2つ以上のeve
ntINポートをもつアトミック指定をしたStructureのeve
ntINポートは1つ以下で泣ければならない。
[0133] An atomic structure is composed of two or more eves.
Structure eve with atomic designation with ntIN port
You must cry with no more than one ntIN port.

【0134】(iii−2)アトミックなStructure内
のロジック部品がそのアトミックなStructureの外部か
ら参照されている場合はエラーとする。
(Iii-2) If a logic component in an atomic structure is referenced from outside the atomic structure, an error is generated.

【0135】(iii―3)アトミックなStructure内
の部品が同一context内にない アトミックなStructure内のすべての部品およびエンテ
ィティは、同一contextに属さなければならない。アト
ミックなStructure内にリファレンスが存在する場合
は、そのリファレンスの参照先をたどったすべての部品
が同一contextに属さなければならない。
(Iii-3) Parts in an atomic structure are not in the same context All parts and entities in an atomic structure must belong to the same context. If a reference exists in an atomic structure, all components that follow the reference must belong to the same context.

【0136】(iii−4)アトミックなStructure内
にイベントのループがある アトミックなStructure内にイベントのループがある場
合はエラーとする。
(Iii-4) An event loop exists in an atomic structure If an event loop exists in an atomic structure, an error is generated.

【0137】以上のようにして、コンパイラ13により
作成されたHAシステム用シナリオはテンプレートとし
て、HAシステム用シナリオテンプレートファイル49
に出力される。HAシステム用シナリオテンプレートフ
ァイル49に保持されたテンプレートに実際のシステム
で使用されるパラメータをパラメータ設定ツール51を
用いて設定し、実運用で使用するHAシステム用シナリ
オを作成し、HAシステム用シナリオファイル53に出
力する。HAシステム用シナリオファイル53に保持さ
れたシナリオはシナリオ配布ツール55により、各サー
バ57に配布される。
As described above, the scenario for the HA system created by the compiler 13 is used as a template as the scenario template file 49 for the HA system.
Is output to The parameters used in the actual system are set in the template held in the HA system scenario template file 49 using the parameter setting tool 51, and the scenario for the HA system used in the actual operation is created. 53. The scenario held in the HA system scenario file 53 is distributed to each server 57 by the scenario distribution tool 55.

【0138】シミュレータ シミュレータ15は、実際の実行環境で使用されるシナ
リオをHAシステム用シナリオファイル53から読み込
み、シナリオ全体の動作をシミュレーションする。シミ
ュレータ15は複数のサーバの状態テーブルを持ち、各
システムで起きる状態変換を擬似的に発生させる。これ
により、作成されたシナリオがどのように動作するか確
認/検証することができる。
Simulator The simulator 15 reads the scenario used in the actual execution environment from the HA system scenario file 53 and simulates the operation of the entire scenario. The simulator 15 has a state table of a plurality of servers, and simulates a state conversion occurring in each system. Thus, it is possible to confirm / verify how the created scenario operates.

【0139】シミュレータ15内のロジック部品デバッ
ガは、部品エディタ3で作成したロジック部品を読み込
み、ロジック部品単体(すなわち部品エディタ3で作成
した部品)の操作をシミュレーションする。部品には、
シミュレーションするために必要な外部入力が与えら
れ、各部品への情報の流れや外部出力が確認可能であ
る。
The logic component debugger in the simulator 15 reads the logic component created by the component editor 3 and simulates the operation of the logic component alone (ie, the component created by the component editor 3). Parts include
An external input necessary for the simulation is given, and the flow of information to each component and the external output can be confirmed.

【0140】シミュレータ15は、シミュレーションに
必要な状態変化を起こしたり、シミュレーションの動作
を操作する方法として、操作パネル方式とスクリプト方
式を有する。操作パネル方式は、ユーザが操作できるG
UI部品(ボタン、文字入力欄等)が配置された操作パ
ネルを操作することで、システムの状態変化を起こした
り、シミュレーションの動作を操作する。また、スクリ
プト方式は、システムの状態変化やユーザの操作を記述
したスクリプトを入力して、スクリプトの手順で自動的
にシミュレーションする。この方式によれば、スクリプ
トとして、実システムの出力するログを使用することに
より、実システムで起きた現象をシミュレーション上で
確認することが可能となる。スクリプト方式を操作パネ
ル方式と組合わせ使用することにより、さらに細かな検
証が可能となる。
The simulator 15 has an operation panel system and a script system as a method for causing a state change necessary for the simulation or operating the operation of the simulation. The operation panel method uses G that can be operated by the user.
By operating an operation panel on which UI components (buttons, character input fields, etc.) are arranged, a state change of the system is caused or a simulation operation is operated. In the script method, a script describing a change in the state of the system or a user operation is input, and simulation is automatically performed according to the script procedure. According to this method, by using a log output from the real system as a script, it is possible to confirm a phenomenon that has occurred in the real system on a simulation. By using the script method in combination with the operation panel method, more detailed verification is possible.

【0141】状態操作としては、(1)システムの起動
とダウン(異常終了)(2)プロセスの正常/異常衆力
(起動から終了までの時間を設定可能;終了コードの指
定が可能)(3)ユーザの操作(実運用時にユーザがモ
ニタ等で行う操作で起きる状態の変化が起こせる)次の
状態変化を起こすことができる。また、シミュレーショ
ン操作として(1)シミュレーションの起動と停止(シ
ミュレーションのステップ数が設定可能;例えば状態変
化が3回起きたらシミュレーションを停止する)(2)
シミュレーションの動作速度の設定(1ステップの時間
が設定可能;例えばシミュレーションを早く終わらせる
ために、実運用のタイマ時間よりも短い時間を設定可能
である)(3)スナップショット(シミュレーションの
状態をスナップショットとして保存し、その状態に戻す
ことが可能;スナップショットは複数取ることができ
る)。
The status operations include (1) system startup and shutdown (abnormal termination) (2) normal / abnormal process power (time from startup to termination; end code can be specified) (3) The following state change can be caused by a user operation (a state change caused by an operation performed by the user on a monitor or the like during actual operation). Further, as the simulation operation, (1) start and stop of the simulation (the number of simulation steps can be set; for example, the simulation is stopped when the state changes three times) (2)
Simulation operation speed setting (one-step time can be set; for example, a time shorter than the actual operation timer time can be set to end the simulation earlier) (3) Snapshot (Simulation of simulation state You can save it as a shot and return to that state; you can take multiple snapshots).

【0142】さらに、状態設定として、システムの状態
を保存しているメモリの値を直接設定することができ
る。
Further, as the state setting, the value of the memory storing the state of the system can be directly set.

【0143】シミュレータ15はシミュレーション情報
の表示を行う。すなわち、ログの表示およびモニタ表示
を行う。ログの表示としては、状態変化が起きたイベン
トを受け取り、状態変化の起きた時間と変化の起きた情
報を示す各種パス(ロジック部品/構造データ等)、
値、タイプを文字列として出力する。ログフィルタ(す
なわち、指定された条件を満たす情報のみをログとして
表示する条件)には、(1)コンテクスト、(2)タイ
プ、(3)パスがある。出力されたログはスクリプト形
式で保存される。保存したスクリプトは入力して再現可
能である。
The simulator 15 displays simulation information. That is, log display and monitor display are performed. As a log display, an event in which a state change has occurred is received, and various paths (a logic component / structure data, etc.) indicating a time in which the state change occurred and information on the occurrence of the change,
Output the value and type as character strings. The log filter (that is, the condition for displaying only information that satisfies the specified condition as a log) includes (1) context, (2) type, and (3) path. The output log is saved in script format. The saved script can be entered and reproduced.

【0144】また、モニタ表示はログに表示されている
情報をGUIで表示し、現在の状態や状態変化の様子を
わかりやすくする。表示の方法としては、例えば、モニ
タする情報のパスをGUIで指定し、そのパスの状態を
表すコンポーネントを配置することにより必要な情報を
全て確認することができる。
The monitor display displays the information displayed in the log on a GUI so that the current state and the state of the state change can be easily understood. As a display method, for example, all necessary information can be confirmed by designating a path of information to be monitored on a GUI and arranging a component representing a state of the path.

【0145】図38はこの発明の他の実施例を示すブロ
ック図である。この実施例では、部品エディタ3であら
かじめシナリオ部品ライブラリ5をあらかじめ作成して
おくことにより、ユーザは構成エディタ7を用いて構成
を入力せずにシナリオテンプレート自動生成制御部61
がシナリオテンプレートを自動生成する。図38におい
て、システム要求仕様設計ツール59は、分散システム
に対する要求仕様の決定を支援するGUIツールであ
り、要求仕様データをシナリオテンプレート自動生成制
御部61に出力する。シナリオテンプレート自動生成制
御部61は、受け取った要求仕様データから、構成エデ
ィタ7を制御し、シナリオ構成ファイルを生成する。構
成エディタの制御で行う内容は、システム構成(サーバ
の数、アプリケーションプログラムの数等)の定義と、
シナリオ部品ライブラリから必要な部品を選択して使用
することである。また、シナリオテンプレート自動生成
制御部61は、パラメータ項目エディタ11を制御し、
シナリオ構成ファイルに対してシステム固有のパラメー
タに関する情報を定義する。システム固有のパラメータ
に関する情報とは、入力すべきパラメータ項目と、その
パラメータの意味、タイプ、サイズなどの情報を含み、
シナリオテンプレートにシステム固有のパラメータの値
を設定する際に必要な情報である。パラメータ設定ツー
ル51は、シナリオテンプレート中のパラメータ項目情
報を読み込み、パラメータ入力に必要な情報を表示し、
正確なパラメータ入力を可能とする。
FIG. 38 is a block diagram showing another embodiment of the present invention. In this embodiment, the scenario component library 5 is created in advance by the component editor 3 so that the user does not input a configuration using the configuration editor 7 and the scenario template automatic generation control unit 61.
Automatically generates a scenario template. In FIG. 38, a system requirement specification design tool 59 is a GUI tool that supports determination of requirement specifications for a distributed system, and outputs requirement specification data to a scenario template automatic generation control unit 61. The scenario template automatic generation control unit 61 controls the configuration editor 7 from the received required specification data to generate a scenario configuration file. The content to be controlled by the configuration editor is to define the system configuration (number of servers, number of application programs, etc.),
This is to select and use necessary parts from the scenario parts library. Further, the scenario template automatic generation control unit 61 controls the parameter item editor 11,
Defines information about system-specific parameters in the scenario configuration file. Information on system-specific parameters includes parameter items to be input and information on the meaning, type, size, etc. of the parameters,
This is information required to set system-specific parameter values in the scenario template. The parameter setting tool 51 reads parameter item information in the scenario template, displays information necessary for parameter input,
Enables accurate parameter input.

【0146】なお、上述した実施例では、シナリオテン
プレートの編集を部品エディタと構成エディタに分けて
編集するようにしたが1つのエディタで編集するように
してもよい。但し、2つのエディタに分けて編集した場
合には、以下のような長所がある。
In the above-described embodiment, the editing of the scenario template is divided into the component editor and the configuration editor. However, the editing may be performed by one editor. However, when editing is performed by dividing into two editors, there are the following advantages.

【0147】(1)構成の変更が容易 構成エディタは、システム構成を容易に定義するための
機能を備えており、サーバやアプリケーション等の追
加、削除を簡単に行うことができる。構成エディタは、
図39に示すように定義した構成の全体および部分を構
成ファイルに保存することができる。新しく構成を作成
する場合には、これまでに作成した構成ファイルの中か
ら類似の構成をもつものを選択して読み込み、編集する
ことで、容易に新しい構成を定義可能である。
(1) Easy Configuration Change The configuration editor has a function for easily defining the system configuration, and can easily add or delete servers and applications. The configuration editor
As shown in FIG. 39, the whole and a part of the defined configuration can be stored in the configuration file. When a new configuration is created, a new configuration can be easily defined by selecting, reading, and editing a configuration file having a similar configuration from the configuration files created so far.

【0148】(2)部品ライブラリの入れ替えにより動
作の変更が可能 図40に示すように、構成エディタで作成される構成フ
ァイルには、シナリオ部品ライブラリが対応づけられて
おり、このシナリオ部品ライブラリを別のものと置き換
えることにより使用する部品がおきかわり、動作の異な
るシナリオとすることができる。
(2) The operation can be changed by replacing the component library. As shown in FIG. 40, the configuration file created by the configuration editor is associated with a scenario component library. By replacing the part, the part to be used is changed, and a scenario having a different operation can be obtained.

【0149】[0149]

【発明の効果】この発明によれば、アプリケーションを
変更することなく、オペレータの指示で、システムやサ
ービスを止めることなくファイルのバックアップを行え
る。
According to the present invention, a file can be backed up by an operator's instruction without changing an application and without stopping systems and services.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明の分散システムの動作シナリオ開発環
境およびその周辺を示すシステムブロック図である。
FIG. 1 is a system block diagram showing an operation scenario development environment of a distributed system according to the present invention and its periphery.

【図2】図1に示す部品エディタのGUI画面例を示す
図である。
FIG. 2 is a view showing an example of a GUI screen of the component editor shown in FIG. 1;

【図3】ポートのデータ型を示す図である。FIG. 3 is a diagram showing a data type of a port.

【図4】ライブラリにあらかじめ登録されている原始的
部品の一部を示す図である。
FIG. 4 is a diagram showing a part of primitive components registered in a library in advance.

【図5】ライブラリにあらかじめ登録されている原始的
部品の残りの部分を示す図である。
FIG. 5 is a diagram showing a remaining part of primitive parts registered in a library in advance.

【図6】リファレンス部品を説明する図である。FIG. 6 is a diagram illustrating a reference component.

【図7】リファレンス部品を表す図である。FIG. 7 is a diagram illustrating a reference component.

【図8】リファレンス部品を表す図である。FIG. 8 is a diagram illustrating a reference component.

【図9】Structure部品のポートを示す図である。FIG. 9 is a diagram showing ports of Structure components.

【図10】Structure部品にアトミック属性が指定され
た場合の各部品の実行順序を説明するための図である。
FIG. 10 is a diagram for explaining an execution order of each component when an atomic attribute is specified for a Structure component.

【図11】Structure部品にアトミック属性が指定され
た場合の各部品の実行順序を説明するための図である。
FIG. 11 is a diagram for explaining an execution order of each component when an atomic attribute is specified for a Structure component.

【図12】アトミック属性を説明するための図である。FIG. 12 is a diagram for explaining an atomic attribute.

【図13】構成エディタの機能の一例を示す図である。FIG. 13 is a diagram illustrating an example of a function of a configuration editor.

【図14】例として2台系のシナリオのサービス開始処
理の部分を作成する場合のサービス開始部品のトップレ
ベルの構造を示す図である。
FIG. 14 is a diagram illustrating a top-level structure of a service start component when a service start process part of a two-system scenario is created as an example.

【図15】図14に示すcpu1用のStart Checkの部
品例を示す図である。
FIG. 15 is a diagram illustrating an example of components of a Start Check for cpu1 illustrated in FIG. 14;

【図16】図15に示すGroupStateの参照先エンティテ
ィの指す部品の作成例を示す図である。
16 is a diagram illustrating an example of creating a component pointed to by a reference entity of the GroupState illustrated in FIG. 15;

【図17】Execute Processesの部品を示す図である。FIG. 17 is a diagram showing components of Execute Processes.

【図18】サービス開始部品の構成要素であるComplete
Actionを実現するための部品構成例を示す図である。
FIG. 18: Complete which is a component of the service start part
FIG. 3 is a diagram illustrating an example of a component configuration for implementing an action.

【図19】サービス開始部品の構成要素であるFail Act
ionを実現するための部品構成例を示す図である。
FIG. 19: Fail Act which is a component of the service start part
It is a figure showing the example of component composition for realizing ion.

【図20】Start Check(cpu1)とStart Check(cpu2)とGR
OUP_STATEの関係を示す図である。
FIG. 20: Start Check (cpu1), Start Check (cpu2), and GR
It is a figure showing the relation of OUP_STATE.

【図21】ライブラリへの登録を説明するための図であ
る。
FIG. 21 is a diagram for explaining registration to a library.

【図22】部品ServiceStart2Cpuに対するエンティティ
をディレクトリ上に作成する際の説明図である。
FIG. 22 is an explanatory diagram when an entity for a component ServiceStart2Cpu is created on a directory.

【図23】部品Start Buttonに対するエンティティをデ
ィレクトリ上に作成する際の説明図である。
FIG. 23 is an explanatory diagram when an entity for a component Start Button is created on a directory.

【図24】部品GROUP_STATEに対するエンティティをデ
ィレクトリ上に作成する際の説明図である。
FIG. 24 is an explanatory diagram when an entity for a component GROUP_STATE is created on a directory;

【図25】部品GROUP_STATE Monitorに対するエンティ
ティをディレクトリ上に作成する際の説明図である。
FIG. 25 is an explanatory diagram when an entity for a component GROUP_STATE Monitor is created in a directory.

【図26】部品Execute Processesに対するエンティテ
ィをディレクトリ上に作成する際の説明図である。
FIG. 26 is an explanatory diagram when an entity for a component Execute Processes is created on a directory.

【図27】部品/procedure/twoProceduresProcedureに
対するエンティティをディレクトリ上に作成する際の説
明図である。
FIG. 27 is an explanatory diagram when an entity for a part / procedure / twoProceduresProcedure is created on a directory.

【図28】部品procedure/oneProcessProcedureに対す
るエンティティをディレクトリ上に作成する際の説明図
である。
FIG. 28 is an explanatory diagram when creating an entity for a component procedure / oneProcessProcedure in a directory.

【図29】コンパイラの詳細を示すブロック図である。FIG. 29 is a block diagram showing details of a compiler.

【図30】Structureを用いた階層構造の例を示す図で
ある。
FIG. 30 is a diagram illustrating an example of a hierarchical structure using Structure.

【図31】リファレンス先のエンティティがConstant、
Button、 Monitorの場合のポートの構成を示す図であ
る。
FIG. 31: The reference destination entity is Constant,
FIG. 3 is a diagram illustrating a configuration of a port in the case of a Button and a Monitor.

【図32】リファレンスの参照ループの例を説明する図
である。
FIG. 32 is a diagram illustrating an example of a reference loop of a reference.

【図33】コンパイラによるポートの接続チェック機能
を説明するための図である。
FIG. 33 is a diagram for explaining a port connection check function by a compiler;

【図34】コンパイラによるポートの接続チェック機能
を説明するための図である。
FIG. 34 is a diagram illustrating a port connection check function by a compiler.

【図35】コンパイラにより、readINポートの入力値の
展開でループを検出した場合の例を示す図である。
FIG. 35 is a diagram illustrating an example of a case where a loop is detected by expanding a readIN port input value by a compiler.

【図36】コンパイラにより、boolINポートの入力値の
展開でループを検出した場合の例を示す図である。
FIG. 36 is a diagram illustrating an example of a case where a loop is detected by a compiler by expanding an input value of a boolIN port.

【図37】DomainStateのreadOUTポートに、直接または
Selector部品を介して間接的にNotifyまたはMonitorに
接続されている例を示す図である。
[FIG. 37] Directly or directly to the readOUT port of DomainState
It is a figure which shows the example connected to Notify or Monitor indirectly via the Selector component.

【図38】この発明の他の実施例示すブロック図であ
る。
FIG. 38 is a block diagram showing another embodiment of the present invention.

【図39】部品エディタと構成エディタの2つのエディ
タに分けて編集した場合の利点を説明するための図であ
る。
FIG. 39 is a diagram for describing an advantage in a case where editing is performed by dividing into two editors, a component editor and a configuration editor.

【図40】部品エディタと構成エディタの2つのエディ
タに分けて編集した場合の利点を説明するための図であ
る。
FIG. 40 is a diagram for describing an advantage in a case where editing is performed by dividing into two editors, a component editor and a configuration editor.

【符号の説明】[Explanation of symbols]

1…シナリオ開発環境 3…部品エディタ 5…HAシステム用部品ライブラリ 7…構成エディタ 9…HAシステム用シナリオ構成ファイル 11…パラメータ項目エディタ) 13…コンパイラ 15…シミュレータ 17…GUI画面(部品エディタ) 19…設計画面表示部 21…メニュー画面表示部 23…IN 25…OUT 27…内部表現 29…内部表現への変換部 31…原始的部品情報 33…シナリオ記述への変換部 35…ロジック生成部 37…誤りチェック部 39…シンボル情報生成部 41…ロジック部 43…シンボル情報 45…GUIコード対応情報 47…部品位置情報 49…HAシステム用シナリオテンプレートファイル 511…パラメータ設定ツール 53…HAシステム用シナリオファイル 55…シナリオ配布ツール 57…サーバ 59…システム要求仕様設計ツール 61…シナリオテンプレート自動生成制御部 DESCRIPTION OF SYMBOLS 1 ... Scenario development environment 3 ... Parts editor 5 ... HA system parts library 7 ... Configuration editor 9 ... HA system scenario configuration file 11 ... Parameter item editor) 13 ... Compiler 15 ... Simulator 17 ... GUI screen (parts editor) 19 ... Design screen display unit 21 Menu screen display unit 23 IN 25 OUT 27 Internal expression 29 Conversion unit to internal expression 31 Primitive part information 33 Conversion unit to scenario description 35 Logic generation unit 37 Error Check section 39 ... Symbol information generation section 41 ... Logic section 43 ... Symbol information 45 ... GUI code correspondence information 47 ... Part position information 49 ... HA system scenario template file 511 ... Parameter setting tool 53 ... HA system scenario file 55 ... Scenario Distribution tools 7 ... server 59 ... system requirements specification design tool 61 ... scenario template automatic generation control unit

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 複数のサーバ計算機が連携して処理を行
う高可用性システムの振る舞いをスクリプト言語で記述
したシナリオとして開発するための高可用性システムの
動作シナリオ開発環境を有する計算機システムにおい
て、 前記シナリオの部品を作成する部品エディタと、 前記部品エディタにより作成された部品群を保持するシ
ナリオ部品ライブラリと、 前記高可用性システムの構成を定義する構成エディタ
と、 高可用性システムのシナリオにおけるシステム構成に関
する定義を保持する高可用性システム用シナリオ構成フ
ァイルと、 実システムでユーザが設定すべき項目を定義するパラメ
ータ項目エディタと、 前記高可用性システム用シナリオ構成ファイルをシナリ
オ記述言語で記述されたシナリオテンプレートに変換す
るコンパイラと、 を具備したことを特徴とする高可用性システムの動作シ
ナリオ開発環境を有する計算機システム。
1. A computer system having a high availability system operation scenario development environment for developing a behavior of a high availability system in which a plurality of server computers cooperate to perform processing as a scenario described in a script language. A component editor for creating components; a scenario component library for holding a component group created by the component editor; a configuration editor for defining the configuration of the high availability system; and a definition for a system configuration in a scenario of the high availability system. Scenario configuration file for a high availability system, a parameter item editor for defining items to be set by a user in a real system, and a compiler for converting the scenario configuration file for a high availability system into a scenario template described in a scenario description language A computer system having an operation scenario development environment for a high availability system, comprising:
【請求項2】 複数のサーバ計算機が連携して処理を行
う高可用性システムの振る舞いをスクリプト言語で記述
したシナリオとして開発するための高可用性システムの
動作シナリオ開発環境を有する計算機システムにおい
て、 高可用性システムの構成を定義する構成エディタと、 実システムでユーザが設定すべき項目を定義するパラメ
ータ項目エディタと、 前記構成エディタを制御し、シナリオ構成ファイルを生
成すると共に前記パラメータ項目エディタを制御し前記
シナリオ構成ファイルに対してシステム固有のパラメー
タに関する情報を定義するシナリオテンプレート自動生
成制御部と、 具備したことを特徴とする高可用性システムの動作シナ
リオ開発環境を有する計算機システム。
2. A computer system having a high availability system operation scenario development environment for developing the behavior of a high availability system in which a plurality of server computers cooperate to perform processing as a scenario described in a script language. A configuration editor for defining the configuration of the user, a parameter item editor for defining items to be set by the user in the real system, controlling the configuration editor, generating a scenario configuration file, and controlling the parameter item editor to control the scenario configuration A computer system having an operation scenario development environment for a high availability system, comprising: a scenario template automatic generation control unit that defines information on system-specific parameters for a file;
【請求項3】 前記部品エディタは、前記シナリオを構
成する部品をグラフィカルユーザインターフェース(G
UI)で作成したシナリオ部品ライブラリに登録し、 前記シナリオ部品ライブラリは、 作成した部品の名前空間を表現する木構造と、 前記名前空間に置かれる部品とで構成されることを特徴
とする請求項1記載の高可用性システムの動作シナリオ
開発環境を有する計算機システム。
3. The part editor displays a part constituting the scenario in a graphical user interface (G).
The scenario component library registered in the scenario component library created in UI), wherein the scenario component library includes a tree structure expressing a namespace of the created component, and a component placed in the namespace. 2. A computer system having an operation scenario development environment for the high availability system according to 1.
【請求項4】 前記部品はあらかじめ用意された原始的
GUI部品を組み合せて作成し、前記原始的GUI部品
はそれ以上分割できない部品であることを特徴とする請
求項1記載の高可用性システムの動作シナリオ開発環境
を有する計算機システム。
4. The operation of a high availability system according to claim 1, wherein said parts are created by combining primitive GUI parts prepared in advance, and said primitive GUI parts are parts that cannot be further divided. Computer system with scenario development environment.
【請求項5】 前記部品同士の関連づけは線の接続で行
ない、前記線はデータ型と方向を有することを特徴とす
る請求項4記載の高可用性システムの動作シナリオ開発
環境を有する計算機システム。
5. The computer system according to claim 4, wherein the parts are associated with each other by connecting lines, and the lines have a data type and a direction.
【請求項6】 実際の実行環境で使用されるシナリオを
読み込み、シナリオ全体の動作をシミュレーションする
シミュレータをさらに有することを特徴とする請求項1
記載の高可用性システムの動作シナリオ開発環境を有す
る計算機システム。
6. The apparatus according to claim 1, further comprising a simulator for reading a scenario used in an actual execution environment and simulating the operation of the entire scenario.
A computer system having an operation scenario development environment for the high availability system described in the above.
JP11163881A 1999-06-10 1999-06-10 Computer system having operation scenario developing environment of high available system Pending JP2000353087A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11163881A JP2000353087A (en) 1999-06-10 1999-06-10 Computer system having operation scenario developing environment of high available system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11163881A JP2000353087A (en) 1999-06-10 1999-06-10 Computer system having operation scenario developing environment of high available system

Publications (1)

Publication Number Publication Date
JP2000353087A true JP2000353087A (en) 2000-12-19

Family

ID=15782576

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11163881A Pending JP2000353087A (en) 1999-06-10 1999-06-10 Computer system having operation scenario developing environment of high available system

Country Status (1)

Country Link
JP (1) JP2000353087A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111859A (en) * 1996-10-04 1998-04-28 Toshiba Corp Composite computer system
JP2006209424A (en) * 2005-01-27 2006-08-10 Toshiba Corp Distributed simulation system
JP2008021111A (en) * 2006-07-12 2008-01-31 Hitachi Ltd Method of changing business system configuration, management computer, and program for method of changing business system configuration
JP2008084261A (en) * 2006-09-29 2008-04-10 Fuji Electric Holdings Co Ltd Program automatic generation device, program automatic generation method, and program automatic generation program
JP7409116B2 (en) 2020-01-30 2024-01-09 富士通株式会社 Program, information processing device and cyber exercise control method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10111859A (en) * 1996-10-04 1998-04-28 Toshiba Corp Composite computer system
JP2006209424A (en) * 2005-01-27 2006-08-10 Toshiba Corp Distributed simulation system
JP2008021111A (en) * 2006-07-12 2008-01-31 Hitachi Ltd Method of changing business system configuration, management computer, and program for method of changing business system configuration
JP2008084261A (en) * 2006-09-29 2008-04-10 Fuji Electric Holdings Co Ltd Program automatic generation device, program automatic generation method, and program automatic generation program
JP7409116B2 (en) 2020-01-30 2024-01-09 富士通株式会社 Program, information processing device and cyber exercise control method

Similar Documents

Publication Publication Date Title
KR101122862B1 (en) Test automation stack layering
US8392886B2 (en) System, program product, and methods to enable visual recording and editing of test automation scenarios for web application
US7076496B1 (en) Method and system for server based software product release version tracking
US6941546B2 (en) Method and apparatus for testing a software component using an abstraction matrix
EP1139216A2 (en) Web application development system
US6177942B1 (en) Part development system
US6973638B1 (en) Execution of extended activity diagrams by code generation
Leotta et al. Pesto: Automated migration of DOM‐based Web tests towards the visual approach
US8336032B2 (en) Implementing enhanced template debug
JPH05346875A (en) Automation testing system for computer application software
WO2006039666A9 (en) A graphical xml programming system and engine
US20020147963A1 (en) Method and apparatus for generating machine control instructions
JP2000353087A (en) Computer system having operation scenario developing environment of high available system
JP2001306310A (en) Method and device for assisting creation of gui part and application developing method
US5956511A (en) Program development support apparatus, program development support method, and storage medium therefor
JP2007109033A (en) Screen transition management device and screen transition management program
JPH11102293A (en) Program automatic generating method
US11645193B2 (en) Heterogeneous services for enabling collaborative logic design and debug in aspect oriented hardware designing
Pradhan User interface test automation and its challenges in an industrial scenario
JP2001117761A (en) Method and device for manufacturing picture program and recording medium stored with picture program manufacturing program
Kopylov Expanding the Functionality of Optical CAD Using the Python Scripting Language
Le Comparing State Management Between Redux And Zustand In React
Nosażewski et al. Implementation of the Turing machine symulator
CN113868140A (en) Automatic testing method and storage medium
Pages Friendly Integrated Environment for Learning and Development

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070313

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070703