フローチャートを構成する、複数のノードと前記複数のノード間を接続し前記ノードの処理手順を示すコネクタとの表示位置を調整し、表示装置に表示させるフローチャート描画装置であって、前記ノードおよび前記コネクタの前記表示位置を示す座標情報、並びに、前記ノードと前記コネクタとの接続情報を含むパーツ情報が記憶される記憶部と、入力装置から前記フローチャートに追加されるノードに関する情報の入力を受け付けるデータ入力部と、前記入力されたノードの表示位置と、前記フローチャートを構成する前記コネクタの表示位置とが重複するか否かを前記パーツ情報に基づき判定し、前記入力されたノードが前記コネクタと重複すると判定した場合に、前記重複したコネクタと接続する上位のノードと下位のノードとの間に、前記入力されたノードを挿入するように、前記ノード間の接続関係を決定し、前記入力されたノードと前記上位のノードとを接続するコネクタ、および前記入力されたノードと前記下位のノードとを接続するコネクタを、前記フローチャートの前記パーツ情報に新たに設定するパーツ情報管理部と、前記上位のノードの表示位置を基準として、前記入力されたノード、前記下位のノード、前記入力されたノードと前記上位のノードとを接続するコネクタ、および、前記入力されたノードと前記下位のノードとを接続するコネクタの表示位置を決定するフロー位置計算部と、前記決定した表示位置に基づき、前記フローチャートを前記表示装置に表示させるフロー表示部と、を備えることを特徴とするフローチャート描画装置。前記パーツ情報管理部は、前記入力されたノードの表示位置と、前記フローチャートを構成する前記ノードの表示位置とが重複するか否かを前記パーツ情報に基づき判定し、前記入力されたノードが前記ノードと重複すると判定した場合に、処理のフローを分岐させる分岐ノードを、前記フローチャートの前記パーツ情報に新たに設定し、前記新たに設定した分岐ノードの分岐先として、前記入力されたノードおよび前記重複したノードを設定し、前記フロー位置計算部は、前記設定した分岐ノードを基準として、前記入力されたノードおよび前記重複したノードを均等に配置するように表示位置を決定することを特徴とする請求の範囲第1項に記載のフローチャート描画装置。前記フロー位置計算部は、前記分岐ノードの分岐先となる、当該分岐ノードの下位に位置する前記ノードおよび前記コネクタの集合それぞれをノードグループとして設定し、前記ノードグループを構成する各ノードおよび各コネクタの表示位置の前記座標情報を前記パーツ情報から取得し、前記ノードグループを構成する各ノードおよび各コネクタを含む最小の矩形を、前記ノードグループそれぞれについて計算し、前記計算したノードグループの矩形が他のノードグループの矩形と重複する場合に、前記分岐ノードの表示位置を基準として、前記重複した前記ノードグループの表示位置を変更することを特徴とする請求の範囲第2項に記載のフローチャート描画装置。フローチャートを構成する、複数のノードと前記複数のノード間を接続し前記ノードの処理手順を示すコネクタとの表示位置を調整し、表示装置に表示させるフローチャート描画装置のフローチャート描画方法であって、前記フローチャート描画装置は、前記ノードおよび前記コネクタの前記表示位置を示す座標情報、並びに、前記ノードと前記コネクタとの接続情報を含むパーツ情報が記憶される記憶部を備えており、入力装置から前記フローチャートに追加されるノードに関する情報の入力を受け付けるステップと、前記入力されたノードの表示位置と、前記フローチャートを構成する前記コネクタの表示位置とが重複するか否かを前記パーツ情報に基づき判定し、前記入力されたノードが前記コネクタと重複すると判定した場合に、前記重複したコネクタと接続する上位のノードと下位のノードとの間に、前記入力されたノードを挿入するように、前記ノード間の接続関係を決定するステップと、前記入力されたノードと前記上位のノードとを接続するコネクタ、および前記入力されたノードと前記下位のノードとを接続するコネクタを、前記フローチャートの前記パーツ情報に新たに設定するステップと、前記上位のノードの表示位置を基準として、前記入力されたノード、前記下位のノード、前記入力されたノードと前記上位のノードとを接続するコネクタ、および、前記入力されたノードと前記下位のノードとを接続するコネクタの表示位置を決定するステップと、前記決定した表示位置に基づき、前記フローチャートを前記表示装置に表示させるステップと、を実行することを特徴とするフローチャート描画方法。前記入力されたノードの表示位置と、前記フローチャートを構成する前記ノードの表示位置とが重複するか否かを前記パーツ情報に基づき判定し、前記入力されたノードが前記ノードと重複すると判定した場合に、処理のフローを分岐させる分岐ノードを、前記フローチャートの前記パーツ情報に新たに設定し、前記新たに設定した分岐ノードの分岐先として、前記入力されたノードおよび前記重複したノードを設定するステップと、前記設定した分岐ノードを基準として、前記入力されたノードおよび前記重複したノードを均等に配置するように表示位置を決定するステップと、をさらに実行することを特徴とする請求の範囲第4項に記載のフローチャート描画方法。前記分岐ノードの分岐先となる、当該分岐ノードの下位に位置する前記ノードおよび前記コネクタの集合それぞれをノードグループとして設定し、前記ノードグループを構成する各ノードおよび各コネクタの表示位置の前記座標情報を前記パーツ情報から取得し、前記ノードグループを構成する各ノードおよび各コネクタを含む最小の矩形を、前記ノードグループそれぞれについて計算し、前記計算したノードグループの矩形が他のノードグループの矩形と重複する場合に、前記分岐ノードの表示位置を基準として、前記重複した前記ノードグループの表示位置を変更することを特徴とする請求の範囲第5項に記載のフローチャート描画方法。請求の範囲第4項ないし請求の範囲第6項のいずれか1項に記載のフローチャート描画方法をコンピュータの実行させるためのプログラム。この特許文献1に記載の技術は、完成したフローチャートの全貌を見た後に編集することができない。また、対象とする業務フローの構成要素が少なく、複雑な形をとらないため、見やすさを考慮に入れていない方法である。通常、新規オブジェクトの追加によって完成したフローチャートを見て、他のオブジェクトとインデントをそろえたり、ユーザに見やすくするためにスペースをとるなどの見た目を目的とした調整作業が発生する。フローチャートのオブジェクトを描画編集するソフトウェアにおいて、見た目調整の作業は必須であり、かつ、二次的な作業であるにもかかわらず多くの工数を要していた。また、特許文献2に記載の技術は、ツールによって形の決まる接続線の配置に着目しているものである。しかしながら、フローチャートを作成するユーザは、フローチャート全体の形を見て、接続線だけでなくオブジェクトの位置を更に手作業により調整する必要があった。つまり、ユーザは、オブジェクトを追加する場合に、ユーザ自身により、フローチャート全体の形を調整する必要があり、手間のかかるものであった。このような背景に鑑みて本発明がなされたのであり、本発明は、フローチャート作成の編集効率を向上することができる、フローチャート描画装置、フローチャート描画方法およびプログラムを提供することを目的とする。本発明に係るフローチャート描画装置は、ノードおよびノード間を接続する接続線であるコネクタの表示位置を示す座標情報、並びに、ノードとコネクタとの接続情報を含むパーツ情報パーツ情報テーブルを記憶する記憶部を備える。そして、入力装置からフローチャートに追加されるノードに関する情報の入力を受け付けると、入力されたノードの表示位置と、フローチャートを構成するコネクタの表示位置とが重複するか否かをパーツ情報に基づき判定する。そして、入力されたノードがコネクタと重複すると判定した場合に、重複したコネクタと接続する上位のノードと下位のノードとの間に、入力されたノードを挿入するように、ノード間の接続関係を決定する。そして、フローチャート描画装置は、上位のノードの表示位置を基準として、フローチャートを構成するノードおよびコネクタの表示位置を決定し、表示装置にフローチャートを表示させる。本発明によれば、フローチャート作成の編集効率を向上する、フローチャート描画装置、フローチャート描画方法およびプログラムを提供することができる。処理概要まず、本実施形態に係るフローチャート描画装置1の処理概要を説明する。本実施形態に係るフローチャート描画装置1が処理を行うフローチャートは、例えば、後記する図2や図21等に示すフローチャートである。これらのフローチャートは、処理や分岐等を示すノードで構成され、各ノード間が矢印付きの線以下、コネクタと呼ぶ。で結線される。このノードとコネクタとを総称してパーツと呼ぶ。また、ノードには、以下の種類がある。1開始および終了を示し、楕円形で表示されるノード。以下、開始を示すノードを、開始ノードと呼ぶ。2処理を示し、矩形で表示されるノード。以下、プロセスと呼ぶ。3分岐を示し、ひし形で表示されるノード。以下、分岐ノードと呼ぶ。なお、本実施形態においては、例示していないが、フローにおける処理の合流をひし形の合流ノードとしてフローチャートに表示させてもよい。本実施形態に係るフローチャート描画装置1は、表示画面上に表示されたフローチャートの既存のパーツに、ユーザが、新たなプロセスを重ねて配置させることで、予め設定された接続関係に基づき、新たなプロセスを追加したフローチャートの配置を決定する。具体的には、新たなプロセスを追加するユーザの操作に、以下に示す2つの接続関係の処理の実行を設定しておく。まず、図2に示したフローチャートが表示されている場合、図5に示すように、プロセスA003とプロセスB005との間のコネクタ矢印004に重なるように、新たなプロセスC006がユーザにより配置される。すると、本実施形態に係るフローチャート描画装置1は、後記する図9に示すように、新たなプロセスC006を、プロセスA003とプロセスB005との間に挿入する処理を行うものと判定し、処理を実行する。なお、このように、フローの上方から下方に向けて接続されたノード間に新たなプロセスを挿入する処理、または、ノード間の接続関係を、以下順接接続と呼ぶ。また、図14aに示すように、既存のプロセスプロセスA003と重なるように、新たなプロセスC006がユーザにより配置される。すると、本実施形態に係るフローチャート描画装置1は、後記する図21のように、新たなプロセスC006と、既存のプロセスA003とを、並列に接続する処理を行うものと判定し、新たなノードとして分岐ノード分岐ノード007を追加した上で、既存のプロセスプロセスA003と新たなプロセスC006とを並列に接続する。なお、このように、フローをある条件によって分岐し、その分岐先の一方のプロセスと他方のプロセスを並列に接続させる処理、または、ノード間の接続関係を、以下並接接続と呼ぶ。本実施形態に係るフローチャート描画装置1は、ユーザの操作に対応付けて、フローチャートの接続関係を予め定義しておくことで、新たに入力されるプロセスを、順接接続あるいは並接接続として設定する処理を実行する。このようにすることで、ユーザは、新たなプロセスの入力を行う場合に、既存のプロセスの配置の変更を自ら行う必要がなく、作業効率を向上させることができる。また、フローチャート描画装置1は、新たに入力されたプロセスの接続が終了した後、既存のパーツの大きさに合わせて自動で全体の整形を行う。このようにすることで、ユーザは、既存のパーツとのバランスを考えながら、追加したパーツのレイアウトを微調整する必要がなくなる詳細は後記する。フローチャート描画装置の構成図1は、本実施形態に係るフローチャート描画装置1の構成例を示す機能ブロック図である。図1に示すように、フローチャート描画装置1は、CPUCentralProcessingUnit10と、メモリ部20と、記憶部30と、入出力部40とを含んで構成される。CPU10は、フローチャート描画装置1全体の制御および演算を行う。また、入出力部40は、入力インタフェース41と出力インタフェース42とを備える。そして、入出力部40は、入力インタフェース41を介して、マウスやキーボード等の入力装置2からの情報の入力を受け付ける。また、入出力部40は、出力インタフェース42を介して、フローチャート描画装置1の処理結果であるフローチャートを、表示装置3のディスプレイ等に表示させる。なお、この入力インタフェース41は、図示していない可搬型記憶デバイスと接続することができ、後記するフローチャート描画部200を実行させるプログラムが格納された可搬型記憶デバイスが接続されると、記憶部30に転送したり、メモリ部20へ直接記憶させるようにすることもできる。記憶部30は、フラッシュメモリ、ハードディスク等の記憶手段からなり、パーツ情報テーブル300等を記憶する。図3は、本実施形態に係るパーツ情報テーブルパーツ情報300のデータ構成の一例を示す図である。図3に示すパーツ情報テーブル300のデータは、図2に示すフローチャートの各パーツに関する情報を示すものである。パーツ情報テーブル300は、ID301、Type302、Name303、接続元パーツ304、接続先パーツ305、位置座標306、寸法307、重心位置308、ノードグループ309、および一時情報310を含んで構成される。なお、接続元パーツ304および接続先パーツ305の情報が、請求項の接続情報に該当する。また、位置座標306、寸法307および重心位置308の情報が、請求項の表示位置を示す座標情報に該当する。ID301は、対象となるフローチャートの各パーツに一意に付される識別子である。Type302は、パーツの種類を示し、開始ノード等を示すTerminal、コネクタ矢印を示すConnector、プロセスを示すProcess、分岐ノードを示すBranch不図示等が格納される。Name303は、パーツの名称を表す。なお、パーツの名称が付されていない場合は、NONAMEが格納される。接続元パーツ304は、From341とFromPort342の情報を含んで構成される。このFrom341には、そのパーツの上位に接続する接続元のパーツのID番号ID301が格納される。FromPort342は、そのパーツがプロセスの場合、表示画面上において、矩形の上方Upper、下方Lower、左方Left、右方Rightのどの位置で接続元のコネクタと接続されているかを示す。例えば、ID301が003のプロセスA003の場合は、図2に示すように、プロセスA003を表す矩形の上方Upperで、コネクタ002ID:002と接続されることを示している。接続先パーツ305は、To351とToPort352の情報を含んで構成される。このTo351は、そのパーツの下位に接続する接続先のパーツのID番号ID301が格納される。ToPort352は、そのパーツがプロセスの場合、表示画面上において、プロセスを示す矩形の上方Upper、下方Lower、左方Left、右方Rightのどの位置で接続先のコネクタと接続されているかを示す。例えば、ID301が003のプロセスA003の場合は、図2に示すように、プロセスA003を表す矩形の下方Lowerで、コネクタ004ID:004と接続されることを示している。なお、パーツの種類が分岐ノードBranchの場合は、複数のコネクタが接続先パーツ305に設定される詳細は後記する。位置座標306は、そのパーツがノードの場合は、ノードを囲む最小の矩形の左上端の座標x値、y値を表す。例えば、ID301が001の開始ノード001の位置座標306は、開始ノード001を表す楕円を囲む最小の矩形の左上端の座標100、20を表す図2参照。また、そのパーツがコネクタの場合は、接続元のパーツの矢印の始点を表す。例えば、ID301が004のコネクタ004の位置座標306は、コネクタ004の矢印の始点である座標120、100を表す図2参照。寸法307は、そのパーツの幅w値と高さh値とを表す。本実施例においては、プロセス矩形の幅w値を60、高さh値を20。コネクタ矢印の幅w値を0、高さh値を40。分岐ノードひし形の幅w値を40、高さh値を20、として説明するが、各パーツの基本となる寸法307は任意に設定することができる。重心位置308は、各パーツの重心のx座標、y座標であるcx値、cy値を表す。ノードグループ309は、分岐ノード若しくは合流ノードを境にしたパーツの集合を表す。後記するフローチャートの表示位置調整処理図10、図18参照は、同じノードグループ309内のパーツについて行う詳細は後記。図2に示すフローチャートにおいては、分岐ノード、合流ノードは存在しないので、各パーツは同じノードグループ309であるN1が設定される。なお、複数のフローの合流を示す合流ノードを、ひし形のノードとしてフローチャートに図示しない場合矢印のみでフローの合流を示すもあるが、その場合であっても、本実施形態におけるパーツ情報テーブル300の接続元パーツ304の項目に、複数の接続元パーツが設定されている場合には、仮想的に合流ノードが存在するものとしてノードグループ309の編成処理を行うようにしてもよい。一時情報310は、Add311とTarget312の情報を含んで構成される。Add311は、フローチャートに、追加して入力されたノードを示す一時情報310である。また、Target312は、フローチャートに、追加して入力されたノードと重なったパーツを示す一時情報310である。なお、この一時情報310については、後記する図6、図7において詳細に説明する。図1に戻り、メモリ部20は、RAMRandomAccessMemory等の一次記憶装置からなり、メモリ部20上には、フローチャート描画部200がプログラムとして読み込まれている。このフローチャート描画部200は、フローチャート描画装置1全体の制御を行い、データ入力部201と、パーツ情報管理部202と、フロー位置計算部203と、フロー表示部204とを含んで構成される。なお、このフローチャート描画部200は、例えばフローチャート描画装置1の記憶部30に記憶されたプログラムを、CPU10がメモリ部20に展開し実行することで実現される。また、このフローチャート描画部200は、集積回路化するなどしてハードウェアで実現するようにしてもよい。データ入力部201は、ユーザによる入力装置2の操作により、入出力部40を介して新たに追加されたパーツの入力を受け付ける。そして、データ入力部201は、受け付けたパーツの情報を、パーツ情報管理部202に出力する。パーツ情報管理部202は、入力されたパーツの情報を、一時情報310として、記憶部30内のパーツ情報テーブル300に記憶する。また、パーツ情報管理部202は、入力されたパーツがプロセスであり、そのプロセスの配置が、パーツ情報テーブル300に記憶されている既存のパーツであるコネクタまたはプロセスと重複するか否かを判定する。そして、パーツ情報管理部202は、入力されたプロセスが既存のコネクタと重複する場合には、ノード間に入力されたプロセスを挿入する順接接続を実行すると判定し、入力されたプロセスとその上位に位置するプロセスとを接続するためのコネクタ、および、入力されたプロセスとその下位に位置するプロセスとを接続するためのコネクタを、パーツ情報テーブル300に新たに設定する。また、パーツ情報管理部202は、入力されたプロセスが既存のプロセスと重複する場合には、入力されたプロセスと既存の重複したプロセスとを、並列に接続する並接接続を実行すると判定する。そして、パーツ情報管理部202は、パーツ情報テーブル300に分岐ノードを設定した上で、重複したプロセスと新たな入力されたプロセスとを並列に接続する。フロー位置計算部203は、パーツ情報管理部202が、順接接続を実行すると判定した場合に、入力されたプロセスと接続する上位と下位のプロセスを特定し、上位のプロセスの位置座標に基づき、入力されたプロセスのX座標を変更し、各プロセスが等間隔に配置されるようにY座標を変更する。なお、詳細は、図10に示す表示位置調整処理順接接続において説明する。また、フロー位置計算部203は、パーツ情報管理部202が、並接接続を実行すると判定した場合に、分岐ノードを中心として、分岐ノードよりも下位に接続するパーツを左右対称となるように配置する。なお、詳細は、図18に示す表示位置調整処理並接接続において説明する。さらに、フロー位置計算部203は、入力されたプロセスの属するノードグループにおける表示位置調整処理を終えると、ノードグループ整形処理を行う。ノードグループ整形処理において、フロー位置計算部203は、基準となる分岐ノードを支点として、各ノードグループが重ならないように、左右対称に設定する。なお、詳細は、図26に示すノードグループ整形処理において説明する。フロー表示部204は、パーツ情報管理部202を介して、パーツ情報テーブル300に記憶されたフローチャートの情報を取得し、入出力部40を介して、表示装置3にそのフローチャートの情報を出力し、表示装置3に表示させる。フローチャート描画処理次に、本実施形態に係るフローチャート描画装置1が行うフローチャート描画処理について説明する。≪順接接続≫図4は、本実施形態に係るフローチャート描画装置1が行うフローチャート描画処理順接接続の流れを示すフローチャートである。なお、本実施例では、図5に示すように、図2で示したフローチャートのコネクタ矢印004に、プロセスC006がユーザにより配置されることにより、フローチャート描画装置1が、順接接続の処理を行うものとして説明する。まず、フローチャート描画装置1のパーツ情報管理部202は、パーツ情報テーブル300におけるノードグループ309の編成を行うステップS101。具体的には、パーツ情報管理部202は、パーツ情報テーブル300内のノードグループ309を、分岐合流ノードを境にして、グループ化を行う。本実施例では、図3のパーツ情報テーブル300に示すように、すべてのパーツが同じノードグループN1に属する。次に、フローチャート描画装置1のフロー表示部204は、パーツ情報テーブル300の情報を取得し、フローチャートを表示装置3に出力し、描画させるステップS102。ここで表示されるフローチャートは、ユーザによる編集前のフローチャートであり、図2に示すように表示される。続いて、ユーザによる入力装置2の操作により、入出力部40を介して、データ入力部201が、新たに追加されるパーツの入力を受け付けるステップS103。具体的には、データ入力部201が、プロセスC006の入力を受け付ける図5参照。そして、パーツ情報管理部202は、入力されたパーツの情報、ここでは、プロセスC006の情報を、一時情報310としてパーツ情報テーブル300に記憶するステップS104。具体的には、図6に示すように、プロセスC006がパーツ情報テーブル300に追加される。ここで、パーツ情報管理部202は、プロセスC006がユーザにより追加された表示位置の情報から、ID301006、Type302Process、Name303Cを格納し、位置座標306、寸法307、重心位置308の情報を算出し格納する。また、パーツ情報管理部202は、確定していない接続元パーツ304および接続先パーツ305については、接続先、接続元が未確定であることを示すNEWという値を設定しておく。そして、パーツ情報管理部202は、入力された情報が、すべてのパーツに対する表示位置の調整を行う前の情報一時情報であることを示すものとして、一時情報310のAdd311に1を設定する。次に、パーツ情報管理部202は、ステップS103でユーザにより入力されたパーツが、プロセスであり、既存パーツであるコネクタと重複するか否かを判定するステップS105。ここで、重複とは、新たに追加されたプロセスと、既存のパーツとが、表示装置3のディスプレイ上で重なって表示されていることを意味する。図5に示すように、ユーザにより入力されたプロセスC006が、既存のパーツであるコネクタ004と重なって表示されている。このように、ユーザ操作において新たなプロセスを追加する際に、既存のコネクタに重ねてプロセスと追加することは、そのコネクタに繋がる上位と下位のプロセスの間に、追加したプロセスを挿入することを意味する。ステップS105において、入力されたパーツがプロセスであり、既存のコネクタと重複する場合にはステップS105→Yes、次のステップS106に進む。一方、入力されたパーツがプロセスでない場合や、プロセスであっても既存のコネクタと重複しない場合にはステップS105→No、ステップS110へ進む。次に、ステップS106において、パーツ情報管理部202は、入力されたプロセスに重複するコネクタの接続元および接続先のプロセスを抽出し、接続関係を決定する。ここでは、入力されたプロセスC006と重複するコネクタ004の接続元、接続先の各プロセスを、パーツ情報テーブル300のFrom341およびTo351の項目から抽出し、接続元としてプロセスA003を、接続先としてプロセスB005を得る。そして、パーツ情報管理部202は、入力されたプロセスの上位にあるプロセス抽出した接続元のプロセス、下位にあるプロセス抽出した接続先のプロセスそれぞれと、入力されたプロセスとを接続するコネクタを設定し、一時情報310としてパーツ情報テーブル300に記憶するステップS107。ステップS107の処理を、図7に示すパーツ情報テーブル300を用いて具体的に説明する。パーツ情報管理部202は、パーツ情報テーブル300において、ユーザにより入力されたプロセスC006と重複するパーツであるコネクタ004の一時情報310のTarget312に1を設定する。次に、パーツ情報管理部202は、新たなコネクタとして、プロセスC006とプロセスA003との間のコネクタ007、プロセスC006とプロセスB005との間のコネクタ008を追加する。そして、コネクタ007およびコネクタ008の一時情報310のAdd311に1を設定する。このステップS107の処理を終えた状態のフローチャートを説明のため示すと、図8のようになる。図4に戻り、次に、フローチャート描画装置1のフロー位置計算部203は、新規に追加したプロセスやコネクタを含め、ノードグループN1内のすべてのパーツの表示位置を調整するステップS108。このステップS108により、フローチャートの位置が調整された結果を図9に示す。なお、このフローチャートの表示位置調整処理順接接続の詳細は、図10において説明する。続いて、フロー位置計算部203は、ノードグループ整形処理を行うステップS109。このノードグループ整形処理は、パーツ情報テーブル300のノードグループ309の項目に複数のノードグループが存在する場合に実行されるものである。ここでは、ノードグループがN1の1つしか存在しないため、ノードグループ整形処理は行わないが、ノードグループ整形処理については後記において説明する図26参照。そして、フローチャート描画装置1は、ステップS108およびステップS109により、フローチャートの表示位置を決定すると、パーツ情報管理部202が、パーツ情報テーブル300の一時情報310を確定するステップS110。なお、パーツ情報管理部202による一時情報310の確定は、具体的には、パーツ情報テーブル300の一時情報310のAdd311およびTarget312に設定した値の削除処理を行うことである。そして、フロー表示部204は、確定したフローチャートを、入出力部40を介して、表示装置3のディスプレイに描画するステップS111。<表示位置調整処理順接接続>次に、図4のステップS108における表示位置調整処理順接接続について、図10を用いて説明する。図10は、本実施形態に係るフローチャート描画装置1の表示位置調整処理順接接続の流れを示すフローチャートである。まず、フローチャート描画装置1のフロー位置計算部203は、入力されたプロセスに接続する上位のプロセスと下位のプロセスとを特定するステップS201。具体的には、まず、フロー位置計算部203は、入力されたプロセスC006と接続関係にある上位のプロセスをパーツ情報テーブル300から探索する。ここで、フロー位置計算部203は、図7のパーツ情報テーブル300において、プロセスC006の接続元パーツ304のFrom341の項目から、上位のパーツがID番号007のコネクタ007であると抽出し、さらに、コネクタ007の接続元パーツ304のFrom341の項目から、コネクタ007の上位にあるパーツが、プロセスA003であることを特定する。同様に、フロー位置計算部203は、プロセスC006と接続関係にある下位のプロセスについて、プロセスC006の接続先パーツ305のTo351の項目から、下位のパーツがID番号008のコネクタ008であると抽出する。そして、コネクタ008の接続先パーツ305のTo351の項目から、コネクタ008の下位にあるパーツが、プロセスB005であることを特定する。次に、フロー位置計算部203は、ステップS201で特定した上位のプロセスおよび下位のプロセスの重心位置308のX座標であるcx値と、入力されたプロセスの重心位置308のX座標であるcx値とを比較し、入力されたプロセスの重心位置308のcx値のみが異なるか否かを判定するステップS202。ここでは、上位のプロセスであるプロセスA003のcx値および下位のプロセスであるプロセスB005のcx値と、入力されたプロセスであるプロセスC006のcx値とを比較する。そして、フロー位置計算部203は、上位のプロセスおよび下位のプロセスのcx値が同じ値であり、入力されたプロセスのcx値のみが異なる場合にはステップS202→Yes、次のステップS203に進む。ステップS203において、フロー位置計算部203は、入力されたプロセスの重心位置308のcx値を、上位のプロセスのcx値と同じ値に変更するステップS203。本実施例においては、上位のプロセスであるプロセスA003のcx値と下位のプロセスであるプロセスB005のcx値が同じであり、入力されたプロセスであるプロセスC006のcx値のみが異なるため、入力されたプロセスの重心位置308のcx値を、プロセスA003のcx値と同じ値に設定する。このステップS203の処理を終えた時点のパーツ情報テーブル300を図11に示し、この状態のフローチャートを図12に示す。図12に示すように、重心位置308のcx値が各プロセスにおいて同じ値となっている。一方、図10に戻り、ステップS202において、上位のプロセスおよび下位のプロセスのcx値と、入力されたプロセスのcx値とを比較し、入力されたプロセスの重心位置308のcx値のみが異なる場合以外のときステップS202→No、つまり、上位のプロセス、下位のプロセス、入力されたプロセス、それぞれのcx値がすべて異なる場合や、上位のプロセスと入力されたプロセスのcx値が同じ値であり、下位のプロセスのみcx値が異なる場合には、ステップS204に進む。ステップS204において、フロー位置計算部203は、入力されたプロセスの重心位置308のcx値や、下位のプロセスの重心位置308のcx値を、上位のプロセスの重心位置308のcx値と同じ値に変更する。つまり、上位のプロセスであるプロセスA003のcx値に、入力されたプロセスC006および下位のプロセスB005のcx値を揃えるようにする。次に、ステップS203またはステップS204の処理を終えると、フロー位置計算部203は、各プロセスが等間隔に配置されるように、パーツ毎のcx値、cy値、およびx値、y値を変更するステップS205。具体的には、フロー位置計算部203は、まず、調整対象となっていないコネクタの高さ寸法307のh値を特定する。本実施例の場合、上位のプロセスA003のさらに上位に接続するコネクタ002の高さh値40を記憶する。フロー位置計算部203は、このh値40を基準にしてY座標を調整する。そして、フロー位置計算部203は、新たに挿入したコネクタの高さh値が40になるように、そしてそのコネクタの寸法307の幅w値が0になるようにして、パーツ全体の表示位置を調整する。また、フロー位置計算部203は、パーツ情報テーブル300の一時情報310のTarget312の項目に1を設定したコネクタを削除する。具体的には、フロー位置計算部203は、新たに追加されたプロセスC006と接続するコネクタ007およびコネクタ008を設定することで不要となったコネクタ004を削除する。図13は、図10のステップS205を実行して、各パーツが等間隔となるように調整されたパーツ情報テーブル300を示している。図13に示すパーツ情報テーブル300では、コネクタ004が削除されている。この図13に示すパーツ情報テーブル300を用いて、フローチャートを示すと、図9に示すように、プロセスA003とプロセスB005との間に、プロセスC006が挿入され、各プロセスは均等な間隔で配置される。なお、表示位置のレイアウトに関する調整方針は、ユーザの好みやフローチャートを使用する業務によって異なる。したがって、本実施形態で例示したフローチャートの表示位置の調整を、別の調整ロジックに基づき、記憶部30に記憶させ、ユーザが変更できるようにしてもよい。このようにすることで、本実施形態に係るフローチャート描画装置1によれば、ユーザにより入力されたプロセスの接続関係を、表示画面上の図形の重なりで特定することができ、フローチャートの編集操作を簡便化することができる。また、ユーザは、既存のパーツとのバランスを考えながら、追加したパーツのレイアウトを微調整する必要がなくなる。≪並接接続≫次に、本実施形態に係るフローチャート描画装置1が、ユーザにより入力された新たなプロセスが既存のプロセスに重なるように配置された場合のフローチャート描画処理並接接続について説明する。このフローチャート描画処理並接接続では、図14aに示すように、既存のプロセス例えば、プロセスA003に、新たに入力されたプロセス例えば、プロセスC006を重ねた場合に、フローチャート描画装置1において、既存のプロセスと入力されたプロセスとを並列に接続する関係を有するものと規定しておく。そして、フローチャート描画装置1は、図21の処理結果に示すように、分岐ノードを追加し、入力されたプロセスに重ねられた既存のプロセスと、その入力されたプロセスとがある条件によって分岐ノードにより分岐され、一方の条件下で既存のプロセスを、他方の条件下で入力されたプロセスを実行するという、フローを描画する。なお、以下においては、図14aに示すように、既存のプロセスプロセスA003に新たなプロセスプロセスC006を重ねた場合として説明するが、図14bに示すように、フローチャート描画装置1は、既存のプロセスプロセスA003と接続する上位のコネクタコネクタ002に新たな分岐ノードを重ねる場合でも同様に並接接続の処理を行うようにすることができる。フローチャート描画装置1は、プロセスA003と接続する上位のコネクタ002に分岐ノードが重ねられた場合、プロセスA003以降のパーツを分岐ノードの左側に配置し、分岐ノードの右側には新たなプロセスを加える。そして、新たに入力された分岐ノードを後記する図17に示すように、プロセスA003と同じ重心位置308に配置し直すことで、以下に説明する並接接続の処理を行い、図21に示すような処理結果のフローチャートを表示させることができる。なお、順接接続では、新たに入力されたパーツがプロセスであり、入力されたプロセスが既存のコネクタと重複することで、フローチャート描画装置1が、順接接続の処理を行うと判定する。一方、入力されたパーツが分岐ノードであり既存のコネクタと重複する場合には、フローチャート描画装置1は、並接接続の処理を行うと判定し、ユーザが図14aに示す操作をした場合と同様の結果が得られる。次に、本実施形態に係るフローチャート描画装置1の並接接続の処理の流れを、図15を用いて説明する。なお、図4に示したフローチャート描画装置1の順接接続の処理の流れと同様の処理については、同一の符号を付し、説明を省略する。また、ここでは、図14aに示すように、図2で示したフローチャートに、プロセスC006を追加するものとして説明する。図15に示すように、まず、図4のステップS101~S104と同様に、ノードグループ309の編成、フローチャートの描画を行い、表示装置3に既存のフローチャートを表示させる。そして、ユーザにより入力されたパーツの情報を一時情報310としてパーツ情報テーブル300に記憶する。なお、ステップS103において、図4の順接接続では、ユーザが既存のコネクタ矢印に重なるように追加のプロセスを配置したが、並接接続の処理を行わせるため、ユーザは、既存のプロセスに重なるように追加するプロセスを配置する。次に、フローチャート描画装置1のパーツ情報管理部202は、入力されたパーツと既存パーツとが重複する重なるか否かを判定するステップS301。そして、入力されたパーツと既存パーツとが重ならない場合にはステップS301→No、次のステップS110に進む。一方、入力されたパーツと既存パーツとが重なる場合にはステップS301→Yes、次のステップS302へ進む。本実施例では、図14aに示すように、入力されたプロセスC006が、既存のプロセスA003に重なるため、ステップS302へ進むものとして説明する。ステップS302において、パーツ情報管理部202は、ステップS103でユーザにより入力されたパーツがプロセスであり、入力されたパーツと重複する既存パーツが、コネクタまたはプロセスのどちらであるかを判定する。ここで、入力されたプロセスと重複する既存パーツがコネクタである場合にはステップS302→コネクタ、図4のステップS106~S108と同様の処理を行う。一方、入力されたプロセスと重複する既存パーツがプロセスである場合にはステップS302→プロセス、ステップS303~S305までの並接接続の処理に進む。次に、パーツ情報管理部202は、重複するプロセスと新たに入力されたプロセスとを並列接続するための分岐ノードをパーツ情報テーブル300に設定するステップS303。本実施例では、重複するプロセスであるプロセスA003と、入力されたプロセスC006とを並接接続するための分岐ノード007を、パーツ情報テーブル300に追加する。続いて、パーツ情報管理部202は、設定挿入した分岐ノードと接続する複数のコネクタを一時情報310としてパーツ情報テーブル300に記憶するステップS304。具体的には、パーツ情報管理部202は、新たに追加した分岐ノード007と重複するプロセスプロセスA003との間にコネクタ008を加え、分岐ノード007と新たに入力されたプロセスプロセスC006との間にコネクタ009を加えて、接続関係を決定する。また、パーツ情報管理部202は、重複するプロセスプロセスA003と開始ノード001との間に接続されていたコネクタ002を、分岐ノード007と開始ノード001との間を接続するコネクタとして変更する。このステップS304の処理を終えた時点でのパーツ情報テーブル300を図16に示す。図16では、新たに入力されたプロセスC006、分岐ノード007、コネクタ008、およびコネクタ009が新たに設定される。また、コネクタ002の接続先であるTo351のIDが007分岐ノードに変更されている。そして、重複するプロセスであるプロセスA003の一時情報310のTarget312に1が設定される。ここで、フロー位置計算部203は、新たに設定した分岐ノード007の挿入位置を、重複するプロセスA003と同じ重心位置308になるように配置する。また、新たに設定したコネクタ008およびコネクタ009は、描画する位置座標306、寸法307、重心位置が特定されていないので、未定として示す。その他の入力されたプロセスC006、分岐ノード007等のパーツの位置座標306、寸法307、重心位置308は、フロー位置計算部203が、現時点での配置位置に基づいて算出し、パーツ情報テーブル300に格納する。この図16に示すパーツ情報テーブル300を説明のため示すと図17のようになる。図17では、新たに設定した分岐ノード007が、重複するプロセスA003と同じ重心位置308に配置されている。なお、図16のパーツ情報テーブル300では、コネクタ008、コネクタ009の表示位置は未定だが、コネクタ008およびコネクタ009の存在を示すために、図17では、分岐ノード007を接続元とし、接続先をプロセスA003、プロセスC006それぞれのUpperポートとして仮に表示している。図15に戻り、フロー位置計算部203は、新たに入力されたプロセスや、分岐ノード、コネクタを含め、ノードグループ309内のすべてのパーツの表示位置を調整するステップS305。なお、このフローチャートの表示位置調整処理並接接続の詳細は、後記する図18において説明する。続いて、図4のステップS109~S111と同様に、フローチャート描画装置1は、ノードグループ309の整形処理を行い、確定したフローチャートを、表示装置3のディスプレイに描画する。<表示位置調整処理並接接続>次に、図15のステップS305における表示位置調整処理並接接続について図18を用いて説明する。図18は、本実施形態に係るフローチャート描画装置1の表示位置調整処理並接接続の流れを示すフローチャートである。この表示位置調整処理並接接続において、フローチャート描画装置1は、分岐ノードを挿入し、その挿入した分岐ノードを中心として、その分岐ノードより下位において接続するパーツを左右対称となるように配置する。以下、具体的に説明する。まず、パーツ情報管理部202は、新たに入力されたプロセス、分岐ノード、新たに設定したコネクタを含めたノードグループ309の編成を行うステップS401。本実施例においては、パーツ情報管理部202は、パーツ情報テーブル300内のノードグループ309を、分岐ノード007を境にして、グループ化を行う。そして、図19に示すように、パーツ情報管理部202は、開始ノード001およびコネクタ002について、ノードグループ309をN1と設定する。プロセスA003、コネクタ004、プロセスB005およびコネクタ008について、ノードグループ309をN2と設定する。また、プロセスC006およびコネクタ009について、ノードグループ309をN3と設定する。次に、フロー位置計算部203は、挿入された分岐ノードと接続するプロセスを特定するステップS402。本実施例では、分岐ノード007にコネクタ008を介して接続するプロセスA003と、コネクタ009を介して接続するプロセスC006とを特定する。次に、ステップS402で特定した各プロセスが属するノードグループ309に基づき、同じノードグループ309に属するパーツを特定し、調整対象パーツとして抽出するステップS403。本実施例では、プロセスA003の属するノードグループ309はN2であり、同じノードグループ309に属する、コネクタ004、プロセスB005およびコネクタ008が調整対象パーツとして特定される。また、プロセスC006が属するノードグループ309はN3であり、同じノードグループ309に属するコネクタ009が調整対象パーツとして特定される。次に、フロー位置計算部203は、フローチャートの水平方向の配置を決定するため、分岐ノードを中心に2つのプロセスを左右均等に配置するように、2つプロセスの重心位置cx値を変更するステップS404。本実施例では、フロー位置計算部203は、分岐ノードの幅w値とプロセスの幅w値とに基づき、分岐ノード007のひし形の左端、右端の位置に合わせてそれぞれプロセスA003、プロセスC006を配置するように、cx値を変更する。続いて、フロー位置計算部203は、調整対象パーツのcx値を変更するステップS405。具体的には、フロー位置計算部203は、ステップS403で特定した調整対象パーツのうち、ステップS402で特定したプロセスの下位に位置するパーツの重心位置cx値を、ステップS404で変更した、その上位に接続するプロセスのcx値と同じ値に変更する。本実施例では、ノードグループ309がN2の調整対象パーツのうち、コネクタ004およびプロセスB005のcx値を、上位のプロセスプロセスA003のcx値と同じ値に変更する。ステップS405までの処理を実行した結果を説明のため示すと、図20のフローチャートのようになる。分岐ノード007を中心に、プロセスA003、プロセスC006の重心位置cx値は、左右均等に配置するように変更されている。また、プロセスA003とコネクタ004とプロセスB005とが、同じ重心位置cx値に配置されている。図18に戻り、ステップS406において、フロー位置計算部203は、分岐ノードとステップS402で特定した2つのプロセスとの間の縦方向の高さを決定し、2つのプロセスのcy値を変更する。具体的には、フロー位置計算部203は、まず、開始ノード001とプロセスA003とを接続するコネクタ002の高さh値40を記憶する。そして、フロー位置計算部203は、プロセスA003およびプロセスC006の重心位置cy値を、分岐ノード007の重心位置cy値から、記憶したコネクタの高さh値40と自身の寸法307の高さh値の2分の1の値ここでは10とを加えた分つまり50下方に位置するように決定する。次に、ステップS407において、フロー位置計算部203は、調整対象パーツのcy値を変更する。具体的には、フロー位置計算部203は、ステップS403で特定した調整対象パーツのうち、ステップS402で特定したプロセスの下位に位置するパーツの重心位置cy値を、それぞれ50下方に位置するように決定する。そして、フロー位置計算部203は、ステップS402で特定した2つのプロセスと、分岐ノード007とを接続するコネクタの位置を特定するステップS408。この表示位置調整処理並接接続を実行した結果のフローチャートを図21に、そのパーツ情報テーブル300を図22に示す。なお、図22のパーツ情報テーブル300において、追加された2つのコネクタである、コネクタ008とコネクタ009の重心位置308を、各コネクタの線を直角に曲げた角に位置するように設定している。これは、ユーザにより既存のプロセスの下方に新しいパーツが追加されたとき、フロー位置計算部203が、角の位置から計算することで、左右均等、上下均等の位置計算を容易にするためである。ただし、これは一例にすぎず、本来の重心位置の計算値を設定してもよく、パーツの配置を整理し、左右均等、上下均等の位置計算が可能であればよい。このようにすることで、本実施形態に係るフローチャート描画装置1によれば、ユーザが既存のプロセスに、新たなプロセスを重ねることにより、並接接続の処理を実行でき、各パーツのレイアウトについて微調整等の追加の操作を行うことなく、フローチャートの表示位置を決定し描画させることができる。≪ノードグループ整形処理≫次に、図4および図15のステップS109で実行されるノードグループ整形処理について、分岐ノードを含む既存のフローチャートに、並接接続の処理を行う実施例を用いて説明する。本実施例では、図23に示すように、分岐ノード分岐ノードE003を含む既存のフローチャートのプロセスA007に、新たにプロセスC012を重ねる並接接続の操作がユーザにより行われるものとして説明する。まず、図15に示した本実施形態に係るフローチャート描画装置1の処理手順のステップS101において、ノードグループの編成を行う。図23の例においては、分岐ノードE003を境にしたパーツの集合をノードグループ309として破線で示している。このノードグループ309の編成の結果を、図24のパーツ情報テーブル300に示す。このパーツ情報テーブル300は、分岐ノードE003を境に、N1N2N3の3つのノードグループ309に分けられる。そして、図15のステップS103において、ユーザによる入力装置2の操作により、データ入力部201が、新たに追加されるパーツプロセスC012の入力を受け付ける。続いて、パーツ情報管理部202が、受け付けたプロセスC012の情報を、パーツ情報テーブル300に記憶する。そして、図15のステップS301~S305の処理を行い、表示位置調整処理並接接続を実行する。なお、この並接接続の表示位置調整ステップS305は、入力されたパーツプロセスC012と重なる既存パーツプロセスA007が属するノードグループN2内で行う。次に、図15のステップS109におけるノードグループ整形処理を具体的に説明する。図25は、図15のステップS305までの表示位置調整処理並接接続を終えた時点でのフローチャートを仮に表示した図である。図25に示すように、プロセスC012を含むノードグループN2を示す矩形と、ノードグループN3を示す矩形とが、重なったものとなっている。この状態では、ノードグループN2のコネクタ015およびプロセスC012と、ノードグループN3のプロセスB011との距離が近い。よって、今後、プロセスC012やプロセスB011にノードを追加していく場合、それぞれのノードグループ内のパーツが、隣接するノードグループ内のパーツと重なってしまうことが予想させる。そのため、ノードグループ内の表示位置調整処理の後に、ノードグループ整形処理を行う。図26は、本実施形態に係るノードグループ整形処理の流れを示すフローチャートである。まず、フローチャート描画装置1のフロー位置計算部203は、ノードグループ毎に、そのノードグループに属するパーツをすべて含む最小の矩形を算出するステップS501。この処理結果は、図25の破線で示す矩形のようになる。次に、フロー位置計算部203は、算出したそれぞれの矩形が、他のノードグループの矩形と重複しているか否かを判定するステップS502。そして、フロー位置計算部203は、他のノードグループの矩形と重複していない場合にはステップS502→No、次にステップS504に進む。一方、算出した矩形と重複している場合にはステップS502→Yes、フロー位置計算部203は、ノードグループを区切っている分岐ノードを基準にして、矩形の移動距離を決定するステップS503。図25に示したように、分岐ノードをはさんで2つのノードグループが重なる場合は、一方のノードグループが、基準となる分岐ノードよりも他方のノードグループ側に配置しないようにすることで、ノードグループの矩形の重複を避ける。例えば、本実施例において、フロー位置計算部203は、左側のノードグループN2を、分岐ノードE003のひし形の左端座標よりも左側に配置するように移動する。また、図25においては、分岐ノード003のひし形の左端に、ノードグループN2の矩形の右端を合わせるため、左側のノードグループN2の距離を50左方に移動する。右側のノードグループN3には、重複の可能性はないが、分岐ノード003を支点として左右対称に整形するため、ノードグループN2も右側に移動距離を50と設定する。次に、フロー位置計算部203は、描画領域内に収まるように各ノードグループを含むフローチャートを移動するステップS504。例えば、図25に示すように、ノードグループN2の左端のX座標が40であり、ステップS503において設定した移動距離である50左方に移動できない場合は、ノードグループのうち、最も左方のノードグループのパーツの位置を基準として他のパーツを移動する。そして、このノードグループ整形処理を終えた結果を図27に示す。このようにすることで、ユーザが既存のプロセスに、新たなプロセスを重ねるだけで、並接接続の処理と決定でき、追加の操作を行うことなく、ノードグループが重ならない位置座標にフローチャートを移動させ、描画させることができる。