(57)【要約】【課題】プロセス中断の潜在性を低減させることができる、バッチ構成を試験するための例示的方法、装置、および製品を提供する。【解決手段】バッチ構成を試験するための例示的方法、装置、および物品を開示する。開示される例示的方法は、プロセッサを使用して、プロセス制御システムのバッチ構成を通して、実行経路を識別することと、実行経路のための試験計画を生成することと、試験計画を実行するようにプロセス制御システムを促進することと、試験計画の結果を記録することと、を含む。【選択図】図１
2012168948.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサを使用して、プロセス制御システムのバッチ構成を通して、実行経路を識別することと、
前記実行経路のための試験計画を生成することと、
前記試験計画を実行するように前記プロセス制御システムを促進することと、
前記試験計画の結果を記録することと、
を含む、方法。
【請求項２】
前記バッチ構成を通して、第２の実行経路を識別することと、
前記実行経路および前記第２の実行経路をユーザに提示することと、
試験のための前記実行経路を選択する入力を受信することと、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記実行経路を識別することは、
初期ノードと各終端ノードとの間の全ての実行経路を識別することと、
分岐および収束する実行経路の部分をマージすることと、
前記実行経路のそれぞれのための経路記述を作成することと、
を含む、請求項１に記載の方法。
【請求項４】
前記試験計画を生成することは、
前記実行経路を表す相互作用のシーケンスを識別することと、
前記シーケンスに追加相互作用を挿入し、前記プロセス制御システムに前記試験計画を実行させることと、
を含む、請求項１に記載の方法。
【請求項５】
前記結果を第２のプロセス制御システム上で実行された前記試験計画の第２の結果、プロジェクト設計オブジェクティブ、または機能試験オブジェクティブのうちの少なくとも１つと比較することをさらに含む、請求項１に記載の方法。
【請求項６】
前記第２のプロセス制御システムは、前記第１のプロセス制御システムを含み、前記第２のプロセス制御システムは、前記第１のプロセス制御システムと異なるソフトウェアバージョンを実装する、請求項５に記載の方法。
【請求項７】
プロセス制御システムのバッチ構成を通して、実行経路を識別するための経路発見器と、
前記実行経路のための試験計画を生成するための試験計画作成器と、
前記プロセス制御システムが前記試験計画を実行するように促進し、前記試験計画の結果を記録するための試験計画実行器と、
を備える、装置。
【請求項８】
前記経路発見器は、前記バッチ構成を通して、第２の実行経路を識別するためのものであって、
前記試験計画作成器は、前記実行経路および前記第２の実行経路をユーザに提示し、試験のための前記実行経路を選択する入力を受信するためのものである、
請求項７に記載の装置。
【請求項９】
前記経路発見器は、
初期ノードと各終端ノードとの間の全ての実行経路を識別し、
分岐および収束する実行経路の部分をマージし、
前記実行経路のそれぞれのための経路記述を作成する、
ためのものである、請求項７に記載の装置。
【請求項１０】
前記試験計画作成器は、
前記実行経路を表す相互作用のシーケンスを識別し、
前記シーケンスに追加相互作用を挿入し、前記試験計画実行器に、前記試験計画を実行するように前記プロセス制御システムを促進させる、
ためのものである、請求項７に記載の装置。
【請求項１１】
前記結果を第２のプロセス制御システム上で実行される前記試験計画の第２の結果、プロジェクト設計オブジェクティブ、または機能試験オブジェクティブのうちの少なくとも１つと比較するための比較器をさらに備える、請求項７に記載の装置。
【請求項１２】
前記第２のプロセス制御システムは、前記第１のプロセス制御システムを備え、前記第２のプロセス制御システムは、前記第１のプロセス制御システムと異なるソフトウェアバージョンを実装する、請求項１１に記載の装置。
【請求項１３】
実行されると、プロセッサに、少なくとも、
プロセス制御システムのバッチ構成を通して、実行経路を識別させ、
前記実行経路のための試験計画を生成させ、
前記試験計画を実行するように前記プロセス制御システムを促進させ、
前記試験計画の結果を記録させる、
機械可読命令を格納する、有形製品。
【請求項１４】
前記機械可読命令は、実行されると、プロセッサに、
前記バッチ構成を通して、第２の実行経路を識別させ、
前記実行経路および前記第２の実行経路をユーザに提示させ、
試験のための前記実行経路を選択する入力を受信させる、
請求項１３に記載の有形製品。
【請求項１５】
前記機械可読命令は、実行されると、プロセッサに、少なくとも、
初期ノードと各終端ノードとの間の全ての実行経路を識別することと、
分岐および収束する実行経路の部分をマージすることと、
前記実行経路のそれぞれのための経路記述を作成することとによって、
前記実行経路を識別させる、請求項１３に記載の有形製品。
【請求項１６】
前記機械可読命令、実行されると、プロセッサに、少なくとも、
前記実行経路を表す相互作用のシーケンスを識別することと、
前記シーケンスに追加相互作用を挿入し、前記プロセス制御システムに、前記試験計画を実行させることによって、
前記試験計画を生成させる、請求項１３に記載の有形製品。
【請求項１７】
前記機械可読命令は、実行されると、プロセッサに、前記結果を第２のプロセス制御システム上で実行される前記試験計画の第２の結果、プロジェクト設計オブジェクティブ、または機能試験オブジェクティブのうちの少なくとも１つと比較させる、請求項１３に記載の有形製品。
【請求項１８】
前記第２のプロセス制御システムは、前記第１のプロセス制御システムを備え、前記第２のプロセス制御システムは、前記第１のプロセス制御システムと異なるソフトウェアバージョンを実装する、請求項１７に記載の有形製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、バッチ構成に関し、より具体的には、バッチ構成を試験するための方法、装置、および製品に関する。
【背景技術】
【０００２】
バッチは、製品を製造するための反復および／または連続的操作を動作させるために使用することができる、ある種のプロセス制御システム構成である。プロセスプラントの寿命サイクルの間、プロセス制御システムは、交換、修理、パッチング、アップグレード等の必要がある場合がある。しかしながら、プロセス制御システムのあらゆる変更は、プロセスプラントおよび／またはバッチ構成の操作を中断させる潜在性を有する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、プロセス中断の潜在性を低減させることができる、バッチ構成を試験するための例示的方法、装置、および製品を提供する。
【課題を解決するための手段】
【０００４】
バッチ構成を試験するための例示的方法、装置、および物品を開示する。開示される例示的方法は、プロセッサを使用して、プロセス制御システムのバッチ構成を通して、実行経路を識別することと、実行経路のための試験計画を生成することと、試験計画を実行するようにプロセス制御システムを促進することと、試験計画の結果を記録することと、を含む。
【０００５】
開示される例示的装置は、プロセス制御システムのバッチ構成を通して、実行経路を識別するための経路発見器と、実行経路のための試験計画を生成するための試験計画作成器と、試験計画を実行するようにプロセス制御システムを促進し、試験計画の結果を記録するための試験計画実行器と、を備える。
【図面の簡単な説明】
【０００６】
【図１】プロセス制御システムのためのバッチ構成を試験するための例示的システムの略図である。
【図２】図１の例示的バッチ試験器を実装する、例示的様式を例証する図である。
【図３】例示的バッチ階層を例証する図である。
【図４】バッチの一部を表す、例示的シーケンシャルファンクションチャート（ＳＦＣ）を例証する図である。
【図５】図４で強調される例示的経路に対応する、相互作用テーブルである。
【図６】図４で強調される例示的経路のための例示的試験計画である。
【図７】例示的相互作用マッピングテーブルである。
【図８】図６の例示的試験計画の例示的結果である。
【図９】図１および２の例示的バッチ試験器を使用して、バッチ構成を試験するように行なわれてもよい、例示的プロセスを表す流れ図である。
【図１０】図１および２の例示的バッチ試験器を実装し、かつ／またはプロセス制御システムのためのバッチ構成を試験するように行なわれ得る、例示的プロセスを表す流れ図である。
【図１１】図１および２の例示的バッチ試験器を実装し、かつ／またはプロセス制御システムのためのバッチ構成を試験するように行なわれ得る、例示的プロセスを表す流れ図である。
【図１２】バッチ構成を通して、経路を識別するように実装されてもよい、例示的疑似コードである。
【図１３Ａ】バッチ構成を通して、分岐および収束経路をマージするように実装されてもよい、例示的疑似コードである。
【図１３Ｂ】バッチ構成を通して、分岐および収束経路をマージするように実装されてもよい、例示的疑似コードである。
【図１３Ｃ】バッチ構成を通して、分岐および収束経路をマージするように実装されてもよい、例示的疑似コードである。
【図１３Ｄ】バッチ構成を通して、分岐および収束経路をマージするように実装されてもよい、例示的疑似コードである。
【図１３Ｅ】バッチ構成を通して、分岐および収束経路をマージするように実装されてもよい、例示的疑似コードである。
【図１４】人間可読および／または機械可読バッチ相互作用テーブルを生成するように実装されてもよい、例示的疑似コードである。
【図１５Ａ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｂ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｃ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｄ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｅ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｆ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｇ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｈ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｉ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１５Ｊ】バッチ試験計画を生成するように実装され得る、例示的疑似コードである。
【図１６】ＳＦＣを定義および／またはナビゲートするために使用可能な例示的ルールセットである。
【図１７】図１０および／または図１１の例示的プロセス、図１２、図１３Ａ〜Ｅ、図１４および／または図１５Ａ〜Ｊの例示的疑似コードを行ない、かつ／またはバッチ構成の試験を実施するように使用および／またはプログラムされてもよい、例示的プロセッサプラットフォームの略図である。
【発明を実施するための形態】
【０００７】
現代のプロセス制御システムの複雑性、ならびに無限の数のプロセスプラント構成および／またはバッチ構成のために、プロセス制御システムおよび／またはバッチ構成の修理、パッチ、アップグレード等がリリースされる前に、存在する場合があるあらゆる欠陥を検出することは、困難である可能性がある。例えば、そのような検出されない欠陥は、プロセス制御システムおよび／またはバッチ構成が、実際のプロセスプラントと併せて動作された後および／または動作された時にのみ明白となる場合がある。そのプロセス制御システムおよび／またはバッチ構成の交換、修正、パッチ、更新、および／またはアップグレードを行なう必要性を軽減するために、一部の顧客は、そのプロセス制御システムを他のデバイスおよび／またはネットワークから隔離することを選択している。そのような行為が中断の潜在性を低減させる場合はあるが、プロセスエンジニアが、プロセス制御システムおよび／またはバッチ構成のより新しいバージョンで利用可能な特徴および／または能力を利用するのも妨げる。
【０００８】
一般に、本明細書に開示される例示的装置、方法、および製品は、バッチ構成を試験するために使用されてもよい。特に、本明細書に開示される例示的装置、方法、および製品は、バッチ構成を通して、全ての可能性のある実行経路を自動的に識別し、それらの可能性のある実行経路のいずれかまたは全部のための試験計画を自動的に生成し、かつ／またはそれらの可能性のある実行経路のいずれかまたは全部を自動的に試験するために使用されてもよい。バッチ構成は、新しいおよび／または更新されたプロセス制御システムが、顧客のプロセスプラントを制御するために使用される前に、新しいおよび／または更新されたプロセス制御システムによって試験されてもよい。バッチ構成は、加えて、または代替として、プロジェクト設計オブジェクティブおよび／または機能試験ケースオブジェクティブに対して試験されてもよい。
【０００９】
自動的におよび／または体系的にバッチ構成を試験することによって、いくつかの利点が実現される場合がある。自動バッチ構成試験は、現実的試験シナリオによってのみ検出され得る、ソフトウェア欠陥の識別を容易にすることによって、プロセスプラントにおける中断イベント数を減少させることが可能である。自動バッチ構成試験はまた、バッチ構成の挙動が、自動的に判定および／または検証可能であるため、バッチ構成を徹底的に試験するために必要とされる時間および／または努力を低減させることが可能である。自動バッチ構成試験はさらに、実質的に、より多くの試験シナリオを実行および／または検証できるようにすることが可能である。自動バッチ構成試験はまた、高度に規制された産業のために、作成が高価かつ／または時間のかかる可能性があるプロセスモデルの必要なく、試験を可能にする。加えて、自動バッチ試験は、プロセス制御システムアップグレードを展開する際、顧客の信頼を増加させ、プロセス制御システムをサポートするコストを低減することができる。
【００１０】
図１は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶ（登録商標）プロセス制御システム等の、プロセス制御システム１０５のためのバッチ構成を試験するための例示的システム１００を例証する。図１の例示的プロセス制御システム１０５は、１つ以上のプロセスコントローラ１１０と、１つ以上のオペレータステーション１１５と、１つ以上のアプリケーションおよび／またはワークステーション１２０とを含む。例示的プロセスコントローラ１１０は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶコントローラである。図１の例示的プロセスコントローラ１１０、例示的オペレータステーション１１５、および例示的ワークステーション１２０は、一般に、アプリケーション制御ネットワークと称される、バスおよび／またはローカルエリアネットワーク（図示せず）を介して、通信可能に連結される。ローカルエリアネットワークは、任意の所望の通信媒体および／またはプロトコルを使用して実装されてもよい。例えば、ローカルエリアネットワークは、有線および／または無線Ｅｔｈｅｒｎｅｔ（登録商標）通信方式に基づいてもよい。しかしながら、任意の他の好適な通信媒体および／またはプロトコルも使用される可能性がある。
【００１１】
図１の例示的オペレータステーション１１５によって、プロセスプラントオペレータは、プロセスプラントオペレータが、プロセスプラント変数を視認し、プロセスプラント状態を視認し、プロセスプラント条件を視認し、プロセスプラントアラームを視認し、かつ／またはプロセスプラントオペレータにプロセスプラント設定（例えば、設定点および／または動作状態、アラームの解除、アラームの消音等）を変更するために使用されるもの等のユーザ入力を提供することを可能にする、１つ以上のオペレータディスプレイ画面、グラフィカルユーザインターフェース、および／またはアプリケーションを精査および／または操作することが可能となる。そのような画面および／またはアプリケーションは、典型的には、プロセス構成エンジニアによって設計および／または実装される。以下に詳述されるように、例示的バッチ試験器１２５は、オペレータステーション１１５へのユーザおよび／またはオペレータ入力１１７をシミュレートし、プロセス制御システム１０５に、バッチ構成を通して、特定の選択および／または選定された経路を実行するように促進、命令、強制、および／または別様に行なわせる場合がある。
【００１２】
図１の例示的ワークステーション１２０は、任意の数および／またはタイプのプロセス制御アプリケーションおよび／または機能を実装するように構成されてもよい。図１の例証される実施例では、ワークステーション１２０は、可能性のある他のアプリケーションおよび／または機能の中でもとりわけ、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．が販売しているＤｅｌｔａＶ  Ｂａｔｃｈ  Ｅｘｅｃｕｔｉｖｅ  １３０を実装するように構成される。図１の例示的Ｂａｔｃｈ  Ｅｘｅｃｕｔｉｖｅ  １３０は、例示的コントローラ１１０によって実装される、１つ以上の位相クラスの入力、出力、および／または演算を制御する、順序付ける、および／または調整することによって、１つ以上のシーケンシャルファンクションチャート（ＳＦＣ）１３５によって定義される、バッチプロシージャを行なう。図１の例示的ＳＦＣ１３５は、アクションおよび／またはプロセスのグラフィカル表現であって、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｏｃｉｅｔｙ  ｏｆ  Ｍｅａｓｕｒｅｍｅｎｔ  ａｎｄ  Ｃｏｎｔｒｏｌ（ＩＳＡ）Ｓ８８規格等の任意の過去、現在、および／または将来の標準および／または推奨に従って、定義および／または構成される。
【００１３】
図１の例示的ステーション１１５および１２０は、図１７の例示的プロセッサプラットフォームＰ１００等の任意の適切なコンピューティングシステムおよび／または処理システムを使用して実装されてもよい。例示的ステーション１１５および１２０は、例えば、単一プロセッサおよび／またはマルチプロセッサコンピュータおよび／またはコンピュータワークステーションを使用して実装される可能性がある。
【００１４】
図１の例示的バッチ試験器１２５を例示的Ｂａｔｃｈ  Ｅｘｅｃｕｔｉｖｅ  １３０および／または例示的コントローラ１１０と相互作用可能にするために、図１の例示的プロセス制御システム１０５は、プロセス制御（ＯＰＣ）コントローラ１４０のための任意の数および／またはタイプのオブジェクトのリンクおよび埋め込み（ＯＬＥ）を含む。例示的ＯＰＣコントローラ１４０は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．により販売されているＤｅｌｔａＶ  ＯＰＣ  Ｓｅｒｖｅｒである。
【００１５】
図１の例証される実施例では、制御システム階層の下位層１４５（例えば、機器モジュール、制御モジュール、入力／出力デバイス、フィールドデバイス等）は、実際のプロセス制御フィールドデバイス上で実行されているのではなく、シミュレートおよび／またはモデル化されている。いくつかの実施例では、シミュレートされた制御層１４５はまた、例示的プロセス制御システム１０５によって制御される、プロセスプラントもシミュレートおよび／またはモデル化する。Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶ  ＳｉｍｕｌａｔｅＰｒｏアプリケーション等の任意の数および／またはタイプの方法、論理、ツール、アプリケーション、および／またはデバイスが、図１の例示的なシミュレートされた制御層１４５を実装するために使用されてもよい。
【００１６】
制御構成要素（例えば、例示的コントローラ１１０、例示的オペレータステーション１１５、および／または例示的ワークステーション１２０）を構成するために、図１の例示的プロセス制御システム１０５は、プロセス制御システム構成サブシステム１５０を含む。図１の例示的構成サブシステム１５０は、演算データベース１５５のコンテンツに基づいて、プロセス制御システム１０５の実際の（すなわち、物理的）プロセス制御構成要素をロード、構成、作動、および／またはプログラムする。図１の例示的構成サブシステム１５０および例示的演算データベース１５５は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶプロセス制御システムの一部である。図１の例示的演算データベース１５５は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｓｏｆｔｗａｒｅ  Ｓｕｉｔｅ等のＤｅｌｔａＶプロセス制御システムの他のツールおよび／またはインターフェース（図示せず）を使用して、生成、定義、規定、および／または投入されてもよい。いくつかの実施例では、例示的ＳＦＣ１３５は、例示的演算データベース１５５内に格納される。
【００１７】
図１は、バッチ構成を試験するための例示的装置、方法、および製品が、有利にも、採用されてもよい、例示的プロセス制御システム１０５を例証するが、当業者は、本明細書に開示される装置、方法、および製品が、所望される場合、有利にも、図１の例証される実施例より複雑性の高いまたは低い（例えば、２つ以上のコントローラを有する、２つ以上の地理的場所にわたる等）、他のプロセス制御システムにおいても使用されてもよいことを容易に理解するであろう。さらに、例証を明確にするために、図１に示されないが、任意の数および／またはタイプの追加および／または代替デバイス、構成要素、および／またはシステムが、プロセスプラントおよび／またはプロセス制御システム内に含まれてもよい。例えば、プロセスプラントおよび／またはプロセス制御システムは、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔの一企業であるＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．によって販売されているＤｅｌｔａＶプロセス制御システム等のプロセス制御システムによって管理および／または制御可能なファイアウォール、スイッチ、ルータ、ハブ、電源、および／または任意の他のデバイスを含んでもよく、かつ／または実装してもよい。
【００１８】
バッチ構成を試験するために、図１の例示的システム１００は、例示的バッチ試験器１２５を含む。図１の例示的バッチ試験器１２５は、プロセス制御システム１０５が、意図されたように、バッチを実行することを検証するために、バッチ構成、プログラム、および／またはスクリプトを試験する。バッチの実行を検証するために、例示的バッチ試験器１２５は、バッチの１つ以上の結果を比較し、１つ以上のベンチマークを実行する。例示的ベンチマークとしては、異なるバージョンのプロセス制御システム１０５および／または異なるバージョンのプロセス制御システムソフトウェア、および／またはオブジェクティブ、期待および／または予測される挙動、および／またはプロジェクト構成ドキュメントおよび／または機能試験ドキュメント内に定義および／または特定される結果上でのバッチの以前の実行から収集される、１つ以上の結果が挙げられるが、それらに限定されない。例示的バッチ試験器１２５は、バッチ構成、プログラムおよび／またはスクリプト（例えば、プロシージャ、ユニットプロシージャ、演算、および／または位相クラス）、およびコントローラインターフェース論理の全層を試験する。加えて、または代替として、バッチ試験器１２５は、バッチの実行時間が不適切に遅延されていない、バッチが時期尚早に「完了」状態に移行しない、バッチが、意図されるように、機器を獲得および／または放出する、コマンドがエラーを返さない、バッチがエラーから正しく回復する、および／またはオペレータ相互作用が、意図されるように、実装されることを検証する。バッチ試験器１２５は、例えば、コントローラ１１０が同一状態を設定するのに先立って、コントローラ１１０内の状態の変更を強制することによって、ＳＦＣ１３５のコマンドが、正しくかつ／または非受動的にコントローラ１１０上で実行することを保証する。図１の例示的バッチ試験器１２５を実装する例示的様式は、図２と関連して、以下に開示される。
【００１９】
図１の例示的バッチ試験器１２５は、バッチ構成、スクリプト、および／またはプログラムを分析し、バッチを通して、全ての可能性のある実行経路を識別する。例示的バッチ試験器１２５は、Ｓ８８規格によって定義されるように、バッチスクリプト階層およびＳＦＣ構成の知識を使用し、バッチを通して、全ての可能性のある実行経路を判定する。例示的バッチ試験器１２５は、実行経路の識別されたリストをユーザに表示する。ユーザによって選択される実行経路のそれぞれに対して、バッチ試験器１２５は、プロセス制御システム１０５および／またはシミュレートされた制御層１４５を強制、促進、および／または別様に行なわせ、試験される実行経路を追従する、試験計画を生成する。例示的バッチ試験器１２５は、プロセス制御システム１０５および／またはシミュレートされた制御層１４５を促進、強制、および／または別様に行なわせ、バッチを通して、特定の実行経路を追従するために必要とされる、全ての相互作用のリストをコンパイルすることによって、試験計画を生成する。例示的バッチ試験器１２５によって生成されてもよい、例示的試験計画は、人間可読（例えば、拡張マークアップ言語（ＸＭＬ）に従って構築される）かつプログラム的に実行可能である。各実行経路の実行の結果は、ユーザに提示され、かつ／または適切なベンチマークおよび／またはオブジェクティブとの後での比較のためにログファイル内に保存される。
【００２０】
図１の例示的バッチ試験器１２５は、Ｓ８８規格によって定義されるように、バッチ構成、スクリプト、および／またはプログラムの全てのレベルを実行し、したがって、バッチを通して、階層をナビゲートし、バッチを通して、全ての可能性のある実行経路を識別する。図１６は、ＳＦＣを定義し、例示的バッチ試験器１２５によって使用され、バッチを通して、実行経路を識別することができる、ルールおよび／または構成の例示的リストを例証する。図３は、単一プロシージャ３２５を伴う単一ユニットプロシージャ３２０内に、単一演算３１５内に単一ステップ３１０を有する、位相クラス３０５のための例示的バッチ階層３００を例証する。図３の例証される実施例では、各ボックスの周囲に示されるテスト（例えば、ボックス３１０の周囲のテキスト３３０）は、バッチの各層と相互作用するために使用される、コマンドを示す。
【００２１】
図４は、バッチの一部を表す、例示的ＳＦＣ４００を例証する。図１の例示的バッチ試験器１２５は、例示的ＳＦＣ４００をナビゲートし、ＳＦＣを通して、各実行経路を識別する。例示的実行経路は、図４では、参照番号４０５に指定される。図４に示されるように、実行経路４０５は、初期設定４１０で開始し、終端４１５まで継続する。図４における例示的実行経路４０５は、以下によって表すことが可能である。
Ｓ１−＞Ｔ１−＞Ｓ２−＞Ｔ２Ｂ−＞Ｓ３−＞Ｔ３Ｂ
ここでは、「−＞」記号は、「移行」を表す。一般的に、バッチは、複数のＳＦＣ層を含み、したがって、バッチを通しての経路発見は、より複雑となるが、経路ナビゲーションは、単一ＳＦＣと同一方法論および／または論理を使用する。例示的バッチ試験器１２５によって行なわれ、バッチおよび／またはＳＦＣ内の実行経路を発見および／または識別することができる例示的プロセスは、図１１に関連して、以下に開示される。例示的バッチ試験器１２５によって実装され、バッチおよび／またはＳＦＣを通して、実行経路を発見および／または識別する場合がある、例示的疑似コードは、図１２、図１３Ａ〜Ｅ、および図１４に示される。
【００２２】
試験される各実行経路（例えば、図４の例示的実行経路４０５）に対して、図１の例示的バッチ試験器１２５は、現在検討される経路に沿って、実行を操作、促進、強制、および／または別様に行なわせるために必要とされる、コマンドのリストを生成する。コマンドのリストは、実行経路を追従するために要求される入力と、経路に沿って、バッチによって操作される出力と、を含む。
【００２３】
図４の例示的実行経路４０５に沿って、実行を操作、促進、強制、および／または別様に行なわせる、コマンドのリストを表す、例示的相互作用テーブル５００は、図５に示される。図５の例示的入力は、３つの異なるソースから成る、すなわち、人的相互作用、シミュレートされた制御層１４５から受信した信号（例えば、「弁ＸＶ−１０１が開放している」）、および／または外部プログラム制御から受信した信号（例えば、「ＳＦＣを開始する」）である。図５の例示的出力は、シミュレートされた制御層１４５への信号（例えば、「弁ＸＶ−１０１を開放する」）、外部プログラムへの信号、および／またはバッチの現在の状態に関する情報（例えば、「ステップＳ１がアクティブである」）である。図５の例示的相互作用テーブル５００では、＃列５０５は、コマンドのシーケンス番号を表し、入力／出力列５１０は、コマンドが受信される（入力）か、または付与される（出力）かのいずれであるかを表し、エージェント列５１５は、コマンド実行者を表し、タイプ列５２０は、エージェント５１５のタイプを表す。
【００２４】
バッチ経路を実行するために、例示的バッチ試験器１２５は、コマンドを送信し、バッチの状態を変更し、かつ／または何の演算が生じたかに関するフィードバックを受信する。故に、図１の例示的バッチ試験器１２５は、図５の例示的相互作用テーブル５００を、図６の例示的試験計画６００内で陰影が付されて示される、追加コマンドで増補させる（そのうち２つは、参照番号６０５および６１０で指定される）。バッチ試験器１２５によって追加された追加コマンドは、例示的バッチ試験器１２５が、それ自体をバッチと同期させることを可能にする。図６に示されるように、例示的バッチ試験器１２５は、各ステップでのアクションを含む、バッチの各演算、挙動、および／または遷移を検証する。したがって、各ステップおよび／または遷移は、図６に示されるように、バッチ試験器１２５によって設定および／または記録される、事前条件および／または事後条件を有する。図１の例示的バッチ試験器１２５によって実装され、試験計画を作成されてもよい、例示的疑似コードは、図１５Ａ〜Ｊに示される。
【００２５】
図１に概念的に示されるように、例示的バッチ試験器１２５は、バッチが実行する環境をエンベロープし、バッチのための必要な全てのフィードバックを提供する。例えば、オペレータは、もはや入力を提供し、かつ／またはバッチに応答することはない。代わりに、バッチ試験器１２５が、シミュレートされた入力１１７を提供する。しかしながら、図１に示されるように、下位制御層が、シミュレートされた制御層１４５によってシミュレートされるため、例示的バッチ試験器１２５は、コントローラ１１０とシミュレートされた制御層１４５との間で信号を提供および／または記録する必要はない。
【００２６】
図１の例示的バッチ試験器１２５に、プロセス制御システム１０５とデータを交換するために使用されるコマンドを判定可能にするために、例示的バッチ試験器１２５は、例えば、プロセス制御システム１０５のエンジニアによって提供される、相互作用マッピングテーブル１６０を使用する。図１の例示的相互作用マッピングテーブル１６０は、データおよび／またはコマンドが、どのようにプロセス制御システム１０５に書き込まれるか、および／またはプロセス制御システム１０５から受信されるかを定義および／または特定する。例示的相互作用マッピングテーブル１６０は、図７に示される。図１の例示的バッチ試験器１２５は、相互作用マッピングテーブル１６０を使用して、試験計画（例えば、図６の例示的試験計画６００）内の各ステップに対して、そのステップを実行するための特定のコマンドを識別する。
【００２７】
図８は、図４の例示的試験経路４０５のために、図１の例示的バッチ試験器１２５によって生成される、例示的試験結果ログ８００を例証する。各試験経路が実行されるのに伴って、バッチ試験器１２５は、ログファイルを更新および／または増補する。示されるように、ログ８００は、試験範囲を判定するために使用可能であって、容易にナビゲート可能である。バッチ経路が正しく実行されるかどうかは、例えば、ログ８００の関連付けられた部分を別のログのコンテンツと比較することによって、判定可能である。上述のように、別のログは、例えば、別のバージョンのプロセス制御システムソフトウェアを使用して、バッチを試験することによって、生成されてもよい。さらに、ログ８００および／またはその一部は、プロジェクト設計ドキュメントおよび／または機能試験オブジェクティブと比較されてもよい。そのような実施例では、プロジェクト設計ドキュメントおよび／または機能試験オブジェクティブ（および／またはその一部）は、バッチ試験器１２５によって、アクセス可能および／または可読であって、ログ８００および／またはその一部との比較を可能にする、フォーマットおよび／またはデータ構造を使用して格納される。
【００２８】
図２は、図１の例示的バッチ試験器１２５を実装する例示的様式を例証する。図１の例示的演算データベース１５５とインターフェースをとるために、図１の例示的バッチ試験器１２５は、データベースインターフェース２０５を含む。任意の数および／またはタイプのメッセージ、プロトコル、論理、方法、および／またはアプリケーションプログラミングインターフェースを使用して、図２の例示的データベースインターフェース２０５は、バッチ試験器１２５の他の部分に、演算データベース１５５から情報（例えば、バッチ構成、プログラム、および／またはスクリプト）をクエリおよび／または取得させ、かつ／または演算データベース１５５内に結果（例えば、ログファイル）を格納できるようにする。
【００２９】
バッチを通して、経路を識別するために、図２の例示的バッチ試験器１２５は、経路発見器２１０を含む。図２の例示的経路発見器２１０は、例えばＳ８８規格に定義されるように、バッチ構成、スクリプト、および／またはプログラムの全てのレベルをトレースおよび／または実行し、したがって、図１、図３、図４、および図１６に関連して、上述に開示されるように、バッチを通して、階層をナビゲートし、バッチを通して、全ての可能性のある実行経路を識別する。
【００３０】
図６の例示的試験計画６００等の試験計画を作成するために、図２の例示的バッチ試験器１２５は、試験計画作成器２１５を含む。試験される各バッチ実行経路に対して、図２の例示的試験計画作成器２１５は、現在検討される経路の実行を操作、促進、強制、および／または別様に行なわせるために必要とされる、コマンドのリストを生成する。コマンドのリストは、実行経路を追従するために要求される入力と、その経路に沿って、バッチによって操作される出力と、を含む。例示的試験計画作成器２１５はまた、追加コマンドを挿入し、試験計画実行器２２０に、バッチの状態を変更し、かつ／または何の演算が生じるかに関するフィードバックを受信できるようにする。
【００３１】
試験計画を実行するために、図２の例示的バッチ試験器１２５は、例示的試験計画実行器２２０を含む。図７の例示的テーブル１６０等の相互作用マッピングテーブルを使用して、図２の例示的試験計画実行器２２０は、試験計画の各コマンドを実行する。試験計画が実行されるのに伴って、例示的試験計画実行器２２０は、試験計画の実行の間に取得される結果および／または状態情報を図８の例示的ログファイル８００等のログファイル内に格納する。
【００３２】
例示的試験計画実行器２２０が、図１の例示的プロセス制御システム１０５と相互作用できるようにするために、図２の例示的バッチ試験器１２５は、制御システムインターフェース２２５を含む。
【００３３】
試験結果を検証するために、図２の例示的バッチ試験器１２５は、比較器２３０を含む。任意の数および／またはタイプの方法、論理、および／または基準を使用して、図２の例示的比較器２３０は、例示的試験計画実行器２２０によって生成されたログファイルを試験計画実行器２２０によって以前に生成された他のログファイルと比較する。例えば、比較器２３０は、バッチが意図された状態に到達し、プロセス制御システム１０５の意図された出力が生じたことを検証してもよい。加えて、または代替として、比較器２３０は、比較されるログファイルおよび／またはその一部をプロジェクト設計ドキュメントおよび／または機能試験オブジェクティブと比較可能である。そのような実施例では、プロジェクト設計ドキュメントおよび／または機能試験オブジェクティブ（および／またはその一部）は、比較器２３０によってアクセス可能および／または可読であって、ログファイルおよび／またはその一部との比較を可能にする、フォーマットおよび／またはデータ構造を使用して格納される。
【００３４】
図１の例示的バッチ試験器１２５を実装する例示的様式は、図２に示されるが、図２に例証される、インターフェース、データ構造、要素、プロセス、および／またはデバイスのうちの１つ以上は、組み合わせられ、分割され、再配列され、省略され、排除され、かつ／または任意の他の方法で実装されてもよい。さらに、例示的データベースインターフェース２０５、例示的経路発見器２１０、例示的試験計画作成器２１５、例示的試験計画実行器２２０、例示的制御システムインターフェース２２５、および／またはより一般的には、図１および図２の例示的バッチ試験器１２５は、ハードウェア、ソフトウェア、ファームウェア、および／またはハードウェア、ソフトウェアおよび／またはファームウェアの任意の組み合わせによって実装されてもよい。したがって、例えば、例示的データベースインターフェース２０５、例示的経路発見器２１０、例示的試験計画作成器２１５、例示的試験計画実行器２２０、例示的制御システムインターフェース２２５、および／またはより一般的には、例示的バッチ試験器１２５のいずれかは、図１７の例示的プロセッサプラットフォームＰ１００、および／または１つ以上の回路、プログラム可能プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、プログラム可能論理デバイス（ＰＬＤ）、フィールド−プログラム可能論理デバイス（ＦＰＬＤ）、フィールド−プログラム可能ゲートアレイ（ＦＰＧＡ）、ヒューズ等によって実装されてもよい。これらの要素のうちの１つ以上を組み込む、本特許の任意の装置の請求項が、純粋にソフトウェアおよび／またはファームウェア実装を包含するように読み取られる時、例示的データベースインターフェース２０５、例示的経路発見器２１０、例示的試験計画作成器２１５、例示的試験計画実行器２２０、例示的制御システムインターフェース２２５、および／またはより一般的には、例示的バッチ試験器１２５のうちの少なくとも１つは、本明細書によって、ファームウェアおよび／またはソフトウェアを格納する有形コンピュータ可読媒体等の有形製品を含むものと明示的に定義される。さらに、例示的バッチ試験器１２５は、図２に例証されるものの代わりに、またはそれに加えて、インターフェース、データ構造、要素、プロセス、および／またはデバイスを含んでもよく、かつ／または例証されるインターフェース、データ構造、要素、プロセス、および／またはデバイスのいずれかまたは全てのうちの２つ以上を含んでもよい。
【００３５】
本明細書で使用される場合、用語「有形コンピュータ可読媒体」とは、任意のタイプのコンピュータ可読媒体を明示的に含み、伝搬信号を明示的に排除するように定義される。本明細書で使用される場合、用語「非一過性コンピュータ可読媒体」とは、任意のタイプのコンピュータ可読媒体を含み、伝搬信号を排除するように明示的に定義される。例示的有形および／または非一過性コンピュータ可読媒体は、揮発性および／または不揮発性メモリ、揮発性および／または不揮発性メモリデバイス、コンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、読取専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、プログラム可能ＲＯＭ（ＰＲＯＭ）、電子的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電子的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、光学式記憶ディスク、光学式記憶デバイス、磁気記憶ディスク、磁気記憶デバイス、キャッシュ、および／または情報が、任意の持続時間の間、格納され（例えば、長期間、恒久的に、短期間、一時的にバッファリングする間、および／または情報のキャッシュの間）、プロセッサ、コンピュータ、および／または図１７に関連して後述される、例示的プロセッサプラットフォームＰ１００等のプロセッサを有する他の機械によってアクセス可能である、任意の他の記憶媒体を含む。
【００３６】
図９は、例えば、エンジニアおよび／またはプロセスプラントオペレータによって行なわれ、プロセス制御システムのためのバッチ構成を試験してもよい、例示的プロセスを表す流れ図である。図９の例示的プロセスは、ユーザが、図１の例示的プロセス制御システム１０５等のプロセス制御システムのために、図７の例示的テーブル１６０等の相互作用マッピングテーブルを構成するステップから開始する（ブロック９０５）。ユーザは、１つ以上のバッチ構成を含有する、ＤｅｌｔａＶ．ＦＨＸファイル等の構成ファイルをインポートする（ブロック９１０）。ユーザは、シミュレートされた制御層１４５を有効化し（ブロック９１５）、試験するためのバッチを選択する（ブロック９２０）。ユーザは、バッチ試験器１２５によって自動的に識別された実行経路のリストをバッチを通して精査し（ブロック９２５）、試験のために識別された実行経路のうちの１つ以上を選択する（ブロック９３０）。ユーザは、バッチ試験の実行を開始（ブロック９３５）し、バッチ試験の結果を精査する（ブロック９４０）。ユーザは、例えば、ログファイルを別のログファイルと比較する、および／またはログファイル内の結果をプロジェクト設計ドキュメントおよび／または機能試験ドキュメントと比較することによって、バッチ試験結果を認証する（ブロック９４５）。
【００３７】
図１０および図１１は、図１および図２の例示的バッチ試験器１２５内に実装するように行なわれてもよい、例示的プロセスを表す流れ図である。プロセッサ、コントローラ、および／または任意の他の適切な処理デバイスが、図１０および／または図１１の例示的プロセスを行なうように、使用、構成、および／またはプログラムされてもよい。例えば、図１０および／または図１１の例示的プロセスは、有形コンピュータ可読媒体上に格納される、コード化命令または機械可読命令で具現化されてもよい。機械可読命令は、例えば、プロセッサ、コンピュータ、および／またはプロセッサを有する機械に、１つ以上の特定のプロセスを行なわせる命令を備える。代替として、図１０および／または図１１の例示的プロセスの一部または全部は、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、ＦＰＧＡ、離散論理、ハードウェア、ファームウェア等の任意の組み合わせを使用して実装されてもよい。また、図１０および／または図１１の例示的プロセスの一部または全部は、手動で、または上述の技法のいずれかの任意の組み合わせ、例えば、ファームウェア、ソフトウェア、離散論理、および／またはハードウェアの任意の組み合わせとして、実装されてもよい。さらに、図９、図１０、および／または図１１の例示的操作を実装する多くの他の方法が、採用されてもよい。例えば、ブロックの実行の順番は、変更されてもよく、かつ／または開示されるブロックのうちの１つ以上は、変更、排除、再分割、または組み合わせられてもよい。加えて、図９、図１０、および／または図１１の例示的プロセスのいずれかまたは全部のブロックは、連続的に、および／または、例えば、異なるユーザ、別個の処理スレッド、プロセッサ、デバイス、離散論理、回路等によって、並行して行なわれてもよい。
【００３８】
図１０の例示的プロセスは、例示的経路発見器２１０が、バッチを通して、実行経路を識別することから開始する（ブロック１００５）。経路発見器２１０は、例えば、図１１の例示的プロセスを行なうことによって、および／または図１２、図１３Ａ〜Ｅ、および図１４の例示的疑似コードを実装することによって、実行経路を識別してもよい。経路発見器２１０は、ユーザによる精査のために、識別された実行経路のリストを表示する（ブロック１０１０）。例示的試験計画作成器２１５は、ユーザから、表示された実行経路のうちの１つ以上の選択を受信し（ブロック１０１５）、各選択された実行経路に対して、図６の例示的試験計画６００等の試験計画を生成する（ブロック１０２０）。例示的試験計画作成器２１５は、例えば、図１５Ａ〜Ｊの例示的疑似コードを実装することによって、試験計画を作成する。
【００３９】
例示的試験計画実行器２２０は、試験計画作成器２１５によって作成された試験計画のそれぞれを実行し（ブロック１０２５）、ログファイル内に結果を格納する（ブロック１０３０）。ユーザによって指示されるように、例示的比較器２３０は、ログファイルの全部または任意の部分を１つ以上の他のログファイルと比較し、実行されたバッチ経路の結果を検証および／または認証する（ブロック１０３５）。次いで、制御は、図１０の例示的プロセスを終了する。
【００４０】
図１１の例示的プロセスは、バッチを通して、経路を識別するために行なわれてもよい。図１１の例示的プロセスは、例えば、図１２の例示的疑似コードを実装することによって、初期ノードから開始し任意の終端で終了するか、または遷移をハングアップする、バッチを通して、全ての経路を識別する、経路発見器２１０で開始する（ブロック１１０５）。経路発見器２１０は、例えば、図１３Ａ〜Ｅの例示的疑似コードを実装することによって、分岐および収束する経路を識別し、マージする（ブロック１１１０）。経路発見器２１０は、例えば、図１４の例示的疑似コードを実装することによって、マージされた経路のための経路記述を作成する（ブロック１１１５）。次いで、制御は、図１１の例示的プロセスを終了する。
【００４１】
図１２、図１３Ａ〜Ｅ、図１４、および図１５Ａ〜Ｊは、図１および図２の例示的バッチ試験器１２５、特に、例示的経路発見器２１０および図２の例示的試験計画作成器２１５を実装するために行なわれてもよい、例示的プロセスを表す疑似コードである。プロセッサ、コントローラ、および／または任意の他の好適な処理デバイスは、図１２、図１３Ａ〜Ｅ、図１４、および／または図１５Ａ〜Ｊの例示的疑似コードを行なうために、使用、構成、および／またはプログラムされてもよい。例えば、図１２、図１３Ａ〜Ｅ、図１４および／または図１５Ａ〜Ｊの例示的疑似コードは、有形コンピュータ可読媒体上に格納される、コード化命令または機械可読命令で具現化されてもよい。機械可読命令は、例えば、プロセッサ、コンピュータおよび／またはプロセッサを有する機械に、１つ以上の特定のプロセスを行なわせる命令を備える。代替として、図１２、図１３Ａ〜Ｅ、図１４、および／または図１５Ａ〜Ｊの例示的疑似コードの一部または全部は、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、ＦＰＧＡ、離散論理、ハードウェア、ファームウェア等の任意の組み合わせを使用して実装されてもよい。また、図１２、図１３Ａ〜Ｅ、図１４、および図１５Ａ〜Ｊの例示的疑似コードの一部または全部は、手動で、または上述の技法のいずれかの任意の組み合わせ、例えば、ファームウェア、ソフトウェア、離散論理および／またはハードウェアの任意の組み合わせとして実装されてもよい。さらに、図１２、図１３Ａ〜Ｅ、図１４、および／または図１５Ａ〜Ｊの例示的操作を実装する多くの他の方法が、採用されてもよい。例えば、疑似コードのブロック、部分、命令文、および／または表現の実行の順番は、変更されてもよく、かつ／または開示されるブロック、部分、命令文、および／または表現のうちの１つ以上は、変更、排除、再分割、または組み合わせられてもよい。加えて、図１２、図１３Ａ〜Ｅ、図１４、および図１５Ａ〜Ｊの例示的疑似コードのいずれかまたは全部のブロック、部分、命令文、および／または表現は、連続的に、および／または、例えば、異なるユーザ、別個の処理スレッド、プロセッサ、デバイス、離散論理、回路等によって、並行して行なわれてもよい。
【００４２】
図１７は、開示される例示的バッチ試験器１２５を実装し、および／または本明細書に開示される例示的機械アクセス可能命令および／またはプロセスのいずれかまたは全部を実行するように使用および／またはプログラムされてもよい、例示的プロセッサプラットフォームＰ１００のブロック図である。１つ以上の汎用プロセッサ、プロセッサコア、マイクロコントローラ等が、プロセッサプラットフォームＰ１００を実装するために使用されてもよい。プロセッサプラットフォームＰ１００は、例えば、サーバ、パーソナルコンピュータ、内蔵コントローラ、および／または任意の他のタイプのコンピューティングデバイスとすることができる。
【００４３】
例示的実施例のプロセッサプラットフォームＰ１００は、少なくとも１つのプログラム可能プロセッサＰ１０５を含む。プロセッサＰ１０５は、プロセッサＰ１０５のメインメモリ内（例えば、ＲＡＭ  Ｐ１１５および／またはＲＯＭ  Ｐ１２０内）に存在する、コード化された命令Ｐ１１０および／またはＰ１１２を実行する。プロセッサＰ１０５は、プロセッサコア、プロセッサ、および／またはマイクロコントローラ等の任意のタイプの処理ユニットであってもよい。プロセッサＰ１０５は、図１０および図１１の例示的プロセス、および／または図１２、図１３Ａ〜Ｅ、図１４、および／または図１５Ａ〜Ｊの例示的疑似コードを行なうようにプログラムされてもよい。したがって、コード化された命令Ｐ１１０、Ｐ１１２は、図１０および図１１の例示的プロセス、および／または図１２、図１３Ａ〜Ｅ、図１４、および／または図１５Ａ〜Ｊの例示的疑似コードを表してもよい。
【００４４】
プロセッサＰ１０５は、バスＰ１２５を介して、ＲＯＭ  Ｐ１１０およびＲＡＭ  Ｐ１１５を含む、メインメモリと通信する。ＲＡＭ  Ｐ１１５は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、ＲＡＭＢＵＳダイナミックランダムアクセスメモリ（ＲＤＲＡＭ）、および／または任意の他のタイプのＲＡＭデバイスによって実装されてもよい。ＲＯＭ  Ｐ１１０は、フラッシュメモリおよび／または任意の他の所望のタイプのメモリデバイスによって実装されてもよい。メモリＰ１１５およびメモリＰ１２０へのアクセスは、メモリコントローラによって制御されてもよい。例示的メモリＰ１１５は、例えば、例示的演算データベース１５５を格納するために使用されてもよい。
【００４５】
プロセッサプラットフォームＰ１００は、インターフェース回路Ｐ１３０を含む。外部メモリインターフェース、シリアルポート、汎用入力／出力、Ｅｔｈｅｒｎｅｔ（登録商標）インターフェース、ユニバーサルシリアルバス（ＵＳＢ）、および／またはＰＣＩエクスプレスインターフェース等の任意のタイプのインターフェース規格が、インターフェース回路Ｐ１３０を実装してもよい。
【００４６】
１つ以上の入力デバイスＰ１３５が、インターフェース回路Ｐ１３０に接続されてもよい。入力デバイスＰ１３５は、例えば、キーボード、マウス、タッチスクリーン、トラックパッド、トラックボール、アイソポイント、および／または音声認識システムによって実装可能である。１つ以上の出力デバイスＰ１４０もまた、インターフェース回路１０２０に接続される。出力デバイスＰ１４０は、例えば、ディスプレイデバイス（例えば、液晶ディスプレイ、ブラウン管ディスプレイ（ＣＲＴ）、プリンタ、および／またはスピーカ）によって実装可能である。したがって、インターフェース回路Ｐ１３０は、グラフィックドライバカードを含んでもよい。入力デバイスＰ１３５および出力デバイスＰ１４０は、加えて、または代替として、識別された実行経路および／または試験結果のリスト等の情報を提供し、かつ／または試験される実行経路の選択を受信するために使用されてもよい。
【００４７】
インターフェース回路Ｐ１３０はまた、モデム、送受信機、またはネットワークインターフェースカード等の通信デバイスを含み、ネットワークを介して、外部コンピュータとのデータの交換を容易にしてもよい。
【００４８】
いくつかの実施例では、プロセッサプラットフォームＰ１００もまた、１つ以上の大容量記憶デバイスＰ１４５を含み、ソフトウェアおよびデータを格納してもよい。そのような大容量記憶デバイスＰ１４５の実施例としては、フロッピー（登録商標）ディスクドライブ、ハードディスクドライブ、固体ハードディスクドライブ、ＣＤドライブ、ＤＶＤドライブ、および／または任意の他の固体、磁気、および／または光学記憶デバイスが挙げられる。大容量記憶デバイスＰ１４５は、例示的演算データベース１５５を実装してもよい。
【００４９】
本明細書に開示される、コード化された命令は、大容量記憶デバイスＰ１４５、ＲＡＭ  Ｐ１１５、ＲＯＭ  Ｐ１２０、および／またはＣＤまたはＤＶＤ等のリムーバブル記憶媒体に格納されてもよい。
【００５０】
上述から、上記開示された方法、装置、および製品がプロセス制御システムを試験するためのものであることが理解されるであろう。ある例示的方法、装置、および製品が、本明細書に開示されるが、本特許の網羅範囲は、それらに限定されない。対照的に、本特許は、本特許の特許請求の範囲の範囲内に公正に含まれる、方法、装置、および製品の全てを網羅する。
【図１】
2012168948.tif 000003
【図２】
2012168948.tif 000004
【図３】
2012168948.tif 000005
【図４】
2012168948.tif 000006
【図５】
2012168948.tif 000007
【図６】
2012168948.tif 000008
【図７】
2012168948.tif 000009
【図８】
2012168948.tif 000010
【図９】
2012168948.tif 000011
【図１０】
2012168948.tif 000012
【図１１】
2012168948.tif 000013
【図１２】
2012168948.tif 000014
【図１３Ａ】
2012168948.tif 000015
【図１３Ｂ】
2012168948.tif 000016
【図１３Ｃ】
2012168948.tif 000017
【図１３Ｄ】
2012168948.tif 000018
【図１３Ｅ】
2012168948.tif 000019
【図１４】
2012168948.tif 000020
【図１５Ａ】
2012168948.tif 000021
【図１５Ｂ】
2012168948.tif 000022
【図１５Ｃ】
2012168948.tif 000023
【図１５Ｄ】
2012168948.tif 000024
【図１５Ｅ】
2012168948.tif 000025
【図１５Ｆ】
2012168948.tif 000026
【図１５Ｇ】
2012168948.tif 000027
【図１５Ｈ】
2012168948.tif 000028
【図１５Ｉ】
2012168948.tif 000029
【図１５Ｊ】
2012168948.tif 000030
【図１６】
2012168948.tif 000031
【図１７】
2012168948.tif 000032