JP5211546B2 - Number assigning program, number assigning apparatus and number assigning method - Google Patents
Number assigning program, number assigning apparatus and number assigning method Download PDFInfo
- Publication number
- JP5211546B2 JP5211546B2 JP2007127327A JP2007127327A JP5211546B2 JP 5211546 B2 JP5211546 B2 JP 5211546B2 JP 2007127327 A JP2007127327 A JP 2007127327A JP 2007127327 A JP2007127327 A JP 2007127327A JP 5211546 B2 JP5211546 B2 JP 5211546B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- flowchart
- nodes
- information
- search
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
この発明は、フローチャート中の各ノードに番号を付与する番号付与プログラム、番号付与装置および番号付与方法に関し、特に、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与する番号付与プログラム、番号付与装置および番号付与方法に関する。 The present invention relates to a number assigning program, a number assigning device, and a number assigning method for assigning a number to each node in the flowchart, and in particular, assigning a number to each node in the flowchart so that the user can easily understand the flowchart flow. The present invention relates to a number assignment program, a number assignment device, and a number assignment method.
従来より、プログラムの処理手順や、業務の流れを可視化するためにフローチャートが作成されている。フローチャートの内容を第三者に説明する場合には、現在説明している対象がフローチャート中のどのノードであるかを明確にするため、フローチャートに含まれる各ノードが予めナンバリングされていることが好ましい。 Conventionally, flowcharts have been created to visualize program processing procedures and business flows. When explaining the contents of the flowchart to a third party, it is preferable that each node included in the flowchart is numbered in advance in order to clarify which node in the flowchart is the object currently being described. .
ところが、フローチャートのナンバリングは、単にノードに番号が付与されていればよいというものではなく、フローチャートの流れの理解の手助けと成るように、処理順序に沿って番号が付与されていなければならない。そのため、フローチャートが大規模な場合、そこに含まれる全ノードに人手でナンバリングを行うことは大きな労力を要していた。このような労力を省くため、特許文献1において開示されているテスト項目自動生成装置は、自動生成したフローチャートの全パスをサーチして、ノードに自動的にナンバリングするように構成されている。
However, the numbering of the flowchart is not just a number assigned to the node, but the number must be assigned in accordance with the processing order so as to assist in understanding the flow of the flowchart. Therefore, when the flowchart is large, it has been a great effort to manually number all nodes included in the flowchart. In order to save such labor, the automatic test item generation device disclosed in
しかしながら、特許文献1には、ナンバリングを実現するための具体的な技術が開示されていない。ナンバリングを実現するための最も簡単な方法は、既知の探索手法である深さ優先探索や幅優先探索を用いてフローチャート中のノードを探索しながらノードに番号を付与していく方法であるが、この方法では、全てのノードに漏れなく番号を付与することは可能であるものの、処理順序に沿ったナンバリングは行われない。例えば、分岐と合流が存在するフローチャートでは、合流部分で待ち合わせを行い、分岐したフローに属する全てのノードに番号が付与された後に合流箇所に番号を付与することが好ましいが、上記の方法では、このようなナンバリングを行うことはできない。
However,
この発明は、上述した従来技術による問題点を解消するためになされたものであり、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与する番号付与プログラム、番号付与装置および番号付与方法を提供することを目的とする。 The present invention has been made to solve the above-described problems caused by the prior art, and a numbering program for assigning numbers to each node in the flowchart so that the user can easily understand the flow of the flowchart. An object is to provide an assigning apparatus and a number assigning method.
上述した課題を解決し、目的を達成するため、本発明の一つの態様では、フローチャートに含まれるノードと遷移の各種属性情報を保持する構成要素情報と、ノードと遷移を図示するための位置と形状に関する情報を保持する図形情報とによって表現されるフローチャート中の各ノードに番号を付与する番号付与装置であって、前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索手段と、前記フローチャート探索手段によって訪問された順にノードに番号を付与する番号設定手段とを備え、前記フローチャート探索手段は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、それらの経路における直近のノードの表示位置を前記図形情報から取得し、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を決定し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする。 In order to solve the above-described problems and achieve the object, according to one aspect of the present invention, component information that holds various attribute information of nodes and transitions included in the flowchart, positions for illustrating the nodes and transitions, and A numbering device that assigns a number to each node in a flowchart expressed by graphic information that holds information related to a shape, and refers to the component element information and follows a transition from the start node of the flowchart. A flowchart search means for visiting the nodes in the flowchart, and a number setting means for assigning numbers to the nodes in the order visited by the flowchart search means. If there are multiple routes to the node, the table of the nearest nodes in those routes When the position is acquired from the graphic information, the order of searching those routes based on the size of the coordinates of the display position is determined, and when there are a plurality of routes that reach the visited node from other nodes, Until the search of all the routes is completed, the search for the node ahead of the visited node is not performed.
この発明の態様によれば、分岐部分では分岐先のノードの表示位置に基づいてどの経路を先に探索するかを決定し、合流部分では、その合流部分へ到達する全ての経路が探索されるまで待ち合わせを行うこととしたので、処理の順序と番号の大小関係が一致することとなり、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することができる。 According to the aspect of the present invention, the branch portion determines which route to search first based on the display position of the branch destination node, and the merging portion searches all the routes that reach the merging portion. Therefore, the order of processing and the magnitude relationship of the numbers coincide with each other, and a number can be assigned to each node in the flowchart so that the user can easily understand the flow of the flowchart.
また、本発明の他の態様では、上記の発明の態様において、フローチャートの向きを判定する方向判定手段をさらに備え、前記フローチャート探索手段は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、前記方向判定手段の判定結果によって、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を変更することを特徴とする。 According to another aspect of the present invention, in the above aspect of the invention, the flow chart search means further includes a direction determination unit that determines the direction of the flowchart, and the flowchart search unit includes a plurality of routes from the visiting node to another node. In the case where it exists, the order of searching for the route is changed based on the size of the coordinates of the display position according to the determination result of the direction determination means.
この発明の態様によれば、フローチャートの向きを判定し、その判定結果によって分岐箇所での経路の探索順序を変更することとしたので、フローチャートの向きに関わらず、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することができる。 According to this aspect of the present invention, the direction of the flowchart is determined, and the route search order at the branch point is changed according to the determination result. Therefore, the user understands the flow of the flowchart regardless of the direction of the flowchart. A number can be assigned to each node in the flowchart so as to facilitate the processing.
また、本発明の他の態様では、上記の発明の態様において、前記番号設定手段は、フローチャートに含まれるノードの属性情報が出力される文書の書式情報を参照して、各ノードが該文書のどのページに出力されるかを算出し、前記フローチャート探索手段によって訪問された順にノードに番号を付与する場合に、該ノードが該文書に出力されるページのページ番号をさらにノードに付与することを特徴とする。 In another aspect of the present invention, in the aspect of the invention described above, the number setting unit refers to the format information of the document in which the attribute information of the node included in the flowchart is output, and each node When calculating the page to be output and assigning a number to the node in the order visited by the flowchart search means, the node further assigns the page number of the page to be output to the document to the node. Features.
この発明の態様によれば、関連する文書においてノードに関する情報が出力される位置を示す情報を番号とともにノードに付与することとしたので、フローチャートに番号とともにその情報を表示することにより、利用者がフローチャートと対応する文書の対応づけを容易に行うことができる。 According to the aspect of the present invention, since the information indicating the position where the information about the node is output in the related document is given to the node together with the number, the user can display the information together with the number in the flowchart so that the user can It is possible to easily associate the flowchart and the corresponding document.
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。 In addition, what applied the component, expression, or arbitrary combination of the component of this invention to a method, an apparatus, a system, a computer program, a recording medium, a data structure, etc. is also effective as an aspect of this invention.
本発明の一つの態様によれば、分岐部分では分岐先のノードの表示位置に基づいてどの経路を先に探索するかを決定し、合流部分では、その合流部分へ到達する全ての経路が探索されるまで待ち合わせを行うこととしたので、処理の順序と番号の大小関係が一致することとなり、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することができるという効果を奏する。 According to one aspect of the present invention, the branch portion determines which route to search first based on the display position of the branch destination node, and in the merge portion, all routes that reach the merge portion are searched. Since the process waits until the process is completed, the order of processing and the size relationship of the numbers match, and a number can be assigned to each node in the flowchart so that the user can easily understand the flow of the flowchart. There is an effect that can be done.
また、本発明の一つの態様によれば、フローチャートの向きを判定し、その判定結果によって分岐箇所での経路の探索順序を変更することとしたので、フローチャートの向きに関わらず、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することができるという効果を奏する。 In addition, according to one aspect of the present invention, the direction of the flowchart is determined, and the route search order at the branch point is changed based on the determination result. In order to make it easy to understand the flow of the above, there is an effect that a number can be assigned to each node in the flowchart.
また、本発明の一つの態様によれば、関連する文書においてノードに関する情報が出力される位置を示す情報を番号とともにノードに付与することとしたので、フローチャートに番号とともにその情報を表示することにより、利用者がフローチャートと対応する文書の対応づけを容易に行うことができるという効果を奏する。 Also, according to one aspect of the present invention, information indicating a position where information related to a node is output in a related document is given to the node together with the number, so that the information is displayed together with the number in the flowchart. There is an effect that the user can easily associate the flowchart and the corresponding document.
以下に添付図面を参照して、本発明に係る番号付与プログラム、番号付与装置および番号付与方法の好適な実施の形態を詳細に説明する。なお、以下の実施例では、業務の流れを示すフローチャートである業務フロー図に含まれる各ノードに番号を付与する例を示すが、本発明は、業務フロー図に限らず、処理や業務の流れを示すフローチャートに広く適用することができる。 Exemplary embodiments of a number assigning program, a number assigning device, and a number assigning method according to the present invention will be described below in detail with reference to the accompanying drawings. In the following embodiment, an example of assigning numbers to each node included in a business flow diagram that is a flowchart showing a business flow is shown. However, the present invention is not limited to a business flow diagram, and the flow of processing and business operations The present invention can be widely applied to flowcharts showing.
まず、従来の探索手法を用いた場合における番号付与について説明する。図25は、業務フロー図の一例を示す図である。同図に示した業務フロー図11は、ノードへの番号付与が行われていない業務フロー図であり、開始ノード21と、終了ノード22と、業務プロセス23a〜23fと、分岐ノード24と、合流ノード25と、遷移31a〜31jとを有している。
First, numbering in the case of using a conventional search method will be described. FIG. 25 is a diagram illustrating an example of a business flow diagram. The business flow diagram 11 shown in FIG. 11 is a business flow diagram in which numbers are not assigned to the nodes. The
開始ノード21は、業務の流れの起点を表すノードであり、終了ノード22は、業務の流れの終点を表すノードである。業務プロセス23a〜23fは、業務に含まれるプロセスを表すノードであり、それぞれ、「業務プロセスA」〜「業務プロセスF」という名前を与えられている。分岐ノード24は、所定の条件に従って業務の流れが分岐する箇所を示すノードであり、合流ノード25は、分岐した業務の流れが合流する箇所を示すノードである。
The
遷移31a〜31jは、業務の流れを示すために各ノード間を接続する矢印に相当する遷移オブジェクトである。具体的には、遷移31aは、開始ノード21から業務プロセス23aへ向かう流れを示す遷移オブジェクトであり、遷移31bは、業務プロセス23aから業務プロセス23bへ向かう流れを示す遷移オブジェクトであり、遷移31cは、業務プロセス23bから分岐ノード24へ向かう流れを示す遷移オブジェクトである。
また、遷移31dは、「条件a」が満たされるときに、分岐ノード24から業務プロセス23cへ向かう流れを示す遷移オブジェクトであり、遷移31eは、「条件b」が満たされるときに、分岐ノード24から業務プロセス23dへ向かう流れを示す遷移オブジェクトであり、遷移31gは、業務プロセス23dから業務プロセス23eへ向かう流れを示す遷移オブジェクトである。
The
また、遷移31fは、業務プロセス23cから合流ノード25へ向かう流れを示す遷移オブジェクトであり、遷移31hは、業務プロセス23eから合流ノード25へ向かう流れを示す遷移オブジェクトであり、遷移31iは、合流ノード25から業務プロセス23fへ向かう流れを示す遷移オブジェクトであり、遷移31jは、業務プロセス23fから終了ノード22へ向かう流れを示す遷移オブジェクトである。
The
図26は、従来の探索手法を用いて番号を付与した業務フロー図の一例を示す図である。同図に示した業務フロー図12は、既知の探索手法である深さ優先探索を用いて図25に示した業務フロー図11を探索しながらノードに番号を付与したものである。業務フロー図12においては、業務プロセス23a〜23f内の名前の前に、付与された番号が表示されている。
FIG. 26 is a diagram illustrating an example of a business flow diagram in which numbers are assigned using a conventional search method. The work flow diagram 12 shown in the figure assigns numbers to nodes while searching the business flow diagram 11 shown in FIG. 25 using a depth-first search which is a known search method. In the business flow diagram 12, the assigned number is displayed before the name in the
深さ優先探索は、どのノードを訪問したかを記録しながら、起点となるノードから深さ方向(起点から遠い方向)へ向けてノードを訪問していき、終端のノードに達した場合に、訪問済みのノードから分岐している未訪問のノードのうち最も近いノードから探索を再開するという探索手法である。この深さ優先探索を用いて、フローチャート内のノードを探索しながら、初めて訪問したノードに連番を付与していくことにより、フローチャート内の全てのノードに漏れなく番号を付与することができる。 Depth-first search visits a node from the starting node in the depth direction (direction far from the starting point) while recording which node is visited. In this search method, the search is restarted from the closest node among the unvisited nodes branched from the visited node. By using this depth-first search and assigning serial numbers to the first visited nodes while searching for nodes in the flowchart, it is possible to assign numbers to all the nodes in the flowchart without omission.
しかしながら、深さ優先探索では、フローチャート中に分岐が存在した場合にどの経路を先に探索するかが無作為に決定されるため、必ずしもノードに適切な番号を付与することができない。例えば、図26に示した業務フロー図12では、左下の業務プロセス23cへ向かう経路と、右下の業務プロセス23dへ向かう経路とに分岐する分岐ノード24が存在しているが、たまたま後者の経路が先に探索されているため、業務プロセス23dの方が、業務プロセス23cよりも若い番号を付与されている。一般に、このような縦型のフローチャートにおいては、利用者が流れを理解し易いように、左側の経路に若い番号が付与されていることが好ましいが、業務フロー図12では逆になってしまっている。
However, in the depth-first search, when a branch exists in the flowchart, it is determined at random which route is searched first, and thus an appropriate number cannot always be assigned to a node. For example, in the business flow diagram 12 shown in FIG. 26, there is a
また、深さ優先探索では、フローチャート中に分岐が存在し、ある経路が選択された場合、その経路の終端までの探索が完了するまで他の経路の探索は行われない。そのため、分岐の合流部分よりも先のノードに、分岐の手前のノードよりも若い番号が付与されてしまう。例えば、図26に示した業務フロー図12では、合流ノード25の先にある業務プロセス23fの方が、合流ノード25の手前の業務プロセス23cよりも若い番号を付与されている。一般に、このような縦型のフローチャートにおいては、利用者が流れを理解し易いように、同一系路上のノード間では起点に近いノードほど若い番号が付与されていることが好ましいが、業務プロセス23cと業務プロセス23fにおいては、番号の大小関係が逆になってしまっている。
In the depth-first search, when a branch exists in the flowchart and a certain route is selected, another route is not searched until the search to the end of the route is completed. For this reason, a node that is earlier than the junction of the branches is given a younger number than the node before the branch. For example, in the business flow diagram 12 shown in FIG. 26, the
このように、単純に深さ優先探索を用いてノードに番号を付与する手法では、利用者が流れを理解し易いように、適切な順序の番号をノードに付与することができない。 As described above, in the method of simply assigning numbers to nodes using depth-first search, it is not possible to assign appropriate numbers to nodes so that the user can easily understand the flow.
次に、本実施例に係る番号付与方法について説明する。本実施例に係る番号付与方法は、深さ優先探索を改善した方式でフローチャート内のノードを探索し、連番を付与していく。具体的には、本実施例に係る番号付与方法は、フローチャート中に分岐が存在した場合、分岐先の各ノードの表示位置を比較してどの経路を先に探索するかを決定する。また、本実施例に係る番号付与方法は、フローチャート中に合流箇所が存在した場合、その合流箇所へ到達する全ての経路が探索されるまで、合流箇所から先の探索を遅延させる。 Next, a numbering method according to the present embodiment will be described. In the numbering method according to the present embodiment, the nodes in the flowchart are searched by a method in which the depth-first search is improved, and serial numbers are assigned. Specifically, in the numbering method according to the present embodiment, when there is a branch in the flowchart, the display position of each branch destination node is compared to determine which route to search first. In addition, in the numbering method according to the present embodiment, when a joining location exists in the flowchart, the previous search is delayed from the joining location until all routes reaching the joining location are searched.
図1は、本実施例に係る番号付与方法を用いて番号を付与した業務フロー図の一例を示す図である。同図に示した業務フロー図13は、本実施例に係る番号付与方法を用いて図25に示した業務フロー図11の各ノードに番号を付与したものである。業務フロー図13においては、業務プロセス23a〜23f内の名前の前に、付与された番号が表示されている。 FIG. 1 is a diagram illustrating an example of a business flow diagram in which numbers are assigned using the number assignment method according to the present embodiment. The business flow diagram 13 shown in the figure assigns a number to each node of the business flow diagram 11 shown in FIG. 25 using the number assigning method according to the present embodiment. In the business flow diagram 13, the assigned number is displayed before the names in the business processes 23 a to 23 f.
業務フロー図13においては、分岐ノード24の左下の業務プロセス23cの方が、右下の業務プロセス23dよりも若い番号を付与されており、利用者が流れを理解し易くなっている。これは、分岐先のノードの表示位置を比較した結果に基づいて、ノードが左寄りに存在する経路が先に探索すべき経路として選択されているためである。
In the business flow diagram 13, the lower
また、業務フロー図13においては、合流ノード25の手前に存在する業務プロセス23c〜23eの方が、合流ノード25の先に存在する業務プロセス23fよりも若い番号を付与されており、利用者が流れを理解し易くなっている。これは、合流ノード25へ到達する全ての経路の探索が完了するのを待ち合わせてから合流ノード25から先の探索が行われているためである。
Further, in the business flow diagram 13, the business processes 23c to 23e existing before the joining
なお、本実施例に係る番号付与方法は、フローチャート中に分岐が存在した場合に、分岐先の各ノードの表示位置をどのように比較して、その結果に基づいてどの経路を先に探索するかをフローチャートの向きによって変更する。具体的には、フローチャートの向きが縦向きの場合、図1に示したように、分岐先のノードの位置が左寄りである経路ほど先に探索される。また、フローチャートの向きが横向きの場合、図2に示したように、分岐先のノードの位置が上寄りである経路ほど先に探索される。なお、ここで説明したノードの位置と経路探索の優先順位の関係は一例であり、フローチャートの種類等に応じて変更することとしてもよい。 In the numbering method according to the present embodiment, when there is a branch in the flowchart, how the display position of each branch destination node is compared and which route is searched first based on the result. Is changed according to the direction of the flowchart. Specifically, when the orientation of the flowchart is vertical, as shown in FIG. 1, the route whose branch destination node is to the left is searched earlier. Further, when the flow chart is in the horizontal direction, as shown in FIG. 2, the route whose branch destination node is on the upper side is searched first. Note that the relationship between the position of the node and the priority order of the route search described here is merely an example, and may be changed according to the type of the flowchart.
また、本実施例に係る番号付与方法は、ノードと関連する情報が他の文書においてどこに存在しているかを示す情報を番号とともに表示させることもできる。例えば、内部統制を目的として業務フロー図を作成する場合、業務フロー図に含まれる業務プロセスにおいて発生するリスクも業務フロー図に記載される。そして、業務フロー図に含まれる各業務プロセスとそこで発生するリスクの詳細を示すRCM(Risk Control Matrix)と呼ばれる一覧表が別途作成され、業務フロー図とRCMを対にして参照しながら監査等の作業が行われる。このため、業務フロー図に含まれる業務プロセスに関する情報がRCMのどこに存在しているかを容易に知ることができる手掛かりが業務フロー図中に表示されていることが好ましい。そこで、本実施例に係る番号付与方法は、例えば、ノードと関連する情報が他の文書においてどのページに存在しているかを示すページ番号を、ノードを識別するための番号とともに表示させることができる。 Also, the numbering method according to the present embodiment can display information indicating where information related to a node exists in other documents together with a number. For example, when creating a business flow diagram for the purpose of internal control, risks that occur in a business process included in the business flow diagram are also described in the business flow diagram. A list called RCM (Risk Control Matrix) showing the details of each business process included in the business flow diagram and the risks generated there is created separately, and audits etc. are performed while referring to the business flow diagram and RCM as a pair. Work is done. For this reason, it is preferable that a clue that can easily know where information related to the business process included in the business flow diagram exists in the RCM is displayed in the business flow diagram. Therefore, the numbering method according to the present embodiment can display, for example, a page number indicating on which page information related to the node exists in another document, together with a number for identifying the node. .
図3−1は、本実施例に係る番号付与方法を用いてページ番号付の番号を付した業務フロー図の一例を示す図であり、図3−2は、業務フロー図と関連する文書の一例を示す図である。図3−1に示した業務フロー図15は、本実施例に係る番号付与方法を用いて図25に示した業務フロー図11の各ノードにページ番号付の番号を付与したものである。業務フロー図15においては、業務プロセス23a〜23f内の名前の前に、図3−2に示した文書においてその業務プロセスの情報が表示されているページのページ番号と、その業務プロセスに付与された番号が表示されている。例えば、「業務プロセスD」という業務プロセス名の前に表示されている「02−04」という値は、その業務プロセスに対応する情報が、図3−2において示した文書において2ページ目に表示されており、その業務プロセスには4という番号が付与されていることを示している。 FIG. 3A is a diagram illustrating an example of a business flow diagram in which numbers with page numbers are assigned using the numbering method according to the present embodiment, and FIG. 3B is a diagram of a document related to the business flow diagram. It is a figure which shows an example. The business flow diagram 15 illustrated in FIG. 3A is obtained by assigning a page number to each node of the business flow diagram 11 illustrated in FIG. 25 using the numbering method according to the present embodiment. In the business flow diagram 15, before the names in the business processes 23a to 23f, the page number of the page on which the business process information is displayed in the document shown in FIG. Number is displayed. For example, the value “02-04” displayed before the business process name “business process D” indicates that information corresponding to the business process is displayed on the second page in the document shown in FIG. 3-2. This indicates that the number “4” is assigned to the business process.
なお、図3−1の例では、ノードと関連する情報が他の文書においてどこに存在しているかを示す情報として、ページ番号を表示する例を示したが、他の文書の形式等に応じて、段落番号等を用いてノードと関連する情報が他の文書中に存在する位置を示すこととしてもよい。 In the example of FIG. 3A, an example in which a page number is displayed as information indicating where information related to a node exists in another document is shown, but depending on the format of the other document, etc. The position where the information related to the node exists in another document may be indicated by using a paragraph number or the like.
次に、本実施例に係る番号付与方法を用いてフローチャートに番号を付与する番号付与装置100について説明する。図4は、番号付与装置100の構成を示す機能ブロック図である。同図に示すように、番号付与装置100は、記憶部110と、制御部120とを有する。記憶部110は、各種情報を記憶する記憶部であり、構成要素情報111と、図形情報112と、書式情報113と、フォント情報114等を記憶する。
Next, the
構成要素情報111および図形情報112は、業務フロー図を実現するための情報であり、例えば、業務フロー図の編集装置によって編集され、記憶部110に格納される。構成要素情報111は、業務フロー図に含まれる各種要素の論理的な情報を含む。構成要素情報111のモデルを表すクラス図を図5に示す。同図に示すように、構成要素情報111のモデルの最上位には、の業務フロー図に対応する業務フロー41があり、業務フロー41には、ノード42と、遷移43とが含まれる。
The component element information 111 and the
ノード42は、業務フロー図に含まれる各種ノードに相当し、type、id、name、outgoing、incomoingといった属性を有する。typeは、そのノードの種別であり、idは、そのノードを識別するための識別番号である。nameは、そのノードの名称であり、ノードが業務プロセスの場合、この属性の値が業務フロー図においてその業務フローの名称として表示される。outgoingは、そのノードから先のノードへ続いている遷移のidのリストであり、incomoingは、そのノードへ続いている遷移のidのリストである。
The
遷移43は、ノード間の流れを示す矢印に相当し、type、id、source、targetといった属性を有する。typeは、その遷移の種別であり、idは、その遷移を識別するための識別番号である。sourceは、その遷移が接続しているノードのうち起点に近いノードのidであり、targetは、その遷移が接続しているノードのうち起点から遠いノードのidである。
The
ノード42は、サブフロー44と、制御ノード45と、業務プロセス46とに分類される。サブフロー44は、入れ子関係にある他の業務フロー図を示すノードである。業務フロー図が大規模になった場合、業務フロー図の一部を抜き出して別の業務フロー図とし、元の業務フロー図において抜き出された業務フローが存在していた箇所に、抜き出した別の業務フロー図へのリンクを示すノードを表示しておくことがあるが、サブフロー44は、そのリンクを示すノードに相当する。
The
制御ノード45は、業務フロー図において流れを制御するために配置されるノードであり、開始45aと、終了45bと、条件分岐45cと、並列分岐45dとにさらに分類される。開始45aは、業務フロー図の起点を表す情報であり、終了45bは、業務フロー図の終点を表す情報である。条件分岐45cは、条件分岐する箇所、もしくは、条件分岐した流れが合流する箇所を表す情報であり、並列分岐45dは、並列分岐する箇所、もしくは、並列分岐した流れが合流する箇所を表す情報である。
The
業務プロセス46は、業務を構成する個別のプロセスを表すノードである。業務プロセス46は、複数の属性46aを含むことができる。属性46aは、業務プロセス46の詳細を示す情報であり、情報の種別を示すidや、情報の内容を示すvalueといった属性を有する。
The
図6は、構成要素情報111の一例を示す図である。同図に示した情報は、図5に示したモデルに従って、図1に示した業務フロー図13の各要素をXML(Extensible Markup Language)形式で表現したものであり、flowEdgeタグが遷移43に相当し、flowNodeタグがノード42に相当する。また、タグ中のアトリビュートが、遷移43もしくはノード42の属性に相当する。
FIG. 6 is a diagram illustrating an example of the component element information 111. The information shown in FIG. 6 represents each element of the business flow diagram 13 shown in FIG. 1 in the XML (Extensible Markup Language) format according to the model shown in FIG. 5, and the flowEdge tag corresponds to the
例えば、idのアトリビュートの値が「edge01」であるflowEdgeタグは、sourceのアトリビュートの値が「node00」、targetのアトリビュートの値が「node01」となっている。これは、このタグが表す遷移が、「node00」というidをもつノードから「node01」というidをもつノードへつながる流れを表すものであることを示している。 For example, a flowEdge tag whose id attribute value is “edge01” has a source attribute value “node00” and a target attribute value “node01”. This indicates that the transition represented by this tag represents a flow from a node having an id of “node00” to a node having an id of “node01”.
また、idのアトリビュートの値が「node101」であるflowNodeタグは、typeの値が「条件分岐」、incomingのアトリビュートの値が「edge03」、outgoingのアトリビュートの値が「edge04、edge05」となっている。これは、このタグが表すノードが、条件分岐45cに分類されるノードであり、「edge03」というidをもつ遷移によって直前のノードと接続され、「edge04」というidをもつ遷移と「edge05」というidをもつ遷移によって直後のノードと接続されていることを示している。
In addition, the flowNode tag whose id attribute value is “node101” has the type value “conditional branch”, the incoming attribute value “edge03”, and the outgoing attribute value “edge04, edge05”. Yes. This is a node in which the node represented by this tag is classified into the
ノードを表すタグにおいてincomingとoutgoingに設定される遷移のidの数は、通常は1つであるが、上記の例のように、ノードの種別により異なることがある。例えば、開始45aに分類されるノードを表すタグでは、そのノード以前のノードが存在しないため、incomingは空になる。また、条件分岐45cに分類されるノードを表すタグの場合、そのノードが分岐を表すノードであれば、outgoingに複数のidが設定され、そのノードが合流を表すノードであれば、incomingに複数のidが設定される。
In a tag representing a node, the number of ids of transitions set to “incoming” and “outgoing” is usually one, but may differ depending on the type of the node as in the above example. For example, in a tag representing a node classified as the
なお、図6に示した構成要素情報111の例では、業務プロセスを表す各タグに属性を表すタグが1つずつしか含まれていないが、業務プロセスを表すタグは、属性を表すタグを複数含むことができる。例えば、番号の付与が完了した後には、付与された番号を保持するための属性を表すタグが、業務プロセスを表す各タグに追加される。また、構成要素情報111は、必ずしもXML形式である必要はなく、業務フロー図を編集するツールが出力するのに適した形式であってよい。 In the example of the component element information 111 illustrated in FIG. 6, each tag representing a business process includes only one tag representing an attribute. However, a tag representing a business process includes a plurality of tags representing attributes. Can be included. For example, after the number assignment is completed, a tag representing an attribute for holding the assigned number is added to each tag representing a business process. Further, the component element information 111 is not necessarily in the XML format, and may be in a format suitable for output by a tool for editing a business flow diagram.
構成要素情報111は、制御部120によって記憶部110から読み出され、メモリ(図示せず)上に展開された状態で番号付与処理が適用される。メモリ上に展開された構成要素情報111のイメージの一例を図7に示す。同図に示すように、メモリ上に展開された構成要素情報111は、ノードを表す要素や遷移を表す要素が業務フロー図単位でまとまった状態で管理される。なお、図7は、図6に示した構成要素情報111がメモリ上に展開された例を示しており、各要素に、図1に示した業務フロー図13中の対応する要素の符号を付している。
The component information 111 is read from the
図形情報112は、業務フロー図に含まれる各種要素を図示するための情報を含む。図形情報112のモデルを表すクラス図を図8に示す。同図に示すように、図形情報112のモデルの最上位には、1つの業務フロー図に対応する業務フロー51があり、業務フロー51には、図形情報52が含まれる。
The
図形情報52は、業務フロー図に含まれるノードもしくは遷移と1対1で対応し、type、id、といった属性を有する。typeは、図示する図形の種別であり、idは、対応するノードもしくは遷移のidである。また、図形情報52は、複数の接続ポイント52aを含むことができる。接続ポイント52aは、ノードと遷移の接続箇所の座標を示す情報であり、接続箇所のX座標を示すRxや、Y座標を示すRyといった属性を有する。
The
図形情報52は、矩形情報53と線情報54に分類される。矩形情報53は、ノードを表す矩形等を図示するための情報であり、図形情報52が共通にもつ属性に加えて、PinXやPinYといった属性をさらに有する。PinXとPinYは、それぞれ、矩形等の中心のX座標とY座標を示す。線情報54は、遷移を表す矢印等を図示するための情報であり、図形情報52が共通にもつ属性に加えて、BeginX、BeginY、EndX、EndYといった属性をさらに有する。BeginXとBeginYは、それぞれ、矢印等の起点のX座標とY座標を示し、EndXとEndYは、それぞれ、矢印等の終点のX座標とY座標を示す。
The
図形情報52は、例えば、図6に示したようなXML形式のデータとして記憶部110に記憶される。そして、番号付与処理のために、制御部120によって記憶部110から読み出され、メモリ(図示せず)上に展開される。メモリ上に展開された図形情報52のイメージの一例を図9に示す。同図に示すように、メモリ上に展開された図形情報52は、ノードや遷移を図示するための要素が業務フロー図単位でまとまった状態で管理される。なお、図9は、図1に示した業務フロー図を図示するための図形情報52がメモリ上に展開された例を示しており、各要素に、図1に示した業務フロー図13中の対応する要素の符号を付している。
The
図4の説明に戻って、書式情報113は、業務フロー図と関連する他の文書の出力形式に関する情報を含む。書式情報113の一例を図10に示す。同図に示した書式情報113の例は、図3−2に示した一覧表を表示するためのものであり、属性名、出力カラム位置、カラム長、フォント名、フォントサイズといった項目を有し、一覧表のカラムごとに情報が予め登録される。
Returning to the description of FIG. 4, the
図3−2に示した一覧表は、業務プロセスごとに行が追加され、業務プロセスに含まれる属性が、対応するカラムに設定されるようになっており、属性名は、業務プロセスに含まれる属性のidに対応し、その他の項目は、属性のvalueの出力形式を示している。例えば、図10に示した例の4行目は、「業務内容」というidをもつ属性のvalueは、5番目のカラムが出力位置であり、そのカラムの幅は240であり、出力時には「ゴシック」という名のサイズ10のフォントを使用する必要があることを示している。
In the list shown in FIG. 3B, a row is added for each business process, and the attribute included in the business process is set in the corresponding column, and the attribute name is included in the business process. Corresponding to the attribute id, the other items indicate the output format of the attribute value. For example, in the fourth row of the example shown in FIG. 10, the attribute value having the attribute “business content” has an output position in the fifth column, the width of the column is 240, and “gothic” Indicates that it is necessary to use a font of
フォント情報114は、フォントの高さや幅といったメトリック情報をフォントの種類とサイズごとに保持する。フォント情報114の内容は、多くの情報処理システムで使用されているものと同様であるので、ここでは詳細な説明を省略する。
The
制御部120は、番号付与装置100を全体制御する制御部であり、方向判定部121と、フローチャート探索部122と、番号設定部123とを有する。方向判定部121は、フローチャートが縦向きであるのか横向きであるのかを判定する処理部である。具体的には、方向判定部121は、図形情報112を参照し、フローチャート中の各ノードから次のノードへ向かう遷移が縦向きに伸びているのか横向きに伸びているのかを判定し、縦向きに伸びている遷移の数が横向きに伸びている遷移の数よりも多ければフローチャートが縦向きであると判定し、さもなければ、フローチャートが横向きであると判定する。
The
フローチャート探索部122は、フローチャート中の各ノードを探索する処理部である。フローチャート探索部122は、基本的には、既知の探索手法である深さ優先探索に基づいてノードの探索を行うが、フローチャートの流れの理解を助けるようなナンバリングを実現するため、分岐部分では、図形情報112を参照して分岐先のノードの表示位置を比較し、その結果に基づいて先に探索すべき経路を選択する。また、分岐後の合流部分では、その合流部分へ到達する全ての経路の探索が完了するのを待ち合わせる。
The
図11〜17を参照しながら、図1に示した業務フロー図13中のノードを探索する場合を例にして、フローチャート探索部122の処理の詳細について説明する。フローチャート探索部122は、ノードの探索を行うためにスタック61と、訪問済みリスト62と、待合せマップ63とを用いる。スタック61は、深さ優先探索を実現するために、現在訪問中のノードの直後のノードのidがプッシュされるLIFO(Last In First Out)方式のバッファである。訪問済みリスト62は、既に訪問したノードを重複して訪問することがないように、訪問済みのノードのidを保持するリストである。待合せマップ63は、合流箇所での待ち合わせを実現するために、合流箇所に相当するノードのidと、そのノードの訪問回数が対で保持されるマップである。
The details of the processing of the
深さ優先探索では、現在訪問中のノードの直後の未訪問のノードのidを全てスタックにプッシュした後、スタックからノードのidを1つポップし、そのidが示すノードを現在訪問中のノードとするという動作が、スタックが空になるまで繰り返し実行され、訪問されたノードのidが訪問リストに追加されていく。 In depth-first search, after pushing all the unvisited node ids immediately after the currently visited node onto the stack, the node id is popped from the stack and the node indicated by that id is currently visited The operation is repeated until the stack becomes empty, and the id of the visited node is added to the visited list.
業務フロー図13中のノードを探索する場合、まず、開始ノード21のidである「node00」がスタック61にプッシュされる。そして、スタック61から「node00」がポップされ、このidに対応する開始ノード21が現在訪問中のノードとなり、「node00」が訪問済みリスト62に追加される。
When searching for a node in the business flow diagram 13, first, “node00” that is the id of the
続いて、構成要素情報111を参照して、現在訪問中のノードの直後のノードのidが取得され、スタック61にプッシュされる。具体的には、idが「node00」であるノードのoutgoingに設定されている遷移のidは、「edge01」であり、この遷移のtargetに設定されているノードのidは、「node01」であるため、業務プロセス23aのidである「node01」が取得され、これがスタック61にプッシュされる。
Subsequently, with reference to the component element information 111, the id of the node immediately after the currently visited node is acquired and pushed onto the
同様の処理が繰り返され、idが「node02」である業務プロセス23bが訪問済みリストに追加された場面を図11に示す。同図に示すように、この場面では、業務プロセス23bの直後のノードである分岐ノード24のid「node101」がスタック61にプッシュされ、訪問済みリスト62には、「node00」、「node01」、「node02」が追加されている。
FIG. 11 shows a scene where the same process is repeated and the
次の場面では、図12に示すように、スタック61から「node101」がポップされ、このidに対応する分岐ノード24が現在訪問中のノードとなり、「node101」が訪問済みリスト62に追加される。続いて、構成要素情報111を参照して、現在訪問中のノードの直後のノードのidが取得されるが、idが「node101」であるノードのoutgoingに設定されている遷移のidは、「edge04、edge05」の2つであるため、「node03」と「node04」という2つのidが直後のノードのidとして取得される。
In the next scene, as shown in FIG. 12, “node101” is popped from the
このように分岐箇所のノードにおいては、複数のidが直後のノードのidとして取得される。この場合、フローチャート探索部122は、図形情報112を参照してそれらのidに対応するノードの表示位置に関する情報を取得し、その比較結果に基づいてidをスタック61へプッシュする順番を決定する。
Thus, in the node at the branch point, a plurality of ids are acquired as the ids of the immediately following node. In this case, the
具体的には、フローチャートが縦型のものであれば、フローチャート探索部122は、図13に示すように、取得されたidに対応する矩形情報の中心のX座標であるPinXを比較し、この値が大きいものを先にスタック61へプッシュする。もし、PinXの値が同一のものが複数あれば、PinYの値が小さいものを先にスタック61へプッシュする。これにより、相対的に左寄りに位置するノードが先に訪問され、番号設定部123によって若い番号を付与されるため、フローチャートの流れの理解を助けるようなナンバリングが実現される。
Specifically, if the flowchart is a vertical type, the
なお、フローチャートが横型のものであれば、フローチャート探索部122は、取得されたidに対応する矩形情報の中心のY座標であるPinYを比較し、この値が小さいものを先にスタック61へプッシュする。もし、PinYの値が同一のものが複数あれば、PinXの値が大きいものを先にスタック61へプッシュする。これにより、相対的に上寄りに位置するノードが先に訪問され、番号設定部123によって若い番号を付与されるため、フローチャートの流れの理解を助けるようなナンバリングが実現される。
If the flowchart is a horizontal type, the
図12に続く場面では、フローチャートが縦型であり、idが「node04」の矩形情報のPinXの方が、idが「node03」の矩形情報のPinXよりも大きいため、図14に示すように、「node04」が先にスタック61へプッシュされ、続いて「node03」がプッシュされる。これにより、idが「node03」のノードが先に訪問されることになる。
In the scene following FIG. 12, the flowchart is a vertical type, and PinX of the rectangular information with id “node04” is larger than PinX of the rectangular information with id “node03”. “Node04” is pushed onto the
そして、idが「node03」のノードが訪問済みとなると、図15に示すように、「node04」と、idが「node03」のノードの直後のノードである合流ノード25のid「node102」がスタック61へプッシュされた状態となる。そして、図16に示すように、スタック61から「node102」がポップされる。
Then, when the node with id “node03” has been visited, as shown in FIG. 15, “node04” and id “node102” of the
このとき、構成要素情報111をみると、idが「node102」であるノードのincomingに設定されている遷移のidは、「edge06、edge08」の2つであるため、idが「node102」であるノードは、分岐後の合流箇所であることがわかる。このように、ポップしたidが、合流ノードのidであった場合、フローチャート探索部122は、待合せマップ63を使って、その合流ノードへの経路が全て探索されるまで待ち合わせを行う。
At this time, when the component element information 111 is seen, since the transition id set in the incoming of the node whose id is “node102” is two, “edge06, edge08”, the id is “node102”. It can be seen that the node is a junction point after branching. In this way, when the popped id is the id of the joining node, the
図16の場面では、待合せマップ63には、id「node102」に関する情報が保持されていないため、フローチャート探索部122は、待合せマップ63にid「node102」と訪問回数「1」を登録し、スタック61から次のidをポップして、合流ノード25以前のノードの探索を継続する。
In the scene of FIG. 16, since the information about the id “node102” is not held in the
もし、待合せマップ63に、id「node102」に関する情報が保持されていれば、フローチャート探索部122は、id「node102」に対応する訪問回数に1を加算する。そして、加算後の訪問回数が、incomingに設定されている遷移のidの数未満であれば、スタック61から次のidをポップしてノードの探索を継続し、加算後の訪問回数が、incomingに設定されている遷移のidの数以上であれば、合流ノード25へ到達する経路が全て探索されたことになるので、待ち合わせを終了し、合流ノード25よりも先のノードの探索を開始する。
If the information regarding the id “node102” is stored in the
図16の場面の後、フローチャート探索部122は、業務プロセス23dと業務プロセス23eを訪問し、合流ノード25を再び訪問することになる。そして、図17のように、「node102」を2回目にポップした場面では、待合せマップ63に、id「node102」に関する情報が保持されているため、フローチャート探索部122は、id「node102」に対応する訪問回数に1を加算する。そして、加算後の訪問回数の値である2は、incomingに設定されている遷移のidの数以上であるため、フローチャート探索部122は、待ち合わせを終了し、合流ノード25よりも先のノードである業務プロセス23fを訪問する。
After the scene of FIG. 16, the
このように、待合せマップ63を用いて待ち合わせを行うことにより、合流箇所よりも先のノードが合流箇所よりも前のノードよりも先に訪問され、番号設定部123によって若い番号を付与されてしまうことを防止することができ、フローチャートの流れの理解を助けるようなナンバリングが実現される。
In this way, by making a meeting using the
なお、上記の説明では、深さ優先探索に基づいてノードの探索を行うためにスタックを用いる例を示したが、関数の再帰を用いて深さ優先探索を実現する方式も知られており、上記の処理を、スタックではなく、関数の再帰を用いて実現するように変更することとしてもよい。 In the above description, an example in which a stack is used to search for a node based on a depth-first search is shown, but a method for realizing a depth-first search using function recursion is also known, The above processing may be changed to be realized by using function recursion instead of the stack.
図4の説明に戻って、番号設定部123は、フローチャート探索部122において訪問済となった業務プロセスに連番を付与する処理部である。既に説明したように、フローチャート探索部122は、フローチャートの流れの理解を助けるようなナンバリングが実現されるように、分岐箇所や合流箇所で特殊な処理を行っているため、番号設定部123は、フローチャート探索部122において訪問済となった順に業務プロセスに連番を付与するだけで、業務プロセスに適切な番号を付与することができる。
Returning to the description of FIG. 4, the
次に、番号付与装置100の処理手順について説明する。図18は、番号付与装置100の処理手順を示すフローチャートである。同図に示すように、番号付与装置100が、まず、初期処理として、関連する文書においてノードに関する情報が含まれるページを示す変数であるページ番号を1に設定し、ノードに付与する番号を示す変数であるステップ番号を1に設定し、関連する文書におけるノードに関する情報の表示位置を示す変数であるページ内位置を0に設定し、訪問済みリスト62と待合せマップ63を初期化する(ステップS101)。
Next, the processing procedure of the
そして、方向判定部121が、後述する方向判定処理を実行して、フローチャートが縦向きであるか横向きであるかを判定し(ステップS102)、フローチャート探索部122が、構成要素情報111を参照して、探索対象のフローチャートの開始ノードをスタック61へプッシュする(ステップS103)。
Then, the
続いて、フローチャート探索部122が、スタック61からノードをポップする(ステップS104)。ここで、ノードをポップすることができた場合、すなわち、スタック61が空でなかった場合は(ステップS105肯定)、フローチャート探索部122は、構成要素情報111を参照して、ポップしたノードのincomingの値を確認し、そのノードが合流ノードであるか否かを判定する。
Subsequently, the
そして、フローチャート探索部122は、incomingに設定されているidの数が1以下であれば合流ノードではないと判定し(ステップS106否定)、番号設定部123に後述する番号設定処理を行わせて、ポップしたノードに番号を付与させ(ステップS107)、ポップしたノードを訪問済みリスト62へ登録する(ステップS108)。
Then, the
そして、構成要素情報111を参照して、ポップしたノードの直後に接続されている未訪問のノードを全て取得し(ステップS109)、複数のノードが取得された場合、すなわち、ポップしたノードが分岐ノードであった場合は(ステップS110肯定)、後述するノード並べ替え処理を行って取得されたノードを整列した後(ステップS111)、最後のノードからスタック61へプッシュしていく(ステップS112)。そして、プッシュが完了した後は、ステップS104以降の処理を再実行する。 Then, referring to the component element information 111, all unvisited nodes connected immediately after the popped node are acquired (step S109), and when a plurality of nodes are acquired, that is, the popped node branches. If it is a node (Yes at Step S110), the node rearrangement process described later is performed to arrange the obtained nodes (Step S111), and then pushed from the last node onto the stack 61 (Step S112). Then, after the push is completed, the processes after step S104 are re-executed.
一方、ステップS109において取得されたノードが1以下であった場合、ポップしたノードが分岐ノードでなかった場合は(ステップS110否定)、取得されたノードがあればそれをスタック61へプッシュし、ステップS104以降の処理を再実行する。
On the other hand, if the node acquired in step S109 is 1 or less, or if the popped node is not a branch node (No in step S110), if there is an acquired node, it is pushed onto the
また、フローチャート探索部122は、ステップS104においてポップしたノードのincomingに設定されているidの数が複数であれば、ポップしたノードが合流ノードであると判定し(ステップS106肯定)、そのノードが待合せマップ63に登録済みであるか否かを確認する。ここで、登録されていなければ(ステップS113否定)、ノードを待合せマップ63に登録し(ステップS114)、ノードに対応する訪問回数を1回に設定する。
Further, if there are a plurality of ids set in the incoming of the node popped in step S104, the
一方、待合せマップ63に登録済みであれば(ステップS113肯定)、ノードに対応する訪問回数に1を加算し(ステップS116)、加算後の訪問回数が遷移数、すなわち、ノードのincomingに設定されているidの数以上であれば(ステップS117肯定)、ステップS107以降の処理を実行して、当該の合流ノードに番号を付与させ、遠方のノードの探索を行う。一方、加算後の訪問回数が遷移数、すなわち、ノードのincomingに設定されているidの数未満であれば(ステップS117否定)、ステップS104に戻って、当該の合流ノードへ到達する他の経路の探索を行う。 On the other hand, if registered in the waiting map 63 (Yes at Step S113), 1 is added to the number of visits corresponding to the node (Step S116), and the number of visits after the addition is set as the number of transitions, that is, the incoming of the node. If the number is greater than or equal to the number of ids (Yes at Step S117), the processing after Step S107 is executed to give a number to the joining node and search for a distant node. On the other hand, if the number of visits after the addition is less than the number of transitions, that is, the number of ids set in the incoming of the node (No in step S117), the process returns to step S104 and another route that reaches the junction node Search for.
こうして、フローチャート内の探索を進め、ステップS104においてノードをポップすることができなかった場合、すなわち、スタック61が空であった場合は(ステップS105否定)、フローチャート内の全てのノードを探索したことになるため、処理を終了する。なお、上記の説明においては、スタック61等にノードそのものを格納するものとしたが、スタック61等に格納するのは、ノードを識別することができるもの、例えば、idであってもよい。
Thus, the search in the flowchart is advanced, and if the node could not be popped in step S104, that is, if the
図19は、方向判定処理の処理手順を示すフローチャートである。同図に示すように、方向判定部121は、まず、初期処理として、縦方向に伸びる遷移の数を示す変数である縦遷移数を0に設定し、横方向に伸びる遷移の数を示す変数である横遷移数を0に設定する(ステップS201)。
FIG. 19 is a flowchart illustrating the processing procedure of the direction determination process. As shown in the figure, the
そして、方向判定部121は、構成要素情報111から処理対象のフローチャートに含まれるノードのうち未選択のものを1つ選択する(ステップS202)。ここで、ノードを選択することができた場合は(ステップS203肯定)、図形情報112を参照して、ノードと対応する矩形情報、すなわち、ノードと同一のidをもつ矩形情報を取得し(ステップS204)、その矩形情報に付随する接続ポイントを全て取得する(ステップS205)。
Then, the
そして、方向判定部121は、取得した接続ポイントのうち未選択のものを1つ選択する(ステップS206)。ここで、接続ポイントを選択することができた場合は(ステップS207肯定)、選択した接続ポイントの座標を矩形情報の座標と比較する。具体的には、矩形情報が示す矩形等の中心のX座標であるPinXと、矩形情報が示す矩形等と遷移の矢印との交点である接続ポイントのX座標であるRxの差の絶対値が所定の閾値よりも大きければ(ステップS208肯定)、遷移が横向き(X軸方向)に伸びていると想定されるので、横遷移数に1を加算する(ステップS209)。また、矩形情報が示す矩形等の中心のY座標であるPinYと、矩形情報が示す矩形等と遷移の矢印との交点である接続ポイントのY座標であるRyの差の絶対値が所定の閾値よりも大きければ(ステップS210肯定)、遷移が縦向き(Y軸方向)に伸びていると想定されるので、縦遷移数に1を加算する(ステップS211)。
Then, the
そして、接続ポイントの座標を矩形情報の座標と比較した後は、ステップS206に戻って、次の未選択の接続ポイントの選択を試みる。こうして、取得された全ての接続ポイントの座標を矩形情報の座標と比較し、ステップS206において全ての接続ポイントが選択済みであった場合は(ステップS207否定)、ステップS202へ戻って、構成要素情報111から処理対象のフローチャートに含まれるノードのうち未選択ものの選択を試みる。 Then, after comparing the coordinates of the connection point with the coordinates of the rectangular information, the process returns to step S206 to try to select the next unselected connection point. In this way, the coordinates of all the obtained connection points are compared with the coordinates of the rectangle information. If all the connection points have been selected in step S206 (No in step S207), the process returns to step S202, and the component information From 111, an attempt is made to select an unselected node among the nodes included in the flowchart to be processed.
こうして、処理対象のフローチャートに含まれる各ノードを対象として処理を進めていき、ステップS202において全てのノードを選択済みとなったならば(ステップS203否定)、縦遷移数の値と横遷移数の値を比較する。そして、縦遷移数の値が横遷移数の値よりも大きければ(ステップS212肯定)、フローチャートが縦向きであると判定し、さもなければ(ステップS212否定)、フローチャートが横向きであると判定する。 In this way, the processing is advanced for each node included in the flowchart to be processed, and if all the nodes have been selected in step S202 (No in step S203), the value of the vertical transition number and the horizontal transition number Compare values. If the value of the number of vertical transitions is larger than the value of the number of horizontal transitions (Yes at Step S212), it is determined that the flowchart is in the portrait orientation, otherwise (No in Step S212), it is determined that the flowchart is in the landscape orientation. .
図20は、ノード並び替え処理の処理手順を示すフローチャートである。同図に示すように、フローチャート探索部122は、取得された各ノードに対応する矩形情報、すなわち、同一のidをもつ矩形情報を図形情報112から取得する(ステップS301)。
FIG. 20 is a flowchart illustrating a processing procedure of node rearrangement processing. As shown in the figure, the
そして、方向判定部121によってフローチャートの向きが縦向きであると判定されていた場合は(ステップS302肯定)、相対的に左にあるノードが先になるように、矩形情報が示す矩形等の中心のX座標であるPinXが昇順となるように対応するノードをソートする。このとき、PinXの値が同一の矩形情報があれば、それらの矩形情報については、PinYが降順となるように対応するノードをソートする(ステップS303)。
When the
また、方向判定部121によってフローチャートの向きが横向きであると判定されていた場合は(ステップS302否定)、相対的に上にあるノードが先になるように、矩形情報が示す矩形等の中心のY座標であるPinYが降順となるように対応するノードをソートする。このとき、PinYの値が同一の矩形情報があれば、それらの矩形情報については、PinXが昇順となるように対応するノードをソートする(ステップS304)。
If the
図21は、番号設定処理の処理手順を示すフローチャートである。同図に示すように、番号設定部123は、現在処理対象になっているノードが業務プロセスであれば、すなわち、現在処理対象になっているノードのtypeの値を参照し、その値が「業務プロセス」であれば(ステップS401肯定)、ノードにステップ番号を設定し(ステップS402)、ステップ番号に1を加算する(ステップS403)。一方、現在処理対象になっているノードが業務プロセスでなければ(ステップS401否定)、特に処理を行わない。
FIG. 21 is a flowchart showing the processing procedure of the number setting process. As shown in the figure, the
図22は、ページ番号を付加する場合の番号設定処理の処理手順を示すフローチャートである。同図に示すように、番号設定部123は、現在処理対象になっているノードが業務プロセスであれば、すなわち、現在処理対象になっているノードのtypeの値を参照し、その値が「業務プロセス」であれば(ステップS501肯定)、構成要素情報111と、書式情報と113と、フォント情報114とを参照して、ノードに関する情報を関連する文書に出力する場合に、出力行の高さがどれだけの大きさになるかを算出する(ステップS502)。
FIG. 22 is a flowchart showing the processing procedure of the number setting process when adding a page number. As shown in the figure, the
例えば、図3−2に示したような一覧表にノードに関する情報を出力する場合であれば、各カラムの幅と使用するフォントの情報を取得し、ノードに設定されている属性を各カラムに出力した場合に、各カラムの高さがどれだけになるかをフォントのサイズと文字の折り返しを考慮して算出し、最も高さが必要なカラムの高さを出力行の高さとする。 For example, when outputting information about a node to a list as shown in FIG. 3-2, information on the width of each column and the font to be used is acquired, and the attributes set in the node are assigned to each column. When output, calculate the height of each column taking into account the font size and character wrapping, and the height of the column that requires the highest height is the height of the output row.
そして、求めた高さをページ内位置に加算し(ステップS503)、ページ内位置が1ページ内に出力可能な高さの最大値を超過した場合は(ステップS504肯定)、ページ番号に1を加算し(ステップS505)、求めた高さをページ内位置に設定する(ステップS506)。ページ内位置が1ページ内に出力可能な高さの最大値を超過していなければ、ステップS505および506は実行しない。 Then, the obtained height is added to the position within the page (step S503), and when the position within the page exceeds the maximum height that can be output within one page (Yes at step S504), 1 is set as the page number. Addition is performed (step S505), and the obtained height is set as an in-page position (step S506). If the position in the page does not exceed the maximum height that can be output in one page, steps S505 and 506 are not executed.
そして、ノードにページ番号とステップ番号を設定し(ステップS507)、ステップ番号に1を加算する(ステップS508)。一方、現在処理対象になっているノードが業務プロセスでなければ(ステップS501否定)、特に処理を行わない。 Then, a page number and a step number are set for the node (step S507), and 1 is added to the step number (step S508). On the other hand, if the node currently being processed is not a business process (No in step S501), no particular processing is performed.
図23は、ページ番号を付加し、サブフローの出現時に改ページを行う場合の番号設定処理の処理手順を示すフローチャートである。サブフローとは、既に説明したように、入れ子になっている他のフローチャートへのリンクを示すノードである。フローチャート中にこのようなノードがあった場合、フローチャートに関連する文書では、そのノードの部分でページを改めた方が見やすい文書となる場合がある。当該のフローチャートは、このように、サブフローの出現時に改ページを行う場合の処理手順を示すものである。 FIG. 23 is a flowchart showing the processing procedure of the number setting process when a page number is added and a page break is performed when a subflow appears. A subflow is a node indicating a link to another nested flowchart as described above. If there is such a node in the flowchart, a document related to the flowchart may be a document that is easier to see if the page is changed at the node. In this way, the flowchart shows a processing procedure when a page break is performed when a subflow appears.
同図に示すように、番号設定部123は、現在処理対象になっているノードがサブフローでなければ、すなわち、現在処理対象になっているノードのtypeの値を参照し、その値が「サブフロー」でなければ(ステップS601否定)、図22に示したステップS501〜509と同様の処理であるステップS602〜609を実行する。
As shown in the figure, the
一方、ように、番号設定部123は、現在処理対象になっているノードがサブフローであれば(ステップS601肯定)、ページ番号に1を加算し(ステップS610)、ページ内位置に0を設定した後(ステップS611)、サブフローが示すフローチャートについて図18に示したステップS102以降を実行して番号付与処理を行う(ステップS612)。そして、サブフローが示すフローチャートについて番号付与処理を行った後は、ページ番号に1を加算し(ステップS613)、ページ内位置に0を設定して処理を終了する(ステップS614)。
On the other hand, the
なお、上記の処理手順では、サブフローが出現した場合には常に改ページをすることとしているが、改ページが多くなり余白が大きいページが多数できるのも不都合であるため、サブフローが出現した場合にページ内位置の値を確認し、この値が小さければ(例えば、1ページないに出力可能な高さの1/4以下であれば)、改ページを行わないこととしてもよい。 In the above processing procedure, page breaks are always performed when subflows appear, but it is also inconvenient that there are many pages with many page breaks and large margins, so when subflows appear. If the value of the position in the page is confirmed and this value is small (for example, if it is ¼ or less of the height that can be output in one page), the page break may not be performed.
上述してきたように、本実施例では、分岐部分では分岐先のノードの表示位置に基づいてどの経路を先に探索するかを決定し、合流部分では、その合流部分へ到達する全ての経路が探索されるまで待ち合わせを行うこととしたので、利用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することができる。 As described above, in this embodiment, the branch portion determines which route to search first based on the display position of the branch destination node, and in the merge portion, all the routes that reach the merge portion are determined. Since waiting is performed until the search is made, a number can be assigned to each node in the flowchart so that the user can easily understand the flow of the flowchart.
なお、図4に示した本実施例に係る番号付与装置100の構成は、本発明の要旨を逸脱しない範囲で種々に変更することができる。例えば、番号付与装置100の制御部120の機能をソフトウェアとして実装し、これをコンピュータで実行することにより、番号付与装置100と同等の機能を実現することもできる。以下に、制御部120の機能をソフトウェアとして実装した番号付与プログラム1071を実行するコンピュータの一例を示す。
Note that the configuration of the
図24は、番号付与プログラム1071を実行するコンピュータ1000を示す機能ブロック図である。このコンピュータ1000は、各種演算処理を実行するCPU(Central Processing Unit)1010と、ユーザからのデータの入力を受け付ける入力装置1020と、各種情報を表示するモニタ1030と、記録媒体からプログラム等を読み取る媒体読取り装置1040と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置1050と、各種情報を一時記憶するRAM(Random Access Memory)1060と、ハードディスク装置1070とをバス1080で接続して構成される。
FIG. 24 is a functional block diagram showing a
そして、ハードディスク装置1070には、図4に示した制御部120と同様の機能を有する番号付与プログラム1071と、図4に示した記憶部110に記憶される各種データに対応する番号付与用データ1072とが記憶される。なお、番号付与用データ1072を、適宜分散させ、ネットワークを介して接続された他のコンピュータに記憶させておくこともできる。
The
そして、CPU1010が番号付与プログラム1071をハードディスク装置1070から読み出してRAM1060に展開することにより、番号付与プログラム1071は、番号付与プロセス1061として機能するようになる。そして、番号付与プロセス1061は、番号付与用データ1072から読み出した情報等を適宜RAM1060上の自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種データ処理を実行する。
Then, the
なお、上記の番号付与プログラム1071は、必ずしもハードディスク装置1070に格納されている必要はなく、CD−ROM等の記憶媒体に記憶されたこのプログラムを、コンピュータ1000が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等を介してコンピュータ1000に接続される他のコンピュータ(またはサーバ)等にこのプログラムを記憶させておき、コンピュータ1000がこれらからプログラムを読み出して実行するようにしてもよい。
The
(付記1)フローチャートに含まれるノードと遷移の各種属性情報を保持する構成要素情報と、ノードと遷移を図示するための位置と形状に関する情報を保持する図形情報とによって表現されるフローチャート中の各ノードに番号を付与する番号付与プログラムであって、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索手順と、
前記フローチャート探索手順によって訪問された順にノードに番号を付与する番号設定手順とをコンピュータに実行させ、
前記フローチャート探索手順は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、それらの経路における直近のノードの表示位置を前記図形情報から取得し、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を決定し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与プログラム。
(Supplementary Note 1) Each element in the flowchart represented by component information that holds various attribute information of nodes and transitions included in the flowchart, and graphic information that holds information about positions and shapes for illustrating the nodes and transitions A numbering program for assigning numbers to nodes,
With reference to the component information, a flowchart search procedure for visiting a node in the flowchart while following the transition from the start node of the flowchart,
Causing the computer to execute a number setting procedure for assigning numbers to nodes in the order visited by the flowchart search procedure;
In the flowchart search procedure, when there are a plurality of routes from the visited node to other nodes, the display position of the nearest node in those routes is acquired from the graphic information, and the size of the coordinates of the display position is obtained. If there are multiple routes that reach the visited node from other nodes, the visited node is searched until the search of all the routes is completed. A numbering program characterized by not searching for a node ahead of.
(付記2)フローチャートの向きを判定する方向判定手順をさらにコンピュータに実行させ、
前記フローチャート探索手順は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、前記方向判定手順の判定結果によって、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を変更することを特徴とする付記1に記載の番号付与プログラム。
(Additional remark 2) Let a computer further perform the direction determination procedure which determines the direction of a flowchart,
In the flowchart search procedure, when there are a plurality of routes from the visiting node to other nodes, the routes are searched based on the size of the coordinates of the display position based on the determination result of the direction determination procedure. The numbering program according to
(付記3)前記番号設定手順は、フローチャートに含まれるノードの属性情報が出力される文書の書式情報を参照して、各ノードが該文書のどのページに出力されるかを算出し、前記フローチャート探索手順によって訪問された順にノードに番号を付与する場合に、該ノードが該文書に出力されるページのページ番号をさらにノードに付与することを特徴とする付記1または2に記載の番号付与プログラム。
(Supplementary Note 3) The number setting procedure refers to the format information of the document in which the attribute information of the node included in the flowchart is output, calculates to which page of the document each node is output, and the flowchart The number assigning program according to
(付記4)前記番号設定手順は、フローチャートが階層的に作成されており、前記フローチャート探索手順によって探索される階層が変化した場合に、フローチャートに含まれるノードの属性情報が出力される文書が改ページされたものとみなして、各ノードが該文書のどのページに出力されるかを算出することを特徴とする付記3に記載の番号付与プログラム。
(Supplementary note 4) In the number setting procedure, when a flowchart is created hierarchically and the hierarchy searched by the flowchart search procedure is changed, the document in which the attribute information of the node included in the flowchart is output is revised. The number assigning program according to
(付記5)フローチャートに含まれるノードと遷移の各種属性情報を保持する構成要素情報と、ノードと遷移を図示するための位置と形状に関する情報を保持する図形情報とによって表現されるフローチャート中の各ノードに番号を付与する番号付与装置であって、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索手段と、
前記フローチャート探索手段によって訪問された順にノードに番号を付与する番号設定手段とを備え、
前記フローチャート探索手段は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、それらの経路における直近のノードの表示位置を前記図形情報から取得し、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を決定し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与装置。
(Additional remark 5) Each element in the flowchart represented by the component information holding various attribute information of nodes and transitions included in the flowchart, and the graphic information holding the position and shape information for illustrating the nodes and transitions A numbering device for assigning numbers to nodes,
With reference to the component information, a flowchart search means for visiting a node in the flowchart while following the transition, starting from the start node of the flowchart;
Number setting means for assigning numbers to nodes in the order visited by the flowchart search means,
When there are a plurality of routes from the visited node to other nodes, the flowchart search means obtains the display position of the nearest node in the route from the graphic information, and the size of the coordinates of the display position If there are multiple routes that reach the visited node from other nodes, the visited node is searched until the search of all the routes is completed. A numbering device characterized by not searching for a node ahead of the number.
(付記6)フローチャートに含まれるノードと遷移の各種属性情報を保持する構成要素情報と、ノードと遷移を図示するための位置と形状に関する情報を保持する図形情報とによって表現されるフローチャート中の各ノードに番号を付与する番号付与方法であって、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索ステップと、
前記フローチャート探索ステップによって訪問された順にノードに番号を付与する番号設定ステップとを含み、
前記フローチャート探索ステップは、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、それらの経路における直近のノードの表示位置を前記図形情報から取得し、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を決定し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与方法。
(Additional remark 6) Each element in the flowchart represented by the component information holding various attribute information of nodes and transitions included in the flowchart, and the graphic information holding the position and shape information for illustrating the nodes and transitions A numbering method for assigning numbers to nodes,
With reference to the component information, a flowchart search step of visiting a node in the flowchart while following the transition starting from the start node of the flowchart; and
A number setting step of assigning numbers to the nodes in the order visited by the flowchart search step,
In the flowchart search step, when there are a plurality of routes from the visiting node to other nodes, the display position of the nearest node in those routes is acquired from the graphic information, and the size of the coordinates of the display position is obtained. If there are multiple routes that reach the visited node from other nodes, the visited node is searched until the search of all the routes is completed. A numbering method characterized by not searching for a node ahead of the number.
以上のように、本発明に係る番号付与プログラム、番号付与装置および番号付与方法は、フローチャート中の各ノードに番号を付与する場合に有用であり、特に、用者がフローチャートの流れの理解しやすいように、フローチャート中の各ノードに番号を付与することが必要な場合に適している。 As described above, the numbering program, the numbering device, and the numbering method according to the present invention are useful when assigning numbers to each node in the flowchart, and in particular, the user can easily understand the flow of the flowchart. Thus, it is suitable when it is necessary to assign a number to each node in the flowchart.
11〜15 業務フロー図
21 開始ノード
22 終了ノード
23a〜23f 業務プロセス
24 分岐ノード
25 合流ノード
31a〜31j 遷移
41 業務フロー
42 ノード
43 遷移
44 サブフロー
45 制御ノード
45a 開始
45b 終了
45c 条件分岐
45d 並列分岐
46 業務プロセス
46a 属性
51 業務フロー
52 図形情報
52a 接続ポイント
53 矩形情報
54 線情報
61 スタック
62 訪問済みリスト
63 待合せマップ
100 番号付与装置
110 記憶部
111 構成要素情報
112 図形情報
113 書式情報
114 フォント情報
120 制御部
121 方向判定部
122 フローチャート探索部
123 番号設定部
1000 コンピュータ
1010 CPU
1020 入力装置
1030 モニタ
1040 媒体読取り装置
1050 ネットワークインターフェース装置
1060 RAM
1061 番号付与プロセス
1070 ハードディスク装置
1071 番号付与プログラム
1072 番号付与用データ
1080 バス
11-15 Business Flow Diagram 21
1020
1061
Claims (6)
前記図形情報を参照して、フローチャートの向きを判定する方向判定手順と、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索手順と、
前記フローチャート探索手順によって訪問された順にノードに番号を付与する番号設定手順とをコンピュータに実行させ、
前記方向判定手順は、前記図形情報に含まれるノードの中心座標とノード及び遷移の接続ポイントの座標とを用いて、ノード及び遷移の接続ポイントごとに当該遷移が横遷移または縦遷移のいずれであるかを判定し、横遷移の数と縦遷移の数とを、処理対象のフローチャートに含まれる全ノードについてそれぞれ集計した上で比較することによってフローチャートの向きを判定し、
前記フローチャート探索手順は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、前記方向判定手順の判定結果によって、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を変更し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与プログラム。 A number is assigned to each node in the flowchart represented by the component information that holds various attribute information of the nodes and transitions included in the flowchart, and the graphic information that holds information on the position and shape for illustrating the nodes and transitions. A numbering program to grant,
A direction determination procedure for determining the direction of the flowchart with reference to the graphic information;
With reference to the component information, a flowchart search procedure for visiting a node in the flowchart while following the transition from the start node of the flowchart,
Causing the computer to execute a number setting procedure for assigning numbers to nodes in the order visited by the flowchart search procedure;
The direction determination procedure uses a center coordinate of a node and coordinates of a node and a transition connection point included in the graphic information, and the transition is a horizontal transition or a vertical transition for each node and transition connection point. Determine the direction of the flowchart by comparing the total number of horizontal transitions and the number of vertical transitions for all nodes included in the processing target flowchart ,
In the flowchart search procedure, when there are a plurality of routes from the visiting node to other nodes, the routes are searched based on the size of the coordinates of the display position based on the determination result of the direction determination procedure. If there are multiple routes that reach the visited node from other nodes, the search is made for the nodes ahead of the visiting node until the search for all of those routes is completed. Numbering program characterized by not having.
前記図形情報を参照して、フローチャートの向きを判定する方向判定手段と、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索手段と、
前記フローチャート探索手段によって訪問された順にノードに番号を付与する番号設定手段とを備え、
前記方向判定手段は、前記図形情報に含まれるノードの中心座標とノード及び遷移の接続ポイントの座標とを用いて、ノード及び遷移の接続ポイントごとに当該遷移が横遷移または縦遷移のいずれであるかを判定し、横遷移の数と縦遷移の数とを、処理対象のフローチャートに含まれる全ノードについてそれぞれ集計した上で比較することによってフローチャートの向きを判定し、
前記フローチャート探索手段は、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、前記方向判定手段の判定結果によって、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を変更し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与装置。 A number is assigned to each node in the flowchart represented by the component information that holds various attribute information of the nodes and transitions included in the flowchart, and the graphic information that holds information on the position and shape for illustrating the nodes and transitions. A numbering device for giving,
Direction determining means for determining the direction of the flowchart with reference to the graphic information;
With reference to the component information, a flowchart search means for visiting a node in the flowchart while following the transition, starting from the start node of the flowchart;
Number setting means for assigning numbers to nodes in the order visited by the flowchart search means,
The direction determination means uses the center coordinates of the nodes and the coordinates of the nodes and transition connection points included in the graphic information, and the transition is either a horizontal transition or a vertical transition for each node and transition connection point. Determine the direction of the flowchart by comparing the total number of horizontal transitions and the number of vertical transitions for all nodes included in the processing target flowchart ,
When there are a plurality of routes from the visited node to another node, the flowchart search unit searches for the route based on the size of the coordinates of the display position based on the determination result of the direction determination unit. If there are multiple routes that reach the visited node from other nodes, the search is made for the nodes ahead of the visiting node until the search for all of those routes is completed. No. numbering device characterized by not having.
前記図形情報を参照して、フローチャートの向きを判定する方向判定ステップと、
前記構成要素情報を参照して、フローチャートの開始ノードを起点として、遷移を辿りながらフローチャート内のノードを訪問していくフローチャート探索ステップと、
前記フローチャート探索ステップによって訪問された順にノードに番号を付与する番号設定ステップとを含み、
前記方向判定ステップは、前記図形情報に含まれるノードの中心座標とノード及び遷移の接続ポイントの座標とを用いて、ノード及び遷移の接続ポイントごとに当該遷移が横遷移または縦遷移のいずれであるかを判定し、横遷移の数と縦遷移の数とを、処理対象のフローチャートに含まれる全ノードについてそれぞれ集計した上で比較することによってフローチャートの向きを判定し、
前記フローチャート探索ステップは、訪問しているノードから他のノードへ向かう経路が複数存在する場合に、前記方向判定ステップの判定結果によって、表示位置の座標の大きさに基づいてそれらの経路を探索する順序を変更し、訪問しているノードへ他のノードから到達する経路が複数存在する場合に、それら全ての経路の探索が完了するまで、訪問しているノードよりも前方のノードの探索を行わないことを特徴とする番号付与方法。 A number is assigned to each node in the flowchart represented by the component information that holds various attribute information of the nodes and transitions included in the flowchart, and the graphic information that holds information on the position and shape for illustrating the nodes and transitions. A numbering method for giving,
A direction determination step for determining the orientation of the flowchart with reference to the graphic information;
With reference to the component information, a flowchart search step of visiting a node in the flowchart while following the transition starting from the start node of the flowchart; and
A number setting step of assigning numbers to the nodes in the order visited by the flowchart search step,
The direction determination step uses the center coordinates of the node and the coordinates of the node and transition connection point included in the graphic information, and the transition is either a horizontal transition or a vertical transition for each node and transition connection point. Determine the direction of the flowchart by comparing the total number of horizontal transitions and the number of vertical transitions for all nodes included in the processing target flowchart ,
In the flowchart search step, when there are a plurality of routes from the visiting node to other nodes, the routes are searched based on the size of the coordinates of the display position according to the determination result of the direction determination step. If there are multiple routes that reach the visited node from other nodes, the search is made for the nodes ahead of the visiting node until the search for all of those routes is completed. The numbering method characterized by not having.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007127327A JP5211546B2 (en) | 2007-05-11 | 2007-05-11 | Number assigning program, number assigning apparatus and number assigning method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007127327A JP5211546B2 (en) | 2007-05-11 | 2007-05-11 | Number assigning program, number assigning apparatus and number assigning method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008282286A JP2008282286A (en) | 2008-11-20 |
JP5211546B2 true JP5211546B2 (en) | 2013-06-12 |
Family
ID=40143034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007127327A Expired - Fee Related JP5211546B2 (en) | 2007-05-11 | 2007-05-11 | Number assigning program, number assigning apparatus and number assigning method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5211546B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112800282B (en) * | 2021-01-15 | 2022-11-08 | 厦门大学 | Tracing method for abnormal nodes of business process |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816378A (en) * | 1994-06-30 | 1996-01-19 | Fujitsu Ltd | Method and device for analyzing program reverse |
JPH0962497A (en) * | 1995-08-25 | 1997-03-07 | Matsushita Electric Works Ltd | Software design support system |
-
2007
- 2007-05-11 JP JP2007127327A patent/JP5211546B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008282286A (en) | 2008-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4079087B2 (en) | Layout system | |
US8078962B2 (en) | Apparatus and method for generating web site navigations | |
US8655921B2 (en) | True/false decision method for deciding whether search query containing logical expression is true or false | |
JP5866922B2 (en) | Search device and program | |
JP2010055483A (en) | Information reacquisition procedure generation program and information reacquisition procedure generation device | |
JP2007334783A (en) | Parts catalogue preparing method, and parts catalogue preparing device | |
US20130346931A1 (en) | Timing error removing method and design support apparatus | |
JP5630863B2 (en) | Method, apparatus, and computer program for determining and visualizing total order relation of nodes included in structured document based on log information | |
JPH11184894A (en) | Method for extracting logical element and record medium | |
JP5211546B2 (en) | Number assigning program, number assigning apparatus and number assigning method | |
JP6977565B2 (en) | Search result output program, search result output device and search result output method | |
JP2005182460A (en) | Information processor, annotation processing method, information processing program, and recording medium having information processing program stored therein | |
JP2011100208A (en) | Action estimation device, action estimation method, and action estimation program | |
US10891426B2 (en) | Editing program, editing device, and editing method for editing text and displaying the edited text | |
CN111859923A (en) | Information processing apparatus, recording medium, and information processing method | |
CN113987106A (en) | Electronic book bookmark adding method, electronic equipment and storage medium | |
CN109726262B (en) | Bus route query method and device, terminal device and readable storage medium | |
CN113177391A (en) | Method for redirecting operation cursor in streaming interface, computing equipment and storage medium | |
JP4960188B2 (en) | Screen transition diagram display method and system | |
JP6753190B2 (en) | Document retrieval device and program | |
JP2002207768A (en) | Information processing system, its method and recording medium recorded with information processing program operating on computer | |
JP6575219B2 (en) | Item value association processing method, item value association processing program, and information processing apparatus | |
CN111738326B (en) | Sentence granularity annotation training sample generation method and device | |
JP4946397B2 (en) | Information processing system, information processing apparatus, and information processing program | |
JP2013061702A (en) | Structured document processing device, method for determining similar area in structured document, and program for determining similar area in structured document |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120703 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120903 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130211 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5211546 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160308 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |