(57)【要約】      （修正有）【課題】図形式プログラムの構成管理を行うことができる構成管理支援装置を提供する。【解決手段】構成管理支援装置は、複数の図形と複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを示す第１のコードが入力される第１入力部と、第１の図形式プログラムが変更された第２の図形式プログラムを示す第２のコードが入力される第２入力部と、第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す履歴情報が入力される第３入力部と、第１及び第２のコードが入力され、第１の図形式プログラムの図形情報及び接続情報のそれぞれと、第２の図形式プログラムの図形情報及び接続情報とを比較する比較部と、を備える。【選択図】図５
2013164725.tif 000002
【特許請求の範囲】
【請求項１】
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを示す第１のコードが入力される第１入力部と、
前記第１の図形式プログラムが変更された第２の図形式プログラムを示す第２のコードが入力される第２入力部と、
前記第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す履歴情報が入力される第３入力部と、
前記第１及び第２のコードが入力され、第１の図形式プログラムの前記図形情報及び前記接続情報のそれぞれと、前記第２の図形式プログラムの前記図形情報及び前記接続情報とを比較する比較部と、
前記比較部の比較結果に基づいて得られる、前記第１の図形式プログラムが前記第２の図形式プログラムに変更された際の前記図形情報及び前記接続情報の変更内容を示す変更情報を、前記履歴情報に追加する追加部と、
前記第２のコードと、前記変更情報が追加された前記履歴情報とを出力する出力部と、
を備えることを特徴とする構成管理支援装置。
【請求項２】
コンピュータに、
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを示す第１のコードを取得する機能と、
前記第１の図形式プログラムが変更された第２の図形式プログラムを示す第２のコードが入力を取得する機能と、
前記第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す履歴情報を取得する機能と、
前記第１及び第２のコードが入力され、第１の図形式プログラムの前記図形情報及び前記接続情報のそれぞれと、前記第２の図形式プログラムの前記図形情報及び前記接続情報とを比較する機能と、
前記比較部の比較結果に基づいて得られる、前記第１の図形式プログラムが前記第２の図形式プログラムに変更された際の前記図形情報及び前記接続情報の変更内容を示す変更情報を、前記履歴情報に追加する機能と、
前記第２のコードと、前記変更情報が追加された前記履歴情報とを出力する機能と、
を実現させるプログラム。
【請求項３】
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを第２の図形式プログラムに変更した際の、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容を示す変更情報を取得する機能と、
前記第１の図形式プログラムを示す第１のコードを取得する機能と、
前記第１の図形式プログラムが生成されたときまでの、前記図形情報及び前記接続情報の変更内容の履歴を示す履歴情報を取得する機能と、
前記第２の図形式プログラムを示す第２のコードを、前記変更情報及び前記第１のコードに基づいて生成する機能と、
前記履歴情報に前記変更情報を追加する機能と、
前記生成部で生成された前記第２のコードと、前記変更情報が追加された前記履歴情報とを出力する機能と、
を備えることを特徴とする構成管理支援装置。
【請求項４】
コンピュータに、
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを第２の図形式プログラムに変更した際の、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容を示す変更情報が入力される第１入力部と、
前記第１の図形式プログラムを示す第１のコードが入力される第２入力部と、
前記第１の図形式プログラムが生成されたときまでの、前記図形情報及び前記接続情報の変更内容の履歴を示す履歴情報が入力される第３入力部と、
前記第２の図形式プログラムを示す第２のコードを、前記変更情報及び前記第１のコードに基づいて生成する生成部と、
前記履歴情報に前記変更情報を追加する追加部と、
前記生成部で生成された前記第２のコードと、前記変更情報が追加された前記履歴情報とを出力する出力部と、
を実現させるプログラム。
【請求項５】
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す第１の履歴情報が入力される第１入力部と、
前記第１の図形式プログラムを示す第１のコードが入力される第２入力部と、
前記第１の図形式プログラムを変更した第２の図形式プログラムが生成されたときまでの、前記図形情報及び前記接続情報の変更内容の履歴を示す第２の履歴情報が入力される第３入力部と、
前記第１及び第２の履歴情報を比較する比較部と、
前記第２の図形式プログラムを示す第２のコードを、前記比較部の比較結果及び前記第１のコードに基づいて生成する生成部と、
前記生成部で生成された前記第２のコードと、前記第２の履歴情報とを出力する出力部と、
を備えることを特徴とする構成管理支援装置。
【請求項６】
コンピュータに、
複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す第１の履歴情報を取得する機能と、
前記第１の図形式プログラムを示す第１のコードを取得する機能と、
前記第１の図形式プログラムを変更した第２の図形式プログラムが生成されたときまでの、前記図形情報及び前記接続情報の変更内容の履歴を示す第２の履歴情報を取得する機能と、
前記第１及び第２の履歴情報を比較する機能と、
前記第２の図形式プログラムを示す第２のコードを、前記比較部の比較結果及び前記第１のコードに基づいて生成する機能と、
前記生成部で生成された前記第２のコードと、前記第２の履歴情報とを出力する機能と、
を実現させるプログラム。
【請求項７】
請求項１、３、５の何れか一項に記載の構成管理支援装置であって、
前記図形情報は、
前記各図形に関する情報のうち、前記各図形の識別情報及び機能に関する情報を含み、前記各図形の表示位置に関する情報を含まないこと、
を特徴とする構成管理支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構成管理支援装置、プログラムに関する。
【背景技術】
【０００２】
一般的にプログラムの製作を行う場合、Ｃ言語などの高級言語を利用してプログラムコードを作成し、そのコードをコンパイラや統合開発環境を用いてコンピュータが実行可能な形式に変換することによって、コンピュータが実行可能な形式のプログラムを得る方法が用いられている。このような場合、プログラムコードはテキスト形式などの文字列として記述される。また、これらのプログラムコードに対する構成管理は様々なツール（技術）が存在している（例えば、特許文献１参照）。
【０００３】
一方、プログラムの品質や生産性、利便性を向上させるために、ブロック図などの図形を用いてプログラムコードを作成し、これをコンピュータが実行可能な形式のプログラム、もしくは、Ｃ言語などの従来のプログラムコードへ変換するような開発環境やソフトウェアが開発され、利用され始めている。これらはプログラムを図などで表現するため、プログラム作成時の視認性がよく、プログラムの見通しがよくなる効果がある。そのため、プログラムの不具合が容易に発見できるようになり、プログラムの生産効率が向上する。(例えば、特許文献２参照)。
【０００４】
図１３に図形で表現されたプログラムコードの例を示す。図形で表現されたプログラムコード（図形式プログラム）はそれぞれ個別の処理を表現したブロックを線で結び、プログラムの内容を表現する。各ブロックは個別に設定値を内包しており、それらの値によって、処理の細かい変更が可能である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１４０８４５号公報
【特許文献２】特開平７−２００２７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
図１３に示すような、図形を用いた開発環境やソフトウェアは、プログラムコード作成時の利便性や生産性の向上に対し効果を発揮するが、これらを使用したプログラムコードに対し、構成管理を行うことは困難である。これは、図形による表現やその差異は人間には認識しやすいが、コンピュータには認識しにくいことに起因している。
【０００７】
本発明は上記課題を鑑みてなされたものであり、図形式プログラムの構成管理を行うことができる構成管理支援装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の一つの側面に係る構成管理支援装置は、複数の図形と前記複数の図形の間を接続する複数の接続線とによって記述される第１の図形式プログラムを示す第１のコードが入力される第１入力部と、前記第１の図形式プログラムが変更された第２の図形式プログラムを示す第２のコードが入力される第２入力部と、前記第１の図形式プログラムが生成されたときまでの、各図形の識別情報及び機能に関する情報を含む図形情報と、各接続線の接続先及び接続元を示す接続情報と、の変更内容の履歴を示す履歴情報が入力される第３入力部と、前記第１及び第２のコードが入力され、第１の図形式プログラムの前記図形情報及び前記接続情報のそれぞれと、前記第２の図形式プログラムの前記図形情報及び前記接続情報とを比較する比較部と、前記比較部の比較結果に基づいて得られる、前記第１の図形式プログラムが前記第２の図形式プログラムに変更された際の前記図形情報及び前記接続情報の変更内容を示す変更情報を、前記履歴情報に追加する追加部と、前記第２のコードと、前記変更情報が追加された前記履歴情報とを出力する出力部と、を備える。
【発明の効果】
【０００９】
図形式プログラムの構成管理を行うことができる構成管理支援装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】図形で表現されたプログラムコード１０の一例を示す図である。
【図２】図形で表現されたプログラムコード１１の一例を示す図である。
【図３】構成管理システム３０の一例を示す図である。
【図４】プログラムコード１０が作成されるまでの変更履歴を示す変更リスト１１０の一例を示す図である。
【図５】構成管理支援部５０ａの一例を説明するための図である。
【図６】構成管理支援部５０ａが実行する処理の一例を示すフローチャートである。
【図７】新旧のプログラムコード１０，１１で変更された箇所を示す変更リスト１５０の一例を示す図である。
【図８】プログラムコード１１が作成されるまでの変更履歴を示す変更リスト２１０の一例を示す図である。
【図９】構成管理支援部５０ｂの一例を説明するための図であるである。
【図１０】構成管理支援部５０ｂが実行する処理の一例を示すフローチャートである。
【図１１】構成管理支援部５０ｃの一例を説明するための図である。
【図１２】構成管理支援部５０ｃが実行する処理の一例を示すフローチャートである。
【図１３】図形で表現されたプログラムコードの一例を示す図である。
【発明を実施するための形態】
【００１１】
本明細書および添付図面の記載により、少なくとも以下の事項が明らかとなる。
【００１２】
＜＜図形式プログラムについて＞＞
図１は、図形表現のプログラムコードの一例を示す図である。図形で表現されたプログラムコード１０（第１の図形式プログラム）は、それぞれ個別の処理を表現したブロックを線で結び、プログラムの内容を表現する。各ブロックは個別に設定値を内包しており、それらの値によって、処理の細かい変更が可能である。
【００１３】
プログラムコード１０は、ブロック２０〜２４（複数の図形）、接続線２５〜２８（複数の接続線）を含んで構成される。ブロック２０〜２４のそれぞれには、各ブロックを識別するためのブロックの通し番号（識別情報：ＩＤ）、ブロック自体に機能を持たせるために必要な情報（機能コード、初期値等のパラメータ）、各ブロックに対するコメント、参照モジュール等の複数の情報（以下、図形情報と称する）が設定されている。
【００１４】
ブロック２０（Ｉｎ）には、例えば通し番号として “１０”が割り当てられ、機能コードとして“ａ（例えば、入力端子としての機能コード）”が設定されている。また、ブロック２０には、ブロック２０が例えば、モジュールＡ（不図示）に接続されることを示すコメント文“Ｍｏｄ＿Ａに接続”が設定されている。さらに、ブロック２０には、ブロック２０のディスプレイ上における表示位置に関する情報（“ＹＹ”）が属性として付与されている。
【００１５】
ブロック２１（ブロックＡ）には、例えば通し番号として“１５”が割り当てられ、機能コードとして“ＡＡ（例えば、アンプ（増幅器）としての機能コード）”が設定されている。また、ブロック２１には、アンプのゲインを示すパラメータとして“初期値”等が設定され、ブロック２０のディスプレイ上における表示位置に関する情報（“ＸＹ”）が属性として付与されている。
【００１６】
ブロック２２（ブロックＢ）には、例えば通し番号として“２５”が割り当てられ、機能コードとして“ＢＢ（例えば、低域通過フィルタとしての機能コード）”が設定されている。また、ブロック２２は、“低域通過フィルタ”としての機能が設定された“モジュールＢ（Ｍｏｄ＿Ｂ）”のパラメータを参照することが設定されている。さらに、ブロック２２のディスプレイ上における表示位置に関する情報（“ＺＺ”）が属性として付与されている。
【００１７】
また、図面上では省略されているが、ブロック２３（Ｏｕｔ）、及びブロック２４（Ｏｕｔ）にも他のブロックと同様に、通し番号が割り当てられ、例えば出力端子としての機能コード等が設定されている。
【００１８】
接続線２５は、ブロック２０，２１の間を接続し、接続線２６は、ブロック２１，２３の間を接続する。また、接続線２７は、ブロック２１，２２の間を接続し、接続線２８は、ブロック２２，２４の間を接続する。接続線２５〜２８のそれぞれには、接続元及び接続先を示す接続情報が付与（内包）されている。例えば、接続線２５には、接続元が通し番号“１０”に対応するブロック２０であり、接続先が通し番号“１５”に対応するブロック２１であることを示す情報が付与される。なお、ここでは図示していないが、接続線２６〜２８も接続線２５と同様の情報が付与されている。
【００１９】
プログラムコード１０は、データフロー図を示しており、ブロック２０に入力された信号データに対しては、ブロック２１における所定の処理Ａ（例えば、アンプの機能に基づく信号の増幅）が実行される。そして、処理Ａが施された信号データは、ブロック２２，２３に出力される。また、ブロック２２では、処理Ａが施された信号データに対し所定の処理Ｂ（例えば、フィルタ処理）が実行され、ブロック２４から出力される。このように、プログラムコード１０では、入力された信号データは、各ブロックに設定された機能に基づいて処理される。
【００２０】
ここで、図２を参照にしつつ、例えば利用者がプログラムコード１０から、プログラムコード１１（第２の図形式プログラム）に変更した場合について説明する。プログラムコード１１では、ブロック２０におけるコメント文と、ブロック２１のパラメータである“初期値”とが変更されている。
【００２１】
具体的には、ブロック２０のコメント文は、例えば、モジュールＣ（不図示）に接続されることを示すコメント文“Ｍｏｄ＿Ｃに接続”に変更されている。そして、ブロック２１のパラメータである“初期値”は、“５０”から“１５０”に変更されている。なお、他のブロックや各ブロックの接続関係は変更されていない。ここで、図１のプログラムコード１０と、図２のプログラムコード１１とにおいて、各ブロックの“通し番号”は変化しない。したがって、例えば、プログラムコード１０，１１において、同じ“通し番号”のブロック同士を比較することにより変更点を把握することが可能となる。また、ここでは、ブロックを新しく作ることによって、通し番号は増えていく。このため、ブロックの数が増えた場合であっても、プログラムコードにおいて変更された点を特定することは可能である。さらに、接続が変更された場合も、接続情報を確認することにより、変更を特定することが可能である。
【００２２】
＜＜構成管理システム３０について＞＞
図３は、本発明の一実施形態であり、前述した図形式プログラムコードの構成管理を実行する構成管理システム３０の一例を示す図である。なお、ここでは、図形式プログラムコードの構成管理について、前述したプログラムコード１０，１１を例に挙げて説明する。
【００２３】
構成管理システム３０は、コンピュータ４０及びデータ管理サーバ４１を含んで構成される。
【００２４】
コンピュータ４０（構成管理支援装置）は、利用者から供給される情報（例えば、プログラムコード１１や変更リスト等）に基づいて、図形式プログラムの構成管理を実行する装置である。コンピュータ４０の図示しないＣＰＵ（Central Processing Unit）が所定のプログラムを実行することにより、コンピュータ４０には、構成管理支援部５０及び構成管理部５１が実現される。構成管理支援部５０及び構成管理部５１は、利用者から供給される情報に基づいて、例えば、最新のプログラムコード（例えば、プログラムコード１１）に対応する変更リストを作成してデータ管理サーバ４１に格納する。
【００２５】
データ管理サーバ４１には、変更作業がされる前のプログラムコード１０と、プログラムコード１０が作成されるまでの変更履歴を示す変更リスト１１０（履歴情報）とを記憶する。なお、プログラムコード１０には、各ブロックの表示位置に関する情報や、図形情報（各ブロックの通し番号、各ブロックの機能に関する情報、各ブロックに対するコメント、参照モジュールの情報等）、接続情報等が含まれている。また、変更リスト１１０は、例えば、図４に示すように、プログラムコード１０が作成されるまでの変更履歴が記録されたシート（開発文書）である。
【００２６】
＜＜構成管理支援部５０の第１の実施形態＞＞
構成管理支援部５０の第１の実施形態である構成管理支援部５０ａについて、図５を参照しつつ説明する。  
構成管理支援部５０ａは、変更前のプログラムコード１０（第１のコード：旧コード）や、変更後のプログラムコード１１（第２のコード：新コード）等が入力される。そして、構成管理支援部５０ａは、構成管理部５１に対し、新しいプログラムコード１１と、プログラムコード１１が生成されたときまでの変更リスト２１０とを出力する。なお、新しいプログラムコード１１は、利用者によって作成される。
【００２７】
構成管理支援部５０ａは、入出力部６０，６１、コード比較部６２、及び変更リスト更新部６３を含んで構成される。
【００２８】
入出力部６０（第２入力部）には、利用者が作成したプログラムコード１１が入力される。なお、入出力部６０は、例えば利用者から所定の指示が入力された場合、入出力部６１、構成管理部５１を介してデータ管理サーバ４１に格納された各種データ（例えばプログラムコード１０等）を取得して出力する。
【００２９】
入出力部６１は、データ管理サーバ４１に格納されたプログラムコード１０、変更リスト１１０を取得する。また、入出力部６１は、入出力部６０に入力されたプログラムコード１１や、変更リスト更新部６３で生成される新しい変更リスト２１０を構成管理部５１に出力する。なお、入出力部６１は、第１入力部、第３入力部、及び出力部に相当する。
【００３０】
コード比較部６２は、新旧のプログラムコード１０，１１を比較し、比較結果として変更された箇所を示す変更リストを生成する。コード比較部６２は、前述したプログラムコード１０，１１の夫々における表示位置に関する情報、図形情報、接続情報等の各種情報のうち、図形情報、接続情報のみを比較する。具体的には、コード比較部６２は、新旧のプログラムコード１０，１１において同じ“通し番号”のブロックの機能に関する図形情報を比較することにより変更点を判別する。さらに、コード比較部６２は、プログラムコード１０における接続情報と、プログラムコード１１における接続情報とを比較し、接続関係の変更点を判別する。
【００３１】
変更リスト更新部６３（追加部）は、コード比較部６２で生成された変更リストを変更リスト１１０に追加し、新たな変更リスト２１０を生成する。
【００３２】
＝＝構成管理支援部５０ａが実行する処理の一例＝＝
ここで、図６を参照しつつ、構成管理支援部５０ａが新たなプログラムコード１１、変更リスト２１０を構成管理部５１に出力する際に実行する処理の一例を説明する。
【００３３】
まず、入出力部６０は、利用者が作成したプログラムコード１１を取得する（Ｓ１００）。そして、入出力部６１は、プログラムコード１０を取得し（Ｓ１０１）、変更リスト１１０を取得する（Ｓ１０２）。コード比較部６２は、プログラムコード１０からプログラムコード１１に変更された際の変更箇所を特定すべく、プログラムコード１０，１１の図形情報、接続情報のそれぞれを比較する（Ｓ１０３）。なお、図１に示すプログラムコード１０が図２に示すプログラムコード１１に変更された際には、前述したように、ブロック２０（通し番号“１０”）の“コメント”とブロック２１（通し番号“１５”）の“初期値”が変更されている。このため、コード比較部６２では、例えば、図７に示すような変更リスト１５０（変更情報）が生成される。
【００３４】
また、変更リスト更新部６３は、履歴情報を示す変更リスト１１０に対し変更リスト１５０を追加し、例えば図８に示すような新しい変更リスト２１０を生成する（Ｓ１０４）。そして、入出力部６１は、新たなプログラムコード１１及び変更リスト２１０を構成管理部５１に出力する（Ｓ１０５）。これによって、プログラムコード１１及び変更リスト２１０が構成管理部５１によって管理されることになる。
【００３５】
ここでは、構成管理の対象となるプログラムコード１１、変更リスト２１０のうち、プログラムコード１１のみが利用者により生成されている。そして、変更リスト２１０は、プログラムコード１１に基づいて生成されている。したがって、プログラムコード１１と変更リスト２１０との間に不整合が発生することを防止することができる。
【００３６】
＜＜構成管理支援部５０の第２の実施形態＞＞
構成管理支援部５０の第２の実施形態である構成管理支援部５０ｂについて、図９を参照しつつ説明する。  
構成管理支援部５０ｂは、図７に示した変更リスト１５０に基づいて、新しいプログラムコード１１及び変更リスト２１０を生成する。なお、ここでは、変更リスト１５０は利用者によって予め作成される。
【００３７】
構成管理支援部５０ｂは、入出力部７０，７１、コード変更部７２、及び変更リスト更新部７３を含んで構成される。
【００３８】
入出力部７０（第１入力部）には、利用者が作成した変更リスト１５０が入力される。なお、入出力部７０は、例えば利用者から所定の指示が入力された場合、入出力部７１、構成管理部５１を介してデータ管理サーバ４１に格納された各種データ（例えばプログラムコード１０等）を取得して出力する。
【００３９】
入出力部７１は、データ管理サーバ４１に格納されたプログラムコード１０、変更リスト１１０を取得する。また、入出力部７１は、コード変更部７２で生成されるプログラムコード１１や、変更リスト更新部７３で生成される新しい変更リスト２１０を構成管理部５１に出力する。なお、入出力部７１は、第２入力部、第３入力部、及び出力部に相当する。
【００４０】
コード変更部７２は、変更リスト１５０を用いてプログラムコード１０を変更（更新）し、新たなプログラムコード１１を生成する。  
変更リスト更新部７３（追加部）は、変更リスト１５０を変更リスト１１０に追加し、新たな変更リスト２１０を生成する。
【００４１】
＝＝構成管理支援部５０ｂが実行する処理の一例＝＝
ここで、図１０を参照しつつ、構成管理支援部５０ｂが新たなプログラムコード１１、変更リスト２１０を構成管理部５１に出力する際に実行する処理の一例を説明する。
【００４２】
まず、入出力部６０は、プログラム１１が生成された際にプログラム１０から変更された箇所を示す変更リスト１５０を取得する（Ｓ２００）。そして、入出力部６１は、プログラムコード１０を取得し（Ｓ２０１）、変更リスト１１０を取得する（Ｓ２０２）。また、コード変更部７２は、変更リスト１５０に基づいて、プログラムコード１０を新たなプログラムコード１１に変更（更新）する（Ｓ２０３）。変更リスト更新部７３は、変更リスト１１０に対し変更リスト１５０を追加し、新しい変更リスト２１０を生成する（Ｓ２０４）。そして、入出力部７１は、新たなプログラムコード１１及び変更リスト２１０を構成管理部５１に出力する（Ｓ２０５）。これによって、プログラムコード１１及び変更リスト２１０が構成管理部５１によって管理されることになる。
【００４３】
ここでは、構成管理の対象となるプログラムコード１１、変更リスト２１０は、利用者によって作成された変更リスト１５０に基づいて生成されている。このように、利用者がプログラムコード１１及び変更リスト２１０を直接変更する必要はないため、プログラムコード１１と変更リスト２１０との間に不整合が発生することを防止できる。
【００４４】
＜＜構成管理支援部５０の第３の実施形態＞＞
構成管理支援部５０の第３の実施形態である構成管理支援部５０ｃについて、図１１を参照しつつ説明する。  
構成管理支援部５０ｃは、新しい変更リスト２１０等に基づいて、新しいプログラムコード１１を生成する。なお、ここで利用者は、変更リスト１１０をデータ管理サーバ４１から取得し、変更リスト１１０に変更箇所を追加することにより変更リスト２１０を予め作成していることとする。
【００４５】
構成管理支援部５０ｃは、入出力部８０，８１、データ比較部８２、及びコード変更部８３を含んで構成される。
【００４６】
入出力部８０（第３入力部）には、利用者が作成した変更リスト２１０（第２の履歴情報）が入力される。なお、入出力部８０は、例えば利用者から所定の指示が入力された場合、入出力部８１、構成管理部５１を介してデータ管理サーバ４１に格納された各種データ（例えばプログラムコード１０等）を取得して出力する。
【００４７】
入出力部８１は、データ管理サーバ４１に格納されたプログラムコード１０、変更リスト１１０（第１の履歴情報）を取得する。また、入出力部８１は、コード変更部８３で生成されるプログラムコード１１や、変更リスト２１０を構成管理部５１に出力する。なお、入出力部８１は、第１入力部、第２入力部、及び出力部に相当する。
【００４８】
データ比較部８２は、新旧の変更リスト１１０，２１０を比較し、比較結果として変更された箇所を示す変更リスト１５０を生成する。  
コード変更部８３は、変更リスト１５０を用いてプログラムコード１０を変更（更新）し、新たなプログラムコード１１を生成する。
【００４９】
＝＝構成管理支援部５０ｃが実行する処理の一例＝＝
ここで、図１２を参照しつつ、構成管理支援部５０ｃが新たなプログラムコード１１、変更リスト２１０を構成管理部５１に出力する際に実行する処理の一例を説明する。
【００５０】
まず、入出力部８０は、利用者が生成した変更リスト２１０を取得する（Ｓ３００）。そして、入出力部８１は、プログラムコード１０を取得し（Ｓ３０１）、変更リスト１１０を取得する（Ｓ３０２）。また、データ比較部８２は、新旧の変更リスト１１０，２１０を比較し、比較結果に基づいて、変更された箇所を示す変更リスト１５０を生成する（Ｓ３０３）。
【００５１】
さらにコード変更部８３は、変更リスト１５０を用いてプログラムコード１０を変更（更新）し、新たなプログラムコード１１を生成する（Ｓ３０４）。そして、入出力部８１は、新たなプログラムコード１１及び変更リスト２１０を構成管理部５１に出力する（Ｓ３０５）。これによって、プログラムコード１１及び変更リスト２１０が構成管理部５１によって管理されることになる。
【００５２】
ここでは、構成管理の対象となるプログラムコード１１、変更リスト２１０のうち、変更リスト２１０のみが利用者により生成されている。そして、プログラムコード１１は、変更リスト２１０に基づいて生成されている。したがって、プログラムコード１１と変更リスト２１０との間に不整合が発生することを防止することができる。
【００５３】
以上、本実施形態の構成管理システム３０について説明した。構成管理支援部５０ａは、利用者が作成したプログラムコード１１に基づいて変更リスト２１０を生成する。したがって、プログラムコード１１と変更リスト２１０との間に不整合（誤り）が発生することを防止することができる。さらに、変更リスト２１０の生成処理は、構成管理支援部５０ａにて自動で行われているため、利用者の負担を軽減することができる。
【００５４】
また、構成管理支援部５０ｂは、利用者によって作成された変更リスト１５０に基づいて構成管理の対象となるプログラムコード１１、変更リスト２１０を生成する。このため、プログラムコード１１と変更リスト２１０との間に不整合が発生することを防止できる。さらに、この場合、図形式プログラムを変更することなく、構成管理の対象であるプログラムコード１１を変更することができるため、例えば図形式プログラムを起動させる手間を省くことができる。
【００５５】
また、構成管理支援部５０ｃは、利用者が作成した変更リスト２１０に基づいてプログラムコード１１を生成する。したがって、プログラムコード１１と変更リスト２１０との間に不整合が発生することを防止することができる。
【００５６】
また、図形式プログラム（プログラムコード１０，１１）において、ディスプレイ上における各ブロックの表示位置やブロックの色に関する情報は、図形式プログラムの処理結果に影響を与えない。本実施形態では、各ブロックに関する情報から、各ブロックの表示位置に関する情報等を除いているため、図形式プログラムの構成管理を適切に行うことができる。
【００５７】
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【符号の説明】
【００５８】
１０，１１  プログラムコード
２０〜２４  ブロック
２５〜２８  接続線
３０  構成管理システム３０
４０  コンピュータ
４１  データ管理サーバ
５０  構成管理支援部
５１  構成管理部
６０，６１，７０，７１，８０，８１  入出力部
６２  コード比較部
６３，７３  変更リスト更新部
７２，８３  コード変更部
１１０，１５０，２１０  変更リスト
【図１】
2013164725.tif 000003
【図２】
2013164725.tif 000004
【図３】
2013164725.tif 000005
【図４】
2013164725.tif 000006
【図５】
2013164725.tif 000007
【図６】
2013164725.tif 000008
【図７】
2013164725.tif 000009
【図８】
2013164725.tif 000010
【図９】
2013164725.tif 000011
【図１０】
2013164725.tif 000012
【図１１】
2013164725.tif 000013
【図１２】
2013164725.tif 000014
【図１３】
2013164725.tif 000015