JP2004295512A - Webアプリケーション開発支援装置及びその方法 - Google Patents
Webアプリケーション開発支援装置及びその方法 Download PDFInfo
- Publication number
- JP2004295512A JP2004295512A JP2003087453A JP2003087453A JP2004295512A JP 2004295512 A JP2004295512 A JP 2004295512A JP 2003087453 A JP2003087453 A JP 2003087453A JP 2003087453 A JP2003087453 A JP 2003087453A JP 2004295512 A JP2004295512 A JP 2004295512A
- Authority
- JP
- Japan
- Prior art keywords
- layer component
- display layer
- data
- layout
- display
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】業務層コンポーネントが出力するデータを自動生成することで表示層コンポーネントの動作確認を行い、表示層コンポーネントの実装にかかる工数を削減すること。
【解決手段】表示層コンポーネントにより動的に表示する複数の擬似データが予め記憶された擬似データテーブルと、クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する要求受付手段と、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析するレイアウト部分解析手段と、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行うデータ生成手段とを備える。
【選択図】 図2
【解決手段】表示層コンポーネントにより動的に表示する複数の擬似データが予め記憶された擬似データテーブルと、クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する要求受付手段と、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析するレイアウト部分解析手段と、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行うデータ生成手段とを備える。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、Webアプリケーションシステムが表示層コンポーネントと業務層コンポーネントによって構成され、クライアントからの要求を受け付けて処理結果を返送するWebアプリケーションの開発支援装置及び方法に関するものである。
【0002】
【従来の技術】
近年、インターネット、イントラネット上のWebアプリケーションシステムでサーバサイドの技術を利用したシステムが普及してきているが、そのシステム開発サイクルはますます短くなってきている。特に、業務系のシステムや業務サービスをWeb上で公開する場合、その開発サイクルを短縮することは顧客ニーズとして強い要求事項であり、Webページのデザインや情報を定期的に変更するだけでなく、そのシステム上で新規サービスを早期に公開したり、サービスを迅速に拡張したりするなど、短期間に開発を行うことが求められている。それらの顧客ニーズに対応し、Webアプリケーションシステムの開発サイクルに対応するためにも、その開発作業を軽減させ、かつ、スピードアップを図る必要がある。
【0003】
開発作業を軽減させ、かつスピードアップを図るために、Webアプリケーションシステムを表示層コンポーネントと業務層コンポーネントに分割した開発が進められてきている。表示層コンポーネントとは、Webアプリケーションの表示レイアウト部分に関する機能を持ったコンポーネントである。業務層コンポーネントとは、例えばユーザを認証する処理や、データベースにアクセスしてデータを取得する処理などである。このように分割して開発することにより、表示層コンポーネントと業務層コンポーネントをそれぞれ並列に開発でき、開発作業のスピードアップが図れる。さらにコンポーネント変更時の影響範囲の局所化が図れ開発作業を軽減できる。また、各コンポーネントの依存度が低いため、再利用性が高まるという利点もある。
表示層コンポーネントは、動的レイアウトと静的レイアウトに分けられる。動的レイアウトは、業務層コンポーネントの処理結果に応じてレイアウトが変化して、動的なレイアウトをHTMLとして生成するロジックであり、業務層コンポーネントの処理結果を入力データとしてレイアウトを決定する。
静的レイアウトは業務層コンポーネントの処理結果に応じてレイアウトが変化しない、静的なレイアウトをHTMLとして生成するロジックである。
【0004】
一方、表示層コンポーネントと業務層コンポーネントを分割して開発した際は、実装後にそれぞれを独立して動作確認をする必要がある。
表示層コンポーネントの動作確認をするには、業務層コンポーネントのスタブを作成していた。
また、表示層コンポーネントへの入力データを予め保存しておき、動作確認時に取り出して表示層コンポーネントの動的レイアウトへの入力とすることで、表示層コンポーネントの動作確認を行う方法を本願出願人が提案している(特許文献1参照)。
【0005】
【特許文献1】
特願2001−371432号
また、業務層コンポーネントができるまでは、動的レイアウトの代わりに、固定のHTMLを埋め込むことで表示層コンポーネントの動作確認を行う方法を本願出願人が提案している(特許文献2参照)。
【0006】
【特許文献2】
特願2002−105208号
【0007】
【発明が解決しようとする課題】
しかしながら、業務層コンポーネントのスタブ作成には大きな工数がかかる。また、表示層・業務層のコンポーネント間の仕様に変更があり、再度動作確認を行う場合、業務層コンポーネントのスタブを変更する工数が必要である。加えて業務層コンポーネントのスタブもソース管理の対象になるので、管理工数が増大するという問題もある。
また、特願2001−371432号に記載の技術では、前もって動作確認対象の表示層コンポーネントへの入力データを登録しておく必要がある。そのため、入力データを登録する工数がかかる。また、入力データ変更の際も、変更に対する工数がかかる。
また、特願2002−105208号に記載の技術では、動的レイアウト部分の処理を行わず、静的レイアウトと置き換えているだけなので、動的レイアウトの動作を確かめられないという問題がある。
【0008】
本発明の目的は、上記課題を解決するためのもので、業務層コンポーネントが出力するデータを自動生成することで表示層コンポーネントの動作確認を行い、表示層コンポーネントの実装にかかる工数を削減することができるWebアプリケーション開発支援装置及びその方法を提供することにある。
【0009】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るWebアプリケーション開発支援装置は、表示層コンポーネントにより動的に表示する複数の擬似データが予め記憶された擬似データテーブルと、前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する要求受付手段と、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析するレイアウト部分解析手段と、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行うデータ生成手段とを備えることを特徴とする。
【0010】
また、本発明に係るWebアプリケーション開発支援方法は、表示層コンポーネントにより動的に表示する複数の擬似データを擬似データテーブルに予め記憶させる第1のステップと、前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する第2のステップと、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析する第3のステップと、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行う第4のステップとを備えることを特徴とする。
【0011】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を具体的に説明する。
図1は、本発明を適用するWebアプリケーションの構成例を示す構成図である。
まず、図1に示したWebアプリケーションの構成の一例において、ユーザ101がブラウザ102を操作してから、処理結果を表示するまでの流れを説明する。
ユーザ101は、ブラウザ102を表示し、そのブラウザ102から送信されたURLへアクセスする。そのとき、ユーザ101によって入力されたデータやブラウザ102の情報など、クライアント側103にある情報はサーバ104に用意されているWebサーバ105への要求として送信される。
【0012】
ブラウザ102からの要求を送信したWebサーバ105は、Webアプリケーション107を実行する環境が整っているアプリケーションサーバ106を使用して、Webアプリケーション107を実行するための窓口となる表示層コンポーネント108を実行する。
アプリケーションサーバ106により実行された表示層コンポーネント108は、ブラウザ102から送信されたデータをアプリケーションサーバ106から取得して、業務層コンポーネント111を実行する。
ここで、業務層コンポーネント111とは、例えばユーザ101を認証する処理や、データベース112にアクセスしてデータを取得する処理や、すでに実装されたC#(オブジェクト指向の言語)のクラスなどの実行可能なコンポーネント113を呼び出したりして開発対象のWebアプリケーション107に実装された顧客の要求を満たす一連の処理をするコンポーネントのことを指す。
【0013】
表示層コンポーネント108を構成する動的レイアウト110は、業務層コンポーネント111から処理結果を受け取ってHTML形式のデータを生成し、静的レイアウト109のHTML形式のデータと合わせて、Webサーバ105経由でブラウザ102に送信する。
このHTML形式のデータは業務層コンポーネント111により処理された結果を含んでいる。例えば、ユーザIDを使用してデータベース112から取得したユーザ名や実行可能なコンポーネント113で行った認証結果、検索条件に合った検索結果の一覧などである。
本実施形態では、それらの情報の保持には、ブラウザ102から送信されてくるデータと同じ方法を使うようにするために、動的なデータをキーワードとそのキーワードに対応するデータというように対にして保持することにしている。
ブラウザ102は、受信したHTML形式のデータをクライアント102の表示画面に表示する。
以上でユーザ101が処理を要求し、処理結果をブラウザ102に表示するまでの一連の処理が終了する。
【0014】
図2は、本発明に係るWebアプリケーション開発支援装置の実施の形態を示す図である。
本発明に係るWebアプリケーション開発支援装置202は、Webアプリケーション107内に実装され、表示層コンポーネント108からの要求を受け付けて要求を判別する要求受付部203、要求受付部203の判別結果を解析するレイアウト部分解析部204、解析データ207と擬似データテーブル206の情報を突き合わせて設定データ208を生成するデータ生成装置205から構成される。
以下、図2を基に、開発者201が表示層コンポーネント108の動作を確認する手順と各部分の機能を説明する。
まず、開発者201がブラウザ102に動作確認対象の表示層コンポーネントへの要求をサーバ104に送信する。要求された情報はWebサーバ105、表示層コンポーネント108を経て、要求受付部203へ送信される。
表示層コンポーネント108は、Webアプリケーション107の表示に関する機能を持ったコンポーネントである。表示層コンポーネント108は動的レイアウト110と静的レイアウト109から構成される。
動的レイアウト110は、業務層コンポーネントの処理結果に応じてレイアウトが変化し、動的なレイアウトをHTMLとして生成するロジックである。
静的レイアウト109は、業務層コンポーネントの処理結果に応じてレイアウトが変化しない、静的なレイアウトをHTMLとして生成するロジックである。
【0015】
要求を受けた要求受付部203は、要求を解析して、要求先の表示層コンポーネント108の静的レイアウト109を要求判別結果として取得し、要求判別結果をレイアウト部分解析部204へ送信する。
レイアウト部分解析部204は、要求判別結果をもとにして、要求先の表示層コンポーネント108の静的レイアウト109を解析し、解析データ207をデータ生成部205へ送信する。
データ生成部205は、解析データ207と、擬似データテーブル206の情報を突き合わせて、設定データ208を生成し、動的レイアウト110へ送信する。
擬似データテーブル206は、表示層コンポーネント108の動作確認のためのブラウザ102に表示させる擬似的な文字列データであり、開発者201が前もって記憶装置に登録しておいたものである。
【0016】
動的レイアウト110は、設定データ208を取得し、動的なレイアウト部分をHTMLとして生成し、静的レイアウト109と合わせてWebサーバ105へ1つのHTMLファイルとして送信する。
Webサーバ105は、表示層コンポーネント108から取得したHTMLファイルをクライアント103のブラウザ102へ送信する。
開発者201は、表示確認対象画面の表示結果をブラウザ102で確かめ、表示層コンポーネント108の動作確認を行う。
【0017】
図3は、レイアウト部分解析部204がデータ生成部205へ送信する解析データ207の情報の構造例を示す図である。
型301は、静的レイアウト109から読み取った、動的に表示するデータの型である。キー302は動的に表示するデータを識別するためのキーワードである。
【0018】
図4は、擬似データテーブル206の構造例である。
型401は、静的レイアウト109から読み取られる、動的に表示するデータの型である。擬似データ402は、動作確認の際に、表示したい情報を型にしたがって開発者201が予め登録する文字列である。
【0019】
図5は、データ生成装置205から動的レイアウト110へ送信する設定データ208の構造例である。図3の解析データと図4の擬似データテーブルを突き合わせて生成される。キー501は動的に表示するデータを識別するためのキーワードである。キー501は図3のキー302と対応する。擬似データ502は動作確認の際に、表示したい情報を型に従って開発者201が予め登録する文字列である。擬似データ502は図4の擬似データ402と対応する。
【0020】
図6は、本発明を適用した場合にWebアプリケーションの表示層コンポーネントを開発する際のフロー図である。
本発明を適用した表示層コンポーネント開発を図6に従って説明する。
まず、表示層コンポーネント108の動作確認のための擬似データ402を、レイアウトの型401に応じて擬似データテーブル206に設定する(ステップ601)。
次に、表示層コンポーネント108の動作確認を行うため、本発明のWebアプリケーション開発支援装置202をWebアプリケーションの実行環境に配置する(ステップ602)。
次に、静的レイアウトの実装、編集作業を行う(ステップ603)。また、動的レイアウトの実装、編集作業を行う(ステップ604)。
次に、ステップ603、ステップ604で実装・編集した表示層コンポーネント108へアクセスして動作確認を行う(ステップ605)。
最後に、動作確認対象画面の表示層コンポーネント108の動作確認した結果が正しければ、対象画面の実装を終了する。動作確認に問題があれば、表示層コンポーネント108の修正を行う(ステップ606)。
【0021】
次に、実際のWebアプリケーションを例に挙げて、本発明を適用した表示層コンポーネントの動作確認の例について説明する。
図7は、Webアプリケーションの画面の一例である。以下、図7の画面をサンプル画面とする。静的レイアウトのファイル名をSample.aspxとする。
例示するサンプル画面は、検索条件704を選んで、再検索ボタン703を押すと、データベースから検索結果を取得し、検索ヒット件数702と共に結果一覧701を表示するものである。
検索ヒット件数702、結果一覧701は業務層コンポーネントの処理結果である動的なデータが表示される動的レイアウト部分である。
【0022】
以下、サンプル画面の表示層コンポーネントを開発する場合の手順について、図6のフローに従って説明する。
まず、ステップ601では、擬似データテーブル206を作成する。図8は作成された擬似データテーブルの例であり、801は型がDataGridの場合の擬似データを示している。802は型がLabelの場合の擬似データを示している。
次に、ステップ602では、本発明に係るwebアプリケーション開発支援装置202をWebアプリケーション107内に配置する。
【0023】
次に、ステップ603では、静的レイアウト109を実装する。
図9は、サンプル画面の静的レイアウト109のソースコード実装例である。動的なデータの表示が必要な部分は、datagrid901とlabel902である。
次に、ステップ604では、動的レイアウト110を実装する。
図10はサンプル画面の動的レイアウトのソースコード実装例である。
1001のOutは業務処理結果が格納されているオブジェクトであり、1002はヒット件数の表示設定を示す部分である。1003は結果一覧の表示設定を示す部分である。
【0024】
次に、ステップ605では、サンプル画面の表示層コンポーネント108の動作確認を行う。
開発者201がブラウザ102によってサンプル画面に対する要求をサーバ104に送信する。要求された情報はWebサーバ105、表示層コンポーネント108を経て、要求受付部203へ送信される。
要求を受けた要求受付部203は、要求を解析し、要求先のSample.aspxファイルの内容を要求判別結果として取得し、レイアウト部分解析部204へ送信する。
レイアウト部分解析部204は、要求判別結果をもとにして、サンプル画面を解析し、解析データ206をデータ生成部204へ送信する。
【0025】
図11は、サンプル画面の静的レイアウト109の解析結果207の例であり、1101は図9の901に対応した解析結果である。1102は図9の902に対応した解析結果である。
データ生成部205は、解析データ207と、図8の擬似データテーブル206の情報を突き合わせて、設定データ208を生成し、動的レイアウト110へ送信する。
【0026】
図12は、図11の解析データ207と図8の擬似データテーブル205を突き合わせて生成された、サンプル画面に設定するデータ208の例を示すものであり、1201は図8の801と図11の1101を突き合わせて生成されたデータである。1202は図8の802と図11の1102を突き合わせて生成されたデータである。
動的レイアウト110は、設定データ207を取得し、動的なレイアウト部分をHTMLとして生成し、静的レイアウト203と合わせてWebサーバ105へ1つのHTMLファイルとして送信する。
Webサーバ105は表示層コンポーネント108から取得したHTMLファイルをクライアント103のブラウザ102へ送信する。ブラウザはHTMLファイルを解析して、画面表示する。
【0027】
図13は、Webサーバ105の応答を経て、ブラウザ102に表示されたサンプル画面の例である。
1301では、動的レイアウトであるヒット件数として、擬似データの”ラベル文字列”が表示されている。
1302では、動的レイアウトである結果一覧の各セルに、擬似データの”表内文字列”が表示されている。
次に、ステップステップ606では、開発者201は、サンプル画面の表示結果をブラウザ102で確かめ、表示層コンポーネント108の動作確認を完了する。
このように、本発明は動的に表示層コンポーネントの動作確認に必要なデータを生成するように構成したので、業務層コンポーネントのスタブを作成することなく、表示層コンポーネントの動的レイアウトの動作確認ができる。
【0028】
図14は、本発明を適用しない場合に実際にコーディングするスタブである。1401のSetは業務処理結果を格納するオブジェクトである。
本発明を適用しない場合、表示層コンポーネントの個数分だけ、図14のようなスタブを実装しなければならない。しかし、本発明を適用して表示層コンポーネントの開発を行えば、図14の破線1402で囲む部分のコードのコーディング量を削減できる。
【0029】
【発明の効果】
以上説明したように、本発明によれば、動的に表示層コンポーネントの動作確認に必要なデータを生成するように構成したので、表示層コンポーネントの開発において表示層コンポーネントの動作確認を行う際に、業務層コンポーネントのスタブを作成する必要がない。従って、スタブを作成する工数を削減できる。
さらに、スタブの管理にかかる工数も削減できる。また、前もって動作確認対象コンポーネントに対する入力データを用意する必要もない。そして、設定データを動的レイアウトに入力して動的なレイアウト部分を生成することで動的レイアウトの正当性をも確認できるという効果がある。
【図面の簡単な説明】
【図1】本発明を適用するWebアプリケーションの構成例を示す構成図である。
【図2】本発明に係るWebアプリケーション開発支援装置の実施の形態を示す図である。
【図3】レイアウト部分解析部204がデータ生成部205へ送信する解析データ207の情報の構造例を示す図である。
【図4】擬似データテーブル206の構造例である。
【図5】データ生成装置205から動的レイアウト110へ送信する設定データ208の構造例である。
【図6】本発明を適用した場合にWebアプリケーションの表示層コンポーネントを開発する際のフロー図である。
【図7】Webアプリケーションの画面の一例である。
【図8】作成された擬似データテーブルの例であり、
【図9】サンプル画面の静的レイアウト109のソースコード実装例である。
【図10】サンプル画面の動的レイアウトのソースコード実装例である。
【図11】サンプル画面の静的レイアウト109の解析結果207の例であり、
【図12】図11の解析データ207と図8の擬似データテーブル205を突き合わせて生成されたサンプル画面に設定するデータ208の例を示すもので
【図13】Webサーバ105の応答を経てブラウザ102に表示されたサンプル画面の例である。
【図14】本発明を適用しない場合に実際にコーディングするスタブの例を示す図である。
【符号の説明】
101…ユーザ、102…ブラウザ、103…クライアント、104…サーバ、Webサーバ、106…アプリケーションサーバ、107…Webアプリケーション、108…表示層コンポーネント、109…静的レイアウト、110…動的レイアウト、111…業務層コンポーネント、113…コンポーネント、112…データベース、203…要求受付部、204…レイアウト部分解析部、205…データ生成部、206…擬似データテーブル、207…解析データ、208…設定データ。
【発明の属する技術分野】
本発明は、Webアプリケーションシステムが表示層コンポーネントと業務層コンポーネントによって構成され、クライアントからの要求を受け付けて処理結果を返送するWebアプリケーションの開発支援装置及び方法に関するものである。
【0002】
【従来の技術】
近年、インターネット、イントラネット上のWebアプリケーションシステムでサーバサイドの技術を利用したシステムが普及してきているが、そのシステム開発サイクルはますます短くなってきている。特に、業務系のシステムや業務サービスをWeb上で公開する場合、その開発サイクルを短縮することは顧客ニーズとして強い要求事項であり、Webページのデザインや情報を定期的に変更するだけでなく、そのシステム上で新規サービスを早期に公開したり、サービスを迅速に拡張したりするなど、短期間に開発を行うことが求められている。それらの顧客ニーズに対応し、Webアプリケーションシステムの開発サイクルに対応するためにも、その開発作業を軽減させ、かつ、スピードアップを図る必要がある。
【0003】
開発作業を軽減させ、かつスピードアップを図るために、Webアプリケーションシステムを表示層コンポーネントと業務層コンポーネントに分割した開発が進められてきている。表示層コンポーネントとは、Webアプリケーションの表示レイアウト部分に関する機能を持ったコンポーネントである。業務層コンポーネントとは、例えばユーザを認証する処理や、データベースにアクセスしてデータを取得する処理などである。このように分割して開発することにより、表示層コンポーネントと業務層コンポーネントをそれぞれ並列に開発でき、開発作業のスピードアップが図れる。さらにコンポーネント変更時の影響範囲の局所化が図れ開発作業を軽減できる。また、各コンポーネントの依存度が低いため、再利用性が高まるという利点もある。
表示層コンポーネントは、動的レイアウトと静的レイアウトに分けられる。動的レイアウトは、業務層コンポーネントの処理結果に応じてレイアウトが変化して、動的なレイアウトをHTMLとして生成するロジックであり、業務層コンポーネントの処理結果を入力データとしてレイアウトを決定する。
静的レイアウトは業務層コンポーネントの処理結果に応じてレイアウトが変化しない、静的なレイアウトをHTMLとして生成するロジックである。
【0004】
一方、表示層コンポーネントと業務層コンポーネントを分割して開発した際は、実装後にそれぞれを独立して動作確認をする必要がある。
表示層コンポーネントの動作確認をするには、業務層コンポーネントのスタブを作成していた。
また、表示層コンポーネントへの入力データを予め保存しておき、動作確認時に取り出して表示層コンポーネントの動的レイアウトへの入力とすることで、表示層コンポーネントの動作確認を行う方法を本願出願人が提案している(特許文献1参照)。
【0005】
【特許文献1】
特願2001−371432号
また、業務層コンポーネントができるまでは、動的レイアウトの代わりに、固定のHTMLを埋め込むことで表示層コンポーネントの動作確認を行う方法を本願出願人が提案している(特許文献2参照)。
【0006】
【特許文献2】
特願2002−105208号
【0007】
【発明が解決しようとする課題】
しかしながら、業務層コンポーネントのスタブ作成には大きな工数がかかる。また、表示層・業務層のコンポーネント間の仕様に変更があり、再度動作確認を行う場合、業務層コンポーネントのスタブを変更する工数が必要である。加えて業務層コンポーネントのスタブもソース管理の対象になるので、管理工数が増大するという問題もある。
また、特願2001−371432号に記載の技術では、前もって動作確認対象の表示層コンポーネントへの入力データを登録しておく必要がある。そのため、入力データを登録する工数がかかる。また、入力データ変更の際も、変更に対する工数がかかる。
また、特願2002−105208号に記載の技術では、動的レイアウト部分の処理を行わず、静的レイアウトと置き換えているだけなので、動的レイアウトの動作を確かめられないという問題がある。
【0008】
本発明の目的は、上記課題を解決するためのもので、業務層コンポーネントが出力するデータを自動生成することで表示層コンポーネントの動作確認を行い、表示層コンポーネントの実装にかかる工数を削減することができるWebアプリケーション開発支援装置及びその方法を提供することにある。
【0009】
【課題を解決するための手段】
上記目的を達成するために、本発明に係るWebアプリケーション開発支援装置は、表示層コンポーネントにより動的に表示する複数の擬似データが予め記憶された擬似データテーブルと、前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する要求受付手段と、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析するレイアウト部分解析手段と、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行うデータ生成手段とを備えることを特徴とする。
【0010】
また、本発明に係るWebアプリケーション開発支援方法は、表示層コンポーネントにより動的に表示する複数の擬似データを擬似データテーブルに予め記憶させる第1のステップと、前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する第2のステップと、前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析する第3のステップと、静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行う第4のステップとを備えることを特徴とする。
【0011】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を具体的に説明する。
図1は、本発明を適用するWebアプリケーションの構成例を示す構成図である。
まず、図1に示したWebアプリケーションの構成の一例において、ユーザ101がブラウザ102を操作してから、処理結果を表示するまでの流れを説明する。
ユーザ101は、ブラウザ102を表示し、そのブラウザ102から送信されたURLへアクセスする。そのとき、ユーザ101によって入力されたデータやブラウザ102の情報など、クライアント側103にある情報はサーバ104に用意されているWebサーバ105への要求として送信される。
【0012】
ブラウザ102からの要求を送信したWebサーバ105は、Webアプリケーション107を実行する環境が整っているアプリケーションサーバ106を使用して、Webアプリケーション107を実行するための窓口となる表示層コンポーネント108を実行する。
アプリケーションサーバ106により実行された表示層コンポーネント108は、ブラウザ102から送信されたデータをアプリケーションサーバ106から取得して、業務層コンポーネント111を実行する。
ここで、業務層コンポーネント111とは、例えばユーザ101を認証する処理や、データベース112にアクセスしてデータを取得する処理や、すでに実装されたC#(オブジェクト指向の言語)のクラスなどの実行可能なコンポーネント113を呼び出したりして開発対象のWebアプリケーション107に実装された顧客の要求を満たす一連の処理をするコンポーネントのことを指す。
【0013】
表示層コンポーネント108を構成する動的レイアウト110は、業務層コンポーネント111から処理結果を受け取ってHTML形式のデータを生成し、静的レイアウト109のHTML形式のデータと合わせて、Webサーバ105経由でブラウザ102に送信する。
このHTML形式のデータは業務層コンポーネント111により処理された結果を含んでいる。例えば、ユーザIDを使用してデータベース112から取得したユーザ名や実行可能なコンポーネント113で行った認証結果、検索条件に合った検索結果の一覧などである。
本実施形態では、それらの情報の保持には、ブラウザ102から送信されてくるデータと同じ方法を使うようにするために、動的なデータをキーワードとそのキーワードに対応するデータというように対にして保持することにしている。
ブラウザ102は、受信したHTML形式のデータをクライアント102の表示画面に表示する。
以上でユーザ101が処理を要求し、処理結果をブラウザ102に表示するまでの一連の処理が終了する。
【0014】
図2は、本発明に係るWebアプリケーション開発支援装置の実施の形態を示す図である。
本発明に係るWebアプリケーション開発支援装置202は、Webアプリケーション107内に実装され、表示層コンポーネント108からの要求を受け付けて要求を判別する要求受付部203、要求受付部203の判別結果を解析するレイアウト部分解析部204、解析データ207と擬似データテーブル206の情報を突き合わせて設定データ208を生成するデータ生成装置205から構成される。
以下、図2を基に、開発者201が表示層コンポーネント108の動作を確認する手順と各部分の機能を説明する。
まず、開発者201がブラウザ102に動作確認対象の表示層コンポーネントへの要求をサーバ104に送信する。要求された情報はWebサーバ105、表示層コンポーネント108を経て、要求受付部203へ送信される。
表示層コンポーネント108は、Webアプリケーション107の表示に関する機能を持ったコンポーネントである。表示層コンポーネント108は動的レイアウト110と静的レイアウト109から構成される。
動的レイアウト110は、業務層コンポーネントの処理結果に応じてレイアウトが変化し、動的なレイアウトをHTMLとして生成するロジックである。
静的レイアウト109は、業務層コンポーネントの処理結果に応じてレイアウトが変化しない、静的なレイアウトをHTMLとして生成するロジックである。
【0015】
要求を受けた要求受付部203は、要求を解析して、要求先の表示層コンポーネント108の静的レイアウト109を要求判別結果として取得し、要求判別結果をレイアウト部分解析部204へ送信する。
レイアウト部分解析部204は、要求判別結果をもとにして、要求先の表示層コンポーネント108の静的レイアウト109を解析し、解析データ207をデータ生成部205へ送信する。
データ生成部205は、解析データ207と、擬似データテーブル206の情報を突き合わせて、設定データ208を生成し、動的レイアウト110へ送信する。
擬似データテーブル206は、表示層コンポーネント108の動作確認のためのブラウザ102に表示させる擬似的な文字列データであり、開発者201が前もって記憶装置に登録しておいたものである。
【0016】
動的レイアウト110は、設定データ208を取得し、動的なレイアウト部分をHTMLとして生成し、静的レイアウト109と合わせてWebサーバ105へ1つのHTMLファイルとして送信する。
Webサーバ105は、表示層コンポーネント108から取得したHTMLファイルをクライアント103のブラウザ102へ送信する。
開発者201は、表示確認対象画面の表示結果をブラウザ102で確かめ、表示層コンポーネント108の動作確認を行う。
【0017】
図3は、レイアウト部分解析部204がデータ生成部205へ送信する解析データ207の情報の構造例を示す図である。
型301は、静的レイアウト109から読み取った、動的に表示するデータの型である。キー302は動的に表示するデータを識別するためのキーワードである。
【0018】
図4は、擬似データテーブル206の構造例である。
型401は、静的レイアウト109から読み取られる、動的に表示するデータの型である。擬似データ402は、動作確認の際に、表示したい情報を型にしたがって開発者201が予め登録する文字列である。
【0019】
図5は、データ生成装置205から動的レイアウト110へ送信する設定データ208の構造例である。図3の解析データと図4の擬似データテーブルを突き合わせて生成される。キー501は動的に表示するデータを識別するためのキーワードである。キー501は図3のキー302と対応する。擬似データ502は動作確認の際に、表示したい情報を型に従って開発者201が予め登録する文字列である。擬似データ502は図4の擬似データ402と対応する。
【0020】
図6は、本発明を適用した場合にWebアプリケーションの表示層コンポーネントを開発する際のフロー図である。
本発明を適用した表示層コンポーネント開発を図6に従って説明する。
まず、表示層コンポーネント108の動作確認のための擬似データ402を、レイアウトの型401に応じて擬似データテーブル206に設定する(ステップ601)。
次に、表示層コンポーネント108の動作確認を行うため、本発明のWebアプリケーション開発支援装置202をWebアプリケーションの実行環境に配置する(ステップ602)。
次に、静的レイアウトの実装、編集作業を行う(ステップ603)。また、動的レイアウトの実装、編集作業を行う(ステップ604)。
次に、ステップ603、ステップ604で実装・編集した表示層コンポーネント108へアクセスして動作確認を行う(ステップ605)。
最後に、動作確認対象画面の表示層コンポーネント108の動作確認した結果が正しければ、対象画面の実装を終了する。動作確認に問題があれば、表示層コンポーネント108の修正を行う(ステップ606)。
【0021】
次に、実際のWebアプリケーションを例に挙げて、本発明を適用した表示層コンポーネントの動作確認の例について説明する。
図7は、Webアプリケーションの画面の一例である。以下、図7の画面をサンプル画面とする。静的レイアウトのファイル名をSample.aspxとする。
例示するサンプル画面は、検索条件704を選んで、再検索ボタン703を押すと、データベースから検索結果を取得し、検索ヒット件数702と共に結果一覧701を表示するものである。
検索ヒット件数702、結果一覧701は業務層コンポーネントの処理結果である動的なデータが表示される動的レイアウト部分である。
【0022】
以下、サンプル画面の表示層コンポーネントを開発する場合の手順について、図6のフローに従って説明する。
まず、ステップ601では、擬似データテーブル206を作成する。図8は作成された擬似データテーブルの例であり、801は型がDataGridの場合の擬似データを示している。802は型がLabelの場合の擬似データを示している。
次に、ステップ602では、本発明に係るwebアプリケーション開発支援装置202をWebアプリケーション107内に配置する。
【0023】
次に、ステップ603では、静的レイアウト109を実装する。
図9は、サンプル画面の静的レイアウト109のソースコード実装例である。動的なデータの表示が必要な部分は、datagrid901とlabel902である。
次に、ステップ604では、動的レイアウト110を実装する。
図10はサンプル画面の動的レイアウトのソースコード実装例である。
1001のOutは業務処理結果が格納されているオブジェクトであり、1002はヒット件数の表示設定を示す部分である。1003は結果一覧の表示設定を示す部分である。
【0024】
次に、ステップ605では、サンプル画面の表示層コンポーネント108の動作確認を行う。
開発者201がブラウザ102によってサンプル画面に対する要求をサーバ104に送信する。要求された情報はWebサーバ105、表示層コンポーネント108を経て、要求受付部203へ送信される。
要求を受けた要求受付部203は、要求を解析し、要求先のSample.aspxファイルの内容を要求判別結果として取得し、レイアウト部分解析部204へ送信する。
レイアウト部分解析部204は、要求判別結果をもとにして、サンプル画面を解析し、解析データ206をデータ生成部204へ送信する。
【0025】
図11は、サンプル画面の静的レイアウト109の解析結果207の例であり、1101は図9の901に対応した解析結果である。1102は図9の902に対応した解析結果である。
データ生成部205は、解析データ207と、図8の擬似データテーブル206の情報を突き合わせて、設定データ208を生成し、動的レイアウト110へ送信する。
【0026】
図12は、図11の解析データ207と図8の擬似データテーブル205を突き合わせて生成された、サンプル画面に設定するデータ208の例を示すものであり、1201は図8の801と図11の1101を突き合わせて生成されたデータである。1202は図8の802と図11の1102を突き合わせて生成されたデータである。
動的レイアウト110は、設定データ207を取得し、動的なレイアウト部分をHTMLとして生成し、静的レイアウト203と合わせてWebサーバ105へ1つのHTMLファイルとして送信する。
Webサーバ105は表示層コンポーネント108から取得したHTMLファイルをクライアント103のブラウザ102へ送信する。ブラウザはHTMLファイルを解析して、画面表示する。
【0027】
図13は、Webサーバ105の応答を経て、ブラウザ102に表示されたサンプル画面の例である。
1301では、動的レイアウトであるヒット件数として、擬似データの”ラベル文字列”が表示されている。
1302では、動的レイアウトである結果一覧の各セルに、擬似データの”表内文字列”が表示されている。
次に、ステップステップ606では、開発者201は、サンプル画面の表示結果をブラウザ102で確かめ、表示層コンポーネント108の動作確認を完了する。
このように、本発明は動的に表示層コンポーネントの動作確認に必要なデータを生成するように構成したので、業務層コンポーネントのスタブを作成することなく、表示層コンポーネントの動的レイアウトの動作確認ができる。
【0028】
図14は、本発明を適用しない場合に実際にコーディングするスタブである。1401のSetは業務処理結果を格納するオブジェクトである。
本発明を適用しない場合、表示層コンポーネントの個数分だけ、図14のようなスタブを実装しなければならない。しかし、本発明を適用して表示層コンポーネントの開発を行えば、図14の破線1402で囲む部分のコードのコーディング量を削減できる。
【0029】
【発明の効果】
以上説明したように、本発明によれば、動的に表示層コンポーネントの動作確認に必要なデータを生成するように構成したので、表示層コンポーネントの開発において表示層コンポーネントの動作確認を行う際に、業務層コンポーネントのスタブを作成する必要がない。従って、スタブを作成する工数を削減できる。
さらに、スタブの管理にかかる工数も削減できる。また、前もって動作確認対象コンポーネントに対する入力データを用意する必要もない。そして、設定データを動的レイアウトに入力して動的なレイアウト部分を生成することで動的レイアウトの正当性をも確認できるという効果がある。
【図面の簡単な説明】
【図1】本発明を適用するWebアプリケーションの構成例を示す構成図である。
【図2】本発明に係るWebアプリケーション開発支援装置の実施の形態を示す図である。
【図3】レイアウト部分解析部204がデータ生成部205へ送信する解析データ207の情報の構造例を示す図である。
【図4】擬似データテーブル206の構造例である。
【図5】データ生成装置205から動的レイアウト110へ送信する設定データ208の構造例である。
【図6】本発明を適用した場合にWebアプリケーションの表示層コンポーネントを開発する際のフロー図である。
【図7】Webアプリケーションの画面の一例である。
【図8】作成された擬似データテーブルの例であり、
【図9】サンプル画面の静的レイアウト109のソースコード実装例である。
【図10】サンプル画面の動的レイアウトのソースコード実装例である。
【図11】サンプル画面の静的レイアウト109の解析結果207の例であり、
【図12】図11の解析データ207と図8の擬似データテーブル205を突き合わせて生成されたサンプル画面に設定するデータ208の例を示すもので
【図13】Webサーバ105の応答を経てブラウザ102に表示されたサンプル画面の例である。
【図14】本発明を適用しない場合に実際にコーディングするスタブの例を示す図である。
【符号の説明】
101…ユーザ、102…ブラウザ、103…クライアント、104…サーバ、Webサーバ、106…アプリケーションサーバ、107…Webアプリケーション、108…表示層コンポーネント、109…静的レイアウト、110…動的レイアウト、111…業務層コンポーネント、113…コンポーネント、112…データベース、203…要求受付部、204…レイアウト部分解析部、205…データ生成部、206…擬似データテーブル、207…解析データ、208…設定データ。
Claims (2)
- 表示層コンポーネントと業務層コンポーネントから構成され、クライアントとサーバ間でデータのやり取りを行うWebアプリケーションの開発を支援する装置であって、
前記表示層コンポーネントにより動的に表示する複数の擬似データが予め記憶された擬似データテーブルと、
前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する要求受付手段と、
前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析するレイアウト部分解析手段と、
静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行うデータ生成手段と
を備えることを特徴とするWebアプリケーション開発支援装置。 - 表示層コンポーネントと業務層コンポーネントから構成され、クライアントとサーバ間でデータのやり取りを行うWebアプリケーションの開発を支援する方法であって、
前記表示層コンポーネントにより動的に表示する複数の擬似データを擬似データテーブルに予め記憶させる第1のステップと、
前記クライアントからの要求に対し、前記表示層コンポーネントの静的レイアウト情報を取得する第2のステップと、
前記静的レイアウト情報に基づき表示層コンポーネントの静的レイアウトを解析する第3のステップと、
静的レイアウトの解析結果に対応する擬似データを前記擬似データテーブルから取得し、表示層コンポーネントの動作確認に必要なデータを生成し、表示層コンポーネントに対して動的に表示させるための表示データの設定を行う第4のステップと
を備えることを特徴とするWebアプリケーション開発支援方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003087453A JP2004295512A (ja) | 2003-03-27 | 2003-03-27 | Webアプリケーション開発支援装置及びその方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003087453A JP2004295512A (ja) | 2003-03-27 | 2003-03-27 | Webアプリケーション開発支援装置及びその方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004295512A true JP2004295512A (ja) | 2004-10-21 |
Family
ID=33401833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003087453A Pending JP2004295512A (ja) | 2003-03-27 | 2003-03-27 | Webアプリケーション開発支援装置及びその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004295512A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006235874A (ja) * | 2005-02-23 | 2006-09-07 | Japan Research Institute Ltd | 業務用情報処理システム |
JP2015005241A (ja) * | 2013-06-24 | 2015-01-08 | 富士通株式会社 | 画面作成支援プログラム、画面作成支援装置、および画面作成支援方法 |
JP2015069247A (ja) * | 2013-09-26 | 2015-04-13 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
-
2003
- 2003-03-27 JP JP2003087453A patent/JP2004295512A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006235874A (ja) * | 2005-02-23 | 2006-09-07 | Japan Research Institute Ltd | 業務用情報処理システム |
JP2015005241A (ja) * | 2013-06-24 | 2015-01-08 | 富士通株式会社 | 画面作成支援プログラム、画面作成支援装置、および画面作成支援方法 |
JP2015069247A (ja) * | 2013-09-26 | 2015-04-13 | キヤノンマーケティングジャパン株式会社 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106489145B (zh) | web网站的访问方法、装置及Web网站*** | |
US11080493B2 (en) | Translation review workflow systems and methods | |
US7496497B2 (en) | Method and system for selecting web site home page by extracting site language cookie stored in an access device to identify directional information item | |
KR101389969B1 (ko) | 원격 모듈용 메시지 목록 | |
KR101059452B1 (ko) | 컨테이너 문서 내의 통신 제어 | |
US8504913B2 (en) | Client-side components | |
US7958449B2 (en) | Method and apparatus for displaying and processing input fields from a document | |
KR101391894B1 (ko) | 콘텐츠 요청 최적화 | |
US20030093400A1 (en) | Method for updating a database from a browser | |
US20090217145A1 (en) | Methods and devices for post processing rendered web pages and handling requests of post processed web pages | |
US20050027709A1 (en) | Method and system for native-byte form handling | |
US7228493B2 (en) | Serving content to a client | |
US8645916B2 (en) | Crunching dynamically generated script files | |
CN106155673B (zh) | 实现页面内容编辑器的方法、装置、服务器及用户设备 | |
US20110060997A1 (en) | Methods for optimizing interaction with a form in a website page and systems thereof | |
JP2010500689A (ja) | 対話的ウェブアプリケーションのウェブ分析可能化方法 | |
CN102063483A (zh) | 基于用户代理类型以变化格式提供字体文件 | |
JP2004530959A (ja) | コンテンツのモバイル装置への配信システム及び配信方法 | |
US10460127B2 (en) | System and method using a database for enhanced user initiated requests of material or information | |
WO2015164108A1 (en) | Decoupling front end page and back end using tags | |
CN111679826B (zh) | 实时预览网页编辑内容的方法、装置、设备及存储介质 | |
JP2007317031A (ja) | 電子文書更新通知装置及び電子文書更新通知方法 | |
CN111984262A (zh) | 微信层叠样式表文件的处理方法、装置、设备及存储介质 | |
JP4878193B2 (ja) | 判定プログラム、判定方法及び判定装置 | |
JP2004295512A (ja) | Webアプリケーション開発支援装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20050614 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070501 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070831 |