JP2015176603A - 処理フロー構造を生成するためのシステムおよび方法 - Google Patents
処理フロー構造を生成するためのシステムおよび方法 Download PDFInfo
- Publication number
- JP2015176603A JP2015176603A JP2015028245A JP2015028245A JP2015176603A JP 2015176603 A JP2015176603 A JP 2015176603A JP 2015028245 A JP2015028245 A JP 2015028245A JP 2015028245 A JP2015028245 A JP 2015028245A JP 2015176603 A JP2015176603 A JP 2015176603A
- Authority
- JP
- Japan
- Prior art keywords
- process flow
- flow structure
- node
- record
- nodes
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 596
- 230000008569 process Effects 0.000 title claims abstract description 513
- 238000012545 processing Methods 0.000 claims description 104
- 230000004044 response Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 9
- 238000009877 rendering Methods 0.000 claims description 5
- 230000002085 persistent effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 9
- 230000000007 visual effect Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 4
- 238000013479 data entry Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000002910 structure generation Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32424—Task flow editing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Human Computer Interaction (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Manufacturing & Machinery (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
Abstract
【課題】ディスプレイ装置上で、部分的に生成された処理フロー構造に追加する選択可能なオプションとして提案する処理フロー構造の識別及び提示のための装置、方法及びプログラムを提供する。【解決手段】グラフィカル環境コントローラ1602、比較エンジン1608並びに任意で、ディスプレイコントローラ1612、構造−レコードコンバータ1604、レコード−構造コンバータ1606、リポジトリ1610及びディスプレイ装置1614のうちの1つ以上を具備する。第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信する。第2の処理フロー構造が、第1の処理フロー構造と第2の処理フロー構造との間の所定の類似度の識別に基づき、以前に記憶された処理フロー構造の中から取り出される。次に、第1の処理フロー構造への追加のために第2の処理フロー構造のサブセットを具備する選択可能な処理フロー構造を表示する。【選択図】図16
Description
本発明は、処理フロー構造または処理フローダイアグラムを生成し、図形的にレンダリングする、または視覚的に表示することに関する。より具体的には、本発明は、部分的に生成された処理フロー構造または処理フローダイアグラムへの追加のための選択可能なオプションとして、ディスプレイ装置上における提案された処理フロー構造の識別および提示のための装置、方法、およびプログラムに関係する。
処理フローダイアグラムは、アルゴリズムまたはプロセスのグラフィカルな表現を具備し、処理ステップは、多様なタイプのノードとして表されるとともに、処理ステップの実行の順序は、ノード間の相互接続(好適には、矢印等の有向の相互接続)によって特定される。
処理フローダイアグラムは、(1)ノードの順序付けられた配置を具備する処理フロー構造、および(2)処理フロー構造の各ノードにおける実行のための処理ステップを含むとして理解され得る。図1Aは、ノード101a〜105aの順序付けられた配置を具備する例示的な処理フロー構造100aを説明する。図1Bは、図1Aの処理フロー構造に基づく処理フローダイアグラム100bを例示し、処理ステップは、ノード101b〜105bのそれぞれに対して定義されている。図1Bの処理フローダイアグラムは、2つの数の加算のための例示的なプロセスを表す。
処理フローダイアグラムは、プロセッサで実装されるエディタ環境内で作成し得、処理フローダイアグラムはビジュアルディスプレイ装置上で、ユーザ入力に基づいて定義および図形的にレンダリングまたは表示され得る。処理フローダイアグラムを定義するユーザ入力は、
(1)処理フロー構造 ― 処理フロー構造は、処理フロー内のノードの数およびタイプ、各ノードの位置、ならびにノード間の相互接続を識別することによって特定され得るとともに、
(2)各ノードでの実行のための処理ステップ
を特定する。
(1)処理フロー構造 ― 処理フロー構造は、処理フロー内のノードの数およびタイプ、各ノードの位置、ならびにノード間の相互接続を識別することによって特定され得るとともに、
(2)各ノードでの実行のための処理ステップ
を特定する。
従って、処理フローダイアグラムの作成に時間および労力は集中する。また、異なるプロセスは、処理フロー構造内のノードで実行される特定の処理ステップに見られる違いとともに、同一、類似、または部分的に類似する処理フロー構造を使用して表される場合がある。例として、図1Cは、ノード101c〜105cからなりかつ図1Aの処理フロー構造と同一の処理フロー構造を有する処理フローダイアグラム100cを例示する。ノード数、ノードタイプ、ノード相互接続が図1Aおよび1Bにおけるのと同一であるのにもかかわらず、ノード102c〜104cで実行される処理ステップは、図1Bのノード102b〜104bで実行されるものと全体的に異なっていることに気付くだろう。
処理フロー構造間の類似も、各プロセスにおける標準化されたサブプロセスまたサブルーチンの再利用の結果として生じる。
従って、処理フロー構造の作成において、オペレーティングユーザは、以前に作成された処理フロー構造の重複に関して多大な資源を費やし得る(故意または無意識に)。
従って、処理フロー構造の効率的な作成のため、および既に作成された処理フローの作成に向かう不注意な労力の重複を避けるための要求がある。
複数の相互接続ノードを含む処理フロー構造を生成するための、および処理フロー構造記憶リポジトリと通信するように構成されたシステムを具備する。本システムは、プロセッサ、グラフィカル環境コントローラ、および比較エンジンを具備し得る。グラフィカル環境コントローラは、第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するように構成され得る。グラフィカル環境コントローラはさらに、第1の処理フロー構造への追加のための選択可能な処理フロー構造を、ディスプレイ装置上に表示するように構成され得る。
比較エンジンは、第1の処理フロー構造とリポジトリ内の以前に記憶された処理フロー構造とを比較するように構成され得る。比較結果に基づいて、比較エンジンは、以前に記憶された処理フロー構造の中から第2の処理フロー構造を取り出し得る。第2の処理フロー構造の取り出しは、第1の処理フロー構造と第2の処理フロー構造との間の所定の類似度に基づく。一実施形態において、グラフィカル環境コントローラによって表示された選択可能な処理フロー構造は、取り出した第2の処理フロー構造のサブセットを具備し得る。
比較エンジンはさらに、以前に記憶された処理フロー構造の中から複数の処理フロー構造を取り出すように構成され得る。リポジトリからの各処理フロー構造の取り出しは、第1の処理フロー構造と取り出した処理フロー構造との間の所定の類似度を識別することに基づく。
グラフィカル環境コントローラは、第1の処理フロー構造への追加のための複数の選択可能な処理フロー構造を表示するように構成され得、各選択可能な処理フロー構造は、取り出した複数の処理フロー構造のうちの1つのサブセットを具備する。
一実施形態において、グラフィカル環境コントローラは、第1の処理フロー構造への追加のための表示された選択可能な処理フロー構造のサブセットを選択する第2のユーザ入力を取り出すように構成され得る。グラフィカル環境コントローラは、第2のユーザ入力によって選択された、表示された選択可能な処理フロー構造のサブセットが、全体表示された選択可能な処理フロー構造を具備するように構成され得る。
グラフィカル環境コントローラはさらに、統合された処理フロー構造を表示するように構成され得る。統合された処理フロー構造は、第1の処理フロー構造に追加された、表示された選択可能な処理フロー構造の選択されたサブセットを具備し得る。
例示的な実施形態において、グラフィカル環境コントローラは、表示された選択可能な処理フロー構造の選択されたサブセットを、第1のユーザ入力によって識別されたノードにおいて第1の処理フロー構造に追加するように構成され得る。
本システムの比較エンジンは、第2の処理フロー構造と第1の処理フロー構造との間の所定の類似度を識別するように構成され得る。所定の類似度の識別は、第2の処理フロー構造が、第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むとの判定に応答して生じ得る。
比較エンジンはさらに、第2の処理フロー構造が、第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むと判定することが、ノードの第1のセットおよびノードの第2のセット内のノードとそれぞれ関連付けられたノード属性を比較することを含むように構成され得る。
比較エンジンは、対応するノードとそれぞれ関連付けられた、ノードシンボル、親ノード、関連する子ノード、外向き接続、および内向き接続のうちの1つまたは複数を含むノード属性を比較するように構成され得る。
本システムの実施形態において、比較エンジンは、第1の処理フロー構造と以前に記憶された処理フロー構造とを比較することが、第1の処理フロー構造を表す情報と、それぞれ以前に記憶された処理フロー構造を表す情報とを比較することを含むように構成され得る。
さらなる特定の実施形態において、比較エンジンは、(1)第1の処理フロー構造に対応する第1の処理フローレコードから第1の処理フロー構造を表す情報と、(2)以前に記憶された処理フロー構造に対応する第2の処理フローレコードから以前に記憶された処理フロー構造を表す情報とを取り出し得る。第1の処理フローレコードおよび第2の処理フローレコードは、処理フロー構造を処理フローレコードにコンバートするように構成された第1のコンバータによって生成され得る。
第1のコンバータは、データレコードのセットを具備する処理フローレコードを生成するように構成され得る。各データレコードが、関連するノード属性のコレクションとして、対応する処理フロー構造内のノードを表す。生成された処理フローレコードはさらに、各データレコードに対応するデータフィールドのセットを具備し得、データレコード内の各データフィールドは、表されたノードと関連付けられたノード属性を表す。
比較エンジンはさらに、第1の処理フロー構造を表す情報と以前に記憶された処理フロー構造を表す情報とを比較することが、第1の処理フローレコード内のデータレコードの第1のセットと第2の処理フローレコード内のデータレコードの第2のセットとを比較するように構成され得る。
本システムの特定の実施形態において、比較エンジンは、第1の処理フローレコード内のデータレコードと第2の処理フローレコード内のデータレコードとを比較することが、データレコードの第2のセットおよびデータレコードの第1のセットが同一のデータフィールド値を有するかどうかを判定することを含むように構成され得る。
本システムはさらに、処理フローレコードを処理フロー構造にコンバートするように構成された第2のコンバータを含み得る。データレコードの第2のセットおよびデータレコードの第1のセットが、同一のデータフィールド値を有するとの判定に応答して、(1)比較エンジンは、第2の処理フローレコードからデータレコードの第2のセットに対応する情報を取り出し、(2)第2のコンバータは、取り出した情報を選択可能な処理フロー構造にコンバートするとともに、(3)グラフィカル環境コントローラは、選択可能な処理フロー構造をディスプレイ装置上に図形的に表示する。
本発明はさらに、複数の相互接続ノードを具備する処理フロー構造を生成するための方法を含む。本方法は、(1)第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するステップと、(2)以前に記憶された処理フロー構造の中から第2の処理フロー構造を取り出すステップであって、第2の処理フロー構造の取り出しが、第1の処理フロー構造と第2の処理フロー構造との間の所定の類似度を識別することに基づく、ステップと、(3)第1の処理フロー構造への追加のための選択可能な処理フロー構造を表示するステップであって、選択可能な処理フロー構造が第2の処理フロー構造のサブセットを含む、ステップとを含む。
本方法の取り出すステップは、一実施形態において、以前に記憶された処理フロー構造の中から複数の処理フロー構造を取り出すステップを含み得、各処理フロー構造の取り出しは、第1の処理フロー構造と取り出した処理フロー構造との間の所定の類似度を識別することに基づく。本方法の表示するステップは、第1の処理フロー構造への追加のための複数の選択可能な処理フロー構造を表示するステップを含み得、各選択可能な処理フロー構造は、取り出した複数の処理フロー構造のうちの1つのサブセットを具備する。
本方法の一実施形態において、第1の処理フロー構造は、部分的に生成された処理フロー構造である。さらなる実施形態において、表示された選択可能な処理フロー構造のサブセットは、第1の処理フロー構造への追加のための第2のユーザ入力によって選択され得る。さらなる特定の実施形態において、第2のユーザ入力によって選択されたサブセットは、全体表示された選択可能な処理フロー構造を具備し得る。
第1の処理フロー構造は、表示された選択可能な処理フロー構造の選択されたサブセットを追加することによって変更され得る。特定の実施形態において、表示された選択可能な処理フロー構造の選択されたサブセットは、第1のユーザ入力によって識別されたノードにおいて第1の処理フロー構造に追加され得る。
本方法の一実施形態において、第2の処理フロー構造と第1の処理フロー構造との間の所定の類似度は、第2の処理フロー構造が、第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むとの判定に応答して識別される。
本方法のさらに特定の実施形態において、第2の処理フロー構造が、第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むと判定するステップは、ノードの第1のセットおよびノードの第2のセット内のノードと、それぞれ関連付けられたノード属性とを比較するステップを含み得る。ノード属性は、対応するノードとそれぞれ関連付けられた、ノードシンボル、親ノード、関連する子ノード、外向き接続、および内向き接続のうちの1つまたは複数を含み得る。
本方法の別の実施形態において、以前に記憶された処理フロー構造の中から少なくとも第2の処理フロー構造を取り出すステップは、第1の処理フロー構造を表す情報とそれぞれ以前に記憶された処理フロー構造を表す情報とを比較するステップを含む。さらなる特定の実施形態において、(1)第1の処理フロー構造を表す情報は、第1の処理フロー構造に対応する第1の処理フローレコードから取り出され得るとともに、(2)以前に記憶された処理フロー構造を表す情報は、以前に記憶された処理フロー構造に対応する第2の処理フローレコードから取り出され得る。
上記方法の実施形態において、各処理フローレコードは、データレコードのセットを具備し得、各データレコードが、関連するノード属性のコレクションとして、対応する処理フロー構造内のノードを表す。各処理フローレコードはさらに、各データレコードに対応するデータフィールドのセットを具備し得、データレコード内の各データフィールドは、表されたノードに関連付けられたノード属性を表す。
第1の処理フロー構造を表す情報と以前に記憶された処理フロー構造を表す情報とを比較するステップは、一実施形態において、第1の処理フローレコード内のデータレコードの第1のセットと第2の処理フローレコード内のデータレコードの第2のセットとを比較するステップを具備し得る。
第1の処理フローレコード内のデータレコードと第2の処理フローレコード内のデータレコードと比較するステップは、データレコードの第2のセットおよびデータレコードの第1のセットが同一のデータフィールド値を有するかどうかを判定するステップを含み得る。
本方法は、(1)第2の処理フローレコードからデータレコードの第2のセットに対応する情報を取り出すステップ、および(2)選択可能な処理フロー構造をディスプレイ装置上に図形的にレンダリングするステップであって、選択可能な処理フロー構造が、データレコードの第2のセットに対応する取り出した情報に基づいてレンダリングされるステップにより、データレコードの第2のセットおよびデータレコードの第1のセットが、同一のデータフィールド値を有するとの判定に応答するステップを含み得る。
本発明はさらに、複数の相互接続ノードを具備する処理フロー構造を生成するためのコンピュータプログラム製品を含み得、コンピュータプログラム製品は、そこに組み込まれるコンピュータ可読プログラムコードを有する持続性コンピュータ可読媒体を具備し得る。コンピュータ可読プログラムコードは、(1)第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するための命令と、(2)以前に記憶された処理フロー構造の中から第2の処理フロー構造を取り出すための命令であって、第2の処理フロー構造の取り出しが、第1の処理フロー構造と第2の処理フロー構造との間の所定の類似度を識別することに基づく、命令と、(3)第1の処理フロー構造への追加のための選択可能な処理フロー構造を表示するための命令であって、選択可能な処理フロー構造が第2の処理フロー構造のサブセットを具備する、命令とを具備し得る。
本発明を説明する目的のため、以下に特定の用語が以下に定義される。特別に定義されるものを除いて、本明細書および特許請求の範囲における用語は、当業者にとって明確である意味を有するものとして理解されるべきである。
「バーストノード」は、実行下の処理フローが複数のノードに分岐する、処理フロー構造または処理フローダイアグラム内のノードを指す。別の言い方をすれば、バーストノードは、複数の子ノードを有するノードを指す。
「子ノード」は、処理フローが検討中のノードから子ノードに直接進むように、検討中のノードに直接接続されるノードを指す。
「ノード」は、処理フロー構造または処理フローダイアグラム内の個別の処理ステップを指す。ノードは、プロセスまたはノードで行われる動作のタイプを表す標準化されたシンボルを使用して表され得る。
「ノードシンボル」は、処理ステップカテゴリに一意的に関連付けられたシンボルを指す。処理フロー構造または処理フローダイアグラムの図形的なレンダリングまたは表示において、各ノードは、ノードシンボルによって表され得、選択されたノードシンボルは、そのノードに対して適用可能な処理ステップカテゴリに一意的に関連付けられる。図2A〜2Hは、処理フロー構造または処理フローダイアグラムを作成するために使用される標準化されたノードシンボルの例示的なセットを提供し、処理ノード、判定ノード、データ入力ノード、開始/終了ノード、定義済み処理ノード、手動入力ノード、格納データノード、および手動操作ノードをそれぞれ説明する。
「親ノード」は、処理フローが親ノードから検討中のノードに直接進むように、検討中のノードに直接接続されるノードを指す。
「処理フローダイアグラム」は、アルゴリズムまたはプロセスのグラフィカルな表現を指し、処理ステップはノード内に例示されるとともに、処理ステップの実行の順序は、ノード間の相互接続(矢印または他の接続線等)によって特定される。上述の一般性に対する限定はせずに、処理フローダイアグラムは、フローチャート(処理フローチャートおよび機能的フローチャートを含む)、処理チャート(処理マップおよび機能的処理チャートを含む)、処理モデル(ビジネスモデルを含む)およびフローダイアグラム(処理フローダイアグラム、ワークフローダイアグラム、およびビジネスフローダイアグラムを含む)を含む。
「処理フローレコード」は、ディスプレイ装置上において処理フロー構造を図形的にレンダリングまたは表示するために情報が使用され得る、処理フロー構造の属性を表す情報を含むデータレコードを指す。
「処理フロー構造」は、ノードの順序付けられた配置および当該ノード間の相互接続を表すグラフィカルな表現を指す。処理フロー構造は、インクルージョンのために選択されたノードの数およびタイプ、ノードの位置、ならびにノード間の相互接続のうちの1つまたは複数の機能である。
「処理ステップカテゴリ」は、処理フロー構造または処理フローダイアグラム内の処理ステップに適用可能な所定のカテゴリ化を指す。処理ステップカテゴリの例として、処理ステップ、判定ステップ、データ入力/出力ステップ、開始/終了ステップ、定義済み処理ステップ、手動入力ステップ、および手動操作ステップを含む。
「リポジトリ」は、処理フロー構造を格納するように構成可能であるデータベースまたは他のコンピュータ可読記憶媒体を指す。
「兄弟ノード」は、検討中のノードと親ノードを共有するノードを指す。
「シンクノード」は、処理フローが複数のノードから収束する、処理フロー構造または処理フローダイアグラム内のノードを指す。別の言い方をすれば、シンクノードは、複数の親ノードを有するノードを指す。
本発明は、以前に生成された処理フロー構造に基づく処理フロー構造または処理フローダイアグラムの作成を可能にする。本発明は、部分的に生成された処理フロー構造を完成させるための提案される1つまたは複数の処理フロー構造をユーザに対して表示することによってこれを遂行する。本発明は、ユーザが、提案された1つまたは複数の処理フロー構造を閲覧、またはそうでなければレビューして部分的に生成された処理フロー構造に追加するために提案される処理フロー構造の一部分または全体を選択するのを可能にする。本発明は、ユーザに対する表示のために、以前に記憶された処理フロー構造のデータベースから、提案される処理フロー構造またはそれらの一部を選択および取り出す。選択および取り出しは、提案される1つまたは複数の処理フロー構造が部分的に生成された処理フロー構造と所定の類似度を有することを判定することを含む、複数の要因に基づき得る。
図3〜5Bは、本発明の実施を例示する。
図3は、プロセッサで実装されるエディタ環境においてユーザによって作成された部分生成済み処理フロー構造300を例示する。部分的に生成されたフロー構造は、それらの間に相互接続を有するノード301〜303を具備する。ノード301、302、および303は、開始ノード、処理ノード、および判定ノードを表す標準化されたノードシンボルをそれぞれ具備する。ユーザ入力に基づく処理フロー構造は、プロセッサで実装されるエディタ環境を使用する幾つかの方法のうちのいずれか1つで生成され得ることが理解されよう。例えば、エディタ環境は、オペレーティングユーザが表示および/または格納のために処理フロー構造を作成することを可能にする、描画ツール、および/または選択可能でテンプレート化されたノードシンボルおよび相互接続シンボルを提供し得る。
部分生成済み処理フロー構造300の作成に応答して、本発明は、以前に記憶された処理フロー構造のリポジトリを検索するとともに、部分生成済み処理フロー構造300内のノードの配置および相互接続と(1)同一である、または(2)所定の類似度を有するノードの配置および相互接続を有する1つまたは複数の部分的または完全な処理フロー構造を選択および取り出す。以前に記憶された処理フロー構造のデータベースからの類似または同一の処理フロー構造の検索、選択、及び取り出しを可能にするシステムおよび方法は、本文書において続いて論じられる。
図4Aおよび4Bは、ノード301〜303(図3における)の配置と同一のノードのサブセットおよび相互接続をそれぞれ有し、従って処理フロー構造が以前に記憶された処理フロー構造を含むリポジトリからの選択に適している、2つの異なる処理フロー構造400aおよび400bの具体例を提供する。具体的には、処理フロー構造400a(図4A)は、相互接続ノード401a〜408aの配置を具備するのと同時に、ノードのサブセット401a〜403aの特定の配置および相互接続は、部分生成済み処理フロー構造300のノード301〜303の配置および相互接続と同一である。同様に、処理フロー構造400b(図4B)は、相互接続ノード401b〜409bの配置を具備するのと同時に、ノード401b〜403bの特定の配置および相互接続は、部分生成済み処理フロー構造300のノード301〜303の配置および相互接続と同一である。
処理フロー構造400aおよび400b(または上記処理フロー構造の関連する同一のサブセット)は、部分生成済み処理フロー構造300を完成させるために提案されるオプションの形式でユーザに対して表示され得る。図4Cおよび4Dは、処理フロー構造400aおよび400bのサブセット400a’および400b’がそれぞれ、部分生成済み処理フロー構造300を完成させるために提案される代替オプションの形式でユーザに提示され得る、本発明の実施形態を例示する。
図4Cは、部分生成済み処理フロー構造300を完成させるために第1の提案オプションとしてユーザに表示され得る、処理フロー構造400aのサブセット400a’を例示する。サブセット400a’は、部分生成済み処理フロー構造300を完成させるために提案されるオプションとしてユーザに提示され得るノード403a〜408aを具備する。例示の実施形態では、サブセット400a’は、ノード401aおよび402a(図4Aに例示される)を省略するとともに、例示のサブセットをノード403aで開始することに留意されたい。
同様に、図4Dは、部分生成済み処理フロー構造300を完成させるための第2の提案オプションとして、ユーザに対して表示され得る処理フロー構造400bのサブセット400b’を例示する。サブセット400b’は、部分生成済み処理フロー構造300を完成させるために提案されるオプションとして、ユーザに提示され得るノード403b〜409bを具備する。
ノード403aおよび403bにおいてそれぞれ、第1のおよび第2の提案オプションの表示を開始することによって(すなわち、図4Aのノード401aおよび402a、または図4Bのノード401bおよび402bをそれぞれ省略することによって)、ユーザには、部分生成済み構造300内の最後のノード303に追加されるのに最も適している処理フロー構造400aおよび400bの部分が提示される。本発明はさらに、図4Aおよび4Bの処理フロー構造全体をユーザに対して表示することによっても実施されることが理解されよう。しかし、短縮された図4Cおよび4Dは、ノード303に追加する必要があるノードおよび相互接続に関するユーザの決定に最も関係する情報を提示する。
提案される処理フロー構造に基づいてユーザは、部分的に生成された処理フロー構造への追加のために提案されるフロー構造全体、またはその一部のいずれかを選択し得る。例えば、図4Cおよび4Dに例示される第1のおよび第2のオプションが提示される場合、ユーザは、第1のオプションまたは第2のオプションのいずれかで提示されるフロー構造全体を選択または実装し得る(図3のノード303において)。代替として図5Aに例示されるように、ユーザは、図3のノード303における実装またはインクルージョンのための処理フロー構造400a’からサブ構造(ノード403a、404a、および405aならびにそれらの間の相互接続を具備するサブ構造500a等)を強調する、またはそうでなければ選択し得る。同様に、図5Bに示されるように、ユーザは、図3のノード303におけるインクルージョンのための処理フロー構造400b’から、サブ構造(ノード403b、405b、および409bならびにそれらの相互接続を具備するサブ構造500b等)を強調、またはそうでなければ選択し得る。本発明の実施形態において、選択されたサブ構造500aまたは500bは、図3に例示される部分生成済み処理フロー構造300のノード303を単に置換し得る。
大きい処理フロー構造(図5Aおよび5Bに例示されているもの等)内のサブ構造を強調または選択することは、エディタ環境内で利用可能でありかつ1つまたは複数のノードおよび/または1つまたは複数の相互接続の選択を可能する多数の標準ツールによって遂行されることが理解されよう。例示的なツールは、選択ツール、スナップショットツール、またはグループ化ツールを含み得る。
図6は、上記方法の実施形態を例示する。ステップ602でユーザ入力が受信され、ユーザ入力は部分的な処理フロー構造を定義する。受信したユーザ入力によって定義される部分的な処理フロー構造は、少なくとも2つの相互接続ノードを含み得る。ステップ604で、上記方法は、処理フロー構造のリポジトリから、部分的に生成された処理フロー構造の少なくとも2つの相互接続ノードと比較して所定の類似度を満たす、以前に作成された1つまたは複数のフロー構造を選択する。
選択された1つまたは複数の処理フロー構造またはそれらの一部は、ステップ606において、部分的に生成された処理フロー構造に対して可能性のあるまたは提案される追加として、ユーザに対して表示され得る。ステップ608において、表示される1つまたは複数の処理フロー構造のうちの少なくとも一部分を選択するユーザ入力が受信される。ステップ610は、部分的に生成された処理フロー構造に、ステップ608においてユーザによって選択されたノードおよび相互接続を追加する。変更された処理フロー構造は、ステップ612で表示される。
本発明は、(1)以前に記憶された処理フロー構造のデータベースの検索、ならびに(2)部分的に生成された処理フロー構造内のノードの配置および相互接続と同一(または所定の度合いで類似)であるノードの配置および相互接続を有する処理フロー構造の選択および取り出しを可能するのに適した方法または装置を実装し得ることが理解されよう。
当該方法の実施形態を図7〜14を参照しながら以下に説明する。当該方法は、ノードの属性に関する情報を含む処理フローレコードとして処理フロー構造を表すとともに格納することによるものである。本方法は、
・ノード属性のコレクションとして処理フロー構造内の各ノードを表すステップと、
・上記処理フロー構造に対応する処理フローレコード内の処理フロー構造の個々のノードに関するノード属性を格納するステップと
を含む。
・ノード属性のコレクションとして処理フロー構造内の各ノードを表すステップと、
・上記処理フロー構造に対応する処理フローレコード内の処理フロー構造の個々のノードに関するノード属性を格納するステップと
を含む。
処理フロー構造の個々のノードは、ノードID、ノードタイプID、内向き接続点ID、外向き接続点ID、親ID、および子IDのうちの1つまたは複数を含み得る、ノード属性(すなわち、ノードの特性)のコレクションとして表され得る。これらノード属性のそれぞれは以下に説明する。
ノードID ― ノードIDは、処理フロー構造内の特定のノードと一意的に関連付けられた識別子である。ノードIDは、何らかの方法に従って生成および割り当てられ得、提供される各ノードは、それに関連付けられた一意のノードIDを有する。
図7は、本発明の例示的な実施形態を例示し、各ノードIDが、処理フロー構造内の対応するノードの階層的な位置を表すようにノードIDが選択される。図7に例示されるように、処理フロー構造700は、ノード701〜707を具備する。処理フロー構造700内の各ノードは、次の一般式を有する一意のノードIDで表される。
(x).(y+1) ………式(1)
・Xは、開始ノードから開始して、検討中のノードに到達するまでに制御フローのための通過が必要なノードの最小数を表すカウンタであるとともに、
・Yは、検討中のノードの生成以前に親ノード(検討中のノードの)から生成された兄弟ノードの数を表すカウンタである。
(x).(y+1) ………式(1)
・Xは、開始ノードから開始して、検討中のノードに到達するまでに制御フローのための通過が必要なノードの最小数を表すカウンタであるとともに、
・Yは、検討中のノードの生成以前に親ノード(検討中のノードの)から生成された兄弟ノードの数を表すカウンタである。
図7に表されたノードに式(1)を適用すると、対応するノードIDは、以下の方法で生成され得る。
・ノード701
・ノード701は開始ノードであるため、上記ノードに到達するまでに制御フローのために通過する必要があるノードは0である。従って、Xの値は0である。
・ノード701は、親ノードから既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード701に対応するノードIDは、(X).(Y+1)、すなわち、0.1である。
・ノード702
・ノード702に到達するまでに制御フローのために通過する必要があるノード(ノード701)が1つある。従って、Xの値は1である。
・ノード702は、親ノード(ノード701)から既に生成されている兄弟ノードを有さないため、Yの値は0である。
・従って、ノード702に対応するノードIDは、(X).(Y+1)、すなわち、1.1である。
・ノード703
・ノード703に到達するまでに制御フローのために通過する必要があるノード(ノード701および702)は2つある。従って、Xの値は2である。
・ノード703は、親ノード(ノード702)から既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード703に対応するノードIDは、(X).(Y+1)、すなわち、2.1である。
・ノード704
・ノード704に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、および703)は、3つある。従って、Xの値は3である。
・ノード704は、親ノード(ノード703)から既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード704に対応するノードIDは、(X).(Y+1)、すなわち、3.1である。
・ノード705
・ノード705に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、および703)は3つある。従って、Xの値は3である。
・ノード705は、親ノード(ノード703)から既に生成された兄弟ノード(ノード704)を1個有するため、Yの値は1である。
・従って、ノード705に対応するノードIDは、(X).(Y+1)、すなわち、3.2である。
・ノード706
・ノード706に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、703、および704)は4つある。従って、Xの値は4である。
・ノード706は、親ノード(ノード703)から既に生成された兄弟ノードを有さないため、Yの値は0である。
・従って、ノード706に対応するノードIDは、(X).(Y+1)、すなわち、4.1である。
・ノード707
・ノード707に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、703、704、および705)は5つある。従って、Xの値は5である。
・ノード707は、親ノード(ノード706)から既に生成された兄弟ノードを有さないため、Yの値は0である。
・従って、ノード707に対応するノードIDは、(X).(Y+1)、すなわち、5.1である。
・ノード701
・ノード701は開始ノードであるため、上記ノードに到達するまでに制御フローのために通過する必要があるノードは0である。従って、Xの値は0である。
・ノード701は、親ノードから既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード701に対応するノードIDは、(X).(Y+1)、すなわち、0.1である。
・ノード702
・ノード702に到達するまでに制御フローのために通過する必要があるノード(ノード701)が1つある。従って、Xの値は1である。
・ノード702は、親ノード(ノード701)から既に生成されている兄弟ノードを有さないため、Yの値は0である。
・従って、ノード702に対応するノードIDは、(X).(Y+1)、すなわち、1.1である。
・ノード703
・ノード703に到達するまでに制御フローのために通過する必要があるノード(ノード701および702)は2つある。従って、Xの値は2である。
・ノード703は、親ノード(ノード702)から既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード703に対応するノードIDは、(X).(Y+1)、すなわち、2.1である。
・ノード704
・ノード704に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、および703)は、3つある。従って、Xの値は3である。
・ノード704は、親ノード(ノード703)から既に生成されている兄弟ノードを有さないので、Yの値は0である。
・従って、ノード704に対応するノードIDは、(X).(Y+1)、すなわち、3.1である。
・ノード705
・ノード705に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、および703)は3つある。従って、Xの値は3である。
・ノード705は、親ノード(ノード703)から既に生成された兄弟ノード(ノード704)を1個有するため、Yの値は1である。
・従って、ノード705に対応するノードIDは、(X).(Y+1)、すなわち、3.2である。
・ノード706
・ノード706に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、703、および704)は4つある。従って、Xの値は4である。
・ノード706は、親ノード(ノード703)から既に生成された兄弟ノードを有さないため、Yの値は0である。
・従って、ノード706に対応するノードIDは、(X).(Y+1)、すなわち、4.1である。
・ノード707
・ノード707に到達するまでに制御フローのために通過する必要があるノード(ノード701、702、703、704、および705)は5つある。従って、Xの値は5である。
・ノード707は、親ノード(ノード706)から既に生成された兄弟ノードを有さないため、Yの値は0である。
・従って、ノード707に対応するノードIDは、(X).(Y+1)、すなわち、5.1である。
ノードタイプID ― ノードタイプIDは、特定のノードを表すために使用されるノードシンボル(および、上記ノードシンボルによって表された対応する処理ステップカテゴリ)に関連付けられた識別子である。表1は、ノードタイプIDと各ノードタイプを識別し得る各ノードタイプまたはノードシンボルとの間の関連の例示的なセットを提示する。
表1におけるノードタイプIDは、シンプルな数値の識別子であるのと同時に、ノードタイプIDは、処理フロー構造内の各ノードタイプまたはノードシンボルを一意的に識別することができる他の識別子のセットを含み得ることが理解されよう。
内向き接続点ID ― 内向き接続点IDは、別のノードからの内向き相互接続が検討中のノードと結合する検討中のノードの境界における局所的位置を定義する。一実施形態において、内向き接続点IDは、内向き相互接続が検討中のノードと結合するノードの境界において対応する位置に一意的に関連付けられた数値を含み得る。
外向き接続点ID ― 外向き接続点IDは、外向き相互接続(別のノードへの)が検討中のノードと結合する検討中のノードの境界における局所的位置を定義する。一実施形態において、外向き接続点IDは、外向き相互接続が検討中のノードと結合するノードの境界における対応する位置と一意的に関連付けられた数値を含み得る。
本発明の実施形態において、処理フロー構造内の各ノードは、他のノードとの内向きまたは外向き相互接続と結合するために構成された境界において、4つの局所的位置を有し得る。一実施形態において、これらの局所的位置は、ノード境界の上側、右側、下側、および左側に配置され得る。好適な実施形態において、これら上、右、下、および左の局所的位置のそれぞれは、ノード境界上の対応する位置と一意的に関連付けられた対応する数値によって表され得、いずれの値も検討中のノードの内向き接続点IDまたは外向き接続点IDとして働き得る。
表2は、他のノードとの内向きまたは外向き相互接続と結合するノード境界において局所的位置を定義するために使用され得る数値の例示的な実施形態を提示する。
図7のノード706を例にとると、表2で与えられたID値に基づいて、当該ノードは、0の内向き接続点ID値(ノード境界の上側における内向き接続を意味する)、および2の外向き接続点ID値(ノード境界の下側における外向き接続を意味する)を有する。一方で、ノード702は、当該ノードの上側および右側のそれぞれにおける、2つの内向き接続を有する ― 従って、2つの内向き接続点ID値はそれぞれ、0および1を有する。ノード702は、当該ノードの下側における単一の外向き接続のみを有する ― 従って、単一の外向き接続点ID値である2を有する。
親ID ― 親IDは、検討中のノードが派生する親ノードを識別する情報を含むノード属性である。シンクノードの場合、親IDのノード属性は、シンクノードにおいて収束する複数の親ノードを識別し得ることが理解されよう。本発明の実施形態において、親IDは、そのような親ノードに対応する一意のノードIDを使用することによって、親ノードを識別し得る。
子ID ― 子IDは、検討中のノードから派生する子ノードを識別する情報を含むノード属性である。バーストノードの場合、子IDノード属性は、バーストノードから分岐する複数の子ノードを識別し得ることが理解されよう。本発明の実施形態において、子IDは、そのような子ノードに対応する一意のノードIDを使用することによって子ノードを識別し得る。
図8は、処理フロー構造を記録するための処理フローレコードを作成するための原理を形成し得るデータ構造テンプレート800の実施形態を例示する。データ構造800は、表されたフロー構造内の各ノードに対応する、ノードID(801)、ノードタイプID(802)、内向き接続点ID(803)、外向き接続点ID(804)、親ID(805)、および子ID(806)を記録するデータフィールド801〜806を含む。
図8は、例示的なデータ構造テンプレートを説明するのと同時に、処理フローレコードは、テーブル、マトリクス、スプレッドシート、二次元配列、xmlドキュメント、または適切に構成されたデータベーススキーマを含む処理フロー構造を表す情報を記録することができるデータ構造内で作成され得ることが理解されよう。
図9Aは、ノード901〜908を具備する例示的な処理フロー構造900aを与える。図9Bは、処理フロー構造900aを表すために生成された対応する処理フローレコード900b(図8に例示されるデータ構造に基づく)を例示する。例示的な本実施形態において、ノード属性のノードID(それと従って、ノード属性の親IDおよび子ID)は、上記式(1)に従って生成された一意のノードIDを具備することに留意されたい。ノード属性のノードタイプIDは、上記表1において設定された例示的なノードタイプIDを具備する。ノード属性の内向き接続点IDおよび外向き接続点IDは、上記表2で論じられ例示的に定義された局所的ノード境界位置に対応する。
図10Aは、ノード1001〜1008を具備する例示的な処理フロー構造1000aを与える。図10Bは、処理フロー構造1000aを表すように生成された対応する処理フローレコード1000b(図8に例示されるデータ構造テンプレートに基づく)を例示する。図10Bのケースにおけるように、ノード属性のノードID(それと従って、ノード属性の親IDおよび子ID)は、上記式(1)に従って生成された一意のノードIDを具備する。ノード属性のノードタイプIDは、上記表1において設定された例示的なノードタイプIDを具備する。ノード属性の内向き接続点IDおよび外向き接続点IDは、上記表2で論じられ例示的に定義された局所的ノード境界位置に対応する。
図9Bおよび10Bから、ノードは、複数の内向き接続点、外向き接続点、親ノード、または子ノードを有する場合において、そのノードに対応する関連のあるデータフィールドは、複数のデータエントリを含み得ることを留意されたい。例示の実施形態において、複数のデータエントリは、区切り文字によって分離される。しかし、複数の内向き接続点、外向き接続点、親ノード、または子ノードを有するノードの例を表すために他の方法が使用され得ることが、当業者には分かるだろう。
処理フロー構造を表す処理フローレコード(図8に例示されるデータ構造テンプレートに基づく処理フローレコード等)は、(1)処理フロー構造を解析し、(2)対応する処理フローレコード内に、処理フロー構造の各ノードに一意的に対応するデータレコードを作成するとともに、(3)対応するノードのノード属性を表すデータとともに、各データレコード内へデータフィールドを投入することによって、投入され得る。
本発明の実施形態において、処理フロー構造に対応する処理フローレコードは、処理フロー構造の作成と同時に生成および投入され得る。処理フロー構造への各ノードに応答して、対応するデータレコードが、処理フローレコードに追加されるとともに、当該ノードのノード属性を表すデータと投入される。
図11は、処理フローレコードが処理フロー構造と同時に生成および投入される、例示的な方法の実施形態を例示する。ステップ1102において、処理フロー構造生成セッションの開始を示すユーザ入力が受信される。ステップ1104は、処理フロー構造を表す情報を記録するように構成された処理フローレコードを作成する。ステップ1106において、処理フロー構造のノードを追加または変更するように向けられたユーザ入力が受信される。
ステップ1108は、受信されたユーザ入力が、新しいノードを処理フロー構造に追加するかどうかをチェックする。受信されたユーザ入力が新しいノードを処理フロー構造に追加する場合、ステップ1110は、受信されたユーザ入力を解析するとともに、追加されるノードに対応するデータレコードを処理フローレコード内に作成する。追加されたノードのノード属性は、追加されたノードに関して作成されたデータレコードの対応するデータフィールドに適切なデータエントリを追加することによって記録される。代替として、処理フロー構造を変更するように受信されたユーザ入力が新しいレコードを追加しない場合、代わりに既存のレコードを変更することが理解されよう ― ステップ1113が受信されたユーザ入力を解析し、変更中のノードを識別し、変更中のノードに対応するデータレコード(処理フローレコード内から)を配置する(処理フローレコード内から)とともに、当該データレコードを変更してノード属性内の影響を受ける変更を反映するケース。
その後、ステップ1114は、ユーザが処理フロー構造生成セッションを送信したかどうかをチェックする。送信していない場合、本方法はステップ1106に戻り、そうでなければ、ステップ1116で終了する。
図11の方法は、処理フロー構造を表す処理フローレコードが処理フロー構造の生成と同時に生成されるシチュエーションを記載する。しかし、以前に作成された処理フロー構造を解析し、当該以前に作成された処理フロー構造の各ノードのノード属性を表す情報とともにデータレコードを投入することによって、既存の処理フロー構造を表す処理フローレコードが生成および投入され得ることが理解されよう。同様に、以前に作成された処理フロー構造に対する変更は、当該処理フローレコード内のデータフィールドを適切に変更することによって、当該処理フロー構造を表す処理フローレコード内で更新され得る。
処理フロー構造を表す処理フローレコードは、表される処理フロー構造をビジュアルディスプレイ装置上に再生成および表示するように解析され得ることも理解されよう。再生成は、処理フローレコード内の各データレコードを解析すること、ならびに解析されたデータレコード内に格納されたノード属性情報と対応するノードおよび相互接続を有する処理フロー構造を生成することを含んでもよい。
図12は、図8に表されるデータフィールドを有する投入された処理フローレコードが当該処理フローレコードを対応する処理フロー構造を再生成するために使用され得る、方法を例示する。
ステップ1202は、処理フローレコード内の第1のデータレコードを解析する。第1のデータレコードに対応するデータフィールド内のノード属性値に基づいて、ステップ1204は、ノード相互接続とともに対応するノードをディスプレイ装置上に作成する。
方法の例示的な実施形態において、処理フローレコードは、図8のデータ構造テンプレートに基づく。本実施形態において、解析されたデータレコードから取り出されかつディスプレイ装置上における対応するノードおよびノード相互接続の生成に関係するノード属性は、1つまたは複数のノードID(検討中のノードを一意的に識別するために必要な)、ノードタイプID(ノードと関連して表示されるノードシンボルを識別する)、親ID(相互接続された親ノードを識別する)、子ID(相互接続された子ノードを識別する)、内向き接続点ID(親ノードからの内向き相互接続の境界位置を識別する)、および外向き接続点ID(子ノードへの外向き相互接続の境界位置を識別する)を含み得る。
その後、ステップ1206は、まだ解析されていない処理フローレコード内の他のデータレコードをチェックする。1つまたは複数のデータレコードがまだ解析されていない場合、本方法は、ステップ1208で次のデータレコードを解析するとともにステップ1204に戻り、そうでなければステップ1210で終了する。エディタ環境内に作成された処理フロー構造に基づく処理フローレコードは、処理フローレコードのリポジトリに格納され得る。
図13は、処理フローレコードのリポジトリが、部分的に生成された処理フロー構造をユーザが完成させるために提案される構造をユーザが受けるのを可能する、本発明の実施形態を例示する。
ステップ1302は、部分的に生成された処理フロー構造を定義するユーザ入力を受信し、部分的に生成された構造は、少なくとも2つの相互接続ノードを具備し、ステップ1304において、各ノードの属性を定義するデータレコードのコレクションとして、部分的に生成された処理フロー構造を表す処理フローレコードが生成される。
その後、ステップ1306は、以前に作成された処理フロー構造を表す1つまたは複数の処理フローレコードをリポジトリから選択するおよび取り出す ― 当該選択は、選択された処理フローレコードと部分的に生成された処理フロー構造を表す処理フローレコードとの間の所定の類似度を確認することに基づく。
ステップ1308は、選択された処理フローレコードに基づいて再生成された処理フロー構造をレンダリングおよび表示する。ステップ1310において、本方法は、表示された処理フロー構造の少なくとも一部分を選択するユーザ入力を受信する。ステップ1312で、ユーザ選択に対応するノードおよび相互接続が、部分的に生成された処理フロー構造に追加される。ステップ1314は、変更された処理フロー構造を表示する。
選択された処理フロー構造内の特定のノードまたは相互接続が、部分的に生成された処理フロー構造と矛盾するまたは不適合である事象において、そのような矛盾したまたは不適合なノードまたは相互接続は、選択された処理フロー構造(またはそれらの一部)を、部分的に生成された処理フロー構造に追加する際に破棄され得る。
本発明は、部分的に生成された処理フロー構造と必要な類似度を有する構造を識別するために、リポジトリ内の以前に作成された全ての処理フロー構造を検索するように構成され得る。しかし、特定の実施形態において、本発明は、エディタ環境内で最後に生成または選択されたn個の処理フロー構造を検索する。さらなる特定の実施形態において、nは、ユーザ定義または管理者定義された変数であり得る。各ユーザは、エディタ環境内で作成されたまたはエディタ環境からアクセス可能な対応するユーザプロファイルを有し得、nの値は定義され得る。
別の実施形態において、エディタ環境は、個々のユーザによって以前に作成されたまたは選択された処理フロー構造の識別を可能にする、個々のユーザにそれぞれ対応するユーザプロファイル情報を格納し得る。本構成において、エディタ環境は、個人ログイン情報によって個々のユーザを識別し得るとともに、当該ユーザによって作成された部分的に生成された処理フロー構造と必要な類似度を有する構造を識別するために、当該個々のユーザによって以前に作成された処理フロー構造を特異的に検索し得る。
上述の通り、本発明は、ユーザの選択ために、部分的に生成された処理フロー構造との所定の類似度を示す1つまたは複数の以前に作成された処理フロー構造を提示する。
本発明の実施形態において、所定の類似度をチェックすることは、以前に作成された処理フロー構造が、部分的に生成された処理フロー構造内のノードおよび相互接続の全体のセットと同一あるノードのサブセットおよび対応する相互接続を含むかどうかをチェックすることを含み得る。別の実施形態において、所定の類似度をチェックすることは、以前に作成された処理フロー構造は、部分的に生成された処理フロー構造内の第1のノードのサブセットおよび対応する相互接続と同一である第2のノードのサブセットおよび対応する相互接続を含むかどうかをチェックすることを含み得る。
さらなる実施形態において、所定の類似度をチェックすることは、以前に作成されたフロー構造が、2つの相互接続ノードの第1のサブセットと同一でありかつ部分的に生成された処理フロー構造内の第2のノードのサブセットおよび対応する相互接続を含むかどうかをチェックすることを含む。さらなる別の実施形態において、所定の類似度をチェックすることは、以前に作成されたフロー構造は、部分的に生成された処理フロー構造内の2つの相互接続ノードの第1のサブセットと同一である第2のノードのサブセットおよび対応する相互接続を含むかどうかをチェックすることを含み、第1のノードのサブセットは、部分的に生成された処理フロー構造の開始(すなわち、開始ノード)を表すノードを含まない。
別の実施形態において、所定の類似度をチェックすることは、以前に作成されたフロー構造が、部分的に生成された処理フロー構造内の2つの相互接続ノードおよびそれらの相互接続の第1のサブセットと同一である第2のノードのサブセットおよび対応する相互接続を含むかどうかをチェックすることを含み、第1のサブセット内の2つのノードの一方は、部分的に生成された処理フロー構造内の最後に生成されたノードである。
以前に作成された処理フロー構造が、部分的に生成された処理フロー構造内の第1のノードのサブセットと同一である第2のノードのサブセットおよび対応する相互接続を含むかどうかを判定することは、2つの処理フロー構造内のノードと関連付けられた1つまたは複数のノード属性に基づく比較を含み得る。比較中のノード属性は、各ノードと関連付けられたノードシンボル、検討中のノードと関連付けられた親ノード、および検討中のノードと関連付けられた子ノードのうちの1つまたは複数を含み得る。特定の実施形態において、比較中のノード属性はさらに、ノードからの外向き接続の境界位置、およびノードへの内向き接続の境界位置の一方または両方を含み得る。
一実施形態において、第1のノードのサブセットのノード属性(部分的に生成された処理フロー構造内からの)を以前に作成された処理フロー構造内のノードのノード属性と比較することは、図13と関連してより一般的に説明される方法に基づいて遂行され得る ― すなわち、部分的に生成された処理フロー構造に対応する処理フローレコードを、リポジトリから取り出した、以前に作成済みの処理フロー構造に対応する処理フローレコードと比較することによって遂行され得る。図14は、この比較を遂行するための例示的な方法ステップを論じる。
ステップ1402において、比較の対象とされるノードのセットは、部分的に生成された処理フロー構造内で識別される。ステップ1404は、部分的に生成された処理フロー構造を表す第1の処理フローレコード内で、識別されたノードのセットを表すデータレコードのセットを識別する。
その後、ステップ1406は、当該第2の処理フローレコードが、第1の処理フローレコード内の識別されたデータレコードのセットのデータフィールド値(ノード属性を表す)と同一のデータフィールド値(ノード属性を表す)を有するデータレコードを含むかどうかを判定するために、以前に生成された処理フロー構造に対応する第2の処理フローレコードを評価する。第2の処理フローレコードが同一のノード属性を有するデータレコードを含むことがわかった場合、以前に作成された処理フロー構造は、部分的に生成された処理フロー構造と比較して所定の類似度を満たすと判定される。
上記説明した本発明の多様な実施形態は、ディスプレイ装置上における、部分的に生成された処理フロー構造への追加のための選択可能なオプションとして、提案される1つまたは複数の処理フロー構造の提示を可能にする、一実施形態において、部分的に生成された処理フロー構造内の検討中のノードを識別するユーザ入力を受信したことに応答して、本発明は、当該検討中のノードにおいて追加され得る、提案される処理フロー構造を表示する。ユーザは、提案された処理フロー構造のうち、検討中のノードにおいて追加すべき1つを選択し得る、または代替として、検討中のノードにおける追加のための個々のノードおよびコネクタのデフォルトパレットから個々の処理ノードおよび/またはコネクタを選択し得る。
図15A〜15Cは、部分的に生成された処理フロー構造への追加のために利用可能なオプションの中からユーザが選択可能にするための例示的なエディタ環境を説明する。
図15Aは、ビジュアルディスプレイ装置上でユーザに提示される例示的なエディタ環境1500を例示する。例示のエディタ環境は、開始ノード1502、処理ノード1506、および2つのノード間の有向の相互接続1504を具備する、部分的に生成された処理フロー構造を含む。ユーザがノード1506の上(またはその付近に)マウス/カーソルを乗せたことに応答して、当該ノードは、関心のあるノードまたは検討中のノードとして認識され、エディタ環境は、当該ノードの未利用の接続点のそれぞれにおいて矢印1508、1508’、および1508”を表示する。従って、ユーザが関心のある接続点を識別したこと(例えば、そのような接続点の上またはその付近にマウス/カーソルを乗せることによって)に応答して、エディタ環境は、ユーザに対して、当該検討中のノードに追加され得る提案された1つまたは複数の処理フロー構造を表示するとともに、好適な実施形態においては特に、関心のある接続点において表示する。
図15Bは、同様のエディタ環境の実施形態を例示し、ユーザが関心のある接続点1508’を識別したこと(例えば、接続点1508’の上またはその付近にマウス/カーソル1510を乗せることによって)に応答して、エディタ環境は、ユーザに対して、検討中のノードにおける追加のための可能性のあるオプションとして、個々のノードおよびコネクタを具備するデフォルトパレット1512を表示する。
図15Cに例示されるように、エディタ環境は、検討中のノードにおける追加のための選択可能な代替として、提案される1つまたは複数の処理フロー構造だけでなくデフォルトパレットとともにユーザを同時に事前設定し得る。
図15Cにおいて、関心の接続点1508’を識別する(例えば、そのような接続点1508’の上またはその付近にマウス/カーソル1510を乗せることによって)ユーザに応答して、エディタ環境はユーザに対して、(1)検討中のノードにおける追加のための選択可能なオプションとしての、個々のノードおよびコネクタを具備するデフォルトパレット1512、(2)検討中のノードにおける追加のために選択可能な(または部分的に選択可能な)オプションとしての第1の処理フロー構造400a’、および(3)検討中のノードにおける追加のために選択可能な(または部分的に選択可能な)オプションとしての第2の処理フロー構造400b’を同時に表示する。図15Cで説明される例示的な実施形態において、第1の処理フロー構造400a’および第2の処理フロー構造400b’はそれぞれ、格納されている処理フロー構造400aおよび400bのサブセットとして図4Cおよび4Dにそれぞれ例示される処理フロー構造に対応し、各々が、(1)部分的に生成された処理フロー構造内のノードの配置および相互接続と同一であるノードのサブセットおよび相互接続を有するものとして見つけられたものであり(図4A〜4Dと関連して論じた方法の実施形態において)、(2)従って、検討中のノードにおける追加のための選択可能な(または部分的に選択可能な)オプションとして、ユーザに対して表示されることに留意されたい。
図16は、グラフィカル環境コントローラ1602、構造−レコードコンバータ1604、レコード−構造コンバータ1606、比較エンジン1608、およびリポジトリ1610を具備する本発明の例示的なシステム1600を例示する。
グラフィカル環境コントローラ1602は、ビジュアルディスプレイ装置上で、入出力機能を制御すること、および処理フロー構造をレンダリングまたは表示することを含む、ビジュアルディスプレイ装置上でユーザに対して提示されるエディタ環境を制御するように構成される。比較エンジン1608は、(1)エディタ環境内に生成され部分的に生成された処理フロー構造を表す情報を受信するとともに、上記部分的に生成された処理フロー構造と所定の類似度を有する、以前に作成済みの処理フロー構造を識別するように構成される。リポジトリ1610は、以前に作成された処理フロー構造を表す情報のデータベースを具備するとともに、そのような情報を、部分的に生成された処理フロー構造との比較を可能するための比較エンジン1608に伝達するように構成される。
図16に例示される実施形態において、グラフィカル環境コントローラ1602は、ディスプレイコントローラ1612は含む。ディスプレイコントローラ1612は、そこに処理フロー構造を表示するために、ビジュアルディスプレイ装置1614を制御するように具体的に構成され得る図16の実施形態において、ビジュアルディスプレイ装置1614はシステム1600の外部にある。しかし、本発明のシステムはビジュアルディスプレイ装置を含み得ることは理解されよう。
図16の実施形態において、システム1600は構造−レコードコンバータ1604をさらに具備する。コンバータ1604は、グラフィカル環境コントローラ1602から、部分的に生成された処理フロー構造を記述する情報を含むエディタ環境内のセッションアクティビティに関する情報を受信するように構成される。コンバータ1604はさらに、部分的に生成された処理フロー構造を、当該処理フロー構造を表す処理フローレコードにコンバートするように構成される。本発明の特定の実施形態において、コンバータ1604は、データ構造テンプレート800に例示されるデータフィールドの一部または全部に基づいて、処理フローレコードを生成するように構成され得る。
部分的に生成された処理フロー構造に対応する処理フローレコードは、比較エンジン1608に伝送される。比較エンジン1608はリポジトリ1610から以前に作成された個々の処理フロー構造を表す処理フローレコードを取り出す。本発明の実施形態において、リポジトリ1610から取り出した処理フローレコードは、データ構造テンプレート800に例示されたデータフィールドの一部または全部を含む。リポジトリ1610から取り出した処理フローレコードは、部分的に生成された処理フロー構造に対応する処理フローレコードに対して比較される ― それにより、所定の類似度を有する処理フローレコードを識別する。本発明の実施形態において、比較エンジン1608は、上述の比較のための方法に基づいて処理フローレコードを比較し得る。
必要な類似度を有するものとして比較エンジン1608によって識別される処理フローレコードは、レコード−構造コンバータ1606に伝達される。コンバータ1606は、必要な類似度を有するものとして識別される処理フローレコードを受信するとともに、フローレコードを対応する処理フロー構造を表す情報にコンバートするように構成される。その後上記処理フロー構造は、部分的に生成された処理フロー構造に追加されるユーザ選択可能なオプションとして、視覚的表示装置上に上記処理フロー構造を図形的にレンダリングまたは表示するグラフィカル環境コントローラ1602と通信され得る。図16に例示される実施形態において、ディスプレイ装置1614上の処理フロー構造の表示は、グラフィカル環境コントローラ1602内に提供されるディスプレイコントローラ1612を通じて遂行され得る。
本発明の実施形態において、リポジトリ1610は、エディタ環境においてユーザによって生成された処理フロー構造を格納するように構成される。特定の実施形態において、リポジトリ1610は有限個の処理フロー構造を記憶するように構成され得る。有限個の処理フロー構造は所定の数だけ具備し得るとともに、実施形態においてユーザまたは管理者によって定義され得ることは理解されよう。一実施形態において、リポジトリ1610は、最後に作成されたn個の処理フロー構造を格納するように構成され得る。
本発明の実施形態において、エディタ環境内に作成された処理フロー構造は、当該処理フロー構造の完成により、リポジトリ1610に格納されるだけでもよい。処理フロー構造の比較は、(1)ターミネーションノード(すなわち、終了ノード)の選択を表すユーザ入力から受信する、または(2)処理フロー構造を持続性メモリに、またはリポジトリ1610に送るための命令を表すユーザ入力から受信する、または(3)ユーザセッションの終了を表すユーザ入力から受信することを含むあらゆる方法で判定され得る。
図17は、本発明の多様な実施形態が実施され得る例示的なシステムを説明する。
システム1702は、少なくとも1つのプロセッサ1704および少なくとも1つのメモリ1706を具備する。プロセッサ1704は、プログラム命令を実行するとともに、リアルプロセッサであり得る。プロセッサ1704は、仮想プロセッサでもあり得る。コンピュータシステム1702は、記載された実施形態の使用または機能性の範囲についてのいかなる限定も示唆するように意図されていない。例えば、コンピュータシステム1702は、限定はしないが、1つまたは複数の汎用コンピュータ、プログラムされたマイクロプロセッサ、マイクロコントローラ、集積回路、および本発明の方法を構成するステップを実施することができる他の装置または装置の配置を含み得る。本発明の実施形態において、メモリ1706は、本発明の多様な実施形態を実施するためのソフトウェアを格納し得る。コンピュータシステム1702は追加の構成要素を有し得る。例えば、コンピュータシステム1702は、1つまたは複数の通信チャネル1708、1つまたは複数の入力装置1710、1つまたは複数の出力装置1712、および記憶装置1714を含む。バス、コントローラ、またはネットワーク等の相互接続メカニズム(図示せず)は、コンピュータシステム1702の構成要素を相互接続する。本発明の多様な実施形態において、オペレーティングシステムソフトウェア(図示せず)は、コンピュータシステム1702において実行する多様なソフトウェアのための動作環境を提供し、コンピュータシステム1702の構成要素の様々な機能性を管理する。
通信チャネル1708は、通信媒体による他の多様なコンピューティングエンティティへの通信を可能にする。通信媒体は、プログラム命令、または通信媒体内の他のデータ等の情報を提供する。通信媒体は、限定はしないが、電気、光学、RF、赤外線、音響、マイクロ波、ブルートゥース(登録商標)、または他の送信媒体で実装される有線または無線による方法を含む。
入力装置1710は、限定はしないが、タッチスクリーン、キーボード、マウス、ペン、ジョイスティック、トラックボール、音声装置、スキャン装置、またはコンピュータシステム1702に入力を与えることができる他の何らかの装置を含み得る。本発明の実施形態において、入力装置1710は、サウンドカード、またはアナログもしくはデジタル形式でオーディオ入力を受ける同様の装置であり得る。出力装置1712は、限定はしないが、CRTまたはLCD上のユーザインターフェース、プリンタ、スピーカ、CD/DVDライタ、またはコンピュータシステム1702からの出力を提供する他の何らかの装置を含み得る。
記憶装置1714は、限定はしないが、磁気ディスク、磁気テープ、CD−ROM、CD−RW、DVD、何らかのタイプのコンピュータメモリ、磁気ストリップ、スマートカード、印刷されたバーコード、または情報を記憶するために使用することができかつコンピュータシステム1702がアクセスすることができる他の一時的もしくは持続性の何らかの媒体を含むことができる。本発明の多様な実施形態において、記憶装置1714は、記載された実施形態を実施するためのプログラム命令を含む。
本発明の実施形態において、コンピュータシステム1702は、分散ネットワークの一部分であり、本発明の多様な実施形態が、エンドツーエンドのソフトウェアアプリケーションを迅速に開発するために実施される。
図17には例示されていないが、図17のシステムは、上記図16と関連してより詳細に記述されるタイプのシステムの構成要素の一部または全部をさらに含み得る。
本発明は、システム、方法、またはコンピュータ可読記憶媒体、またはプログラミング命令は遠隔地から通信されるコンピュータネットワーク等のコンピュータプログラム製品として含む多数の方法で実装され得る。
本発明は、コンピュータシステム1702との使用のためのコンピュータプログラム製品として実装されるのに適している。ここで説明した方法は、コンピュータシステム1702または他の同様の装置によって実行されるプログラム命令のセットを具備するコンピュータプログラム製品として典型的に実装される。プログラム命令のセットは、コンピュータ可読記憶媒体(記憶装置1714)等の有形の媒体、例えば、フロッピー(登録商標)ディスク、CD−ROM、ROM、フラッシュドライブ、またはハードディスクに記憶された一連のコンピュータ可読コードであり得る、または限定はしないが、光学的またはアナログ通信チャネル1708を含むいずれかの有形の媒体により、モデムまたは他のインターフェース装置を介してコンピュータシステム1702に送信可能であり得る。コンピュータプログラム製品としての本発明の実装は、限定はしないが、マイクロ波、赤外線、ブルートゥース(登録商標)、または他の送信技術を含む無線技術を使用する無形の形式であり得る。これらの命令は、システムに事前にロードされる、またはCD−ROM等の記憶媒体上に記憶される、またはインターネットまたは携帯電話ネットワーク等のネットワークによりダウンロードするために利用可能にされることが可能である。一連のコンピュータ可読命令は、ここで上記説明した機能性の全部または一部分を具現化し得る。
ここでは本発明の例示的な実施形態を説明および例示したが、それが単に例示であることは認識されよう。形式および詳細における多様な変更が、添付の特許請求の範囲によって定義される本発明の趣旨および範囲を逸脱するまたは反することなく為され得ることは、当業者に理解されよう。
1602 グラフィカル環境コントローラ
1604 構造−レコードコンバータ
1606 レコード−構造コンバータ
1608 比較エンジン
1610 リポジトリ
1612 ディスプレイコントローラ
1614 ディスプレイ装置
1702 システム
1704 プロセッサ
1706 メモリ
1708 通信チャネル
1710 入力装置
1712 出力装置
1714 記憶装置
1604 構造−レコードコンバータ
1606 レコード−構造コンバータ
1608 比較エンジン
1610 リポジトリ
1612 ディスプレイコントローラ
1614 ディスプレイ装置
1702 システム
1704 プロセッサ
1706 メモリ
1708 通信チャネル
1710 入力装置
1712 出力装置
1714 記憶装置
Claims (32)
- 複数の相互接続ノードを具備する処理フロー構造を生成するための、および処理フロー構造記憶リポジトリと通信するように構成されたシステムであって、前記システムは、
プロセッサと、
グラフィカル環境コントローラであって、
第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するとともに、
前記第1の処理フロー構造への追加のための選択可能な処理フロー構造を、ディスプレイ装置上に表示するように構成された、グラフィカル環境コントローラと、
比較エンジンであって、
前記第1の処理フロー構造と前記リポジトリ内の以前に記憶された処理フロー構造とを比較するとともに、
前記以前に記憶された処理フロー構造の中から第2の処理フロー構造を取り出すように構成され、前記第2の処理フロー構造の取り出しは、前記第1の処理フロー構造と前記第2の処理フロー構造との間の所定の類似度を識別することに基づく、比較エンジンとを具備し、
前記グラフィカル環境コントローラによって表示された前記選択可能な処理フロー構造は、前記取り出した第2の処理フロー構造のサブセットを具備する、システム。 - 前記比較エンジンは、前記以前に記憶された処理フロー構造の中から複数の処理フロー構造を取り出すように構成され、前記リポジトリからの各処理フロー構造の取り出しは、前記第1の処理フロー構造と前記取り出した処理フロー構造との間の所定の類似度を識別することに基づくとともに、
前記グラフィカル環境コントローラは、前記第1の処理フロー構造への追加のための複数の選択可能な処理フロー構造を表示するように構成され、各選択可能な処理フロー構造は、前記取り出した複数の処理フロー構造の1つのうちのサブセットを具備する、請求項1に記載のシステム。 - 前記グラフィカル環境コントローラは、前記第1の処理フロー構造への追加のための前記表示された選択可能な処理フロー構造のサブセットを選択する第2のユーザ入力を受信するように構成される、請求項1に記載のシステム。
- 前記グラフィカル環境コントローラは、前記第2のユーザ入力によって選択された前記表示された選択可能な処理フロー構造の前記サブセットが、全体表示された選択可能な処理フロー構造を具備するように構成される、請求項3に記載のシステム。
- 前記グラフィカル環境コントローラは、統合された処理フロー構造を表示するように構成され、前記統合された処理フロー構造は、前記第1の処理フロー構造に追加された、前記表示された選択可能な処理フロー構造の前記選択されたサブセットを具備する、請求項3に記載のシステム。
- 前記グラフィカル環境コントローラは、前記表示された選択可能な処理フロー構造の前記選択されたサブセットを、前記第1のユーザ入力によって識別された前記ノードにおいて前記第1の処理フロー構造に追加するように構成される、請求項5に記載のシステム。
- 前記比較エンジンは、前記第2の処理フロー構造が、前記第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むとの判定に応答して、前記第2の処理フロー構造と前記第1の処理フロー構造との間の所定の類似度を識別するように構成される、請求項1に記載のシステム。
- 前記比較エンジンは、前記第2の処理フロー構造が、前記第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むと判定することが、前記ノードの第1のセットおよび前記ノードの第2のセット内のノードとそれぞれ関連付けられたノード属性を比較することを含むように構成される、請求項7に記載のシステム。
- 前記比較エンジンは、対応するノードとそれぞれ関連付けられた、ノードシンボル、親ノード、関連する子ノード、外向き接続、および内向き接続のうちの1つまたは複数を含むノード属性を比較するように構成される、請求項8に記載のシステム。
- 前記比較エンジンは、前記第1の処理フロー構造と以前に記憶された処理フロー構造とを比較することが、前記第1の処理フロー構造を表す情報と、それぞれ以前に記憶された処理フロー構造を表す情報とを比較することを含むように構成される、請求項1に記載のシステム。
- 前記比較エンジンは、
前記第1の処理フロー構造に対応する第1の処理フローレコードから、前記第1の処理フロー構造を表す情報と、
以前に記憶された処理フロー構造に対応する第2の処理フローレコードから、以前に記憶された処理フロー構造を表す情報とを取り出すように構成されるとともに、
前記第1の処理フローレコードおよび前記第2の処理フローレコードは、処理フロー構造を処理フローレコードにコンバートするように構成された第1のコンバータによって生成される、請求項10に記載のシステム。 - 第1のコンバータは、
関連するノード属性のコレクションとして、各データレコードが対応する処理フロー構造内のノードを表す、データレコードのセットと、
各データレコードに対応するデータフィールドのセットとを具備する処理フローレコードを生成するように構成され、データレコード内の各データフィールドは、表されたノードと関連付けられたノード属性を表す、請求項10に記載のシステム。 - 前記比較エンジンは、第1の処理フロー構造を表す情報と以前に記憶された処理フロー構造を表す情報とを比較することが、
第1の処理フローレコード内のデータレコードの第1のセットと、第2の処理フローレコード内のデータレコードの第2のセットとを比較することを含むように構成される、請求項12に記載のシステム。 - 前記比較エンジンは、前記第1の処理フローレコード内のデータレコードと前記第2の処理フローレコード内のデータレコードとを比較することが、
データレコードの前記第2のセットおよびデータレコードの前記第1のセットが同一のデータフィールド値を有するかどうかを判定することを含むように構成される、請求項13に記載のシステム。 - 前記システムは、処理フローレコードを処理フロー構造にコンバートするように構成された第2のコンバータを具備し、
データレコードの前記第2のセットおよびデータレコードの前記第1のセットが同一のデータフィールド値を有するとの判定に応答して、
前記比較エンジンは、前記第2の処理フローレコードからデータレコードの前記第2のセットに対応する情報を取り出し、
前記第2のコンバータは、前記取り出した情報を選択可能な処理フロー構造にコンバートするとともに、
前記グラフィカル環境コントローラは、前記選択可能な処理フロー構造を前記ディスプレイ装置上に図形的に表示する、請求項14に記載のシステム。 - 複数の相互接続ノードを具備する処理フロー構造を生成する方法であって、前記方法は、
第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するステップと、
以前に記憶された処理フロー構造の中から、第2の処理フロー構造を取り出すステップであって、前記第2の処理フロー構造の取り出しが、前記第1の処理フロー構造と前記第2の処理フロー構造との間の所定の類似度を識別することに基づく、ステップと、
前記第1の処理フロー構造への追加のための選択可能な処理フロー構造を表示するステップであって、前記選択可能な処理フローは、前記第2の処理フロー構造のサブセットを具備する、ステップとを含む、方法。 - 前記取り出すステップは、前記以前に記憶された処理フロー構造の中から複数の処理フロー構造を取り出すステップを含み、各処理フロー構造の取り出しは、前記第1の処理フロー構造と前記取り出した処理フロー構造との間の所定の類似度を識別することに基づき、
前記表示するステップは、前記第1の処理フロー構造への追加のための複数の選択可能な処理フロー構造を表示するステップを含み、各選択可能な処理フロー構造は、前記取り出した複数の処理フロー構造のうちの1つのサブセットを具備する、請求項16に記載の方法。 - 前記第1の処理フロー構造は、部分的に生成された処理フロー構造である、請求項16に記載の方法。
- 前記表示された選択可能な処理フロー構造のサブセットは、前記第1の処理フロー構造への追加のための第2のユーザ入力によって選択される、請求項16に記載の方法。
- 前記選択されたサブセットは、全体表示された選択可能な処理フロー構造を具備する、請求項19に記載の方法。
- 前記第1の処理フロー構造は、前記表示された選択可能な処理フロー構造の前記選択されたサブセットを追加することによって変更される、請求項19に記載の方法。
- 前記表示された選択可能な処理フロー構造の前記選択されたサブセットは、前記第1のユーザ入力によって識別された前記ノードにおいて前記第1の処理フロー構造に追加される、請求項21に記載の方法。
- 前記第2の処理フロー構造と前記第1の処理フロー構造との間の所定の類似度は、前記第2の処理フロー構造が、前記第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むとの判定に応答して識別される、請求項16に記載の方法。
- 前記第2の処理フロー構造が、前記第1の処理フロー構造内のノードの第1のセットおよび対応する相互接続と同一であるノードの第2のセットおよび対応する相互接続を含むと判定することは、前記ノードの第1のセットおよび前記ノードの第2のセット内のノードとそれぞれ関連付けられたノード属性を比較することを含む、請求項23に記載の方法。
- 前記ノード属性は、対応するノードとそれぞれ関連付けられた、ノードシンボル、親ノード、関連する子ノード、外向き接続、および内向き接続のうちの1つまたは複数を含む、請求項24に記載の方法。
- 以前に記憶された処理フロー構造の中から少なくとも第2の処理フロー構造を取り出すことは、前記第1の処理フロー構造を表す情報と、それぞれ以前に記憶された処理フロー構造を表す情報とを比較することを含む、請求項16に記載の方法。
- 前記第1の処理フロー構造を表す情報は、前記第1の処理フロー構造に対応する第1の処理フローレコードから取り出されるとともに、
以前に記憶された処理フロー構造を表す情報は、以前に記憶された処理フロー構造に対応する第2の処理フローレコードから取り出される、請求項26に記載の方法。 - 各処理フローレコードは、
関連するノード属性のコレクションとして、各データレコードが対応する処理フロー構造内のノードを表す、データレコードのセットと、
各データレコードに対応するデータフィールドのセットとを具備し、データレコード内の各データフィールドは、表されたノードと関連付けられたノード属性を表す、請求項26に記載の方法。 - 第1の処理フロー構造を表す情報と以前に記憶された処理フロー構造を表す情報とを比較するステップは、
第1の処理フローレコード内のデータレコードの第1のセットと第2の処理フローレコード内のデータレコードの第2のセットとを比較するステップを具備する、請求項28に記載の方法。 - 前記第1の処理フローレコード内のデータレコードと前記第2の処理フローレコード内のデータレコードとを比較するステップは、
データレコードの前記第2のセットおよびデータレコードの第1のセットが同一のデータフィールド値を有するかどうかを判定するステップを具備する、請求項29に記載の方法。 - 前記第2の処理フローレコードからデータレコードの前記第2のセットに対応する情報を取り出すステップ、および
前記選択可能な処理フロー構造をディスプレイ装置上に図形的にレンダリングするステップであって、前記選択可能な処理フロー構造が、データレコードの前記第2のセットに対応する取り出した情報に基づいてレンダリングされる、ステップにより、
データレコードの前記第2のセットおよび前記データレコードの第1のセットが同一のデータフィールド値を有するとの判定に応答するステップを具備する、請求項30に記載の方法。 - 複数の相互接続ノードを具備する処理フロー構造を生成するためのコンピュータプログラム製品であって、前記コンピュータプログラム製品は、そこに組み込まれるコンピュータ可読プログラムコードを有する持続性コンピュータ可読媒体を具備し、前記コンピュータ可読プログラムコードは、
第1の処理フロー構造内のノードを識別する第1のユーザ入力を受信するための命令と、
以前に記憶された処理フロー構造の中から第2の処理フロー構造を取り出すための命令であって、前記第2の処理フロー構造の取り出しは、前記第1の処理フロー構造と前記第2の処理フロー構造との間の所定の類似度を識別することに基づく、命令と、
前記第1の処理フロー構造への追加のための選択可能な処理フロー構造を表示するための命令であって、前記選択可能な処理フロー構造は前記第2の処理フロー構造のサブセットを具備する、命令とを具備する、コンピュータプログラム製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN1280/CHE/2014 | 2014-03-12 | ||
IN1280CH2014 | 2014-03-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015176603A true JP2015176603A (ja) | 2015-10-05 |
Family
ID=54255682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015028245A Pending JP2015176603A (ja) | 2014-03-12 | 2015-02-17 | 処理フロー構造を生成するためのシステムおよび方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150261400A1 (ja) |
JP (1) | JP2015176603A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019175218A (ja) * | 2018-03-29 | 2019-10-10 | 富士通株式会社 | 情報処理プログラム、情報処理方法、および情報処理装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10901701B2 (en) * | 2016-09-15 | 2021-01-26 | Oracle International Corporation | Orthogonal path renderer for natural looking sequence flows |
JP7026018B2 (ja) * | 2018-07-27 | 2022-02-25 | 株式会社日立製作所 | リスク分析支援装置、リスク分析支援方法、およびリスク分析支援プログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6179490B1 (en) * | 1993-12-23 | 2001-01-30 | Telefonaktiebolaget Lm Ericsson | Method and apparatus for creating a flowchart using a programmed computer which will automatically result in a structured program |
CN100390791C (zh) * | 2004-05-31 | 2008-05-28 | 国际商业机器公司 | 流程图的编辑、重组验证、创建和转换的方法和装置 |
US20090287528A1 (en) * | 2008-05-19 | 2009-11-19 | Robert Strickland | Dynamic selection of work flows based on environmental conditions to facilitate data entry |
EP2367083B1 (de) * | 2010-03-19 | 2016-10-05 | Sick Ag | Vorrichtung zur Erstellung eines Programms für eine speicherprogrammierbare Steuerung, Programmiereinrichtung und Verfahren zur Programmierung einer speicherprogrammierbaren Steuerung |
US9753743B2 (en) * | 2013-12-05 | 2017-09-05 | Entit Software Llc | Identifying a common action flow |
-
2014
- 2014-08-08 US US14/455,141 patent/US20150261400A1/en not_active Abandoned
-
2015
- 2015-02-17 JP JP2015028245A patent/JP2015176603A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019175218A (ja) * | 2018-03-29 | 2019-10-10 | 富士通株式会社 | 情報処理プログラム、情報処理方法、および情報処理装置 |
JP7040217B2 (ja) | 2018-03-29 | 2022-03-23 | 富士通株式会社 | 情報処理プログラム、情報処理方法、および情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20150261400A1 (en) | 2015-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108351883B (zh) | 动态上下文枢纽网格分析的显示 | |
US5752242A (en) | System and method for automated retrieval of information | |
CN102915237B (zh) | 根据用户应用程序要求改写数据质量规则的方法和系统 | |
US10621225B2 (en) | Hierarchical visual faceted search engine | |
US8037409B2 (en) | Method for learning portal content model enhancements | |
US9377936B2 (en) | Framework for automated storage processes and flexible workflow | |
US11989244B2 (en) | Shared user driven clipping of multiple web pages | |
US20170255342A1 (en) | Mobile icon-centric enterprise content management platform | |
JP2017201547A (ja) | 自動レポート生成方法 | |
US20160266738A1 (en) | System and method for manipulating and displaying data | |
US20220035847A1 (en) | Information retrieval | |
JPWO2006098031A1 (ja) | キーワード管理装置 | |
TW201202974A (en) | Search-based system management | |
US11061651B2 (en) | Systems and methods for organizing, classifying, and discovering automatically generated computer software | |
US20180322221A1 (en) | Template-based faceted search experience | |
US8145580B2 (en) | Data management apparatus and method for managing data elements using a plurality of metadata elements | |
JP2015176603A (ja) | 処理フロー構造を生成するためのシステムおよび方法 | |
US20080092033A1 (en) | Configurable column display of information at a web client | |
CN108133088B (zh) | Cad设计模型的自适应创建方法及系统 | |
JP2010237949A (ja) | データ提供装置、データ提供方法およびデータ提供プログラム | |
CN114201498A (zh) | 一种数据处理方法、装置、电子设备及可读存储介质 | |
US11461314B2 (en) | Techniques for generating a boolean switch interface for logical search queries | |
US11494354B2 (en) | Information management apparatus, information processing apparatus, and non-transitory computer readable medium | |
CN115509665A (zh) | 一种录制窗口中控件的方法、装置、介质及设备 | |
CN117348784A (zh) | 流程管理方法、装置、设备和存储介质 |