JP2007109033A - 画面遷移管理装置及び画面遷移管理プログラム - Google Patents

画面遷移管理装置及び画面遷移管理プログラム Download PDF

Info

Publication number
JP2007109033A
JP2007109033A JP2005299589A JP2005299589A JP2007109033A JP 2007109033 A JP2007109033 A JP 2007109033A JP 2005299589 A JP2005299589 A JP 2005299589A JP 2005299589 A JP2005299589 A JP 2005299589A JP 2007109033 A JP2007109033 A JP 2007109033A
Authority
JP
Japan
Prior art keywords
screen transition
test
screen
information
transition
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
Application number
JP2005299589A
Other languages
English (en)
Inventor
Takeshi Kawajiri
剛 川尻
Giichi Yomogida
義一 蓬田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP2005299589A priority Critical patent/JP2007109033A/ja
Publication of JP2007109033A publication Critical patent/JP2007109033A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】動作確認環境や開発の進捗の状況に応じて、テスト実行用に画面遷移設定が変更された場合においても、画面遷移図による画面遷移状況の把握を可能とする。
【解決手段】迂回遷移設定部203は、テスト実行部202の取得したテスト結果に基づき、一部のビジネスロジックを迂回した迂回遷移を設定し、テスト定義部201の生成した画面遷移図拡張情報を更新する。画面遷移設定生成部204は、画面遷移図情報と画面遷移図拡張情報とに基づき画面遷移図上に迂回遷移を表示するとともに、迂回遷移を含む画面遷移設定と、迂回遷移に相当するソースコードとを生成して画面遷移切り替え部205に渡す。画面遷移切り替え部205は、画面遷移設定生成部204から取得した画面遷移設定と、ソースコードをコンパイルした結果とを動作確認環境104に配備する。
【選択図】 図2

Description

本発明は、画面遷移図を利用したアプリケーション開発支援システムを構成する画面遷移管理装置及びそのプログラムに関する。
現在、インターネットの普及により、Webブラウザを通して利用するアプリケーションが非常に多く開発されている。このようなアプリケーションはWebアプリケーションと呼ばれる。Webアプリケーションの開発では、効率的な作業の分担ができるように、画面の部分と、業務に直結した処理を行う部分を分けた構成で開発することが多い。後者の業務に直結した処理を行う部分をビジネスロジックと呼ぶ。
画面とビジネスロジックは、機能の変更や追加が容易となるように、プログラムから切り離した画面遷移設定と呼ばれる情報で紐付けられることが多い。
図44は、一般的なWebアプリケーション構成を示す図である。
本例に示すWebアプリケーションは、ブラウザに相当するクライアント4401と、クライアント4401からのリクエストを処理するリクエスト制御部4402と、画面遷移設定情報4403と、ビジネスロジック4404と、ビジネスロジック4404で使用するデータを保持するデータベース4405と、ビジネスロジック4404の結果を表示する出力画面4406とから構成されている。
図45は、画面遷移設定情報のデータ構造の一例を示す図である。
画面遷移設定情報は、例えば、パスを一意に特定するパスID4501と、入力画面を位置に特定する入力画面ID4502と、実行するビジネスロジックを一意に特定するビジネスロジックID4503と、ビジネスロジックの結果を一意に特定する結果ID4504と、出力画面を一意に特定する出力画面ID4505との各データで構成される。
以上の構成により、Webアプリケーションは、クライアント4401がリクエストを送信すると、要求されたパスとパラメータの値をリクエスト制御部4402が判断し、パラメータに不備がある場合は画面遷移設定情報4403の入力画面ID4502が示す出力画面4506をクライアント4401に表示する。パラメータに不備が無い場合は、画面遷移設定情報4403のビジネスロジックID4503が示すビジネスロジック4404を実行する。ビジネスロジック4404はデータベース4405にアクセスし、後の画面やビジネスロジックに必要となる情報を作成し、結果ID4504をリクエスト制御部4402に返す。リクエスト制御部4402は返された結果ID4504から出力画面4406を決定し、クライアント4401に表示する。
このようなWebアプリケーションの開発においては、多くの場合、画面遷移の数が膨大となるため、手動で画面遷移設定を記述すると設計ミスが発生する可能性があった。
そのため、従来、Webアプリケーション開発支援装置では、Webアプリケーションの画面遷移を表す画面遷移図を設計する手段を備えた構成が公知となっている(例えば、特許文献1参照。)。
特開平07−219754号公報
一方、Webアプリケーション開発においては、動作確認環境と呼ばれる本番環境を想定したテスト環境を、動作確認の目的ごとに複数用意し、実装中のWebアプリケーションを配備して動作確認テストを実施することが多く行われている。
この場合、動作確認環境に配置されるデータベースや、ビジネスロジックの実装の状況等によっては、動作環境テスト用に画面遷移設定の変更を行う必要があった。
例えば、動作確認環境に配置されるデータベースには、動作確認の内容に沿ったデータが格納されており、その操作が限定される場合がある。具体的には、正常の動作を確認する事を目的とした動作確認環境においてはデータベースに正常系のテストデータが格納されており、それを更新してしまうと、後の動作確認に支障を来す可能性があるため書き込みの操作を禁止する必要がある。そのため、従来は、禁止されているデータベース操作を行うビジネスロジックを避けて動作確認を実施していた。また、一部のビジネスロジックの実装が未完成である場合は、未完成部分のビジネスロジックを避ける必要があった。
このように、一部のビジネスロジックを避けて動作確認を行う場合には、画面が遷移しないため、それ以降の動作確認を行うことができず、また、画面操作のミスにより、禁止されている操作を行ってしまう可能性もあった。
そのため、一部のビジネスロジックを迂回する仮のビジネスロジックを実装して、画面遷移設定において実行する対象を変更することが行われていた。
しかし、動作確認環境や開発の進捗状況に応じて画面遷移設定を任意に変更した場合には、予め作成した画面遷移図に示す画面遷移設定と、動作確認テスト時における画面遷移設定とが異なるものとなっていた。
この点については、前記特許文献1に記載の開発支援装置においても、動作確認テストのための画面遷移設定の変更内容を画面遷移図に反映する手段は設けられておらず、動作環境テストにおける画面遷移の状況を画面遷移図に基づき把握することができず、その管理が困難となっていた。
本発明は前記課題を解決するためのものであり、動作確認環境や開発の進捗の状況に応じて、テスト実行用に画面遷移設定が変更された場合においても、画面遷移図による画面遷移状況の把握を可能とする画面遷移管理装置を提供することを目的とする。
前記課題を解決するため本発明は、開発対象となるWebアプリケーションについて、遷移パスと、入出力画面と、処理結果と、ビジネスロジックとを定義した画面遷移設定情報に基づき画面遷移図を生成して表示する手段を備えた画面遷移管理装置であって、前記画面遷移設定情報に含まれる一部のビジネスロジックを迂回する迂回遷移の設定を受付け、当該迂回遷移を示す画面遷移図拡張情報を生成する画面遷移図拡張情報生成手段と、前記画面遷移設定情報及び前記画面遷移図拡張情報に基づき、前記画面遷移図上に前記迂回遷移を表示した画面遷移図を生成して表示する画面遷移設定生成手段とを備えることを特徴とする。
また、前記画面遷移管理装置は、テスト用のアプリケーションサーバとデータベースとを備えた動作確認環境に対して、予めテストを実行するビジネスロジックを定義したテスト実行情報に基づきテストを実行して実行結果を取得するテスト実行手段と、前記テスト実行手段が取得したテスト結果に含まれるエラー情報に基づき、ビジネスロジックを迂回する迂回遷移を設定する迂回遷移設定手段とをさらに備えることを特徴とする。
また、前記テスト実行情報には、前記ビジネスロジックが接続するデータベースについての接続許可属性が含まれるものとし、前記テスト実行手段は、前記接続許可属性が不許可の場合には、前記テスト実行を行わずにテスト結果をエラーとする手段をさらに備えることを特徴とする。
また、前記画面遷移設定生成手段は、前記迂回遷移の設定に対応したビジネスロジックを構成するソースコードを生成する手段をさらに備えることを特徴とする。
また、本発明の画面遷移管理プログラムは、開発対象となるWebアプリケーションについて、遷移パスと、入出力画面と、処理結果と、ビジネスロジックとを定義した画面遷移設定情報に基づき画面遷移図を生成して表示する処理をコンピュータに実行させる画面遷移管理プログラムであって、前記画面遷移設定情報に含まれる一部のビジネスロジックを迂回する迂回遷移の設定を受付け、当該迂回遷移を示す画面遷移図拡張情報を生成する画面遷移図拡張情報生成処理と、前記画面遷移設定情報及び前記画面遷移図拡張情報に基づき、前記画面遷移図上に前記迂回遷移を表示した画面遷移図を生成して表示する画面遷移図生成処理とをコンピュータに実行させることを特徴とする。
また、テスト用のアプリケーションサーバとデータベースとを備えた動作確認環境に対して、予めテストを実行するビジネスロジックを定義したテスト実行情報に基づきテストを実行して実行結果を取得するテスト実行処理と、取得したテスト結果に含まれるエラー情報に基づき、ビジネスロジックを迂回する迂回遷移を設定する迂回遷移設定処理とをさらにコンピュータに実行させることを特徴とする。
また、前記テスト実行情報には、前記ビジネスロジックが接続するデータベースについての接続許可属性が含まれるものとし、前記接続許可属性が不許可の場合には、前記テスト実行を行わずにテスト結果をエラーとする処理をさらにコンピュータに実行させることを特徴とする。
また、前記迂回遷移の設定に対応したビジネスロジックを構成するソースコードを生成する処理をさらにコンピュータに実行させることを特徴とする。
以上の構成により本発明では、動作確認環境におけるデータベースへのアクセス制限や、ビジネスロジックの未実装の場合のテスト実行用の画面遷移設定を画面遷移図に反映させることが可能となる。
従って、画面遷移図により、テスト実行時の画面遷移設定を容易かつ正確に把握することが可能となる。
また、テスト実行結果やデータベースのアクセス制限に基づき、一部のビジネスロジックを迂回するテスト用の画面遷移設定を生成することにより、テスト用の画面遷移設定と画面遷移図とを容易かつ確実に整合させることが可能となる。この場合、データベースのアクセス制限の設定がされている場合には、テストを実行せずにテスト結果をエラーとすることにより、
また、一部のビジネスロジックを迂回する画面遷移設定に応じたソースコードを生成することにより、画面遷移設定,画面遷移図とテスト実行用プログラムとを容易かつ確実に整合させることが可能となる。
以下、本発明の一実施の形態に係る画面遷移管理装置を含むWebアプリケーション開発支援システムについて、図面に基づき説明する。
図1は、Webアプリケーション開発支援システムのシステム構成を示す図である。
Webアプリケーション開発支援システムは、画面遷移図設計装置101と、画面遷移管理装置102と、アプリケーション開発装置103と、複数の動作確認環境104とから構成されており、各装置101〜103及び動作確認環境104はそれぞれネットワークを介して接続されている。
画面遷移図設計装置101は画面遷移図を設計する装置であり、例えば画面遷移の定義ツールを搭載したコンピュータに相当する。
画面遷移管理装置102は画面遷移を管理する装置であり、詳細については後述する。
アプリケーション開発装置103は開発対象となるWebアプリケーションを実装する装置であり、例えばエディタやコンパイラなど、開発に使用するソフトウェアを搭載したコンピュータに相当する。
動作確認環境104は実装したWebアプリケーションの動作確認を行う環境であり、開発の局面ごとに複数存在する。本例では、2種類の動作確認環境A,Bを備えている。各動作確認環境104は、それぞれテスト用アプリケーションサーバ(APサーバ)105と、テスト用データベース(テスト用DB)106とから構成されている。テスト用データベース106は、動作確認環境104によっては利用できない場合があり、本例では、動作確認環境Aと比較して、動作確認環境Bではテスト用データベース106が1つしか利用できない状態となっている。なお、テスト用データベース106としては、データベースサーバに限らず、MQ(MessageQueueing)サーバなどであってもかまわない。
図2は、本実施の形態に係る画面遷移管理装置102の概略構成を示すブロック図である。
画面遷移管理装置102は、テスト定義部201,テスト実行部202,迂回遷移設定部203,画面遷移設定生成部204,画面遷移切り替え部205の各処理部と、画面遷移図情報格納部206,テスト情報格納部207,画面遷移図拡張情報格納部208の各情報格納部を有する。
テスト定義部201は、画面遷移図設計装置102が画面遷移図情報格納部206に格納した画面遷移図情報に基づき、テスト情報及び画面遷移図拡張情報を生成する。ここで、テスト情報とは、テストの定義と、その実行結果の情報を示す。また、テスト定義部201は、テスト情報に基づくテストコードの雛形の生成及びテスト結果に基づく画面拡張情報の更新を行う。
テスト実行部202は、テストコードに基づき、動作確認環境において、アプリケーション開発装置に実装された開発対象アプリケーションのテストを実行し、テスト結果をテスト情報格納部207に格納する。
迂回遷移設定部203は、テスト結果に基づき、一部のビジネスロジックを迂回した迂回遷移を生成し、画面遷移図拡張情報を更新する。
画面遷移設定生成部204は、画面遷移図情報と画面遷移図拡張情報とに基づき画面遷移図上に迂回遷移を表示するとともに、迂回遷移を含む画面遷移設定と、迂回遷移に相当するソースコードとを生成して画面遷移切り替え部205に渡す。
画面遷移切り替え部205は、画面遷移設定生成部204から取得した画面遷移設定と、ソースコードをコンパイルした結果とを動作確認環境104に配備する。
図3は、画面遷移図情報に基づき生成した画面遷移図の一例を示す図である。
画面遷移図300は、画面遷移図情報に基づき、画面を表す画面シェイプ301と、パスを表すパスシェイプ302と、ビジネスロジックを表すビジネスロジックシェイプ303と、ビジネスロジックの結果を表す結果シェイプ304と、データベースへの接続を表すデータベース接続シェイプ305と、データベースを表すデータベースシェイプ306とを表示する。
図4は、画面遷移図情報に基づき生成した画面遷移図を表示する表示画面の一例を示す図である。
画面遷移図表示画面400は、画面遷移図表示部410と、テスト定義部起動ボタン420と、画面遷移設定生成ボタン430とを有する。
本例では、テスト結果に基づく画面遷移図拡張情報を反映した状態の画面遷移図を示しており、画面遷移図表示部410には、画面シェイプ411,パスシェイプ412,ビジネスロジックシェイプ413,結果シェイプ414,データベース接続シェイプ415,データベースシェイプ416の他、テストの失敗を示すエラーマーク417と、テスト結果に応じた迂回遷移418とを表示している。なお、迂回遷移418を表示した場合には、迂回対象となった遷移パスを示す結果シェイプは破線で表示する。
次に、画面遷移図情報について具体例を用いて説明する。本実施の形態では、画面遷移図情報を、画面シェイプデータ,パスシェイプデータ,ビジネスロジックシェイプデータ,結果シェイプデータ,データベース接続シェイプデータ,データベースシェイプデータで構成している。
図5は、画面遷移図情報を構成する画面シェイプデータのデータ構造の一例を示す図である。
画面シェイプデータは、画面を一意に特定する画面ID501と、その画面から遷移するパスを示すパスID502とから構成されている。一つの画面シェイプデータは複数のパスID502を保持する場合がある。また、パスID502を保持しない場合もある。
図6は、画面遷移図情報を構成するパスシェイプデータ600のデータ構造の一例を示す図である。
パスシェイプデータは、画面シェイプデータのパスID502に対応するパスID601と、そのパスで実行するビジネスロジックを示すビジネスロジックID602とから構成されている。一つのパスシェイプデータ600は必ず一つのビジネスロジックID602を保持する。
図7は、画面遷移図情報を構成するビジネスロジックシェイプデータのデータ構造の一例を示す図である。
ビジネスロジックシェイプデータは、パスシェイプデータのビジネスロジックID602に対応するビジネスロジックID701と、そのビジネスロジックが返す結果を示す、結果ID702とから構成される。一つのビジネスロジックシェイプデータ700は一つ以上の結果ID702を保持する。
図8は、画面遷移図情報を構成する結果シェイプデータのデータ構造の一例を示す図である。
結果シェイプデータは、ビジネスロジックデータの結果ID702に対応する結果ID801と、遷移先の画面を示す画面ID802から構成される。一つの結果シェイプデータは必ず一つの画面IDを保持する。
図9は、画面遷移図情報を構成するデータベース接続シェイプデータのデータ構造の一例を示す図である。
データベース接続シェイプデータ900は接続先のデータベースを示すデータベースID901と、データベースの接続元のビジネスロジックを示すビジネスロジックID902と、接続属性903とから構成される。データベースID901とビジネスロジックID902の組み合わせで一意にデータベース接続シェイプが特定し、必ず一つの接続属性を保持する。接続属性903には、「READ」「WRITE」「ALL」の3種類がある。「READ」は該当するデータベースを読み込むことを意味し、「WRITE」は該当するデータベースを書き込むことを意味し、「ALL」は読み書き共に行うことを意味する。
図10は、画面遷移図情報を構成するデータベースシェイプデータのデータ構造の一例を示す図である。
データベースシェイプデータは、データベースを一意に特定するデータベースID1001から構成され、データベース接続シェイプデータのデータベースID901に対応する。
図11は、図4に示す表示画面のテスト定義部起動ボタン420の押下に応じて表示するテスト定義画面の一例を示す図である。
テスト定義画面は、テスト実行情報定義部1110と、動作確認環境情報定義部1120とを有する。
テスト実行情報定義部1110は、ビジネスロジックID表示欄1111と、テストID編集欄1112と、テスト生成ボタン1113とを有する。
動作確認環境情報定義部1120は、データベースID表示欄1121と、接続許可属性選択欄1122と、テスト実行ボタン1123とを有する。ここで、接続許可属性とは、動作確認環境におけるデータベースへの接続の許否を示すものであり、「NONE」「READ」「WRITE」「ALL」の4種類の中から任意に選択させる。「NONE」はデータベースへの一切の操作を認めない場合を示し、「READ」はデータベースに対する読み込みのみを許可する場合を示し、「WRITE」はデータベースに対する書き込みのみを許可する場合を示し、「ALL」は読み書き共に許可する場合を示す。
テスト定義画面1100では、テスト情報格納部207にテスト情報が格納されている場合には、その内容を表示し、テスト情報が格納されていない場合には、画面遷移図情報に基づきテスト情報を生成して表示する。
具体的には、後述するテスト実行情報のビジネスロジックIDが、ビジネスロジックID表示欄1111に表示され、動作確認環境情報のデータベースIDが、データベースID表示欄1121に表示される。
テスト定義画面1100では、アプリケーションの開発者に対し、ビジネスロジックID表示欄1111に表示されたビジネスロジックIDごとに、テストID編集欄1112にテストIDを入力させる。入力された値は、テスト定義部201が後述するテスト実行情報のテストIDに格納する。
全てのビジネスロジックIDに対してテストIDの入力が完了した後、アプリケーション開発者によるテスト生成ボタン1113の押下に応じて、テスト定義部201がテスト実行情報のテストIDごとに、テストコードの雛形を生成する。アプリケーション開発者は生成されたテストコードの雛形に、具体的なテスト内容を示す処理部分を実装してテストプログラムを完成させる。
次に、テスト情報格納部207に格納するテスト情報について具体例を用いて説明する。本実施の形態では、テスト情報を、テスト実行情報と動作環境情報とから構成している。
図12は、テスト情報を構成するテスト実行情報のデータ構造の一例を示す図である。
テスト実行情報は、ビジネスロジックID1201と、テストID1202と、接続データベース1203と、テスト実行フラグ1204と、テスト成功フラグ1205とから構成される。接続データベース1203はデータベースID1206と接続属性1207とから構成される。接続データベース1203は複数の場合がある。
図13は、テスト情報を構成する動作環境情報のデータ構造の一例を示す図である。
動作確認環境情報は、データベースID1301と、接続許可属性1302とから構成される。
次に、画面遷移図拡張情報について具体例を用いて説明する。本実施の形態では、画面遷移図拡張情報を、パスシェイプ拡張情報,結果シェイプ拡張情報,データベース接続シェイプ拡張情報,迂回遷移情報で構成している。
図14は、画面遷移図拡張情報を構成するパスシェイプ拡張情報のデータ構造の一例を示す図である。
パスシェイプ拡張情報は、パスID1401と、ビジネスロジックID1402と、迂回遷移表示フラグ1403と、複数の迂回遷移設定1404とから構成される。迂回遷移設定1404は結果ID1405と、活性フラグ1406と、迂回遷移ID1407とから構成される。
図15は、画面遷移図拡張情報を構成する結果シェイプ拡張情報のデータ構造の一例を示す図である。
結果シェイプ拡張情報は、結果ID1501と、ビジネスロジックID1502と、活性フラグ1503と、エラーフラグ1504から構成される。
図16は、画面遷移図拡張情報を構成するデータベース接続シェイプ拡張情報のデータ構造の一例を示す図である。
データベース接続シェイプ拡張情報は、データベースID1601と、ビジネスロジックID1602と、活性フラグ1603と、エラーフラグ1604とから構成される。
図17は、画面遷移図拡張情報を構成する迂回遷移情報のデータ構造の一例を示す図である。
迂回遷移情報は、迂回遷移を一意に特定する迂回遷移ID1701と、複数の入力データ1702とから構成される。一つの入力データは変数名1703と、型1704と、値1705と、範囲1706とから構成される。
図18は、図4に示す画面遷移図表示画面400の画面遷移図表示部410に破線表示した迂回遷移418の指定操作に応じて表示する迂回遷移設定画面の一例を示す図である。
迂回遷移設定画面は、迂回遷移ID編集欄1810と、入力データ編集欄1820と、迂回キャンセルボタン1830と、迂回設定ボタン1840とから構成される。
入力データ編集欄1820は、変数名の編集欄1821と、型の選択欄1822と、値の編集欄1823と、範囲の選択欄1824とから構成される。
型の選択欄1822は、文字と、数値と、破棄の中から選択できる。範囲の選択欄1608は、セッションを現す「SESSION」と、リクエストを表す「REQUEST」とから選択できる。
以上の構成に基づき、本実施の形態に係るWebアプリケーション開発支援システムの行う処理についてフローチャートに基づき説明する。
図19は、本システムの行う全体処理の概要を示すフローチャートである。
まず、画面遷移図設計装置101がアプリケーション開発者により定義された画面遷移設計の設定を受付け、画面遷移管理装置102の画面遷移図情報格納部206に格納する(ステップ1901)。
画面遷移管理装置102のテスト定義部201は、画面遷移図情報格納部206に格納された画面遷移図情報を読み込み、画面遷移設定に対応したテスト情報の生成を行う(ステップ1902)。
テスト環境として、アプリケーション開発者にアプリケーション開発装置103でWebアプリケーション及びテストコードを実装させるとともに(ステップ1903)、動作確認環境104に配備させる(ステップ1904)。
画面遷移管理装置102のテスト実行部202は、アプリケーション開発者の操作に応じて、テストを実行して、テスト結果を取得する(ステップ1905)。
テストの結果に基づきWebアプリケーションの実装が完了したか否か判定し(ステップ1906)、テスト結果にエラー情報が含まれる場合には、実装が完了していないものとして、画面遷移管理装置102の迂回遷移設定部203が、エラー情報に基づき迂回遷移を設定する(ステップ1907)。
画面遷移管理装置102の画面遷移設定生成部204は、迂回遷移を含む画面遷移設定を生成して画面遷移図に反映させるとともに、迂回用のビジネスロジックを生成し(ステップ1908)、動作確認環境に配備させて(ステップ1904)、テスト実行部202によるテストを繰り返す。
一方、テスト結果にエラー情報が含まれていない場合には、実装が完了したものとして、Webアプリケーション開発者による動作確認環境の移行設定の有無を確認する(ステップ1909)。
動作確認環境の移行があった場合には、新たな動作確認環境に対して、Webアプリケーション及びテストコードを配備させた後(ステップ1904)、テスト実行部202によるテストを繰り返す。
一方、ステップ1909において、動作確認環境の移行が無い場合には、Webアプリケーション開発支援処理を終了する。
以上の各処理の詳細について説明する。
まず、テスト定義部201によるテスト生成処理を説明する。テスト生成処理では、テスト実行情報生成処理,動作確認環境情報生成処理,テストコード生成処理を行う。
図20は、テスト定義部201によるテスト実行情報生成処理の詳細を示すフローチャートである。
テスト定義部201は、まず、画面遷移図情報を読み込み、1件のビジネスロジックシェイプデータを取得する(ステップ2001)。
取得したビジネスロジックシェイプデータからビジネスロジックIDを取得し、テスト実行情報のレコードに格納する(ステップ2002)。
テスト実行フラグと、テスト成功フラグとを「FALSE」で初期化する(ステップ2003)。
画面遷移図情報からビジネスロジックIDが一致するデータベース接続シェイプデータを取得する(ステップ2004)。
取得したデータベース接続シェイプデータからデータベースIDと接続属性とを取得し、テスト実行情報のデータベース接続に格納する(ステップ2005)。
データベース接続シェイプデータに残りがあるか否かを判定し(ステップ2006)、残りがある場合には、データベース接続シェイプデータについての処理を繰り返す(ステップ2004)。
一方、データベース接続シェイプに残りが無い場合には、ビジネスロジックシェイプデータに残りがあるか否かを判定し(ステップ2007)、残りがある場合には、ビジネスロジックシェイプデータについての処理を繰り返す(ステップ2001)。
ビジネスロジックシェイプデータに残りが無い場合には処理を終了する。
図21は、テスト定義部201によるテスト実行環境情報生成処理の詳細を示すフローチャートである。
テスト定義部201は、まず、画面遷移図情報から1件のデータベースシェイプデータを取得する(ステップ2101)。
取得したデータベースシェイプデータからデータベースIDを取得し、テスト実行環境情報に格納する(ステップ2102)。
データベースシェイプデータに残りがあるか否かを判定し(ステップ2103)、残りがある場合には、次のデータベースシェイプデータについて処理を繰り返す(ステップ2101)。
一方、データベースシェイプデータに残りが無い場合には、処理を終了する。
図22は、テスト定義部201の生成するテストコードの一例を示す図である。
テストコード2200は、テストIDをクラス名2201として生成したものであり、テスト内容を示す具体的な処理部分2210は、アプリケーション開発者に実装させる。
本例の処理部分2210では、テストが成功した場合に「0」の返り値を、テストが失敗した場合に「1」の返り値を返すように実装されている。この例では、ビジネスロジックAの実装クラスである「BusinessLogicA」クラスの「execute」メソッドを、文字列「XXXX」を渡して実行し(2211)、返り値が「true」の場合にテストを成功としている(2212)。また、返り値が「false」の場合にテストを失敗としている(2213)。
次に、テスト実行部202が、テスト定義部201の生成したテスト情報に基づいてテストを実行するとともに、取得したテスト結果に基づき画面遷移図拡張情報を更新する処理について説明する。
まず、テスト実行処理として、テスト実行部202が、目的とする動作確認環境104のテスト用APサーバ105を示すアドレスの指定を受け付ける。
テスト定義部201は、図4に示す表示画面400のテスト定義部起動ボタン420の押下に応じて、図11に示すテスト定義画面1100を表示する。テスト定義画面1100上には、図20,21に示す処理により生成したテスト実行情報及び動作環境情報を表示する。
テスト定義画面1100上において、アプリケーション開発者に、接続許可属性選択欄1122を操作させることにより、動作確認環境104において許可されるデータベース操作を指定させ、指定内容を動作確認環境情報の接続許可属性に格納する。
全てのデータベースIDに対して接続許可属性を指定させた後、テスト実行ボタン430の押下に応じて、テスト実行部202が動作確認環境104におけるテストを実行し、テスト結果をテスト情報格納部207に格納する。
テスト定義部201は、テスト結果を含むテスト情報を基に、画面遷移図拡張情報を更新する。初めてテストを実行した場合には、画面遷移図情報から画面遷移図拡張情報を生成して更新する。
図23は、テスト実行処理手順を示すフローチャートである。
まず、テスト実行部202が、テスト情報203から1件のテスト実行情報を取得する(ステップ2301)。
取得したテスト実行情報から、一組の接続データベースデータを取得する(ステップ2302)。
動作確認環境情報から、取得した接続データベースデータと、データベースIDが一致する接続許可属性を取得する(ステップ2303)。
取得した接続許可属性が「ALL」か否かを判定し(ステップ2304)、「ALL」以外の場合は、接続属性と接続許可属性とが一致するか否かを判定する(ステップ2305)。
ステップ2304で接続許可属性が「ALL」の場合、または、ステップ2305で接続許可属性と接続属性が一致する場合は、接続データベースデータに残りがあるか否かを判定する(ステップ2306)。
ステップ2305で接続属性と接続許可属性とが一致しない場合には、テスト実行フラグを「FALSE」で更新する(ステップ2307)。
ステップ2306で接続データベースデータに残りがある場合には、残りの接続データベースデータについて処理を繰り返す(ステップ2302)。
ステップ2306で接続データベースデータに残りが無い場合には、テスト実行フラグを「TRUE」で更新し(ステップ2308)、テスト実行部202が、設定されたAPサーバ105に接続して、指定されたテストIDのテストプログラムを実行する(ステップ2309)。
テスト結果としてテストプログラムからの返り値を取得し、返り値が「0」か否かを判定し(ステップ2310)、返り値が「0」の場合には、テスト成功としてテスト成功フラグを「TRUE」で更新する(ステップ2311)。
一方、返り値が「0」以外(本例では、「1」)の場合には、テスト成功フラグを「FALSE」で更新する(ステップ2312)。同様に、ステップ2307でテスト実行フラグを「FALSE」で更新した場合には、テスト成功フラグを「FALSE」で更新する(ステップ2312)。
テスト成功フラグを更新した後、テスト実行情報に残りがあるか否かを判定し(ステップ2313)、残りがある場合には、処理を繰り返す(ステップ2301)。
一方、テスト実行情報に残りがない場合には、処理を終了する。
次に、画面遷移図拡張情報の生成及び更新処理について説明する。
図24は、画面遷移図拡張情報を構成するパスシェイプ拡張情報の生成処理の詳細を示すフローチャートである。
テスト定義部201は、まず、画面遷移図情報から1件のパスシェイプデータを取得する(ステップ2401)。
取得したパスシェイプデータからパスIDと、ビジネスロジックIDを取得し、それぞれパスシェイプ拡張情報のパスIDとビジネスロジックIDに格納する(ステップ2402)。
パスシェイプ拡張情報の迂回遷移表示フラグを「FALSE」で初期化する(ステップ2403)。
ビジネスロジックIDが一致するビジネスロジックシェイプデータを、画面遷移図情報から取得する(ステップ2404)。
取得したビジネスロジックシェイプデータから、結果IDを取得して、迂回遷移設定の結果IDに格納する(ステップ2405)。
迂回遷移設定の活性フラグを「FALSE」で初期化する(ステップ2406)。
ビジネスロジックシェイプデータの結果IDに残りがあるか否かを判定し(ステップ2407)、残りがある場合には、迂回遷移設定生成処理を繰り返す(ステップ2405)。
一方、結果IDに残りが無い場合には、パスシェイプデータに残りがあるか否かを判定し(ステップ2408)、残りがある場合には、処理を繰り返す(ステップ2401)。
一方、残りのパスシェイプデータが無い場合には、処理を終了する。
図25は、結果シェイプ拡張情報の生成処理の詳細を示すフローチャートである。
テスト定義部201は、まず、画面遷移図情報から、一件の結果シェイプデータを取得する(ステップ2501)。
結果シェイプから、結果IDを取得し、結果シェイプ拡張情報に格納する(ステップ2502)。
結果IDが一致するビジネスロジックシェイプデータからビジネスロジックIDを取得して、結果シェイプ拡張情報に格納する(ステップ2503)。
結果シェイプ拡張情報の活性フラグを「TRUE」で初期化する(ステップ2504)。
結果シェイプ拡張情報のエラーフラグを「FALSE」で初期化する(ステップ2505)。
以上の処理を全ての結果シェイプデータについて繰り返した後、処理を終了する(ステップ2506)。
図26はデータベース接続シェイプ拡張情報の生成処理の詳細を示すフローチャートである。
テスト定義部201は、画面遷移図情報から、一件のデータベース接続シェイプデータを取得する(ステップ2601)。
取得したデータベース接続シェイプデータから、データベースIDと、ビジネスロジックIDとを取得して、データベース接続シェイプ拡張情報にそれぞれ格納する(ステップ2602)。
データベース接続シェイプ拡張情報の活性フラグを、「TRUE」で初期化する(ステップ2603)。
データベース接続シェイプ拡張情報のエラーフラグを「FALSE」で初期化する(ステップ2604)。
以上の処理を全てのデータベース接続シェイプデータについて繰り返した後、処理を終了する(ステップ2605)。
以上のように生成した画面遷移図拡張情報について、テスト実行部202がテスト情報格納部207に格納したテスト結果に基づいて行う更新処理を説明する。
図27はパスシェイプ拡張情報の更新手順を示すフローチャートである。
テスト実行部202は、まず、画面遷移図拡張情報から、一件のパスシェイプ拡張情報を取得する(ステップ2701)。
テスト情報から、ビジネスロジックIDが一致するテスト実行情報を取得する(ステップ2702)。
テスト実行情報のテスト成功フラグの値を取得して「TRUE」か否かを判定し(ステップ2703)、「TRUE」の場合には、迂回遷移表示フラグを「FALSE」で更新する(ステップ2704)。
一方、テスト成功フラグの値が「FALSE」の場合には、迂回遷移表示フラグを「TRUE」で更新する(ステップ2705)。
以上の処理を全てのパスシェイプ拡張情報について繰り返した後、処理を終了する(ステップ2706)。
図28は、結果シェイプ拡張情報の更新手段を示すフローチャートである。
テスト実行部202は、まず、画面遷移図拡張情報から、一件の結果シェイプ拡張情報を取得する(ステップ2801)。
テスト情報から、ビジネスロジックIDが一致するテスト実行情報を取得する(ステップ2802)。
テスト実行情報のテスト成功フラグの値を取得して、テスト成功フラグの値が「TRUE」か否かを判定する(ステップ2803)。
テスト成功フラグが「TRUE」の場合には、結果シェイプ拡張情報の活性フラグをTRUEで更新するとともに(ステップ2804)、エラーフラグを「FALSE」で更新する(ステップ2805)。
一方、テスト成功フラグが「FALSE」の場合には、結果シェイプ拡張情報の活性フラグを「FALSE」で更新し(ステップ2806)、テスト実行フラグを取得して、テスト実行フラグの値が「TRUE」か否かを判定する(ステップ2807)。
テスト実行フラグが「TRUE」の場合には、結果シェイプ拡張情報のエラーフラグを「TRUE」で更新する(ステップ2808)。
一方、テスト実行フラグが「FALSE」の場合は、結果シェイプ拡張情報のエラーフラグを「FALSE」で更新する(ステップ2805)。
以上の処理を全ての結果シェイプ拡張情報について繰り返した後、処理を終了する(ステップ2809)。
図29はデータベース接続シェイプ拡張情報の更新手段を示すフローチャートである。
テスト実行部202は、まず、画面遷移図拡張情報から、一件のデータベース接続シェイプ拡張情報を取得する(ステップ2901)。
テスト情報から、ビジネスロジックIDが一致するテスト実行情報を取得する(ステップ2902)。
テスト実行情報のテスト成功フラグを取得して、テスト成功フラグが「TRUE」か否かを判定する(ステップ2903)。
テスト成功フラグが「TRUE」の場合には、データベース接続シェイプ拡張情報の活性フラグを「TRUE」で更新し(ステップ2904)、エラーフラグを「FALSE」で更新する(ステップ2905)。
一方、テスト成功フラグが「FALSE」の場合は、データベース接続シェイプ拡張情報の活性フラグを「FALSE」で更新し(ステップ2906)、テスト情報からデータベースIDが一致する動作確認環境情報を取得する(ステップ2907)。
動作確認環境情報の接続許可属性を取得して、値が「ALL」か否かを判定する(ステップ2908)。
接続許可属性の値が「ALL」の場合には、データベース接続シェイプ拡張情報のエラーフラグを「FALSE」で更新する(ステップ2905)。
接続許可属性の値が「ALL」以外の場合は、データベースIDが一致する接続データベースを取得し(ステップ2909)、接続属性と接続許可属性とを比較する(ステップ2910)。
接続属性と接続許可属性とが一致する場合はデータベース接続シェイプ拡張情報のエラーフラグを「FALSE」で更新する(ステップ2905)。
一方、接続属性と接続許可属性とが一致しない場合には、データベース接続シェイプ拡張情報のエラーフラグを「TRUE」で更新する(ステップ2911)。
以上の処理を全てのデータベース接続シェイプ拡張情報について繰り返した後、処理を終了する(ステップ2912)。
以上の処理によりテスト定義部201により画面遷移図拡張情報を更新した後、画面遷移設定生成部204が、更新内容を反映した画面遷移図を生成して表示する。
図30は、図3に示す画面遷移図に対し、テスト結果に基づく画面遷移図拡張情報を反映した例を示したものである。
本例に示す画面遷移図3000では、テストに失敗したビジネスロジックの結果シェイプ3001と、データベース接続シェイプ3002とが破線で表示されるとともに、エラー箇所にエラーマーク3003が表示される。またテストに失敗したビジネスロジックを迂回するように迂回遷移3004が表示される。この段階では、迂回遷移3004は破線で表示される。
以下、画面遷移図における画面遷移図拡張情報の反映処理について説明する。
図31は、パスシェイプ拡張情報を画面遷移図表示領域410に表示した画面遷移図に反映する手順を示すフローチャートである。
画面遷移設定生成部204は、まず、画面遷移図拡張情報から、一件のパスシェイプ拡張情報を取得する(ステップ3101)。
パスシェイプ拡張情報の迂回遷移表示フラグを取得して、値が「TRUE」か否かを判定する(ステップ3102)。
迂回遷移表示フラグの値が「TRUE」の場合には、パスシェイプ拡張情報から一組の迂回遷移設定を取得する(ステップ3103)。
迂回遷移設定の結果IDが一致する結果シェイプを画面遷移図情報から取得し、その画面IDが一致する画面シェイプを、画面遷移図情報から取得する(ステップ3104)。
迂回遷移設定の活性フラグを取得して、値が「TRUE」か否かを判定し(ステップ3105)、活性フラグの値が「TRUE」の場合は、パスIDが一致するパスシェイプから、取得した画面シェイプへ迂回遷移を実線で描画する(ステップ3106)。
一方、活性フラグの値が「FALSE」の場合は、パスIDが一致する画面シェイプへ破線の迂回遷移を描画する(ステップ3107)。
迂回遷移IDが存在するか否かを判定し(ステップ3108)、存在する場合には迂回遷移IDを示す文字列を迂回遷移の横に描画する(ステップ3109)。
一方、迂回遷移IDが存在しない場合、または、迂回遷移IDを描画した後、迂回遷移設定に残りが存在するか否かを判定し(ステップ3110)、存在する場合には、迂回遷移設定についての処理を繰り返す(ステップ3103)。
一方、迂回遷移設定の残りが存在しない場合、または、ステップ3102で迂回遷移表示フラグの値が「FALSE」の場合には、パスシェイプ拡張情報に残りが存在するか否かを判定し(ステップ3111)、存在する場合には、パスシェイプ拡張情報についての処理を繰り返す(ステップ3102)。
以上の処理を全てのパスシェイプ拡張情報について行った後、処理を終了する。
図32は、結果シェイプ拡張情報を画面遷移図表示領域410に表示した画面遷移図に反映する手順を示すフローチャートである。
画面遷移設定生成部204は、まず、画面遷移図拡張情報204から一件の結果シェイプ拡張情報を取得する(ステップ3201)。
結果シェイプ拡張情報から活性フラグを取得して、値が「TRUE」か否かを判定する(ステップ3202)。
活性フラグが「TRUE」の場合は、結果IDが一致する結果シェイプの表示を実線に変更し(ステップ3203)、結果シェイプに付加したエラーマークを除去する(ステップ3204)。
一方、活性フラグが「FALSE」の場合は、結果IDが一致する結果シェイプの表示を破線に変更した後(ステップ3205)、結果シェイプ拡張情報からエラーフラグを取得して、値が「TRUE」か否かを判定する(ステップ3206)。
エラーフラグが「TRUE」の場合は、結果シェイプにエラーマークを付加する(ステップ3207)。
一方、エラーフラグが「FALSE」の場合は、結果シェイプに付加したエラーマークを除去する(ステップ3204)。
以上の処理を全ての結果シェイプ拡張情報に対して行った後、処理を終了する(ステップ3208)。
図33は、データベース接続シェイプ拡張情報を画面遷移図表示領域410に表示した画面遷移図に反映する手順を示すフローチャートである。
画面遷移設定生成部204は、まず、画面遷移図拡張情報から一件のデータベース接続シェイプ拡張情報を取得する(ステップ3301)。
データベース接続シェイプ拡張情報から活性フラグを取得して、値が「TRUE」か否かを判定する(ステップ3302)。
活性フラグが「TRUE」の場合は、データベースIDとビジネスロジックIDが一致するデータベース接続シェイプの表示を実線に変更した後(ステップ3303)、データベース接続シェイプに付加したエラーマークを除去する(ステップ3304)。
一方、活性フラグが「FALSE」の場合は、データベースIDとビジネスロジックIDが一致するデータベース接続シェイプの表示を破線に変更した後(ステップ3305)、データベース接続シェイプ拡張情報からエラーフラグを取得して、値が「TRUE」か否かを判定する(ステップ3306)。
エラーフラグの値が「TRUE」の場合は、データベース接続シェイプにエラーマークを付加する(ステップ3307)。
一方、エラーフラグの値が「FALSE」の場合は、データベース接続シェイプに付加したエラーマークを除去する(ステップ3304)。
以上の処理を全てのデータベース接続シェイプ拡張情報に対して行った後、処理を終了する(ステップ3308)。
以上の処理により、画面遷移図拡張情報が反映された画面遷移図について、具体例に基づき説明する。
図34は、画面遷移図拡張情報の反映の一例として、データベースへの操作が原因でテストが実行されなかった場合の例を示す。
本例では、3つのデータベースの内、2つのデータベースに対しての操作が制限された状態を示す。本実施の形態では、あるビジネスロジックが複数のデータベースに対して操作を行う場合、その中に一つでも操作が許されないデータベースがあれば、そのビジネスロジックのテストは実行されない。
この場合、画面遷移図上では、テストが実行されないビジネスロジックを示すビジネスロジックシェイプ3401に連結したデータベース接続シェイプ3402〜3404と、結果シェイプ3405との全てを破線で表示する。
また、操作制限がされているデータベースのデータベース接続シェイプ3402,3403上にエラーマーク3406を付加する。
さらに、迂回遷移3407を破線で表示する。
本図により、データベース1,2の操作制限によりビジネスロジックAについてのテストが実行されなかったことが把握される。
図35は、画面遷移図拡張情報の反映の一例として、テストが失敗した場合の例を示す。
本例では、ビジネスロジックAの実行結果がエラーであった状態を示す。
この場合、画面遷移図上では、テストが失敗したビジネスロジックを示すビジネスロジックシェイプ3501に連結したデータベース接続シェイプ3502〜3504と、結果シェイプ3505との全てを破線で表示する。
また、結果シェイプ3505上にエラーマーク3506を付加する。
また、図34と同様に、迂回遷移3507を破線で表示する。
本図により、ビジネスロジックAのテストが失敗したことが把握される。この場合、図34の例と図35の例とでは、エラーマークの表示位置が異なるため、データベースの操作制限か、テスト失敗かを明確に区別できることとなる。
図36は、画面遷移図拡張情報の反映の一例として、複数の結果IDを持つビジネスロジックのテストが失敗した場合の例を示す。
この場合、結果シェイプ3601〜3603毎に迂回遷移3604〜3606を表示する。本例では、結果シェイプが3つあるため、3つの迂回遷移を表示している。
図37は、画面遷移図拡張情報の反映の一例として、複数のパスから実行されるビジネスロジックのテストが失敗した場合の例を示す。
この場合、それぞれのパスシェイプ3701,3702に対して、迂回遷移3703,3704を表示する。本例では、この例では2つのパスが実行されているので、2つの迂回遷移を表示している。
次に、迂回遷移設定部203の行う迂回遷移設定処理について説明する。
迂回遷移設定処理では、図4に示す画面遷移図表示画面400の画面遷移図表示部410に破線表示した迂回遷移418の指定操作に応じて、図18に示す迂回遷移設定画面を表示する。
迂回遷移設定画面において、アプリケーション開発者により、迂回遷移設定が入力され、迂回設定ボタンが押下されると、画面遷移表示部において破線で表示していた迂回遷移を実線で表示する。
図38は、迂回遷移設定処理の行われた画面遷移図の一例を示す図である。
画面遷移図では、アプリケーション開発者により迂回遷移設定のされた迂回遷移3801を実線で表示する。本例では、ビジネスロジックAを迂回する迂回遷移を実線表示している。
図39は、迂回遷移設定部の表示手順を示すフローチャートである。
迂回遷移設定部203は、画面遷移図表示部410に破線表示した迂回遷移の指定操作に応じて、画面遷移図拡張情報から、指定された迂回遷移設定を取得する(ステップ3901)。
迂回遷移設定の迂回遷移IDが存在するか否かを判定し(ステップ3902)、存在する場合には、迂回遷移設定画面に迂回遷移情報を表示して処理を終了する(ステップ3903)。
一方、迂回遷移IDが存在しない場合には、空の迂回遷移設定画面を表示して処理を終了する(ステップ3904)。
図40は、迂回遷移設定部が迂回遷移設定画面に入力されたデータを画面遷移図拡張情報に格納する処理手順を示すフローチャートである。
迂回遷移設定部は、迂回遷移設定画面において、迂回キャンセルボタン1820又は迂回設定ボタン1830の押下に応じて、迂回遷移IDの編集欄に入力された項目を、迂回遷移情報の迂回遷移IDに格納する(ステップ4001)。
迂回遷移IDを、パスシェイプ拡張情報の迂回遷移IDに格納する(ステップ4002)。
押下されたボタンの種類を判定し(ステップ4003)、押下されたボタンが迂回キャンセルボタン1820であった場合は、パスシェイプ拡張情報の活性フラグを「FALSE」で更新する(ステップ4004)。
一方、押下されたボタンが迂回設定ボタン1830であった場合は、パスシェイプ拡張情報の活性フラグを「TRUE」で更新する(ステップ4005)。
活性フラグの更新を終えると、画面遷移設定生成部204は、図31のフローチャートに示す処理手順に従って、更新された迂回遷移設定の内容を画面遷移図に反映する(ステップ4006)。
次に、画面遷移設定生成部204の行う画面遷移設定処理について説明する。
迂回遷移の設定を行った後、画面遷移設定画面の画面遷移設定生成ボタン430の押下に応じて、画面遷移図情報と画面遷移図拡張情報とから、画面遷移設定と迂回遷移を示すソースコードとを生成する。
図41は、画面遷移設定生成部204が画面遷移設定と、迂回遷移を示すソースコードとを生成する処理手順を示すフローチャートである。
画面遷移設定生成部204は、まず、画面遷移図情報から画面遷移設定を生成する(ステップ4101)。
画面遷移図拡張情報から一件のパスシェイプ拡張情報を取得する(ステップ4102)。
取得したパスシェイプ拡張情報の迂回遷移表示フラグを取得して、値が「TRUE」か否かを判定する(ステップ4103)。
迂回遷移表示フラグの値が「TRUE」の場合には、ビジネスロジックの生成カウンターを「0」で初期化する(ステップ4104)。
取得したパスシェイプ拡張情報から、一組の迂回遷移設定を取得する(ステップ4104)。
取得した迂回遷移設定から活性フラグを取得して、値が「TRUE」か否かを判定する(ステップ4106)。
活性フラグの値が「TRUE」の場合には、迂回遷移設定の結果IDと、迂回遷移IDから迂回用のビジネスロジックを生成し、ビジネスロジックの生成カウンターを「1」増加して(ステップ4107)、迂回遷移設定の残りがあるか否かを判定する(ステップ4108)。ステップ4106において、活性フラグの値が「FALSE」の場合も同様に、迂回遷移設定の残りがあるか否かを判定する(ステップ4108)。
迂回遷移設定の残りが無い場合には、ビジネスロジックの生成カウンターの値を判定する(ステップ4109)。
一方、迂回遷移設定の残りがある場合には、迂回遷移設定についての処理を繰り返す(ステップ4105)。
生成カウンターが「0」の場合は、何もせずにパスシェイプ拡張情報の残りがあるか否かを判定し(ステップ4110)、残りがある場合にはパスシェイプ拡張情報についての処理を繰り返す(ステップ4102)。
生成カウンターが「1」の場合は、生成した画面遷移設定の、ビジネスロジックIDの値を迂回用のビジネスロジックの値で更新した後(ステップ4111)、パスシェイプ拡張情報の残りがあるか否かを判定し(ステップ4110)、残りがある場合にはパスシェイプ拡張情報についての処理を繰り返す(ステップ4102)。
生成カウンターが「2」以上の場合は、生成した各ビジネスロジックに遷移する選択画面を生成し(ステップ4112)、その選択画面に遷移するビジネスロジックを生成する(ステップ4113)。
画面遷移設定のビジネスロジックIDの値をステップ4113で生成したビジネスロジックの値で更新した後(ステップ4114)、パスシェイプ拡張情報の残りがあるか否かを判定し(ステップ4110)、残りがある場合にはパスシェイプ拡張情報についての処理を繰り返す(ステップ4102)。
ステップ4103で迂回遷移表示フラグが「FALSE」の場合も同様に、パスシェイプ拡張情報の残りがあるか否かを判定し(ステップ4110)、残りがある場合にはパスシェイプ拡張情報についての処理を繰り返す(ステップ4102)。
以上の処理を全てのパスシェイプ拡張情報に対して行った後(ステップ4111)処理を終了する。
画面遷移設定生成部204は、以上の処理により生成した画面遷移設定及ビジネスロジックを画面遷移切り替え部205に渡す。
画面遷移切り替え部205は、アプリケーション開発者により予め指定されたAPサーバに画面遷移設定と、迂回遷移を示すソースコードをコンパイルした結果とを配備する。
この状態でWebアプリケーションを実行すると、テストに失敗したビジネスロジックを迂回して次の画面に遷移する。
例えば、図38に示す画面遷移図の例では、Webアプリケーションを起動して画面AのパスP01を実行した場合、ビジネスロジックAは実行されず、迂回遷移を示すビジネスロジックCP01が実行され、画面Bへと遷移することとなる。
図42は、ステップ4107で生成される迂回用のビジネスロジックの例であり、図15の内容から生成した場合の例である。
迂回ビジネスロジックには、パスシェイプ拡張情報の迂回遷移IDが示す迂回遷移情報の内容が反映される。
例えば、図17に示す迂回遷移情報の入力データ1702の例では「USER_NAME」という名前で、「日立 太郎」という文字列をセッションに登録することが指示されているので、生成するビジネスロジックでは、「日立 太郎」の値を持つ文字列を宣言し(4201)、その文字列をリクエストから取得したセッション(4202)に、「USER_NAME」という名前で登録している(4203)。
同様に、図17の例では、「COUNTER」という名前で、「23」という数値をリクエストに登録することが指示されているので、生成するビジネスロジックでは、「23」の値を持つ整数を宣言し(4204)、その整数を、リクエストに「COUNTER」という名前で登録している(4205)。
また、図17の例では、「AGE」という名の変数をセッションから破棄することが指示されているので、生成するビジネスロジックでは、セッションから「AGE」という名の変数を破棄している(4206)。
また、ビジネスロジックが返す結果IDは、迂回遷移設定で指定されている「P01_1」となっている(4207)。
図43は、1つのビジネスロジックを迂回する複数の迂回遷移が設定された場合の例を示す図である。
例えば、図36に示す画面遷移図のように、1つのビジネスロジックを迂回する複数の迂回遷移を生成した場合において、本例の画面遷移図に示すように複数の迂回遷移4301,4302が設定された場合には、画面遷移設定処理において、選択画面4310を生成する。
選択画面4310では、各迂回遷移の遷移先となる画面B,画面Cへのリンクが表示されている。画面Bへのリンクを実行した場合は画面遷移図中にCP01で定義された迂回用のビジネスロジックが実行されて画面Bへと遷移する。一方、画面Cへのリンクを実行した場合はCP02で定義された迂回用のビジネスロジックが実行されて画面Cへと遷移する。
以上のように、本実施の形態に係るWebアプリケーション開発支援装置では、テスト結果や動作確認環境におけるデータベースの操作制限等に応じて、一部のビジネスロジックを迂回する画面遷移設定を行うとともに、画面遷移設定を画面遷移図に反映させることが可能となる。
本発明の一実施の形態に係るWebアプリケーション開発支援システムの概略構成を示すブロック図である。 Webアプリケーション開発支援システムを構成する画面遷移管理装置の概略構成を示すブロック図である。 画面遷移図情報に基づき生成した画面遷移図の一例を示す図である。 画面遷移図を表示した表示画面の一例を示す図である。 画面遷移図情報を構成する画面シェイプデータのデータ構造の一例を示す図である。 画面遷移図情報を構成するパスシェイプデータのデータ構造の一例を示す図である。 画面遷移図情報を構成するビジネスロジックシェイプデータのデータ構造の一例を示す図である。 画面遷移図情報を構成する結果シェイプデータのデータ構造の一例を示す図である。 画面遷移図情報を構成するデータベース接続シェイプデータのデータ構造の一例を示す図である。 画面遷移図情報を構成するデータベースシェイプデータのデータ構造の一例を示す図である。 テスト定義画面の一例を示す図である。 テスト情報を構成するテスト実行情報のデータ構造の一例を示す図である。 テスト情報を構成する動作確認環境情報のデータ構造の一例を示す図である。 画面遷移図拡張情報を構成するパスシェイプ拡張情報のデータ構造の一例を示す図である。 画面遷移図拡張情報を構成する結果シェイプ拡張情報のデータ構造の一例を示す図である。 画面遷移図拡張情報を構成するデータベース接続シェイプ拡張情報のデータ構造の一例を示す図である。 画面遷移図拡張情報を構成するテスト実行情報の迂回遷移構造の一例を示す図である。 迂回遷移設定画面の一例を示す図である。 システム全体の処理の概要を示すフローチャートである。 テスト実行情報生成処理を示すフローチャートである。 動作確認環境情報生成処理を示すフローチャートである。 テストコードの実装例を示す図である。 テスト実行処理手順を示すフローチャートである。 パスシェイプ拡張情報生成処理を示すフローチャートである。 結果シェイプ拡張情報生成処理を示すフローチャートである。 データベース接続シェイプ拡張情報生成処理を示すフローチャートである。 パスシェイプ拡張情報更新処理を示すフローチャートである。 結果シェイプ拡張情報更新処理を示すフローチャートである。 データベース接続シェイプ拡張情報処理を示すフローチャートである。 テスト結果を反映した画面遷移図の一例を示す図である。 パスシェイプ拡張情報を画面遷移図に反映する処理を示すフローチャートである。 結果シェイプ拡張情報を画面遷移図に反映する処理を示すフローチャートである。 データベース接続シェイプ拡張情報を画面遷移図に反映する処理を示すフローチャートである。 テスト結果を反映した画面遷移図の一例を示す図である。 テスト結果を反映した画面遷移図の一例を示す図である。 テスト結果を反映した画面遷移図の一例を示す図である。 テスト結果を反映した画面遷移図の一例を示す図である。 迂回遷移設定後の画面遷移図の一例を示す図である。 迂回遷移設定の表示処理を示すフローチャートである。 迂回遷移設定格納処理を示すフローチャートである。 画面遷移設定及び迂回遷移設定ソースコードの生成処理を示すフローチャートである。 迂回遷移を示すソースコードの一例を示す図である。 複数の迂回遷移が設定された状態の画面遷移図の一例を示す図である。 従来の一般的なWebアプリケーション構成を示す図である。 従来の画面遷移設定情報のデータ構造の一例を示す図である。
符号の説明
101 画面遷移図設計装置、102 画面遷移管理装置、103 アプリケーション開発装置、104 動作確認環境、105 テスト用APサーバ、106 テスト用データベース、201 テスト実行部、202 テスト実行部、203 迂回遷移設定部、204 画面遷移設定生成部、205 画面遷移切り替え部、206 画面遷移図情報格納部、207 テスト情報格納部、208 画面遷移図拡張情報格納部。

Claims (8)

  1. 開発対象となるWebアプリケーションについて、遷移パスと、入出力画面と、処理結果と、ビジネスロジックとを定義した画面遷移設定情報に基づき画面遷移図を生成して表示する手段を備えた画面遷移管理装置であって、
    前記画面遷移設定情報に含まれる一部のビジネスロジックを迂回する迂回遷移の設定を受付け、当該迂回遷移を示す画面遷移図拡張情報を生成する画面遷移図拡張情報生成手段と、
    前記画面遷移設定情報及び前記画面遷移図拡張情報に基づき、前記画面遷移図上に前記迂回遷移を表示した画面遷移図を生成して表示する画面遷移設定生成手段と
    を備えることを特徴とする画面遷移管理装置。
  2. 前記画面遷移管理装置は、
    テスト用のアプリケーションサーバとデータベースとを備えた動作確認環境に対して、予めテストを実行するビジネスロジックを定義したテスト実行情報に基づきテストを実行してテスト結果を取得するテスト実行手段と、
    前記テスト実行手段が取得したテスト結果に含まれるエラー情報に基づき、ビジネスロジックを迂回する迂回遷移を設定する迂回遷移設定手段と
    をさらに備えることを特徴とする請求項1に記載の画面遷移管理装置。
  3. 前記テスト実行情報には、前記ビジネスロジックが接続するデータベースについての接続許可属性が含まれるものとし、
    前記テスト実行手段は、前記接続許可属性が不許可の場合には、前記テスト実行を行わずにテスト結果をエラーとする手段をさらに備えることを特徴とする請求項2に記載の画面遷移管理装置。
  4. 前記画面遷移設定生成手段は、前記迂回遷移の設定に対応したビジネスロジックを構成するソースコードを生成する手段をさらに備えることを特徴とする請求項2又は3のいずれかに記載の画面遷移管理装置。
  5. 開発対象となるWebアプリケーションについて、遷移パスと、入出力画面と、処理結果と、ビジネスロジックとを定義した画面遷移設定情報に基づき画面遷移図を生成して表示する処理をコンピュータに実行させる画面遷移管理プログラムであって、
    前記画面遷移設定情報に含まれる一部のビジネスロジックを迂回する迂回遷移の設定を受付け、当該迂回遷移を示す画面遷移図拡張情報を生成する画面遷移図拡張情報生成処理と、
    前記画面遷移設定情報及び前記画面遷移図拡張情報に基づき、前記画面遷移図上に前記迂回遷移を表示した画面遷移図を生成して表示する画面遷移図生成処理と
    をコンピュータに実行させることを特徴とする画面遷移管理プログラム。
  6. テスト用のアプリケーションサーバとデータベースとを備えた動作確認環境に対して、予めテストを実行するビジネスロジックを定義したテスト実行情報に基づきテストを実行してテスト結果を取得するテスト実行処理と、
    取得したテスト結果に含まれるエラー情報に基づき、ビジネスロジックを迂回する迂回遷移を設定する迂回遷移設定処理と
    をさらにコンピュータに実行させることを特徴とする請求項5に記載の画面遷移管理プログラム。
  7. 前記テスト実行情報には、前記ビジネスロジックが接続するデータベースについての接続許可属性が含まれるものとし、
    前記接続許可属性が不許可の場合には、前記テスト実行を行わずにテスト結果をエラーとする処理をさらにコンピュータに実行させることを特徴とする請求項6に記載の画面遷移管理プログラム。
  8. 前記迂回遷移の設定に対応したビジネスロジックを構成するソースコードを生成する処理をさらにコンピュータに実行させることを特徴とする請求項6又は7のいずれかに記載の画面遷移管理プログラム。


JP2005299589A 2005-10-14 2005-10-14 画面遷移管理装置及び画面遷移管理プログラム Pending JP2007109033A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005299589A JP2007109033A (ja) 2005-10-14 2005-10-14 画面遷移管理装置及び画面遷移管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005299589A JP2007109033A (ja) 2005-10-14 2005-10-14 画面遷移管理装置及び画面遷移管理プログラム

Publications (1)

Publication Number Publication Date
JP2007109033A true JP2007109033A (ja) 2007-04-26

Family

ID=38034854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005299589A Pending JP2007109033A (ja) 2005-10-14 2005-10-14 画面遷移管理装置及び画面遷移管理プログラム

Country Status (1)

Country Link
JP (1) JP2007109033A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017194893A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194894A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194895A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194892A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストケース生成プログラム及びテストケース生成方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005107823A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 画面遷移図モデルを用いたソフトウエアテストプログラム、方法及び装置
JP2005242683A (ja) * 2004-02-26 2005-09-08 Mitsubishi Electric Corp コンピュータを用いたプログラム作成装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005107823A (ja) * 2003-09-30 2005-04-21 Fujitsu Ltd 画面遷移図モデルを用いたソフトウエアテストプログラム、方法及び装置
JP2005242683A (ja) * 2004-02-26 2005-09-08 Mitsubishi Electric Corp コンピュータを用いたプログラム作成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017194893A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194894A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194895A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
JP2017194892A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストケース生成プログラム及びテストケース生成方法

Similar Documents

Publication Publication Date Title
US8762935B2 (en) System and method for creating and updating a data model from disparate events received on arbitrary application threads
JP5350428B2 (ja) 自動プログラム生成装置、方法及びコンピュータプログラム
US8661416B2 (en) Method and apparatus for defining and instrumenting reusable Java server page code snippets for website testing and production
JPH11296544A (ja) 構造化データ管理システム及び構造化データ管理プログラムを記録したコンピュータ読み取り可能な記録媒体
US20080015911A1 (en) Methods and apparatuses for developing business solutions
JPWO2004104824A1 (ja) ユーザインタフェースアプリケーション開発装置および開発方法
JP2007109033A (ja) 画面遷移管理装置及び画面遷移管理プログラム
WO2018083977A1 (ja) システム構築支援装置、方法およびプログラム
JPH1125126A (ja) システム設計ツール及びデータウエアハウス設計システム及び方法
JP6097231B2 (ja) プログラム生成装置および方法
JP7277694B2 (ja) 情報処理装置、その制御方法及びプログラム
Walther ASP. NET MVC Framework Unleashed
JPH1124904A (ja) プログラム作成装置及びプログラム作成プログラムを記憶した記憶媒体
JP2018116750A (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP4708685B2 (ja) Cliコマンド投入方法/プログラム/プログラム記録媒体/装置、データ記録媒体
JP2005251127A (ja) パターン体系構築装置、及び、パターン適用装置
JP6331307B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2000353087A (ja) 高可用性システムの動作シナリオ開発環境を有する計算機システム
JPH09223040A (ja) ソフトウェアのシステムテスト支援装置およびこれに用いるテストシナリオ生成装置
JP2001318796A (ja) 内外イベントドリブン方式によるプログラム実行制御方法、記録媒体およびプログラム作成支援システム
JP7311740B2 (ja) 情報処理システム、その制御方法、及びプログラム
JP4860415B2 (ja) Webサービステスト装置、Webサービステスト方法、及びプログラム
JP2019197261A (ja) 情報処理装置、その制御方法及びプログラム
Troelsen et al. Introducing ASP. NET Core Web Applications
JP5251863B2 (ja) ツリ−構造を利用した、ユ−ザ・インタフェイスの構成要素情報の記録およびユ−ザ・インタ−フェイス操作を記録再生するためのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110509

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110729

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111122