(57)【要約】【課題】部品の影響範囲を把握しやすくすること。【解決手段】情報処理装置１００は、複数の図面１０１を取得する。情報処理装置１００は、複数の図面１０１に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報１１０を生成する。情報処理装置１００は、いずれかの部品の指定を受け付ける。情報処理装置１００は、生成した順序情報１１０に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報１０３を出力する。【選択図】図１
2019175218.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
処理を実行させることを特徴とする情報処理プログラム。
【請求項２】
前記部品はデータまたはプログラムを示す、ことを特徴とする請求項１に記載の情報処理プログラム。
【請求項３】
前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
所定の図面のうちのいずれかの部品を始点または終点として示す接続部品が配置された場合、配置された前記接続部品の方向を参照し、生成した前記位置関係情報に基づいて、前記いずれかの部品と接続される部品に関する情報を出力する、
処理を実行させることを特徴とする請求項１または２に記載の情報処理プログラム。
【請求項４】
前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする請求項１〜３のいずれか一つに記載の情報処理プログラム。
【請求項５】
前記コンピュータに、
前記複数の図面に基づいて、部品の種別ごとに、部品の属性を対応付けて示す属性情報を生成し、
生成した前記属性情報に基づいて、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちのいずれかの部品の属性が、前記いずれかの部品の種別に対応する属性に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする請求項１〜４のいずれか一つに記載の情報処理プログラム。
【請求項６】
前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品のいずれかの部品が移動された場合、移動後の前記２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする請求項１〜５のいずれか一つに記載の情報処理プログラム。
【請求項７】
前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品の一方の部品を変更する場合、他方の部品と接続される部品に関する情報を出力する、
処理を実行させることを特徴とする請求項１〜６のいずれか一つに記載の情報処理プログラム。
【請求項８】
前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちのいずれかの接続部品による接続関係を変更する場合、変更後に前記いずれかの接続部品が接続関係を示す２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする請求項１〜７のいずれか一つに記載の情報処理プログラム。
【請求項９】
前記コンピュータに、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された前記いずれかの部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの、前記複数の図面における配置数を用いて、指定された前記いずれかの部品の影響度を算出し、算出した前記影響度を出力する、
処理を実行させることを特徴とする請求項１〜８のいずれか一つに記載の情報処理プログラム。
【請求項１０】
コンピュータが、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
処理を実行することを特徴とする情報処理方法。
【請求項１１】
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
制御部を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラム、情報処理方法、および情報処理装置に関する。
【背景技術】
【０００２】
従来、処理を示すオブジェクト、および、オブジェクト間の接続関係を示すことにより処理間の順序関係を示す矢印を用いて、処理の流れを視覚的に表したフロー図が作成されることがある。
【０００３】
先行技術としては、例えば、ドローイングされた方向に応じて、異なるパイメニュー処理情報が選択されるようにするものがある。また、例えば、テーマ項目に関連する目的を網羅的に抽出して目的項目として列挙し、列挙された前記複数の目的項目について、最上位目的項目から最下位目的項目までを連鎖図として作図する技術がある。また、例えば、ハンドルの方向を任意に変更設定することにより、ハンドルの指し示す方向を評価軸とした各要素の評価結果を変更表示する技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２２５２０９号公報
【特許文献２】特開２０１２−２７５７６号公報
【特許文献３】特開２００５−２０９１３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術では、いずれかのオブジェクトが示す処理の内容を変更した場合、他のいずれの処理に影響するかを把握することが難しい。例えば、いずれかのオブジェクトが示す処理の内容を変更した場合、複数のフロー図に同じオブジェクトが存在すると、複数のフロー図のそれぞれのフロー図を確認し、他のいずれの処理に影響するかを把握することになり、負担の増大化を招く。
【０００６】
１つの側面では、本発明は、部品の影響範囲を把握しやすくすることを目的とする。
【課題を解決するための手段】
【０００７】
１つの実施態様によれば、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品ごとに、部品間の順序関係を対応付けて示す順序情報を生成し、いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する情報処理プログラム、情報処理方法、および情報処理装置が提案される。
【発明の効果】
【０００８】
一態様によれば、部品の影響範囲を把握しやすくすることが可能になる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。
【図２】図２は、情報処理システム２００の一例を示す説明図である。
【図３】図３は、情報処理装置１００のハードウェア構成例を示すブロック図である。
【図４】図４は、位置関係テーブル４００の記憶内容の一例を示す説明図である。
【図５】図５は、影響度テーブル５００の記憶内容の一例を示す説明図である。
【図６】図６は、配置規則テーブル６００の記憶内容の一例を示す説明図である。
【図７】図７は、属性テーブル７００の記憶内容の一例を示す説明図である。
【図８】図８は、クライアント装置２０１のハードウェア構成例を示すブロック図である。
【図９】図９は、情報処理装置１００の機能的構成例を示すブロック図である。
【図１０】図１０は、フロー図の一例を示す説明図（その１）である。
【図１１】図１１は、フロー図の一例を示す説明図（その２）である。
【図１２】図１２は、フロー図の一例を示す説明図（その３）である。
【図１３】図１３は、オブジェクト間の接続関係を判定する一例を示す説明図（その１）である。
【図１４】図１４は、オブジェクト間の接続関係を判定する一例を示す説明図（その２）である。
【図１５】図１５は、オブジェクト間の接続関係を判定する一例を示す説明図（その３）である。
【図１６】図１６は、オブジェクト間の接続関係を判定する一例を示す説明図（その４）である。
【図１７】図１７は、テーブル作成処理手順の一例を示すフローチャートである。
【図１８】図１８は、第１作成処理手順の一例を示すフローチャートである。
【図１９】図１９は、ステップＳ１８０３のサブ処理手順の一例を示すフローチャートである。
【図２０】図２０は、第２作成処理手順の一例を示すフローチャートである。
【図２１】図２１は、第３作成処理手順の一例を示すフローチャートである。
【図２２】図２２は、情報処理装置１００が描画サポートを実施する一例を示す説明図（その１）である。
【図２３】図２３は、情報処理装置１００が描画サポートを実施する一例を示す説明図（その２）である。
【図２４】図２４は、描画サポート処理手順の一例を示すフローチャート（その１）である。
【図２５】図２５は、描画サポート処理手順の一例を示すフローチャート（その２）である。
【図２６】図２６は、情報処理装置１００が誤りチェックを実施する一例を示す説明図である。
【図２７】図２７は、誤りチェック処理手順の一例を示すフローチャートである。
【図２８】図２８は、ステップＳ２７０２のサブ処理手順の一例を示すフローチャートである。
【図２９】図２９は、情報処理装置１００が影響範囲表示を実施する一例を示す説明図である。
【図３０】図３０は、影響範囲表示処理手順の一例を示すフローチャートである。
【図３１】図３１は、オブジェクト移動時に修正サポートを実施する一例を示す説明図（その１）である。
【図３２】図３２は、オブジェクト移動時に修正サポートを実施する一例を示す説明図（その２）である。
【図３３】図３３は、オブジェクト移動時に修正サポートを実施する一例を示す説明図（その３）である。
【図３４】図３４は、オブジェクト移動時に修正サポートを実施する一例を示す説明図（その４）である。
【図３５】図３５は、オブジェクト変更時に修正サポートを実施する一例を示す説明図（その１）である。
【図３６】図３６は、オブジェクト変更時に修正サポートを実施する一例を示す説明図（その２）である。
【図３７】図３７は、オブジェクト変更時に修正サポートを実施する一例を示す説明図（その３）である。
【図３８】図３８は、矢印変更時に修正サポートを実施する一例を示す説明図（その１）である。
【図３９】図３９は、矢印変更時に修正サポートを実施する一例を示す説明図（その２）である。
【図４０】図４０は、矢印変更時に修正サポートを実施する一例を示す説明図（その３）である。
【図４１】図４１は、移動チェック処理手順の一例を示すフローチャート（その１）である。
【図４２】図４２は、移動チェック処理手順の一例を示すフローチャート（その２）である。
【図４３】図４３は、変更チェック処理手順の一例を示すフローチャートである。
【図４４】図４４は、ステップＳ４３０５のサブ処理手順の一例を示すフローチャートである。
【図４５】図４５は、ステップＳ４３０９のサブ処理手順の一例を示すフローチャートである。
【図４６】図４６は、矢印変更チェック処理手順の一例を示すフローチャート（その１）である。
【図４７】図４７は、矢印変更チェック処理手順の一例を示すフローチャート（その２）である。
【図４８】図４８は、情報処理装置１００が影響度表示を実施する一例を示す説明図である。
【図４９】図４９は、単独影響度表示処理手順の一例を示すフローチャートである。
【図５０】図５０は、複数影響度表示処理手順の一例を示すフローチャートである。
【図５１】図５１は、ステップＳ５００３のサブ処理手順の一例を示すフローチャートである。
【図５２】図５２は、全体影響度表示処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して、本発明にかかる情報処理プログラム、情報処理方法、および情報処理装置の実施の形態を詳細に説明する。
【００１１】
（実施の形態にかかる情報処理方法の一実施例）
図１は、実施の形態にかかる情報処理方法の一実施例を示す説明図である。情報処理装置１００は、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した図面に関する作業を支援するコンピュータである。
【００１２】
有向グラフは、ノードとなる要素を含み、要素間が方向付きのエッジで接続されたグラフである。ノードは、例えば、部品に対応する。エッジは、例えば、矢印に対応する。部品は、例えば、オブジェクトである。接続部品は、例えば、矢印である。図面は、例えば、処理を示すオブジェクト、および、オブジェクト間の接続関係を示す矢印を用いて、処理の流れを視覚的に表したフロー図である。図面に関する作業は、図面を作成する作業、図面を修正する作業、図面を検証する作業、または、図面から情報を読み取る作業などである。
【００１３】
ここで、図面に関する作業が困難な場合があり、作業負担の増大化を招き、または、作業ミスの発生を招くことがある。例えば、複数の図面のいずれかの図面に配置されたいずれかのオブジェクトが示す処理の内容を変更した場合、他のいずれの処理に影響するかを、複数の図面から読み取ることが難しい。
【００１４】
具体的には、いずれかのフロー図に配置されたいずれかのオブジェクトが示す処理の内容を変更した場合、複数のフロー図に同じオブジェクトが存在すると、複数のフロー図のそれぞれのフロー図を確認し、他のいずれの処理に影響するかを把握することになる。このため、負担の増大化を招き、または、把握ミスの発生を招くことがある。
【００１５】
そこで、本実施の形態では、複数の図面に基づく部品間の関係性を示す情報を生成し、複数の図面に基づく部品間の関係性を示す情報に基づいて、図面に関する作業を支援することができる情報処理方法について説明する。
【００１６】
図１において、情報処理装置１００は、複数の図面１０１を取得する。情報処理装置１００は、例えば、利用者の操作入力に基づいて、図面１０１を取得する。情報処理装置１００は、情報処理装置１００とは異なる装置から、図面１０１を受信する場合があってもよい。
【００１７】
情報処理装置１００は、複数の図面１０１に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の関係性を示す情報を生成する。情報処理装置１００は、例えば、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報１１０を生成する。順序関係は、接続部品の方向で規定される前後関係である。順序情報１１０は、例えば、図４を用いて後述する位置関係テーブル４００に対応する。
【００１８】
情報処理装置１００は、生成した情報に基づいて、所定の図面１０２に関する作業を支援する。所定の図面１０２は、複数の図面１０１のいずれかである。所定の図面１０２は、複数の図面１０１とは異なってもよい。所定の図面１０２は、複数あってもよい。所定の図面１０２に関する作業は、例えば、所定の図面１０２から情報を読み取る作業である。
【００１９】
情報処理装置１００は、例えば、いずれかの部品の指定を受け付ける。そして、情報処理装置１００は、生成した順序情報１１０に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報１０３を出力する。
【００２０】
情報処理装置１００は、具体的には、所定の図面１０２を表示した際、所定の図面１０２のうちのいずれかの部品の指定を受け付ける。情報処理装置１００は、利用者の操作入力に基づいて、いずれかの部品の識別子を受け付ける場合があってもよい。そして、情報処理装置１００は、指定の部品の直前に順序付けられた部品の一覧、および、直後に順序付けられた部品の一覧を、情報１０３として表示する。
【００２１】
これにより、情報処理装置１００は、所定の図面１０２を確認しなくても、指定の部品が影響する部品を把握することができ、所定の図面１０２から情報を読み取る作業にかかる負担の低減化を図ることができ、作業ミスの発生を抑制することができる。情報処理装置１００は、例えば、部品がデータやプログラムを示す場合、指定の部品が示すデータやプログラムの変更が、他のいずれの部品が示すデータやプログラムに影響するかを把握することができる。結果として、情報処理装置１００は、プログラムを変更する際にかかる負担の低減化を図ることができる。
【００２２】
ここでは、情報処理装置１００が、自装置で情報１０３を表示する場合について説明したが、これに限らない。例えば、情報処理装置１００が、情報処理装置１００とは異なる他装置に、情報１０３を表示させる場合があってもよい。具体的には、図２に後述する情報処理システム２００のように、情報処理装置１００は、他装置に情報１０３を表示させる。
【００２３】
（情報処理システム２００の一例）
次に、図２を用いて、図１に示した情報処理装置１００を適用した、情報処理システム２００の一例について説明する。
【００２４】
図２は、情報処理システム２００の一例を示す説明図である。図２において、情報処理システム２００は、情報処理装置１００と、クライアント装置２０１とを含む。
【００２５】
情報処理システム２００において、情報処理装置１００とクライアント装置２０１は、有線または無線のネットワーク２１０を介して接続される。ネットワーク２１０は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどである。
【００２６】
情報処理装置１００は、複数の図面を取得する。図面は、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現する。部品は、例えば、オブジェクトである。接続部品は、例えば、矢印である。図面は、例えば、処理を示すオブジェクト、および、オブジェクト間の接続関係を示す矢印を用いて、処理の流れを視覚的に表したフロー図である。複数の図面は、例えば、クライアント装置２０１から取得される。複数の図面は、利用者の操作入力に基づいて取得されてもよい。
【００２７】
情報処理装置１００は、複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の関係性を示す情報を生成する。また、情報処理装置１００は、部品の属性を示す情報を生成してもよい。情報処理装置１００は、例えば、複数の図面に基づいて図４〜図７に後述する各種テーブル４００〜７００を生成する。情報処理装置１００が各種テーブル４００〜７００を生成する一例は、例えば、図１０〜図２１を用いて後述する。
【００２８】
情報処理装置１００は、生成した情報に基づいて、所定の図面に関する作業を支援する。所定の図面は、複数の図面のいずれかである。所定の図面は、複数の図面とは異なる図面であってもよい。所定の図面は、例えば、作成中の図面であってもよい。所定の図面は、複数あってもよい。所定の図面に関する作業は、例えば、下記の第１の作業、第２の作業、第３の作業、第４の作業、および、第５の作業などである。
【００２９】
第１の作業は、図面を作成する作業である。第１の作業は、例えば、フロー図を作成する作業である。情報処理装置１００は、第１の作業に対し、描画サポートを実施する。情報処理装置１００は、例えば、フロー図のいずれかのオブジェクトを始点または終点とする矢印がフロー図に配置される場合に、当該オブジェクトと接続するオブジェクトの候補を表示する。表示先は、例えば、クライアント装置２０１である。情報処理装置１００が描画サポートを実施する一例は、例えば、図２２〜図２５を用いて後述する。
【００３０】
第２の作業は、図面の誤りをチェックする作業である。第２の作業は、例えば、フロー図の誤りをチェックする作業である。情報処理装置１００は、第２の作業に対し、誤りチェックを実施する。情報処理装置１００は、例えば、接続関係がある２つのオブジェクトの位置関係の誤りをチェックし、または、オブジェクトの属性の誤りをチェックし、チェック結果を表示する。表示先は、例えば、クライアント装置２０１である。情報処理装置１００が誤りチェックを実施する一例は、例えば、図２６〜図２８を用いて後述する。
【００３１】
第３の作業は、図面から部品の影響範囲を読み取る作業である。第３の作業は、例えば、いずれかのオブジェクトから他のオブジェクトへの影響範囲を、フロー図から読み取る作業である。情報処理装置１００は、第３の作業に対し、影響範囲表示を実施する。情報処理装置１００は、例えば、いずれかのオブジェクトが指定されると、指定されたオブジェクトの影響範囲を表示する。表示先は、例えば、クライアント装置２０１である。情報処理装置１００が影響範囲表示を実施する一例は、例えば、図２９および図３０を用いて後述する。
【００３２】
第４の作業は、図面を修正する作業である。第４の作業は、例えば、フロー図を修正する作業である。第４の作業は、具体的には、フロー図のうちのオブジェクトを移動し、フロー図のうちのオブジェクトを変更し、または、フロー図のうちの矢印を変更する作業である。情報処理装置１００は、第４の作業に対し、修正サポートを実施する。情報処理装置１００は、例えば、オブジェクトの移動、オブジェクトの変更、および、矢印の移動をチェックし、チェック結果を表示する。表示先は、例えば、クライアント装置２０１である。情報処理装置１００が修正サポートを実施する一例は、例えば、図３１〜図４７を用いて後述する。
【００３３】
第５の作業は、図面から部品の影響度を読み取る作業である。第５の作業は、例えば、いずれかのオブジェクトから他のオブジェクトへの影響度を、フロー図から読み取る作業である。情報処理装置１００は、第５の作業に対し、影響度表示を実施する。情報処理装置１００は、例えば、いずれかのオブジェクトが指定されると、指定されたオブジェクトの影響度を表示する。表示先は、例えば、クライアント装置２０１である。情報処理装置１００が影響度表示を実施する一例は、例えば、図４８〜図５２を用いて後述する。情報処理装置１００は、例えば、サーバやＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などである。
【００３４】
クライアント装置２０１は、所定の図面に関する作業が実施されるコンピュータである。クライアント装置２０１は、図面を情報処理装置１００に送信する。クライアント装置２０１は、所定の図面に関する作業における利用者の操作入力を、情報処理装置１００に送信する。クライアント装置２０１は、情報処理装置１００の制御にしたがって、ディスプレイの表示内容を変更する。クライアント装置２０１は、サーバ、ＰＣ、タブレット端末、スマートフォンなどである。
【００３５】
ここでは、情報処理装置１００が、各種テーブル４００〜７００を生成し、かつ、第１の作業、第２の作業、第３の作業、第４の作業、および、第５の作業などを支援する場合について説明したが、これに限らない。例えば、各種テーブル４００〜７００を生成する情報処理装置１００と、第１の作業、第２の作業、第３の作業、第４の作業、および、第５の作業などを支援する情報処理装置１００とが異なる装置であり、協働する場合があってもよい。また、例えば、情報処理装置１００が、第１の作業、第２の作業、第３の作業、第４の作業、および、第５の作業のいずれかを支援しない場合があってもよい。
【００３６】
（情報処理装置１００のハードウェア構成例）
次に、図３を用いて、情報処理装置１００のハードウェア構成例について説明する。
【００３７】
図３は、情報処理装置１００のハードウェア構成例を示すブロック図である。図３において、情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、メモリ３０２と、ネットワークＩ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０３と、記録媒体Ｉ／Ｆ３０４と、記録媒体３０５とを有する。また、各構成部は、バス３００によってそれぞれ接続される。
【００３８】
ここで、ＣＰＵ３０１は、情報処理装置１００の全体の制御を司る。メモリ３０２は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）およびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ３０１のワークエリアとして使用される。メモリ３０２に記憶されるプログラムは、ＣＰＵ３０１にロードされることで、コーディングされている処理をＣＰＵ３０１に実行させる。メモリ３０２は、図４〜図７に後述する各種テーブルを記憶する。
【００３９】
ネットワークＩ／Ｆ３０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して他のコンピュータに接続される。そして、ネットワークＩ／Ｆ３０３は、ネットワーク２１０と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークＩ／Ｆ３０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００４０】
記録媒体Ｉ／Ｆ３０４は、ＣＰＵ３０１の制御にしたがって記録媒体３０５に対するデータのリード／ライトを制御する。記録媒体Ｉ／Ｆ３０４は、例えば、ディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ポートなどである。記録媒体３０５は、記録媒体Ｉ／Ｆ３０４の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体３０５は、例えば、ディスク、半導体メモリ、ＵＳＢメモリなどである。記録媒体３０５は、情報処理装置１００から着脱可能であってもよい。記録媒体３０５は、図４〜図７に後述する各種テーブルを記憶してもよい。
【００４１】
情報処理装置１００は、上述した構成部のほか、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、情報処理装置１００は、記録媒体Ｉ／Ｆ３０４や記録媒体３０５を複数有していてもよい。また、情報処理装置１００は、記録媒体Ｉ／Ｆ３０４や記録媒体３０５を有していなくてもよい。
【００４２】
（位置関係テーブル４００の記憶内容）
次に、図４を用いて、位置関係テーブル４００の記憶内容の一例について説明する。位置関係テーブル４００は、例えば、図３に示した情報処理装置１００のメモリ３０２や記録媒体３０５などの記憶領域により実現される。
【００４３】
図４は、位置関係テーブル４００の記憶内容の一例を示す説明図である。図４に示すように、位置関係テーブル４００は、始点と、終点と、パターン数と、相対位置情報とのフィールドを有する。相対位置情報のフィールドは、始点相対位置と、終点相対位置とのフィールドを有する。位置関係テーブル４００は、接続関係があるオブジェクトの組み合わせごとに各フィールドに情報を設定することにより、位置関係情報がレコードとして記憶される。
【００４４】
始点のフィールドには、接続関係があるオブジェクトの組み合わせのうち、矢印の始点側に接続されたオブジェクトのオブジェクト名が設定される。終点のフィールドには、接続関係があるオブジェクトの組み合わせのうち、矢印の終点側に接続されたオブジェクトのオブジェクト名が設定される。
【００４５】
パターン数は、複数の図面のうち、始点のオブジェクトと終点のオブジェクトとの組み合わせであり、位置関係が同一である組み合わせの数が設定される。始点相対位置は、始点のオブジェクトと終点のオブジェクトとの間での、始点のオブジェクトの相対位置が設定される。終点相対位置は、始点のオブジェクトと終点のオブジェクトとの間での、終点のオブジェクトの相対位置が設定される。
【００４６】
（影響度テーブル５００の記憶内容）
次に、図５を用いて、影響度テーブル５００の記憶内容の一例について説明する。影響度テーブル５００は、例えば、図３に示した情報処理装置１００のメモリ３０２や記録媒体３０５などの記憶領域により実現される。
【００４７】
図５は、影響度テーブル５００の記憶内容の一例を示す説明図である。図５に示すように、影響度テーブル５００は、オブジェクトと、オブジェクト種別と、相対始点数と、相対終点数と、始点影響度と、終点影響度と、全体影響度と、始点候補と、終点候補とのフィールドを有する。影響度テーブル５００は、オブジェクトごとに各フィールドに情報を設定することにより、影響度情報がレコードとして記憶される。
【００４８】
オブジェクトのフィールドには、オブジェクトのオブジェクト名が設定される。オブジェクト種別のフィールドには、オブジェクトのオブジェクト種別が設定される。相対始点数のフィールドには、オブジェクトを終点として接続される始点となる他のオブジェクトの数が設定される。相対終点数のフィールドには、オブジェクトを始点として接続される終点となる他のオブジェクトの数が設定される。
【００４９】
始点影響度のフィールドには、相対始点数に基づいて算出される、始点となる他のオブジェクトへの影響度である始点影響度が設定される。始点影響度は、例えば、相対始点数×始点係数である。終点影響度のフィールドには、相対終点数に基づいて算出される、終点となる他のオブジェクトへの影響度である終点影響度が設定される。終点影響度は、例えば、相対終点数×終点係数である。
【００５０】
全体影響度のフィールドには、始点影響度と終点影響度との和が設定される。始点候補のフィールドには、オブジェクトを終点として接続される始点となる他のオブジェクトのオブジェクト名が設定される。終点候補のフィールドには、オブジェクトを始点として接続される終点となる他のオブジェクトのオブジェクト名が設定される。
【００５１】
（配置規則テーブル６００の記憶内容）
次に、図６を用いて、配置規則テーブル６００の記憶内容の一例について説明する。配置規則テーブル６００は、例えば、図３に示した情報処理装置１００のメモリ３０２や記録媒体３０５などの記憶領域により実現される。
【００５２】
図６は、配置規則テーブル６００の記憶内容の一例を示す説明図である。図６に示すように、配置規則テーブル６００は、Ｘ軸要素と、Ｙ軸要素と、Ｘ軸とＹ軸との交点とのフィールドを有する。配置規則テーブル６００は、オブジェクトのオブジェクト種別の組み合わせごとに各フィールドに情報を設定することにより、配置規則情報がレコードとして記憶される。
【００５３】
Ｘ軸要素のフィールドには、終点になるオブジェクトのオブジェクト種別が設定される。Ｙ軸要素のフィールドには、始点になるオブジェクトのオブジェクト種別が設定される。Ｘ軸とＹ軸との交点のフィールドには、所定の種別の組み合わせのオブジェクトを配置する際に、終点のオブジェクトを配置可能になる終点相対位置が設定される。
【００５４】
（属性テーブル７００の記憶内容）
次に、図７を用いて、属性テーブル７００の記憶内容の一例について説明する。属性テーブル７００は、例えば、図３に示した情報処理装置１００のメモリ３０２や記録媒体３０５などの記憶領域により実現される。
【００５５】
図７は、属性テーブル７００の記憶内容の一例を示す説明図である。図７に示すように、属性テーブル７００は、オブジェクト種別と、形状と、色と、始点係数と、終点係数とのフィールドを有する。属性テーブル７００は、オブジェクト種別ごとに各フィールドに情報を設定することにより、属性情報がレコードとして記憶される。
【００５６】
オブジェクト種別のフィールドには、オブジェクトのオブジェクト種別が設定される。形状のフィールドには、オブジェクトの形状が設定される。色のフィールドには、オブジェクトの色が設定される。始点係数のフィールドには、始点係数が設定される。終点係数のフィールドには、終点係数が設定される。
【００５７】
（クライアント装置２０１のハードウェア構成例）
次に、図８を用いて、図２に示した情報処理システム２００に含まれるクライアント装置２０１のハードウェア構成例について説明する。
【００５８】
図８は、クライアント装置２０１のハードウェア構成例を示すブロック図である。図８において、クライアント装置２０１は、ＣＰＵ８０１と、メモリ８０２と、ネットワークＩ／Ｆ８０３と、記録媒体Ｉ／Ｆ８０４と、記録媒体８０５と、ディスプレイ８０６と、入力装置８０７とを有する。また、各構成部は、バス８００によってそれぞれ接続される。
【００５９】
ここで、ＣＰＵ８０１は、クライアント装置２０１の全体の制御を司る。メモリ８０２は、例えば、ＲＯＭ、ＲＡＭおよびフラッシュＲＯＭなどを有する。具体的には、例えば、フラッシュＲＯＭやＲＯＭが各種プログラムを記憶し、ＲＡＭがＣＰＵ８０１のワークエリアとして使用される。メモリ８０２に記憶されるプログラムは、ＣＰＵ８０１にロードされることで、コーディングされている処理をＣＰＵ８０１に実行させる。
【００６０】
ネットワークＩ／Ｆ８０３は、通信回線を通じてネットワーク２１０に接続され、ネットワーク２１０を介して他のコンピュータに接続される。そして、ネットワークＩ／Ｆ８０３は、ネットワーク２１０と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークＩ／Ｆ８０３には、例えば、モデムやＬＡＮアダプタなどを採用することができる。
【００６１】
記録媒体Ｉ／Ｆ８０４は、ＣＰＵ８０１の制御にしたがって記録媒体８０５に対するデータのリード／ライトを制御する。記録媒体Ｉ／Ｆ８０４は、例えば、ディスクドライブ、ＳＳＤ、ＵＳＢポートなどである。記録媒体８０５は、記録媒体Ｉ／Ｆ８０４の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体８０５は、例えば、ディスク、半導体メモリ、ＵＳＢメモリなどである。記録媒体８０５は、クライアント装置２０１から着脱可能であってもよい。
【００６２】
ディスプレイ８０６は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ８０６は、例えば、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、液晶ディスプレイ、有機ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイなどを採用することができる。入力装置８０７は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。入力装置８０７は、キーボードやマウスなどであってもよく、また、タッチパネル式の入力パッドやテンキーなどであってもよい。
【００６３】
クライアント装置２０１は、上述した構成部のほか、例えば、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、クライアント装置２０１は、記録媒体Ｉ／Ｆ８０４や記録媒体８０５を複数有していてもよい。また、クライアント装置２０１は、記録媒体Ｉ／Ｆ８０４や記録媒体８０５を有していなくてもよい。
【００６４】
（情報処理装置１００の機能的構成例）
次に、図９を用いて、情報処理装置１００の機能的構成例について説明する。
【００６５】
図９は、情報処理装置１００の機能的構成例を示すブロック図である。情報処理装置１００は、記憶部９００と、取得部９０１と、生成部９０２と、出力部９０３とを含む。
【００６６】
記憶部９００は、例えば、図３に示したメモリ３０２や記録媒体３０５などの記憶領域によって実現される。以下では、記憶部９００が、情報処理装置１００に含まれる場合について説明するが、これに限らない。例えば、記憶部９００が、情報処理装置１００とは異なる装置に含まれ、記憶部９００の記憶内容が情報処理装置１００から参照可能である場合があってもよい。
【００６７】
取得部９０１〜出力部９０３は、制御部の一例として機能する。取得部９０１〜出力部９０３は、具体的には、例えば、図３に示したメモリ３０２や記録媒体３０５などの記憶領域に記憶されたプログラムをＣＰＵ３０１に実行させることにより、または、ネットワークＩ／Ｆ３０３により、その機能を実現する。各機能部の処理結果は、例えば、図３に示したメモリ３０２や記録媒体３０５などの記憶領域に記憶される。
【００６８】
記憶部９００は、各機能部の処理において参照され、または更新される各種情報を記憶する。
【００６９】
記憶部９００は、複数の図面を記憶する。図面は、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現する。図面は、例えば、フロー図である。複数の図面は、共通する属性を有する。複数の図面は、例えば、同一のオブジェクトを含む。複数の図面は、例えば、１つのソフトウェアを実現する複数のプログラムに対応する。
【００７０】
部品は、データまたはプログラムを示す。部品は、処理内容を示す。部品は、例えば、オブジェクトである。同一のデータまたはプログラムを示す複数の部品は、例えば、同一の部品として扱うことが可能である。接続部品は、例えば、矢印である。接続部品は、接続部品の第１の点から外部に伸ばした線分上にある部品と、接続部品の第２の点から外部に伸ばした線分上にある部品との接続関係を示す。順序関係は、接続部品が示す方向で規定される前後関係である。順序関係は、例えば、矢印の始点に接続されたオブジェクトを「前」とし、矢印の終点に接続されたオブジェクトを「後」とする順序関係である。終点は、例えば、矢印の鏃側である。始点は、例えば、矢印の鏃側の反対側である。これにより、記憶部９００は、複数の図面を、各機能部が参照可能にすることができる。
【００７１】
記憶部９００は、部品間の関係性を示す情報を記憶する。記憶部９００は、例えば、順序情報を記憶する。順序情報は、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す対応情報である。記憶部９００は、具体的には、図４に示した位置関係テーブル４００や図５に示した影響度テーブル５００を記憶する。これにより、記憶部９００は、図４に示した位置関係テーブル４００や図５に示した影響度テーブル５００を、各機能部が参照可能にすることができる。
【００７２】
記憶部９００は、例えば、位置関係情報を記憶する。位置関係情報は、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す対応情報である。記憶部９００は、具体的には、図６に示した配置規則テーブル６００を記憶する。これにより、記憶部９００は、図６に示した配置規則テーブル６００を、各機能部が参照可能にすることができる。
【００７３】
記憶部９００は、例えば、属性情報を記憶する。属性情報は、部品の種別ごとに、部品の属性を対応付けて示す対応情報である。属性は、部品の形状または色である。記憶部９００は、具体的には、図７に示した属性テーブル７００を記憶する。これにより、記憶部９００は、図７に示した属性テーブル７００を、各機能部が参照可能にすることができる。
【００７４】
取得部９０１は、各機能部の処理に用いられる各種情報を取得する。取得部９０１は、例えば、各機能部の処理に用いられる各種情報を記憶部９００から取得し、各機能部に出力してもよい。取得部９０１は、例えば、各機能部の処理に用いられる各種情報を、情報処理装置１００とは異なる装置から取得し、記憶部９００に記憶し、または、各機能部に出力してもよい。
【００７５】
取得部９０１は、例えば、いずれかの部品の指定を受け付けてもよい。取得部９０１は、例えば、所定の図面のうちのいずれかの部品を始点または終点として示す接続部品の配置操作を受け付けてもよい。所定の図面は、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現する。所定の図面は、例えば、複数の図面のいずれかの図面である。所定の図面は、複数の図面とは異なる図面であってもよい。
【００７６】
取得部９０１は、例えば、所定の図面を受け付けてもよい。取得部９０１は、例えば、所定の図面のうちで接続関係がある２つの部品のいずれかの部品の移動操作を受け付けてもよい。取得部９０１は、例えば、所定の図面のうちのいずれかの接続部品による接続関係の変更操作を受け付けてもよい。これにより、取得部９０１は、各機能部の処理に用いられる各種情報を、各機能部に提供することができる。
【００７７】
生成部９０２は、複数の図面に基づいて、部品間の関係性を示す情報を生成する。生成部９０２は、例えば、複数の図面に基づいて、順序情報を生成する。生成部９０２は、具体的には、複数のフロー図におけるオブジェクトの組み合わせごとに位置関係を解析し、図４に示した位置関係テーブル４００や図５に示した影響度テーブル５００を生成する。これにより、生成部９０２は、オブジェクト間の位置関係の基準を特定可能にし、所定の図面におけるいずれかのオブジェクト間の位置関係が基準に合致するか否かを判断可能にすることができる。
【００７８】
生成部９０２は、例えば、複数の図面に基づいて、位置関係情報を生成する。生成部９０２は、具体的には、複数のフロー図におけるオブジェクトのオブジェクト種別の組み合わせごとに位置関係を解析し、図６に示した配置規則テーブル６００を生成する。これにより、生成部９０２は、オブジェクト種別の組み合わせごとの位置関係の基準を特定可能にし、所定の図面におけるいずれかのオブジェクト種別の組み合わせの位置関係が基準に合致するか否かを判断可能にすることができる。
【００７９】
生成部９０２は、例えば、複数の図面に基づいて、属性情報を生成する。生成部９０２は、具体的には、複数のフロー図におけるオブジェクトの形状や色を解析し、図７に示した属性テーブル７００を生成する。これにより、生成部９０２は、オブジェクトの形状や色の基準を特定可能にし、所定の図面におけるオブジェクトの形状や色が基準に合致するか否かを判断可能にすることができる。各種テーブル４００〜７００を生成する一例は、例えば、図１０〜図２１を用いて後述する。
【００８０】
出力部９０３は、情報を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークＩ／Ｆ３０３による外部装置への送信、または、メモリ３０２や記録媒体３０５などの記憶領域への記憶である。
【００８１】
出力部９０３は、例えば、所定の図面のうちのいずれかの部品を始点または終点として示す接続部品が配置された場合、配置された接続部品の方向を参照し、生成した位置関係情報に基づいて、いずれかの部品と接続される部品に関する情報を出力する。部品に関する情報は、部品の種別を含む。出力部９０３は、具体的には、配置済みのオブジェクトを始点または終点として示す矢印が配置された場合、矢印が引かれた方向を検出する。出力部９０３は、位置関係テーブル４００や配置規則テーブル６００に基づいて、配置済みのオブジェクトと接続され、終点または始点となるオブジェクトの候補に関する情報として、オブジェクト名やオブジェクト種別を表示する。表示先は、例えば、他装置であってもよい。
【００８２】
オブジェクトの候補に関する情報を表示する一例は、例えば、図２２〜図２５を用いて後述する。これにより、出力部９０３は、配置済みのオブジェクトと接続されるオブジェクトの候補を把握しやすくすることができ、フロー図の作成にかかる負担の低減化を図ることができる。
【００８３】
出力部９０３は、例えば、所定の図面のうちで接続関係がある２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定する。そして、出力部９０３は、判定結果を出力する。出力部９０３は、具体的には、接続関係がある２つのオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するか否かを判定する。そして、出力部９０３は、判定結果を表示する。表示先は、他装置であってもよい。
【００８４】
出力部９０３は、例えば、生成した属性情報に基づいて、所定の図面のうちのいずれかの部品の属性が、いずれかの部品の種別に対応する属性に含まれるか否かを判定する。そして、出力部９０３は、判定結果を出力する。出力部９０３は、具体的には、属性テーブル７００に基づいて、オブジェクトの形状や色が、基準に合致するか否かを判定する。そして、出力部９０３は、判定結果を表示する。表示先は、例えば、他装置であってもよい。
【００８５】
オブジェクト間の位置関係やオブジェクトの属性が基準に合致するか否かを判定する一例は、例えば、図２６〜図２８を用いて後述する。これにより、出力部９０３は、オブジェクト間の位置関係やオブジェクトの属性が基準に合致するか否かを把握しやすくすることができ、フロー図の修正にかかる負担の低減化を図ることができる。
【００８６】
出力部９０３は、例えば、いずれかの部品の指定を受け付けた場合、生成した順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する。部品に関する情報は、部品の種別を含む。出力部９０３は、具体的には、指定されたオブジェクトの直前に順序付けられたオブジェクト、および、直後に順序付けられたオブジェクトの少なくともいずれかのオブジェクトのオブジェクト名やオブジェクト種別を表示する。表示先は、他装置であってもよい。
【００８７】
オブジェクト名やオブジェクト種別を表示する一例は、例えば、図２９および図３０を用いて後述する。これにより、出力部９０３は、オブジェクトが示すデータやプログラムの変更による影響があるデータやプログラムの範囲を把握可能にすることができ、データやプログラムの修正にかかる負担の低減化を図ることができる。
【００８８】
出力部９０３は、例えば、所定の図面のうちで接続関係がある２つの部品のいずれかの部品が移動された場合、移動後の２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定する。そして、出力部９０３は、判定結果を出力する。出力部９０３は、具体的には、接続関係がある２つのオブジェクトのいずれかのオブジェクトが移動された場合、移動後の２つのオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するか否かを判定する。そして、出力部９０３は、判定結果を出力する。
【００８９】
出力部９０３は、例えば、所定の図面のうちで接続関係がある２つの部品の一方の部品を変更する場合、他方の部品と接続される部品に関する情報を出力する。出力部９０３は、具体的には、接続関係がある２つのオブジェクトのいずれかのオブジェクトを変更する場合、変更後の２つのオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するような、変更候補を表示する。表示先は、例えば、他装置であってもよい。そして、出力部９０３は、判定結果を出力する。
【００９０】
出力部９０３は、例えば、所定の図面のうちのいずれかの接続部品による接続関係を変更する場合、変更後にいずれかの接続部品が接続関係を示す２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定する。そして、出力部９０３は、判定結果を出力する。出力部９０３は、具体的には、矢印を移動し、接続関係を変更した２つのオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するか否かを判定する。そして、出力部９０３は、判定結果を出力する。
【００９１】
オブジェクトの移動、および、矢印の移動に応じて、オブジェクト間の位置関係が基準に合致するか否かを判定し、または、オブジェクトの変更に応じて、変更候補を表示する一例は、例えば、図３１〜図４７を用いて後述する。これにより、出力部９０３は、オブジェクトを変更しやすくし、または、オブジェクト間の位置関係が基準に合致するか否かを把握しやすくすることができ、フロー図の修正にかかる負担の低減化を図ることができる。
【００９２】
出力部９０３は、例えば、いずれかの部品の指定を受け付けた場合、生成した順序情報に基づいて、指定されたいずれかの部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの、複数の図面における配置数を取得する。出力部９０３は、取得した配置数を用いて、指定されたいずれかの部品の影響度を算出し、算出した影響度を出力する。出力部９０３は、具体的には、影響度テーブル５００から、指定されたいずれかの部品に対応する始点影響度、終点影響度、および、全体影響度を抽出する。そして、出力部９０３は、抽出した始点影響度、終点影響度、および、全体影響度を表示する。表示先は、例えば、他装置であってもよい。
【００９３】
始点影響度、終点影響度、および、全体影響度を表示する一例は、例えば、図４８〜図５２を用いて後述する。これにより、出力部９０３は、オブジェクトが示すデータやプログラムの変更による影響の大きさを把握可能にすることができ、データやプログラムの修正にかかる時間を見積もりやすくすることができ、負担の低減化を図ることができる。
【００９４】
出力部９０３は、各機能部の処理結果を出力してもよい。これにより、出力部９０３は、各機能部の処理結果を利用者に通知可能にし、情報処理装置１００の管理や運用、例えば、情報処理装置１００の設定値の更新などを支援することができ、情報処理装置１００の利便性の向上を図ることができる。
【００９５】
（情報処理装置１００が各種テーブルを生成する一例）
次に、図１０〜図１６を用いて、情報処理装置１００が各種テーブルを生成する一例について説明する。まず、図１０〜図１２の説明に移行し、各種テーブルを生成する際に用いられるフロー図の一例について説明する。
【００９６】
図１０〜図１２は、フロー図の一例を示す説明図である。図１０のフロー図１０００は、オブジェクトＡと、オブジェクトＢと、オブジェクトＣと、オブジェクトＤと、オブジェクトＥと、オブジェクトＦと、オブジェクトＧとが配置される。フロー図１０００において、例えば、オブジェクトＡを終点、オブジェクトＢを始点として矢印が配置される。
【００９７】
フロー図１０００において、例えば、オブジェクトＡとオブジェクトＢとの間で、オブジェクトＡの相対位置は「下」であり、オブジェクトＢの相対位置は「上」である。ここで、オブジェクトＢが、オブジェクトＡの直上に存在しなくても、オブジェクトＡの右斜め上４５度から左斜め上４５度までの範囲に存在すれば、「上」に存在すると扱われる。次に、図１１の説明に移行する。
【００９８】
図１１のフロー図１１００は、オブジェクトＡと、オブジェクトＢと、オブジェクトＧと、オブジェクトＨとが配置される。フロー図１１００において、例えば、オブジェクトＡを終点、オブジェクトＢを始点として矢印が配置される。フロー図１１００において、例えば、オブジェクトＡとオブジェクトＢとの間で、オブジェクトＡの相対位置は「下」であり、オブジェクトＢの相対位置は「上」である。次に、図１２の説明に移行する。
【００９９】
図１２のフロー図１２００は、オブジェクトＡと、オブジェクトＦと、オブジェクトＧと、オブジェクトＩと、オブジェクトＪと、オブジェクトＫとが配置される。フロー図１２００において、例えば、オブジェクトＡを始点、オブジェクトＦを終点として矢印が配置される。フロー図１２００において、例えば、オブジェクトＡとオブジェクトＦとの間で、オブジェクトＡの相対位置は「上」であり、オブジェクトＦの相対位置は「下」である。次に、図１３〜図１６の説明に移行し、フロー図におけるオブジェクト間の接続関係を判定する一例について説明する。
【０１００】
図１３〜図１６は、オブジェクト間の接続関係を判定する一例を示す説明図である。フロー図１０００〜１２００では、オブジェクトと矢印とが接触するように配置される場合について説明したが、これに限らない。
【０１０１】
図１３の例では、オブジェクトと矢印とが接触しない場合について説明する。この場合、情報処理装置１００は、例えば、矢印の始点方向への延長線上にあるオブジェクトと、矢印の終点方向への延長線上にあるオブジェクトとに接続関係があると判定する。
【０１０２】
例えば、オブジェクトＡと矢印との配置状態１３０１であれば、オブジェクトＡは始点としても終点としても接続されていると判定される。また、例えば、オブジェクトＡと矢印との配置状態１３０２であれば、オブジェクトＡは始点として接続されているが、終点としては接続されていないと判定される。
【０１０３】
また、例えば、オブジェクトＡと矢印との配置状態１３０３であれば、オブジェクトＡは始点としては接続されていないが、終点としては接続されていると判定される。次に、図１４〜図１６の説明に移行し、種々のバリエーションの接続部品によるオブジェクト間の接続関係を判定する一例について説明する。
【０１０４】
図１４に示すように、接続部品が、直線１４０１である場合がある。この場合、接続部品は、図１３と同様に、直線１４０１の始点方向への延長線上にあるオブジェクトと、直線１４０１の終点方向への延長線上にあるオブジェクトとの接続関係を示す。
【０１０５】
また、接続部品が、カギ線１４０２である場合がある。この場合、接続部品は、始点側の折れ曲がり点から始点の方向への直線的な延長線上にあるオブジェクトと、終点側の折れ曲がり点から終点の方向への直線的な延長線上にあるオブジェクトとの接続関係を示す。
【０１０６】
また、接続部品が、曲線１４０３，１４０４である場合がある。この場合、接続部品は、曲線１４０３，１４０４の始点側の延長線上にあるオブジェクトと、曲線１４０３，１４０４の終点側の延長線上にあるオブジェクトとの接続関係を示す。曲線１４０３，１４０４の延長線について図１５を用いてさらに説明する。
【０１０７】
図１５に示すように、矢印の始点側の延長線は、矢印の始点側の辺の２等分線の方向に伸びる延長線である。また、矢印の終点側の延長線は、矢印の終点側の三角形の辺の２等分線であり三角形の頂点を通過する方向に伸びる延長線である。次に、図１６の説明に移行する。
【０１０８】
図１６に示すように、接続部品が、ブロック矢印１６０１である場合がある。この場合、接続部品は、始点側の辺の２等分線の方向に伸びる延長線上のオブジェクトと、終点側の三角形の辺の２等分線であり三角形の頂点を通過する方向に伸びる延長線上のオブジェクトとの接続関係を示す。
【０１０９】
また、接続部品が、ブロック曲線１６０２である場合がある。この場合、接続部品は、始点側の辺の２等分線の方向に伸びる延長線上のオブジェクトと、終点側の三角形の辺の２等分線であり三角形の頂点を通過する方向に伸びる延長線上のオブジェクトとの接続関係を示す。
【０１１０】
ここで、フロー図においては、所定の規則にしたがって、オブジェクトが配置され、オブジェクト間が矢印により接続される傾向がある。所定の規則は、例えば、設計上の規約である。例えば、オブジェクトを上下に接続した矢印が、処理の流れを示し、オブジェクトを左右に接続した矢印が、データの流れを示すように、フロー図を作成するという規則がある場合がある。この場合、フロー図を規則にしたがって統一的に作成することにより、フロー図の視認性の向上や記載ミスの防止を図ることが可能になる。
【０１１１】
したがって、フロー図を規則にしたがって作成しやすくし、または、フロー図が規則にしたがっているかを把握しやすくすることが望まれる。例えば、オブジェクト間の位置関係の基準、オブジェクト種別の組み合わせごとの位置関係の基準、オブジェクトの形状や色の基準などにしたがって、フロー図を作成しやすくすることが望まれる。そこで、情報処理装置１００は、図１７に後述するテーブル作成処理を実行し、図４〜図７に示した各種テーブルを生成することにより、各種基準を特定し、フロー図の作成や修正を支援する。
【０１１２】
また、フロー図が作成されていき、作成されたフロー図の数が多くなるほど、フロー図から情報を読み取ることにかかる負担が大きくなる傾向がある。例えば、いずれかのオブジェクトが示す処理内容を変更した場合、他のいずれの処理に影響するかを、複数のフロー図から読み取ることにかかる負担が大きくなりやすい。そこで、情報処理装置１００は、図１７に後述するテーブル作成処理を実行し、図４〜図７に示した各種テーブルを生成することにより、オブジェクト間の順序関係を特定し、フロー図からの情報の読み取りを支援する。次に、図１７の説明に移行する。
【０１１３】
（テーブル作成処理手順）
次に、図１７を用いて、情報処理装置１００が実行する、テーブル作成処理手順の一例について説明する。テーブル作成処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１１４】
図１７は、テーブル作成処理手順の一例を示すフローチャートである。図１７において、まず、情報処理装置１００は、フロー図を読み込む（ステップＳ１７０１）。次に、情報処理装置１００は、第１作成処理を実行する（ステップＳ１７０２）。そして、情報処理装置１００は、第２作成処理を実行する（ステップＳ１７０３）。次に、情報処理装置１００は、第３作成処理を実行する（ステップＳ１７０４）。そして、情報処理装置１００は、テーブル作成処理を終了する。
【０１１５】
（第１作成処理手順）
次に、図１８を用いて、情報処理装置１００が実行する、第１作成処理手順の一例について説明する。第１作成処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１１６】
図１８は、第１作成処理手順の一例を示すフローチャートである。図１８において、まず、情報処理装置１００は、始点になるオブジェクトをすべて列挙し、位置関係テーブル４００の始点のフィールドに設定する（ステップＳ１８０１）。そして、情報処理装置１００は、終点になるオブジェクトをすべて列挙し、終点になるオブジェクトと接続関係がある始点になるオブジェクトに対応する位置関係テーブル４００のレコードの終点のフィールドに設定する（ステップＳ１８０２）。
【０１１７】
次に、情報処理装置１００は、接続関係があるオブジェクトの組み合わせごとに、図１９に後述するサブ処理の対象に設定し、図１９に後述するサブ処理を実行する（ステップＳ１８０３）。そして、情報処理装置１００は、第１作成処理を終了する。
【０１１８】
（ステップＳ１８０３のサブ処理手順）
次に、図１９を用いて、情報処理装置１００が実行する、ステップＳ１８０３のサブ処理手順の一例について説明する。ステップＳ１８０３のサブ処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１１９】
図１９は、ステップＳ１８０３のサブ処理手順の一例を示すフローチャートである。図１９において、まず、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードに、始点相対位置と終点相対位置とが設定されているか否かを判定する（ステップＳ１９０１）。
【０１２０】
ここで、設定されている場合（ステップＳ１９０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ１９０４の処理に移行する。一方で、設定されていない場合（ステップＳ１９０１：Ｎｏ）、情報処理装置１００は、ステップＳ１９０２の処理に移行する。
【０１２１】
ステップＳ１９０２では、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードの始点相対位置と終点相対位置とのフィールドに、相対位置情報を設定する（ステップＳ１９０２）。次に、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードのパターン数のフィールドに、１を設定する（ステップＳ１９０３）。そして、情報処理装置１００は、サブ処理を終了する。
【０１２２】
ステップＳ１９０４では、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードに、対象とするオブジェクトの組み合わせについての相対位置情報が設定済みであるか否かを判定する（ステップＳ１９０４）。
【０１２３】
ここで、設定済みである場合（ステップＳ１９０４：Ｙｅｓ）、情報処理装置１００は、ステップＳ１９０７の処理に移行する。一方で、設定済みではない場合（ステップＳ１９０４：Ｎｏ）、情報処理装置１００は、ステップＳ１９０５の処理に移行する。
【０１２４】
ステップＳ１９０５では、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードをコピーし、コピーしたレコードの始点相対位置と終点相対位置とのフィールドに、相対位置情報を設定する（ステップＳ１９０５）。次に、情報処理装置１００は、コピーしたレコードのパターン数のフィールドに、１を設定する（ステップＳ１９０６）。そして、情報処理装置１００は、サブ処理を終了する。
【０１２５】
ステップＳ１９０７では、情報処理装置１００は、対象とするオブジェクトの組み合わせが設定された位置関係テーブル４００のレコードのパターン数のフィールドの値をインクリメントする（ステップＳ１９０７）。そして、情報処理装置１００は、サブ処理を終了する。
【０１２６】
（第２作成処理手順）
次に、図２０を用いて、情報処理装置１００が実行する、第２作成処理手順の一例について説明する。第２作成処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１２７】
図２０は、第２作成処理手順の一例を示すフローチャートである。図２０において、まず、情報処理装置１００は、位置関係テーブル４００のレコードの始点または終点のフィールドに設定されたオブジェクトを抽出し、抽出したオブジェクトが設定されたレコードを影響度テーブル５００に追加する（ステップＳ２００１）。
【０１２８】
次に、情報処理装置１００は、オブジェクトごとに、オブジェクトの形状や色に基づいてオブジェクト種別を判定し、影響度テーブル５００のレコードのオブジェクト種別のフィールドに設定する（ステップＳ２００２）。そして、情報処理装置１００は、オブジェクト種別ごとに、オブジェクトの形状や色を対応付けたレコードを、属性テーブル７００に追加する（ステップＳ２００３）。ここで、始点係数や終点係数は、例えば、初期値１が設定される。
【０１２９】
次に、情報処理装置１００は、オブジェクトごとに、当該オブジェクトが始点のフィールドに設定された位置関係テーブル４００のレコードのパターン数のフィールドの値を合計し、影響度テーブル５００の相対始点数のフィールドに設定する（ステップＳ２００４）。そして、情報処理装置１００は、オブジェクトごとに、当該オブジェクトが終点のフィールドに設定された位置関係テーブル４００のレコードのパターン数のフィールドの値を合計し、影響度テーブル５００の相対終点数のフィールドに設定する（ステップＳ２００５）。
【０１３０】
次に、情報処理装置１００は、属性テーブル７００から始点係数と終点係数とを取得し、影響度テーブル５００の相対始点数と相対終点数とのフィールドの値にそれぞれ乗算し、始点影響度と終点影響度とのフィールドに設定する（ステップＳ２００６）。
【０１３１】
そして、情報処理装置１００は、オブジェクトごとに、当該オブジェクトが終点のフィールドに設定された位置関係テーブル４００のレコードの始点のフィールドに設定されたオブジェクトを、影響度テーブル５００の終点候補のフィールドに設定する（ステップＳ２００７）。
【０１３２】
さらに、情報処理装置１００は、オブジェクトごとに、当該オブジェクトが始点のフィールドに設定された位置関係テーブル４００のレコードの終点のフィールドに設定されたオブジェクトを、影響度テーブル５００の終点候補のフィールドに設定する（ステップＳ２００８）。そして、情報処理装置１００は、第２作成処理を終了する。
【０１３３】
（第３作成処理手順）
次に、図２１を用いて、情報処理装置１００が実行する、第３作成処理手順の一例について説明する。第３作成処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１３４】
図２１は、第３作成処理手順の一例を示すフローチャートである。図２１において、まず、情報処理装置１００は、属性テーブル７００が示すすべての種別を、始点になるオブジェクトのオブジェクト種別を表すＹ軸要素、および、終点になるオブジェクトのオブジェクト種別を表すＸ軸要素に設定した配置規則テーブル６００を生成する（ステップＳ２１０１）。
【０１３５】
次に、情報処理装置１００は、位置関係テーブル４００と影響度テーブル５００とに基づいて、種別の組み合わせごとに、オブジェクトの位置関係を特定し、当該組み合わせに対応する配置規則テーブル６００のフィールドに設定する（ステップＳ２１０２）。そして、情報処理装置１００は、第３作成処理を終了する。
【０１３６】
（情報処理装置１００が描画サポートを実施する一例）
次に、図２２および図２３を用いて、情報処理装置１００が描画サポートを実施する一例について説明する。
【０１３７】
図２２および図２３は、情報処理装置１００が描画サポートを実施する一例を示す説明図である。図２２において、情報処理装置１００は、オブジェクトＡを表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、オブジェクトＡを始点とする左方向への矢印が引かれたことを検出する。情報処理装置１００は、クライアント装置２０１において矢印を引く操作が行われたことを検出してもよい。
【０１３８】
情報処理装置１００は、矢印の方向を参照し、オブジェクトＡの左側に配置するオブジェクトの候補を特定する。情報処理装置１００は、例えば、影響度テーブル５００に基づいて、オブジェクトＡのオブジェクト種別「種別１」を特定する。次に、情報処理装置１００は、配置規則テーブル６００に基づいて、オブジェクト種別「種別１」を始点とした場合に、左側に配置されるオブジェクト種別「種別２」および「種別３」を特定する。
【０１３９】
そして、情報処理装置１００は、位置関係テーブル４００に基づいて、オブジェクト種別「種別２」および「種別３」で、かつ、オブジェクトＡの左側に配置済みであるオブジェクトＧを、候補として特定する。また、情報処理装置１００は、特定したオブジェクト種別「種別２」および「種別３」の新規オブジェクトを、候補として特定してもよい。
【０１４０】
情報処理装置１００は、特定した候補の一覧２２００を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、例えば、オブジェクト種別「種別３」のオブジェクトＧと、オブジェクト種別「種別２」の新規オブジェクトと、オブジェクト種別「種別３」の新規オブジェクトとを一覧表示する。次に、図２３の説明に移行する。
【０１４１】
図２３において、情報処理装置１００は、オブジェクトＡを表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、オブジェクトＡを始点とする下方向への矢印が引かれたことを検出する。情報処理装置１００は、クライアント装置２０１において矢印を引く操作が行われたことを検出してもよい。
【０１４２】
情報処理装置１００は、矢印の方向を参照し、オブジェクトＡの下側に配置するオブジェクトの候補を特定する。情報処理装置１００は、例えば、影響度テーブル５００に基づいて、オブジェクトＡのオブジェクト種別「種別１」を特定する。次に、情報処理装置１００は、配置規則テーブル６００に基づいて、オブジェクト種別「種別１」を始点とした場合に、下側に配置されるオブジェクト種別「種別１」および「種別２」を特定する。
【０１４３】
そして、情報処理装置１００は、位置関係テーブル４００に基づいて、オブジェクト種別「種別１」および「種別２」で、かつ、オブジェクトＡの下側に配置済みであるオブジェクトＥとオブジェクトＦとオブジェクトＨとを、候補として特定する。また、情報処理装置１００は、特定したオブジェクト種別「種別１」および「種別２」の新規オブジェクトを、候補として特定してもよい。
【０１４４】
情報処理装置１００は、特定した候補の一覧２３００を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、例えば、オブジェクト種別「種別２」のオブジェクトＥとオブジェクトＦとオブジェクトＨと、オブジェクト種別「種別１」の新規オブジェクトと、オブジェクト種別「種別２」の新規オブジェクトとを一覧表示する。
【０１４５】
これにより、情報処理装置１００は、配置済みのオブジェクトと接続するオブジェクトの候補を把握しやすくすることができ、フロー図の作成にかかる負担の低減化を図ることができる。また、情報処理装置１００は、候補として、配置規則テーブル６００が示す基準に合致するオブジェクトを表示するため、基準に合致したフロー図を作成しやすくすることができ、フロー図の有用性の向上を図ることができる。
【０１４６】
情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。
【０１４７】
（描画サポート処理手順）
次に、図２４および図２５を用いて、情報処理装置１００が実行する、描画サポート処理手順の一例について説明する。描画サポート処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１４８】
図２４および図２５は、描画サポート処理手順の一例を示すフローチャートである。図２４において、まず、情報処理装置１００は、いずれかのオブジェクトの選択、または、新規オブジェクトの配置を検出する（ステップＳ２４０１）。次に、情報処理装置１００は、選択または配置された対象のオブジェクトを起点として矢印が引かれた方向を検出する（ステップＳ２４０２）。
【０１４９】
そして、情報処理装置１００は、配置規則テーブル６００に基づいて、対象のオブジェクトのオブジェクト種別が該当するＹ軸要素に対応するＸ軸要素が存在するか否かを判定する（ステップＳ２４０３）。ここで、存在する場合（ステップＳ２４０３：Ｙｅｓ）、情報処理装置１００は、ステップＳ２４０４の処理に移行する。一方で、存在しない場合（ステップＳ２４０３：Ｎｏ）、情報処理装置１００は、描画サポート処理を終了する。
【０１５０】
ステップＳ２４０４では、情報処理装置１００は、位置関係テーブル４００を参照し、Ｘ軸要素に基づいて、終点候補リストを生成して表示する（ステップＳ２４０４）。そして、情報処理装置１００は、図２５のステップＳ２５０１の処理に移行する。
【０１５１】
図２５において、情報処理装置１００は、終点候補の選択を検出する（ステップＳ２５０１）。次に、情報処理装置１００は、選択された終点候補が既存オブジェクトであるか否かを判定する（ステップＳ２５０２）。
【０１５２】
ここで、既存オブジェクトである場合（ステップＳ２５０２：Ｙｅｓ）、情報処理装置１００は、ステップＳ２５０３の処理に移行する。一方で、既存オブジェクトではない場合（ステップＳ２５０２：Ｎｏ）、情報処理装置１００は、ステップＳ２５０７の処理に移行する。
【０１５３】
ステップＳ２５０３では、情報処理装置１００は、対象のオブジェクトを始点とし、選択された終点候補である既存オブジェクトを終点として、位置関係テーブル４００を検索し、パターン数をインクリメントする（ステップＳ２５０３）。
【０１５４】
次に、情報処理装置１００は、影響度テーブル５００のうち、対象のオブジェクトに対応する相対終点数と、選択された終点候補である既存オブジェクトに対応する相対始点数とをインクリメントする（ステップＳ２５０４）。そして、情報処理装置１００は、対象のオブジェクトに対応する終点影響度と全体影響度とを更新する（ステップＳ２５０５）。
【０１５５】
次に、情報処理装置１００は、選択された終点候補である既存オブジェクトに対応する始点影響度と全体影響度とを更新する（ステップＳ２５０６）。そして、情報処理装置１００は、描画サポート処理を終了する。
【０１５６】
ステップＳ２５０７では、情報処理装置１００は、対象のオブジェクトを始点とし、選択された終点候補である既存オブジェクトを終点として、位置関係テーブル４００にレコードを追加し、パターン数、始点相対位置、終点相対位置を設定する（ステップＳ２５０７）。ここで、パターン数は、例えば、１が設定される。始点相対位置と終点相対位置は、例えば、対象のオブジェクトと、既存オブジェクトとの位置関係に基づいて設定される。
【０１５７】
次に、情報処理装置１００は、選択された終点候補である既存オブジェクトに対応するレコードを、影響度テーブル５００に追加する（ステップＳ２５０８）。ここで、「オブジェクト種別」は、例えば、選択された終点候補である既存オブジェクトのオブジェクト種別が設定される。「相対始点数」は、１が設定され、「相対終点数」は、０が設定される。
【０１５８】
また、「始点影響度」と「終点影響度」とは、「相対始点数」と「相対終点数」と「始点係数」と「終点係数」とから算出されて設定される。係数により、フロー図の目的や用途に合わせて、影響度に重み付けが可能である。「全体影響度」は、「始点影響度」と「終点影響度」との和が設定される。「始点候補」は、対象のオブジェクトが設定される。そして、情報処理装置１００は、描画サポート処理を終了する。
【０１５９】
（情報処理装置１００が誤りチェックを実施する一例）
次に、図２６を用いて、情報処理装置１００が誤りチェックを実施する一例について説明する。
【０１６０】
図２６は、情報処理装置１００が誤りチェックを実施する一例を示す説明図である。図２６において、情報処理装置１００は、フロー図２６００を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図２６００のそれぞれのオブジェクトの属性が、属性情報テーブルが示す基準に合致するか否かを判定する。また、情報処理装置１００は、フロー図２６００のオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するか否かを判定する。情報処理装置１００は、判定結果を、フロー図２６００上に表示する。
【０１６１】
情報処理装置１００は、例えば、影響度テーブル５００に基づいて、オブジェクトＮのオブジェクト種別「種別１」を特定する。次に、情報処理装置１００は、オブジェクトＮの形状や色が、オブジェクト種別「種別１」に対応付けて属性テーブル７００に記憶された形状や色と合致するか否かを判定する。図２６の例では、情報処理装置１００は、合致しないと判定し、オブジェクトＮに「規約エラー」をエラー表示する。表示先は、例えば、クライアント装置２０１であってもよい。エラー表示は、例えば、オブジェクトの背景色の変更、オブジェクトの線色の変更、矢印の線色の変更、オブジェクトのバックグラウンドのハイライト、オブジェクトに対する吹き出しの挿入などである。
【０１６２】
情報処理装置１００は、例えば、影響度テーブル５００に基づいて、始点になるオブジェクトＣのオブジェクト種別「種別３」と、終点になるオブジェクトＢのオブジェクト種別「種別１」とを特定する。また、情報処理装置１００は、オブジェクトＢとオブジェクトＣとの位置関係を特定する。次に、情報処理装置１００は、配置規則テーブル６００に基づいて、始点側のオブジェクト種別「種別３」と、終点側のオブジェクト種別「種別１」との組み合わせに対応する位置関係の規則「始点から見て終点が左に存在する」を特定する。
【０１６３】
そして、情報処理装置１００は、オブジェクトＢとオブジェクトＣとの位置関係が、特定した規則「始点から見て終点が左に存在する」に合致しないため、「相対位置エラー」をエラー表示する。エラー表示は、オブジェクトの背景色の変更、オブジェクトの線色の変更、矢印の線色の変更、オブジェクトまたは矢印のバックグラウンドのハイライト、オブジェクトまたは矢印に対する吹き出しの挿入などである。
【０１６４】
これにより、情報処理装置１００は、作成済みのフロー図のうちのオブジェクトや矢印が、配置規則テーブル６００が示す基準に合致するか否かを把握しやすくすることができ、フロー図の修正にかかる負担の低減化を図ることができる。また、情報処理装置１００は、フロー図を、配置規則テーブル６００が示す基準に合致するように修正しやすくすることができ、フロー図の有用性の向上を図ることができる。
【０１６５】
情報処理装置１００は、エラー表示された箇所が正常であると指示された場合、各種テーブルを更新してもよい。情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。
【０１６６】
（誤りチェック処理手順）
次に、図２７を用いて、情報処理装置１００が実行する、誤りチェック処理手順の一例について説明する。誤りチェック処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１６７】
図２７は、誤りチェック処理手順の一例を示すフローチャートである。図２７において、まず、情報処理装置１００は、フロー図を読み込む（ステップＳ２７０１）。次に、情報処理装置１００は、フロー図に配置されたオブジェクトを順に選択し、図２８に後述するサブ処理の対象に設定し、図２８に後述するサブ処理を実行する（ステップＳ２７０２）。そして、情報処理装置１００は、誤りチェック処理を終了する。
【０１６８】
（ステップＳ２７０２のサブ処理手順）
次に、図２８を用いて、情報処理装置１００が実行する、ステップＳ２７０２のサブ処理手順の一例について説明する。ステップＳ２７０２のサブ処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１６９】
図２８は、ステップＳ２７０２のサブ処理手順の一例を示すフローチャートである。図２８において、情報処理装置１００は、対象のオブジェクトの形状および色が、属性テーブル７００に存在するか否かを判定する（ステップＳ２８０１）。
【０１７０】
ここで、存在する場合（ステップＳ２８０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ２８０３の処理に移行する。一方で、存在しない場合（ステップＳ２８０１：Ｎｏ）、情報処理装置１００は、ステップＳ２８０２の処理に移行する。
【０１７１】
ステップＳ２８０２では、情報処理装置１００は、オブジェクトを「規約エラー」としてエラー表示する（ステップＳ２８０２）。そして、情報処理装置１００は、サブ処理を終了する。
【０１７２】
ステップＳ２８０３では、情報処理装置１００は、対象のオブジェクトが終点であれば、対象のオブジェクトと、対象のオブジェクトに対応する始点となるオブジェクトとの位置関係が、配置規則テーブル６００に存在するか否かを判定する（ステップＳ２８０３）。
【０１７３】
ここで、存在する場合（ステップＳ２８０３：Ｙｅｓ）、情報処理装置１００は、サブ処理を終了する。一方で、存在しない場合（ステップＳ２８０３：Ｎｏ）、情報処理装置１００は、ステップＳ２８０４の処理に移行する。
【０１７４】
ステップＳ２８０４では、情報処理装置１００は、対象のオブジェクトと、対象のオブジェクトに対応する始点となるオブジェクトと、オブジェクト間を接続する矢印とを「相対位置エラー」としてエラー表示する（ステップＳ２８０４）。そして、情報処理装置１００は、サブ処理を終了する。
【０１７５】
（情報処理装置１００が影響範囲表示を実施する一例）
次に、図２９を用いて、情報処理装置１００が影響範囲表示を実施する一例について説明する。
【０１７６】
図２９は、情報処理装置１００が影響範囲表示を実施する一例を示す説明図である。図２９において、情報処理装置１００は、フロー図２９０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図２９０１のオブジェクトＡを指定してメニュー表示操作が行われたことを検出すると、フロー図２９０１にメニューを表示する。オブジェクトの指定は、オブジェクトのフォーカスによる自動指定、フォーカスによるコンテキストメニュー内のアイテムクリック、右クリックによるコンテキストメニュー内のアイテムクリックなどである。
【０１７７】
情報処理装置１００は、メニュー上の影響範囲表示が選択されたことを検出する。情報処理装置１００は、影響範囲表示が選択されたことを検出すると、影響度テーブル５００に基づいて、指定されたオブジェクトＡに対応する始点候補「ＢＤＩＪ」と終点候補「ＥＦＧＨＫ」とを取得する。情報処理装置１００は、始点候補「ＢＤＩＪ」と終点候補「ＥＦＧＨＫ」とを、オブジェクトＡの影響範囲として一覧表示する。表示先は、例えば、クライアント装置２０１であってもよい。
【０１７８】
これにより、情報処理装置１００は、オブジェクトが示すデータやプログラムの変更による影響があるデータやプログラムの範囲を把握可能にすることができ、データやプログラムの修正にかかる負担の低減化を図ることができる。
【０１７９】
例えば、オブジェクトが示すプログラムにおける入力変数を増加する修正が行われる場合がある。この場合、情報処理装置１００は、始点候補を表示するため、オブジェクトの直前の順序であり、オブジェクトが示すプログラムにおける入力変数に関わる可能性がある他のオブジェクトが示すプログラムを把握可能にすることができる。結果として、情報処理装置１００は、オブジェクトが示すプログラムにおける入力変数を増加する修正が行われた際に、プログラム間での不整合が発生することを防止しやすくすることができる。
【０１８０】
同様に、例えば、オブジェクトが示すプログラムにおける出力変数を減少する修正が行われる場合がある。この場合、情報処理装置１００は、終点候補を表示するため、オブジェクトの直後の順序であり、オブジェクトが示すプログラムにおける出力変数に関わる可能性がある他のオブジェクトが示すプログラムを把握可能にすることができる。結果として、情報処理装置１００は、オブジェクトが示すプログラムにおける出力変数を減少する修正が行われた際に、プログラム間での不整合が発生することを防止しやすくすることができる。
【０１８１】
情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。
【０１８２】
（影響範囲表示処理手順）
次に、図３０を用いて、情報処理装置１００が実行する、影響範囲表示処理手順の一例について説明する。影響範囲表示処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０１８３】
図３０は、影響範囲表示処理手順の一例を示すフローチャートである。図３０において、まず、情報処理装置１００は、いずれかのオブジェクトの選択を受け付け、選択されたオブジェクトの影響範囲表示要求を受け付ける（ステップＳ３００１）。
【０１８４】
次に、情報処理装置１００は、影響度テーブル５００から、選択されたオブジェクトのレコードを検索する（ステップＳ３００２）。そして、情報処理装置１００は、検索したレコードの始点候補および終点候補のフィールドに設定された情報を、画面に一覧表示する（ステップＳ３００３）。その後、情報処理装置１００は、影響範囲表示処理を終了する。
【０１８５】
（情報処理装置１００が修正サポートを実施する一例）
次に、図３１〜図４０を用いて、情報処理装置１００が修正サポートを実施する一例について説明する。例えば、まず、図３１〜図３４を用いて、オブジェクト移動時に修正サポートを実施する一例について説明する。
【０１８６】
図３１〜図３４は、オブジェクト移動時に修正サポートを実施する一例を示す説明図である。図３１において、情報処理装置１００は、フロー図３１０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図３１０１のオブジェクトＫのドラッグ移動を検出する。ドラッグ移動後、情報処理装置１００は、フロー図３１０２を表示する。情報処理装置１００は、オブジェクトＫのドラッグ移動前後の、他のオブジェクトＡとの位置関係が、配置規則テーブル６００が示す基準に合致するため、位置関係テーブル４００を更新する。次に、図３２の説明に移行する。
【０１８７】
図３２において、情報処理装置１００は、オブジェクトＫとオブジェクトＡとのドラッグ移動前の位置関係に対応する位置関係テーブル４００のレコード３２０１を特定し、特定したレコード３２０１のパターン数「１」をデクリメントする。情報処理装置１００は、パターン数が「０」になるため、特定したレコード３２０１を削除する。情報処理装置１００は、オブジェクトＫとオブジェクトＡとのドラッグ移動後の位置関係に対応するレコード３２０２を生成し、位置関係テーブル４００に追加する。次に、図３３の説明に移行し、図３１とは異なるオブジェクトのドラッグ移動の一例について説明する。
【０１８８】
図３３において、情報処理装置１００は、フロー図３３０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図３３０１のオブジェクトＣのドラッグ移動を検出する。ドラッグ移動後、情報処理装置１００は、フロー図３３０２を表示する。
【０１８９】
ここで、情報処理装置１００は、オブジェクトＣのドラッグ移動後の、他のオブジェクトＢとの位置関係が、配置規則テーブル６００が示す基準に合致しないと判定する。このため、情報処理装置１００は、オブジェクトＢとオブジェクトＣとの位置関係について「相対位置エラー」をエラー表示する。
【０１９０】
エラー表示は、オブジェクトの背景色の変更、オブジェクトの線色の変更、矢印の線色の変更、オブジェクトまたは矢印のバックグラウンドのハイライト、オブジェクトまたは矢印に対する吹き出しの挿入などである。情報処理装置１００は、エラー表示ではなく、ドラッグ移動をキャンセルしてもよい。次に、図３４の説明に移行し、図３１および図３３とは異なるオブジェクトのドラッグ移動の一例について説明する。
【０１９１】
図３４において、情報処理装置１００は、フロー図３４０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図３４０１において、オブジェクトＢとオブジェクトＣとの接続関係について、「相対位置エラー」をエラー表示している。情報処理装置１００は、フロー図３４０１のオブジェクトＣのドラッグ移動を検出する。ドラッグ移動後、情報処理装置１００は、フロー図３４０２を表示する。
【０１９２】
ここで、情報処理装置１００は、オブジェクトＣのドラッグ移動後の、他のオブジェクトＢとの位置関係が、配置規則テーブル６００が示す基準に合致すると判定する。このため、情報処理装置１００は、フロー図３４０２において、オブジェクトＢとオブジェクトＣとの接続関係について、「相対位置エラー」を解除する。
【０１９３】
これにより、情報処理装置１００は、フロー図の作成時や修正時に、オブジェクトや矢印が、配置規則テーブル６００が示す基準に合致するか否かを把握しやすくすることができ、フロー図の作成や修正にかかる負担の低減化を図ることができる。また、情報処理装置１００は、フロー図を、配置規則テーブル６００が示す基準に合致するように作成しやすくすることができ、または修正しやすくすることができ、フロー図の有用性の向上を図ることができる。
【０１９４】
情報処理装置１００は、エラー表示された箇所が正常であると指示された場合、各種テーブルを更新してもよい。情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。次に、図３５〜図３７の説明に移行し、オブジェクト変更時に修正サポートを実施する一例について説明する。
【０１９５】
図３５〜図３７は、オブジェクト変更時に修正サポートを実施する一例を示す説明図である。図３５において、情報処理装置１００は、フロー図３５０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図３５０１のオブジェクトＥを指定してメニュー表示操作が行われ、メニュー上のオブジェクト変更が選択されたことを検出する。情報処理装置１００は、オブジェクト変更が選択されたことを検出すると、フロー図３５０２を表示する。
【０１９６】
ここで、情報処理装置１００は、配置規則テーブル６００および影響度テーブル５００を参照し、指定されたオブジェクトＥと、他のオブジェクトＡとの位置関係に基づいて、オブジェクトＥから変更可能なオブジェクトの候補を特定する。情報処理装置１００は、例えば、オブジェクトＥと、オブジェクトＦと、オブジェクトＨとを特定する。情報処理装置１００は、フロー図３５０２において、特定した変更可能なオブジェクトの候補を一覧表示する。
【０１９７】
情報処理装置１００は、一覧表示したオブジェクトの候補のいずれかの選択を受け付ける。情報処理装置１００は、例えば、オブジェクトＨの選択を受け付ける。情報処理装置１００は、オブジェクトＥを、選択されたオブジェクトに変更する。情報処理装置１００は、変更後、フロー図３５０３を表示する。次に、図３６および図３７の説明に移行し、オブジェクトの変更に応じて各種テーブルを更新する一例について説明する。
【０１９８】
図３６において、情報処理装置１００は、変更前のオブジェクトＥとオブジェクトＡとの位置関係に対応付けて位置関係テーブル４００に記憶されたレコード３６０１を特定し、パターン数をデクリメントする。情報処理装置１００は、パターン数が「０」であるため、レコード３６０１を削除する。
【０１９９】
また、情報処理装置１００は、変更後のオブジェクトＨとオブジェクトＡとの位置関係に対応付けて位置関係テーブル４００に記憶されたレコード３６０２を特定し、パターン数をインクリメントする。情報処理装置１００は、変更後のオブジェクトＨとオブジェクトＡとの位置関係に対応するレコードがなければ、位置関係テーブル４００に追加する。次に、図３７の説明に移行する。
【０２００】
図３７において、情報処理装置１００は、オブジェクトＥが変更されたため、オブジェクトＥに対応付けて影響度テーブル５００に記憶されたレコード３７０１を特定する。情報処理装置１００は、レコード３７０１に基づいて、既存のフロー図にオブジェクトＥが配置されていないと判定し、レコード３７０１を削除する。
【０２０１】
また、情報処理装置１００は、変更後のオブジェクトＨ、および、オブジェクトＡに対応付けて影響度テーブル５００に記憶されたレコード３７０２，３７０３を特定して更新する。次に、図３８〜図４０の説明に移行し、矢印変更時に修正サポートを実施する一例について説明する。
【０２０２】
図３８〜図４０は、矢印変更時に修正サポートを実施する一例を示す説明図である。図３８において、情報処理装置１００は、フロー図３８０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。フロー図３８０１の矢印３８１０の終点のドラッグ移動を検出する。
【０２０３】
情報処理装置１００は、ドラッグ移動後に矢印３８１０が接続するオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致すれば、フロー図３８０２を表示する。一方で、情報処理装置１００は、ドラッグ移動後に矢印３８１０が接続するオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致しなければ、フロー図３８０１を表示し、ドラッグ移動をキャンセルする。情報処理装置１００は、ドラッグ移動をキャンセルせず、エラー表示してもよい。エラー表示は、オブジェクトの背景色の変更、オブジェクトの線色の変更、矢印の線色の変更、オブジェクトまたは矢印のバックグラウンドのハイライト、オブジェクトまたは矢印に対する吹き出しの挿入などである。
【０２０４】
ここでは、情報処理装置１００は、ドラッグ移動後に矢印３８１０が接続するオブジェクトの位置関係が、配置規則テーブル６００が示す基準に合致するため、フロー図３８０２を表示したとする。次に、図３９および図４０の説明に移行し、矢印３８１０の変更に応じて各種テーブルを更新する一例について説明する。
【０２０５】
図３９において、情報処理装置１００は、変更前の矢印３８１０で接続されたオブジェクトＢとオブジェクトＣとの位置関係に対応付けて位置関係テーブル４００に記憶されたレコード３９０１を特定し、パターン数をデクリメントする。情報処理装置１００は、パターン数が「０」であるため、レコード３９０１を削除する。また、情報処理装置１００は、変更後の矢印３８１０で接続されたオブジェクトＡとオブジェクトＣとの位置関係に対応するレコード３９０２を、位置関係テーブル４００に追加する。次に、図４０の説明に移行する。
【０２０６】
図４０において、情報処理装置１００は、変更後の矢印３８１０で接続されたオブジェクトＡとオブジェクトＣとに対応付けて影響度テーブル５００に記憶されたレコード４００１，４００２を特定して更新する。
【０２０７】
これにより、情報処理装置１００は、作成済みのフロー図のうちのオブジェクトや矢印を変更した際、配置規則テーブル６００が示す基準に合致するか否かを把握しやすくすることができ、フロー図の修正にかかる負担の低減化を図ることができる。また、情報処理装置１００は、フロー図を、配置規則テーブル６００が示す基準に合致するように修正しやすくすることができ、フロー図の有用性の向上を図ることができる。
【０２０８】
情報処理装置１００は、エラー表示された箇所が正常であると指示された場合、各種テーブルを更新してもよい。情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。
【０２０９】
（移動チェック処理手順）
次に、図４１および図４２を用いて、情報処理装置１００が実行する、移動チェック処理手順の一例について説明する。移動チェック処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２１０】
図４１および図４２は、移動チェック処理手順の一例を示すフローチャートである。図４１において、まず、情報処理装置１００は、オブジェクトのドラッグを検出する（ステップＳ４１０１）。次に、情報処理装置１００は、オブジェクトを移動した方向を検出する（ステップＳ４１０２）。
【０２１１】
そして、情報処理装置１００は、移動したオブジェクトと、移動したオブジェクトと接続関係があるオブジェクトとの位置関係が、配置規則テーブル６００に存在する位置関係であるか否かを判定する（ステップＳ４１０３）。
【０２１２】
情報処理装置１００は、例えば、移動したオブジェクトに接続される始点または終点になるオブジェクト種別に対応する、配置規則テーブル６００のＹ軸要素またはＸ軸要素が示すオブジェクト種別と相対位置との組み合わせを特定する。そして、情報処理装置１００は、移動したオブジェクトのオブジェクト種別と相対位置との組み合わせが、特定した組み合わせに合致すれば、配置規則テーブル６００に存在する位置関係であると判定する。
【０２１３】
ここで、配置規則テーブル６００に存在する位置関係である場合（ステップＳ４１０３：Ｙｅｓ）、情報処理装置１００は、ステップＳ４１０５の処理に移行する。一方で、配置規則テーブル６００に存在する位置関係ではない場合（ステップＳ４１０３：Ｎｏ）、情報処理装置１００は、ステップＳ４１０４の処理に移行する。
【０２１４】
ステップＳ４１０４では、情報処理装置１００は、配置規則テーブル６００に存在しない位置関係であるオブジェクト間の接続関係を示す矢印を、「相対位置エラー」としてエラー表示する（ステップＳ４１０４）。そして、情報処理装置１００は、移動チェック処理を終了する。
【０２１５】
ステップＳ４１０５では、情報処理装置１００は、移動前の状態が「相対位置エラー」であったか否かを判定する（ステップＳ４１０５）。ここで、「相対位置エラー」ではない場合（ステップＳ４１０５：Ｎｏ）、情報処理装置１００は、「相対位置エラー」を解除する（ステップＳ４１０６）。そして、情報処理装置１００は、移動チェック処理を終了する。
【０２１６】
一方で、「相対位置エラー」であった場合（ステップＳ４１０５：Ｙｅｓ）、図４２のステップＳ４２０１の処理に移行する。
【０２１７】
図４２において、情報処理装置１００は、位置関係テーブル４００に基づいて、移動したオブジェクトと、移動したオブジェクトと接続関係があるオブジェクトとの、移動前の位置関係に対応するパターン数が１であるか否かを判定する（ステップＳ４２０１）。
【０２１８】
ここで、パターン数が１である場合（ステップＳ４２０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ４２０３の処理に移行する。一方で、パターン数が１ではない場合（ステップＳ４２０１：Ｎｏ）、情報処理装置１００は、ステップＳ４２０２の処理に移行する。
【０２１９】
ステップＳ４２０２では、情報処理装置１００は、パターン数をデクリメントする（ステップＳ４２０２）。そして、情報処理装置１００は、ステップＳ４２０４の処理に移行する。
【０２２０】
ステップＳ４２０３では、情報処理装置１００は、パターン数が１のレコードを削除する（ステップＳ４２０３）。そして、情報処理装置１００は、ステップＳ４２０４の処理に移行する。
【０２２１】
ステップＳ４２０４では、情報処理装置１００は、位置関係テーブル４００に基づいて、移動したオブジェクトと、移動したオブジェクトと接続関係があるオブジェクトとの、移動後の位置関係に対応するレコードがあるか否かを判定する（ステップＳ４２０４）。
【０２２２】
ここで、レコードがある場合（ステップＳ４２０４：Ｙｅｓ）、情報処理装置１００は、ステップＳ４２０６の処理に移行する。一方で、レコードがない場合（ステップＳ４２０４：Ｎｏ）、情報処理装置１００は、ステップＳ４２０５の処理に移行する。
【０２２３】
ステップＳ４２０５では、情報処理装置１００は、移動したオブジェクトと、移動したオブジェクトと接続関係があるオブジェクトとに対応するレコードを、位置関係テーブル４００に追加する（ステップＳ４２０５）。ここで、パターン数は、例えば、１が設定される。始点相対位置と終点相対位置は、移動後の位置関係に基づいて設定される。そして、情報処理装置１００は、移動チェック処理を終了する。
【０２２４】
ステップＳ４２０６では、情報処理装置１００は、パターン数をインクリメントする（ステップＳ４２０６）。そして、情報処理装置１００は、移動チェック処理を終了する。
【０２２５】
（変更チェック処理手順）
次に、図４３を用いて、情報処理装置１００が実行する、変更チェック処理手順の一例について説明する。変更チェック処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２２６】
図４３は、変更チェック処理手順の一例を示すフローチャートである。図４３において、まず、情報処理装置１００は、いずれかのオブジェクトの選択、および、選択されたオブジェクトの変更を検出する（ステップＳ４３０１）。
【０２２７】
次に、情報処理装置１００は、配置規則テーブル６００に基づいて、選択したオブジェクトと、選択したオブジェクトと接続関係があるオブジェクトとの位置関係から、変更可能なオブジェクトのオブジェクト種別を抽出する（ステップＳ４３０２）。そして、情報処理装置１００は、影響度テーブル５００に基づいて、抽出したオブジェクト種別に該当するオブジェクトを抽出して一覧表示する（ステップＳ４３０３）。
【０２２８】
次に、情報処理装置１００は、一覧表示されたオブジェクトのうち、変更後のオブジェクトの選択を受け付ける（ステップＳ４３０４）。そして、情報処理装置１００は、変更後のオブジェクトと、変更後のオブジェクトと接続関係があるオブジェクトとの組み合わせごとに、図４４に後述するサブ処理の対象に設定し、図４４に後述するサブ処理を実行する（ステップＳ４３０５）。
【０２２９】
次に、情報処理装置１００は、変更前のオブジェクトが「規約エラー」であったか否かを判定する（ステップＳ４３０６）。ここで、「規約エラー」であった場合（ステップＳ４３０６：Ｙｅｓ）、情報処理装置１００は、ステップＳ４３０８の処理に移行する。一方で、「規約エラー」ではない場合（ステップＳ４３０６：Ｎｏ）、情報処理装置１００は、ステップＳ４３０７の処理に移行する。
【０２３０】
ステップＳ４３０７では、情報処理装置１００は、「規約エラー」を解除する（ステップＳ４３０７）。そして、情報処理装置１００は、ステップＳ４３１０の処理に移行する。
【０２３１】
ステップＳ４３０８では、情報処理装置１００は、変更前のオブジェクトにおいて「相対始点数」と「相対終点数」とが「０」と「１」とであるか、「１」と「０」とであれば、影響度テーブル５００から、変更前のオブジェクトに対応するレコードを削除する（ステップＳ４３０８）。
【０２３２】
次に、情報処理装置１００は、変更前のオブジェクトと、変更前のオブジェクトと接続関係があったオブジェクトとの組み合わせごとに、図４５に後述するサブ処理の対象に設定し、図４５に後述するサブ処理を実行する（ステップＳ４３０９）。そして、情報処理装置１００は、ステップＳ４３１０の処理に移行する。
【０２３３】
ステップＳ４３１０では、情報処理装置１００は、変更後のオブジェクトと、変更後のオブジェクトと接続関係があるオブジェクトとについて、影響度テーブル５００を更新する（ステップＳ４３１０）。情報処理装置１００は、例えば、影響度テーブル５００の「相対始点数」、「相対終点数」、「始点影響度」、「終点影響度」、「全体影響度」、「始点候補」、「終点候補」を更新する。そして、情報処理装置１００は、変更チェック処理を終了する。
【０２３４】
（ステップＳ４３０５のサブ処理手順）
次に、図４４を用いて、情報処理装置１００が実行する、ステップＳ４３０５のサブ処理手順の一例について説明する。ステップＳ４３０５のサブ処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２３５】
図４４は、ステップＳ４３０５のサブ処理手順の一例を示すフローチャートである。図４４において、まず、情報処理装置１００は、位置関係テーブル４００に、対象のオブジェクトの組み合わせに対応するレコードがあるか否かを判定する（ステップＳ４４０１）。
【０２３６】
ここで、レコードがある場合（ステップＳ４４０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ４４０３の処理に移行する。一方で、レコードがない場合（ステップＳ４４０１：Ｎｏ）、情報処理装置１００は、ステップＳ４４０２の処理に移行する。
【０２３７】
ステップＳ４４０２では、情報処理装置１００は、位置関係テーブル４００に、対象のオブジェクトの組み合わせに対応するレコードを追加する（ステップＳ４４０２）。ここで、パターン数は、例えば、１が設定される。始点相対位置と終点相対位置は、移動後の位置関係に基づいて設定される。そして、情報処理装置１００は、サブ処理を終了する。
【０２３８】
ステップＳ４４０３では、情報処理装置１００は、パターン数をインクリメントする（ステップＳ４４０３）。そして、情報処理装置１００は、サブ処理を終了する。
【０２３９】
（ステップＳ４３０９のサブ処理手順）
次に、図４５を用いて、情報処理装置１００が実行する、ステップＳ４３０９のサブ処理手順の一例について説明する。ステップＳ４３０９のサブ処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２４０】
図４５は、ステップＳ４３０９のサブ処理手順の一例を示すフローチャートである。図４５において、まず、情報処理装置１００は、位置関係テーブル４００に基づいて、対象のオブジェクトの組み合わせの位置関係に対応するパターン数が１であるか否かを判定する（ステップＳ４５０１）。
【０２４１】
ここで、パターン数が１である場合（ステップＳ４５０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ４５０３の処理に移行する。一方で、パターン数が１ではない場合（ステップＳ４５０１：Ｎｏ）、情報処理装置１００は、ステップＳ４５０２の処理に移行する。
【０２４２】
ステップＳ４５０２では、情報処理装置１００は、パターン数をデクリメントする（ステップＳ４５０２）。そして、情報処理装置１００は、サブ処理を終了する。
【０２４３】
ステップＳ４５０３では、情報処理装置１００は、パターン数が１のレコードを削除する（ステップＳ４５０３）。そして、情報処理装置１００は、サブ処理を終了する。
【０２４４】
（矢印変更チェック処理手順）
次に、図４６および図４７を用いて、情報処理装置１００が実行する、矢印変更チェック処理手順の一例について説明する。矢印変更チェック処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２４５】
図４６および図４７は、矢印変更チェック処理手順の一例を示すフローチャートである。図４６において、まず、情報処理装置１００は、いずれかの矢印の選択、および、選択された矢印の変更を検出する（ステップＳ４６０１）。次に、情報処理装置１００は、矢印の始点になるオブジェクト、または、終点になるオブジェクトの変更を検出する（ステップＳ４６０２）。
【０２４６】
そして、情報処理装置１００は、配置規則テーブル６００に基づいて、変更後の矢印により接続関係があるオブジェクトの組み合わせの位置関係が、配置規則テーブル６００に存在するか否かを判定する（ステップＳ４６０３）。情報処理装置１００は、例えば、変更後の矢印により接続関係がある始点のオブジェクト、および、終点のオブジェクトの相対位置が、配置規則テーブル６００のＹ軸要素およびＸ軸要素が示す相対位置に合致すれば、配置規則テーブル６００に存在すると判定する。
【０２４７】
ここで、配置規則テーブル６００に存在する場合（ステップＳ４６０３：Ｙｅｓ）、情報処理装置１００は、ステップＳ４６０５の処理に移行する。一方で、配置規則テーブル６００に存在しない場合（ステップＳ４６０３：Ｎｏ）、情報処理装置１００は、ステップＳ４６０４の処理に移行する。
【０２４８】
ステップＳ４６０４では、情報処理装置１００は、矢印が示す接続関係を元に戻す（ステップＳ４６０４）。そして、情報処理装置１００は、矢印変更チェック処理を終了する。
【０２４９】
ステップＳ４６０５では、情報処理装置１００は、変更後の矢印により接続関係があったオブジェクトの組み合わせの位置関係に対応するパターン数が１であるか否かを判定する（ステップＳ４６０５）。ここで、パターン数が１である場合（ステップＳ４６０５：Ｙｅｓ）、情報処理装置１００は、ステップＳ４６０７の処理に移行する。一方で、パターン数が１ではない場合（ステップＳ４６０５：Ｎｏ）、情報処理装置１００は、ステップＳ４６０６の処理に移行する。
【０２５０】
ステップＳ４６０６では、情報処理装置１００は、パターン数をデクリメントする（ステップＳ４６０６）。そして、情報処理装置１００は、図４７のステップＳ４７０１の処理に移行する。
【０２５１】
ステップＳ４６０７では、情報処理装置１００は、パターン数が１のレコードを削除する（ステップＳ４６０７）。そして、情報処理装置１００は、図４７のステップＳ４７０１の処理に移行する。
【０２５２】
図４７において、情報処理装置１００は、変更後の矢印により接続関係があったオブジェクトの組み合わせに対応するレコードが、位置関係テーブル４００に存在するか否かを判定する（ステップＳ４７０１）。情報処理装置１００は、例えば、変更後の矢印により新たに接続されたオブジェクトを始点または終点とし、変更前後で共通して接続されるオブジェクトを終点または始点とするレコードが、位置関係テーブル４００に存在するか否かを判定する。
【０２５３】
ここで、位置関係テーブル４００に存在する場合（ステップＳ４７０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ４７０３の処理に移行する。一方で、位置関係テーブル４００に存在しない場合（ステップＳ４７０１：Ｎｏ）、情報処理装置１００は、ステップＳ４７０２の処理に移行する。
【０２５４】
ステップＳ４７０２では、情報処理装置１００は、変更後の矢印により接続関係があったオブジェクトの組み合わせに対応するレコードを、位置関係テーブル４００に追加する（ステップＳ４７０２）。そして、情報処理装置１００は、ステップＳ４７０４の処理に移行する。
【０２５５】
ステップＳ４７０３では、情報処理装置１００は、パターン数をインクリメントする（ステップＳ４７０３）。そして、情報処理装置１００は、ステップＳ４７０４の処理に移行する。
【０２５６】
ステップＳ４７０４では、情報処理装置１００は、影響度テーブル５００のうち、変更前に矢印に接続されていた元のオブジェクトに対応するレコードを更新する（ステップＳ４７０４）。情報処理装置１００は、例えば、「相対終点数」、または、「相対始点数」をデクリメントし、「終点影響度」、または、「始点影響度」を更新し、「全体影響度」を更新する。また、情報処理装置１００は、例えば、「終点候補」、または、「始点候補」から、変更前の矢印により接続されていたオブジェクトを削除する。
【０２５７】
次に、情報処理装置１００は、影響度テーブル５００のうち、変更後に矢印に接続された新たなオブジェクトに対応するレコードを更新する（ステップＳ４７０５）。情報処理装置１００は、例えば、「相対終点数」、または、「相対始点数」をインクリメントし、「終点影響度」、または、「始点影響度」を更新し、「全体影響度」を更新する。また、情報処理装置１００は、「終点候補」、または、「始点候補」に、変更前後で矢印に共通で接続されるオブジェクトを追加する。
【０２５８】
そして、情報処理装置１００は、影響度テーブル５００のうち、変更前後で矢印に共通で接続されていた共通のオブジェクトに対応するレコードを更新する（ステップＳ４７０６）。情報処理装置１００は、例えば、「終点影響度」、または、「始点影響度」を更新し、「全体影響度」を更新する。また、情報処理装置１００は、例えば、「終点候補」、または、「始点候補」に、矢印に新たに接続されたオブジェクトを追加する。
【０２５９】
次に、情報処理装置１００は、元のオブジェクト、新たなオブジェクト、共通のオブジェクトが「規約エラー」であれば、「規約エラー」を解除する（ステップＳ４７０７）。そして、情報処理装置１００は、矢印変更チェック処理を終了する。
【０２６０】
（情報処理装置１００が影響度表示を実施する一例）
次に、図４８を用いて、情報処理装置１００が影響度表示を実施する一例について説明する。
【０２６１】
図４８は、情報処理装置１００が影響度表示を実施する一例を示す説明図である。図４８において、情報処理装置１００は、フロー図４８０１を表示する。表示先は、例えば、クライアント装置２０１であってもよい。情報処理装置１００は、フロー図４８０１においてメニュー表示操作が行われ、メニュー上の「影響度表示（ＤＢ全体）」が選択されたことを検出する。情報処理装置１００は、「影響度表示（ＤＢ全体）」が選択されたことを検出すると、影響度テーブル５００の「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を抽出する。
【０２６２】
情報処理装置１００は、抽出した情報の一覧４８０２を表示する。また、情報処理装置１００は、抽出した情報に基づいて、オブジェクトごとの始点影響度の棒グラフと終点影響度の棒グラフと全体影響度の棒グラフとを含むグラフ４８０３を表示する。また、情報処理装置１００は、抽出した情報に基づいて、オブジェクトごとの始点影響度、終点影響度、および、全体影響度の積み上げ棒グラフ４８０４を表示する。
【０２６３】
これにより、情報処理装置１００は、オブジェクトが示すデータやプログラムの変更による影響度を把握可能にすることができ、データやプログラムの修正にかかる負担を見積もることができ、データやプログラムの修正計画を作成することができる。情報処理装置１００は、例えば、データやプログラムの修正にかかる所要時間や所要金額などを見積もることができる。
【０２６４】
情報処理装置１００は、例えば、オブジェクトが示すプログラムにおける入力変数を増加する修正が行われる場合にかかる負担を見積もることができ、修正計画を作成することができる。情報処理装置１００は、同様に、例えば、オブジェクトが示すプログラムにおける出力変数を減少する修正が行われる場合にかかる負担を見積もることができ、修正計画を作成することができる。
【０２６５】
ここでは、情報処理装置１００が、影響度テーブル５００全体での「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を表示する場合について説明したが、これに限らない。例えば、情報処理装置１００が、影響度テーブル５００のうち、１または複数のオブジェクトについての「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を表示する場合があってもよい。
【０２６６】
また、情報処理装置１００は、棒グラフ以外で、「始点影響度」、「終点影響度」、「全体影響度」などを表示する場合があってもよい。情報処理装置１００は、「始点影響度」、「終点影響度」、「全体影響度」をリスト化して表示する場合があってもよい。情報処理装置１００は、以上の動作内容を規定したプログラムをクライアント装置２０１に送信することにより、以上の動作内容をクライアント装置２０１上で実行させる場合があってもよい。
【０２６７】
（単独影響度表示処理手順）
次に、図４９を用いて、情報処理装置１００が実行する、単独影響度表示処理手順の一例について説明する。単独影響度表示処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２６８】
図４９は、単独影響度表示処理手順の一例を示すフローチャートである。図４９において、まず、情報処理装置１００は、いずれかのオブジェクトの選択を受け付け、選択されたオブジェクトの影響度表示要求を受け付ける（ステップＳ４９０１）。次に、情報処理装置１００は、影響度テーブル５００から選択されたオブジェクトに対応するレコードを検索する（ステップＳ４９０２）。
【０２６９】
そして、情報処理装置１００は、選択されたオブジェクトに対応するレコードが存在するか否かを判定する（ステップＳ４９０３）。ここで、レコードが存在する場合（ステップＳ４９０３：Ｙｅｓ）、情報処理装置１００は、ステップＳ４９０５の処理に移行する。一方で、レコードが存在しない場合（ステップＳ４９０３：Ｎｏ）、情報処理装置１００は、ステップＳ４９０４の処理に移行する。
【０２７０】
ステップＳ４９０４では、情報処理装置１００は、オブジェクトを「規約エラー」としてエラー表示する（ステップＳ４９０４）。そして、情報処理装置１００は、単独影響度表示処理を終了する。
【０２７１】
ステップＳ４９０５では、情報処理装置１００は、選択されたオブジェクトに対応する「始点影響度」、「終点影響度」、「全体影響度」を表示する（ステップＳ４９０５）。次に、情報処理装置１００は、選択されたオブジェクトに対応する「始点影響度」、「終点影響度」、「全体影響度」をグラフ化して表示する（ステップＳ４９０６）。
【０２７２】
情報処理装置１００は、例えば、オブジェクトごとの始点影響度の棒グラフ、オブジェクトごとの終点影響度の棒グラフ、オブジェクトごとの全体影響度の棒グラフ、オブジェクトごとの始点影響度、終点影響度、全体影響度の積み上げ棒グラフを表示する。そして、情報処理装置１００は、単独影響度表示処理を終了する。
【０２７３】
（複数影響度表示処理手順）
次に、図５０を用いて、情報処理装置１００が実行する、複数影響度表示処理手順の一例について説明する。複数影響度表示処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２７４】
図５０は、複数影響度表示処理手順の一例を示すフローチャートである。図５０において、まず、情報処理装置１００は、複数のオブジェクトの選択を受け付け、選択された複数のオブジェクトの影響度表示要求を受け付ける（ステップＳ５００１）。ここで、複数のオブジェクトの選択は、フロー図単位での選択であってもよい。
【０２７５】
次に、情報処理装置１００は、影響度テーブル５００から選択された複数のオブジェクトのそれぞれのオブジェクトに対応するレコードを検索する（ステップＳ５００２）。そして、情報処理装置１００は、選択された複数のオブジェクトのうちのオブジェクトを順に選択し、図５１に後述するサブ処理の対象に設定し、図５１に後述するサブ処理を実行する（ステップＳ５００３）。
【０２７６】
次に、情報処理装置１００は、選択された複数のオブジェクトのそれぞれのオブジェクトに対応する「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を表示する（ステップＳ５００４）。そして、情報処理装置１００は、選択された複数のオブジェクトのそれぞれのオブジェクトに対応する「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」をグラフ化して表示する（ステップＳ５００５）。
【０２７７】
情報処理装置１００は、例えば、オブジェクトごとの始点影響度の棒グラフ、オブジェクトごとの終点影響度の棒グラフ、オブジェクトごとの全体影響度の棒グラフ、オブジェクトごとの始点影響度、終点影響度、全体影響度の積み上げ棒グラフを表示する。そして、情報処理装置１００は、複数影響度表示処理を終了する。
【０２７８】
（ステップＳ５００３のサブ処理手順）
次に、図５１を用いて、情報処理装置１００が実行する、ステップＳ５００３のサブ処理手順の一例について説明する。ステップＳ５００３のサブ処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２７９】
図５１は、ステップＳ５００３のサブ処理手順の一例を示すフローチャートである。図５１において、情報処理装置１００は、対象のオブジェクトに対応するレコードが存在するか否かを判定する（ステップＳ５１０１）。ここで、レコードが存在する場合（ステップＳ５１０１：Ｙｅｓ）、情報処理装置１００は、ステップＳ５１０３の処理に移行する。一方で、レコードが存在しない場合（ステップＳ５１０１：Ｎｏ）、情報処理装置１００は、ステップＳ５１０２の処理に移行する。
【０２８０】
ステップＳ５１０２では、情報処理装置１００は、対象のオブジェクトを「規約エラー」としてエラー表示する（ステップＳ５１０２）。そして、情報処理装置１００は、サブ処理を終了する。
【０２８１】
ステップＳ５１０３では、情報処理装置１００は、対象のオブジェクトに対応する「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を一時記憶する（ステップＳ５１０３）。そして、情報処理装置１００は、サブ処理を終了する。
【０２８２】
（全体影響度表示処理手順）
次に、図５２を用いて、情報処理装置１００が実行する、全体影響度表示処理手順の一例について説明する。全体影響度表示処理は、例えば、図３に示したＣＰＵ３０１と、メモリ３０２や記録媒体３０５などの記憶領域と、ネットワークＩ／Ｆ３０３とによって実現される。
【０２８３】
図５２は、全体影響度表示処理手順の一例を示すフローチャートである。図５２において、まず、情報処理装置１００は、全体の影響度表示要求を受け付ける（ステップＳ５２０１）。次に、情報処理装置１００は、オブジェクトごとに、影響度テーブル５００に設定された「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」を表示する（ステップＳ５２０２）。
【０２８４】
そして、情報処理装置１００は、オブジェクトごとに、影響度テーブル５００に設定された「オブジェクト」、「オブジェクト種別」、「始点影響度」、「終点影響度」、「全体影響度」をグラフ化して表示する（ステップＳ５２０３）。情報処理装置１００は、例えば、オブジェクトごとの始点影響度の棒グラフ、オブジェクトごとの終点影響度の棒グラフ、オブジェクトごとの全体影響度の棒グラフ、オブジェクトごとの始点影響度、終点影響度、全体影響度の積み上げ棒グラフを表示する。そして、情報処理装置１００は、全体影響度表示処理を終了する。
【０２８５】
以上説明したように、情報処理装置によれば、複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成することができる。情報処理装置によれば、生成した順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力することができる。これにより、情報処理装置は、図面を確認しなくても、指定の部品が影響する部品を把握しやすくすることができる。
【０２８６】
情報処理装置によれば、データまたはプログラムを示す部品を用いることができる。これにより、情報処理装置は、データまたはプログラムを示す部品について影響範囲を把握しやすくすることができる。
【０２８７】
情報処理装置によれば、複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成することができる。情報処理装置によれば、所定の図面のうちのいずれかの部品を始点または終点として示す接続部品が配置された場合、配置された接続部品の方向を参照し、生成した位置関係情報に基づいて、いずれかの部品と接続される部品に関する情報を出力することができる。これにより、情報処理装置は、配置済みの部品と接続される部品の候補を把握しやすくすることができ、図面の作成にかかる負担の低減化を図ることができる。
【０２８８】
情報処理装置によれば、所定の図面のうちで接続関係がある２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定することができる。情報処理装置によれば、判定結果を出力することができる。これにより、情報処理装置は、部品間の位置関係が基準に合致するか否かを把握しやすくすることができ、図面の修正にかかる負担の低減化を図ることができる。
【０２８９】
情報処理装置によれば、複数の図面に基づいて、部品の種別ごとに、部品の属性を対応付けて示す属性情報を生成することができる。情報処理装置によれば、生成した属性情報に基づいて、所定の図面のうちのいずれかの部品の属性が、いずれかの部品の種別に対応する属性に含まれるか否かを判定することができる。情報処理装置によれば、判定結果を出力することができる。これにより、情報処理装置は、部品の属性が基準に合致するか否かを把握しやすくすることができ、図面の修正にかかる負担の低減化を図ることができる。
【０２９０】
情報処理装置によれば、所定の図面のうちで接続関係がある２つの部品のいずれかの部品が移動された場合、移動後の２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定することができる。情報処理装置によれば、判定結果を出力することができる。これにより、情報処理装置１００は、図面の作成時や修正時に、部品や矢印が、所定の基準に合致するか否かを把握しやすくすることができ、図面の作成や修正にかかる負担の低減化を図ることができる。
【０２９１】
情報処理装置によれば、所定の図面のうちで接続関係がある２つの部品の一方の部品を変更する場合、他方の部品と接続される部品に関する情報を出力することができる。これにより、情報処理装置１００は、図面の作成時や修正時に、所定の基準に合致する部品を配置しやすくすることができ、図面の作成や修正にかかる負担の低減化を図ることができる。
【０２９２】
情報処理装置によれば、所定の図面のうちのいずれかの接続部品による接続関係を変更する場合、変更後にいずれかの接続部品が接続関係を示す２つの部品の位置関係が、生成した位置関係情報が示す位置関係に含まれるか否かを判定することができる。情報処理装置によれば、判定結果を出力することができる。これにより、情報処理装置１００は、図面の作成時や修正時に、部品や矢印が、所定の基準に合致するか否かを把握しやすくすることができ、図面の作成や修正にかかる負担の低減化を図ることができる。
【０２９３】
情報処理装置によれば、いずれかの部品の指定を受け付けた場合、指定されたいずれかの部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの、複数の図面における配置数を取得することができる。情報処理装置によれば、配置数を用いて、指定されたいずれかの部品の影響度を算出し、算出した影響度を出力することができる。これにより、情報処理装置は、部品の変更による影響の大きさを把握可能にすることができる。
【０２９４】
情報処理装置によれば、接続部品を、接続部品の第１の点から外部に伸ばした線分上にある部品と、接続部品の第２の点から外部に伸ばした線分上にある部品との接続関係を示す部品として扱うことができる。これにより、情報処理装置は、接続部品が部品と接していない図面に対して適用することができる。
【０２９５】
情報処理装置によれば、共通する属性を有する複数の図面を用いることができる。情報処理装置は、順序情報や位置関係情報の生成に、共通する属性を有し一定の規則で生成された複数の図面を用いることができ、順序情報や位置関係情報の有用性の向上を図ることができる。
【０２９６】
情報処理装置によれば、部品に関する情報として、部品の種別を出力することができる。これにより、情報処理装置は、部品の種別を把握しやすくすることができる。
【０２９７】
情報処理装置によれば、部品の属性として、部品の形状または色を用いることができる。これにより、情報処理装置は、部品の形状または色が、所定の基準に合致するか否かを判定可能にすることができる。
【０２９８】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本実施の形態で説明した情報処理プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実施の形態で説明した情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
【０２９９】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０３００】
（付記１）コンピュータに、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
処理を実行させることを特徴とする情報処理プログラム。
【０３０１】
（付記２）前記部品はデータまたはプログラムを示す、ことを特徴とする付記１に記載の情報処理プログラム。
【０３０２】
（付記３）前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
所定の図面のうちのいずれかの部品を始点または終点として示す接続部品が配置された場合、配置された前記接続部品の方向を参照し、生成した前記位置関係情報に基づいて、前記いずれかの部品と接続される部品に関する情報を出力する、
処理を実行させることを特徴とする付記１または２に記載の情報処理プログラム。
【０３０３】
（付記４）前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする付記１〜３のいずれか一つに記載の情報処理プログラム。
【０３０４】
（付記５）前記コンピュータに、
前記複数の図面に基づいて、部品の種別ごとに、部品の属性を対応付けて示す属性情報を生成し、
生成した前記属性情報に基づいて、部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちのいずれかの部品の属性が、前記いずれかの部品の種別に対応する属性に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする付記１〜４のいずれか一つに記載の情報処理プログラム。
【０３０５】
（付記６）前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品のいずれかの部品が移動された場合、移動後の前記２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする付記１〜５のいずれか一つに記載の情報処理プログラム。
【０３０６】
（付記７）前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちで接続関係がある２つの部品の一方の部品を変更する場合、他方の部品と接続される部品に関する情報を出力する、
処理を実行させることを特徴とする付記１〜６のいずれか一つに記載の情報処理プログラム。
【０３０７】
（付記８）前記コンピュータに、
前記複数の図面に基づいて、接続関係がある２つの部品の種別の組み合わせごとに、部品の位置関係を対応付けて示す位置関係情報を生成し、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した所定の図面のうちのいずれかの接続部品による接続関係を変更する場合、変更後に前記いずれかの接続部品が接続関係を示す２つの部品の位置関係が、生成した前記位置関係情報が示す位置関係に含まれるか否かを判定し、判定結果を出力する、
処理を実行させることを特徴とする付記１〜７のいずれか一つに記載の情報処理プログラム。
【０３０８】
（付記９）前記コンピュータに、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された前記いずれかの部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの、前記複数の図面における配置数を用いて、指定された前記いずれかの部品の影響度を算出し、算出した前記影響度を出力する、
処理を実行させることを特徴とする付記１〜８のいずれか一つに記載の情報処理プログラム。
【０３０９】
（付記１０）前記接続部品は、前記接続部品の第１の点から外部に伸ばした線分上にある部品と、前記接続部品の第２の点から外部に伸ばした線分上にある部品との接続関係を示す、ことを特徴とする付記１〜９のいずれか一つに記載の情報処理プログラム。
【０３１０】
（付記１１）前記複数の図面は共通する属性を有する、ことを特徴とする付記１〜１０のいずれか一つに記載の情報処理プログラム。
【０３１１】
（付記１２）部品に関する情報は、部品の種別を含む、ことを特徴とする付記３または８に記載の情報処理プログラム。
【０３１２】
（付記１３）前記属性は、部品の形状または色である、ことを特徴とする付記５に記載の情報処理プログラム。
【０３１３】
（付記１４）コンピュータが、
部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
処理を実行することを特徴とする情報処理方法。
【０３１４】
（付記１５）部品および部品間の接続関係を示す接続部品を配置することにより有向グラフを表現した複数の図面に基づいて、接続関係がある２つの部品の組み合わせごとに、部品間の順序関係を対応付けて示す順序情報を生成し、
いずれかの部品の指定を受け付けた場合、生成した前記順序情報に基づいて、指定された部品の直前に順序付けられた部品、および、直後に順序付けられた部品の少なくともいずれかの部品に関する情報を出力する、
制御部を有することを特徴とする情報処理装置。
【符号の説明】
【０３１５】
１００  情報処理装置
１０１，１０２  図面
１０３  情報
１１０  順序情報
２００  情報処理システム
２０１  クライアント装置
２１０  ネットワーク
３００，８００  バス
３０１，８０１  ＣＰＵ
３０２，８０２  メモリ
３０３，８０３  ネットワークＩ／Ｆ
３０４，８０４  記録媒体Ｉ／Ｆ
３０５，８０５  記録媒体
４００  位置関係テーブル
５００  影響度テーブル
６００  配置規則テーブル
７００  属性テーブル
８０６  ディスプレイ
８０７  入力装置
９００  記憶部
９０１  取得部
９０２  生成部
９０３  出力部
１３０１〜１３０３  配置状態
１４０１  直線
１４０２  カギ線
１４０３，１４０４  曲線
１６０１  ブロック矢印
１６０２  ブロック曲線
３２０１，３２０２，３６０１，３６０２，３７０１〜３７０３，３９０１，３９０２，４００１，４００２  レコード
３８１０  矢印
４８０２  一覧
４８０３  グラフ
４８０４  棒グラフ
【図１】
2019175218.tif 000003
【図２】
2019175218.tif 000004
【図３】
2019175218.tif 000005
【図４】
2019175218.tif 000006
【図５】
2019175218.tif 000007
【図６】
2019175218.tif 000008
【図７】
2019175218.tif 000009
【図８】
2019175218.tif 000010
【図９】
2019175218.tif 000011
【図１０】
2019175218.tif 000012
【図１１】
2019175218.tif 000013
【図１２】
2019175218.tif 000014
【図１３】
2019175218.tif 000015
【図１４】
2019175218.tif 000016
【図１５】
2019175218.tif 000017
【図１６】
2019175218.tif 000018
【図１７】
2019175218.tif 000019
【図１８】
2019175218.tif 000020
【図１９】
2019175218.tif 000021
【図２０】
2019175218.tif 000022
【図２１】
2019175218.tif 000023
【図２２】
2019175218.tif 000024
【図２３】
2019175218.tif 000025
【図２４】
2019175218.tif 000026
【図２５】
2019175218.tif 000027
【図２６】
2019175218.tif 000028
【図２７】
2019175218.tif 000029
【図２８】
2019175218.tif 000030
【図２９】
2019175218.tif 000031
【図３０】
2019175218.tif 000032
【図３１】
2019175218.tif 000033
【図３２】
2019175218.tif 000034
【図３３】
2019175218.tif 000035
【図３４】
2019175218.tif 000036
【図３５】
2019175218.tif 000037
【図３６】
2019175218.tif 000038
【図３７】
2019175218.tif 000039
【図３８】
2019175218.tif 000040
【図３９】
2019175218.tif 000041
【図４０】
2019175218.tif 000042
【図４１】
2019175218.tif 000043
【図４２】
2019175218.tif 000044
【図４３】
2019175218.tif 000045
【図４４】
2019175218.tif 000046
【図４５】
2019175218.tif 000047
【図４６】
2019175218.tif 000048
【図４７】
2019175218.tif 000049
【図４８】
2019175218.tif 000050
【図４９】
2019175218.tif 000051
【図５０】
2019175218.tif 000052
【図５１】
2019175218.tif 000053
【図５２】
2019175218.tif 000054