JP2010039555A - Workflow management system - Google Patents

Workflow management system Download PDF

Info

Publication number
JP2010039555A
JP2010039555A JP2008198616A JP2008198616A JP2010039555A JP 2010039555 A JP2010039555 A JP 2010039555A JP 2008198616 A JP2008198616 A JP 2008198616A JP 2008198616 A JP2008198616 A JP 2008198616A JP 2010039555 A JP2010039555 A JP 2010039555A
Authority
JP
Japan
Prior art keywords
task
entity
state quantity
workflow
evaluation formula
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008198616A
Other languages
Japanese (ja)
Inventor
Shinji Minami
伸二 南
Kazutaka Oshima
一孝 大嶋
Yuji Ozaki
友治 尾崎
Takayoshi Tanaka
孝佳 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
INCS Inc
Original Assignee
INCS Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by INCS Inc filed Critical INCS Inc
Priority to JP2008198616A priority Critical patent/JP2010039555A/en
Publication of JP2010039555A publication Critical patent/JP2010039555A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a work flow management system for achieving the sharp reduction of management man-hours or a lead time. <P>SOLUTION: A workflow management system manages the flow of an operation by using a computer. The workflow definition is provided to define the operation contents and operation procedures of a plurality of tasks, and to define an evaluation expression for evaluating the executing situations of each task. The operation content of each task is defined by using entity having variable state quantity as data necessary for executing the operation and data showing the operation result. The evaluation expression is provided to define prescribed conditions to be satisfied by the state quantity of the entity. In the case of executing the task, the evaluation value of the state quantity of the entity is calculated by using the evaluation expression, and validity/invalidity of the state quantity is decided. When the state quantity of the entity satisfies prescribed conditions, the next task is executed. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、例えば製造業などにおけるワークフローを管理するシステムに関し、特に、管理工数やリードタイムの大幅な削減を実現するワークフロー管理システムに関する。   The present invention relates to a system for managing a workflow in, for example, the manufacturing industry, and more particularly to a workflow management system that realizes a significant reduction in management man-hours and lead time.

ワークフローとは、作業の一連の流れを標準化し、記述したものである。一般に各作業には担当者が設定されており、担当者として指定された人がその作業を行う。図14に企業における物品購買のワークフローの一例を示す。ワークフロー管理システムとは、ワークフローに定義された順に作業が行えるように、定義された順に担当者に作業指示を出したり、必要な電子文書を準備して、作業が円滑に行えるようにするためのものである。特許文献1には、誰もが同じ作業方法を実行したり、準備について意識せずに作業を開始することができるようにすることを狙いとした、ワークフロー管理システムが開示されている。定義された各作業に対しては、成功と失敗が定義されており、作業終了時にどちらかの状態になる。また、図15に示すように、失敗になった場合には、例外処理または補正処理(補償処理)を実行することができる。ここで、例外処理とは失敗の時だけ行われる特別な処理を指し、補正処理とは実行してきた内容を元に戻す復元処理のことを指す。   A workflow standardizes and describes a series of work flows. In general, a person in charge is set for each work, and a person designated as the person in charge performs the work. FIG. 14 shows an example of an article purchasing workflow in a company. The workflow management system is designed to give work instructions to the person in charge in the defined order so that work can be performed in the order defined in the workflow, and to prepare necessary electronic documents so that the work can be performed smoothly. Is. Patent Document 1 discloses a workflow management system aimed at enabling anyone to execute the same work method or start work without being aware of preparation. For each defined task, success or failure is defined, and it will be in either state at the end of the task. Also, as shown in FIG. 15, when a failure occurs, exception processing or correction processing (compensation processing) can be executed. Here, exception processing refers to special processing that is performed only when a failure occurs, and correction processing refers to restoration processing that restores the contents that have been executed.

特開2008−65580号公報JP 2008-65580 A

しかしながら、製造業における不具合のように、想定どおりにならない場合の原因と復旧処理が複雑になるような場合を記述することが困難である。そのため、記述が困難な状況が多い場合、ワークフロー管理システム上では、作業を完結できないことが多くなり、その結果、ワークフロー管理システムを利用せずに独自に作業などを行ってしまう可能性がある。そのような状況になると、ワークフローを使う大きなメリットである「作業の同一化による作業効率の向上」が望めなくなる可能性が高い。また、工数の情報が部分的にしか残らなくなるため、製造原価の計算など、工数実績を利用して算出するための情報としても利用価値が大幅に低減する可能性がある。   However, it is difficult to describe the cause when the situation does not become as expected and the case where the recovery process becomes complicated, such as a defect in the manufacturing industry. For this reason, when there are many situations where it is difficult to describe, the work often cannot be completed on the workflow management system, and as a result, the work may be performed independently without using the workflow management system. In such a situation, there is a high possibility that it will not be possible to expect the “improvement of work efficiency through work identification”, which is a great merit of using workflow. In addition, since only part of the man-hour information remains, there is a possibility that the utility value may be significantly reduced as information for calculating by using the actual man-hours such as calculation of manufacturing cost.

例えば、図16に示すような金型製造におけるワークフローの例を考える。ここでは以下のような特徴のある作業工程をワークフロー化することを考える。
- 作業工程でデータだけでなく物理的物体が登場し、その種類が多岐にわたる。
- 作業のリソース(物理的物体や作業者などの人)が有限であり(かつ、無限であると見なせず)、作業間でのリソースの競合が頻繁に発生する。
- 物理的な変形や化学反応など、作業工程に現れるエンティティの変形、変化をともなう。
- 上記変化の状況によって、作業順序や作業内容を変更する必要がある。
For example, consider a workflow example in mold manufacturing as shown in FIG. Here, it is considered that a work process having the following characteristics is made into a workflow.
-Not only data but also physical objects appear in the work process, and there are various types.
-Work resources (physical objects, people such as workers) are finite (and not considered infinite), and resource contention frequently occurs between tasks.
-With deformation and change of entities that appear in the work process, such as physical deformation and chemical reaction.
-It is necessary to change the work order and work contents according to the above changes.

このような作業工程は製造業では多く存在し、以下のような特徴がある。
- 一連の作業の流れは存在するが、一つ一つの工程を手順どおりにやっても求める結果が得られないことが多い。製造業であれば、温度や湿度などの環境、材質の不均一性、機械の個体差などの条件によって、同じ手順で行ったとしても、異なる結果が得られることが一般的である。そのような状況においては、一連の手順では定義されていない作業を追加したり、フローの一部あるいは全体を違う手順に変更する、などのことを行わないと、求める結果が得られず、不具合となって表れることになる。
- 作業の順序が仮に固定で定まってもリソースの競合やリソースの状態によって、(納期を満足するために)作業開始を調整したり、作業内容を変更したりする必要がある。
Many such work processes exist in the manufacturing industry and have the following characteristics.
-Although there is a series of work flows, the desired results are often not obtained even if each process is performed according to the procedure. In the manufacturing industry, even if the same procedure is used, different results are generally obtained depending on conditions such as temperature and humidity, material non-uniformity, machine differences, and the like. In such a situation, if you do not add work that is not defined in a series of procedures or change part or all of the flow to a different procedure, you will not be able to obtain the desired results, Will appear.
-Even if the work order is fixed, it is necessary to adjust the work start or change the work contents (to satisfy the delivery date) depending on the resource contention and resource status.

例えば、上述のような金型製造における作業工程をワークフロー化する場合を考える。金型製作における加工では、種々の加工工程をどのような順序で実行すれば金型部品が作成できるかどうか、ということは部品の形状を見て決定することができる。しかしながら、実際にはその工程どおりに流せば加工が完成する、ということは多くなく、測定しながらパラメータを変更した加工データを作成して再度加工する、手加工を加えるためのまったく異なる工程をはさむ、時には削り過ぎたものを修復する工程を入れる、などそのときの材料の削られ方や、実際に加工する加工機や工具の状況に応じて、臨機応変に作業を変更する必要性が生じる。   For example, let us consider a case where the work process in the mold manufacturing as described above is made into a workflow. In processing in mold manufacturing, it can be determined by looking at the shape of a part whether or not various processing steps are executed in order to create a mold part. However, in reality, it is not often that processing will be completed if it is flown according to the process, and processing data with parameters changed while measuring is created and processed again, sandwiching a completely different process for adding manual processing. In some cases, it is necessary to change the work flexibly according to how the material is cut at that time, such as a process for repairing the excessively cut material, and the situation of the processing machine or tool to be actually processed.

このような状況が頻繁に起こり、想定どおりにならない場合の原因と復旧処理が複雑になるような場合、従来のワークフローではその全体を記述することが困難である。現実世界では、作業が正常に完了してもその結果が想定どおりに得られるとは限らず、作業の成功/失敗とその成果物が想定どおりに生成されることに因果関係が薄い。そのため、作業内容とその成功、失敗のみを判断する従来のワークフロー管理システムを実行するだけでは、「作業は正常に進んだが結果的にできたものは欲しいものではない」状況が多く発生することになり、ワークフローどおりに実行することの意味が失われてしまう。   When such a situation occurs frequently and the cause and the recovery process are not as expected, it is difficult to describe the whole in the conventional workflow. In the real world, even if the work is completed normally, the result is not always obtained as expected, and there is little causal relationship between the success / failure of the work and the result generated as expected. For this reason, simply executing a conventional workflow management system that determines only the content of work and its success and failure will result in many situations where the work has progressed normally but the result is not desired. Therefore, the meaning of executing according to the workflow is lost.

さらに他にも従来のワークフロー管理システムでは実現できない状況がある。すなわち、成果物が想定された状況と異なるとき、成果物の状態に従って対応処理を決定する必要があるが、ワークフローにはそれが記述できない。ワークフローには成果物の状態という概念が存在しないからである。また一般のワークフローでは、エラー時の処理は、例外処理、または補正処理に限られるが、例外処理では処理終了後の再開位置を自由に選ぶことはできず、補正処理ではもとに戻す処理しか選べないため、自由な手戻りを実現することはできない。成果物の状態ではなく、作業のフローとして記述する場合、すべてを(擬似的な)作業または分岐として記述し、それぞれの状況に応じて作業を再開する場所にフローをつなぐ必要があるが、それは問題が発生する作業の数:mと再開する作業の数:nに対してm×n個のフローを記述することが必要となることになり、これは作業を詳細化するにしたがって、急激に増大する。   Furthermore, there are other situations that cannot be realized with a conventional workflow management system. That is, when the deliverable is different from the assumed situation, it is necessary to determine the corresponding process according to the deliverable state, but it cannot be described in the workflow. This is because there is no concept of a product state in the workflow. In general workflow, processing at the time of error is limited to exception processing or correction processing. However, in exception processing, the restart position after the end of processing cannot be freely selected, and correction processing can only be restored. Since it is not possible to choose, free rework cannot be realized. When describing as a flow of work rather than a state of deliverables, it is necessary to describe everything as a (pseudo) work or branch and connect the flow to the place where work is resumed depending on the situation, It will be necessary to describe m × n flows for the number of tasks in which problems occur: m and the number of tasks to be resumed: n. Increase.

また、製造業における生産などの作業においては、生産用の機械、工具、ジグなど、人ではないリソースの競合が頻繁に起こるが、従来のシステムでは、それらのリソースの競合を考慮に入れることができないため、システム上は作業が可能と判断されているのに、実際には作業ができない状況が起こっていた。その結果、リソース待ちを人が判断する必要があり、生産性の向上に寄与していなかった。システムは作業が開始できない場合の理由が自動的には残らないため、製造業における生産活動において重要なリソースの最適化や生産予測を行うための十分な情報を提供できなかった。   In addition, in the manufacturing industry, competition for non-human resources such as production machines, tools, and jigs frequently occurs. However, in conventional systems, it is possible to take into account such resource competition. Because it was not possible, it was determined that work was possible on the system, but there was a situation where work was not possible. As a result, it was necessary for a person to judge waiting for a resource, which did not contribute to the improvement of productivity. The system did not automatically provide a reason for not being able to start work, and therefore could not provide enough information to optimize resources and predict production in production activities in the manufacturing industry.

また、ワークフローには作業担当者は定義されており、そこで必要なデータも定義されているが、そのデータは競合を考える必要がないと見なせるようなもの(ファイルや文書フォーマットなどのデータや、お金、印刷すればいくらでもできるような紙など)だけを扱っている。そのため、製造業などの作業工程で重要になる、有限個のものの空き状態などに応じて作業順序を入れ替えたり、作業内容を変えたりするようなことはそもそも考慮されていない。その結果、従来のワークフローを使って作業を表現すると、システムは作業が可能である、と認識していても、実際には(ものが競合しているなどで)作業ができない場合がある。このような状況では従来のワークフロー管理システムはほぼ無力であり、作業可能であるかどうかは結局人が判断する必要があり、生産性の向上にはつながっていなかった。   In addition, the worker is defined in the workflow, and the necessary data is also defined there, but the data can be regarded as not needing to consider conflicts (data such as files and document formats, money , Only paper that can be printed as much as possible). Therefore, it is not considered in the first place to change the work order or change the work contents according to the vacant state of a finite number of items, which is important in a work process such as manufacturing industry. As a result, if work is expressed using a conventional workflow, the system may not be able to actually work even if it recognizes that the work is possible (for example, things are competing). In such a situation, the conventional workflow management system is almost powerless, and it is necessary for a person to determine whether or not the work can be performed. This has not led to an improvement in productivity.

ここまで述べた上記事項に鑑み、本発明は、複雑で、定義された作業フローどおりに実行することが必ずしも正しい結果につながらず、複雑な手戻りを表現することが難しい、有限個しかないリソースを考慮していない、という問題を解決し、特に製造業において、製造工数の管理や生産予測の精度向上を実現することで、管理工数やリードタイムの大幅な削減を実現することを主たる目的とする。   In view of the above-mentioned matters described above, the present invention is a resource that has a finite number of resources that are complicated and that execution according to a defined work flow does not always lead to a correct result and it is difficult to express complicated rework. The main objective is to achieve a significant reduction in management man-hours and lead time by improving the accuracy of manufacturing man-hour management and production prediction, especially in the manufacturing industry. To do.

本発明の第一の態様は、
コンピュータを用いて作業のフローを管理するワークフロー管理システムであって、
複数のタスクの作業内容及び作業順序と、各タスクの実行の前提条件及び各タスクの実行状況を評価する評価式とを定義するワークフロー定義が、メモリ上にデータとして記憶されており、
各タスクの作業内容は、作業を実行するのに必要なデータ及び作業結果に関連するデータとして可変の状態量を有するエンティティを用いて定義されており、
前記評価式は、前記エンティティの状態量が満たすべき所定の条件を定義しており、
前記複数のタスクのいずれか1つのタスクを実行する場合に、タスクに関連するエンティティの状態量が所定の条件を満たしているかを監視するために前記メモリから前記評価式を抽出し、前記評価式を用いて前記エンティティの状態量の評価値を求めて状態量の適否を判定する評価式判定手段と、
タスクの実行又は外部からの通知により前記エンティティの状態量が変化した場合には、エンティティの状態量を変化後の状態量に更新する状態量更新手段と、
前記評価式と前記エンティティの関連付けを定義しており、前記評価式判定手段によって抽出された評価式に関連するエンティティの状態量の変化を監視し、状態量が変化したときに変化後の状態量を前記評価式判定手段に送信するエンティティセンサ手段と、
前記評価式判定手段により前記エンティティの状態量の適否を受け付け、前記エンティティの状態量が所定の条件を満たしている場合に、次のタスクの実行を開始させるフロー制御手段とを備えたワークフロー管理システムである。
The first aspect of the present invention is:
A workflow management system for managing a work flow using a computer,
Workflow definitions that define the work contents and work order of multiple tasks, the preconditions for executing each task, and the evaluation formula for evaluating the execution status of each task are stored as data in the memory.
The work content of each task is defined by using an entity having a variable amount of state as data necessary for executing the work and data related to the work result,
The evaluation formula defines a predetermined condition that the state quantity of the entity should satisfy,
When executing any one of the plurality of tasks, the evaluation formula is extracted from the memory to monitor whether the state quantity of the entity related to the task satisfies a predetermined condition, and the evaluation formula An evaluation formula determination means for determining an appropriate value of the state quantity by obtaining an evaluation value of the state quantity of the entity using
When the state quantity of the entity changes due to execution of a task or notification from the outside, state quantity update means for updating the state quantity of the entity to the changed state quantity;
The association between the evaluation formula and the entity is defined, the change of the state quantity of the entity related to the evaluation formula extracted by the evaluation formula determination unit is monitored, and the state quantity after the change when the state quantity changes Entity sensor means for transmitting to the evaluation formula determination means,
A workflow management system comprising: a flow control unit that accepts whether or not the state quantity of the entity is appropriate by the evaluation formula determination unit, and starts execution of a next task when the state quantity of the entity satisfies a predetermined condition It is.

本発明の第二の態様は、前記第一の態様に係るワークフロー管理システムにおいて、前記フロー制御手段は、エンティティの状態量が所定の条件を満たしていない旨の判定を前記評価式判定手段から受信したときに、評価の対象となったエンティティと関連付けされたタスクを再度実行させることを特徴とするワークフロー管理システムである。   According to a second aspect of the present invention, in the workflow management system according to the first aspect, the flow control unit receives a determination that the state quantity of the entity does not satisfy a predetermined condition from the evaluation expression determination unit. In this workflow management system, the task associated with the entity to be evaluated is executed again.

また、本発明の第三の態様は、前記第一の態様に係るワークフロー管理システムにおいて、前記エンティティの状態量に変化が生じた場合には、前記状態量の変化に伴う評価式の評価値の変化をタスク及び前記状態量の変化と共に評価式判定手段からデータとして受け付けてメモリに記憶する履歴管理手段をさらに備え、
前記フロー制御手段は、エンティティの状態量が所定の条件を満たしていない旨の判定を前記評価式判定手段から受信したときに、前記履歴管理手段によりタスクごとにデータとしてメモリに記憶されているエンティティの状態量の変化及び評価値の変化を参照し、再実行するタスクとして状態量及び評価値に変化が生じたタスクを指定することを特徴とするワークフロー管理システムである。
According to a third aspect of the present invention, in the workflow management system according to the first aspect, when a change occurs in the state quantity of the entity, the evaluation value of the evaluation formula associated with the change in the state quantity History management means for receiving changes from the evaluation formula determination means as data together with changes in the task and the state quantity, and storing them in a memory;
When the flow control unit receives a determination from the evaluation formula determination unit that the state quantity of the entity does not satisfy a predetermined condition, the flow management unit stores the entity as data for each task by the history management unit This is a workflow management system that refers to a change in state quantity and a change in evaluation value, and designates a task in which a change occurs in the state quantity and evaluation value as a task to be re-executed.

さらに、本発明の第四の態様は、前記第一乃至第三のいずれか一態様に係るワークフロー管理システムにおいて、前記タスクの作業順序は、並列処理される複数のタスクが存在し、タスクを実行するのに必要とされるエンティティがタスク間で競合する場合に、前記エンティティを用いるタスクを実行するための優先順位が各タスクに対して割り付けられており、
前記フロー制御手段は、前記エンティティの状態量が所定の条件を満たしていると共に、前記優先順位を参照してタスクが実行可能な状態にある場合に、タスクの実行を開始させることを特徴とするワークフロー管理システムである。
Furthermore, a fourth aspect of the present invention is the workflow management system according to any one of the first to third aspects, wherein the task work order includes a plurality of tasks to be processed in parallel, and the task is executed. If the entities required to do conflict between tasks, a priority is assigned to each task to execute the task using the entity,
The flow control means starts task execution when the state quantity of the entity satisfies a predetermined condition and the task is in an executable state with reference to the priority order. It is a workflow management system.

上記第一乃至第四の態様によれば、ワークフロー定義において、通常のワークフローで定義されるタスクの作業内容及び作業順序に加えて、タスクの作業内容を可変の状態量を有するエンティティを用いて定義し、エンティティの状態量の変化したときに、変化後のエンティティの状態量の適否を評価することにより、タスクが所望の結果を実現できているかどうかを随時判定しながら、フローを進行させることが可能となる。
また、上記第一乃至第四の態様によれば、ワークフロー定義においてエンティティとタスクを関連付けておくことにより、通常のフロー作業だけでなく、手戻りの作業箇所を特定し、手戻りをワークフローシステム上で実現することができる。
さらに、上記第一乃至第四の態様によれば、ワークフロー定義において、並列処理される複数のタスクが存在し、タスクを実行するのに必要とされるエンティティがタスク間で競合する場合に、作業順序として各タスクの優先度を定義しておくことにより、並列処理される複数のタスクの競合を回避することができる。
このように、上記第一乃至第四の態様によれば、ワークフローにおいて、例えば、定義された作業フローどおりに実行することが必ずしも正しい結果につながらない、複雑な手戻りを表現することが難しい、有限個しかないリソースを考慮していない、などといった従来の問題を解決することができる。
According to the first to fourth aspects, in the workflow definition, in addition to the work contents and work order of the tasks defined in the normal workflow, the task work contents are defined using an entity having a variable state quantity. When the state quantity of the entity changes, it is possible to advance the flow while evaluating whether the task has achieved the desired result by evaluating the suitability of the state quantity of the entity after the change. It becomes possible.
In addition, according to the first to fourth aspects, by associating an entity and a task in the workflow definition, not only the normal flow work but also the rework work location is specified, and the rework is performed on the work flow system. Can be realized.
Furthermore, according to the first to fourth aspects, in the workflow definition, when there are a plurality of tasks to be processed in parallel and the entities required to execute the tasks compete between the tasks, By defining the priority of each task as an order, it is possible to avoid contention among a plurality of tasks processed in parallel.
As described above, according to the first to fourth aspects, in a workflow, for example, it is difficult to express a complicated rework that does not necessarily lead to a correct result when executed according to a defined work flow. It is possible to solve the conventional problems such as not considering only resources.

本発明によれば、特に製造業において、管理工数やリードタイムの大幅な削減を実現することが可能となる。   According to the present invention, particularly in the manufacturing industry, it is possible to realize a significant reduction in management man-hours and lead time.

以下に図面を参照して、本発明の実施の形態について説明する。ただし、以下の説明は、あくまでも本発明の例示にすぎず、以下の記載によって発明の技術的範囲が限定されるものではない。   Embodiments of the present invention will be described below with reference to the drawings. However, the following description is merely an example of the present invention, and the technical scope of the invention is not limited by the following description.

[ワークフロー管理システムの構成]
本実施形態に係るワークフロー管理システム100は、パーソナルコンピュータやワークステーションなどの一般的なコンピュータ端末及びその周辺機器、そして、このコンピュータ上で実行されるコンピュータプログラムから構成されている。コンピュータ周辺機器は、汎用のものであるため、本システムの中心的な役割を果たすのは、ワークフロー制御に係るソフトウェアの部分である。図1に、本実施形態に係るワークフロー管理システム100の概略図を示す。
[Workflow management system configuration]
The workflow management system 100 according to the present embodiment includes a general computer terminal such as a personal computer or a workstation and its peripheral devices, and a computer program executed on the computer. Since the computer peripheral device is a general-purpose device, it is the software part related to the workflow control that plays a central role in this system. FIG. 1 shows a schematic diagram of a workflow management system 100 according to the present embodiment.

本実施形態に係るワークフロー管理システム100は、一連の作業の流れを定義したワークフロー定義をコンピュータメモリ上にデータとして記憶しておき、本実施形態に係るソフトウェアであるワークフロー制御モジュールを用いてワークフローを生成すると共に、ワークフローを構成する各タスクを制御することにより実現される。   The workflow management system 100 according to the present embodiment stores a workflow definition that defines a series of work flows as data on a computer memory, and generates a workflow using the workflow control module that is software according to the present embodiment. In addition, it is realized by controlling each task constituting the workflow.

ワークフロー定義110は、従来技術において一般に定義されているように各タスクの作業順序及び各タスクの作業内容を定義することに加えて、タスクを開始し得る条件としての評価式とタスクの状態としてタスクが期待通りに行われたかどうかを判断するための評価式とをタスク毎に定義することができる。そして、これらの評価式は、タスクの各々を定義するために必要なエンティティと関連付けられてコンピュータに記憶されるものである。ここで言うエンティティは、タスクを実行するのに必要であって実行結果に影響を与える可変の入力データ及びタスク実行後の出力データとして定義される。すなわち、評価式は、タスクが実行可能な状態にあるかどうかを評価すると共にタスクの実行結果が適切かどうかを評価するために必要なエンティティと関連付けられている。このようなエンティティを評価式と関連付けて定義しておくことにより、エンティティの状態量の変化により、タスクが実行可能な状態にあるかどうかを評価式により定量的にコンピュータが判断する仕組みを作ることができる。また、エンティティの状態量の変化に伴ってタスクの実行結果が変化する場合に、そのタスクの実行結果が期待通りのものであるかどうかを評価式により定量的にコンピュータが判断する仕組みを作ることができる。特に、いわゆる熟練者でなければ通常は判断が難しいようなタスクの実行結果の不具合状態をこのようなエンティティ及び評価式により定義しておくことにより、フローの下流工程に進む前に望ましくないタスクの実行結果を抽出することができることになる。   In addition to defining the work order of each task and the work content of each task as generally defined in the prior art, the workflow definition 110 includes an evaluation expression as a condition for starting a task and a task state as a task state. It is possible to define an evaluation formula for determining whether or not is performed as expected for each task. These evaluation formulas are stored in the computer in association with entities necessary for defining each task. The entity referred to here is defined as variable input data that is necessary to execute a task and affects the execution result, and output data after the task is executed. That is, the evaluation formula is associated with an entity necessary for evaluating whether or not the task is in an executable state and evaluating whether or not the execution result of the task is appropriate. By defining such entities in association with evaluation formulas, create a mechanism that allows a computer to quantitatively determine whether a task is in an executable state based on changes in the entity's state quantity. Can do. In addition, when a task execution result changes with a change in the entity's state quantity, create a mechanism for the computer to quantitatively determine whether the task execution result is as expected by using an evaluation formula. Can do. In particular, by defining the failure status of the task execution result that is usually difficult to judge unless it is a so-called expert by using such entities and evaluation formulas, it is possible to identify undesirable tasks before proceeding to the downstream process of the flow. The execution result can be extracted.

また、金型製造などの上流工程と下流工程のタスク間でエンティティが複雑に関連してタスクに影響を与えている場合には、共通のエンティティを各タスクにおいて評価式と共に定義しておくことにより、タスクが下流工程に進んでしまった後でも上流工程のタスクに遡って再度タスクを実行し直すことに効率良く利用することができる。   In addition, when entities affect the tasks in complex relations between tasks in upstream and downstream processes such as mold manufacturing, a common entity should be defined with an evaluation formula in each task. Even after the task has progressed to the downstream process, it can be efficiently used to re-execute the task by going back to the task in the upstream process.

評価式判定モジュール120は、ワークフロー定義において定義されている評価式を受付けて各評価式に必要なエンティティを抽出してメモリ又はデータベース等に登録する。そして、タスクを実行している間に、評価式判定モジュール120は、メモリやデータベース等に記憶されているエンティティ140の状態量が満たすべき所定の条件を定義した評価式によりその条件を満たされているかどうかを判定する。   The evaluation formula determination module 120 receives an evaluation formula defined in the workflow definition, extracts an entity necessary for each evaluation formula, and registers it in a memory or a database. While executing the task, the evaluation formula determination module 120 satisfies the condition by an evaluation formula that defines a predetermined condition that the state quantity of the entity 140 stored in the memory, the database, or the like should satisfy. Determine whether or not.

アプリケーション180は、各タスクを実行するのに必要となる一連のコマンドのセットを有したソフトウェアである。また、アプリケーション180を実行したときに、そのタスクに関連するエンティティの状態量をデータベース等に登録することも行う。このように、アプリケーション180はエンティティの状態量がタスクの実行と共に常に更新されるように構成されている。したがって、あるタスクの実行の結果として得られるエンティティが後続のタスクの実行に影響を与えるものである場合には、このエンティティの状態量を随時更新しておくことにより、その後続のタスクにおける評価式による評価を最新の情報に基づいて行うことが可能となる。   The application 180 is software having a set of commands necessary for executing each task. When the application 180 is executed, the state quantity of the entity related to the task is also registered in a database or the like. As described above, the application 180 is configured such that the state quantity of the entity is constantly updated as the task is executed. Therefore, when an entity obtained as a result of execution of a task affects the execution of the subsequent task, the state quantity of this entity is updated as needed, so that the evaluation formula for the subsequent task is updated. Can be evaluated based on the latest information.

エンティティセンサモジュール130は、アプリケーション180の実行に伴うエンティティの状態量の変化を監視し、エンティティの状態量が変化したときにその旨を評価式判定モジュール120に通知するモジュールである。   The entity sensor module 130 is a module that monitors a change in the state quantity of the entity accompanying the execution of the application 180 and notifies the evaluation expression determination module 120 of the change when the state quantity of the entity changes.

フロー制御モジュール150は、ワークフローの開始及び終了を制御すると共に、評価式によってタスクが所望の実行結果を生成していないと判断される場合に、評価式の評価に必要なエンティティと関連付けされたタスクを特定して、評価式の評価値が所定の条件を満たすまでエンティティの変化を待つようにそのタスクの実行を制御する。そのために、フロー制御モジュール150は、ワークフローが開始されると、ワークフロー定義110から各タスクを読み込み、各タスクの作業順序及び作業内容をエンティティと関連付けた上で、各タスク及びこれを実行するアプリケーションを含むデータとしてワークフロー160を生成する。そして、フロー制御モジュール150は、関連付けられたタスクとエンティティをさらに評価式と関連付けして、評価式判定モジュールから得られる評価式の評価値が所定の条件を満たしたときに、そのタスクを終了とするように制御する。   The flow control module 150 controls the start and end of the workflow, and when it is determined by the evaluation formula that the task does not generate a desired execution result, the task associated with the entity necessary for the evaluation formula evaluation And the execution of the task is controlled to wait for the change of the entity until the evaluation value of the evaluation formula satisfies a predetermined condition. For this purpose, when the workflow is started, the flow control module 150 reads each task from the workflow definition 110, associates the work order of each task and the work content with the entity, and then sets each task and an application that executes the task. A workflow 160 is generated as data to be included. Then, the flow control module 150 further associates the associated task and entity with the evaluation expression, and ends the task when the evaluation value of the evaluation expression obtained from the evaluation expression determination module satisfies a predetermined condition. Control to do.

また、ワークフロー制御モジュール150は、評価式の評価値が所定の条件を満たすまで評価式による判定を繰り返しながらエンティティの変化を待つだけでなく、評価式の評価値が所定の条件を満たしていないときには、その評価式に関連するエンティティの状態量を変化させるべく、現在のタスクより上流の問題となるエンティティの状態量の変化に関連するタスクに手戻りするようにタスクの実行を制御する構成としてもよい。この場合、エンティティの状態量を変化させることにより所定の条件を満たすように評価値を変化させるために、上述のタスクとエンティティと評価式との関連付けに基づいて、現在のタスクより上流のどのタスクを再実行すべきかを定義した手戻りのための手戻りタスクをワークフロー定義110において定義しておく。このように、ワークフロー定義110を定義しておくことにより、ワークフロー制御モジュール150は、各タスクの開始及び終了を制御するだけでなく、タスクが不都合状態にある場合に、エンティティを変化させるべくそのタスクより上流の特定のタスクを手戻り作業として再度実行し、その後、エンティティの変化により、現在のタスクにおいて評価式の評価値が所定の条件を満たすまで待つように制御することができる。   Further, the workflow control module 150 not only waits for an entity change while repeating the determination by the evaluation expression until the evaluation value of the evaluation expression satisfies a predetermined condition, but also when the evaluation value of the evaluation expression does not satisfy the predetermined condition. In order to change the state quantity of the entity related to the evaluation formula, it is also possible to control the execution of the task so as to return to the task related to the change of the state quantity of the problem entity upstream from the current task. Good. In this case, in order to change the evaluation value so as to satisfy a predetermined condition by changing the state quantity of the entity, based on the association between the task, the entity, and the evaluation formula, which task upstream of the current task In the workflow definition 110, a rework task for rework that defines whether or not should be re-executed is defined. In this way, by defining the workflow definition 110, the workflow control module 150 not only controls the start and end of each task but also the task to change the entity when the task is in an inconvenient state. It is possible to perform control so that a specific task upstream is re-executed as a return work, and then waits until the evaluation value of the evaluation formula satisfies a predetermined condition in the current task due to a change in the entity.

タスク制御モジュール170は、ワークフロー制御モジュール150から、前タスクの終了と共に次のタスクの開始を通知されると、次のタスクを実行するためのアプリケーション180を起動させる。また、タスク制御モジュール170は、あるタスクを実行中に評価式の評価値が所定の条件を満たしていないという通知をワークフロー制御モジュール170から受信されたときには、その評価式に関連するエンティティの状態量を変化させるために、そのエンティティに関連する上流のタスクを実行させるようにアプリケーション180を起動させる。また、タスク制御モジュール170は、アプリケーション180からタスク終了の通知を受けると、ワークフローモジュール150にタスク終了通知を送る。   When notified from the workflow control module 150 of the end of the previous task and the start of the next task, the task control module 170 activates the application 180 for executing the next task. When the task control module 170 receives a notification from the workflow control module 170 that the evaluation value of the evaluation formula does not satisfy a predetermined condition while executing a certain task, the state quantity of the entity related to the evaluation formula In order to change the application, the application 180 is started to execute an upstream task related to the entity. When the task control module 170 receives a task end notification from the application 180, the task control module 170 sends a task end notification to the workflow module 150.

割付モジュール190は、タスク制御モジュール170がワークフロー制御モジュール150からタスクの実行開始を通知されているときに、そのタスクが物理的に実際に実行可能であるかどうかを判別するモジュールである。割付モジュール190は、実行しようとしているタスクが実際に実行可能であるかどうかの問い合わせをタスク制御モジュール170から受信し、実行可能であるか否かの結果をタスク制御モジュール170に送信する。より具体的な例として金型加工について言えば、切削等のタスクで利用される加工機が他のタスクで同時期に並行して使われる場合には、その加工機はある特定のタスクでしか使えないことを予め決めておく必要がある。上記の加工機などのエンティティが並列処理されるタスク間で競合しないように、エンティティが競合したときにはどのタスクを優先して実行させるかを予め定義しておく。すなわち、エンティティが同時期に用いられ得るタスクの各々に対して、タスクの優先順位を割り付けておく。このように定義しておくことにより、タスク制御モジュール170は、ワークフロー制御モジュール150からタスクの実行開始を通知されている状態で、実際にそのタスクが物理的に実行可能かどうかを決定することができる。   The assignment module 190 is a module that determines whether or not a task can be physically executed when the task control module 170 is notified of the task execution start from the workflow control module 150. The allocation module 190 receives from the task control module 170 an inquiry as to whether or not the task to be executed is actually executable, and transmits a result of whether or not the task is executable to the task control module 170. As a more specific example, regarding die machining, if a machine that is used in a task such as cutting is used in parallel with another task at the same time, the machine is only used for a specific task. It is necessary to decide beforehand that it cannot be used. In order not to compete between tasks that are processed in parallel, such as the above-described processing machine, it is defined in advance which task is preferentially executed when the entities compete. That is, task priorities are assigned to each of the tasks that the entity can use at the same time. By defining in this way, the task control module 170 can determine whether or not the task can actually be physically executed in a state in which the workflow control module 150 is notified of the task execution start. it can.

[ワークフロー、タスク、エンティティ及び評価式の例]
ここで、ワークフロー定義、タスク、及びエンティティについて簡単な具体例を用いて説明する。図2は、「荷台に荷物を500kg以上1000kg以下積んで、燃料が8割以上あるなら、トラックが車庫から発車する」という作業のワークフロー定義及びタスク定義を示している。この場合のタスクは、「荷物を運ぶ」、「荷物を荷台に載せる」、及び「トラック発車」の3つのタスクとして定義される。また、トラックというエンティティは2つの状態量を有しており、1つは「荷台の積載量」、もう1つは「燃料の量」である。
[Examples of workflow, task, entity and evaluation formula]
Here, workflow definitions, tasks, and entities will be described using simple specific examples. FIG. 2 shows a workflow definition and a task definition of an operation of “loading 500 to 1000 kg of luggage on the loading platform, and if the fuel is 80% or more, the truck departs from the garage”. The tasks in this case are defined as three tasks of “carrying the load”, “loading the load on the loading platform”, and “departing the truck”. In addition, the entity of truck has two state quantities, one is “loading amount of loading platform” and the other is “amount of fuel”.

「荷物を運ぶ」というタスクの終了後の次のタスクは、「荷物を荷台に載せる」である。この「荷物を荷台に載せる」いうタスクの終了を評価するための評価式は、「トラックの荷台の積載量>500kg AND トラックの荷台の積載量<1000kg」である。上記のワークフロー制御モジュール150は、この評価式を満たしたときにだけ、タスク制御モジュール170に対して、「荷物を荷台に載せる」というタスクの終了通知をする。   The next task after the completion of the task of “carrying the load” is “loading the load on the carrier”. The evaluation formula for evaluating the end of the task of “loading the load onto the carrier” is “loading amount of the truck carrier> 500 kg AND loading amount of the truck carrier <1000 kg”. The workflow control module 150 notifies the task control module 170 of the completion of the task of “loading the load on the bed” only when the evaluation formula is satisfied.

一方、エンティティ「トラック」の状態量「燃料の量」に関する評価式がこの時点で満たされなければ、ワークフロー制御モジュール150は、次の「トラック発車」というタスクの開始を通知することができない。「トラック発車」というタスクの開始させることができるかどうかを評価するための評価式は、「トラックの燃料の量>80%」である。上記のワークフロー制御モジュール150は、エンティティ「トラック」の状態量「荷台の積載量」及び「燃料の量」に関する上記2つの評価式は満たされたときに、「トラック発車」のタスク開始をタスク制御モジュール170に通知する。   On the other hand, if the evaluation formula regarding the state quantity “amount of fuel” of the entity “truck” is not satisfied at this time, the workflow control module 150 cannot notify the start of the next “truck departure” task. An evaluation formula for evaluating whether or not the task of “truck departure” can be started is “amount of truck fuel> 80%”. The workflow control module 150 controls the task start of “truck departure” when the above two evaluation formulas relating to the state quantity “loading capacity of the loading platform” and “fuel quantity” of the entity “truck” are satisfied. Notify module 170.

[ワークフローの制御フロー]
上記のようなワークフロー定義を用いてワークフローを制御するフローについて図3を参照しながら以下に説明する。ワークフロー制御モジュールは、ワークフローを生成し、ワークフローを構成する各タスクの実行の開始及び終了を制御するものである。
[Workflow control flow]
A flow for controlling a workflow using the above workflow definition will be described below with reference to FIG. The workflow control module generates a workflow and controls the start and end of execution of each task constituting the workflow.

まず、コンピュータ上でユーザに促されて、ワークフロー制御モジュール150が起動される(ステップ300)と、ワークフロー制御モジュールがワークフロー定義110にアクセスし、エンティティ及び評価式と共に定義されているタスクを読み込み、ワークフローの全体を生成する(ステップ301)。ワークフロー定義が読み込まれると、各フローがその実行結果に影響を与えるエンティティと関連付けられる(ステップ302)。ステップ301及び302により、ワークフローについて、各タスクの作業順序及び各タスクの作業内容がデータとして定義されると共に、各タスクにおけるエンティティの状態量と評価式とが関連付けてデータとして定義されていることになる。ワークフロー制御モジュール150は、タスク制御モジュール170に開始通知を送信する(ステップ303)。   First, when the user is prompted on the computer and the workflow control module 150 is activated (step 300), the workflow control module accesses the workflow definition 110, reads the task defined together with the entity and the evaluation formula, and the workflow. Is generated (step 301). When the workflow definition is read, each flow is associated with an entity that affects the execution result (step 302). By steps 301 and 302, the work order of each task and the work content of each task are defined as data for the workflow, and the state quantity of each entity in each task and the evaluation formula are defined as data in association with each other. Become. The workflow control module 150 transmits a start notification to the task control module 170 (step 303).

一方、評価式判定モジュール120は、ワークフロー定義110にアクセスしてエンティティと共に定義されている評価式を読み込む(ステップ304)。評価式判定モジュール120は、その後、読み込んだ評価式を評価する際に必要なエンティティの状態を監視するエンティティセンサを登録する(ステップ305)。   On the other hand, the evaluation formula determination module 120 accesses the workflow definition 110 and reads the evaluation formula defined together with the entity (step 304). Thereafter, the evaluation formula determination module 120 registers an entity sensor that monitors the state of the entity necessary for evaluating the read evaluation formula (step 305).

タスク制御モジュール170は、次に実行すべきタスクの開始通知をワークフロー制御モジュール150から受信する(ステップ310)。また、後述するように、2つ目以降のタスクを実行しようとする段階では、前のタスクの終了の通知を受信すると共にそのタスクに関連する評価式が所定の条件を満たしていることの通知も受信する(ステップ310)。ステップ310で受信されるべき通知が全て受信されるまで待機し(ステップ320)、全ての通知が受信されると、割付モジュール190は、実行しようとしているタスクが実際に実行可能であるかどうかの問い合わせをタスク制御モジュール170から受信し、実行可能であるか否かの結果をタスク制御モジュール170に送信する(ステップ330)。具体的には、エンティティが並列処理されるタスク間で競合しないように、エンティティが競合したときには並列処理されるタスクのうち、どのタスクを優先して実行させるかを予め定義しておく。すなわち、そのエンティティに対する優先順位を並列処理され得る各タスクに割り付けておく。そして、割付モジュールは、その割り付けられた優先順位に基づいて、そのタスクが実行可能であるか否かの結果をタスク制御モジュールに送信する。タスク制御モジュール170は、割付モジュール190からそのタスクが実行可能であるという結果を受信すると、そのタスクに対応するアプリケーションを実行させる(ステップ340)。   The task control module 170 receives a notification of the start of the next task to be executed from the workflow control module 150 (step 310). As will be described later, at the stage where the second and subsequent tasks are to be executed, notification of the end of the previous task is received and notification that the evaluation formula related to the task satisfies a predetermined condition Is also received (step 310). Wait until all notifications to be received in step 310 have been received (step 320), and once all notifications have been received, the assignment module 190 determines whether the task being executed is actually executable. The inquiry is received from the task control module 170, and the result of whether or not it is executable is transmitted to the task control module 170 (step 330). Specifically, in order not to compete between tasks in which the entities are processed in parallel, it is defined in advance which task is preferentially executed among the tasks that are processed in parallel when the entities compete. That is, the priority for the entity is assigned to each task that can be processed in parallel. Then, the allocation module transmits a result indicating whether or not the task is executable based on the allocated priority order to the task control module. When the task control module 170 receives the result that the task is executable from the allocation module 190, the task control module 170 executes the application corresponding to the task (step 340).

次に、アプリケーション180は、タスクに対応するアプリケーションの実行によりエンティティの状態量に変化があったかどうかを監視する(ステップ350)。アプリケーションの実行によりエンティティの状態量が変化した場合には、その変化後のエンティティの状態量がデータベースに登録され、エンティティセンサモジュールがエンティティの変化を検出する(ステップ351)。なお、アプリケーションは、データベースから最新のエンティティが常にアプリケーションに入力されるように、また、アプリケーションの実行後のエンティティが変化したときにはそのエンティティがデータベースに更新データとして登録されるように作成されている。その後、評価式判定モジュール120は、変化後のエンティティの状態量を用いて評価式を評価する(ステップ352)。評価式判定モジュール120は、評価式の評価値が変化したどうかをチェックする(ステップ353)。評価値が変化しており所定の条件を満たしていると判定される場合には、ワークフロー制御モジュール150に評価値が変化した旨を通知する(ステップ354)と、ワークフロー制御モジュール150はその評価値が変化した旨をタスク制御モジュール170に通知する(ステップ355)。   Next, the application 180 monitors whether or not the state quantity of the entity has changed due to the execution of the application corresponding to the task (step 350). When the state quantity of the entity changes due to the execution of the application, the entity state quantity after the change is registered in the database, and the entity sensor module detects the change of the entity (step 351). Note that the application is created so that the latest entity is always input to the application from the database, and when the entity after execution of the application changes, the entity is registered as update data in the database. Thereafter, the evaluation formula determination module 120 evaluates the evaluation formula using the state quantity of the entity after the change (step 352). The evaluation formula determination module 120 checks whether the evaluation value of the evaluation formula has changed (step 353). When it is determined that the evaluation value has changed and the predetermined condition is satisfied, the workflow control module 150 notifies the workflow control module 150 that the evaluation value has changed (step 354). Is notified to the task control module 170 (step 355).

一方、エンティティセンサモジュール130がエンティティの状態量を監視し、アプリケーションの実行によりエンティティの状態量が変化しない場合には、フロー制御モジュール150は、その旨を評価式判定モジュール120から受け付けて、アプリケーション終了の通知をタスク制御モジュール170に通知する(ステップ360)と、タスク制御モジュール170は、タスクの終了の通知をワークフロー制御モジュール150に通知する(ステップ370)。その後、ワークフロー制御モジュール150は、次のタスクが存在するかどうかをチェックする(ステップ380)。次のタスクが存在しない場合には、全フローを終了する。一方、次のタスクが存在する場合には、ワークフロー制御モジュール150は、ワークフロー定義に従って、タスク制御モジュールにそのタスクの終了を通知する(ステップ381)。   On the other hand, when the entity sensor module 130 monitors the entity state quantity and the entity state quantity does not change as a result of execution of the application, the flow control module 150 accepts that fact from the evaluation expression determination module 120 and terminates the application. Is notified to the task control module 170 (step 360), the task control module 170 notifies the workflow control module 150 of a task end notification (step 370). Thereafter, the workflow control module 150 checks whether the next task exists (step 380). If the next task does not exist, the entire flow is terminated. On the other hand, if the next task exists, the workflow control module 150 notifies the task control module of the end of the task in accordance with the workflow definition (step 381).

このように、本実施形態では、ワークフローにおける2つ目以降のタスクについて、ステップ310では、ステップ303、ステップ355及びステップ381によって、実行の対象となる対象タスクの開始通知、その対象タスクに関連する評価式が所定の条件を満たしている旨の通知、及びその対象タスクの前のタスクの終了通知の全てがなされるのを待ってから対象タスクの実行がなされるようになっている。したがって、実行の対象となるタスクが、他の並列に実行され得るタスクとの関係で本当に実行可能であるか、また、実行の対象となるタスクが、所望のエンティティの状態量を伴って実行されたかどうかを自動的に判別することが可能となり、そのタスクを再度実行するかまたはそのタスクを終了してもよいかを自動的に判断する仕組みを実現することが可能となる。すなわち、通常、タスクの結果に問題がない場合には、そのまま、次のタスクの実行がなされる。一方、従来の方法では不具合が生じているにもかかわらず看過されて次のタスクに進行してしまうことを回避するために、本実施形態では、その不具合が生じないようにするためのチェックリストをそのタスクに紐づく評価式として定義しておくと共にその評価式を評価するのに必要なエンティティを定義しておく。そして、このようにコンピュータ上に定義されたエンティティの状態量の変化及びその変化に伴う評価式の評価値の変化を監視し続ける。この点、エンティティと評価式がどのタスクと関連し得るかを予め特定しておくことが重要である。後述する形状の制御などを伴う金型加工などでは、複数の工程(タスク)に密接に関連するエンティティが存在するため、実行しているタスクにおけるエンティティの状態量の変化は、上流タスクの実行結果が必ずしも適切ではなかったことに伴う場合がある。このような場合には、適切にタスクを手戻りさせる仕組みを用意しておかなければ所望のワークフローの結果は得られない。上流タスクのエンティティの状態量の変化が下流タスクの実行結果に影響を与えているという実情を考慮すべきであり、本実施形態は、下流タスクのエンティティが変化したときに、そのタスクの実行状況を監視して、エンティティの状態量の評価結果から関連する上流タスクに手戻りして、エンティティの状態量を変化させて再度それ以降のタスクを実行させることによりタスクの不具合を解消させることを実現可能である。   As described above, in the present embodiment, for the second and subsequent tasks in the workflow, in step 310, in step 303, step 355, and step 381, the start notification of the target task to be executed is related to the target task. The target task is executed after waiting for the notification that the evaluation formula satisfies a predetermined condition and the completion notification of the task preceding the target task. Therefore, whether the task to be executed is actually executable in relation to other tasks that can be executed in parallel, or the task to be executed is executed with the state quantity of the desired entity. It is possible to automatically determine whether or not the task has been executed, and it is possible to realize a mechanism for automatically determining whether to execute the task again or terminate the task. That is, normally, when there is no problem in the result of the task, the next task is executed as it is. On the other hand, in order to avoid the conventional method from being overlooked and proceeding to the next task even though a problem has occurred, in this embodiment, a checklist for preventing the problem from occurring. Is defined as an evaluation expression associated with the task, and entities necessary for evaluating the evaluation expression are defined. And the change of the state quantity of the entity defined on the computer in this way and the change of the evaluation value of the evaluation formula accompanying the change are continuously monitored. In this respect, it is important to specify in advance which task an entity and an evaluation expression can relate to. In die machining with shape control, which will be described later, there are entities that are closely related to multiple processes (tasks), so the change in the entity's state quantity in the task being executed is the result of the upstream task execution. May be associated with not necessarily being appropriate. In such a case, a desired workflow result cannot be obtained unless a mechanism for appropriately returning the task is prepared. The fact that the change in the state quantity of the upstream task entity has an influence on the execution result of the downstream task should be taken into consideration. In this embodiment, when the entity of the downstream task changes, the execution status of the task , And return to the related upstream task from the evaluation result of the entity state quantity, change the entity state quantity, and execute the subsequent tasks again to solve the problem of the task Is possible.

[データベースとエンティティセンサモジュール]
図4は、データベース140を用いた場合のエンティティセンサモジュール400の構成例を示したものである。データベースアクセスルーティング410は、エンティティセンサモジュール400(図1の130に対応)の一部であり、アプリケーション180からエンティティの変更された状態量を受信すると、データベースに対するアクセスルーティングをデータベースアクセスモジュール420に提供すると共にエンティティの状態量の更新をデータベースアクセスモジュール420に要求する。データベースアクセスモジュール420は、エンティティセンサモジュール400の一部としてデータベース140の挿入と削除と更新を行う。データベースアクセスモジュール420は、エンティティの挿入、削除及び更新のすべての処理を受け付ける。更新の処理を受けるたびに、データベースアクセスモジュール420は、評価式判定モジュール120に状態量の変更を通知する。挿入、削除の場合には対象となるエンティティが増減することになる。なお、データベースを利用しないことも可能であり、そのような構成も本実施形態で実現可能であることは容易に理解される。
[Database and entity sensor module]
FIG. 4 shows a configuration example of the entity sensor module 400 when the database 140 is used. The database access routing 410 is part of the entity sensor module 400 (corresponding to 130 in FIG. 1) and provides access routing to the database to the database access module 420 upon receipt of a modified state quantity of the entity from the application 180. At the same time, the database access module 420 is requested to update the entity state quantity. The database access module 420 inserts, deletes, and updates the database 140 as part of the entity sensor module 400. The database access module 420 accepts all processes of entity insertion, deletion, and update. Each time an update process is received, the database access module 420 notifies the evaluation formula determination module 120 of a change in the state quantity. In the case of insertion and deletion, the number of target entities will increase or decrease. It should be noted that it is possible not to use a database, and it is easily understood that such a configuration can be realized in the present embodiment.

[手戻り機能]
上述したように、ワークフロー制御モジュールは、評価式の評価値が所定の条件を満たしていないときには、その評価式に関連するエンティティの状態量を変化させるべく、現在のタスクより上流の問題となるエンティティの状態量の変化に関連するタスクに手戻りするようにタスクの実行を制御する構成とすることができる。
[Return function]
As described above, when the evaluation value of the evaluation expression does not satisfy the predetermined condition, the workflow control module is configured to change the state quantity of the entity related to the evaluation expression to an entity that is a problem upstream from the current task. The execution of the task can be controlled so as to return to the task related to the change in the state quantity.

図5は、手戻りタスクを実行するときのフローを示したものである。タスク制御モジュールがアプリケーションの異常終了を把握する(ステップ500)と、ワークフロー定義から、手戻り判断用のアプリケーションを実行する(ステップ510)。手戻り判断用のアプリケーションにより、システムが自動的に問題が起こっているエンティティを認識する(ステップ520)。これは、評価式判定モジュールからの問題がある場合の評価値を受け取ったフロー制御モジュールが、評価式に関連付けられているエンティティを認識することにより実現される。その後、そのエンティティがワークフロー生成時に登録されたフローを検索し、そのエンティティに関連するタスクを抽出する(ステップ530)。なお、評価式判定モジュールにおいてエンティティの状態量の評価値が変化したときに、そのエンティティの状態量の変化をタスク及びその評価式の評価値の変化と共にメモリなどの記憶手段に保存しておくことにより、手戻りすべきタスクの候補としてそのエンティティに関連するタスクを抽出することが容易になる。その後、検索により抽出されたタスクを再実行する(ステップ540)。再実行後は、問題が生じたタスクに直接戻るようなアプリケーションを用いてもよいし、再実行後のタスクの次に通常は実行されるタスクから順に再度実行するようなアプリケーションを用いてもよい。いずれにしても、フロー制御モジュール及びタスク制御モジュールを介して、このようなアプリケーションにアクセスしてこれを実行することにより手戻りタスクが実現可能となる。   FIG. 5 shows a flow when executing the return task. When the task control module grasps the abnormal termination of the application (step 500), the application for reversion determination is executed from the workflow definition (step 510). The system automatically recognizes the entity in which the problem occurs by the reversion determination application (step 520). This is realized by the flow control module receiving the evaluation value when there is a problem from the evaluation expression determination module recognizing the entity associated with the evaluation expression. Thereafter, the flow in which the entity is registered when the workflow is generated is searched, and a task related to the entity is extracted (step 530). When the evaluation value of an entity state quantity changes in the evaluation expression determination module, the change in the state quantity of the entity is stored in a storage means such as a memory together with the change of the evaluation value of the task and the evaluation expression. This makes it easy to extract a task related to the entity as a candidate for a task to be reworked. Thereafter, the task extracted by the search is re-executed (step 540). After re-execution, an application that returns directly to the task in which the problem occurred may be used, or an application that is re-executed from the task that is normally executed next to the task after the re-execution may be used. . In any case, a return task can be realized by accessing and executing such an application via the flow control module and the task control module.

[評価式の分解]
図6は、評価式判定モジュール120の構成例を示す。評価式判定モジュール120は、ワークフロー定義110から評価式の定義が入力されると、評価式の左辺及び右辺が単項になるように評価式を分解し、さらにツリー構造にする。一方、エンティティセンサモジュール130からエンティティが入力されると、エンティティの状態量を評価式の右辺に適用し、各評価式の評価をする。その後、各評価式の結果を結合し、具体的には、いずれかの評価式の評価値が所定の条件を満たしていない場合には、その旨と共に評価値がデータとしてフロー制御モジュール150に送信される。
[Evaluation expression decomposition]
FIG. 6 shows a configuration example of the evaluation formula determination module 120. When the evaluation expression definition is input from the workflow definition 110, the evaluation expression determination module 120 decomposes the evaluation expression so that the left side and the right side of the evaluation expression are unary, and further forms a tree structure. On the other hand, when an entity is input from the entity sensor module 130, the state quantity of the entity is applied to the right side of the evaluation formula, and each evaluation formula is evaluated. Thereafter, the results of the respective evaluation expressions are combined. Specifically, when the evaluation value of any evaluation expression does not satisfy a predetermined condition, the evaluation value is transmitted as data to the flow control module 150 together with that fact. Is done.

[タスクの表記例]
図7は、従来技術によるタスクの表記例(a)及び本実施形態によるタスクの表記例(b)を示したものである。たとえば、対象物の状態が2つあり、それが各タスクにおいて突発的に起こる可能性があり、それに応じてタスクAまたはBを行わなければならないような状況を考えると、従来技術では、図7(a)のように記述する必要があるが、本技術を利用した場合、図7(b)のように記述可能となり、大幅な記述の簡略化が実現できる。
[Example of task notation]
FIG. 7 shows a task notation example (a) according to the prior art and a task notation example (b) according to the present embodiment. For example, considering the situation where there are two states of an object, which may occur suddenly in each task, and task A or B must be performed accordingly, in the prior art, FIG. Although it is necessary to describe as shown in (a), when the present technology is used, it is possible to describe as shown in FIG. 7B, and the description can be greatly simplified.

ここで、本実施形態に係るワークフロー管理システム100について一実施例を示す。   Here, an example is shown about the workflow management system 100 concerning this embodiment.

たとえば金型製造における加工工程においては、以下のような状況に対応する必要がある。
- 工具折損が起きた場合には、工具を交換する。
- ワークに削り込みが起きた場合はワークを交換する。
- 削り残りがあった場合には、追加工する。
- NCに問題がある場合には、NC再作成する。
- 加工機が壊れた場合には、加工機メンテナンスをする。
- すべて加工が終わったものの、うまく型を組むことができない。
そして、これらの状況は、複数が同時に起こることもあり得る。
For example, in the manufacturing process in mold manufacture, it is necessary to cope with the following situation.
-If the tool breaks, replace the tool.
-If the workpiece is scraped, replace the workpiece.
-If there is uncut material, perform additional machining.
-If there is a problem with the NC, re-create the NC.
-If the machine breaks, perform machine maintenance.
-Although everything is finished, I can't mold well.
And these situations can happen simultaneously.

図8は、金型部品作成の全体のワークフローを概念的に示したものである。金型部品作成フローとしては、まず、金型設計800が行われ、次に、NC作成810が行われる。そして、実際に金型部品加工820が行われる。不具合が生じた場合に、例えばNCファイル830の作成に手戻りする。   FIG. 8 conceptually shows the overall workflow of mold part creation. As a mold part creation flow, first, a mold design 800 is performed, and then NC creation 810 is performed. Then, die part processing 820 is actually performed. If a problem occurs, the process returns to the creation of the NC file 830, for example.

ここでは、まず、金型部品加工タスクにおいて工具折損の不具合が生じた場合について説明する。   Here, first, a case where a tool breakage failure occurs in a mold part machining task will be described.

図9は、金型部品加工の詳細フローについて示したものである。また、図10は、ワークフロー制御モジュールとして工具折損時のモジュールの実施例1000を示したものである。また、図11は、工具折損時に工具交換タスクを実行可能にするために初期的に処理されていなければならないフローを示したものである。また、図12は、工具折損時のモジュールの処理のフローを示したものである。   FIG. 9 shows a detailed flow of die part processing. FIG. 10 shows an embodiment 1000 of a module at the time of tool breakage as a workflow control module. FIG. 11 shows a flow that must be initially processed to enable execution of a tool change task when a tool is broken. FIG. 12 shows a flow of processing of the module when the tool is broken.

図9から図12を参照しながら、工具折損が生じた場合の処理のフローについて説明する。   With reference to FIG. 9 to FIG. 12, the flow of processing when tool breakage occurs will be described.

1.まず、工具折損のフローが実行される前に、評価式抽出モジュール1010によってワークフロー定義110から評価式定義1020が抽出され(図11のステップ1100)、工具センサモジュール(エンティティセンサモジュール)1050が工具の状態量である監視すべき「折損状態」を読み取る。そして、データベース内の工具エンティティ1060の折損状態の監視を開始する(図11のステップ1110)。   1. First, before the tool breakage flow is executed, the evaluation formula extraction module 1010 extracts the evaluation formula definition 1020 from the workflow definition 110 (step 1100 in FIG. 11), and the tool sensor module (entity sensor module) 1050 The “breakage state” to be monitored, which is a state quantity, is read. Then, monitoring of the broken state of the tool entity 1060 in the database is started (step 1110 in FIG. 11).

2.また、前提として、ワークフロー定義上、工具折損により実行されるフローは、開始ノードから実行されるフローよりも優先度が高く設定しておく(図11のステップ1120)。   2. Also, as a premise, the flow executed due to tool breakage is set to have a higher priority than the flow executed from the start node in the workflow definition (step 1120 in FIG. 11).

3.荒加工910(図9参照)を実行している最中に、加工機で工具折損が起こると、加工機からの工具折損エラー情報を受信した加工機制御モジュール1100がデータベース内の工具エンティティ1060の「折損状態」を「正常」から「折損」に変更する(図12のステップ1200)。   3. When tool breakage occurs in the machine during the rough machining 910 (see FIG. 9), the machine control module 1100 that has received the tool breakage error information from the machine causes the tool entity 1060 in the database. The “breakage state” is changed from “normal” to “breakage” (step 1200 in FIG. 12).

4.荒加工910は工具が折損状態になったことにより、いったん保留(実行を中断)する。   4). The roughing 910 is temporarily suspended (execution is interrupted) when the tool is broken.

5.上記2で行われた変更を監視している工具センサモジュール1050が工具の折損状態を状態量の変更として認識すると、工具センサモジュール1050は、工具折損920(図9参照)に対応する評価式の判定を実行するために、工具の状態量として折損状態を評価式判定モジュール1030に送る(図12のステップ1210)。評価式判定モジュール1030は、評価式を判定し、評価式の評価値が変更し、工具折損の問題があることをフロー制御モジュール1070に通知する(図12のステップ1220)。フロー制御モジュール1070は、ワークフロー定義に従って、工具折損タスク920を実行すると、工具折損タスク920は「工具折損があれば真」という条件である(図12のステップ1230)ので、フロー制御モジュール1070は、フロー定義に従って、工具交換タスク930(図9参照)のタスク情報を発生させる(図12のステップ1240)。   5. When the tool sensor module 1050 monitoring the change made in 2 above recognizes the broken state of the tool as a change in the state quantity, the tool sensor module 1050 evaluates the evaluation formula corresponding to the tool break 920 (see FIG. 9). In order to execute the determination, the broken state is sent to the evaluation formula determination module 1030 as the state quantity of the tool (step 1210 in FIG. 12). The evaluation formula determination module 1030 determines the evaluation formula, changes the evaluation value of the evaluation formula, and notifies the flow control module 1070 that there is a problem of tool breakage (step 1220 in FIG. 12). When the flow control module 1070 executes the tool breakage task 920 according to the workflow definition, the tool breakage task 920 has a condition of “true if there is a tool breakage” (step 1230 in FIG. 12). Task information of the tool change task 930 (see FIG. 9) is generated according to the flow definition (step 1240 in FIG. 12).

6.工具交換タスクが荒加工タスクより優先順位が高いというタスクの優先度に基づき、フロー制御モジュール1070は、工具交換930のタスクを工具交換指示アプリケーション1090により実行する(図12のステップ1250)。すなわち、この場合、工具交換タスクが発生されると、工具交換タスクは荒加工タスクより優先順位が高いため、工具の割付は工具交換タスクに変更される。なお、これは、工具交換タスクの優先順位が荒加工タスクのそれより高いということが、予めワークフロー定義のタスクの作業順序において定義されていることにより実現することができる。この点、図10には示されていないが、図1と同様に、フロー制御モジュール1070と工具交換アプリケーション1090との間にタスク制御モジュール及び割付モジュールを配置するように構成してもよい。このように配置されたタスク制御モジュール及び割付モジュールにより、荒加工タスクの実行中には荒加工タスクに対してなされていた工具エンティティの割付を優先度の高い工具交換タスクに変更し、工具交換タスクの実行の開始を可能にする構成とすることができる。   6). Based on the priority of the task that the tool change task has a higher priority than the roughing task, the flow control module 1070 executes the tool change 930 task by the tool change instruction application 1090 (step 1250 in FIG. 12). In other words, in this case, when a tool change task is generated, the tool change task has a higher priority than the rough machining task, so the tool assignment is changed to the tool change task. This can be realized by defining in advance in the work order of the tasks in the workflow definition that the priority order of the tool change task is higher than that of the roughing task. Although not shown in FIG. 10, a task control module and an allocation module may be arranged between the flow control module 1070 and the tool change application 1090, as in FIG. With the task control module and the assignment module arranged in this way, the tool entity assignment made to the roughing task during the roughing task execution is changed to a tool replacement task with a higher priority, and the tool change task It is possible to make it possible to start the execution of.

7.工具交換930が終了すると、タスク制御モジュール及び割付モジュールにより、工具交換タスクに割り付けられていた工具エンティティを荒加工タスクに割り付けるように変更され(図12のステップ1260)、荒加工タスク910より優先度が高いタスクがなくなり、割付対象が復活するため、中断されていた荒加工タスク910の再開が可能となる(図12のステップ1270)。   7). When the tool change 930 is finished, the task control module and the assignment module are changed so that the tool entity assigned to the tool change task is assigned to the roughing task (step 1260 in FIG. 12). Since there is no task with a high value and the allocation target is restored, the interrupted roughing task 910 can be resumed (step 1270 in FIG. 12).

次に、別の実施例として、金型部品加工タスクにおいてNCに不具合が生じた場合の本システムの構成について説明する。図13は、NC不具合が生じた場合のシステムの構成例を示している。図13を参照しながら、NC不具合が生じた場合の処理のフローについて説明する。   Next, as another embodiment, a description will be given of the configuration of the present system when a failure occurs in the NC in a mold part machining task. FIG. 13 shows an example of the system configuration when an NC failure occurs. With reference to FIG. 13, the flow of processing when an NC failure occurs will be described.

1. まず、このフローが実行される前に、評価式抽出モジュール1010によってワークフロー定義110から評価式定義1020が抽出される。そして、NCファイルセンサモジュール1310が、評価式定義1020からNCファイル1330の状態量である「不具合状態」を監視することを読み取る。NCファイルセンサモジュール1310は、データベース内のNCファイル1330の不具合状態を監視開始する。なお、ここでは、取り得る不具合状態は、「不具合がある」、「不具合がある可能性がある」及び「不具合がない」であるとする。   1. First, before this flow is executed, the evaluation expression extraction module 1010 extracts the evaluation expression definition 1020 from the workflow definition 110. Then, the NC file sensor module 1310 reads from the evaluation formula definition 1020 that the “failure state” that is the state quantity of the NC file 1330 is monitored. The NC file sensor module 1310 starts monitoring the failure state of the NC file 1330 in the database. Here, it is assumed that the possible defect states are “has a defect”, “may have a defect”, and “no defect”.

2.次に、データベース内のNCファイル1330の不具合状態が「不具合がある可能性がある」に変更される。これは、例えば、荒加工タスク中に加工機制御モジュール1100で何か異常を認識されたときに、その加工で利用していたNCファイル1330の状態を「不具合がある可能性がある」に変更することで行われる。   2. Next, the failure state of the NC file 1330 in the database is changed to “May have a failure”. For example, when an abnormality is recognized by the processing machine control module 1100 during the roughing task, the state of the NC file 1330 used for the processing is changed to “May have a defect”. It is done by doing.

3.NCファイルセンサモジュール1310は、エンティティであるNCファイル1330の状態の変更を認識すると、評価式判定モジュール1030にNCファイル1330の変更後の状態量を送る。評価式判定モジュール1030は、NC不具合可能性940(図9参照)に対応する評価式を評価式定義1020から受け付けて、NCファイル1330の変更後の状態量に関する評価式を判定し、NC不具合可能性940が真であることをフロー制御モジュール1070に通知する。フロー制御モジュール1070はワークフロー定義110に従って、NCファイル確認タスクを発生させる。   3. When the NC file sensor module 1310 recognizes a change in the state of the NC file 1330 that is an entity, the NC file sensor module 1310 sends the changed state quantity of the NC file 1330 to the evaluation formula determination module 1030. The evaluation formula determination module 1030 receives an evaluation formula corresponding to the NC failure possibility 940 (see FIG. 9) from the evaluation formula definition 1020, determines an evaluation formula related to the state quantity after the change of the NC file 1330, and NC failure is possible. The flow control module 1070 is notified that the property 940 is true. The flow control module 1070 generates an NC file confirmation task according to the workflow definition 110.

4. 優先度に基づいて、NCファイル確認タスクが実行される。なお、これは、NCファイル確認タスクは荒加工タスクより優先順位が高いということが、予めワークフロー定義のタスクの作業順序において定義されていることにより実現することができる。   4. Based on the priority, the NC file confirmation task is executed. Note that this can be realized by predefining that the NC file confirmation task has a higher priority than the roughing task in the work order of the tasks in the workflow definition.

5.NCファイル確認タスクでは、NCファイル確認アプリケーション1320が実行される。   5. In the NC file confirmation task, the NC file confirmation application 1320 is executed.

6.NCファイル確認アプリケーション1320で、NCファイルに不具合があることが確定すると、データベース内のNCファイル1330の不具合状態が「不具合がある」に変更される。   6). When the NC file confirmation application 1320 determines that there is a defect in the NC file, the defect state of the NC file 1330 in the database is changed to “defective”.

7.ここで、もとの荒加工を再開しようとするが、NCファイルに不具合がある状態になっているので、割付の設定により再開できずキャンセルされる。   7). Here, the original roughing is to be resumed, but since the NC file is in a state of failure, it cannot be resumed due to the assignment setting and is canceled.

8.履歴管理モジュール1080は、エンティティの状態量に変更があった場合には、評価式判定モジュール1030から、随時、状態量の変更をタスク及びその評価式の評価値の変化と共に受信してメモリなどの記憶手段に保存することを管理している。フロー制御モジュール1070は、NCファイルに不具合が生じたタスクを特定するために、履歴管理モジュール1080に問い合わせる。そして、フロー制御モジュール1070は、不具合が見つかったタスクから順次タスクを遡り、タスクと共に保存された評価式の評価値の変化を参照して、NCファイルが正常な状態になった(この場合不具合がない状態になった)タスクを確認する。   8). When there is a change in the state quantity of the entity, the history management module 1080 receives the change of the state quantity from the evaluation formula determination module 1030 as needed along with the change of the evaluation value of the task and the evaluation formula, and the like. Management of storage in storage means. The flow control module 1070 makes an inquiry to the history management module 1080 in order to identify a task in which a defect has occurred in the NC file. Then, the flow control module 1070 goes back sequentially from the task in which the defect is found, refers to the change in the evaluation value of the evaluation formula stored with the task, and the NC file becomes normal (in this case, the defect is Check for tasks that have gone out of service.

9.履歴によりNCファイルが正常な状態になった工程はNC作成タスクであることがわかるため、手戻り先としてNC作成タスクが示唆される。   9. Since it is understood that the process in which the NC file is in a normal state from the history is an NC creation task, the NC creation task is suggested as a return destination.

このように、履歴管理モジュールにより、エンティティの状態量の変更をタスク及びその評価式の評価値と共に管理しておくことにより、手戻り先を容易に特定することが可能になる。なお、この点、タスクとエンティティと評価式との関連付けに基づいて、現在のタスクより上流のどのタスクを再実行すべきかを定義した手戻りのための手戻りタスクをワークフロー定義において予め定義しておいてもよいことは上述した通りである。   As described above, by managing the change of the state quantity of the entity together with the task and the evaluation value of the evaluation formula by the history management module, it is possible to easily specify the rework destination. In this regard, based on the association between the task, the entity, and the evaluation formula, a rework task for rework that defines which task upstream from the current task should be re-executed is defined in advance in the workflow definition. As described above, it may be set.

以上、本発明の一実施形態及びその実施例を2例、説明してきたが、本発明は、上記の実施形態・実施例に限定されるものではなく、これに種々の変更を加え得るものであることは容易に理解される。そして、それらが特許請求の範囲の各請求項に記載した事項、及びそれと均等な事項の範囲内にある限り、当然に本発明の技術的範囲に含まれる。上記の実施形態・実施例は特定のワークフローにおける不具合等に対してのものであったが、これはあくまでも一例であり、本発明がこの特定の具体例に限定されるものではない。   Although one embodiment of the present invention and two examples thereof have been described above, the present invention is not limited to the above-described embodiment and examples, and various modifications can be made thereto. It is easy to understand. In addition, as long as they are within the scope of matters described in the respective claims and equivalent matters, they are naturally included in the technical scope of the present invention. The above-described embodiments and examples are for defects in a specific workflow, but this is merely an example, and the present invention is not limited to this specific example.

本発明の一実施形態に係るワークフロー管理システムを示している。1 shows a workflow management system according to an embodiment of the present invention. 作業のワークフロー定義及びタスク定義を示している。The work workflow definition and task definition are shown. 本発明の一実施形態に係るワークフローを管理するフローを示している。6 shows a flow for managing a workflow according to an embodiment of the present invention. データベースを用いた場合のエンティティセンサモジュールの構成例を示している。The example of a structure of the entity sensor module at the time of using a database is shown. 手戻りタスクを実行するときのフローを示している。The flow when executing a return task is shown. 評価式判定モジュールの構成例を示している。The structural example of the evaluation type | formula determination module is shown. 従来技術によるタスクの表記例(a)及び本実施形態によるタスクの表記例(b)を示したものである。A task notation example (a) according to the prior art and a task notation example (b) according to the present embodiment are shown. 金型部品作成の全体のワークフローを概念的に示している。The entire workflow of mold part creation is shown conceptually. 金型部品加工の詳細フローについて示している。It shows a detailed flow of mold part processing. ワークフロー制御モジュールの実施例として工具折損時のモジュールを示している。As an embodiment of the workflow control module, a tool breakage module is shown. 工具折損時に工具交換タスクを実行可能にするために初期的に処理されていなければならないフローを示している。Fig. 4 shows a flow that must be initially processed in order to be able to perform a tool change task when a tool breaks. 工具折損時のモジュールの処理のフローを示している。The flow of processing of a module at the time of tool breakage is shown. NC不具合が生じた場合のシステムの構成例を示している。An example of a system configuration when an NC failure occurs is shown. 企業における物品購買のワークフローの従来例を示している。The conventional example of the workflow of goods purchase in a company is shown. 例外処理及び補正処理を用いたワークフローの従来例を示している。A conventional example of a workflow using exception processing and correction processing is shown. 金型製造におけるワークフローの従来例を示している。The conventional example of the workflow in metal mold | die manufacture is shown.

符号の説明Explanation of symbols

100 ワークフロー管理システム
110 ワークフロー定義
120 評価式判定モジュール
130 エンティティセンサモジュール
140 エンティティ
150 フロー制御モジュール
160 ワークフロー
170 タスク制御モジュール
180 アプリケーション
190 割付モジュール
100 Workflow Management System 110 Workflow Definition 120 Evaluation Formula Determination Module 130 Entity Sensor Module 140 Entity 150 Flow Control Module 160 Workflow 170 Task Control Module 180 Application 190 Allocation Module

Claims (4)

コンピュータを用いて作業のフローを管理するワークフロー管理システムであって、
複数のタスクの作業内容及び作業順序と、各タスクの実行の前提条件及び各タスクの実行状況を評価する評価式とを定義するワークフロー定義が、メモリ上にデータとして記憶されており、
各タスクの作業内容は、作業を実行するのに必要なエンティティ及び作業結果に関するエンティティであって可変の状態量を有するエンティティを用いて定義されており、
前記評価式は、前記エンティティの状態量が満たすべき所定の条件を定義しており、
前記複数のタスクのいずれか1つのタスクを実行する場合に、タスクに関連するエンティティの状態量が所定の条件を満たしているかを監視するために前記メモリから前記評価式を抽出し、前記評価式を用いて前記エンティティの状態量の評価値を求めて状態量の適否を判定する評価式判定手段と、
タスクの実行又は外部からの通知により前記エンティティの状態量が変化した場合には、エンティティの状態量を変化後の状態量に更新する状態量更新手段と、
前記評価式と前記エンティティの関連付けを定義しており、前記評価式判定手段によって抽出された評価式に関連するエンティティの状態量の変化を監視し、状態量が変化したときに変化後の状態量を前記評価式判定手段に送信するエンティティセンサ手段と、
前記評価式判定手段により前記エンティティの状態量の適否を受け付け、前記エンティティの状態量が所定の条件を満たしている場合に、次のタスクの実行を開始させるフロー制御手段とを備えたワークフロー管理システム。
A workflow management system for managing a work flow using a computer,
Workflow definitions that define the work contents and work order of multiple tasks, the preconditions for executing each task, and the evaluation formula for evaluating the execution status of each task are stored as data in the memory.
The work content of each task is defined by using an entity necessary for executing the work and an entity related to the work result and having a variable state quantity.
The evaluation formula defines a predetermined condition that the state quantity of the entity should satisfy,
When executing any one of the plurality of tasks, the evaluation formula is extracted from the memory to monitor whether the state quantity of the entity related to the task satisfies a predetermined condition, and the evaluation formula An evaluation formula determination means for determining an appropriate value of the state quantity by obtaining an evaluation value of the state quantity of the entity using
When the state quantity of the entity changes due to execution of a task or notification from the outside, state quantity update means for updating the state quantity of the entity to the changed state quantity;
The association between the evaluation formula and the entity is defined, the change of the state quantity of the entity related to the evaluation formula extracted by the evaluation formula determination unit is monitored, and the state quantity after the change when the state quantity changes Entity sensor means for transmitting to the evaluation formula determination means,
A workflow management system comprising: a flow control unit that accepts whether or not the state quantity of the entity is appropriate by the evaluation formula determination unit, and starts execution of a next task when the state quantity of the entity satisfies a predetermined condition .
前記フロー制御手段は、エンティティの状態量が所定の条件を満たしていない旨の判定を前記評価式判定手段から受信したときに、評価の対象となったエンティティと関連付けされたタスクを再度実行させることをさらに備えた請求項1に記載のワークフロー管理システム。   The flow control unit causes the task associated with the entity to be evaluated to be executed again when the determination that the state quantity of the entity does not satisfy a predetermined condition is received from the evaluation formula determination unit. The workflow management system according to claim 1, further comprising: 前記エンティティの状態量に変化が生じた場合には、前記状態量の変化に伴う評価式の評価値の変化をタスク及び前記状態量の変化と共に評価式判定手段からデータとして受け付けてメモリに記憶する履歴管理手段をさらに備え、
前記フロー制御手段は、エンティティの状態量が所定の条件を満たしていない旨の判定を前記評価式判定手段から受信したときに、前記履歴管理手段によりタスクごとにデータとしてメモリに記憶されているエンティティの状態量の変化及び評価値の変化を参照し、再実行するタスクとして状態量及び評価値に変化が生じたタスクを指定する請求項1に記載のワークフロー管理システム。
When a change occurs in the state quantity of the entity, a change in the evaluation value of the evaluation formula that accompanies the change in the state quantity is received as data from the evaluation formula determination unit together with a change in the task and the state quantity, and is stored in the memory. A history management means,
When the flow control unit receives a determination from the evaluation formula determination unit that the state quantity of the entity does not satisfy a predetermined condition, the flow management unit stores the entity as data for each task by the history management unit The workflow management system according to claim 1, wherein a change in the state quantity and the evaluation value is designated as a task to be re-executed with reference to the change in the state quantity and the change in the evaluation value.
前記タスクの作業順序は、並列処理される複数のタスクが存在し、タスクを実行するのに必要とされるエンティティがタスク間で競合する場合に、前記エンティティを用いるタスクを実行するための優先順位が各タスクに対して割り付けられており、
前記フロー制御手段は、前記エンティティの状態量が所定の条件を満たしていると共に、前記優先順位を参照してタスクが実行可能な状態にある場合に、タスクの実行を開始させる請求項1から3のいずれか1つに記載のワークフロー管理システム。
The work order of the tasks is a priority order for executing the tasks using the entities when there are a plurality of tasks to be processed in parallel and the entities required to execute the tasks compete between the tasks. Is assigned to each task,
The flow control means starts task execution when the state quantity of the entity satisfies a predetermined condition and the task is in an executable state with reference to the priority order. The workflow management system according to any one of the above.
JP2008198616A 2008-07-31 2008-07-31 Workflow management system Pending JP2010039555A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008198616A JP2010039555A (en) 2008-07-31 2008-07-31 Workflow management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008198616A JP2010039555A (en) 2008-07-31 2008-07-31 Workflow management system

Publications (1)

Publication Number Publication Date
JP2010039555A true JP2010039555A (en) 2010-02-18

Family

ID=42012077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008198616A Pending JP2010039555A (en) 2008-07-31 2008-07-31 Workflow management system

Country Status (1)

Country Link
JP (1) JP2010039555A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102064A (en) * 2018-12-25 2020-07-02 株式会社日立システムズ Automatic instruction system, method and program
CN111680918A (en) * 2020-06-09 2020-09-18 浙江师范大学 Intelligent manufacturing service flow determining method and system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020102064A (en) * 2018-12-25 2020-07-02 株式会社日立システムズ Automatic instruction system, method and program
JP7359544B2 (en) 2018-12-25 2023-10-11 株式会社日立システムズ Automatic work instruction system, method and program
CN111680918A (en) * 2020-06-09 2020-09-18 浙江师范大学 Intelligent manufacturing service flow determining method and system
CN111680918B (en) * 2020-06-09 2024-03-19 浙江师范大学 Intelligent manufacturing service flow determining method and system

Similar Documents

Publication Publication Date Title
US7092775B2 (en) Production planning apparatus and production planning method
US6984198B2 (en) Experiment management system, method and medium
US8880591B2 (en) Workflow management in distributed systems
US7477958B2 (en) Method of release and product flow management for a manufacturing facility
Yang et al. Simulation-based dynamic shop floor scheduling for a flexible manufacturing system in the industry 4.0 environment
CN109360064B (en) Furniture customized order process refinishing method, electronic equipment and storage medium
CN102467699B (en) To defect management modeling and method based on defect management process defect
CN111461590A (en) Method for calculating complete set of materials according to sales, inventory and purchase information
JP5309882B2 (en) Schedule creation system, schedule creation method, and schedule creation program
JP2010039555A (en) Workflow management system
Ingemansson et al. Reducing bottle‐necks in a manufacturing system with automatic data collection and discrete‐event simulation
US20100114353A1 (en) Method for controlling a plurality of production processes
JP2009157690A (en) Manufacturing process management apparatus, manufacturing process management method, program and recording medium for the same
CN115700669B (en) Material difference list generation method, electronic equipment and computer storage medium
JP2006285364A (en) Processing management system, and computer-readable recording medium
US8812336B2 (en) Providing real-time test ahead work direction for manufacturing optimization
Algabroun et al. A framework for the integration of digitalised maintenance systems with relevant working areas: A case study
WO2024042907A1 (en) Nesting device, machining schedule information creation method, and machining schedule information creation program
US7065421B2 (en) Manufacturing management system and method
JP2006215713A (en) Preceding work instruction and its cancellation method in workflow system
JP5227920B2 (en) Parts storage management system and parts storage management method
KR20140058716A (en) Steel bias cutter allocating plan system and method in cutting process
JP7387070B1 (en) Scheduling device, scheduling system, scheduling method, and scheduling program
WO2022075089A1 (en) Information processing system and processing management method
JP2005084801A (en) Setting processing system of repair component