(57)【要約】【課題】  Ｗｅｂアプリケーションのプログラムの生成に用いられる入出力定義にかかるドキュメントを生成し、容易に表示させる仕組みを提供する。【解決手段】  Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、前記入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成手段と、前記ドキュメント生成手段により生成されるドキュメントのリンク情報を生成するリンク情報生成手段と、前記画面から前記ドキュメント生成手段で生成されるドキュメントを表示させるべく、前記プログラムで用いられる画面に前記リンク情報を設定する設定手段とを備えることを特徴とする。【選択図】  図３
2018181073.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、
前記入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成手段と、
前記ドキュメント生成手段により生成されるドキュメントのリンク情報を生成するリンク情報生成手段と、
前記画面から前記ドキュメント生成手段で生成されるドキュメントを表示させるべく、前記プログラムで用いられる画面に前記リンク情報を設定する設定手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記ドキュメント生成手段は、画面ごと生成されることを特徴とし、
前記設定手段は、プログラムを生成する際に、対応する画面にリンク情報を設定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
生成されるプログラムにおいて、リンク情報を設定するための指定を受け付ける指定受付手段と、
前記指定受付手段によりリンク情報を設定するための指定がされた場合に、前記リンク情報生成手段は前記リンク情報を生成し、
前記指定受付手段によりリンク情報を設定するための指定がされていない場合に、前記リンク情報生成手段は前記リンク情報を生成することなく、前記プログラムを生成するプログラム生成手段と
を更に備えることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記設定手段は、前記入出力定義のタイプに従って画面にリンク情報を設定することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
出力フィルタを設定するフィルタ設定手段を更に備え、
前記ドキュメント生成手段は、前記フィルタ設定手段によって設定された出力フィルタと前記入出力定義に従って、フィルタされた画面に関する仕様を含むドキュメントを生成し、
前記設定手段は、前記ドキュメント生成手段により生成されたフィルタされた画面に関する仕様を含むドキュメントを表示させるべく、対応する画面に当該ドキュメントのリンク情報を設定することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置の処理方法であって、
前記入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成ステップと、
前記ドキュメント生成ステップにより生成されるドキュメントのリンク情報を生成するリンク情報生成ステップと、
前記画面から前記ドキュメント生成ステップで生成されるドキュメントを表示させるべく、前記プログラムで用いられる画面に前記リンク情報を設定する設定ステップと
を含むことを特徴とする処理方法。
【請求項７】
Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置のプログラムであって、
前記情報処理装置を、
前記入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成手段と、
前記ドキュメント生成手段により生成されるドキュメントのリンク情報を生成するリンク情報生成手段と、
前記画面から前記ドキュメント生成手段で生成されるドキュメントを表示させるべく、前記プログラムで用いられる画面に前記リンク情報を設定する設定手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムを生成するための情報処理装置と、その処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、入出力定義やデータモデル定義などを設定し、Ｗｅｂアプリケーションのプログラムを動的に生成するＷｅｂアプリケーション技術が存在する。
【０００３】
例えば、特許文献１には、Ｗｅｂアプリケーションのプログラムを動的に生成する技術において、ＧＵＩレイアウト画面と呼ばれるレイアウトエディタを用いて、Ｗｅｂアプリケーションの画面の入力項目（検索条件テキストボックスや検索ボタン等）及び出力項目（検索結果等）の配置レイアウト及び属性を定義し、その入出力定義情報に基づいてＷｅｂアプリケーションのプログラムを生成する仕組みが示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−９９５９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１のように容易にＷｅｂアプリケーションを生成することができるようになった一方、Ｗｅｂアプリケーションで使用する画面の仕様（定義）がどのようになっているのかを確認する場合、Ｗｅｂアプリケーションのプログラム生成するツールにて対応する画面を探し、その画面で設定した入出力定義を確認しなければならず困難な作業を伴うことが発生する。
【０００６】
特にＷｅｂアプリケーションにプログラムを動的に生成するための入出力定義として各種の設定が必要であり、画面の大まかな仕様を把握することは困難を伴うものであった。
【０００７】
また、Ｗｅｂアプリケーションを利用するユーザ（システムの利用者）は、入出力定義を確認することはできないため利用する画面の仕様を確認することはできなかった。
【０００８】
そこで、本発明の目的は、Ｗｅｂアプリケーションのプログラムの生成に用いられる入出力定義にかかるドキュメントを生成し、容易に表示させる仕組みを提供することである。
【課題を解決するための手段】
【０００９】
Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置であって、前記入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成手段と、前記ドキュメント生成手段により生成されるドキュメントのリンク情報を生成するリンク情報生成手段と、前記画面から前記ドキュメント生成手段で生成されるドキュメントを表示させるべく、前記プログラムで用いられる画面に前記リンク情報を設定する設定手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、Ｗｅｂアプリケーションのプログラムの生成に用いられる入出力定義にかかるドキュメントを生成し、容易に表示させることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明に係るプログラム開発装置、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバの構成の一例を示すシステム構成図である。
【図２】本発明に係るプログラム開発装置、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント、アプリケーションサーバとして適用可能な各ハードウェア構成の一例を示すブロック図である。
【図３】本実施形態のプログラム開発装置１０１の機能構成を示すブロック図である。
【図４】本実施形態のＷｅｂシステムにおける処理概要を示す構成図である。
【図５】Ｗｅｂアプリケーション及びドキュメント生成のフローチャート並びにドキュメント生成のフローチャートの一例を示す図である。
【図６】リポジトリ定義の一例を示す図である。
【図７】ドキュメント生成詳細のフローチャートの一例を示す図である。
【図８】ドキュメント出力のフローチャートの一例を示す図である。
【図９】関連文書・ヘッダ・フッタ等出力処理のフローチャートの一例を示す図である。
【図１０】検索情報生成のフローチャートの一例を示す図である。
【図１１】画面一覧情報生成のフローチャートの一例を示す図である。
【図１２】画面仕様表示部の生成・出力のフローチャートの一例を示す図である。
【図１３】画面項目仕様表示部の生成・出力のフローチャートの一例を示す図である。
【図１４】入出力定義画面、入出力項目定義画面、ＮＯＤＯＣ定義画面の一例を示す図である。
【図１５】生成された画面仕様ドキュメント１５００の一例を示す図である。
【図１６】生成された画面仕様ドキュメントの表紙の一例を示す図である。
【図１７】ドキュメントフィルタ定義の一例を示す図である。
【図１８】ドキュメントフィルタ定義の一例を示す図である。
【図１９】ドキュメントフィルタ定義の一例を示す図である。
【図２０】アプリケーション設定のダイアログの一例を示す図である。
【図２１】リンク情報の一例を示す図である。
【図２２】「ＮＯＤＯＣ」指定の有無による画面一覧表示の一例を示す図である。
【図２３】入出力レイアウト定義（画面レイアウト）の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
【００１３】
図１は、本発明に係わるプログラム開発装置（開発者がＷｅｂアプリケーション生成のために使用する情報処理装置）、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント（クライアント装置）、アプリケーションサーバ、Ｗｅｂサーバの構成の一例を示すシステム（情報処理システム）構成図である。
【００１４】
プログラム開発装置１０１は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。プログラム開発装置１０１単体では、開発者の入力受付を行い、後述するプログラム開発サーバ１０２に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム開発装置１０１単体でプログラム生成、アプリケーション生成まで処理してもよい。
【００１５】
なお、この実施形態においては、プログラム開発装置１０１で生成するアプリケーションはＷｅｂアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Ｗｅｂ技術による通信を利用したアプリケーションでなくてもよい。
【００１６】
プログラム開発サーバ１０２ａ〜１０２ｂ（情報処理装置）は、プログラム開発装置１０１により入力された開発者の指示に従って、プログラムを開発する。プログラム開発サーバ１０２ａはＬＡＮなどのネットワーク１０７内に配置されてもよいし、プログラム開発サーバ１０２ｂはインターネット上やクラウド上に配置されてもよい。
【００１７】
データベースサーバ１０３ａ〜１０３ｂ（情報処理装置）は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ１０３は、プログラム開発装置１０１と同一の装置で構成されていてもよいし、ＬＡＮなどのネットワーク１０７内に配置されてもよい（データベースサーバ１０３ａ）。またインターネット上やクラウド上に配置されてもよい（データベースサーバ１０３ｂ）。また、プログラム開発装置１０１が、プログラム開発サーバ１０２と協調する場合には、プログラム開発サーバ１０２とデータベースサーバ１０３が同一の装置内に構成されていてもよい。
【００１８】
アプリケーションサーバ１０５（情報処理装置）は、プログラム開発装置１０１で生成されたアプリケーションプログラムを実行する。アプリケーションサーバ１０５は、ＬＡＮなどのネットワーク１０７内に配置されてもよいし、またインターネット上やクラウド上に配置されてもよい。また、ネットワーク１０７、インターネット、クラウド上のデータベースサーバ１０３と接続して動作することが可能である。
【００１９】
アプリケーションクライアント１０４ａ〜１０４ｂ（情報処理装置）は、アプリケーションサーバ１０５と協調してプログラム開発装置１０１で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。ＬＡＮなどのネットワーク１０７内に配置されてもよい（アプリケーションクライアント１０４ａ）し、またインターネット上やクラウド上に配置されてもよい（アプリケーションクライアント１０４ｂ）。携帯端末などの情報処理装置であってもよい。
【００２０】
Ｗｅｂサーバ１０６（情報処理装置）は、プログラム開発装置１０１で生成された画面仕様ドキュメント４４３をアプリケーションクライアント１０４からのリクエストに応じて送信する。Ｗｅｂサーバ１０６は、ＬＡＮなどのネットワーク１０７内に配置されてもよいし、またインターネット上やクラウド上等に配置されてもよい。
【００２１】
なお、本実施形態においては、アプリケーションサーバ１０５とＷｅｂサーバ１０６は別筐体の情報処理装置としたが、これに限定するものではなく、１つの情報処理装置であっても、仮想環境上に構築されてもよい。
【００２２】
なお、本実施形態のプログラム開発装置１０１又はプログラム開発サーバ１０２は、Ｗｅｂシステムで用いるクライアント装置で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置と言い換えることが可能である。
【００２３】
図２は、本発明に係わるプログラム開発装置１０１、プログラム開発サーバ１０２、データベースサーバ１０３、アプリケーションクライアント１０４、アプリケーションサーバ１０５、Ｗｅｂサーバ１０６として適用可能な各ハードウェア構成の一例を示すブロック図である。
【００２４】
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。
【００２５】
また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
【００２６】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。
【００２７】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
【００２８】
出力コントローラ２０６は、出力部２１０の表示を制御する。この出力部２１０としては、例えば、ＣＲＴや液晶ディスプレイ等が挙げられる。
【００２９】
外部メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ２１１としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
【００３０】
通信Ｉ／Ｆコントローラ２０８は、ネットワークを介して外部機器との通信制御処理を実行する。
【００３１】
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００３２】
図３は、本発明の実施形態におけるプログラム開発装置１０１の機能構成を示すブロック図の一例である。
【００３３】
プログラム開発装置１０１は、以下の機能部を備える。なおプログラム開発装置１０１は、Ｗｅｂシステムで用いるアプリケーションクライアント（クライアント装置）で表示する画面に対応する入出力定義に従って、Ｗｅｂシステムで実行するプログラムを生成する情報処理装置と言い換えることが可能である。
【００３４】
ドキュメント生成部３０１は、入出力定義に従って、画面に関する仕様を含むドキュメントを生成する機能部である。
【００３５】
リンク情報生成部３０２は、ドキュメント生成部３０１により生成されるドキュメントのリンク情報を生成する機能部である。
【００３６】
設定部３０３は、画面からドキュメント生成部３０１で生成されるドキュメントを表示させるべく、プログラムで用いられる画面にリンク情報を設定する機能部である。
【００３７】
また、ドキュメント生成部３０１は、Ｗｅｂアプリケーションで用いる画面ごと生成される。
【００３８】
また、設定部３０３は、プログラムを生成する際に、対応する画面にリンク情報を設定する。
【００３９】
指定受付部３０４は、生成されるプログラムにおいて、リンク情報を設定するための指定を受け付ける機能部である。
【００４０】
プログラム生成部３０５は、指定受付部３０４によりリンク情報を設定するための指定がされた場合に、リンク情報生成部３０２は前記リンク情報を生成し、指定受付部３０４によりリンク情報を設定するための指定がされていない場合に、リンク情報生成部３０２は前記リンク情報を生成することなく、前記プログラムを生成する機能部である。
【００４１】
設定部３０３は、入出力定義のタイプに従って画面にリンク情報を設定する。
【００４２】
フィルタ設定部３０６は、出力フィルタを設定する機能部である。
【００４３】
ドキュメント生成部３０１は、フィルタ設定部３０６によって設定された出力フィルタと前記入出力定義に従って、フィルタされた画面に関する仕様を含むドキュメントを生成する。
【００４４】
設定部３０３は、ドキュメント生成部３０１により生成されたフィルタされた画面に関する仕様を含むドキュメントを表示させるべく、対応する画面に当該ドキュメントのリンク情報を設定する。
【００４５】
なお、クラウド環境でＷｅｂアプリケーションの設定を行う場合には、プログラム開発サーバ１０２としての機能とすることは言うまでもない。
【００４６】
図４は、Ｗｅｂシステムにおける処理概要を示す構成図である。
【００４７】
プログラム開発装置１０１は、リポジトリ定義部４０１、Ｗｅｂアプリケーション生成部４１５及び画面仕様ドキュメント生成部４１９を備える。
【００４８】
プログラム開発装置１０１は、Ｗｅｂアプリケーションを開発する開発者により設定されたリポジトリ定義部４０１の各定義を用いて、Ｗｅｂアプリケーション生成部４１５によりＷｅｂアプリケーション４３８を生成する。また、プログラム開発装置１０１は、リポジトリ定義部４０１の各定義を用いて、画面仕様ドキュメント生成部４１９により画面仕様ドキュメントを生成する。
【００４９】
リポジトリ定義部４０１には、アプリケーション定義４０２、入出力定義４０３、データモデル定義４０４、ビジネスプロセス定義４０５、データベース定義４０６、ドキュメント用定義４０７、画面ＨＴＭＬデータ４０８、ドキュメントフィルタ定義４０９、表紙ファイル４１０、アプリケーションリソースファイル４１１、ドキュメントリソースファイル４１２、ヘッダ・フッタファイル４１３及び関連文書４１４が記憶されている。これら４０２〜４１４の定義は、Ｗｅｂアプリケーション開発ツールを介して、開発者によって入力設定または配置される。
【００５０】
なお、入出力定義４０３は、入力項目定義情報及び出力項目定義情報を含む。入力項目定義情報は、生成されたＷｅｂアプリケーションの画面を介して当該Ｗｅｂアプリケーションのユーザが入力する入力項目を定義した情報である。出力項目定義情報は、生成されたＷｅｂアプリケーションの画面に出力する出力項目を定義した情報である。以降、「入力項目定義情報」及び「出力項目定義情報」をまとめて「入出力項目定義情報」と呼ぶ。
【００５１】
また、画面ＨＴＭＬデータ４０８は、Ｗｅｂアプリケーション開発ツールのレイアウトエディタを用いて生成された画面レイアウトをＨＴＭＬ等に変換した画面情報である。
【００５２】
また、アプリケーションリソースファイル４１１は、Ｗｅｂアプリケーションの画面に表示する文言等を定義したファイルであり、ドキュメントリソースファイル４１２は、画面仕様ドキュメント４４３に表示する文言等を定義したファイルである。
【００５３】
よって、リポジトリ定義部４０１は、生成されたプログラムの実行によって表示されるＷｅｂアプリケーションの画面を介して入力される項目を定義する入力定義情報と、画面に出力する項目を定義する出力定義情報とを入出力定義情報として管理する一例である。
【００５４】
Ｗｅｂアプリケーション生成部４１５は、Ｗｅｂアプリケーション生成用のリポジトリ定義解析部４１６を用いてリポジトリ定義部４０１に記憶されている各定義を解析し、Ｗｅｂアプリケーションコード生成部４１７及びソースコードコンパイル部４１８を介し、コンパイル済Ｊａｖａ（登録商標）コード４３９及びＨＴＭＬ／ＪＳＰ／ＪａｖａＳｃｒｉｐｔ（登録商標）４４０を含むＷｅｂアプリケーション４３８を生成する。また、画面仕様ドキュメント生成ＯＮ／ＯＦＦ設定部を有しており、画面仕様ドキュメント生成部４１９の動作の制御（ＯＮ／ＯＦＦ）をする。
【００５５】
画面仕様ドキュメント生成部４１９は、画面仕様ドキュメント生成用のリポジトリ定義解析部４２０を用いてリポジトリ定義部４０１に記憶されている各定義を解析し、画面一覧生成部４２１、画面仕様生成部４２２、画面イメージ生成部４２３、画面項目仕様生成部４２４、検索機能生成部４２５、関連文書生成部４２７、表紙生成部４２８及びヘッダ・フッタ生成部４２９を用いて、ＨＴＭＬ／ＣＳＳ／ＪａｖａＳｃｒｉｐｔ（登録商標）４４４及び画像ファイル４４５を含む画面仕様ドキュメント４４３を生成する。
【００５６】
その際、レイアウト構成部４２６は、出力フィルタ管理部４３０を介し、ドキュメントエリア設定管理部４３２にて管理されているエリア出力設定４３３及びエリアサイズ設定４３４における設定を、画面一覧生成部４２１、画面仕様生成部４２２、画面イメージ生成部４２３、画面項目仕様生成部４２４及び検索機能生成部４２５が生成するドキュメントのレイアウトとして用いる。
【００５７】
更に、レイアウト構成部４２６は、ドキュメントテーマ管理部４３５にて管理されている組込デザイン情報４３６及び／又はユーザ作成デザイン情報４３７から取得したテーマ（スタイルシート等、ドキュメントのレイアウトや装飾）を画面仕様ドキュメント４４３に反映する。
【００５８】
また、言語別ドキュメント置換処理部４３１は、表紙生成部４２８及びヘッダ・フッタ生成部４２９へ言語別のファイルを設定する。
【００５９】
図５は、Ｗｅｂアプリケーション及びドキュメント生成のフローチャート並びにドキュメント生成のフローチャートの一例を示す図である。なお、以下のフローチャートの各ステップは、装置のＣＰＵ２０１が実行する。
【００６０】
プログラム開発装置１０１は、ディレクトリ構造６００（図６）を用いて、リポジトリ定義部４０１の各定義をファイルとして管理する。なお、本実施形態においては、ディレクトリ構造６００を用いて、リポジトリ定義部４０１の各定義をファイルとして管理するとしたが、これに限定するものではなく、例えば、データベースを用いてリポジトリ定義部４０１の各定義を管理してもよいし、クラウドなどネットワーク上の記憶装置を用いて管理する等としてもよい。
【００６１】
本実施形態では、Ｗｅｂアプリケーションの生成の実行を指示する前に、プログラム開発装置１０１は、Ｗｅｂアプリケーションの自動生成のための定義の入力を受ける。具体的には、開発するＷｅｂアプリケーション（プロジェクト）として、アプリケーション設定でアプリケーションのコードや名前、アプリケーションタイプなどを設定する。
【００６２】
このＷｅｂアプリケーション（プロジェクト）に対して、データモデル定義、入出力定義、ビジネスプロセス定義を設定する。これらの定義は、Ｗｅｂアプリケーション自動生成する設定画面でユーザが任意に設定するものとするが、予め生成された定義を読み込む構成であってもよい。
【００６３】
入出力定義は、図１４で設定したデータを用いて定義されるものである。
【００６４】
Ｗｅｂアプリケーション及びドキュメント生成のフローチャートについて説明する。
【００６５】
ステップＳ５００において、プログラム開発装置１０１は、開発者からのアプリケーション生成の実行指示を受け付けると、アプリケーション設定のダイアログを表示する。ここで、画面仕様ドキュメントに関する設定の入力を受け付ける。アプリケーション設定のダイアログの一例を示す図が、図２０の２０００である。２００１で「ドキュメントを生成する」にチェックを設定されると本実施形態における画面仕様ドキュメントの生成がされ、リンクが画面に埋め込まれる。その他の設定として、ドキュメントテーマ（ＣＳＳ）を設定することや、ドキュメント設定として、管理者向けやエンドユーザ向けの画面仕様ドキュメントであるかの種別を設定することが可能となっている。
【００６６】
すなわち、ステップＳ５００の処理は、生成されるプログラムにおいて、リンク情報を設定するための指定を受け付ける指定受付処理の一例を示すステップである。
【００６７】
ステップＳ５０１において、プログラム開発装置１０１は、リポジトリ定義部４０１からアプリケーション定義４０２を取得する。
【００６８】
ステップＳ５０２において、プログラム開発装置１０１は、リポジトリ定義部４０１からデータモデル定義４０４を取得する。データモデル定義４０４は、リポジトリ定義部４０１として登録されている。データモデル定義４０４は、データモデル設定画面（不図示）でデータベース上の項目をマッピングして登録されるものである。一般的には、１テーブル１データモデルが作成される。データモデル定義の作成はＷｅｂアプリケーションの開発において既知の技術であるため説明を省略する。
【００６９】
ステップＳ５０３において、プログラム開発装置１０１は、リポジトリ定義部４０１から入出力定義４０３を取得する。
【００７０】
ここで、図１４を用いて、入出力定義４０３について説明しておく。上述したように入出力定義４０３の設定自体は、アプリケーションの生成を実行する前に、開発者などにより事前に行われる。まず、図２３の入出力レイアウト定義画面２３００（画面レイアウト）上で、画面エディタ上にオブジェクト（フィールドやアクションボタン）をドラッグアンドドロップ操作等により配置する。この各オブジェクトに対応する項目の設定を図１４で行い入出力定義が生成される。
【００７１】
入出力定義画面１４００（図１４）は、Ｗｅｂアプリケーションの開発者による入出力定義４０３の入力設定操作を受け付ける画面である。また、入出力定義画面１４００を用いて設定される入出力定義４０３は、画面仕様ドキュメントの基となる情報である。名前１４０１は、Ｗｅｂアプリケーションの画面名である。入出力タイプ１４０２は、入出力定義画面１４００にて設定された入出力定義４０３を用いて、どのようなプログラムを生成するかを決定する項目である。
【００７２】
例えば、Ｗｅｂアプリケーションの画面を表示するプログラムを生成する場合は“ＩＯ”、メニューを表示するプログラムを生成する場合は“ＭＥＮＵ”、ダイアログを表示するプログラムを生成する場合は“ＤＩＡＬＯＧ”、ファイルを出力するプログラムを生成する場合は“ＥＸＰＯＲＴ”、ファイルを入力するためのプログラムを生成する場合は“ＩＭＰＯＲＴ”、マトリクス画面を表示するプログラムを生成する場合は“ＭＡＴＲＩＸ”、帳票を印刷するプログラムを生成する場合は“ＰＲＩＮＴ＿ＦＩＬＥ”、モバイル用の画面を表示するプログラムを生成する場合は“ＭＯＢＩＬＥ”、バッチ用の画面を表示するプログラムを生成する場合は“ＢＡＴＣＨ”、Ｗｅｂサービス用のプログラムを生成する場合は“ＷＥＢＳＥＲＶＩＣＥ”を選択する。つまり、入出力タイプ１４０２に“ＥＸＰＯＲＴ”、“ＩＭＰＯＲＴ”、“ＰＲＩＮＴ＿ＦＩＬＥ”、“ＢＡＴＣＨ”又は“ＷＥＢＳＥＲＶＩＣＥ”を選択することにより、画面表示を伴わないアプリケーション又はサービスのプログラムを生成することもできる。
【００７３】
入出力項目定義１４１０（図１４）は、画面名が名前１４０１の画面を介してＷｅｂアプリケーションのユーザが入力する入力項目及び生成されたＷｅｂアプリケーションの画面名が名前１４０１の画面に出力する出力項目の定義情報である。入出力項目の項目タイプ１４１１には、Ｉ（入力）、Ｏ（出力）、ＩＯ（入出力）及びＡ（アクション）等があり、“Ｉ”であれば入力定義、“Ｏ”であれば出力定義、“ＩＯ”であれば入出力定義を意味する。
【００７４】
（アット）ＮＯＤＯＣ定義１４２０（図１４）は、入出力定義（図１４の１４００）及び入出力項目定義（図１４の１４１０）に対して設定でき、「（アット）ＮＯＤＯＣ」という指定をすることにより、その画面に対する画面仕様ドキュメント４４３として出力しないようにすることができる。なお以下では「（アット）ＮＯＤＯＣ」は「ＮＯＤＯＣ」として説明する。これにより、Ｗｅｂアプリケーションのユーザにとっては不要な画面・画面項目は、個別に画面仕様ドキュメント４４３に出力しないようにすることができるため、ユーザにとってわかりやすいドキュメントが生成することができる。
【００７５】
図１４の１４１０に「ＮＯＤＯＣ」を指定すると、その指定した入出力定義に対応する画面仕様ドキュメントが生成されないため、画面一覧表示部１５０２に表示されない。「ＮＯＤＯＣ」が指定された場合と指定されない場合の画面一覧表示部１５０２を図２２に示す。２２０１が「ＮＯＤＯＣ」が指定されていない場合の画面一覧表示部を２２０２に示している。ユーザマスタ詳細に「ＮＯＤＯＣ」を指定している場合には、２２１０の画面となる。画面仕様ドキュメントが生成されないため、２２０１の画面一覧表示部では、２２０３が表示されない。
【００７６】
ステップＳ５０４において、プログラム開発装置１０１は、リポジトリ定義部４０１からビジネスプロセス定義４０５を取得する。ビジネスプロセス定義４０５は、リポジトリ定義部４０１として登録されている。ビジネスプロセス定義４０５についても事前に設定されているものである。また、ビジネスプロセス定義４０５は、受け付けたデータの処理の流れを定義したものである。例えば、入力したデータの重複をチェックして、登録するといったロジックを定義したものである。ビジネスプロセル定義についても、Ｗｅｂアプリケーションの開発において既知の技術であるため説明を省略する。
【００７７】
ステップＳ５０５において、プログラム開発装置１０１は、リポジトリ定義部４０１からデータベース定義４０６を取得する。データベース定義４０６も予め生成されているものとする。
【００７８】
ステップＳ５０６において、図２０のドキュメントを生成する設定２００１がされているか否かを判定する。設定がされている場合には、Ｗｅｂアプリケーションから画面仕様ドキュメントを呼び出せるようにするため、ステップＳ５０７へ処理を移す。設定がされていない場合には、画面仕様ドキュメント自体を生成しない設定であるため、ステップＳ５１１へ処理を移す。
【００７９】
ステップＳ５０７では、ステップＳ５０９で生成する画面仕様ドキュメントをＷｅｂアプリケーション（Ｗｅｂアプリケーションの画面）からドキュメントを呼び出すためのリンクＵＲＬ（リンク情報）を、ステップＳ５０３で取得した入出力定義のコードを用いて作成する。すなわち、生成されるドキュメントのリンク情報を生成するリンク情報生成処理の一例を示すステップである。また、リンク情報を設定するための指定がされた場合に、リンク情報を生成するものである。
【００８０】
ステップＳ５０９の画面仕様ドキュメント生成より前にリンク情報を生成できるのは、画面仕様ドキュメントにおいても同じ入出力定義を用いて生成しているため、どのようなリンク情報を生成すればよいか事前にわかるためである。なお、リンク情報は、ステップＳ５０９の後に作成してもよい。その場合、ステップＳ５０８も同様にステップＳ５０９の後に処理することが望ましい。
【００８１】
リンク情報の一例を示す図が図２１である。２１００は、リンク情報を記述したＷｅｂアプリケーションの画面の例を示す。また、２１００のＨＴＭＬで記述したリンク情報の例が２１０１である。２１０１は、ユーザマスタ詳細の画面仕様ドキュメントを表示するためのリンク情報を示す記述であり、この記述により、Ｗｅｂアプリケーションの画面から、図１５の画面仕様ドキュメントを表示させることができる。また、２１０２はユーザマスタ詳細のコードを示しており、２１０２のコードをｄｉｓｐａｔｃｈａｒ．ｊｓｐに受け渡すことで、対象の画面仕様ドキュメントを取得できる構成となっている。
【００８２】
ステップＳ５０８において、プログラム開発装置１０１は、Ｗｅｂアプリケーション生成部４１５を用いて、Ｗｅｂアプリケーション４３８に用いるプログラムを生成する。プログラム開発装置１０１のＷｅｂアプリケーション生成部４１５が、取得した定義を用いて、Ｗｅｂアプリケーションのソースコードを生成する（例えば、Ｗｅｂアプリケーション４３８）。具体的には、「入出力定義」「データモデル定義」「ビジネスプロセス定義」に基づき生成する。なお、生成されたソースコードにはプログラミング言語が記載されたファイルＨＴＭＬ、ＪＳＰ、ＪａｖａＳｃｒｉｐｔ（登録商標）等のＷｅｂアプリケーションの提供に利用されるファイルも含まれる。この時ステップＳ５０７で生成したリンク情報を、各入出力定義に対応する画面のＨＴＭＬに埋め込む。このリンク情報は、各画面に対応する画面仕様ドキュメントが表示される。すなわち、ドキュメントを表示させるべく、プログラムで用いられる画面にリンク情報を設定する設定処理の一例を示すステップである。また、プログラムを生成する際に、対応する画面にリンク情報を設定する設定処理である。また、リンク情報を生成し設定した、プログラムを生成するプログラム生成処理の一例を示すステップである。
【００８３】
ここで、ステップＳ５０８のより具体的な処理について説明する。入出力定義画面１４００の入出力タイプの設定で、ＭＯＢＩＬＥが設定されている場合には、ＭＯＢＩＬＥとして設定した画面にリンク情報を埋め込まないようにする。これは、ＰＣでのブラウザでの表示とＭＯＢＩＬＥでの表示とでは画面構成が異なるからである。ＭＯＢＩＬＥでは、閲覧性を重視するため、画面はシンプルにし、各種操作は別途設けているメニューから操作を行わせるためである。
【００８４】
このようにＭＯＢＩＬＥとしての画面を設定して入出力定義を定義している場合には、リンク情報を画面に埋め込む制御を行わないようにする。
【００８５】
また、入出力タイプフィルタ１７１０で画面仕様ドキュメントを出力対象として設定した場合であっても、対応する画面（図２３の２３０１）を定義していない入出力タイプについてはリンク情報を埋め込む制御を行わないようにする。なお、リンク情報が不要な場合には、リンク情報について作成しないようにすることは言うまでもない。
【００８６】
すなわち、入出力定義のタイプに従って画面にリンク情報を設定する処理である。
【００８７】
これにより、開発者がタイプに応じてリンク情報を画面情報に埋め込む判断をせずに自動でＷｅｂアプリケーションプログラムを生成することができ、また、各画面に対応したドキュメントを画面ごとに関連付けできるため、誤った画面のドキュメントをリンクし間違えるというミスを建言することができる。
【００８８】
一般的に、開発者がドキュメントを手作業で生成して、ドキュメントを対応する画面にリンク付けする必要があったため、手作業によりミスを減らすことは困難であったが、本実施形態によればミスをなくし、Ｗｅｂアプリケーションの開発効率を高めることができる。
【００８９】
ステップＳ５０９において、プログラム開発装置１０１は、画面仕様ドキュメント生成部４１９を用いて、画面仕様ドキュメント４４３を生成する。ステップＳ５０７の詳細処理については、図７を用いて説明する。ステップＳ５０９の処理は、入出力定義に従って、画面に関する仕様を含むドキュメントを生成するドキュメント生成処理の一例を示すステップである。また、後述の通り、画面仕様ドキュメントは入出力定義ごと、すなわちＷｅｂアプリケーションで用いる画面ごとに生成されるものである。本実施形態では画面ごとに生成されるが、「ＮＯＤＯＣ」指定があるものは生成されないようになっている。
【００９０】
リポジトリ定義解析部４２０は、読み込んだ定義を解析したうえでメモリに保管しておき、各生成部から適宜参照される。
【００９１】
レイアウト構成部４２６は、生成部の生成したドキュメントの各構成要素をレイアウトする。
【００９２】
ステップＳ５１０において、プログラム開発装置１０１は、ステップＳ５０６にて生成したプログラムをアプリケーションサーバ１０５に配置（デプロイ）し、ステップＳ５０６にて生成した画面仕様ドキュメント４４３をＷｅｂサーバ１０６に配置する。これにより、アプリケーションサーバ１０５上でＷｅｂアプリケーションが動作し、Ｗｅｂサーバ１０６から画面仕様ドキュメント４４３を配信することができるようになる。
【００９３】
ステップＳ５１１において、プログラム開発装置１０１は、Ｗｅｂアプリケーション生成部４１５を用いて、Ｗｅｂアプリケーション４３８に用いるプログラムを生成する。プログラムの生成方法は、ステップＳ５０８と同様であるが、画面仕様ドキュメントが生成されないため、リンク情報が付与されない画面が生成される。すなわち、リンク情報を設定するための指定がされていない場合に、リンク情報を生成することなく、プログラムを生成するプログラム生成処理の一例を示すステップである。
【００９４】
図１５は、生成された画面仕様ドキュメント１５００の一例を示す図である。
【００９５】
１５０１は、検索キーワード受付部である。生成された画面仕様ドキュメント１５００から、入力を受け付けた文字列を含む画面仕様ドキュメント１５００を検索して表示する。
【００９６】
１５０２は、画面一覧表示部であり、入出力定義４０３の一覧を表示する。表示された画面名がクリックされると、クリックされた画面の入出力定義情報を右ペインに表示する。
【００９７】
１５０３は、画面仕様表示部であり、入出力定義４０３の属性及びその設定値を表示する。
【００９８】
１５０４は、画面イメージ表示部であり、画面ＨＴＭＬデータ４０８を用いて、入出力定義４０３の画面イメージを表示する。
【００９９】
１５０５は、画面項目仕様表示部であり、入出力定義４０３の入出力項目の属性及びその設定値を一覧表示する。
【０１００】
１５０６は、関連文書表示部であり、当該入出力定義４０３に関連する文書へのリンクを表示する。
【０１０１】
１５０７は、ヘッダ表示部であり、全ページの画面最上部に表示する。
【０１０２】
１５０８は、フッタ表示部であり、全ページの画面最下部に表示する。
【０１０３】
以上で、図１５の説明を終了する。
【０１０４】
図１６は、生成された画面仕様ドキュメントの表紙の一例を示す図である。
【０１０５】
１６０１は、表紙表示部である。画面仕様ドキュメント１５００の表示の指示を受け付けた場合、最初に表紙表示部１６０１を表示する。
【０１０６】
以上で、図５のＷｅｂアプリケーション及びドキュメント生成のフローチャートの説明を終了する。
【０１０７】
なお、ステップＳ５０１〜Ｓ５０８により、Ｗｅｂアプリケーションに用いるプログラム及び画面仕様ドキュメント１５００を続けて生成することができるが、画面仕様ドキュメント１５００のみを生成することもできる。その場合は、ステップＳ５０１、Ｓ５０２、Ｓ５０３、Ｓ５０７を行えばよい。
【０１０８】
以上で、図５の説明を終了する。
【０１０９】
図７は、画面仕様ドキュメント生成詳細のフローチャートの一例を示す図である。
【０１１０】
ステップＳ７０１において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されているドキュメントフィルタ定義４０９を取得する。
【０１１１】
ドキュメントフィルタ定義４０９には、図１７〜図１９のようなフィルタがあり、これらの定義の設定値に従って。画面仕様ドキュメント４４３として出力する情報をフィルタリング（選別）する。図１７〜図１９を用いて、各フィルタについて説明する。
【０１１２】
入出力タイプフィルタ１７１０（図１７）は、入出力定義４０３を入出力タイプの値に従ってフィルタリングする。入出力タイプは１４０１に対応する。
【０１１３】
入出力属性フィルタ１７２０（図１７）は、入出力定義４０３を入出力（定義）の属性に従ってフィルタリングする。
【０１１４】
入出力項目タイプフィルタ１８１０（図１８）は、入出力定義４０３を入出力項目タイプの値に従ってフィルタリングする。
【０１１５】
入出力項目属性フィルタ１８２０（図１８）は、入出力定義４０３を入出力項目の属性の値に従ってフィルタリングする。
【０１１６】
エリアフィルタ１９００の（図１９）は、画面仕様ドキュメント４４３として出力する情報を、各表示部（図１５の１５０３〜１５０６）の出力可否の値（図１９の１９１１〜１９１５）に従ってフィルタリングし、各表示部の設定されたサイズ（図１９の１９２１〜１９２５）に従って表示するサイズを決定する。
【０１１７】
出力フィルタ管理部４３０は、取得したドキュメントフィルタ定義４０９（特に１７００〜１８０１）の設定値をＲＡＭ２０２に記憶させて管理する。なお、これらの設定値は、各生成部（４２１〜４２５）により適宜参照される。
【０１１８】
ドキュメントエリア設定管理部４３２は、取得したドキュメントフィルタ定義４０９（特に１９００）の設定値を、エリア出力設定４３３（特に１９１１〜１９１５）及びエリアサイズ設定４３４（特に１９２１〜１９２５）として、ＲＡＭ２０２に記憶させて管理する。なお、これらの設定値は、各生成部（４２１〜４２５）により適宜参照される。
【０１１９】
すなわちず１７〜図１９の設定は、出力フィルタを設定するフィルタ設定処理の一例を示すものである。
【０１２０】
図１７〜図１９の説明を終了し、図７の説明に戻る。
【０１２１】
ステップＳ７０２において、プログラム開発装置１０１は、ドキュメントテーマ管理部４３５を用いて、画面仕様ドキュメント４４３のデザインに用いると指定されたテーマが組込テーマであるか否かを判定し、組込テーマの場合はステップＳ７０３に進み、組込テーマでない場合はステップＳ７０４に進む。「組込テーマ」とは、Ｗｅｂアプリケーション開発ツールに最初から組み込まれているテーマであり、一方、開発者が新たに作成したテーマは「ユーザ作成テーマ」と呼ぶ。
【０１２２】
ステップＳ７０３において、プログラム開発装置１０１は、ドキュメントテーマ管理部４３５を用いて、組込デザイン情報４３６から指定されたテーマを取得する。
【０１２３】
ステップＳ７０４において、プログラム開発装置１０１は、ドキュメントテーマ管理部４３５を用いて、ユーザ作成デザイン情報４３７から指定されたテーマを取得する。
【０１２４】
レイアウト構成部４２６は、画面仕様ドキュメント４４３のデザインに取得したテーマを反映する。
【０１２５】
ステップＳ７０５において、プログラム開発装置１０１は、言語別ドキュメント置換処理部４３１を用いて、ドキュメントリソースファイル４１２から、指定された言語のドキュメントリソースファイルを取得する。ドキュメントリソースファイル４１２は、言語ごとにファイルが分かれており、ファイル名は「ＤｏｃｕｍｅｎｔＲｅｓｏｕｒｃｅｓ＿｛言語ＩＤ｝．ｃｏｎｆ」のようになっている。
【０１２６】
ステップＳ７０６において、プログラム開発装置１０１は、指定された言語の数だけ、ステップＳ７０７からステップＳ７１６までの処理を繰り返す。
【０１２７】
ステップＳ７０７において、プログラム開発装置１０１は、リポジトリ定義解析部４２０を用いて、指定された言語のアプリケーションリソースファイル４１１及びドキュメントリソースファイル４１２の解析を行う。
【０１２８】
ステップＳ７０８において、プログラム開発装置１０１は、言語別ドキュメント置換処理部４３１を用いて、ステップＳ７０７にて解析したリソース（文言）を指定言語のリソース（文言）に置き換える。
【０１２９】
ステップＳ７０９において、プログラム開発装置１０１は、所定のディレクトリにヘッダ・フッタファイル４１３の有無を判定する。有る場合はステップＳ７１０に進み、無い場合はステップＳ７１１に進む。
【０１３０】
ステップＳ７１０において、プログラム開発装置１０１は、ヘッダ・フッタ生成部４２９及び言語別ドキュメント置換処理部４３１を用いて、指定言語に対応するヘッダ表示部１５０７およびフッタ表示部１５０８を生成する。ここでいうヘッダ／フッタとは、例えば、ＪＳＰで記述できるものである。ヘッダ部はヘッダ表示部１５０７に加えて例えば企業ロゴなどを表示するような部分である。また、フッタ部はフッタ表示部１５０８に加えて例えば、コピーライトを表示するような部分である。
【０１３１】
ステップＳ７１１において、プログラム開発装置１０１は、検索機能生成部４２５を用いて、検索情報を生成する。この処理については、図１０にて詳細を説明する。
【０１３２】
ステップＳ７１２において、プログラム開発装置１０１は、画面一覧生成部４２１を用いて、画面一覧情報を生成する。この処理については、図１１にて詳細を説明する。
【０１３３】
ステップＳ７１３において、プログラム開発装置１０１は、入出力定義の数だけ、ステップＳ７１４の処理を繰り返す。
【０１３４】
ステップＳ７１４において、プログラム開発装置１０１は、入出力定義毎にドキュメント出力処理を行う。この処理については、図８にて詳細を説明する。ステップＳ７１４は、ドキュメント生成処理の一例を示すステップであり、フィルタ設定処理によって設定された出力フィルタと入出力定義に従って、フィルタされた画面に関する仕様を含むドキュメントを生成するステップである。
【０１３５】
なお、このフィルタされたドキュメントがリンク情報によって表示されるため、前述したステップＳ５０８の処理は、ドキュメント生成処理により生成されたフィルタされた画面に関する仕様を含むドキュメントを表示させるべく、対応する画面に当該ドキュメントのリンク情報を設定するステップと言い換えることも可能である。
【０１３６】
ステップＳ７１５において、プログラム開発装置１０１は、所定のディレクトリに表紙ファイル４１０の有無を判定する。有る場合はステップＳ７１６に進み、無い場合はステップＳ７１７に進む。
【０１３７】
ステップＳ７１６において、プログラム開発装置１０１は、表紙生成部４２８及び言語別ドキュメント置換処理部４３１を用いて、指定言語に対応する画面仕様ドキュメント表紙１６００を生成する。
【０１３８】
以上で、図７の説明を終了する。
【０１３９】
図８は、ドキュメント出力のフローチャートの一例を示す図である。
【０１４０】
ステップＳ８０１において、プログラム開発装置１０１は、当該入出力定義４０３のＮＯＤＯＣ定義１４２０において「ＮＯＤＯＣ」（＝出力しない）の指定があるか否かを判定する。指定が無い（＝出力する）場合はステップＳ８０２に進み、指定が有る（＝出力しない）場合は図８のフローチャートを終了する。つまり、「ＮＯＤＯＣ」の指定がある入出力定義４０３については、画面仕様ドキュメント４４３を生成しない。
【０１４１】
ステップＳ８０２において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力タイプフィルタ１７１０において、当該入出力定義４０３が出力対象として設定されているか否かを判定する。出力対象として設定されている場合はステップＳ８０３に進み、出力対象として設定されていない場合は図８のフローチャートを終了する。つまり、出力対象として設定されていない入出力タイプ１４０２の入出力定義４０３については、画面仕様ドキュメント４４３を生成しない。
【０１４２】
ステップＳ８０３において、プログラム開発装置１０１は、ステップＳ７１２にて生成した画面一覧情報を用いて、画面仕様ドキュメント４４３に画面一覧表示部１５０２を出力する。
【０１４３】
ステップＳ８０４において、プログラム開発装置１０１は、画面仕様ドキュメント４４３に画面仕様表示部１５０３を出力するか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリア出力設定４３３の画面仕様出力設定１９１１の設定値「出力する」「出力しない」によって判定する。出力する場合はステップＳ８０５に進み、出力しない場合はステップＳ８０８に進む。
【０１４４】
ステップＳ８０５において、プログラム開発装置１０１は、画面仕様表示部１５０３の表示サイズが設定されているか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリアサイズ設定４３４の画面仕様サイズ設定１９２１の設定値の有無によって判定する。設定されている場合はステップＳ８０６に進み、設定されていない場合はステップＳ８０７に進む。
【０１４５】
ステップＳ８０６において、プログラム開発装置１０１は、ステップＳ８０５の判定に用いた表示サイズを画面仕様表示部１５０３の表示サイズとして指定する。
【０１４６】
ステップＳ８０７において、プログラム開発装置１０１は、画面仕様生成部４２２を用いて、画面仕様ドキュメント４４３に画面仕様表示部１５０３を生成・出力する。この処理については、図１２にて詳細を説明する。
【０１４７】
ステップＳ８０８において、プログラム開発装置１０１は、画面仕様ドキュメント４４３に画面イメージ表示部１５０４を出力するか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリア出力設定４３３の画面ＨＴＭＬ出力設定１９１２の設定値「出力する」「出力しない」によって判定する。出力する場合はステップＳ８０９に進み、出力しない場合はステップＳ８１２に進む。
【０１４８】
ステップＳ８０９において、プログラム開発装置１０１は、画面イメージ表示部１５０４の表示サイズが設定されているか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリアサイズ設定４３４の画面ＨＴＭＬ出力サイズ設定１９２２の設定値の有無によって判定する。設定されている場合はステップＳ８１０に進み、設定されていない場合はステップＳ８１１に進む。
【０１４９】
ステップＳ８１０において、プログラム開発装置１０１は、ステップＳ８０９の判定に用いた表示サイズを画面イメージ表示部１５０４の表示サイズとして指定する。
【０１５０】
ステップＳ８１１において、プログラム開発装置１０１は、画面イメージ生成部４２３を用いて、画面仕様ドキュメント４４３に画面イメージ表示部１５０４を生成・出力する。画面イメージ表示部１５０４には、画面ＨＴＭＬデータ４０８を用いることで、画面イメージを表示する。なお、本実施形態においては、画面ＨＴＭＬデータ４０８のように、ＨＴＭＬを用いて、画面仕様ドキュメント４４３に含まれる画面イメージを描画するとしたが、これに限定するものではなく、ＪＳＰ等他の言語を用いて画面イメージを描画してもよいし、レイアウトエディタを用いて生成された画面レイアウトを画像ファイルとして記憶し、その画像ファイルを用いる等、他の描画方法を用いてもよい。
【０１５１】
ステップＳ８１２において、プログラム開発装置１０１は、画面仕様ドキュメント４４３に画面項目仕様表示部１５０５を出力するか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリア出力設定４３３の画面項目仕様出力設定１９１３の設定値「出力する」「出力しない」によって判定する。出力する場合はステップＳ８１３に進み、出力しない場合はステップＳ８１６に進む。
【０１５２】
ステップＳ８１３において、プログラム開発装置１０１は、画面項目仕様表示部１５０５の表示サイズが設定されているか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリアサイズ設定４３４の画面項目仕様サイズ設定１９２３の設定値の有無によって判定する。設定されている場合はステップＳ８１４に進み、設定されていない場合はステップＳ８１５に進む。
【０１５３】
ステップＳ８１４において、プログラム開発装置１０１は、ステップＳ８１３の判定に用いた表示サイズを画面項目仕様表示部１５０５の表示サイズとして指定する。
【０１５４】
ステップＳ８１５において、プログラム開発装置１０１は、画面項目仕様生成部４２４を用いて、画面仕様ドキュメント４４３に画面項目仕様表示部１５０５を生成・出力する。この処理については、図１３にて詳細を説明する。
【０１５５】
ステップＳ８１６において、プログラム開発装置１０１は、関連文書・ヘッダ・フッタ等出力処理を行う。この処理については、図９にて詳細を説明する。
【０１５６】
以上で、図８の説明を終了する。
【０１５７】
図９は、関連文書・ヘッダ・フッタ等出力処理のフローチャートの一例を示す図である。
【０１５８】
ステップＳ９０１において、プログラム開発装置１０１は、所定のディレクトリに関連文書４１４の有無を判定する。有る場合はステップＳ９０２に進み、無い場合はステップＳ９０６に進む。所定のディレクトリとは、画面仕様ドキュメントの生成ごとに用意されている格納場所で、開発者が画面仕様ドキュメントに添付したい文書を格納する。後述するステップＳ９０５で、この格納されている文書を取得して、リンクとして画面仕様ドキュメントに埋め込むことが可能となる。
【０１５９】
ステップＳ９０２において、プログラム開発装置１０１は、画面仕様ドキュメント４４３に関連文書表示部１５０６を出力するか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリア出力設定４３３の関連文書出力設定１９１５の設定値「出力する」「出力しない」によって判定する。出力する場合はステップＳ９０３に進み、出力しない場合はステップＳ９０５に進む。
【０１６０】
ステップＳ９０３において、プログラム開発装置１０１は、関連文書表示部１５０６の表示サイズが設定されているか否かを判定する。具体的には、ドキュメントエリア設定管理部４３２により管理されているエリアサイズ設定４３４の関連文書サイズ設定１９２５の設定値の有無によって判定する。設定されている場合はステップＳ９０４に進み、設定されていない場合はステップＳ９０５に進む。
【０１６１】
ステップＳ９０４において、プログラム開発装置１０１は、ステップＳ９０３の判定に用いた表示サイズを関連文書表示部１５０６の表示サイズとして指定する。
【０１６２】
ステップＳ９０５において、プログラム開発装置１０１は、関連文書生成部４２７を用いて、画面仕様ドキュメント４４３に関連文書表示部１５０６を生成・出力する。
【０１６３】
ステップＳ９０６において、プログラム開発装置１０１は、ステップＳ７１０にて生成されたヘッダ・フッタの有無を判定する。有る場合はステップＳ９０７に進み、無い場合はステップＳ９０８に進む。
【０１６４】
ステップＳ９０７において、プログラム開発装置１０１は、ヘッダ・フッタ生成部４２９を用いて、画面仕様ドキュメント４４３にヘッダ表示部１５０７及び／又はフッタ表示部１５０８を出力する。
【０１６５】
ステップＳ９０８において、プログラム開発装置１０１は、検索機能生成部４２５を用いて、画面仕様ドキュメント４４３に検索キーワード受付部１５０１を出力する。
【０１６６】
以上で、図９の説明を終了する。
【０１６７】
図１０は、検索情報生成のフローチャートの一例を示す図である。
【０１６８】
ステップＳ１００１において、プログラム開発装置１０１は、入出力定義の数だけ、ステップＳ１００２〜ステップＳ１００４の処理を繰り返す。
【０１６９】
ステップＳ１００２において、プログラム開発装置１０１は、当該入出力定義４０３のＮＯＤＯＣ定義１４２０において「ＮＯＤＯＣ」（＝出力しない）の指定があるか否かを判定する。指定が無い（＝出力する）場合はステップＳ１００３に進み、指定が有る（＝出力しない）場合はステップＳ１００５に進む。つまり、「ＮＯＤＯＣ」の指定がある入出力定義４０３については、検索情報を生成しない。
【０１７０】
ステップＳ１００３において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力タイプフィルタ１７１０において、当該入出力定義４０３が出力対象として設定されているか否かを判定する。出力対象として設定されている場合はステップＳ１００４に進み、出力対象として設定されていない場合はステップＳ１００５に進む。つまり、出力対象として設定されていない入出力タイプ１４０２の入出力定義４０３については、検索情報を生成しない。
【０１７１】
ステップＳ１００４において、プログラム開発装置１０１は、検索情報を生成する。具体的には、検索キーワード受付部１５０１の検索機能によって、当該入出力定義４０３の設定値が検索できるよう、当該設定値を検索情報として外部メモリ２１１に記憶する。
【０１７２】
以上で、図１０の説明を終了する。
【０１７３】
図１１は、画面一覧情報生成のフローチャートの一例を示す図である。
【０１７４】
ステップＳ１１０１において、プログラム開発装置１０１は、入出力定義の数だけ、ステップＳ１１０２〜ステップＳ１１０４の処理を繰り返す。
【０１７５】
ステップＳ１１０２において、プログラム開発装置１０１は、当該入出力定義４０３のＮＯＤＯＣ定義１４２０において「ＮＯＤＯＣ」（＝出力しない）の指定があるか否かを判定する。指定が無い（＝出力する）場合はステップＳ１１０３に進み、指定が有る（＝出力しない）場合はステップＳ１１０５に進む。つまり、「ＮＯＤＯＣ」の指定がある入出力定義４０３については、画面一覧情報を生成しない。
【０１７６】
ステップＳ１１０３において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力タイプフィルタ１７１０において、当該入出力定義４０３が出力対象として設定されているか否かを判定する。出力対象として設定されている場合はステップＳ１１０４に進み、出力対象として設定されていない場合はステップＳ１１０５に進む。つまり、出力対象として設定されていない入出力タイプ１４０２の入出力定義４０３については、画面一覧情報を生成しない。例えば、図１７の入出力タイプフィルタ１７１０では、「ＩＯ」「ＭＥＮＵ」「ＤＩＡＬＯＧ」「ＭＡＴＲＩＸ」「ＭＯＢＩＬＥ」が出力対象として選択されており、図１４の入出力定義画面１４００において入出力タイプ１４０２＝「ＩＯ」と設定されているため、当該入出力定義４０３について画面一覧情報が生成され、図１５の画面一覧表示部１５０２に「ユーザマスタ・一覧」というメニューが表示されている。
【０１７７】
ステップＳ１１０４において、プログラム開発装置１０１は、画面一覧情報を生成する。具体的には、当該入出力定義４０３の名前１４０１を取得し、ステップＳ８０３（図８）にて画面一覧表示部１５０２（図１５）を出力するための画面情報（例：ＨＴＭＬ）を生成し、外部メモリ２１１に記憶する。なお、この画面情報には、画面一覧表示部１５０２として表示しユーザによって指示を受け付けたときに、１５０３〜１５０６の表示内容を更新させるためのリンク情報を組み込んでおく。
【０１７８】
以上で、図１１の説明を終了する。
【０１７９】
図１２は、画面仕様表示部の生成・出力のフローチャートの一例を示す図である。
【０１８０】
ステップＳ１２０１において、プログラム開発装置１０１は、当該入出力定義４０３の入出力（定義）の属性（例：「コード」「名前」「入出力タイプ」「対象データモデル」等）の数だけ、ステップＳ１２０２〜ステップＳ１２０３の処理を繰り返す。
【０１８１】
ステップＳ１２０２において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力属性フィルタ１７２０において、当該入出力定義４０３に設定されている入出力（定義）の属性が出力対象として設定されているか否かを判定する。出力対象として設定されている場合はステップＳ１２０３に進み、出力対象として設定されていない場合はステップＳ１２０４に進む。つまり、出力対象として設定されていない入出力属性については、画面仕様情報を生成しない。例えば、図１７の入出力属性フィルタ１７２０では、「コード」「名前」「仕様」が出力対象として選択されているため、画面仕様表示部１５０３（図１５）には、属性が「コード」「名前」「仕様」である定義について表示されている。
【０１８２】
ステップＳ１２０３において、プログラム開発装置１０１は、画面仕様生成部４２２を用いて、画面仕様情報を生成する。具体的には、当該入出力定義４０３の属性の値を取得し、ステップＳ１２０５にて画面仕様表示部１５０３（図１５）を出力するための画面情報（例；ＨＴＭＬファイル）を生成し、外部メモリ２１１に記憶する。
【０１８３】
ステップＳ１２０５において、プログラム開発装置１０１は、画面仕様生成部４２２及びステップＳ１２０３にて生成した画面情報を用いて、画面仕様表示部１５０３を出力する。
【０１８４】
以上で、図１２の説明を終了する。
【０１８５】
図１３は、画面項目仕様表示部の生成・出力のフローチャートの一例を示す図である。
【０１８６】
ステップＳ１３０１において、プログラム開発装置１０１は、当該入出力定義４０３に設定されている入出力項目の数だけ、ステップＳ１３０２〜ステップＳ１３０９の処理を繰り返す。
【０１８７】
ステップＳ１３０２において、プログラム開発装置１０１は、当該入出力項目のＮＯＤＯＣ定義１４２０において「ＮＯＤＯＣ」（＝出力しない）の指定があるか否かを判定する。指定が無い（＝出力する）場合はステップＳ１３０３に進み、指定が有る（＝出力しない）場合はステップＳ１３１０に進む。つまり、「ＮＯＤＯＣ」の指定がある入出力項目については、画面一覧情報を生成しない。
【０１８８】
ステップＳ１３０３において、プログラム開発装置１０１は、当該入出力項目が非表示項目（例：ｈｉｄｄｅｎ項目など、Ｗｅｂアプリケーション画面自体に非表示の画面項目）か否かを判定する。非表示項目である場合はステップＳ１３０４に進み、非表示項目でない（つまり、通常の画面項目）場合はステップＳ１３０５に進む。つまり、出力対象として設定されていない入出力属性については、画面仕様情報を生成しない。
【０１８９】
ステップＳ１３０４において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力項目タイプフィルタ１８１０の非表示項目出力１８１２において、「出力する」と設定されているか「出力しない」と設定されているかを判定する。「出力する」と設定されている場合はステップＳ１３０５に進み、「出力しない」として設定されている場合はステップＳ１３１０に進む。つまり、入出力項目のうち非表示項目の仕様は、入出力項目タイプフィルタ１８１０の非表示項目出力１８１２において「出力する」として設定されていない限り、画面仕様ドキュメント４４３には出力しない。
【０１９０】
ステップＳ１３０５において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力項目タイプフィルタ１８１０の入出力項目タイプフィルタ１８１１において、出力対象として選択されているか否かを判定する。出力対象として設定されている場合はステップＳ１３０６に進み、出力対象として選択されていない場合はステップＳ１３１０に進む。つまり、入出力項目定義１４１０のうち、出力対象として設定されていない項目タイプ１４１１については、画面項目仕様情報を生成しない。例えば、図１８の入出力項目タイプフィルタ１８１０では、「入力」「入出力」「出力」「アクション」「グループ」が出力対象として選択されているため、画面項目仕様表示部１５０５（図１５）には、入出力項目タイプが「入力」「入出力」「出力」「アクション」「グループ」に該当する入出力項目について表示されている。
【０１９１】
ステップＳ１３０６において、プログラム開発装置１０１は、当該入出力項目の属性（例：項目タイプ、項目コード、名前等）の数だけ、ステップＳ１３０７〜ステップＳ１３０８の処理を繰り返す。
【０１９２】
ステップＳ１３０７において、プログラム開発装置１０１は、出力フィルタ管理部４３０により管理されている入出力項目属性フィルタ１８２０において、出力対象として選択されているか否かを判定する。出力対象として設定されている場合はステップＳ１３０８に進み、出力対象として選択されていない場合はステップＳ１３０９に進む。つまり、入出力項目定義１４１０のうち、出力対象として設定されていない入出力項目属性については、画面項目仕様情報を生成しない。例えば、図１８の入出力項目属性フィルタ１８２０では、「項目タイプ」「名前」「必須」「桁数」「仕様」が出力対象として選択されているため、画面項目仕様表示部１５０５（図１５）には、属性が「項目タイプ」「名前」「必須」「桁数」「仕様」である定義について表示されている。
【０１９３】
ステップＳ１３０８において、プログラム開発装置１０１は、画面項目仕様生成部４２４を用いて、当該入出力項目の当該入出力項目属性について、画面項目仕様情報を生成する。具体的には、当該入出力項目の当該入出力項目属性の値を取得し、ステップＳ１３１１にて画面項目仕様表示部１５０５（図１５）を出力するための画面情報（例；ＨＴＭＬファイル）を生成し、外部メモリ２１１に記憶する。
【０１９４】
ステップＳ１３１１において、プログラム開発装置１０１は、画面項目仕様生成部４２４及びステップＳ１３０８にて生成した画面項目仕様情報を用いて、画面項目仕様表示部１５０５を出力する。
【０１９５】
以上で、図１３の説明を終了する。
【０１９６】
以上、本実施形態によれば、Ｗｅｂアプリケーションのプログラムの生成に用いられる入出力定義にかかるドキュメントを生成し、Ｗｅｂアプリケーションで用いる画面から容易に表示させることができる。
【０１９７】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【０１９８】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【０１９９】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＥＥＰＲＯＭ、シリコンディスク等を用いることが出来る。
【０２００】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２０１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２０２】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２０３】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【０２０４】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０２０５】
１０１  プログラム開発装置
１０２  プログラム開発サーバ
１０３  データベースサーバ
１０４  アプリケーションクライアント
１０５  アプリケーションサーバ
１０６  Ｗｅｂサーバ
１０７  ネットワーク
【図１】
2018181073.tif 000003
【図２】
2018181073.tif 000004
【図３】
2018181073.tif 000005
【図４】
2018181073.tif 000006
【図５】
2018181073.tif 000007
【図６】
2018181073.tif 000008
【図７】
2018181073.tif 000009
【図８】
2018181073.tif 000010
【図９】
2018181073.tif 000011
【図１０】
2018181073.tif 000012
【図１１】
2018181073.tif 000013
【図１２】
2018181073.tif 000014
【図１３】
2018181073.tif 000015
【図１４】
2018181073.tif 000016
【図１５】
2018181073.tif 000017
【図１６】
2018181073.tif 000018
【図１７】
2018181073.tif 000019
【図１８】
2018181073.tif 000020
【図１９】
2018181073.tif 000021
【図２０】
2018181073.tif 000022
【図２１】
2018181073.tif 000023
【図２２】
2018181073.tif 000024
【図２３】
2018181073.tif 000025