(57)【要約】【課題】使用言語が異なるものを含む複数のアプリケーションプログラムで定義される変数の、ページ遷移に伴う値の受渡しを実行すると共に、その記録性を良くする。【解決手段】リンク解析部（１０１）は、ページ遷移を伴う手続き毎に、変数の遷移元情報と遷移先情報とをリンク管理テーブルに記録する。変数解析部（１０２）は、前記変数の定義情報を変数管理テーブルに記録する。変数インタフェース（１０７）は、前記ページ遷移のページ間で、前記変数の値の引渡し処理及び／又は代入処理を行う。ユーザインタフェース（１０６）は、前記変数の引渡し処理及び／又は代入処理における情報の流れを含めたページ遷移に関する情報を表示出力する。【選択図】図１
2009009362.tif 000002
【特許請求の範囲】
【請求項１】
言語の異なる複数のプログラムの各々で定義された変数、又は前記複数のプログラム間で共通に定義された変数の、ページ遷移に伴う値の受渡しを管理するプログラム変数管理システムであって、
前記プログラムのページ遷移を伴う手続き毎に、変数の遷移元情報と遷移先情報とをリンク管理テーブルに記録するリンク解析手段と、
前記変数の定義情報を変数管理テーブルに記録する変数解析手段と、
前記ページ遷移前後のページ間で、前記変数の値の引渡し処理及び代入処理のうち少なくとも一方を行う変数インタフェース手段と、
前記変数の引渡し処理及び代入処理に関する情報を含むページ遷移に関する情報を出力するユーザインタフェース手段と、
を備えたことを特徴とするプログラムの変数管理システム。
【請求項２】
前記リンク解析手段は、システム起動時、前記プログラムを格納するファイルの作成時、前記ファイル作成後の一定周期毎のうち少なくとも１つのタイミングで、前記全てのファイルを処理対象として読み込むことを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項３】
前記変数解析手段は、システム起動時、前記プログラムを格納するファイルの作成時、前記ファイル作成後の一定周期毎のうち少なくとも１つのタイミングで、前記全てのファイルを処理対象として読み込むことを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項４】
前記変数解析手段は、前記ユーザインタフェース手段と連携して前記プログラムにおける前記変数の出現箇所と取扱方法とを抽出した後、当該変数の定義情報を変数管理テーブルに記録することを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項５】
前記複数のプログラム間で共通に定義された変数の定義情報については、別途、共有変数管理テーブルに記録して管理することを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項６】
前記変数インタフェース手段は、前記変数管理テーブルに記録された変数の参照可能範囲に基づき、当該変数を、前記複数のアプリケーションの各々の言語表現でアクセス可能な形式に変換することを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項７】
前記ページ遷移に関する情報として、遷移元ページ、遷移先ページ、遷移元引数、当該遷移元引数に対応した遷移先引数、グローバル変数を含む遷移元共通変数、当該遷移元共通変数に対応した遷移先共通変数、変数定義箇所、変数使用箇所、及び変数使用箇所の属性のうち少なくとも１つを管理テーブルに記録することを特徴とする請求項１記載のプログラムの変数管理システム。
【請求項８】
前記ユーザインタフェース手段は、前記変数が特定のものである場合、前記変数解析手段を介してページ内での前記変数の使用状況を調べることを可能とすることを特徴とする請求項１記載のプログラムの変数管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプログラムの変数管理システムに係り、特に、プログラム言語に依存しないでページ遷移に連動したアプリケーションプログラムの変数管理を可能にするプログラムの変数管理システムに関する。
【背景技術】
【０００２】
従来、既存のコンピュータシステムや、オープンにされたソースなど、他者が開発したシステムや資源の改良を行う場合、変更箇所を特定すると共に、当該変更箇所と、その他の変更無しの箇所との整合性を維持する必要があり、このため、システム全体の基本的な構成と、変更箇所の詳細な構成とを承知しておく必要があった。
なお、初めて開発を行う開発対象に対しても、プログラム内の変数や、ページ遷移を、統括して管理できる方法があると、大人数による大規模なシステム開発においても、前述の整合性のチェックが容易になり、開発効率を向上させることができる。
そこで、このようなページ遷移と変数管理方法を採用することによる開発効率の向上を意図して、例えば、ウェブ上のアプリケーションプログラムについて、その機能グループ単位で変数を管理し、更に変数の自動削除手段を付加することにより、開発効率を向上させるフレームワークなどが提案されている（例えば、特許文献１参照。）。
【特許文献１】特開２００４−１７１４９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記背景技術で述べた従来のプログラムの変数管理システムにあっては、例えば、前述の特許文献１で示された手法の場合、機能単位でグループ化されたウェブ上のアプリケーションプログラム（以下、「アプリケーション」と略称する）については、使用される変数を管理（例えば、保持や削除）することが可能にはなるが、グループの枠を超えて、グループ間で共用される変数を管理することは不可能であるという問題点があった。
例えば、異なるプログラミング言語によって定義され、複数のウェブアプリケーションで共用されるグローバルな変数や、異なるウェブアプリケーションに引渡される変数などは管理できなかった。
このため、複数のプログラミング言語を利用する可能性のあるウェブアプリケーションの開発においては、全体の整合性を保つために、ページ遷移や、ビジネスロジックの呼び出しに伴う変数の定義や引渡しの仕様を予め把握しておくことが不可欠となっており、このようなシステムを開発する際の阻害要因となっていた。
【０００４】
本発明は、上記従来の問題点に鑑みてなされたものであって、使用言語が異なるものを含む複数のアプリケーションプログラムで定義される変数の、ページ遷移に伴う値の受渡しを実行することができるプログラムの変数管理システムを提供することを目的としている。
本発明の他の目的は、使用言語が異なるものを含む複数のアプリケーションプログラムの各々についてのページ遷移や、ページ遷移に伴う値の受渡しの実行情報を表示出力することで、ページ遷移箇所を含むアプリケーションプログラムの記録性を良好にして、大規模システムの開発効率の向上に資することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明は、言語の異なる複数のプログラムの各々で定義された変数、又は前記複数のプログラム間で共通に定義された変数の、ページ遷移に伴う値の受渡しを管理するプログラム変数管理システムであって、前記プログラムのページ遷移を伴う手続き毎に、変数の遷移元情報と遷移先情報とをリンク管理テーブルに記録するリンク解析手段と、前記変数の定義情報を変数管理テーブルに記録する変数解析手段と、前記ページ遷移前後のページ間で、前記変数の値の引渡し処理及び代入処理のうち少なくとも一方を行う変数インタフェース手段と、前記変数の引渡し処理及び代入処理に関する情報を含むページ遷移に関する情報を出力するユーザインタフェース手段と、を備えたことを特徴とするプログラムの変数管理システムを提供するものである。
【０００６】
ここで、前記プログラムの変数管理システムにおいて、前記リンク解析手段は、システム起動時、前記プログラムを格納するファイルの作成時、前記ファイル作成後の一定周期毎のうち少なくとも１つのタイミングで、前記全てのファイルを処理対象として読み込むことを特徴とする。
また、前記プログラムの変数管理システムにおいて、前記変数解析手段は、システム起動時、前記プログラムを格納するファイルの作成時、前記ファイル作成後の一定周期毎のうち少なくとも１つのタイミングで、前記全てのファイルを処理対象として読み込むことを特徴とする。
【０００７】
また、前記プログラムの変数管理システムにおいて、前記変数解析手段は、前記ユーザインタフェース手段と連携して前記プログラムにおける前記変数の出現箇所と取扱方法とを抽出した後、当該変数の定義情報を変数管理テーブルに記録することを特徴とする。
また、前記プログラムの変数管理システムは、前記複数のプログラム間で共通に定義された変数の定義情報については、別途、共有変数管理テーブルに記録して管理することを特徴とする。
【０００８】
また、前記プログラムの変数管理システムにおいて、前記変数インタフェース手段は、前記変数管理テーブルに記録された変数の参照可能範囲に基づき、当該変数を、前記複数のアプリケーションの各々の言語表現でアクセス可能な形式に変換することを特徴とする。
また、前記プログラムの変数管理システムは、前記ページ遷移に関する情報として、遷移元ページ、遷移先ページ、遷移元引数、当該遷移元引数に対応した遷移先引数、グローバル変数を含む遷移元共通変数、当該遷移元共通変数に対応した遷移先共通変数、変数定義箇所、変数使用箇所、及び変数使用箇所の属性のうち少なくとも１つを管理テーブルに記録することを特徴とする。
さらに、前記プログラムの変数管理システムにおいて、前記ユーザインタフェース手段は、前記変数が特定のものである場合、前記変数解析手段を介してページ内での前記変数の使用状況を調べることを可能とすることを特徴とする。
【０００９】
上記した本発明のプログラムの変数管理システムにおいて、リンク解析手段は、ページ遷移を表す特定文字列を辿ってリンク管理テーブルを作成することでページ遷移を自動的に認識するので、本システムの使用に際しては、事前の処理や、特段の追加処理が不要となる。
また、変数解析手段は、変数の定義場所と定義内容とをテーブルに纏め、変数の使用箇所を自動的に検索するので、人手によって予め指定することを不要にしている。
また、本発明の、変数インタフェース手段は、複数言語間で共通の変数を用いるための自動的な変換手段となるので、異種言語を使用する厄介なアプリケーションの連結を容易にしている。
さらに、ユーザインタフェース手段は、ページ遷移と変数管理との状況を表示するので、ページ遷移に伴う変数の引渡状況を容易に視認することを可能にしている。
【００１０】
また、本発明では、リンク管理テーブル、変数管理テーブル、共通変数管理テーブルを設け、リンク解析手段が解析したページ遷移と、変数管理手段が解析した変数とを、それぞれテーブルとして管理し、ユーザインタフェース手段において、両者を関連付けて表示するので、アプリケーションの構造を理解し易くすると共に、アプリケーションを統合する大規模なシステムの開発効率を高めることを可能にしている。
さらに、本発明では、アプリケーションで定義される変数を、開発言語及び参照可能範囲と共に管理すると共に、ページ遷移の際に、前述のユーザインタフェース手段を介して、当該変数を、各アプリケーションを記述する言語に適した形に変換するので、これにより、複数言語に跨がるアプリケーションの開発を容易にしている。
【発明の効果】
【００１１】
以上説明したように、本発明のプログラムの変数管理システムによれば、ページ遷移を管理することでアプリケーションの構造を把握し易くし、さらに変数管理をページ遷移と関連付けて行うことで、アプリケーションの拡張性及び保守性を向上させることができる効果がある。
また、リンク解析部により解析したページ遷移と、変数管理部により解析した変数とをテーブルとして管理し、両者を関連付けるユーザインタフェース手段を設けることにより、多言語のアプリケーションで定義された変数であっても、いずれの言語のアプリケーションからも引数として受け取れるようになるので、開発者が得意な言語で記述できるようになり、よって、開発効率を向上させることができる効果がある。
加えて、異なる言語で記述されたアプリケーション同士の連結も容易になり、システムの開発効率の向上と、拡張性の向上に大幅に貢献する効果がある。
【発明を実施するための最良の形態】
【００１２】
本発明に係るプログラムの変数管理システムは、ページ遷移の管理と変数管理とを連携して行って、変数の共有手段を提供し、ページ遷移と変数の各情報をユーザに表示する手段を提供する。アプリケーションのページ遷移や、ビジネスロジックの呼出を監視することで、アプリケーションの構成を把握して改良を容易にすると共に、変数を統括管理してアプリケーションの変更による影響を開発者に容易に認識させる。また、複数のインタフェースを設けることにより、複数言語を用いたアプリケーションの構築を可能にし、更に、その効果により、アプリケーションの連結作業を容易にするものである。
以下、本発明のプログラムの変数管理システムの最良の実施形態について、図面を参照して詳細に説明する。
【００１３】
図１は、本発明の実施形態に係るプログラムの変数管理システムの全体構成を示す構成図である。
同図において、本実施形態のプログラムの変数管理システムは、リンク管理テーブル（１０３）と、変数管理テーブル（１０４）と、アプリケーションのページ遷移と変数情報を分析してリンク管理テーブル（１０３）と変数管理テーブル（１０４）とを作成・管理するリンク解析部（１０１）（リンク解析手段）及び変数解析部（１０２）（変数解析手段）と、共有変数テーブル（１０５）と、他言語間で共有する変数と共有変数テーブル（１０５）との間を仲介するユーザインタフェース（１０６）（ユーザインタフェース手段）と、前記各管理テーブルを用いて変数変換を行ってページ間の変数共有を可能にする変数インタフェース（１０７）（変数インタフェース手段）と、を備えて構成される。
【００１４】
以下、本実施形態に係るプログラムの変数管理システムの機能を説明する。
図１に示す構成において、リンク解析部（１０１）と変数解析部（１０２）は、アプリケーションのページ遷移と変数情報を分析し、リンク管理テーブル（１０３）及び変数管理テーブル（１０４）を作成・管理することでページ遷移と変数の統合管理を実現する。
また、リンク管理テーブル（１０３）と変数管理テーブル（１０４）の情報は、ユーザインタフェース（１０６）を介して他言語間で共有する変数の関係を入力することで共有変数テーブル（１０５）が作成される。
インタフェース（１０７）は、これら各管理テーブルを用いて変数変換を行い、ページ間の変数共有を可能にする。
に、ユーザインタフェース（１０６）は、各管理テーブルからユーザに必要な管理情報の抽出を行うと共に、その表示を行う。
【００１５】
本実施形態に係るプログラムの変数管理システムの機能を実現するに際しては、まずはリンク解析部（１０１）と、変数解析部（１０２）と、変数インタフェース（１０７）と、ユーザインタフェース（１０６）をデータベースにアクセスできるように、かつ相互にアクセスできるように作成しなければならない。
リンク解析部（１０１）は、アプリケーションを定義するファイルを監視し、システム起動時とファイル作成時、若しくは前記ファイル作成後の一定周期毎に、前記全てのファイルを読み込み、ページ遷移をテーブルとしてデータベースに格納する。
解析部（１０２）は、指定されたフォルダ内にあるアプリケーション上で使用される変数を、起動時とファイル作成および変更時、あるいは一定周期で全ての変数をデータベースにテーブルとしてリストアップする。また、変数解析部（１０２）はユーザインタフェース（１０６）と連携して、ユーザが求める変数の使用箇所と使用方法を検索することができる。
（１０６）は、ページ遷移（あるいは、変数の引渡しや代入などの情報を含めたページ遷移）が、ユーザに理解できるように可視化する。このため、特定の変数などは、ユーザに必要な情報を抽出する際、変数解析部（１０２）を使用してページ内での変数の使用状況を調べる。
インタフェース（１０７）は、変数管理テーブルによって管理された参照可能範囲に基づき、それぞれの言語でアクセス可能な形式に変換する。これにより、他言語間での変数の共有が可能となり、開発効率の向上と、アプリケーションの拡張性とを実現することができる。
【００１６】
図２は、本実施形態に係るプログラムの変数管理システムのテーブル構成例を示す説明図であり、図２（ａ）はリンク管理テーブル（１０３）、図２（ｂ）は変数管理テーブル（１０４）、図２（ｃ）は共有変数管理テーブル（１０５）の、１構成例をそれぞれ示すものである。
（ａ）に示すリンク管理テーブル（１０３）と、図２（ｂ）に示す変数管理テーブル（１０４）とは、いずれもリンク解析部（１０１）と変数解析部（１０２）とにより作成・管理されたものである。また、図２（ｃ）に示す共有変数テーブル（１０５）は、ユーザインタフェースを介して入力され、作成された共有変数の関係を示すものである。
（ａ）に示すリンク管理テーブル（１０３）は、識別番号、遷移元情報、遷移先情報、および遷移する方法を示す情報で構成されている。識別番号（＃）は、リンクを一意に識別するために自動的に付与されるキーとなる。遷移元情報は、遷移元となるページの物理的なファイル名である「遷移元ファイル」と、遷移元ページの種別を表す「遷移元形式」と、遷移元から引き渡す変数を格納するための変数管理テーブルの要素を一意に識別する「遷移元変数＃」の各項目で構成される。
情報も同様に、遷移先となるページの物理的なファイル名である「遷移先ファイル」と、遷移先ページの種別を表す「遷移先」と、遷移先に引き渡された変数を格納するための変数管理テーブルの要素を一意に識別する「遷移先変数＃」の各項目で構成される。
【００１７】
前述の遷移する方法については、図２（ａ）に示す例では「種別」の列で表現され、これにより、遷移元から遷移先にどのように遷移が行われるかを示している。例えば、リンクであれば、ハイパーテキストをたどって、変数をＰＯＳＴで引き渡す。移行であれば、ＪＳＰのリダイレクト機能で変数を引き渡す。といったように、遷移の種別によって異なる、所定の変数の引渡し方法を判別するために用いられる。
【００１８】
図２（ｂ）に示す変数管理テーブル（１０４）には、識別番号（＃）、変数名、変数等を定義する情報である「変数名」と、ページの物理ファイルを示す「定義ファイル名」と、そのページの記述言語を示す「言語」の項目と、「スコープ」と呼ばれる変数の参照可能範囲の情報項目とが含まれる。
ここで、「スコープ」とは、例えば、その項目値が「Ｓｅｓｓｉｏｎ」の場合は、利用者が張るセッションごとに管理される変数であり、利用者は何処からでもアクセス可能であり、また、項目値が「Ｒｅｑｕｅｓｔ」の場合は、一度の利用要求に限って参照可能な変数であることを示すといったように、変数の参照範囲を示す情報のことである。
図２（ｂ）に示す変数管理テーブル（１０４）で定義された当該変数は、リンク管理テーブル（１０３）の、遷移元、遷移先の変数＃を示す情報と関連づけられているので、リンク管理テーブル（１０３）と変数管理テーブル１０４）とを参照して、ページの構成をトレースすることができる。
【００１９】
図２（ｃ）に示す共有変数管理テーブル（１０５）は、変数管理テーブルと同様の情報を格納するが、グループ列が追加されている。ここでのグループとは、アプリケーション内で共有すべき変数の属する言語を意味しており、一つの言語につき一つの変数が属するものとする。共有変数はアプリケーション内で透過的に参照できる「ＧＬＯＢＡＬ」をスコープに有し、アプリケーションの種別ごとにグルーピングされているといったイメージである。以上のテーブルは、用途に沿って適宜拡張、追加されるべきものである。変数の行数を格納する、遷移先、遷移元でテーブルを正規化する等の変更を行って拡張することも可能である。
【００２０】
次に、本発明を構成する機能要素について説明する。
図３は、変数解析部（１０２）が変数管理テーブル（１０４）を作成する処理の動作を示すフローチャート図である。
ここで、変数解析部（１０２）には、アプリケーションが定義されている全てのフォルダ、及びこのフォルダ内の全てのファイルの内、あらかじめ初期読み込みすべきフォルダと、当該フォルダ内のファイルとが、アクセス可能に指定されているものとする。
【００２１】
まず、変数解析部（１０２）は、指定された初期読み込みファイルを設定ファイルとして決定する（ステップＳ１）。
次に、変数解析部（１０２）は、この設定ファイルとして決定されたファイルを読み込み、その変数定義部で定義された変数を検索し、この変数とスコープとをリストアップする（ステップＳ２）。
次に、変数解析部（１０２）は、リストアップ項目の有無を検証し、リストアップ項目が無ければステップＳ４に進み、リストアップ項目が有ればステップＳ６に移る（ステップＳ３）。
【００２２】
ステップＳ４では、変数解析部（１０２）は、検索フォルダ内の他の未検索のファイルを探し、未検索のファイルが有ればステップＳ５に進み、未検索のファイルが無ければ変数管理テーブル（１０４）を作成する処理を終了する。
ステップＳ５では、変数解析部（１０２）は、未検索のファイルが有る場合の処理として、その設定を行い、それについて変数の検索を行うためにステップＳ２に戻る。
【００２３】
一方、ステップＳ６では、変数解析部（１０２）は、リストアップ項目が有る場合の処理として、変数管理テーブル（１０４）に対して、同じ変数名と、定義ファイル名とを指定した検索を行い、その結果、変数管理テーブル（１０４）に同じ変数名と、定義ファイル名とが無い場合はステップＳ７にて変数をテーブルに格納（即ち追加）した後、ステップＳ４に移る。さもなくて、変数管理テーブル（１０４）に同じ変数名と、定義ファイル名とが有る場合は何もしないで直ちにステップＳ４に移る（ステップＳ６）。
【００２４】
これにより、変数解析部（１０２）は、設定されたフォルダから、検索していないファイルを見つけ出し、そのファイルで変数検索し、未登録のものを変数管理テーブル（１０４）に追加していく。これをアプリケーションが定義されている全てのフォルダ内の全てのファイルに対して実行する。
【００２５】
図５は、プログラム（ｊａｖａ）内における変数の定義情報の１例を示す説明図である。
同図において、四角の枠で囲まれた部分に示す一連のテキストが、変数解析部が検索する変数の定義である。これらの定義は、アプリケーションが使用するプログラミング言語に特有の形式で定義されるものであり、変数解析部（１０２）は、このプログラミング言語に特有の定義方法を参照して、その意味を解読し、定義されている変数（ここでは７つ）を探し出す。
【００２６】
図４は、リンク解析部（１０１）がリンク管理テーブル（１０３）を作成する処理の動作を示すフローチャート図である。
ここでも、リンク解析部（１０１）には、アプリケーションが定義されている全てのフォルダ、及びこのフォルダ内の全てのファイルの内、あらかじめ初期読み込みすべきフォルダと、当該フォルダ内のファイルとが、アクセス可能に指定されているものとする。
【００２７】
まず、リンク解析部（１０１）は、指定された初期読み込みファイルを設定ファイルとして決定する（ステップＳ２１）。
次に、リンク解析部（１０１）は、この設定ファイルとして決定されたファイルを読み込み、リンク文字列（より具体的には、遷移元、遷移先の変数・ページ情報）を検索し、このリンク文字列をリンク情報としてリストアップする（ステップＳ２２）。
次に、リンク解析部（１０１）は、リストアップ項目の有無を検証し、リストアップ項目が無ければステップＳ２４に進み、リストアップ項目が有ればステップＳ２６に移る（ステップＳ２３）。
【００２８】
ステップＳ２４では、リンク解析部（１０１）は、検索フォルダ内の他の未検索のファイルの有無を検証し、未検索のファイルが無ければステップＳ２５に進み、未検索のファイルが有ればステップＳ２８に移る。
【００２９】
ステップＳ２５では、リンク解析部（１０１）は、未検索のファイルが無い場合の処理として、リンク管理テーブル（１０３）に基づいて遷移先ページでの変数（プログラム用語では「引数」と呼ばれる）を検索してリンク管理テーブル（１０３）を更新し、リンク管理テーブル（１０３）を作成する処理を終了する。
ステップＳ２８では、リンク解析部（１０１）は、未検索のファイルが有る場合の処理として、リンク管理テーブル（１０３）に記述済のファイルの内、未検索のファイルを選択し、次の設定ファイルとして決定した後、ステップＳ２２に戻る。
一方、ステップＳ２６では、リンク解析部（１０１）は、リストアップ項目が有る場合の処理として、リンク管理テーブル（１０３）に対して、同じ文字列（遷移元、遷移先の変数・ページ情報）の検索を行い、その結果、リンク管理テーブル（１０３）に同じ文字列が無い場合はステップＳ２７にて、この文字列をリンク管理テーブル（１０３）に格納（即ち追加）した後、ステップＳ２４に移る。さもなくて、リンク管理テーブル（１０３）に有る場合は何もしないで直ちにステップＳ２４に移る（ステップＳ２６）。
【００３０】
図６は、プログラム（ＪＳＰ）の一部分におけるリンク文字列の１例を示す説明図である。
同図において、四角の枠で囲まれた部分に示す一連のテキストが、リンク解析部（１０１）が検索するリンクの定義である。これらもプログラミング言語特有の形式で定義されるものであり、リンク解析部（１０１）は、このプログラミング言語に特有の定義方法を参照して、その意味を解読し、定義されているリンク定義（ここでは２つ）を探し出す。
【００３１】
図７は、変数インタフェース（１０７）がページ間で変数の値を引き渡す処理の動作を示すフローチャート図である。
ここで、変数インタフェース（１０７）（図１）とは、変数間での値の引渡しをサポートし、他言語でのアプリケーション開発を可能にする手段である。
例えば、ＪＳＰページからＪＳＰページへの遷移などのように、同種の言語で書かれたページ遷移の場合は、変数インタフェース（１０７）は、特別な処理をすることなく変数間で値を引き渡すことができる。一方、ＪＳＰページからＰＨＰページといったように、或る言語で書かれたページから、異なる言語で書かれたページに遷移する場合、ＪＳＰの変数としてメモリに格納されている変数を、ＰＨＰの変数に変換してメモリに書き込まなければならない。
【００３２】
アプリケーションの実行中、クライアントの事情により、変数変換の要求が発生すると、まず、変数インタフェース（１０７）は、他ページへの遷移を伴う変数変換の要求であるか否かを検証し、他ページへの遷移を伴う変数変換の要求の場合はステップＳ３３に移り、他ページへの遷移を伴わない変数変換の要求の場合はステップＳ３２に進む（ステップＳ３１）。
【００３３】
ステップＳ３２では、変数インタフェース（１０７）は、変数変換が要求されたページを表示する。
ステップＳ３３では、変数インタフェース（１０７）は、遷移元のページが書かれている言語に基づいて定義されている変数を引き出すと共に、遷移先のページで当該変数の定義を書き込むページ（以下、「ページＡ」とする）を作成する。次に、変数インタフェース（１０７）は、ページＡに書かれた定義に基づいて、遷移元ページの変数値を読み込み、遷移先ページの言語で定義するページ（以下、「ページＢ」とする）を記述する（ステップＳ３４）。
次に、変数インタフェース（１０７）は、ページＢを実行し、遷移元のページと同期をとり、その後、ステップ３２に移る（ステップＳ３５）。
【００３４】
図８は、変数インタフェース（１０７）がページ間で変数の値を引き渡す処理のシステム構成を示す説明図である。
同図では、まず、ＪＳＰで記述されたページＡをクライアント１が閲覧しているものとする。ページＡ上のリンクから、ＰＨＰで記述されたページＤが要求され、サーバ２にページ要求を出す。要求を受け取ったサーバ２上では、本発明のプログラムの変数管理システムが起動しており、本システムは、ＪＳＰで用いているグローバル変数を読み込み、共有変数テーブル（１０５）から、同じグループに属する変数をＰＨＰのグローバル変数として格納するＰＨＰファイルを作成するためのＪＳＰページＢを自動作成する。なお、共有変数テーブル（１０５）は、ユーザインタフェース（１０６）を介して、あらかじめ入力されているものとする。
ページＢを実行すると、グローバル変数ａが読み込まれ、それをＰＨＰのグローバル変数として定義するＰＨＰページＣが自動作成される。そして、ページＣを実行すると、ＰＨＰのグローバル変数として、ａの値がメモリ２１に格納される。他言語で記述されたページに遷移する際にこの操作を行うことで、それぞれの言語間でグローバル変数の同期をとることができ、変数の共有が実現されたことになる。
【００３５】
ユーザインタフェース（１０６）は、リンク管理テーブル（１０３）に記述されたページ遷移を可視化する（目視できるようにする）。例えば、ページを示すアイコンを線で繋ぐことでページ遷移を可視化することができる。また、変数管理テーブルを利用して、そこに変数が定義されていることをページアイコンと共に示すことも可能となる。加えて、変数解析部（１０２）の変数の検索手段を用いてファイル内で変数が演算・代入などで使われている箇所も同時に表示することができる。これにより、プログラムの改良による全体への影響を把握し易くなり、よって、開発効率を向上させることができる。
【００３６】
図９は、ユーザインタフェース（１０６）を用いてページ遷移結果と変数情報とを表示する処理の１例を示す説明図である。
ページ遷移と変数表示については、遷移元ページと、遷移先ページと、遷移元引数と、それに対応した遷移先引数と、グローバル変数などの遷移元共通変数と、それに対応した遷移先共通変数と、変数定義箇所と、変数使用箇所と、変数使用箇所の属性と、を備えた管理テーブルとして表示させてもよい。
【００３７】
最後に、ユーザインタフェース（１０６）によるページ遷移の可視化（表示処理）を説明する。
ユーザは、ページ遷移の可視化開始地点のページを選択する。ユーザインタフェース（１０６）は、このページを元に、リンク管理テーブル（１０３）を検索し、遷移元と遷移先とを結ぶ紐付けを行う。
この遷移先を新たな遷移元としてリンク管理テーブル（１０３）を繰り返し検索することで、選択したページを中心に、ページと、その遷移とを表す矢印を描いた表示図が完成する。
また、リンク管理テーブル（１０３）には、ページごとに遷移させる変数の識別番号が格納されているので、変数管理テーブルを参照することで、矢印に対して遷移時に引き渡される変数を付与することが可能となる。
【００３８】
以上で、ページ遷移と遷移させる変数についての可視化が完了する。その後、ページごとに付随する変数を、ページ名をキーにして変数管理テーブル（１０４）から取得する。また、グローバル変数の情報も、共有変数管理テーブル（１０５）から取得し、追加することが可能である。この際、行数や用途などの付加的な情報の取得手段は、ファイルを検索して取得する手段、もしくは、それぞれの管理テーブルの子テーブルとして保持する手段、のいずれの手段も実施可能である。以上、この実施形態では、ページ遷移を可視化することが可能となる。
【００３９】
なお、本発明に係るプログラムの変数管理システムの上記処理を、図３，４，７の各フローチャートで示した手順によりコンピュータに実行せしめるプログラムは、半導体メモリを始め、ＣＤ−ＲＯＭや磁気テープなどのコンピュータ読み取り可能な記録媒体に格納して配付してもよい。そして、少なくともマイクロコンピュータ，パーソナルコンピュータ，汎用コンピュータを範疇に含むコンピュータが、上記の記録媒体から上記プログラムを読み出して、実行するものとしてもよい。
【産業上の利用可能性】
【００４０】
本発明は、多言語で行うアプリケーションプログラムの開発全般、第三者により作成されたアプリケーションプログラムの改良、及び他言語で記述されたシステムの連携システムの開発全般の仕事に、好適に採用することが可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施形態に係るプログラムの変数管理システムの全体構成を示す構成図である。
【図２】本実施形態に係るプログラムの変数管理システムのテーブル構成例を示す説明図であり、図２（ａ）はリンク管理テーブル（１０３）、図２（ｂ）は変数管理テーブル（１０４）、図２（ｃ）は共有変数管理テーブル（１０５）の、１構成例をそれぞれ示すものである。
【図３】変数解析部（１０２）が変数管理テーブル（１０４）を作成する処理の動作を示すフローチャート図である。
【図４】リンク解析部（１０１）がリンク管理テーブル（１０３）を作成する処理の動作を示すフローチャート図である。
【図５】プログラム（ｊａｖａ）内における変数の定義情報の１例を示す説明図である。
【図６】プログラム（ＪＳＰ）の一部分におけるリンク文字列の１例を示す説明図である。
【図７】変数インタフェース（１０７）がページ間で変数の値を引き渡す処理の動作を示すフローチャート図である。
【図８】変数インタフェース（１０７）がページ間で変数の値を引き渡す処理のシステム構成を示す説明図である。
【図９】ユーザインタフェース（１０６）を用いてページ遷移結果と変数情報とを表示する処理の１例を示す説明図である。
【符号の説明】
【００４２】
１０１・・・リンク解析部（ページ遷移を自動的に認識する手段）
１０２・・・変数解析部（変数定義箇所と使用箇所を特定する手段）
１０３・・・リンク管理テーブル（リンクの詳細を定義したテーブル）
１０４・・・変数管理テーブル（アプリケーションで共有する変数を纏めたテーブル）
１０５・・・共有変数管理テーブル（共有変数について定義したテーブル）
１０６・・・ユーザインタフェース（ページ遷移や変数管理をユーザに見易くするユーザインタフェース）
１０７・・・変数インタフェース（変数を適した形式にしてリンク先に変数を引き渡すためのインタフェース）
【図１】
2009009362.tif 000003
【図２】
2009009362.tif 000004
【図３】
2009009362.tif 000005
【図４】
2009009362.tif 000006
【図５】
2009009362.tif 000007
【図６】
2009009362.tif 000008
【図７】
2009009362.tif 000009
【図８】
2009009362.tif 000010
【図９】
2009009362.tif 000011