(57)【要約】【課題】本発明の課題は、製品製造に係る品質改善を検証するためのデータの抽出、加工、グラフ表示、統計解析などをユーザの思考に従ってワークフロー化することを可能とする情報処理端末及び品質改善支援サーバを提供すことを目的とする。【解決手段】上記課題は、製品製造の品質改善を支援する情報処理端末において、品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示し、複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うことにより達成される。【選択図】図５
2007188481.tif 000002
【特許請求の範囲】
【請求項１】
製品製造に係る品質改善を支援する情報処理端末において、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段とを有することを特徴とする情報処理端末。
【請求項２】
前記データ連携手段は、データ連携元の一つの処理部品がデータ連携先の複数の他の処理部品へのデータ連携を行うことを特徴とする請求項１記載の情報処理端末。
【請求項３】
前記データ連携手段は、データ連携元の複数の処理部品からデータ連携先の一つの処理部品へのデータ連携を行うことを特徴とする請求項１又は２記載の情報処理端末。
【請求項４】
前記ワークフローの前記行情報と、該ワークフロー内における前記処理部品の行列情報と、該処理部品間のデータ連携を示すデータ連携情報とを、複数のワークフローで構成されるビジネスフロー毎にメタデータ言語で記述したワークフロー設計データで管理することを特徴とする請求項１乃至３のいずれか一項記載の情報処理端末。
【請求項５】
処理部品が配置されたワークフローを実行する情報処理端末において、
前記処理部品を実行する順序に従って該処理部品の配置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手段と、
前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手段とを有することを特徴とする情報処理端末。
【請求項６】
前記実行制御手段は、前記コントロールポイントで示される前記処理部品を実行する際、前記ワークフロー設計データで定義される前記データ連携を逆に順に辿って、該実行される処理部品の項目と連結元の処理部品の項目とが整合されるように、該連結元の処理部品の項目に基づいて該実行される処理部品の項目を更新することを特徴とする請求項５記載の情報処理端末。
【請求項７】
前記ワークフロー設計データは、前記処理部品間のデータ連携を定義すると共に、前記処理部品毎に項目を定義し、前記実行制御手段によって該項目が更新されることを特徴とする請求項６記載の情報処理端末。
【請求項８】
製品製造に係る品質改善を支援する処理をコンピュータに行わせるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手順と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手順と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手順とを実行させることを特徴とするコンピュータ実行可能なプログラム。
【請求項９】
処理部品が配置されたワークフローを実行する処理をコンピュータに行わせるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
前記処理部品を実行する順序に従って該処理部品の配置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手順と、
前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手順とを有することを特徴とするコンピュータ実行可能なプログラム。
【請求項１０】
製品製造に係る品質改善を支援する品質改善支援サーバにおいて、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段と、
配置された前記複数の処理部品を少なくとも複数のワークフローで構成されるビジネスフロー単位又は該ワークフロー単位で実行可能とする実行手段と、
前記ワークフロー配置手段と、前記処理部品配置手段と、前記データ連携手段と、前記実行手段として機能するプログラムを有するプログラムデータをネットワークを介して接続される情報処理端末へ送信する送信手段とを有することを特徴とする品質改善支援サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製品製造に係る品質改善を検証するためのデータの抽出、加工、グラフ表示、統計解析などをユーザの思考に従ってワークフロー化することを可能とする情報処理端末及び品質改善支援サーバに関する。
【背景技術】
【０００２】
近年、高度化する半導体プロセスにおいては、製造工程の増大や工程処理技術の複雑化などから、従来の解析システムでは長手番を要し、尚且つ解析機能の有効活用にはシステムの習熟を必要としていた。故に品質改善のノウハウについては個人ごとに蓄積されるだけで、システムには蓄積されず、ナレッジとしての有効性は使う側(人)にゆだねられていた。
【０００３】
従来、製造工程に沿って情報を管理する管理系システムとエンジニアによる品質改善に沿って解析を行う情報系システムとは互いに独立し、且つ情報系の中でも欠陥データの解析、歩留りの解析等細かく解析目的別にシステム機能が分散していた。故に実際の品質改善のエンジニアの思考に沿ったワークフローのシステムは提唱されていなかった。
【０００４】
このような問題を解決するべく解析者の思考に沿った品質改善の手法をシステム化し、解析ノウハウの共有化と解析結果の有効活用とを行う技術が提案されている（例えば、特許文献１）。ワークフロー設計機能とその結果やメニュー管理としてのリポジトリ機能により、エンジニアの解析ノウハウをワークフロー化しエンジニアよるドリルダウン解析を機能メニュー化すると共にエンジニア間での共有、横並びが可能となった。
【特許文献１】特開２００５−１８２６３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示される技術では、異なるエンジン（異なるデータ種の抽出や異なるグラフ機能）間の連携時は固定条件を引き継ぐか、もしくは解析の結果から判断し、再度エンジニアによるフロー操作が一部必要になるなどドリルダウンの自動化には至らなかった。またワークフローについても個々のエンジン間でフィルタ機能などがある事から条件によって組み合わせられないフロー設計も生じていた。
【０００６】
よって、本発明の目的は、製品製造に係る品質改善を検証するためのデータの抽出、加工、グラフ表示、統計解析などをユーザの思考に従ってワークフロー化することを可能とする情報処理端末及び品質改善支援サーバを提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、製品製造に係る品質改善を支援する情報処理端末において、品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段とを有するように構成される。
【０００８】
このような情報処理端末では、ワークフロー設計における各エンジン（処理部品）間で抽出条件や解析結果を連携可能としつつ、ワークフロー及び各エンジン（処理部品）を表示させることができる。
【０００９】
また、本発明は、前記ワークフローの配置位置を特定する前記行情報と、該ワークフロー内における前記処理部品の行列情報と、該処理部品間のデータ連携を示すデータ連携情報とを、複数のワークフローで構成されるビジネスフロー毎にメタデータ言語で記述したワークフロー設計データで管理するように構成することができる。
【００１０】
このような情報処理端末では、様々なワークフローにおけるデータ連携の分岐に対応するように、データ種や解析エンジンと切り離して独立の条件分岐と分類、フィルタエンジンを設け、これにより更にエンジニア思考に沿ったワークフロー設計を行うことができる。
【００１１】
上記課題を解決するため、本発明は、処理部品が配置されたワークフローを実行する情報処理端末において、前記処理部品を実行する順序に従って該処理部品の配置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手段と、前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手段とを有するように構成される。
【００１２】
このような情報処理端末では、ワークフロー設計における各エンジン（処理部品）間で抽出条件や解析結果を連携可能であるため、前段階のエンジン（処理部品）で指定した抽出や、フィルタ条件、解析結果を次のエンジンに渡すことでドリルダウンの自動化を計ることができる。
【００１３】
上記課題を解決するため、本発明は、製品製造に係る品質改善を支援する品質改善支援サーバにおいて、品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段と、配置された前記複数の処理部品を少なくとも複数のワークフローで構成されるビジネスフロー単位又は該ワークフロー単位で実行可能とする実行手段と、前記ワークフロー配置手段と、前記処理部品配置手段と、前記データ連携手段と、前記実行手段として機能するプログラムを有するプログラムデータをネットワークを介して接続される情報処理端末へ送信する送信手段とを有するように構成される。
【００１４】
上記課題を解決するための手段として、本発明は、上記手段として機能するプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１５】
本願発明は、解析のドリルダウンの自動化を実現する事ができ、更に詳細な解析者のワークフローを機能化する事が可能となる。これによって解析者の業務を新規問題の思考にシフトさせる事ができる。結果、解析作業を飛躍的に効率化させ、解析のフィードバックを短手番化、高速化する。またエンジニアリソース(解析時間、人員)の効率化にも貢献し、解析工数と合わせて総合的なコストダウンとを実現する。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態を図面に基づいて説明する。
【００１７】
図１は、本発明に係る品質改善システムのネットワーク構成を示す図である。図１において、品質改善システム１０００は、品質改善支援サーバ１００と、データ管理サーバ２００とで構成される。
【００１８】
品質改善支援サーバ１００は、イントラネット５を介して接続されるクライアントＰＣ１０ａからの要求に応じて、品質管理に係るデータを提供したり、クライアントＰＣ１０ａで作成及び編集した半導体製造における品質改善に係るワークフローを管理したりする。また、品質改善支援サーバ１００は、ワークフローの編集中又は実行中にクライアントＰＣ１０ａから送信される実行結果、状態通知などによってトラブルを解析し、必要に応じてクライアントＰＣ１０ａへアラームを送信する。
【００１９】
データ管理サーバ２００は、複数の製造ラインに例えば専用線などで接続され、定期的に製造データを取り込み、これら取り込んだ製造データは、品質改善支援サーバ１００によってデータ抽出などが行われたのち、品質改善の検証用として使用される。複数の製造ラインから取り込まれるデータは相当なデータ量となるため、クラスタ構成とし、登録データの増加に対して拡張可能な構成としてもよい。
【００２０】
クライアントＰＣ１０ａは、Ｊａｖａ（商標登録）環境を備え、品質改善支援サーバ１００から自動的にダウンロードされるワークフロー作成プログラムを起動することによって、ブラウザ上でビジネスフローを作成、編集、及び実行する。このように、各ユーザ（エンジニア）が思考しつつビジネスフローを作成及び編集などする際には、その処理は、クライアントＰＣ１０ａのコンピュータ資源を用いて行うようにすることによって、品質改善支援サーバ１００での処理負荷を分散させることができる。
【００２１】
図２は、品質改善支援サーバの機能構成例を示す図である。図２において、品質改善支援サーバ１００は、ＣＰＵ（中央処理装置）によって制御されるサーバコンピュータであって、少なくとも、記憶領域１６と、インストーラ１９と、Ｗｅｂサーバ１１０とを有する。
【００２２】
Ｗｅｂサーバ１１０は、ＨＴＴＰ（HyperText Transfer Protocol）によってクライアントＰＣ１０ａとの通信制御を行い、更に、ワークフロー作成管理部１１１と、ワークフロー実行管理部１１２とを有する。Ｗｅｂサーバ１１０は、また、クライアントＰＣ１０ａの接続に際し、クライアントＰＣ１０ａが保持するワークフロー作成プログラム１６３のバージョンをチェックし、アップデートが必要な場合は、クライアントＰＣ１０ａへ最新バージョンを送信する。
【００２３】
ワークフロー作成管理部１１１は、イントラネット５を介して受信したクライアントＰＣ１０ａからのワークフロー作成に関する要求を制御する。例えば、クライアントＰＣ１０ａにて作成され保存指示されたワークフロー設計データをワークフロー設計データＤＢ１６１に格納する。また、クライアントＰＣ１０ａにて作成され保存指示されたワークフロー設計データの呼び出しに応じて、ワークフロー設計データＤＢ１６１から要求されたワークフロー設計データを取得してクライアントＰＣ１０ａへと提供する。また、クライアントＰＣ１０ａでの作成及び編集時に必要に応じて成される要求を管理する。
【００２４】
ワークフロー実行管理部１１２は、ワークフローの編集中又は実行中に、イントラネット５を介してクライアントＰＣ１０ａからの実行結果及び状態通知を受信し、それら通知に応じた処理を行う。例えば、工程や装置トラブルに対して自己診断し、既存のトラブル(パターン化されたもの)であればトラブルＤＢ１６４を検索することによって、自動的に指示内容を取得してクライアントＰＣ１０ａに指示を行い、トラブルＤＢ１６４では検索不可能な新規例である場合、ユーザ（エンジニア）に対してアラームする。
【００２５】
記憶領域１６は、ハードディスクユニット等の記憶装置内の領域であって、各種処理を実行するプログラム、ＣＰＵでの処理に必要なデータ、テーブル等を格納している。記憶領域１６には、少なくとも、ワークフロー設計データＤＢ１６１と、品質管理データＤＢ１６２と、ワークフロー作成プログラム１６３と、トラブルＤＢ１６４とが少なくとも格納される。
【００２６】
ワークフロー設計データＤＢ１６１には、クライアントＰＣ１０ａから受信したＸＭＬ（eXtensible Markup Language）で記述されたデータファイルが格納される。記述方法は、ＸＭＬに限らず如何なるメタデータ言語であってもよい。品質管理データＤＢ１６２には、品質改善支援サーバ１００が、所定条件に基づいて、データ管理サーバ２００から抽出した製造に関するデータが格納される。
【００２７】
ワークフロー作成プログラム１６３は、クライアントＰＣ１０ａに提供可能な最新のプログラムファイルであり、例えば、Ｊａｖａ（登録商標）アプリケーションなどである。トラブルＤＢ１６４は、クライアントＰＣ１０ａから通知されたトラブルのうち、回避方法が確定したトラブルがデータベース化されて蓄積される。
【００２８】
インストーラ１９は、品質改善支援サーバ１００での処理を実現するプログラムが格納された記憶媒体２０がドライバにセットされると、記憶媒体２０からそのプログラムを読み出して、記憶装置内にインストールする。品質改善支援サーバ１００での処理の実行は、ＣＰＵが記憶装置内にインストールされたプログラムに従って行うことにより実現される。記憶媒体２０は、プログラムをコンピュータが読み取り可能な媒体であればよい。例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等である。また、ネットワークを介してダウンロードし、記憶装置内にインストールするようにしても良い。
【００２９】
図示されないが、品質改善支援サーバ１００には、ＣＰＵからの指示に応じて、出力データを制御してプリンタ等に出力制御する出力制御部と、キーボード、マウス等によって入力された入力データを制御する入力制御部と、表示データを制御してモニタ等への表示を制御する表示制御部とを有するものとする。
【００３０】
図３は、クライアントＰＣの機能構成例を示す図である。図３において、クライアントＰＣ１０ａは、ＣＰＵ（中央処理装置）によって制御されるパーソナルコンピュータであって、少なくとも、記憶領域１７と、Ｗｅｂクライアント１２０とを有する。
【００３１】
Ｗｅｂクライアント１２０は、ＨＴＴＰ（HyperText Transfer Protocol）によって品質改善支援サーバ１００との通信制御を行い、更に、ワークフロー編集部１２１と、ワークフロー実行部１２２と、Ｊａｖａ（商標登録）ＶＭ（Ｊａｖａ（商標登録）仮想マシン）１２３とを有する。例えば、ワークフロー編集部１２１と、ワークフロー実行部１２２とは、ワークフロー作成プログラム１６３を起動することによって、仮想記憶領域上に展開される処理部であって、Ｊａｖａ（商標登録）ＶＭ（Ｊａｖａ（商標登録）仮想マシン）１２３上で実行可能な処理部である。
【００３２】
ワークフロー編集部１２１は、図４などで後述されるような画面をブラウザ上に構成し、ビジネスフローの作成及びビジネスフローを構成する各ワークフローの作成などを支援する処理部である。また、ワークフロー編集部１２１は、この編集による状態や結果を示す情報を品質改善支援サーバ１００へ送信する。特に、トラブルである場合、予めプログラムにて設定されたトラブルの種類などを識別するための識別コード、トラブルを引き起こしたデータや操作などを品質改善支援サーバ１００へ送信し、その応答として品質改善支援サーバ１００から受信したユーザへのエラー通知などを表示する。
【００３３】
ワークフロー編集部１２１による編集が完了すると、作成又は編集したビジネスフローの実行順序がseq番号として発行され、フロー制御データ１７５に記憶されビジネスフロー毎に管理される。実行順序（seq番号）は、フロー制御データ１７５で管理され、ビジネスフローをＸＭＬで記述したワークフロー設計データ１７１では、定義されない。
【００３４】
ワークフロー実行部１２２は、ユーザ（エンジニア）による実行指示に応じて、ブラウザ上の画面にて作成されたビジネスフロー、或いは、個々のワークフローを、フロー制御データ１７５に格納される実行順序（seq番号）に従って実行する。実行の際には、品質改善支援サーバ１００の品質管理データＤＢ１６２から抽出されたデータが記憶領域１７にて品質管理データファイル１７２として格納される。
【００３５】
また、ワークフロー実行部１２２は、この実行による状態や結果を示す情報を品質改善支援サーバ１００へ送信する。特に、トラブルである場合、予めプログラムにて設定されたトラブルの種類などを識別するための識別コード、トラブルを引き起こしたデータや操作などを品質改善支援サーバ１００へ送信し、その応答として品質改善支援サーバ１００から受信したユーザへのエラー通知などを表示する。
【００３６】
ワークフロー編集部１２１による編集の完了、ワークフロー実行部１２２による実行の完了、或いは、ユーザによる保存指示に応じて、作成されたビジネスフローをＸＭＬで記述したワークフロー設計データ１７１を品質改善支援サーバ１００へ送信する。
【００３７】
このようなワークフロー設計データ１７１及び作成されたビジネスフローの実行によって品質改善支援サーバ１００から抽出した品質管理データファイル１７２は、製造工程に密接に関連するデータであるため、ワークフロー設計データ１７１を品質改善支援サーバ１００に送信する際に、記憶領域１７から消去するように制御しても良い。
【００３８】
図示されないが、クライアントＰＣ１０ａには、ＣＰＵからの指示に応じて、出力データを制御してプリンタ等に出力制御する出力制御部と、キーボード、マウス等によって入力された入力データを制御する入力制御部と、表示データを制御してモニタ等への表示を制御する表示制御部とを有するものとする。
【００３９】
本発明では、ワークフロー設計がマトリクス上で行われる。その概要を図４を用いて説明する。図４は、ワークフロー設計の概要を説明するための図である。本発明では、１つのビジネスフローに対して、１つのマトリクスが作成される。１つのビジネスフローには、複数のワークフローが作成可能であって、マトリクスの１行が１つのワークフローに割り当てられる。複数のワークフローは、上から順に各行に作成されることによって、ワークフローの基本的な順番が定められる。
【００４０】
図４に示す画面５０において、ビジネスフロー毎に対応するタグ５０ａ及び５０ｂが作成され、ユーザ（エンジニア）はそのタグの１つをマウス等でクリックすることによって選択する。ユーザは、各ワークフロー５０ｅをマトリクス５０ｆ上に作成し、作成したワークフロー５０ｅの領域内に所望するエンジンを配置する。ビジネスフロー毎に対応するタグ５０ａ及び５０ｂは、ビジネスフローの１つのグループとして管理されている。
【００４１】
マトリクス５０ｆ上には、開始マーク５０ｄによってビジネスフローの開始が示される。画面５０のエンジン選択領域５０ｃは、エンジンがカテゴリー毎にグループ分けされており、例えば、全般エンジン、データ抽出エンジン、データ加工エンジン、結果エンジンなどにグループ分けされている。
【００４２】
各エンジンを示すアイコンは、プログラムアイコンであって、ユーザはマウスでエンジンのアイコンを所望するワークフロー５０ｅ内にドラッグアンドドロップするのみで配置する。
【００４３】
ワークフロー５０ｅ内に配置されたエンジンの配置位置に対応させて実行順序（seq番号）が発行されてフロー制御データ１７５に格納される。この際、エンジンが削除されたり追加されたりした場合、ワークフロー５０ｅ内に配置されたエンジンの全てに対して実行順序（seq番号）が再度発行される。図４中、点線の丸で囲まれる数字が実行順序（seq番号）を示す。
【００４４】
ユーザは、自身の思考に基づいて必要と思われるエンジンをワークフロー５０ｅ内に配置し、配置したエンジン間で自由にデータの流れを設定することができる。データの流れは、左から右方向へ設定され、ワークフロー５０ｅ内にて左上エンジンから右下エンジンへと設定することが可能であり、更に、ワークフロー５０ｅを跨いで左上エンジンから右下エンジンへと設定することも可能である。
【００４５】
クライアントＰＣ１０ａのワークフロー編集部１２１は、ユーザによって配置されたワークフロー５０ｅの位置を変数ｆｐｏｓｙ（０以上の整数）で管理し、ワークフロー５０ｅ内に配置されたエンジンの位置を座標（ｐｏｓｘ，ｐｏｓｙ）（０以上の整数）で管理する。ワークフロー５０ｅは複数のセルで区切られていて、２行、３行等の複数の行であってもよい。ワークフロー５０ｅの大きさは、行数を示す変数ｒｏｗｓと、列数を示す変数ｃｏｌｓで管理される。ビジネスフロー毎のマトリクスの構成は、後に詳述される図１４から図１７の記述例にて記載される。
【００４６】
また、エンジンの実行順序（seq番号）が、マトリクス５０ｆ上で左から右そして上から下のルールで発行され、少なくともビジネスフローを識別する情報毎に、エンジンの実行順序（seq番号）とエンジンの位置座標（ｐｏｓｘ，ｐｏｓｙ）とを対応付けてフロー制御データ１７５に格納する。
【００４７】
ユーザは、上述したようにワークフロー５０ｅを作成しつつ、ワークフロー５０ｅをその都度実行させながら確認することもできる。ユーザは、ワークフロー５０ｅを選択し、実行ボタン５０ｇをクリックすることによって、実行結果を参照しつつ検証することが可能である。例えば、その実行結果は、画面５１ｂのように表示される。
【００４８】
品質改善支援サーバ１００からクライアントＰＣ１０ａへダウンロードしたワークフロー作成プログラム１６３は、ソフトウェア設計図に基づくオブジェクト指向プログラムで構成される。図５は、オブジェクト関係を示すソフトウェア設計図の例を示す図である。図５において、ワークフロー作成プログラム１６３は、ビジネスフロー３１と、コントロールフロー３２と、コントロールポイント３３と、ワークフロー３４と、エンジン３５と、データフロー３６と、データリクエスト３７と、データ３８とを有する。
【００４９】
ビジネスフロー３１は、ビジネスフロー（図４のビジネスフロー５０ａ及び５０ｂ）を実行したり、ビジネスフローを保存したりする処理を行う。ビジネスフロー３１は、１以上のコントロールフロー３２と、１以上のデータフロー３６とに関連付けられる。
【００５０】
コントロールフロー３２は、ワークフロー３４（マトリクス５０ｆ上に作成されたワークフロー５０ｅ）の前後関係を、ワークフロー３４を識別するワークフロー識別情報を対応させて管理する。コントロールフロー３２は、必ず１つのビジネスフロー３１に帰属する。
【００５１】
コントロールポイント３３は、処理が引き継がれる次のワークフロー３４へのポインタを管理する。コントロールポイント３３は、１以上のワークフロー３４を管理する。また、コントロールポイント３３は、１以上のワークフロー３４で構成されるビジネスフローにおけるエンジン３５の位置座標に基づいて、左から右そして上から下の所定ルールでエンジン３５の実行順序（seq番号）を発行する。発行された実行順序（seq番号）は、フロー制御データ１７５に格納され管理される。コントロールポイント３３は、エンジン３５が追加又は削除された場合、エンジン３５の位置座標に基づいて所定ルールに従って実行順序（seq番号）を再度発行してフロー制御データ１７５に格納し管理する。
【００５２】
ワークフロー３４は、０以上のエンジン３５を有し、０以上のエンジン３５をデータの受け渡しを行いつつ処理を実行する。
【００５３】
エンジン３５は、所定の処理を実行したり、候補の複数の条件設定のなかに連結可能な条件設定があるか否かをチェックしたり、次に実行されるエンジンと連結したり、入力確定をしたりする処理を行う。エンジン３５では、複数の条件設定の前後関係を管理している。エンジン３５は、必ず１つのワークフローに帰属し、また、必ず１つのデータリクエスト３７と関連付けられる。
【００５４】
データフロー３６は、エンジン３５単体毎の入力確定によって生成され、必ず１つのビジネスフロー３１に帰属する。また、データフロー３６は、１以上のデータリクエスト３７と関連付けられる。
【００５５】
データリクエスト３７は、０または１つのデータ３８に関連付けられ、必要に応じてデータを保存させる。データ３８は、必ず１つのデータリクエスト３７に帰属する。
【００５６】
このようなソフトウェア設計図によって、エンジン３５はデータ処理を行い、ワークフロー３４は、エンジン３５を一つの処理フローグループに構成し、更に、ビジネスフロー３１は、ワークフローを纏めてフロー化する。大きく、エンジン３５、ワークフロー３４、ビジネスフロー３１の３つの処理階層として構成する。
【００５７】
図４に示す画面５０において、ユーザの自由なエンジンの配置と連携、ワークフロー５０ｅの連携とを前後関係（つまり、マトリクス５０ｆ内での配置関係）を読み取り、管理することによって、自由な入出力設定の順番を正規化することができる。
【００５８】
また、エンジン３５単体でのデータリクエスト３７は、ビジネスフロー３１で管理し、同様に順番を正規化する。
【００５９】
コントロールフロー３２では、ワークフロー３４（図４のワークフロー５０ｅ）の順番と連携を定義し、エンジン間の連携はエンジン３５相互に連携を定義する。
【００６０】
図６は、ワークフロー及びデータフローを作成するシーケンス図である。図６において、図５に示すコントロールポイント３３と、コントロールフローとによって正規化した順番に沿って、ビジネスフロー３１からワークフロー３４が一つずつ生成され実行される。この際、データフロー３６は、帰属するワークフロー３４から参照され生成される。
【００６１】
図７は、エンジンが連結、入力、実行を行う処理シーケンスを示す図である。図７において、エンジン３５はワークフロー３４に帰属し、データ処理のリクエストが入力確定すると、データフロー３６が生成され、ワークフローにおけるデータ処理が確定する。
【００６２】
リクエスト変更については変更内容が確定された時点でデータ処理が確定する。エンジン３５のデータ処理が確定し、データリクエスト３７が生成された後、そのデータリクエスト３７を実行することによって、データの抽出、加工などの処理を行い、データ３８が生成される。エンジン３５がデータリクエスト３７の所定処理を実行した後、データを参照することができる。
【００６３】
図８は、ビジネスフローの保存と実行のフローチャート図である。図８において、ビジネスフロー３１の状態として、保存する処理の過程として編集モード３１ａと、実行する処理の過程として実行モード３１ｐとがある。このようにフローの状態を管理することによって、保存と実行との処理を干渉しないように区別して管理することができる。
【００６４】
編集モード３１ａには、保存の必要のない状態３１ｂと保存が必要な状態３１ｃとがある。保存の必要のない状態３１ｂにて、ユーザの操作にて編集が開始されると、保存が必要な状態３１ｃに状態が遷移し、ユーザの操作に応じて保存又は破棄が行われると、保存の必要のない状態３１ｂに戻る。
【００６５】
ユーザの操作による保存又は破棄の後、保存の必要のない状態３１ｂになると、コントロールポイント３３（図５）が実行順序（seq番号）を発行して、フロー制御データ１７５に格納し管理する。
【００６６】
ユーザによる実行操作に応じて、編集モード３１ａから実行モード３１ｐへとモードが切り換えられる。実行モード３１ｐは、フロー制御データ１７５に格納されている実行順序（seq番号）に従ってユーザに指定されたワークフロー又はビジネスフロー全体を実行する。実行モード３１ｐでは、実行の中断又は終了によって編集モード３１ａへとモードが切り換えられる。
【００６７】
図９は、エンジンの処理フローのチャート図である。図９において、エンジン３５には、初期状態３５ａと、連結された状態３５ｂと、入力が完了した状態３５ｃと、実行中状態３５ｄと、実行済み状態３５ｅとがある。初期状態３５ａとワークフローに帰属された状態（連結された状態３５ｂ）とを区別し、条件入力を管理し条件の確定した状態（入力が完了した状態３５ｃ）で実行が開始される（実行中状態３５ｄ）。実行した後（実行済み状態３５ｅ）、条件の再入力を行うと入力が完了した状態に戻る。
【００６８】
入力が完了した状態３５ｃでは、コントロールポイント３３（図５）が、入力完了に応じて、実行順序（seq番号）を発行して、実行順序（seq番号）はフロー制御データ１７５（図３）に格納される。このフロー制御データ１７５に格納された実行順序（seq番号）に従ってエンジン３５の実行が開始されることによって、実行中状態３５ｄへと遷移する。
【００６９】
実行済み状態３５ｅでは、コントロールフロー３２（図５）は、フロー制御データ１７５を参照して、エンジン３５の実行完了の状態を検知すると、次の実行順序（seq番号）となるエンジン３５を処理する。
【００７０】
図１０は、マトリクスのワークフロー設計の第一の例を示す図である。図１０に示す第一の例では、横方向に４つのワークフロー１、２、３、及び４を定義し、縦方向に複数を順列に配置し、４つのワークフローを縦方向で管理する。
【００７１】
ワークフロー１では、ＣＳＶインポート、Ｂｉｎ−ＳＳＡ、ＣＳＶエクスポートのエンジンによって、外周不良ロット、ウェハーを自動分類する。ワークフロー２では、ＣＳＶインポート、トレンドのエンジンによって、外周不良ロット、ウェハーを確認する。ワークフロー３では、工程進捗、ｃｏｍｍｏｎａｌｉｔｙ、ＣＳＶエクスポートのエンジンによって、外周不良ロット、ウェハーの不良要因を装置共通性で解析する。ワークフロー４では、ＣＳＶインポート、マージ、トレンド、ＣＳＶインポートのエンジンによって、外周不良ロット、ウェハーの不良要因の共通装置を確認する。
【００７２】
図１１は、マトリクスのワークフロー設計の第二の例を示す図である。図１１に示す第二の例では、第一の例と同様に横方向に４つのワークフロー２１、２２、２３、及び２４を定義し、縦方向に複数を順列に配置し、４つのワークフローを縦方向で管理する。しかしながら、第二の例では、他ワークフローのエンジンへとエンジン間を連携させている。
【００７３】
ワークフロー２１内の集計エンジンは、データ連結線Ｌ２８によって、ワークフロー２２を飛び越えてワークフロー２３内のマージエンジンへと連携している。また、ワークフロー２２内のＬＯＴエンジンは、データ連結線Ｌ３１によってプロセスエンジンへと連結され、マージエンジンは、データ連結線Ｌ２７によってワークフロー２３内のマージエンジンへと連携している。
【００７４】
ワークフロー２３内のプロセスエンジンは、データ連結線Ｌ３３によってワークフロー２４内のマージエンジンへと連携している。また、マージエンジンは、データ連結線Ｌ３４によってワークフロー２４のマージエンジンへと連携している。
【００７５】
また、ワークフロー２２内のモニタは、データ連結線Ｌ２４によって同一ワークフロー２２内のマージエンジンへと連携している。
【００７６】
更に、ワークフロー２３内のマージエンジンでは、ワークフロー２１内の集計エンジンからデータ連携線Ｌ２３によって連携して得られる項目と、ワークフロー２２内のマージエンジンからデータ連携線Ｌ２７によって連携して得られる項目とから項目が決定され、データ連結線Ｌ２９によってワークフロー２３内のトレンドエンジンへと、データ連結線Ｌ３０によってワークフロー２３内の相関図エンジンへと、更に、データ連結線Ｌ３４によってワークフロー２４内のマージエンジンへとデータ連携を可能としている。
【００７７】
マトリクス５０ｆ内に設定されているワークフロー２１から２４は、ユーザが、エンジン選択領域５０ｃから全般エンジンを選択し、全般エンジンに分類されるワークフローのプログラムアイコン５１２を、ユーザの思考に基づいて決定した配置位置へとドラッグアンドドロップすることによって設定される。
【００７８】
また、マトリクス５０ｆ内に設定されているデータ連結線Ｌ１１からＬ３４は、ユーザが、エンジン選択領域５０ｃから全般エンジンを選択し、全般エンジンに分類されるデータ連携線のプログラムアイコン５１１を、ユーザの思考に基づいて決定した配置位置へとドラッグアンドドロップすることによって設定される。
【００７９】
図１１に示すマトリクス５０ｆのワークフロー設計の第二の例において、実行順序（seq番号）１から１７が、左から右そして上から下のルールで発行される。図１１中、実行順序（seq番号）１から１７は、点線の丸で囲まれた数字で示される。
【００８０】
各エンジンのアイコンを選択することによって、ユーザは項目を追加又は削除することができる。そのため２以上のエンジンから連結される結合エンジン（例えば、seq番号１３のマージエンジン）では、項目の不整合が発生する場合がある。図１１に示されるビジネスフローを実行するために、図１２に示すように項目の不整合を解消する。
【００８１】
図１２は、項目の不整合を解消する方法を説明するための図である。図１２中、２以上のエンジンから連結される結合エンジン以外のエンジンであって、ユーザによって設定された項目に対応するデータを品質管理データファイル１７２から抽出するエンジンを抽出エンジンとして示している。
【００８２】
図１２（Ａ）は、ワークフロー設定時のエンジンに設定されていた項目の例を示す概念図である。図１２（Ａ）では、例えば、ワークフロー２１から２４の設定時には、seq番号１の抽出エンジン（ＣＳＶインポートエンジン）には項目Ａ及び項目Ｂが設定されている。seq番号６の抽出エンジン（モニタエンジン）には項目Ｃ及び項目Ｄが設定されている。seq番号９の抽出エンジン（ＣＳＶインポートエンジン）には項目Ｅ及び項目Ｆが設定されている。そして、seq番号１３の結合エンジン（マージエンジン）には項目Ａ、項目Ｂ、項目Ｃ、項目Ｄ、項目Ｅ及び項目Ｆが設定されている。
【００８３】
この状態において、ユーザがseq番号１の抽出エンジン（ＣＳＶインポートエンジン）の項目Ａを削除して項目Ｇを追加する。seq番号１の抽出エンジン（ＣＳＶインポートエンジン）の項目Ａが削除され項目Ｇが追加された状態において、ワークフロー設計データ１７１でＸＭＬで記述される項目では、seq番号１３の結合エンジン（マージエンジン）に対して項目Ａ、項目Ｂ、項目Ｃ、項目Ｄ、項目Ｅ及び項目Ｆが結合される項目として設定されている。そのため、項目Ａが削除され、項目Ｇが追加されたことで、seq番号１３の結合エンジン（マージエンジン）の実行によって項目に不整合が生じる。
【００８４】
ワークフロー実行部１２２は、seq番号１３の結合エンジン（マージエンジン）を実行するために、ワークフロー設計データ１７１を参照して、項目Ａ、項目Ｂ、項目Ｃ、項目Ｄ、項目Ｅ及び項目Ｆが存在するか否かを確認しながら、また、ワークフロー設計データ１７１で定義されるデータ連結線に従って、データ連結線Ｌ２８、Ｌ１１、Ｌ１３の順に、またデータ連結線Ｌ２７、Ｌ２４の順に、更にデータ連結線Ｌ２５へと元のデータ抽出の上位エンジンまで逆に辿る（図１１参照）。
【００８５】
そして、ワークフロー実行部１２２は、項目を取得し直して、現在の項目設定を項目Ｂ、項目Ｃ、項目Ｄ、項目Ｅ、項目Ｆ及び項目ＧとしてＸＭＬ記述を自動更新して、結合エンジン（マージエンジン）の項目を変更して項目の不整合を解消する。
【００８６】
図１２（Ｂ）は、項目の不整合が解消された状態を示す概念図である。図１２（Ｂ）において、seq番号１の抽出エンジン（マージエンジン）の項目Ａ及び項目Ｂから項目Ｂ及び項目Ｇへの変更によって、seq番号１３の抽出エンジン（マージエンジン）に対して、項目Ｂ、項目Ｃ、項目Ｄ、項目Ｅ、項目Ｆ及び項目Ｇが設定されていることが示される。
【００８７】
このようにして作成及び自動更新されたワークフロー設計データ１７１のＸＭＬ記述の例について以下に説明する。
【００８８】
図１３は、図１１に示すマトリクス上で定義されるビジネスフローをＸＭＬで記述したワークフロー設計データの記述例を示す図である。図１３に示すワークフロー設計データ１７１は、生成されたビジネスフロー毎に作成され、ＸＭＬ（eXtensible Markup Language）で記述されたデータファイルである。ワークフロー設計データ１７１は、クライアントＰＣ１０ａ内の記憶領域１７に格納される。
【００８９】
ワークフロー設計データ１７１のヘッダ部分には、ビジネスフローを構成するワークフローの具体的な記述の前に記述される情報が含まれる。例えば、ビジネスフローに関して、ヘッダ部分は、ビジネスフロー定義セット、ビジネスフロー名の記述、ビジネスフロー編集領域の列数の記述、ビジネスフローグループ名の記述、フロー保存時の付帯情報、ビジネスフローの作成者の記述、ビジネスフローの更新日時（yyyymmdd hhmmss形式）の記述、ビジネスフローのコメント（説明）の記述、ビジネスフローの実行時間（hhmmss形式）の記述を定義する。また、ワークフローに関して、ヘッダ部分は、ワークフロー定義セット、ワークフロー名の記述、ワークフローＩＤの記述、ワークフロー編集領域の列数の記述、ワークフロー編集領域の行数の記述、ワークフローの配置位置の記述、ワークフローの実行時間（hhmmss形式）の記述を定義する。更に、ヘッダ部分は、エンジン定義セット、エンジンの実行時間（hhmmss形式）の記述、エンジン連結情報全セット、エンジン連結情報１セット、連結元エンジンＩＤ、連結先エンジンＩＤの記述を定義する。
【００９０】
各ビジネスフローに設定されたワークフローの詳細な記述は、例えば、図１４から図１７に示されるようにＸＭＬで記述される。
【００９１】
図１４、図１５、図１６、及び図１７は、ビジネスフローに設定されたワークフローの詳細な記述の例を示す図である。図１４から図１７の記述が図１３に示されるヘッダ部分の後に続いて記述される。
【００９２】
図１４から図１７において、図１１に示されるビジネスフローに関する情報が記述３０１に示される。タグ<businessflow>内には、グループ名と、このビジネスフローにて使用されるマトリクス５０ｆの最大行数(rows="5")が定義されている。最大行数は、すなわち、ワークフローの数を示す。タグ<information>には、このビジネスフローの作成に関する情報が定義される。
【００９３】
記述３２０は、ワークフロー２１に関する記述であって、タグ<workflow>には、最大列数(cols="4"）、ワークフロー２１の識別情報（id="workflow.1"）、ワークフロー２１の名前（name="ワークフロー２１"）、マトリクス５０ｆにおけるワークフロー２１の配置位置（fposy="0"）、ワークフロー２１内での最大行数（rows="1"）、そして実行時間（runtime="00:00:13"）などが定義される。
【００９４】
続けて、記述３２２には、ワークフロー２１内に設定されたエンジンがタグ<engine>によって定義される。この記述３２２では、集計エンジンが定義される。そして、この集計エンジンに関する設定情報が記述３２２ａ及び記述３２２ｂに示されるように、複数のタグ<setting>によって設定される。
【００９５】
同様にして、記述３２３によってワークフロー２１内に設定されたトレンドエンジンが定義され、このトレンドエンジンに関する設定情報が記述３２３ａ、記述３２３ｂ、記述３２３ｃ、記述３２３ｄ、記述３２３ｅ、そして記述３２３ｆに示されるように、複数のタグ<setting>によって設定される。
【００９６】
同様にして、記述３２４によってワークフロー２１内に設定されたエリア分割エンジンが定義され、このエリア分割エンジンに関する設定情報が記述３２４ａ及び記述３２４ｂに示されるように、複数のタグ<setting>によって設定される。
【００９７】
同様にして、記述３２５によってワークフロー２１内に設定されたＣＳＶインポートエンジンが定義され、このＣＳＶインポートエンジンに関する設定情報が記述３２５ａ及び記述３２５ｂに示されるように、複数のタグ<setting>によって設定される。
【００９８】
次に、記述３３０は、ワークフロー２２に関する記述であって、タグ<workflow>には、最大列数（cols="4"）、ワークフロー２２の識別情報（id="workflow.2"）、ワークフロー２２の名前（name="ワークフロー２２"）、マトリクス５０ｆにおけるワークフロー２２の配置位置（fposy="1"）、ワークフロー２２内での最大行数（rows="2"）、そして実行時間（runtime="00:00:06"）などが定義される。
【００９９】
続けて、記述３３２には、ワークフロー２２内に設定されたエンジンがタグ<engine>によって定義される。この記述３３２では、モニタエンジンが定義される。そして、このモニタエンジンに関する種々の設定情報が記述３３２ａに定義される。
【０１００】
次に、記述３４０は、ワークフロー２３に関する記述であって、タグ<workflow>には、最大列数（cols="5"）、ワークフロー２３の識別情報（id="workflow.3"）、ワークフロー２３の名前（name="ワークフロー２３"）、マトリクス５０ｆにおけるワークフロー２３の配置位置（fposy="2"）、ワークフロー２３内での最大行数（rows="2"）、そして実行時間（runtime="00:00:01"）などが定義される。
【０１０１】
続けて、記述３４２には、ワークフロー２４内に設定されたエンジンがタグ<engine>によって定義される。この記述３４２では、マージエンジンが定義される。そして、このマージエンジンに関する種々の設定情報が記述３４２ａに定義される。
【０１０２】
次に、記述３５０は、ワークフロー２４に関する記述であって、タグ<workflow>には、最大列数（cols="5"）、ワークフロー２４の識別情報（id="workflow.4"）、ワークフロー２４の名前（name="ワークフロー２４"）、マトリクス５０ｆにおけるワークフロー２４の配置位置（fposy="3"）、ワークフロー２４内での最大行数（rows="1"）、そして実行時間（runtime="00:00:01"）などが定義される。
【０１０３】
続けて、記述３５２には、ワークフロー２４内に設定されたエンジンがタグ<engine>によって定義される。この記述３５２では、相関図エンジンが定義される。そして、この相関図エンジンに関する種々の設定情報が記述３５２ａに定義される。
【０１０４】
次に続くタグ<link-set>による記述５０１では、図１１に示すユーザによって配置されたデータ連携線Ｌ１１からＬ３４を定義している。
【０１０５】
タグ<link>による記述５１１は、データ連携線Ｌ１１を定義しており、タグ<from>とタグ<to>とによって、workflow.21/process.areadivide.1（ワークフロー２１のエリア分割エンジン）からworkflow.21/process.calculate.1（ワークフロー２１の集計エンジン）へとデータ連携されることが記述されている。
【０１０６】
タグ<link>による記述５１２は、データ連携線Ｌ１２を定義しており、タグ<from>とタグ<to>とによって、workflow.21/process.calculate.1（ワークフロー２１の集計エンジン）からworkflow.21/result.trend.1（ワークフロー２１のトレンドエンジン）へとデータ連携されることが記述されている。
【０１０７】
タグ<link>による記述５１３は、データ連携線Ｌ１３を定義しており、タグ<from>とタグ<to>とによって、workflow.21/extract.import.1（ワークフロー２１のＣＳＶインポートエンジン）からworkflow.21/process.areadivide.1（ワークフロー２１のエリア分割エンジン）へとデータ連携されることが記述されている。
【０１０８】
タグ<link>による記述５２１は、データ連携線Ｌ２１を定義しており、タグ<from>とタグ<to>とによって、workflow.22/extract.lot.1（ワークフロー２２のロットエンジン）からworkflow.22/extract.monitordata.2（ワークフロー２２のモニタエンジン）へとデータ連携されることが記述されている。
【０１０９】
タグ<link>による記述５２２は、データ連携線Ｌ２２を定義しており、タグ<from>とタグ<to>とによって、workflow.22/process.merge.3（ワークフロー２２のマージエンジン）からworkflow.22/result.trened.2（ワークフロー２２のトレンドエンジン）へとデータ連携されることが記述されている。
【０１１０】
タグ<link>による記述５２３は、データ連携線Ｌ２３を定義しており、タグ<from>とタグ<to>とによって、workflow.22/result.trend.1（ワークフロー２２のトレンドエンジン）からworkflow.22/result.export.1（ワークフロー２２のＣＳＶエクスポートエンジン）へとデータ連携されることが記述されている。
【０１１１】
タグ<link>による記述５２４は、データ連携線Ｌ２４を定義しており、タグ<from>とタグ<to>とによって、workflow.22/extract.monitordata.2（ワークフロー２２のモニタエンジン）からworkflow.22/process.merge.3（ワークフロー２２のマージエンジン）へとデータ連携されることが記述されている。
【０１１２】
タグ<link>による記述５２５は、データ連携線Ｌ２５を定義しており、タグ<from>とタグ<to>とによって、workflow.22/extract.import.4（ワークフロー２２のＣＳＶインポートエンジン）からworkflow.22/process.merge.3（ワークフロー２２のマージエンジン）へとデータ連携されることが記述されている。
【０１１３】
タグ<link>による記述５２６は、データ連携線Ｌ２６を定義しており、タグ<from>とタグ<to>とによって、workflow.22/ extract.monitordata.2（ワークフロー２２のモニタエンジン）からworkflow.22/result.trend.1（ワークフロー２２のトレンドエンジン）へとデータ連携されることが記述されている。
【０１１４】
タグ<link>による記述５２７は、データ連携線Ｌ２７を定義しており、タグ<from>とタグ<to>とによって、workflow.22/ process.mearge.3（ワークフロー２２のマージエンジン）からworkflow.23/process.mearge.2（ワークフロー２３のマージエンジン）へとデータ連携されることが記述されている。このデータ連携線Ｌ２７の記述５２７は、他のワークフローへのデータ連携を定義したものである。
【０１１５】
タグ<link>による記述５２８は、データ連携線Ｌ２８を定義しており、タグ<from>とタグ<to>とによって、workflow.21/ process.calculate.1（ワークフロー２１の集計エンジン）からworkflow.23/process.mearge.2（ワークフロー２３のマージエンジン）へとデータ連携されることが記述されている。このデータ連携線Ｌ２８の記述５２８は、他のワークフローへのデータ連携を定義したものである。
【０１１６】
タグ<link>による記述５２９は、データ連携線Ｌ２９を定義しており、タグ<from>とタグ<to>とによって、workflow.23/ process.merge.2（ワークフロー２３のマージエンジン）からworkflow.23/result.trend.2（ワークフロー２３のトレンドエンジン）へとデータ連携されることが記述されている。
【０１１７】
タグ<link>による記述５３０は、データ連携線Ｌ３０を定義しており、タグ<from>とタグ<to>とによって、workflow.23/ process.merge.2（ワークフロー２３のマージエンジン）からworkflow.23/result.xyplot.1（ワークフロー２３の相関図エンジン）へとデータ連携されることが記述されている。
【０１１８】
タグ<link>による記述５３１は、データ連携線Ｌ３１を定義しており、タグ<from>とタグ<to>とによって、workflow.22/ extract.lot.1（ワークフロー２２のロットエンジン）からworkflow.23/extract.processdata.1（ワークフロー２３のプロセスエンジン）へとデータ連携されることが記述されている。このデータ連携線Ｌ３１の記述５３１は、他のワークフローへのデータ連携を定義したものである。
【０１１９】
タグ<link>による記述５３２は、データ連携線Ｌ３２を定義しており、タグ<from>とタグ<to>とによって、workflow.24/ process.merge.1（ワークフロー２４のマージエンジン）からworkflow.24/result.xyplot.1（ワークフロー２４の相関図エンジン）へとデータ連携されることが記述されている。
【０１２０】
タグ<link>による記述５３３は、データ連携線Ｌ３３を定義しており、タグ<from>とタグ<to>とによって、workflow.23/ extract.processdata.1（ワークフロー２３のプロセスエンジン）からworkflow.24/process.merge.1（ワークフロー２４の相関図エンジン）へとデータ連携されることが記述されている。このデータ連携線Ｌ３３の記述５３３は、他のワークフローへのデータ連携を定義したものである。
【０１２１】
タグ<link>による記述５３４は、データ連携線Ｌ３４を定義しており、タグ<from>とタグ<to>とによって、workflow.23/process.mearge.2（ワークフロー２３のマージエンジン）からworkflow.24/process.merge.1（ワークフロー２４のマージエンジン）へとデータ連携されることが記述されている。
【０１２２】
図１１に示すワークフロー２１では、ＣＳＶインポートエンジン、エリア分割エンジン、集計エンジン、そしてトレンドエンジンの順に配置されているが、ユーザがこれらを思考に基づいて自由に設定するため、設定の順序は配置の順序とは無関係に成される。他のワークフロー２２から２４についても同様である。
【０１２３】
図１４から図１７に示すワークフロー設計データは、ユーザの思考に基づいて自由な設定を可能とするため、配置の順序とは無関係に記述することを可能としている。データ連携線についても同様である。
【０１２４】
このように、ユーザが思考に基づいて自由にエンジンを配置し、自由にデータ連携線を配置できるのも、各エンジンの設定（タグ<setting>）にて抽出条件や解析結果を含む種々の設定情報を備えているからである。このような種々の設定情報は、１つのエンジンから２以上のエンジンへと分岐、或いは、２以上のエンジンから１つのエンジンへのデータ連携を可能とする。
【０１２５】
クライアントＰＣ１０ａのＣＰＵによって実行されるワークフロー実行部１２２は、ビジネスフロー及びワークフロー夫々の実行時に、このようなＸＭＬで記述されたワークフロー設計データ１７１を参照し、データ連携を定義する記述５０１に従って、エンジンを順次呼び出し、エンジン間のデータ連携について次のエンジンへ連携可能な設定情報（タグ<setting>）を検証しつつフローを実行する。実行状態については、ワークフロー実行部１２２によって随時品質改善支援サーバ１００のワークフロー実行管理部１１２へと通知される。
【０１２６】
図１８は、マトリクスのワークフロー設計の第三の例を示す図である。図１８に示す例では、１つのビジネスフローとして、マトリクス５０ｆ上にワークフロー３１、ワークフロー３２、・・・・が設定されている。
【０１２７】
ワークフロー３１内では、一次試験エンジンがトレンドエンジン、集計エンジン、エリア分割エンジンの複数のエンジンへとデータ連携され、更に、他のワークフロー３２のフィルタエンジンへとデータ連携されている。
【０１２８】
この第三の例では、一次試験エンジンによる１つのデータ抽出の結果を１つのグラフ処理と３種類の加工処理に連携し、３つの加工処理のうち一つは更に加工処理を行い、最終的な結果をグラフ処理する。実行処理のエンジン（プログラムアイコン）の間で処理結果を次のエンジン（プログラムアイコン）に連携させることで、ユーザの思考に沿ったデータ処理を管理することができる。
【０１２９】
トレンドエンジン、集計エンジン、エリア分割エンジン、フィルタエンジンに必要に応じて複数の設定情報を備えるようにワークフォロー設計データを記述することによって、ユーザの思考に応じたフレキシブルなビジネスフロー及びワークフローの実行が可能となる。
【０１３０】
各エンジンに分岐のために設定される設定情報は、数字、文字、期間、傾向を示す情報である。また、条件設定としてこのような設定情報を定義してもよい。更に、設定情報は、クライアントＰＣ１０ａの各ユーザ（エンジニア）によって自由に設定可能としてもよいし、煩雑化しないために品質改善システム１０００の管理者によって定義されるようにしてもよい。
【０１３１】
本発明では、一つ目はワークフロー設計における各エンジン間で抽出条件や解析結果を連携していく事で、前段階のエンジンで指定した抽出や、フィルタ条件、解析結果を次のエンジンに渡すことで、ドリルダウンの自動化を可能とする。
【０１３２】
二つ目は様々なフロー分岐に対応するように、データ種や解析エンジンと切り離して独立の条件分岐と分類、フィルタエンジンを設け、これにより更にエンジニア思考に沿ったワークフロー設計を可能とする。
【０１３３】
よって、より解析者の思考に沿ったフロー設計と思考判断のドリルダウンの自動化を図り、意思決定の精度向上と時間短縮とを実現させることができる。
【０１３４】
本発明によって品質改善に伴う複雑なユーザ（エンジニア）の解析手法をシステム化する事が可能となり、且つ複数のエンジニア知見を集約させたナレッジシステムを構築する事も可能となる。これによって、従来エンジニアに委ねられ、埋もれ、暗黙知とされていた品質改善の手法を形式知とする事ができ、結果、エンジニアの解析業務における重複処理を無くし作業効率を改善すると共にエンジニアのスキル間差を埋める事ができ、エンジニアのリソース（解析時間、人員）を効率化する。
【０１３５】
第一に、解析業務の効率化を実現することが可能となる。本発明では、解析の前処理や中間処理を自動化でき、エンジニアの解析業務を思考する作業のみに集中させる事ができる。これによってエンジニアのスキル間差を埋めつつ解析時間を短縮化し、その短縮した分をまた別角度の解析に当てる事ができ、エンジニアリソースはそのままに、解析リソースを拡大させることが可能となる。
【０１３６】
第二に、トラブル対応の効率化を実現することが可能となる。本発明では、品質改善支援サーバ１００のワークフロー実行管理部１１２によって、工程や装置トラブルに対して品質改善支援サーバ１００側で自己診断し、既存のトラブル(パターン化されたもの)であれば自動的に指示を行い、そうでない新規例のみエンジニアに対してアラームする。これによってエンジニアのトラブル対応を新規のアラーム及び新規のトラブルにのみに集中する事ができ、ロットリリースや装置リリースを短手番化するとともにエンジニアのリソース(解析時間、人員)を効率化することが可能となる。
【０１３７】
第三に、解析フィードバックの効率化を実現することが可能となる。本発明では、保存しておいたワークフロー設計データを再利用することによって、過去の凡例を経験則として確実に有効活用する事ができ、不要な２重解析を防ぐ事で迅速な解析のフィードバックを行う事ができる。
【０１３８】
以上の説明に関し、更に以下の項を開示する。
（付記１）
製品製造に係る品質改善を支援する情報処理端末において、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段とを有することを特徴とする情報処理端末。
（付記２）
前記データ連携手段は、データ連携元の一つの処理部品がデータ連携先の複数の他の処理部品へのデータ連携を行うことを特徴とする付記１記載の情報処理端末。
（付記３）
前記データ連携手段は、データ連携元の複数の処理部品からデータ連携先の一つの処理部品へのデータ連携を行うことを特徴とする付記１又は２記載の情報処理端末。
（付記４）
前記ワークフローの前記行情報と、該ワークフロー内における前記処理部品の行列情報と、該処理部品間のデータ連携を示すデータ連携情報とを、複数のワークフローで構成されるビジネスフロー毎にメタデータ言語で記述したワークフロー設計データで管理することを特徴とする付記１乃至３のいずれか一項記載の情報処理端末。
（付記５）
前記ワークフロー設計データに従って、配置された前記複数の処理部品を少なくとも前記ビジネスフロー単位又は前記ワークフロー単位で実行する実行手段を更に有することを特徴とする付記４記載の情報処理端末。
（付記６）
前記ワークフロー配置手段と、前記処理部品配置手段と、前記データ連携手段と、前記実行手段として動作するプログラムを含むプログラムデータをサーバからダウンロードすることを特徴とする付記５のいずれか一項記載の情報処理端末。
（付記７）
左から右への横方向へと、上から下への縦方向へと処理が流れるように第四象限の座標が適用されていることを特徴とする付記１乃至６のいずれか一項記載の情報処理端末。
（付記８）
処理部品が配置されたワークフローを実行する情報処理端末において、
前記処理部品を実行する実行順序に従って該処理部品の配置位置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手段と、
前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手段とを有することを特徴とする情報処理端末。
（付記９）
前記コントロールポイントは、前記処理部品の配置位置と実行順序とを示すことを特徴とする付記８記載の情報処理端末。
（付記１０）
前記実行制御手段は、前記コントロールポイントで示される前記処理部品を実行する際、前記ワークフロー設計データで定義される前記データ連携を逆に順に辿って、該実行される処理部品の項目と連結元の処理部品の項目とが整合されるように、該連結元の処理部品の項目に基づいて該実行される処理部品の項目を更新することを特徴とする付記８又は９記載の情報処理端末。
（付記１１）
前記ワークフロー設計データは、前記処理部品間のデータ連携を定義すると共に、前記処理部品毎に項目を定義し、前記実行制御手段によって該項目が更新されることを特徴とする付記１０記載の情報処理端末。
（付記１２）
製品製造に係る品質改善を支援する処理をコンピュータに行わせるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手順と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手順と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手順とを実行させることを特徴とするコンピュータ実行可能なプログラム。
（付記１３）
製品製造に係る品質改善を支援する処理をコンピュータに行わせるプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、該コンピュータに、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手順と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手順と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手順とを実行させることを特徴とするプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
（付記１４）
処理部品が配置されたワークフローを実行する処理をコンピュータに行わせるコンピュータ実行可能なプログラムにおいて、該コンピュータに、
前記処理部品を実行する順序に従って該処理部品の配置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手順と、
前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手順とを有することを特徴とするコンピュータ実行可能なプログラム。
（付記１５）
処理部品が配置されたワークフローを実行する処理をコンピュータに行わせるプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、該コンピュータに、
前記処理部品を実行する順序に従って該処理部品の配置をコントロールポイントとして取得し、該コントロールポイントをフロー制御データに記憶して管理するコントロールポイント管理手順と、
前記フロー制御データを用いて前記処理部品の実行を行う際に、前記処理部品間のデータ連携が定義されるワークフロー設計データに従って項目を引き継ぐことにより複数のワークフロー間を跨った処理部品の実行を制御する実行制御手順とを有することを特徴とするプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
（付記１６）
製品製造に係る品質改善を支援する品質改善支援サーバにおいて、
品質改善を検証するワークフローを配置する領域に配置された各ワークフローの配置位置を示す行情報を取得して、該行情報に基づいて該各ワークフローを表示するワークフロー配置手段と、
前記各ワークフロー内に配置された処理部品の配置位置を示す行列情報を取得して、該行列情報に基づいて該処理部品を表示する処理部品配置手段と、
複数のワークフローに配置され表示された複数の処理部品間に対して各ワークフロー内又は他のワークフローを跨って設定されたデータ連携線に従って、該複数の処理部品間のデータ連携を行うデータ連携手段と、
配置された前記複数の処理部品を少なくとも複数のワークフローで構成されるビジネスフロー単位又は該ワークフロー単位で実行可能とする実行手段と、
前記ワークフロー配置手段と、前記処理部品配置手段と、前記データ連携手段と、前記実行手段として機能するプログラムを有するプログラムデータをネットワークを介して接続される情報処理端末へ送信する送信手段とを有することを特徴とする品質改善支援サーバ。
（付記１７）
過去のトラブルと該トラブルに対する指示内容とを管理するトラブルデータベースと、
前記各手段の実行中のトラブルを受信し、前記トラブルデータベースを参照することによって、受信したトラブルに対応する指示内容を前記情報処理端末へ送信するトラブル対応手段とを有することを特徴とする付記１６記載の品質改善支援サーバ。
【０１３９】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【０１４０】
【図１】本発明に係る品質改善システムのネットワーク構成を示す図である。
【図２】品質改善支援サーバの機能構成例を示す図である。
【図３】クライアントＰＣの機能構成例を示す図である。
【図４】ワークフロー設計の概要を説明するための図である。
【図５】オブジェクト関係を示すソフトウェア設計図の例を示す図である。
【図６】ワークフロー及びデータフローを作成するシーケンス図である。
【図７】エンジンが連結、入力、実行を行う処理シーケンスを示す図である。
【図８】ビジネスフローの保存と実行のフローチャート図である。
【図９】エンジンの処理フローのチャート図である。
【図１０】マトリクスのワークフロー設計の第一の例を示す図である。
【図１１】マトリクスのワークフロー設計の第二の例を示す図である。
【図１２】項目の不整合を解消する方法を説明するための図である。
【図１３】図１１に示すマトリクス上で定義されるビジネスフローをＸＭＬで記述したワークフロー設計データの記述例を示す図である。
【図１４】ビジネスフローに設定されたワークフローの詳細な記述の例を示す図である。
【図１５】ビジネスフローに設定されたワークフローの詳細な記述の例を示す図（図１４からの続き）である。
【図１６】ビジネスフローに設定されたワークフローの詳細な記述の例を示す図（図１５からの続き）である。
【図１７】ビジネスフローに設定されたワークフローの詳細な記述の例を示す図（図１６からの続き）である。
【図１８】マトリクスのワークフロー設計の第三の例を示す図である。
【符号の説明】
【０１４１】
５              イントラネット
１０ａ          クライアントＰＣ
１６            記憶領域
１７            記憶領域
１００          品質改善支援サーバ
１１１          ワークフロー作成管理部
１１２          ワークフロー実行管理部
１２１          ワークフロー編集部
１２２          ワークフロー実行部
１２３          Ｊａｖａ（登録商標）ＶＭ
１６１          ワークフロー設計データＤＢ
１６２          品質管理データＤＢ
１６３          ワークフロー作成プログラム
１７１          ワークフロー設計データ
１７２          品質管理データファイル
１６４          トラブルＤＢ
２００          データ管理サーバ
【図１】
2007188481.tif 000003
【図２】
2007188481.tif 000004
【図３】
2007188481.tif 000005
【図４】
2007188481.tif 000006
【図５】
2007188481.tif 000007
【図６】
2007188481.tif 000008
【図７】
2007188481.tif 000009
【図８】
2007188481.tif 000010
【図９】
2007188481.tif 000011
【図１０】
2007188481.tif 000012
【図１１】
2007188481.tif 000013
【図１２】
2007188481.tif 000014
【図１３】
2007188481.tif 000015
【図１４】
2007188481.tif 000016
【図１５】
2007188481.tif 000017
【図１６】
2007188481.tif 000018
【図１７】
2007188481.tif 000019
【図１８】
2007188481.tif 000020