(57)【要約】      （修正有）【課題】アプリケーションの開発途中であっても現状の画面遷移状態を容易に確認できる画面遷移図を生成することができる仕組みを提供する。【解決手段】複数画面を用いたアプリケーションを生成する際に用いられる画面定義に関する情報をもとにして、遷移元の画面と遷移先の画面とのつながりが識別できる一覧画面を生成する。それにより、アプリケーションの開発途中であっても現状の画面遷移状態を容易に確認できる画面遷移図を生成することができる。【選択図】図１２
2020024724.tif 000002
【特許請求の範囲】
【請求項１】
画面を識別するための画面情報と、画面に表示される表示項目と、当該表示項目に対応する遷移先の画面情報と、を含む定義情報を記憶する記憶手段と、
前記記憶手段に記憶された定義情報に基づいて、複数の画面を用いたアプリケーションを生成する生成手段と、を有する情報処理装置であって、
前記記憶手段から、アプリケーションで用いられる画面の画面情報と、当該画面に表示される表示項目に対応する遷移先の画面情報を取得する取得手段と、
前記取得手段で取得された前記画面情報と前記遷移先の画面情報を用いて、遷移元の画面を示すオブジェクトと遷移先の画面を示すオブジェクトとの繋がりを識別できる一覧画面を生成する遷移画面生成手段と、
を有する情報処理装置。
【請求項２】
前記遷移画面生成手段は、前記遷移元の画面を示すオブジェクトと前記遷移先の画面を示すオブジェクトとが線でつながるように表示させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記遷移画面生成手段は、前記取得手段で遷移元の画面と遷移先の画面とが同じとなる表示情報を複数取得した場合には、オブジェクトをつなぐ線が重ならないように一覧画面を生成することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記遷移画面生成手段は、表示項目の情報も一覧画面上に表示することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記遷移画面生成手段で生成された一覧画面上で、オブジェクトの追加を受け付ける受付手段と、
前記受付手段で受け付けたオブジェクトに対応する画面情報を、前記記憶手段に追加する追加手段と、を更に有することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記受付手段は、追加を受け付けたオブジェクトの画面情報と、当該画面情報に表示される表示項目と、表示項目に対応する遷移先の画面情報と、を受け付け可能であることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記記憶手段に記憶される定義情報をもとに、アプリケーションで主画面として用いられる画面からの階層を特定する階層特定手段と、
アプリケーションで用いられる画面情報のうち、前記一覧画面に表示させる階層数を記憶する階層数記憶手段と、
前記階層数記憶手段で記憶された階層数と、前記階層特定手段で特定された階層とを用いて、前記一覧画面に表示させるオブジェクトを決定する階層決定手段と、を更に有し、
前記遷移画面生成手段は、前記階層決定手段で決定されたオブジェクトを用いて、前記一覧画面を生成することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記記憶手段に記憶される定義情報をもとに、遷移数を画面ごとに特定する遷移数特定手段と、
アプリケーションで用いられる画面情報のうち、前記一覧画面に表示させる遷移数を記憶する遷移数記憶手段と、
前記遷移数記憶手段に記憶された遷移数と、前記遷移数特定手段で特定された遷移数とを用いて、前記一覧画面に表示させるオブジェクトを決定する遷移数決定手段と、を更に有し、
前記遷移画面生成手段は、前記遷移数決定手段で決定されたオブジェクトを用いて、前記一覧画面を生成することを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項９】
画面を識別するための画面情報と、画面に表示される表示項目と、当該表示項目に対応する遷移先の画面情報と、を含む定義情報を記憶する記憶手段を有し、前記記憶手段に記憶された定義情報に基づいて、複数の画面を用いたアプリケーションを生成する生成手段と、を有する情報処理装置の制御方法であって、
前記記憶手段から、アプリケーションで用いられる画面の画面情報と、当該画面に表示される表示項目に対応する遷移先の画面情報を取得する取得工程と、
前記取得工程で取得された前記画面情報と前記遷移先の画面情報を用いて、遷移元の画面を示すオブジェクトと遷移先の画面を示すオブジェクトとの繋がりが識別できる一覧画面を生成する遷移画面生成工程と、
を有する制御方法。
【請求項１０】
画面を識別するための画面情報と、画面に表示される表示項目と、当該表示項目に対応する遷移先の画面情報と、を含む定義情報を記憶する記憶手段を有し、前記記憶手段に記憶された定義情報に基づいて、複数の画面を用いたアプリケーションを生成する生成手段と、を有する情報処理装置で実行可能なプログラムであって、
前記情報処理装置を、
前記記憶手段から、アプリケーションで用いられる画面の画面情報と、当該画面に表示される表示項目に対応する遷移先の画面情報を取得する取得手段、
前記取得手段で取得された前記画面情報と前記遷移先の画面情報を用いて、遷移元の画面を示すオブジェクトと遷移先の画面を示すオブジェクトとの繋がりが識別できる一覧画面を生成する遷移画面生成手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、企業内では、クライアント端末に特別なアプリケーションをインストールすることなく業務が行えるように、業務用アプリケーションのＷｅｂ化が急速に進んでいる。そしてこのような業務アプリケーションの開発現場においては、開発スキル不足や要員不足を解決するために、Ｗｅｂアプリケーションをプログラミングレスで容易に作成できる開発ツールが用いられている。このような開発ツールを用いると、プログラミング言語の知識を有していなくても、業務・設計ノウハウを活用して基本設計情報を定義するだけで、Ｗｅｂアプリケーションを自動生成することができる。
【０００３】
ところで、このような業務アプリケーションは複数の画面を用意し、画面から別の画面へと遷移していくように設計されるが、全体の業務の流れを把握するために画面遷移図を作成することがある。
【０００４】
このような画面遷移図を手作業で作成することは煩雑であるため、自動で画面遷移図を作成することのできる仕組みが求められており、例えば特許文献１には、システム利用者による操作を受け付ける画面のソースコードに含まれる画面から他の画面への遷移を示す遷移情報に基づいて、遷移元の画面と遷移先の画面とを関連付けた画面遷移を生成する画面遷移図生成方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１０８６０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、Ｗｅｂアプリケーションの開発時には画面遷移の仕様が開発途中で変更になることが多く、開発中においても画面遷移がどのような状態となっているのかを視覚的に認識することができる画面遷移図が求められている。
【０００７】
しかしながら、特許文献１の方法では、システム利用者による操作に基づいて画面遷移図を生成するため、開発中の画面遷移の状態を確認することは困難であるといえる。
【０００８】
そこで本発明は、上記課題を鑑み、アプリケーションの開発途中であっても現状の画面遷移状態を容易に確認できる画面遷移図を生成することができる仕組みを提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明は、画面を識別するための画面情報と、画面に表示される表示項目と、当該表示項目に対応する遷移先の画面情報と、を含む定義情報を記憶する記憶手段と、前記記憶手段に記憶された定義情報に基づいて、複数の画面を用いたアプリケーションを生成する生成手段と、を有する情報処理装置であって、前記記憶手段から、アプリケーションで用いられる画面の画面情報と、当該画面に表示される表示項目に対応する遷移先の画面情報を取得する取得手段と、前記取得手段で取得された前記画面情報と前記遷移先の画面情報を用いて、遷移元の画面を示すオブジェクトと遷移先の画面を示すオブジェクトとの繋がりを識別できる一覧画面を生成する遷移画面生成手段と、を有している。
【発明の効果】
【００１０】
このように、アプリケーションを生成する際に用いられる情報をもとに遷移元の画面と遷移先の画面とのつながりが識別できる一覧画面を生成することにより、アプリケーションの開発途中であっても現状の画面遷移状態を容易に確認できる画面遷移図を生成することができる。
【図面の簡単な説明】
【００１１】
【図１】Ｗｅｂアプリケーション自動生成システム（情報処理システム）のシステム構成の一例を示す図である。
【図２】開発用端末１０１、サーバ１０２、利用者用端末１０３のハードウェア構成を示す図である。
【図３】Ｗｅｂアプリケーションの画面遷移図を作成する機能構成を説明するための図である。
【図４】データベース定義１１１の一例を説明するための図である。
【図５】データモデル定義１１２の一例を説明するための図である。
【図６】ビジネスプロセス定義１１３の一例を説明するための図である。
【図７】入出力定義１１４の一例を説明するための図である。
【図８】アプリケーション定義１１０を説明するための図である。
【図９】Ｗｅｂアプリケーションを自動生成する際の流れを説明するためのフローチャートである。
【図１０】画面遷移図を描画する際の流れを説明するためのフローチャートである。
【図１１】画面遷移アクションの表示設定を行う画面例を示す図である
【図１２】画面遷移図の一例である。
【図１３】メモが追加された画面遷移図の一例である。
【図１４】画面遷移図のメモの名称を追加する様子の一例である。
【図１５】画面遷移図を介して入出力定義を追加する様子を説明する図である。
【図１６】画面遷移図を介してアクション定義を追加する様子を説明する図である。
【図１７】入出力定義及びアクション定義が追加された画面遷移図の一例である。
【図１８】追加された入出力定義の一例を説明するための図である。
【図１９】複数のアクション定義において遷移元画面と遷移先画面とが同じ場合の画面遷移図の一例である。
【図２０】入出力定義が多数ある場合の画面遷移図の一例である。
【図２１】階層描画または遷移数描画が行えるアプリケーション定義画面を示す図である
【図２２】アプリケーション定義のフィルタプロパティ設定画面である。
【図２３】階層描画を行う際の流れを説明するためのフローチャートである。
【図２４】階層描画された画面遷移図の一例である。
【図２５】遷移数描画を行う際の流れを説明するためのフローチャートである。
【図２６】遷移数描画された画面遷移図の一例である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【００１３】
図１は、本実施形態におけるＷｅｂアプリケーション自動生成システム（以下、情報処理システムとも称する）のシステム構成を示す図である。本発明のＷｅｂアプリケーション自動生成システムは、開発用端末１０１、サーバ１０２（サーバ装置）、利用者用端末１０３が、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク１０５を介して相互にデータ通信可能に接続されている。
【００１４】
Ｗｅｂアプリケーションとは、企業内で用いられる業務用アプリケーションをＷｅｂ上で実施することができるアプリケーションのことであり、クライアント端末上に特別なアプリケーションをインストールすることなく業務を行うことができるため、近年広く用いられている。本発明のＷｅｂアプリケーションシステムは、このようなＷｅｂアプリケーションを指定した要件定義情報からプログラミングレスで自動生成することができるシステムである。このようなシステムを用いることにより、開発スキルが不足していたしても各企業内で容易にＷｅｂ上の業務アプリケーションを開発することができる。
【００１５】
図１に示す開発用端末１０１には、Ｗｅｂアプリケーション（プログラム）を自動生成する際に開発者が使用する端末でありプログラムを自動生成する開発ツールがインストールされている。この端末で予め要件定義を行い、開発ツールに読み込ませて自動生成処理を行うことでＷｅｂアプリケーション１３０（プログラム）が生成される。
【００１６】
サーバ１０２は、開発用端末１０１で生成されたＷｅｂアプリケーション（プログラム）を保持運用し、業務アプリケーションを本番環境として提供するために用いられる。そして、利用者用端末１０３を介してＷｅｂアプリケーション１３０（プログラム）へのアクセスを受け付ける。そして、Ｗｅｂアプリケーションを用いて生成されたデータをデータベース１４０内に記憶している。
【００１７】
利用者用端末１０３は、一般に本番環境において業務アプリケーションを利用するユーザが利用する端末であり、本端末を用いてサーバ１０２に接続することで、Ｗｅｂ化されたアプリケーションを利用することができる。
【００１８】
図２は、開発用端末１０１、サーバ１０２、利用者用端末１０３のハードウェア構成を示す図である。
【００１９】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２０】
また、ＲＯＭ２０２あるいは外部メモリ２１１（記憶手段）には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、開発用端末１０１、サーバ１０２、利用者用端末１０３の実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２１】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２２】
また、入力コントローラ（入力Ｃ）２０５は、キーボードや不図示のマウス等のポインティングデバイス等の入力デバイス２０９からの入力を制御する。
【００２３】
ビデオコントローラ（ＶＣ）２０６は、ディスプレイ２１０等の表示器への表示を制御する。表示器の種類はＣＲＴや、液晶ディスプレイを想定するが、これに限らない。
【００２４】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２５】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２６】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２７】
本発明の開発用端末１０１、サーバ１０２、利用者用端末１０３が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行可能となるものである。
【００２８】
さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００２９】
図３は、Ｗｅｂアプリケーション自動生成システムの構成図および生成されたアプリケーション等の機能構成を説明するための図である。
【００３０】
開発用端末１０１は、リポジトリ定義部（Ｗｅｂアプリケーション定義部）１０００と、ソースコード保持部１２１と生成処理部１２２を含むＷｅｂアプリケーション生成部１２０と、画面遷移生成部１１００とを有している。
【００３１】
リポジトリ定義部１０００は、データベース定義１１１、データモデル定義１１２、ビジネスプロセス定義１１３、入出力定義１１４と、Ｗｅｂアプリケーションを生成する際にこれらの定義ファイルのうちいずれの定義ファイルを用いるかを設定するアプリケーション定義１１０と、画面遷移図を描画する際に用いる画面遷移図フィルタ情報１００６とを有している。
【００３２】
画面遷移生成部１１００は、リポジトリ定義部１０００のデータから画面データ１１０２を抽出する画面データ抽出部１１０１と、リポジトリ定義部１０００のデータから遷移データ１１０４を抽出する遷移データ抽出部１１０３とを有している。さらに、画面遷移生成部１１００は、画面データ１１０２と遷移データ１１０４とが含まれる遷移情報を部品データ１１０９に変換するデータ-部品変換部１１０８を有しており、ここで変換された部品データを用いて画面遷移描画部１１１０が遷移画面を生成して画面遷移キャンバスに描画（表示）させる。また、画面遷移生成部１１００は、ユーザが画面遷移キャンバスに任意に外部画面を追加するための外部画面データ１１０６（アイコン）や付箋的にユーザが画面遷移キャンバスに添付する付箋データ１１０７を記憶する部品パレット部１１０５を有しており、ユーザが画面遷移図パレット１２０２に表示された外部画面アイコンや付箋アイコンのドラッグ＆ドロップ等の指定を受け付けると、画面遷移描画部１１１０は、外部画面データ１１０６や付箋データ１１０７も画面描画キャンバスに描画する。なお、ここでいう画面遷移キャンバスとは、ディスプレイ２１０等に表示される遷移画面図を描画する図１２の描画エリア１２０１を指す。
【００３３】
サーバ１０２は、開発用端末１０１の生成処理部１２２で生成されたＷｅｂアプリケーション１３０を保持し、利用者用端末１０３からの要求に応じた処理を行ったり、利用者用端末１０３から入力された入力データ等をデータベース１４０に記憶させたりする。
【００３４】
（Ｗｅｂアプリケーションの自動生成処理）
【００３５】
次に、図３乃至図１０を用いて、開発者がＷｅｂアプリケーションを開発用端末１０１で自動生成する際の流れを説明する。図４乃至８は、図３のリポジトリ定義部１０００に記憶されるデータベース定義１１１、データモデル定義１１２、ビジネスプロセス定義１１３、入出力定義１１４、アプリケーション定義１１０等の開発者によって予め設定した定義の一例を示したものである。
【００３６】
図４はＷｅｂアプリケーションがアクセスするサーバの設定を記憶したデータベース定義１１１である。図４に示すように、データベース定義には、サーバ１０２のコード４０１、サーバの名前４０２、接続ＵＲＬ情報４０３、サーバの種類４０４、データベース名４０５、アプリケーションがデータベースにアクセスする際に必要となるユーザ名４０６及びパスワード４０７が定義されている。
【００３７】
図５は、スキーマ情報として定義されるデータモデル定義１１２である。図５（ａ）に示すように各データモデル定義は、コード５０１と名前５０２を付与して管理されており、詳細定義もそれぞれ定義されている。例えばコード『ＰＲＯＤＵＣＴ』では、図５（ｂ）に示す項目５１０と図５（ｃ）に示す操作コード５２０が詳細定義されている。
【００３８】
図５（ｂ）は、データベース上で受け付ける項目として、項目コード５１１、項目の名前５１２、ＮＵＬＬを許可するか否かを設定する項目５１３、桁数５１４、データタイプ５１５を定義している。
【００３９】
項目コード５１１はデータモデル内のデータモデル項目を一意に特定するコードである。名前５１２はデータモデル項目に対して、ユーザが任意に設定する名前である。ユーザがデータモデル項目を特定しやすくするために設定するものである。項目５１３はデータモデル項目に登録するデータに対して空を許容するかどうかを設定する項目である。桁数５１４はデータモデル項目に登録できるデータの桁数を設定する。データタイプ５１５はデータモデル項目のデータ型を設定する項目である。文字、数値、日付等、データの型を指定する。この例では、データモデル「ＰＲＯＤＵＣＴ」に対して、「ＰＲＯＤＵＣＴ＿ＩＤ」から「ＰＲＯＤＵＣＴ＿ＳＴＯＣＫ」までのデータモデル項目を定義している。ここで定義する各項目はＷｅｂアプリケーションが接続するデータベースのテーブルのカラム名と一致する。
【００４０】
図５（ｃ）は、データモデルに対する操作をどのように受け付けるかを設定した操作コードであり、操作コード５２１、当該操作の名前５２２、操作タイプ５２３が定義されている。すなわち、データモデルが関連するテーブルに対して操作内容を定義するものである。ここでは、操作コード『ＲＥＧＩＳＴ』というコードを有する商品データ登録操作は、操作タイプ『ＩＮＳＥＲＴ』であると定義されており、つまりユーザ登録操作で入力されたデータがデータベースに挿入されるというように定義されている。
【００４１】
図６は、Ｗｅｂアプリケーションの業務フローを定義するためのビジネスプロセス定義１１３である。図６（ａ）に示すように、各ビジネスプロセス定義は、コード６０１と名前６０２を付与して管理されており、詳細なロジック定義もそれぞれ定義されている。なお、ビジネスプロセスのコード６０１は、後述する入出力定義からの呼び出し指定するコードとして用いられる。詳細なロジック定義としては、図６（ｂ）に示すように、制御コード６１１、データモデルコード６１２、機能コード６１３、パラメータ６１４、作業コード６１５が設定されている。
【００４２】
制御コード６１１はビジネスロジックの操作タイプを示す。この例の「ＩＮ」はビジネスプロセスへの入力データの変数格納を示す。変数は作業コード６１５が該当する。この例の「ＣＡＬＬ」はデータモデルコード６１２が保有する機能コード６１３の内容を呼び出すことを示す。呼び出しの際にはパラメータ６１４の内容を引数として渡す。
【００４３】
例えば図６（ａ）のコード『ＲＥＧＩＳＴ＿ＢＰ』のビジネスプロセス定義では、制御コード６１１の設定順に以下のような処理が行われる。この例ではＷｅｂ画面の入力内容を制御コード「ＩＮ」で受け取り、受け取ったデータを作業コード「ＩＮＰＵＴ」として定義している。次に制御コード「ＣＡＬＬ」でデータモデル「ＰＲＯＤＵＣＴ」に対する操作を定義している。つまり、まず（１）『ＩＮ』制御として、図５のＰＲＯＤＵＣＴ（ＤＭ商品）というデータモデルコード５０１から、入力データを取得する。その際に、当該作業コードに『ＩＮＰＵＴ』というコードを付与する。次に、（２）『ＣＡＬＬ』制御として、図５（ｃ）のデータモデル定義の操作コードとして設定されており『ＩＮＳＥＲＴ』処理を、『ＩＮ』制御で読み込んだ入力データ（作業コード『ＩＮＰＵＴ』）に対して行うビジネスロジックが定義している。
【００４４】
図７は、Ｗｅｂ画面に配置する各表示項目の入出力定義１１４である。ここで設定されている項目が、利用者用端末１０３の表示画面に表示され、本番環境時にユーザが用いる画面として用いられる。図７（ａ）に示すように、各入出力定義は、コード７０１と名前７０２と入出力タイプ７０３等を付与して管理されており、詳細な項目定義もそれぞれされている。例えば図７（ａ）のコード『ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ』では、図７（ｂ）に示す項目タイプ７１１、項目コード７１２、名前７１３、表示７１４、加工式７１５、遷移先となる次入出力７１６（画面情報）、データモデルコード７１８、データモデル項目コード７１９が定義されている。なお、本実施形態では入出力タイプ７０３として通常の入出力画面を示す「ＩＯ」とメニュー画面であることを示す「ＭＥＮＵ」の例を示しているが、それ以外にユーザの指示を受けつけるダイアログ画面であることを示す「ＤＩＡＬＯＧ」、エクスポート画面であることを示す「ＥＸＰＯＲＴ」、インポート画面であることを示す「ＩＭＰＯＲＴ」、マトリクス画面であることを示す「ＭＡＴＲＩＸ」、帳票印刷画面であることを示す「ＰＲＩＮＴ＿ＦＩＬＥ」、携帯端末画面であることを示す「ＭＯＢＩＬＥ」等様々な入出力タイプを定義することもできる。
【００４５】
項目コード７１２は入出力定義内の項目を一意に特定するコード（画面情報）である。名前７１３は入出力項目に対してユーザが任意に命名する名前である。入出力項目を特定しやすくする目的で設定する。表示７１４は定義した入出力項目を画面上に表示するかどうかの設定である。非表示とした場合は画面上には表示されず、隠しデータとして情報を保持する。次入出力７１６は項目タイプがアクションに設定された入出力項目について、ボタン押下された後に遷移する入出力コードを設定する。すなわち、ある画面から別の画面への遷移を定義する。次入出力パラメータ７１７は項目タイプがアクションに設定された入出力項目について、ボタン押下された後に画面遷移と同時に渡すパラメータ情報である。データモデルコード７１８は該入出力項目と関連するデータモデルコードを設定する。同様にデータモデル項目コード７１９は該入出力項目と関連するデータモデル項目コードを設定する。
【００４６】
この例では、項目タイプ「ＩＯ  入出力」と定義されている項目は入出力項目（データを入力およびデータを表示する「フィールド」）である。項目タイプ「Ａ  アクション」と定義されている項目はアクション項目（処理を呼び出し、画面を遷移する「ボタン」）である。この例における、項目コード「ＲＥＧＩＳＴ＿ＡＣＴ」はアクション項目である。アクション項目「ＲＥＧＩＳＴ＿ＡＣＴ」の加工式７１５には、「ＲＥＧＩＳＴ＿ＢＰ」が定義されている。「ＲＥＧＩＳＴ＿ＢＰ」のアクションでは、ビジネスプロセス「ＲＥＧＩＳＴ＿ＢＰ」が呼び出されることを示す定義である。そして、次入出力先として、「ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ」のコードが定義されている。すなわち、アプリケーション上の商品登録画面でユーザによる「登録」アクションが行われると、「ＲＥＧＩＳＴ＿ＢＰ」の加工式で定義されたアクションが実行された後、次入出力７１６として定義された「ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ」に画面遷移することが定義されている。すなわち、「ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ」が遷移先の表示画面情報となる。
【００４７】
さらに図７（ａ）のコード『ＭＡＩＮ＿ＭＡＮＵ』では、図７（ｃ）に示すように、項目コード７１２「ＴＯ＿ＰＲＯＤＵＣＴ＿ＩＤ」の次入出力７１６には「ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ」が対応するように定義されており、項目コード７１２「ＴＯ＿ＰＲＯＤＵＣＴ＿ＮＡＭＥ」の次入出力７１６には「ＰＲＯＣＵＣＴ＿ＬＩＳＴ＿ＩＯ」が対応するように定義されている。すなわち、アプリケーション上のメインメニュー画面でユーザによる「商品登録ページへ」アクションが行われると、「ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ」に画面遷移し、メインメニュー画面でユーザによる「商品一覧ページへ」アクションが行われると、「ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ」に画面遷移することが定義されている。
【００４８】
図８（ａ）は、Ｗｅｂアプリケーションを生成する際に使用する入出力定義を規定するアプリケーション定義１１０を示す図である。各アプリケーション定義１１０、コード８０１とアプリケーション名８０２とが設定されており、さらに初期画面として用いられる入出力定義を初期入出力コード８０３として定義することができる。すなわち、初期入出力コード８０３として特定された入出力定義が遷移画面図のトップ階層として特定される画面となる。コード８０１は、リポジトリ定義部１０００に保存される定義ファイル全体（プロジェクトとも称する）の中でアプリケーションを一意に特定することができるコードである。アプリケーション名８０２は、アプリケーションに対して、ユーザが任意に設定することができる名前である。
【００４９】
さらに、アプリケーション定義１１０は、コードごとに図８（ｂ）の所属定義設定画面８１０に示すように所属する入出力定義が設定されている。所属定義設定画面８１０には、入出力一覧８１１と所属入出力一覧８１２と、画面遷移図を表示させるボタン８１３と、追加ボタン８１４、削除ボタン８１５が表示される。
【００５０】
入出力一覧８１１にはプロジェクトに保存される入出力定義１００４の入出力コード全てが表示される。ユーザは任意の入出力コードを所望の数だけ選択し、追加ボタン８１４を押下することにより、当該アプリケーションコードに所属入出力として所属させることができる。追加処理が行われると、当該入出力コードは所属入出力一覧８１２に表示される。また、ユーザは所属入出力一覧８１２に表示されている入出力コードを選択し削除ボタン８１５を押下することにより、所属を外すこともできる。
【００５１】
図９は、図４乃至８に示すようなリポジトリ定義部１０００に記憶されているデータベース定義１１１、データモデル定義１１２、ビジネスプロセス定義１１３、入出力定義１１４、アプリケーション定義１１０等の要件定義がされた後、Ｗｅｂアプリケーションを自動生成する際の流れを説明するためのフローチャートである。このような処理は、開発用端末１０１のＣＰＵ２０１が記憶されている制御プログラムを読み出して実行することにより実現される。
【００５２】
まず、Ｓ９０１では、開発用端末１０１のＣＰＵ２０１が、ユーザからＷｅｂアプリケーションを生成するアプリケーション定義１１０の指定を受け付ける（受付手段）。
【００５３】
次に、Ｓ９０２では、開発用端末１０１のＣＰＵ２０１が、データベース定義１１１をリポジトリ定義部１０００から読み込む。Ｓ９０３では、データモデル定義１１２をリポジトリ定義部１０００から読み込む。Ｓ９０４では、ビジネスプロセス定義１１３をリポジトリ定義部１０００から読み込む。Ｓ９０５では、入出力定義１１４をリポジトリ定義部１０００から読み込む。
【００５４】
このような定義はＸＭＬ形式で記述されているため、Ｓ９０６では、開発用端末１０１のＣＰＵ２０１が、ＸＭＬファイルを構造解析し、必要な定義内容をメモリ上にオブジェクトデータとして保存する。
【００５５】
次に、Ｓ９０７では、生成処理は開発用端末１０１のＣＰＵ２０１が生成処理部１２２として機能し、予め設定されているソースコードテンプレートを、ソースコード保持部１２１から読み込み、Ｓ９０８でメモリ上に保存した定義データをソースコードテンプレートに埋め込んだ、ソースコードファイル、すなわちＷｅｂアプリケーションを生成する。
【００５６】
以上のように、予め定義した要件定義とソースコードを用いることにより、Ｗｅｂアプリケーションが自動生成される。開発者は、このように生成したＷｅｂアプリケーションを、サーバ１０２に保存して業務アプリケーションの開発作業を終了する。
【００５７】
（画面遷移図の描画処理）
【００５８】
＜第一の実施形態＞
【００５９】
次に、図３、図１０乃至図１９を用いて、Ｗｅｂアプリケーションの開発者等が予め定義している要件定義による画面遷移状態を確認するために行う画面遷移図の描画処理の流れを説明する。
【００６０】
上述したようなＷｅｂアプリケーションなどで生成される業務アプリケーションでは、複数の画面を用意し、画面から別の画面に遷移するように設計されるが、このようなアプリケーション設計途中やアプリケーション改修時には、全体の業務の流れを把握するために、画面の遷移を把握できるような画面遷移図の作成が求められることが多いが、このような画面遷移図を手作業で作成することは極めて煩雑であるため簡便に画面遷移図が作成できる仕組みが求められている。
【００６１】
本実施形態では、Ｗｅｂアプリケーションを自動生成する際に用いられる入出力定義を用いることで、自動で画面遷移図を作成する方法を説明する。
【００６２】
図１０は、Ｗｅｂアプリケーション自動生成する際に用いられる開発用端末１０１で行われる画面遷移図の生成処理を説明するためのフローチャートである。このような画面遷移図の生成処理が行われるとリポジトリ定義部１０００に現在定義されている入出力定義を用いて画面遷移図の描画処理が行われる。
【００６３】
このような処理は、開発用端末１０１のＣＰＵ２０１が記憶されている制御プログラムを読み出して実行することにより実現される。
【００６４】
まず、Ｓ１００１では、開発用端末１０１のＣＰＵ２０１が、ユーザによってアプリケーションを指定した状態で図８（ｂ）に示すような画面遷移図を表示させるボタン８１３を押下されると、描画指示がされたとして受け付ける。
【００６５】
Ｓ１００２では、開発用端末１０１のＣＰＵ２０１が、リポジトリ定義部１０００に定義されている全入出力定義を読み込み、以下のＳ１００３からＳ１００６について全入出力定義分ループさせる。
【００６６】
Ｓ１００３では、開発用端末１０１のＣＰＵ２０１が、入出力定義は、Ｓ１００１でユーザによって指定されたアプリケーションに所属するかどうかを判断する。具体的には、図８に示すようなアプリケーションに対応する所属入出力一覧８１２を参照することで所属するかどうかの判断を行う。Ｓ１００３で所属しないアプリケーションであると判断された場合には、以降の処理は行わず次の入出力定義のループに移行する。Ｓ１００３で所属すると判断された場合には、Ｓ１００４に移行し、開発用端末１０１のＣＰＵ２０１が画面データ抽出部１１０１として機能し、入出力定義から各項目のコード７０１と名前７０２を画面データ１１０２として抽出し、メモリへ保存する。なお、ここで抽出する画面データはコード７０１と名前７０２に限られず、画面がユーザに識別できるような画面遷移図に表示したい情報であればそれ以外のものもあって良い。
【００６７】
次に、Ｓ１００５では、入出力定義に所属する全アクション定義を抽出し、以下のＳ１００６の処理を全アクション分ループさせる。具体的には、図７（ｂ）に示すような項目タイプ７１１に『Ａ  アクション』と設定されているものを指す。例えば入出力定義『ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ』の場合には、項目コード『ＲＥＧＩＳＴ＿ＡＣＴ』と『Ｂ』がアクション定義として抽出される。
【００６８】
Ｓ１００６では、開発用端末１０１のＣＰＵ２０１が遷移データ抽出部１１０３として機能し、アクション定義のうち、アクションの入出力項目の項目コード７１２、名前７１３、次入出力７１６および次入出力パラメータ７１７の情報を遷移に関する遷移データ１１０４として抽出し、メモリへ格納する。遷移データとしてはこれらのデータに限らず、遷移するための条件（不図示）ならびに遷移できる権限（不図示）も含めてもよい。遷移データの設定は例えば、図１１に示すような画面遷移図の表示設定画面１１５０を用いて行うことができる。
【００６９】
全ての入出力定義分のループが終了するとＳ１００７に移行し、開発用端末１０１のＣＰＵ２０１がデータ‐部品変換部１１０８として機能し、メモリからＳ１００４で保存された画面データ１１０２とＳ１００６で保存された遷移データ１１０４（遷移情報）とを読出し、データを部品に変換する。具体的には図１２を用いて説明するようなオブジェクトに変換する。
【００７０】
次に、Ｓ１００８では、開発用端末１０１のＣＰＵ２０１が、描画元画面（遷移元画面）と遷移先画面とが同じ遷移データがあるかを判断する。ここで同じ遷移データが無いと判断された場合には、Ｓ１０１１に進み、ディスプレイ２１０等に表示される描画エリア１２０１に画面遷移図の描画処理を行う。
【００７１】
図１２にこのような処理により描画される画面遷移図の一例を示す。ここで示す一例は、図７に示すような例を用いて描画処理を行った場合を用いた場合の画面遷移図である。描画エリア１２０１には、画面データとして抽出されたコード７０１の『ＭＡＩＮＭＥＮＵ＿ＩＯ』と名前７０２の『メインメニュー』とが描画された画面のオブジェクト１２０３と、画面データとして抽出されたコード７０１の『ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ』と名前７０２の『商品登録』とが描画された画面のオブジェクト１２０５と、画面データとして抽出されたコード７０１の『ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ』と名前７０２の『商品一覧』とが描画された画面のオブジェクト１２０７とが描画される。そして、遷移データとして抽出された遷移情報が矢印として示される。具体的には、図７（ｃ）に示すように『ＭＡＩＮ  ＭＡＮＵ』の入出力定義で『Ａ  アクション』である「商品登録ページへ」という名前７１３のアクションが行われると『ＰＲＯＣＵＴ  ＲＥＧＩＳＴ＿ＩＯ』に画面遷移し、『Ａ  アクション』である「商品一覧ページへ」という名前７１３のアクションが行われると『ＰＲＯＣＵＴ＿ＬＩＳＴ＿ＩＯ』に画面遷移するということが定義されていることから、オブジェクト１２０３からオブジェクト１２０５とオブジェクト１２０７に対して矢印が伸びるように表示される。また、矢印の付近には名前７１３がオブジェクト１２０４とオブジェクト１２０８として表示される。すなわちアクションの名前７１３がオブジェクトとして表示される（表示項目）。
【００７２】
なお、本実施形態ではオブジェクトを矢印でつないだ例を用いて説明するが、矢印に限られず直線、曲線、点線などでつながりがわかるように示してもよい。さらに、本実施形態では、画面のオブジェクトとして全て同じ矩形の枠で示したが、図７（ａ）に示す入出力タイプ７０３の種類ごとにオブジェクトの表示方法を異ならせることもできる。具体的には、矩形や楕円形のように形状を異ならせたり、色分けを行うことにより表示方法を異ならせることができる。このように入出力タイプに応じて表示方法を分けることにより、画面遷移図上の画面タイプが識別しやすくなる。
【００７３】
また、図７（ｂ）に示すように『ＰＲＯＤＵＣＴ＿ＲＥＧＩＳＴ＿ＩＯ』の入出力定義で『Ａ  アクション』である「登録」という名前７１３のアクションが行われると『ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ』に画面遷移することが定義されていることから、オブジェクト１２０５からオブジェクト１２０７に向けて伸びる矢印が表示されるとともに、登録のオブジェクト１２０６が表示される。なお、『ＰＲＯＤＵＣＴ＿ＬＩＳＴ＿ＩＯ』の入出力定義では、『ＢＡＣＫ』が定義されているが、これは次入出力が規定されてはいないものの前の画面に戻ることを規定する定義である。このような画面が戻る定義がされている場合には、当該対応オブジェクト１２０５に接続する全ての画面データオブジェクトに対して矢印が出るように描画する。但し、当該画面に対して他の画面からも遷移先の指定を受けている場合には、複数の矢印が描画されると視認性が低下するため、共通の線とし、遷移先の指定を受けた場合の矢印とは異なる形状の矢印で描画するようなオブジェクト１２０４とする。
【００７４】
以上のように複数の画面を用いたアプリケーションを生成する際に用いる入出力定義から遷移画面を生成するために必要な情報を取得し、遷移元画面を示すオブジェクトと遷移先画面を示すオブジェクトとの繋がりがわかる一覧画面である遷移画面を生成することにより、画面遷移の状態を視覚的に容易にユーザが認識できるようになる。
【００７５】
ところで、描画エリア１２０１の付近には、画面遷移図パレット１２０２が設けられており、図１３に示すようにアプリケーションに関係のない外部システム画面のオブジェクト１２１２やそこに遷移する流れを示すようなオブジェクト１２１３、アノテーションとして用いるような付箋のオブジェクト１２２２を作成することもできる。
【００７６】
図１４を用いて、外部システム画面のオブジェクトを生成する際の流れを説明する。ユーザが画面遷移図パレット１２０２から外部システム画面１２１１の項目を描画エリア１２０１に対してドラッグ＆ドロップすると、図１４に示すような外部システム画面の新規作成画面１２３１が表示される。ユーザがオブジェクトとして表示させたい入力コード１２３２と名前１２３３を入力してＯＫボタン１２３４を押下すると、このような名前が反映された図１３に示すオブジェクト１２１２が生成される。さらに、ユーザが画面遷移図パレット１２０２から直線１２５１の項目を指定した後に、オブジェクト１２０３とオブジェクト１２１２とを順に指定して矢印で結び、名前を入力すると、矢印のそばに名前の図１３に示すようなオブジェクト１２１３が表示される。また、ユーザが画面遷移図パレット１２０２から付箋１２１２の項目を描画エリア１２０１に対してドラッグ＆ドロップすると、付箋のオブジェクト１２２２が描画エリア１２０１に表示される。ユーザは付箋のオブジェクト１２２２に対しては自由に文字入力を行うことができる。
【００７７】
また、描画エリア１２０１に生成できるアクションのオブジェクトは、直線に限られず直角や重なり回避のオブジェクトを選択することもできる。
【００７８】
次に、図１５乃至図１８を用いて、図７に示すような入出力定義で定義されていない項目を描画エリア１２０１上（一覧画面上）に追加することで、入出力定義に新たな項目を作成する流れを説明する。ユーザが画面遷移図パレット１２０２から入出力領域１２４０の入出力項目１２４１やメニュー項目１２４５を描画エリア１２０１に対してドラッグ＆ドロップすると図１５に示すような入出力定義のオブジェクト１２４２と入出力定義の新規作成画面１２４３が表示される。
【００７９】
ユーザがオブジェクトとして表示させたい入出力コード１２４２と名前１２４３を入力してＯＫボタン１２４４を押下すると、このような名前がオブジェクト１２４２に反映される。さらに、ユーザが画面遷移図パレット１２０２から直線１２５１の項目を指定した後に、オブジェクト１２０３とオブジェクト１２４２とを順につなぐと、図１６に示すようなアクション定義の新規作成画面１２５１が表示される。ユーザがオブジェクトとして設定したいアクションコード１２５２と名前１２５３を入力しＯＫボタン１２５４を押下すると、図１７に示すようなオブジェクト１２０３からオブジェクト１２４２に向かう矢印と、名前１２５３として入力した「顧客登録ページへ」というオブジェクト１２５５が表示される。
【００８０】
このような図１５乃至図１７を用いて説明した一連の流れが行われると、リポジトリ定義部１０００に記憶されている入出力定義１１４に定義の追加が行われる。例えば、ユーザが入出力項目１２４１をドラッグ＆ドロップし、「ＣＵＳＴＯＭＥＲ＿ＲＥＧ＿ＩＯ」という入出力コード１２４２と「顧客登録」という名前１２４３をつけた場合には、「ＣＵＳＴＯＭＥＲ＿ＲＥＧ」の画面が新たに１つ生成されたことになるため、図７（ａ）に示す入出力定義に１つ追加され、図１８（ａ）に示すような入出力定義となる。なお、この例では入出力項目１２４１をドラッグ＆ドロップしたため入出力タイプ７０３が「ＩＯ」となるが、メニュー項目１２４５をドラッグ＆ドロップした場合には、入出力タイプ７０３は「ＭＥＮＵ」となる。
【００８１】
さらに、直線１２５１の項目を選択した状態で「ＭＡＩＮ＿ＭＡＮＵ」と「ＣＵＳＴＯＭＥＲ＿ＲＥＧ＿ＩＯ」と直線でつないだ場合には、「ＭＡＩＮ＿ＭＡＮＵ」画面からの遷移が行われることになるため、図７（ｃ）に示す「ＭＡＩＮ＿ＭＡＮＵ」の入出力定義の項目が１つ追加される。具体的には、入出力コード１２４２と名前１２４３として入力した項目（図１５）とアクションコード１２５２と名前１２５３として入力した項目（図１６）が、図１８（ｂ）に示す入出力定義の『ＴＯ＿ＣＵＳＴＯＭＥＲ＿ＲＥＧ』の項目コード７１２、名前７１３、次入出力７１６として追加される。
【００８２】
さらに、図８（ｂ）の所属定義設定画面８１０に設定される所属入出力一覧８１２にも一項目追加され、図１８（ｃ）に示すように、『ＣＵＳＴＯＭＥＲ＿ＲＥＧ＿ＩＯ顧客登録』という項目８２０が追加される。
【００８３】
このように、描画開発者は開発中に画面遷移図で画面遷移の状態を確認しながら、新たな画面を容易に追加させていくことができる。
【００８４】
図１０に戻りフローチャートの説明を続ける。Ｓ１００８で描画元画面と遷移先画面とが同じ遷移データがあると判断された場合には（遷移元の画面と遷移先の画面とが同じ遷移データを複数取得された場合には）、Ｓ１００９に対し開発用端末１０１のＣＰＵ２０１が、同じ遷移データをグループ化し、Ｓ１０１０の処理をグループ分ループする。
【００８５】
Ｓ１０１０では、開発用端末１０１のＣＰＵ２０１が、遷移矢印が重ならないように、矢印を描画する位置を設定する。具体的には、等間隔で離れるような位置を設定する。このように設定しておくことで、描画元画面と遷移先画面とが同じ遷移データがあったとしても、Ｓ１０１１で画面遷移図の描画処理をする際に、図１９に示すように矢印が重なることなく描画させることができる。図１９は、商品登録のオブジェクト１２０５と商品一覧のオブジェクト１２０７とが遷移先画面（次入出力７１６）と指定されているアクションが「更新１９０１」「登録１９０２」「削除１９０３」の３つある場合を示している図である。矢印は互いに間隔をあけて配置されることで視認性が低下しないように配置される。
【００８６】
＜第二の実施形態＞
【００８７】
第一の実施形態ではＷｅｂアプリケーションに用いられる全ての入出力定義を用いて画面遷移図を作成する例を用いて説明したが、第二の実施形態ではＷｅｂアプリケーションに用いられる入出力定義の一部を用いて画面遷移図を作成する例を説明する。なお、本実施形態では、第一の実施形態と同様の部分の説明は省略し、第二の実施形態の特徴部を中心に説明を行う。
【００８８】
図２０（ａ）は、所属入出力一覧８１２に９つの入出力定義が登録されている例を示したものであるが、このように多数の画面を用いたＷｅｂアプリケーションを、第一の実施形態と同様に全ての入出力定義を用いた画面遷移図を作成してしまうと、図２０（ｂ）の描画エリア１２０１のように、多数のオブジェクトが配置されてしまい、かえって視認性が低下してしまうことが懸念される。
【００８９】
そのため、本実施形態においては、初期入出力コードで設定された初期画面から予め設定した階層分描画する階層描画モードや、遷移数が所定数以上の画面を中心として描画させる遷移数描画モードを備えている。このようにユーザが所望の描画モードを用いて描画できるようにすることで用途に応じた画面遷移図の視認性を低下させることなく生成することができる。
【００９０】
このような階層描画モードや遷移数描画モードは、図２１に示す所属定義設定画面８１０に設けられた階層描画ボタン８２１と遷移数描画ボタン８２２を用いて描画指示することができる。
【００９１】
まず、図２０乃至図２４を用いて階層描画モードについて説明を行う。
【００９２】
図２０（ｂ）に示す例では、メインメニュー画面のオブジェクト２００１から商品カテゴリ編集画面のオブジェクト２００６までの９つの画面が表示されているが、「メインメニュー」→「商品登録」→「商品カテゴリ一覧」→「商品カテゴリ編集」までの４段階の遷移がある。メインメニューは階層レベル１、商品カテゴリ編集は階層レベル４と呼ぶ。ユーザは画面遷移図の可視性を高めるため、ユーザが表示させたい階層となるように階層レベルを絞って表示することができる。
【００９３】
図２２は、図２１のフィルタプロパティ８２３を押下することで表示されるフィルタプロパティ設定画面２２０１である。ユーザは、階層レベルフィルタ値２２０２を入力し設定ボタン２２０４を押下することで、ユーザが表示させたい階層を画面遷移図フィルタ情報１００６として設定する（メモリに記憶させておく）ことができる。具体的には階層レベルを『３』と設定することにより、３以下の階層レベルの入出力画面のオブジェクトが描画されることになる。
【００９４】
図２１の所属入出力設定画面８１０の所属入出力一覧８１２の入力コードの横に表示される数字８２４がメインメニュー画面（初期入出力コードで設定された初期画面）からの階層数を示したものである。このような階層は、メモリに記憶された入出力定義から算出される。３以下の階層レベルの入出力画面のオブジェクトが描画されるように設定されている場合には、数字８２４が３以下のコードが描画されることになる。
【００９５】
図２３は、階層描画を行う際の流れを説明するためのフローチャートである。このような処理は、開発用端末１０１のＣＰＵ２０１が記憶されている制御プログラムを読み出して実行することにより実現される。
【００９６】
まず、Ｓ２３０１では、開発用端末１０１のＣＰＵ２０１が、ユーザによってアプリケーションを指定した状態で図２１に示すような階層描画ボタン８２１を押下されると、階層を指定された描画指示がされたとして受け付ける。
【００９７】
Ｓ２３０２では、開発用端末１０１のＣＰＵ２０１が、リポジトリ定義部１０００に定義されている全入出力定義を読み込み、以下のＳ２３０３からＳ２３０６について全入出力定義分ループさせる。
【００９８】
Ｓ２３０３では、開発用端末１０１のＣＰＵ２０１が、入出力定義は、Ｓ２３０１でユーザによって指定されたアプリケーションに所属するかどうかを判断する。具体的には、図２１に示すようなアプリケーションに対応する所属入出力一覧８１２を参照することで所属するかどうかの判断を行う。Ｓ２３０３で所属しないアプリケーションであると判断された場合には、以降の処理は行わず次の入出力定義のループに移行する。Ｓ２３０３で所属すると判断された場合には、Ｓ２３０４に移行し、開発用端末１０１のＣＰＵ２０１が画面データ抽出部１１０１として機能し、入出力定義から各項目のコード７０１と名前７０２を画面データ１１０２として抽出し、メモリへ保存する。
【００９９】
次に、Ｓ２３０５では、入出力定義に所属する全アクション定義を抽出し、以下のＳ２３０６の処理を全アクション分ループさせる。
【０１００】
Ｓ２３０６では、開発用端末１０１のＣＰＵ２０１が遷移データ抽出部１１０３として機能し、アクション定義のうち、アクションの入出力項目の項目コード７１２、名前７１３、次入出力７１６および次入出力パラメータ７１７の情報を遷移に関する遷移データ１１０４として抽出し、メモリへ格納する。
【０１０１】
全ての入出力定義分のループが終了するとＳ２３０７に移行し、開発用端末１０１のＣＰＵ２０１がデータ‐部品変換部１１０８として機能し、メモリからＳ２３０４で保存された画面データ１１０２（表示項目）とＳ２３０６で保存された遷移データ１１０４（遷移情報）とを読出す。
【０１０２】
Ｓ２３０８では、開発用端末１０１のＣＰＵ２０１は、メモリから読み出された画面データと関連する遷移データとから各画面に対する階層レベルを計算する（階層特定手段）。
【０１０３】
Ｓ２３０９では、開発用端末１０１のＣＰＵ２０１は、図２２のフィルタプロパティ設定画面２２０１等によってユーザによって設定された階層数フィルタ値をメモリ（階層数記憶手段）から取得する。
【０１０４】
Ｓ２３１０では、開発用端末１０１のＣＰＵ２０１は、Ｓ２３０７で読みだされた画面データと遷移データとからＳ２３０９で取得した階層数フィルタ値（階層レベル）に対応する画面データと遷移データを抽出する（階層決定手段）。
【０１０５】
Ｓ２３１１では、開発用端末１０１のＣＰＵ２０１は、データを部品（オブジェクト）に変換する。
【０１０６】
Ｓ２３１２乃至Ｓ２３１５の説明は、第一の実施形態のＳ１００８乃至Ｓ１０１１と同様であるため説明を省略する。
【０１０７】
このようにして描画された画面遷移図を図２４に示す。階層レベルが４以上の入出力定義の画面オブジェクトは描画されず、描画レベル３までの入出力定義である画面オブジェクトが描画されている。初期入出力コードで設定された初期画面に近い画面を中心に見たい場合には、このように描画設定することで、視認性良く画面遷移状態を確認することができる。なお、本実施形態においては初期入出力コードで設定された初期画面を主画面、すなわち階層レベル１としたが、図２２に示すようなフィルタプロパティ設定画面２２０１において主画面を適宜設定できるようにし、設定された階層レベル画面を中心に階層描画を行えるようにしてもよい。
【０１０８】
次に、図２０、図２１、図２５、図２６を用いて遷移数描画モードについて説明を行う。
【０１０９】
図２０（ｂ）に示す例では、メインメニュー画面のオブジェクト２００１から商品カテゴリ編集画面のオブジェクト２００６までの９つの画面が表示されているが、画面毎に遷移矢印の数が異なっていることがわかる。例えば、商品登録画面２００３はメインメニュー画面のオブジェクト２００１からの遷移矢印、商品一覧画面のオブジェクト２００４への遷移矢印、商品カテゴリ一覧画面のオブジェクト２００５への遷移矢印の３本が関連している。一方、商品カテゴリ一覧画面２００５の遷移矢印は５本である。このように画面に関連する（画面に接続する）遷移矢印の数を遷移数と呼ぶ。ユーザは画面遷移図の可視性を高めるため、ユーザが表示させたい遷移数の多い画面を中心として画面遷移図を描画させることができる。
【０１１０】
図２２は、図２１のフィルタプロパティ８２３を押下することで表示されるフィルタプロパティ設定画面２２０１である。ユーザは、遷移数フィルタ値２２０３を入力し設定ボタン２２０４を押下することで、ユーザが表示させたい遷移数を設定することができる。具体的には遷移数フィルタ値を『６』と設定することにより画面遷移図フィルタ情報１１０６として記憶される。そしてこのフィルタ値を用いて描画処理がなされることで、６以上の遷移矢印が接続する画面を中心に画面遷移図が描画されることになる。
【０１１１】
図２１の所属入出力設定画面８１０の所属入出力一覧８１２の入力コードの横に表示される数字８２５が入出力画面に接続する遷移矢印の数である。すなわち他の画面から遷移してくるアクションの数と他の画面へと遷移するアクションの数との合計を示したものである。このような遷移数は、メモリに記憶された入出力定義のアクションから算出される。６以上の遷移数の入出力画面のオブジェクトの画面を中心として描画されるように設定されている場合には、数字８２５が６以上の画面を中心に描画されることになる。なお、６以上の画面が複数ある場合には、複数同時に描画してもよいし、いずれかを選択できるようにしてもよい。
【０１１２】
図２５は、遷移数描画を行う際の流れを説明するためのフローチャートである。このような処理は、開発用端末１０１のＣＰＵ２０１が記憶されている制御プログラムを読み出して実行することにより実現される。
【０１１３】
まず、Ｓ２５０１では、開発用端末１０１のＣＰＵ２０１が、ユーザによってアプリケーションを指定した状態で図２１に示すような遷移数描画ボタン８２２を押下されると、遷移数を指定した描画指示がされたとして受け付ける。
【０１１４】
Ｓ２５０２では、開発用端末１０１のＣＰＵ２０１が、リポジトリ定義部１０００に定義されている全入出力定義を読み込み、以下のＳ２５０３からＳ２５０６について全入出力定義分ループさせる。
【０１１５】
Ｓ２５０３では、開発用端末１０１のＣＰＵ２０１が、入出力定義は、Ｓ２５０１でユーザによって指定されたアプリケーションに所属するかどうかを判断する。具体的には、図２１に示すようなアプリケーションに対応する所属入出力一覧８１２を参照することで所属するかどうかの判断を行う。Ｓ２５０３で所属しないアプリケーションであると判断された場合には、以降の処理は行わず次の入出力定義のループに移行する。Ｓ２５０３で所属すると判断された場合には、Ｓ２５０４に移行し、開発用端末１０１のＣＰＵ２０１が画面データ抽出部１１０１として機能し、入出力定義から各項目のコード７０１と名前７０２を画面データ１１０２として抽出し、メモリへ保存する。
【０１１６】
次に、Ｓ２５０５では、入出力定義に所属する全アクション定義を抽出し、以下のＳ２５０６の処理を全アクション分ループさせる。
【０１１７】
Ｓ２５０６では、開発用端末１０１のＣＰＵ２０１が遷移データ抽出部１１０３として機能し、アクション定義のうち、アクションの入出力項目の項目コード７１２、名前７１３、次入出力７１６および次入出力パラメータ７１７の情報を遷移に関する遷移データ１１０４として抽出し、メモリへ格納する。
【０１１８】
全ての入出力定義分のループが終了するとＳ２５０７に移行し、開発用端末１０１のＣＰＵ２０１がデータ‐部品変換部１１０８として機能し、メモリからＳ２５０４で保存された画面データ１１０２とＳ２５０６で保存された遷移データ１１０４とを読出す。
【０１１９】
Ｓ２５０８では、開発用端末１０１のＣＰＵ２０１は、メモリから読み出された画面データと関連する遷移データとから各画面に対する遷移数の値を計算する（遷移数特定手段）。
【０１２０】
Ｓ２５０９では、開発用端末１０１のＣＰＵ２０１が、図２２のフィルタプロパティ設定画面２２０１等によってユーザによって設定された遷移数フィルタ値２２０３をメモリ（遷移数記憶手段）から取得する。
【０１２１】
Ｓ２５１０では、開発用端末１０１のＣＰＵ２０１が、Ｓ２５０７で読みだされた画面データと遷移データとからＳ２５０９で取得した遷移数フィルタ値２２０３に対応する画面データと遷移データを抽出する（遷移数決定手段）。
【０１２２】
Ｓ２５１１では、開発用端末１０１のＣＰＵ２０１は、データを部品（オブジェクト）に変換する。
【０１２３】
Ｓ２５１２乃至Ｓ２５１５の説明は、第一の実施形態のＳ１００８乃至Ｓ１０１１と同様であるため説明を省略する。
【０１２４】
このようにして描画された画面遷移図を図２６に示す。遷移数が６以上の画面オブジェクトを中心に描画されている。遷移数６未満の画面のオブジェクトは、自身のオブジェクトは表示されるものの、その先の遷移矢印や画面は表示されない。所望の遷移数以上の画面を中心に見たい場合には、このように描画せっていすることで視認性良く画面遷移状態を確認することができる。なお、本実施形態では、設定値以上の遷移矢印が接続する画面を描画する例を用いて説明したが設定値以下（設定値未満）の遷移矢印が接続する画面を描画できるようにしてもよい。
【０１２５】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１２６】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置の情報処理装置が前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１２７】
したがって、本発明の機能処理を情報処理装置で実現する（実行可能とする）ために、前記情報処理装置にインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１２８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１２９】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１３０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１３１】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理を情報処理装置で実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１３２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行して情報処理装置にインストールさせて実現することも可能である。
【０１３３】
また、情報処理装置が、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、情報処理装置上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１３４】
さらに、記録媒体から読み出されたプログラムが、情報処理装置に挿入された機能拡張ボードや情報処理装置に接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１３５】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１３６】
１０１  開発用端末
１０２  サーバ
１０３  利用者用端末
１３０  Ｗｅｂアプリケーション
１１００  遷移画面生成部
【図１】
2020024724.tif 000003
【図２】
2020024724.tif 000004
【図３】
2020024724.tif 000005
【図４】
2020024724.tif 000006
【図５】
2020024724.tif 000007
【図６】
2020024724.tif 000008
【図７】
2020024724.tif 000009
【図８】
2020024724.tif 000010
【図９】
2020024724.tif 000011
【図１０】
2020024724.tif 000012
【図１１】
2020024724.tif 000013
【図１２】
2020024724.tif 000014
【図１３】
2020024724.tif 000015
【図１４】
2020024724.tif 000016
【図１５】
2020024724.tif 000017
【図１６】
2020024724.tif 000018
【図１７】
2020024724.tif 000019
【図１８】
2020024724.tif 000020
【図１９】
2020024724.tif 000021
【図２０】
2020024724.tif 000022
【図２１】
2020024724.tif 000023
【図２２】
2020024724.tif 000024
【図２３】
2020024724.tif 000025
【図２４】
2020024724.tif 000026
【図２５】
2020024724.tif 000027
【図２６】
2020024724.tif 000028