JP6265030B2 - アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム - Google Patents

アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム Download PDF

Info

Publication number
JP6265030B2
JP6265030B2 JP2014091430A JP2014091430A JP6265030B2 JP 6265030 B2 JP6265030 B2 JP 6265030B2 JP 2014091430 A JP2014091430 A JP 2014091430A JP 2014091430 A JP2014091430 A JP 2014091430A JP 6265030 B2 JP6265030 B2 JP 6265030B2
Authority
JP
Japan
Prior art keywords
screen
transition
value
mockup
file
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.)
Active
Application number
JP2014091430A
Other languages
English (en)
Other versions
JP2015210639A (ja
Inventor
亨 青柳
亨 青柳
良太 橋本
良太 橋本
隆幸 開
隆幸 開
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2014091430A priority Critical patent/JP6265030B2/ja
Publication of JP2015210639A publication Critical patent/JP2015210639A/ja
Application granted granted Critical
Publication of JP6265030B2 publication Critical patent/JP6265030B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、アプリケーション開発システム、開発装置のデータ処理方法、およびプログラムに関する。
ウェブアプリケーションの開発を支援するプログラム生成装置の一例が特許文献1に記載されている。特許文献1のプログラム生成装置は、業務仕様、物理仕様の入力と業務パターンの選択を行い、業務仕様、物理仕様、業務パターンの選択結果に基づいて、前記業務仕様で定義された各データ項目に対応したデータベースの構築、並びに前記データベースへのアクセスを行うためのBean(プログラム部品)の生成、前記業務仕様情報で定義された各データ項目の入出力画面を表示するためのJSP(JavaServer Pages)の生成、および前記入出力画面からの入力情報を取得して該入力情報に基づいて前記BeanおよびJSPの実行を制御するためのサーブレットの生成をそれぞれ行う。
特許文献2に記載された開発支援装置は、ソースコード生成部がデータアクセスクラスを呼び出すビジネスロジッククラスのソースコードを生成し、そのソースコードが、呼び出し先のデータアクセスクラスを特定するコードを含まない。これにより、依存性が排除される。一方、設定ファイル生成部が、クラス間の関連を定義する関連定義情報に基づいてインジェクション設定ファイルを生成し、このファイルには、どのビジネスロジッククラスから、どのデータアクセスクラスを呼び出すのかが記述される。ビジネスロジッククラスのプログラム実行時には、DI(Dependency Injection)コンテナによってインジェクション設定ファイルが参照され、ビジネスロジッククラスに対しデータアクセスクラスが与えられる。これにより依存性が注入される。
特許文献3に記載された画面設計レビューシステムは、コンピュータシステムにおけるクライアントPC(Personal Computer)において、ウェブオーサリングツールの画面デザインファイルに定義された画面レイアウト情報、画面イベント情報、およびイベント処理方法の情報を入力情報として、画面ファイル出力処理を行い、画面ファイルを出力し、クライアントPCが出力した画面ファイル、クライアントPC上のウェブブラウザ、およびサーバPC上のアプリケーションサーバなどを用いてモックアップ画面を表示することで、開発者と顧客における画面設計仕様の齟齬を防止する。
特開2004−318260号公報 特開2011−22906号公報 特開2013−143087号公報
ウェブアプリケーションを開発する装置において、本発明者は、以下のような課題を見出した。
システム開発において、画面や帳票などのユーザインタフェースに関わる仕様は、ユーザによる変更要望の発生確率が高い部分である。しかし、画面や帳票などの仕様を決めるシステムの要件や基本設計などは、システム開発の上流工程で行われ、その後、データベース設計、ビジネスロジック設計等の下流工程へと進む。そのため、システムがほぼ完成した段階で、ユーザテストを行った場合に、ユーザから画面や帳票に関する仕様変更の要望が発生すると、上流工程まで遡って設計変更を行う必要が生じ、その変更は下流工程への設計内容にまで影響を及ぼしかねない。
したがって、上流工程の段階で、ユーザにシステムのモックアップで画面や帳票の仕様を確認してもらい、要望を聞きながら、ユーザの要望に沿った要件を確定すると同時に、その場で実機用となりうるアプリケーションプログラムのソースコードを生成し、完成させることができれば、下流工程への影響がなくなり、開発期間が短縮できる。
このように、特にユーザの要望により変更が生じやすい仕様の確定を、上流工程で行い、その段階で、実機用となりうるアプリケーションプログラムを生成するという発想は、上述した文献記載の技術にはなかった。
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、システムの開発期間を短縮できるアプリケーション開発システム、開発装置のデータ処理方法、およびプログラムを提供することにある。
本発明のアプリケーション開発システムは、
対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する画面情報取得手段と、
前記画面情報取得手段により取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成するソースコード生成手段と、
を備える。
本発明のコンピュータプログラムは、
コンピュータに、
対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する手順、
取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する手順、をコンピュータに実行させるためのプログラムである。
本発明の開発装置のデータ処理方法は、
開発装置が、
対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得し、
取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する、
開発装置のデータ処理方法である。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
また、本発明のデータ処理方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明のデータ処理方法およびコンピュータプログラムを実施するときには、その複数の手順の順番は内容的に支障のない範囲で変更することができる。
さらに、本発明のデータ処理方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
本発明によれば、システムの開発期間を短縮できるアプリケーション開発システム、開発装置のデータ処理方法、およびプログラムが提供される。
本発明の実施の形態に係る開発装置の論理的な構成を示す機能ブロック図である。 本発明の実施の形態に係る開発装置を実現するコンピュータのハードウェア構成を示すブロック図である。 本発明の実施の形態に係る開発装置のデータ処理方法における処理手順を示すフローチャートである。 本発明の実施の形態に係る開発装置の論理的な構成を示す機能ブロック図である。 本発明の実施の形態に係るアプリケーション開発システムの構成の一例を示すブロック図である。 本発明の実施の形態に係るアプリケーション開発システムにより開発されたシステムの構成例を示すブロック図である。 本発明の実施の形態におけるウェブアプリケーションの画面の例を示す図である。 本発明の実施の形態に係る開発装置で生成されるルールテーブルと値テーブルのテンプレートの例を示す図である。 本発明の実施の形態に係る開発装置で生成されたルールテーブルと値テーブルのテンプレートにシミュレーション用のデータが入力された後の例を示す図である。 本発明の実施の形態に係る開発装置の動作の一例を示すフローチャートである。 本発明の実施の形態に係る開発装置で生成されたモックアップ用アプリケーションプログラムをウェブサーバ上で検証する処理手順の一例を示すフローチャートである。 本発明の実施の形態に係る開発装置の動作の一例を示すフローチャートである。 本発明の実施の形態に係る開発装置で生成された本番用アプリケーションプログラムをウェブサーバ上で動作させる場合の処理手順の一例を示すフローチャートである。 本発明のアプリケーション開発システムにおけるソースコードの実施例を示す図である。 本発明のアプリケーション開発システムにおけるBeanの生成手順の実施例を示すフローチャートである。 本発明のアプリケーション開発システムにおけるモックアップ用データファイルの実施例を示す図である。 本発明のアプリケーション開発システムにおけるBeanの生成手順の実施例を示すフローチャートである。 本発明のアプリケーション開発システムにおけるモックアップ用データファイルの実施例を示す図である。 本発明のアプリケーション開発システムにおけるBeanの生成手順の実施例を示すフローチャートである。 本発明のアプリケーション開発システムにおけるモックアップ用データファイルの実施例を示す図である。 本発明のアプリケーション開発システムにおけるBeanの生成手順の実施例を示すフローチャートである。 本発明のアプリケーション開発システムにおけるモックアップ用データファイルの実施例を示す図である。 本発明のアプリケーション開発システムにおける、指定フィールドに他のオブジェクト型を設定する制御文字列を設定した構成を説明するための図である。 本発明のアプリケーション開発システムにおける、指定フィールドに他のオブジェクト型のリストを設定する制御文字列を設定した構成を説明するための図である。 本発明のアプリケーション開発システムにおける、環境設定の実施例を示す図である。 本発明の実施の形態に係るアプリケーション開発システムにおいて、モックアップ用アプリケーション生成および検証時の構成と処理手順の実施例を説明するための図である。 本発明の実施の形態に係るアプリケーション開発システムにおいて、検証後の本番用アプリケーション生成および利用時の構成と処理手順の実施例を説明するための図である。
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
(第1の実施の形態)
図1は、本発明の実施の形態に係る開発装置100の論理的な構成を示す機能ブロック図である。
本発明の実施の形態に係る開発装置100は、対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および画面間の遷移に関する画面遷移情報を取得する画面情報取得部102と、画面情報取得部102により取得される画面情報および画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成するソースコード生成部104と、を備える。
画面情報は、画面に含まれる画面構成要素の種類や、各画面構成要素に対応付けられたデータ項目の情報などを含む。例えば、画面構成要素が入力用のコンポーネントの場合、画面情報には、各コンポーネントに入力されるデータの項目名の情報が含まれる。出力用のコンポーネントの場合、画面情報には、各コンポーネントに出力されるデータの項目名の情報が含まれる。さらに、画面情報には、各画面構成要素の配置、書式、または、デザイン等の属性情報等が含まれてもよい。
画面構成要素は、入力または選択される値または操作指示を受け付けるためのGUI(Graphical User Interface)コンポーネントや、データを出力するコンポーネントを含み、テキストボックス、コンボボックス、リストボックス、プルダウンメニュー(ドロップダウンメニュー)、コンテキストメニュー、チェックボタン、ラジオボタン、操作ボタン、または、アイコン等が例示される。
ここで、画面構成要素にて、入出力または選択される「値」とは、文字列、数値、オブジェクトデータ、または配列データなどを含む。
また、本明細書において、画面遷移とは、違う画面への移行と、同じ画面の表示内容の変化とを含む。遷移パターンは、これらの画面遷移の両方の形態を含む。たとえば、以下に例示されるが、これに限定されない。また、矛盾の生じない範囲でこれらは適宜組み合わせることができる。
(a1)画面Aから画面B、または画面Aから画面Cへの移行(遷移後の画面はB、C以外にも複数考えられる)
(a2)画面A内での表示内容の変化
(a3)画面Aから遷移した画面B(または画面C)において、画面B(または画面C)内の異なる内容表示への遷移
なお、画面Bへの移行時に、遷移前の画面Aは、自動的に閉じられてもよいし、閉じなくてもよく、これらも画面遷移情報で定義することできる。
図2は、本発明の実施の形態に係る開発装置100を実現するコンピュータ60のハードウェア構成を示すブロック図である。
本実施形態において、図1の開発装置100の各構成要素は、図2に示される任意のコンピュータ60のハードウェアとソフトウェアの任意の組合せによって実現される。コンピュータ60は、CPU(Central Processing Unit)62、メモリ64、メモリ64にロードされた本図の構成要素を実現するプログラム80、そのプログラム80を格納するハードディスクなどの記憶ユニット(ストレージ66:補助記憶装置)、ネットワーク接続用インタフェース(通信I/F(InterFace:インタフェース)70)を備える。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。以下に説明する各図は、ハードウェア単位の構成ではなく、機能単位の論理的なブロックを示している。
また、以下の各図において、本発明の本質に関わらない部分の構成については省略してあり、図示されていない。
本実施形態において、開発装置100は、たとえば、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。開発装置100を実現するコンピュータは、たとえば、キーボードやマウス等の入力装置72、ディスプレイ等の表示装置74、入力装置72と表示装置74が一体となったタッチパネル(不図示)、マイクやスピーカ等の音声入出力装置(不図示)、または、プリンタ等の出力装置(不図示)と接続される。
開発装置100のこれらの各要素は、バス69を介して互いに接続され、CPU62により各要素とともに開発装置100全体が制御される。CPU62が、ストレージ66に記憶されるプログラム80をメモリ64に読み出して実行することにより、開発装置100の図1の各ユニットの各機能を実現することができる。
本実施形態のコンピュータプログラム80は、開発装置100を実現させるためのコンピュータ60に、対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および画面間の遷移に関する画面遷移情報を取得する手順、取得される画面情報および画面遷移情報に基づいて、モックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する手順、を実行させるように記述されている。ここで、モックアップ用ファイルは、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義される。
本実施形態のコンピュータプログラム80は、コンピュータ60で読み取り可能な記録媒体に記録されてもよい。記録媒体は特に限定されず、様々な形態のものが考えられる。また、プログラム80は、記録媒体からコンピュータ60のメモリ64にロードされてもよいし、ネットワーク3を通じてコンピュータ60にダウンロードされ、メモリ64にロードされてもよい。または、プログラム80は、記録媒体からコンピュータ60のストレージ66に読み込まれて格納された後、メモリ64にロードされてもよい。
上述のような構成において、本発明の実施の形態に係る開発装置100のデータ処理方法について、以下説明する。
図3は、本発明の実施の形態に係る開発装置100のデータ処理方法における処理手順を示すフローチャートである。
本発明の実施の形態に係る開発装置100のデータ処理方法は、開発装置100が、対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および画面間の遷移に関する画面遷移情報を取得する(ステップS101)。取得される画面情報および画面遷移情報に基づいて、モックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する(ステップS107)。ここで、モックアップ用ファイルは、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義される。
図3において、ステップS107の処理は、モックアップ構築時(ステップS103のYES)の手順である。一方、実機の場合(ステップS103のNO)、ステップS105において、取得される画面情報および画面遷移情報に基づいて、画面を形成する対象アプリケーションのソースコードを自動生成する。
本発明において、ソースコード生成部104における、モックアップ用と実機用のソースコードの生成の切り替え(選択)方法は、以下に例示されるがこれに限定されない。また、矛盾のない範囲で適宜組み合わせてもよい。
(b1)モックアップ用プログラムと実機用プログラムの少なくとも2つのプログラムでそれぞれ実現する。作成したいソースコード用のプログラムを選択して、選択されたいずれかのプログラムを実行する。
(b2)少なくとも1つのプログラムで、パラメータを受け付けて、条件分岐によりモックアップ用と実機用のソースコードを選択的に生成する。
(b3)少なくとも1つのプログラムで、はじめに、モックアップ用ソースコードを生成し、その後、実機用ソースコード生成の指示を受け付けて、実機用ソースコードを生成する。
以上説明したように、本発明の実施の形態の開発装置100によれば、アプリケーションの画面などのユーザインタフェースの仕様を決定する要求定義時の情報からアプリケーションのソースコードを生成できる。特に、モックアップ構築時に、実機のデータベースの代わりに、モックアップ用ファイルを利用して、画面に入出力される値の処理動作をシミュレーションできるので、ユーザとアプリケーションの動作テストや外部仕様(画面のデザインや操作性)の確認を行うことができる。モックアップ用ファイルが実機のデータベースの代わりになり、値や条件に応じた遷移パターンを簡易に設定することで様々な状況の検証を行うこともできる。そして、必要に応じて行われる仕様変更やバグ修正を行った場合にも、それらの変更をアプリケーションのソースコードに簡便かつ確実に反映することが可能になるという効果を奏する。
(第2の実施の形態)
図4は、本発明の実施の形態に係る開発装置200の論理的な構成を示す機能ブロック図である。
本実施形態では、アプリケーションを開発する本発明の開発装置200を用いて、対象アプリケーションのモックアップを作成する具体的な構成および手順について、詳細に説明する。
本実施形態の開発装置200は、上記実施形態と同様な画面情報取得部102と、ソースコード生成部104とを備えるとともに、さらに、ルールテーブル生成部202と、値テーブル生成部204とを備える。
本実施形態の開発装置200は、ルールテーブル生成部202と、値テーブル生成部204と、をさらに備える。
ルールテーブル生成部202は、モックアップ用ファイル214に含まれるルールテーブル222であって、遷移前の画面の画面構成要素毎に設けられる条件項目、および、各遷移パターンを特定する値を設定可能な遷移パターン項目を有するルールテーブル222のテンプレートを画面に対するアクション毎に生成する。
値テーブル生成部204は、モックアップ用ファイル214に含まれる複数の値テーブル224であって、各遷移パターンにそれぞれ対応付けられ、遷移後の画面の画面構成要素毎に出力値を定義できる複数の値テーブル224のテンプレートを画面に対するアクションおよび該アクションに応じて遷移される画面毎に生成する。
モックアップ用ファイル214は、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とする。そして、モックアップ用ファイル214は、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンと、遷移後の画面に設けられる少なくとも1つの画面構成要素のための異なる出力値と、をそれぞれ対応付ける。
図5は、本発明の実施の形態に係るアプリケーション開発システム1の構成の一例を示すブロック図である。
本実施形態の開発装置200は、図2で示したコンピュータ60と同様な構成を有する、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。
本発明の実施の形態に係るアプリケーション開発システム1において、開発装置200は、端末140がブラウザ142を経由してインターネット等のネットワーク3を介して利用する、ウェブサーバ130で動作するウェブアプリケーション132の開発を行う装置である。
ウェブアプリケーション132は、たとえば、端末140のブラウザ142上に画面を表示させ、画面上での入力および操作を受け付け、入力操作に基づく処理を実行し、必要に応じてデータベース(DB)122を参照し、結果得られたデータに基づき形成される画面を端末140のブラウザ142上に表示させる。本実施例では、ウェブアプリケーション132を例として説明するが、本発明の開発対象となるアプリケーションはウェブアプリケーションに限定されるものではない。たとえば、サーバ、データベース、および端末の全てがユーザ側に含まれる、企業内のシステム等も開発対象となり得る。
ウェブアプリケーション132の開発時には、ウェブアプリケーション132をシミュレーションするモックアップを作成し、そのデザインや操作性等をユーザに確認してもらうことがある。
上述したように、開発装置200は、設計情報リポジトリ120の情報を取得して、モックアップ用ファイル114と、モックアップ用のウェブアプリケーション132のソースコード116とを生成する。生成されたモックアップ用ファイル114およびソースコード116を元にウェブアプリケーション132のシミュレーションを行うことができる。
さらに、開発装置200は、ウェブアプリケーション132が利用するデータベース122のデータ構造の構築を行えてもよい。
本発明のアプリケーション開発システム1の開発装置200では、上記のようにモックアップを作成して、ウェブアプリケーション132をシミュレーションした後、実機用のウェブアプリケーション132を生成し、実機のウェブサーバ130に配備し、利用することができる。
開発後の実機のウェブアプリケーション132は、たとえば、図6に示すように、ウェブサーバ130上で動作し、端末140(図では、複数の端末140a、140bを示す。特に、区別する必要がない場合は、端末140と呼ぶ。)にてブラウザ142経由で利用される。
なお、ブラウザ142の種類は、特に限定されず、端末140毎に異なる種類のブラウザ142を用いてもよい。また、端末140の種類、たとえば、OS(Operating System)等の種類も限定されず、異なる種類のOSで動作する端末140が混在してもよい。
図5および図6のウェブサーバ130および端末140は、図2で示したコンピュータ60と同様な構成を有する、サーバコンピュータ、パーソナルコンピュータ、またはそれらに相当するコンピュータにより実現することができる。
なお、図では、ウェブアプリケーション132は、ウェブサーバ130上にのみ存在するように示されているが、端末140とウェブサーバ130とが協働してウェブアプリケーション132を動作させる。
具体的には、端末140のブラウザ142からインターネット等のネットワーク3を介してウェブサーバ130のウェブページを表示させた時、ウェブアプリケーション132に含まれる一部のプログラムが端末140にダウンロードされる。この一部のプログラムは、ブラウザ142上で動作する、Java(登録商標)言語等のプログラミング言語で記述される。そして、その一部のプログラムが、端末140のブラウザ142上で、ウェブサーバ130上のウェブアプリケーション132と協働して動作する。
端末140からブラウザ142経由で利用されるウェブアプリケーション132のウェブサーバ130上で動作等は公知であり、本発明の本質に関わらないので詳細な説明は省略する。
本発明において、ウェブアプリケーション132は、業務用アプリケーションを含むことができる。業務アプリケーションとは、企業の情報システムにおいて、企業活動の業務内容と直接関連のある販売、在庫管理、受注、流通、経費管理、資金管理、人財管理、書類管理などの情報処理やサービスを扱うシステムを実現するアプリケーションプログラムである。
業務システムは、「プレゼンテーション層」(ユーザインタフェース)、「アプリケーション層」(ビジネスロジック)、「データ層」(データベース)の3階層構造を有する。業務システムにおいて、このアプリケーション層(ビジネスロジック)は、実際の業務で扱う様々なオブジェクト(商品、顧客、在庫など)をモデル化したものであり、さらに、それらの関係、処理手順、および業務の流れなどをプログラムコードとして実装した部分であり、アプリケーションの処理やルールを記述したものである。
本実施形態において、ルールテーブル222は、業務ロジックを定義でき、値テーブル224は、業務ロジックで参照する業務データを定義できる。
開発者またはエンドユーザにより定義された前記業務ロジックおよび業務データに対応する、条件項目の値、遷移パターン、および前記出力値が入力されたモックアップ用ファイルを用いて、ソースコードを実行し、対象アプリケーションをシミュレーションするシミュレーション部(図26のBean生成部320)をさらに備える。
図4に戻り、画面情報取得部102は、対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および画面間の遷移に関する画面遷移情報を取得する。
本明細書において、画面情報取得部102が画面および画面間の遷移に関する情報を取得する構成について説明しているが、帳票に関する情報を取得してもよい。
帳票に関する情報は、帳票毎に、帳票に含まれる値の項目名の情報が含まれる。さらに、帳票情報は、帳票のレイアウト、書式、デザイン等の属性情報等が含まれてもよい。
ソースコード生成部104は、画面情報取得部102により取得される画面情報および画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する。
モックアップ用画面遷移とは、第一画面の画面構成要素に入力された値を取得し、モックアップ用ファイルを参照することで、条件項目の値が該取得された値に合致するアクションに対応付けられた出力値を取得して、その出力値を第一画面または第二画面の画面構成要素に出力させることを指す。
本実施形態では、後述するように、モックアップ用のソースコードを生成して、動作確認を行った後、画面などの外部仕様が固まった後に、本番用のソースコードを生成することができる。
モックアップ用ソースコードと、本番用ソースコードは、画面に入出力する値の参照先がモックアップ用ファイルか、実機のデータベースかを指定するコードの部分のみが異なる。
したがって、この本番用のソースコードの生成は、以下のいずれかの方法が考えられるが、これに限定されない。また矛盾のない範囲で適宜組み合わせてもよい。
(c1)モックアップ用ソースコードの中から、モックアップ用ファイルを参照するコードを部分的に削除し、実機のデータベースを参照する本番コードを挿入して、本番用のソースコードに書き換える。
(c2)モックアップ用ファイルを参照するコード部分を実機のデータベースを参照する本番コードに置き換えた本番用のソースコードを新たに生成し直す。
図7は、本発明の実施の形態におけるウェブアプリケーション132の画面の例を示す図である。
たとえば、ウェブアプリケーション132は、図7(a)に示すように、遷移前の入力画面230で、ユーザの入力や操作に応じて、所定の処理を行い、入力画面230から、図7(b)に示すように、出力画面240に遷移して、その結果を表示する。
図7(a)に示すように、遷移前の入力画面230は、上述したようなテキストボックスやリストボックス等の画面構成要素として、「ステータス」をユーザに選択させる入力欄232と、「企業名」をユーザに入力させる入力欄233と、入力欄232または入力欄233に入力された値の受け付けを承諾するためのユーザ操作を受け付けるOKボタン234と、入力画面230から抜けるためのユーザ操作を受け付けるキャンセルボタン236と、を有する。
この例では、図7(a)の入力画面230で入力された値に基づいて作成されたリスト表示部242が、図7(b)に示される遷移後の出力画面240に表示される。本実施形態では、入力欄232は、たとえば、ステータスとして、「01:首都圏」および「02:その他」を含むリストの中からいずれか一方を選択して受け付ける。入力欄233は、企業名として、テキストボックスに入力された文字列を受け付ける。
図8は、本発明の実施の形態に係る開発装置200で生成されるルールテーブル222と値テーブル224のテンプレートの例を示す図である。
本実施形態において、ルールテーブル222および値テーブル224のテンプレートは、たとえば、マイクロソフトエクセル(登録商標)ファイルのシート形式でルールテーブル生成部202および値テーブル生成部204によりそれぞれ生成される。
本実施形態では、マイクロソフトエクセルファイルを例として説明するが、ファイル形式を限定するものではなく、他の表計算ソフトのファイル、CSV(Comma-Separated Values)形式、テキスト形式、HTML(HyperText Markup Language)形式等のファイル等、様々な形式のファイルとしてもよい。
しかし、後述するように、本発明のモックアップ用ファイル214は、プログラムを設計または製造する開発者やアプリケーションを利用するユーザがデータを入力して完成させることができる、ひな形である。したがって、モックアップ用ファイル214は、開発者やユーザが編集できる(編集ツールを利用できる)ファイル形式であること、開発者やユーザが一見して内容を理解できること、および、操作が容易であること等の条件を満たすものが望ましい。
なお、本実施形態では、ルールテーブル222および値テーブル224は、異なるファイル、および異なるシートとしてそれぞれ生成されるが、これに限定されない。同じファイル、または同じシートとして生成されてもよい。
図8(a)に示すように、ルールテーブル222のテンプレートは、遷移前の画面の画面構成要素毎に設けられる条件項目(図中「CONDITION」と示す)、および、各遷移パターンを特定する値を設定可能な遷移パターン項目(図中「ACTION」と示す)を少なくとも有する。
具体的には、ルールテーブル222は、図7(a)の遷移前の入力画面230の画面構成要素の入力欄232に対応する条件項目「ステータス」と、入力欄233に対応する条件項目「企業名」と、条件に対応する遷移パターンを特定する値を設定可能な遷移パターン項目とを少なくとも含む。
本実施形態では、ルールテーブル生成部202が生成するテンプレートにおいて、開発者やユーザなどがテーブル編集を行う際に、わかりやすいように、条件項目には、「ステータス」、および「企業名」等の文字列が、図7(a)の各画面構成要素の入力値の項目名に基づいて記載されている。しかし、これらはルールテーブル生成部202により自動的に記載されてもよいし、開発者やユーザなどが後で手入力してもよい。ルールテーブル222は、少なくとも画面構成要素の入力値に対応する条件項目のフィールドを有すればよい。
自動的に記載される構成では、画面情報取得部102が、画面の画面構成要素を識別する名称を取得し、ルールテーブル生成部202が、画面の画面構成要素の名称を、ルールテーブル222の対応する条件項目のフィールド名にする。
図9は、本発明の実施の形態に係る開発装置200で生成されたルールテーブル222と値テーブル224のテンプレートにシミュレーション用のデータが入力された後の例を示す図である。
本発明では、シミュレーション(検証)用のデータおよび遷移パターンを変更し、様々な状況で、動作確認のテストを行うことができる。
図9では、図8(a)のルールテーブル222のデータが未入力の空のテンプレートに、開発者またはエンドユーザにより手入力で、ステータスが「01」または「02」の場合の2ケースの2レコードが追加された例を示している。
他の実施形態では、ルールテーブル生成部202により異なる業務ケースを示す各レコードを自動的に生成されてもよい。たとえば、条件となる画面構成要素に入力されるべき値の範囲などの画面設計情報を用いて、推定されるレコードを作成することができる。たとえば、図7(a)のように、入力欄232が、リストボックスであり、リストボックスに表示させる要素(たとえば、「01」、「02」)まで画面エディタで、リストボックスのプロパティ等として設計済みの場合などに、リストボックスで選択可能な要素を条件としてレコードを自動的に作成することができる。
値テーブル224のテンプレートは、図7(b)のリスト表示部242に表示されるリスト項目として、商品名、数量、価格、備考の各フィールドが含まれる。図8(b)の例では、値テーブル生成部204により、図8(a)のルールテーブル222で設定された遷移パターン(ACTION)毎に、エクセルファイルのシートを対応付け、シート♯1と♯2が生成されている。さらに、本実施形態では、値テーブル生成部204は、入力画面230で入力された値に関係なく遷移するデフォルトの遷移パターンに対応するデフォルトの値テーブル224(シート♯Default)が少なくとも生成される。本実施形態では、遷移パターン毎に、エクセルファイルのシートを対応付けることができ、いずれのケースにも当てはまらない値が図7(a)の入力画面230で指定された場合に、このデフォルトの遷移パターン(シート♯Default)に遷移するようになっている。
このように構成された本実施形態のアプリケーション開発システム1における開発装置200の動作について、以下説明する。本発明のアプリケーション開発システム1では、上述したように、モックアップ用ソースコードを生成し、生成されたモックアップ用アプリケーションの動作確認を行って検証し、必要に応じて変更を行い、検証を繰り返してアプリケーションの仕様を決定する。そして、最終的に決定された仕様に基づいて本番用のソースコードを生成し、生成された本番用のアプリケーションを実行することができる。これらの手順について、順を追って説明する。
図26は、本発明の実施の形態に係るアプリケーション開発システム1において、モックアップ用アプリケーション生成および検証時の構成と処理手順の実施例を説明するための図である。また、図27は、本発明の実施の形態に係るアプリケーション開発システム1において、検証後の本番用アプリケーション生成および利用時の構成と処理手順の実施例を説明するための図である。
図26および図27には、本実施形態の開発装置200のソースコード生成部104と、ルールテーブル生成部202、および値テーブル生成部204に加え、さらに、画面および画面遷移の編集を行うエディタ302と、編集された画面および画面遷移の情報を管理し、パターン展開して設計情報リポジトリ120に格納するパターン展開機能部304と、モックアップ時にソースコードをビルドして、アプリケーションの実行モジュール310をウェブサーバ130にデプロイする統合ビルダ306と、本番時に本番用ソースコードをビルドしてアプリケーションの実行モジュール310をウェブサーバ130にデプロイするANT(Apache Ant(登録商標))308と、開発装置200で生成されるアプリケーションを利用する端末140上で動作するブラウザ142と、データベース122と、が示されている。
本実施形態のアプリケーション開発システム1では、これらの構成要素を利用しながら、アプリケーションの開発を行い、そして生成されたアプリケーションを利用することができる。図26および図27に示される構成および処理手順は一例であり、これらに限定されるものではなく、様々な態様が考えられる。
(モックアップ用ソースコードの生成)
まず始めに、モックアップ用ソースコードを生成する処理手順について説明する。
図10は、本発明の実施の形態に係る開発装置200の動作の一例を示すフローチャートである。
まず、アプリケーションの機能設計などを行う開発者が、画面および画面遷移の編集を、エディタ302(図26)を用いて行う(ステップS201)。そして、編集が終わったら(ステップS203のYES)、画面情報および画面遷移情報がエディタ302によりパターン展開機能部304を介して設計情報リポジトリ120に格納される(ステップS205)。
そして、開発装置200において、画面情報取得部102が設計情報リポジトリ120から画面情報および画面遷移情報を取得し、ソースコード生成部104が画面情報取得部102により取得された画面情報および画面遷移情報に基づいて、モックアップコード216aを含むソースコード116を生成する(ステップS207)。ここで、モックアップコード216aとは、データの参照先として実機のデータベース122の代わりにモックアップ用ファイル214を参照先とするコードを記述する部分を指す。実機のデータベース122を参照先とするコードは、本番コード216bと呼ぶ。
そして、統合ビルダ306(図26)を用いて、モックアップコード216aを含むソースコード116を基にアプリケーションプログラムをビルドして、生成されたアプリケーションプログラムの実行モジュール310をウェブサーバ130にデプロイする(ステップS209)。このようにして、ウェブアプリケーション132がウェブサーバ130に配備される。
さらに、開発装置200において、ルールテーブル生成部202および値テーブル生成部204が、モックアップ用ファイルのテンプレートを生成する(ステップS211)。
そして、開発者またはエンドユーザが、モックアップ用テンプレートファイル214aをファイルに適用可能なエディタを用いて開き、モックアップ用アプリケーションを検証するための検証用データを入力する。入力された検証用データが受け付けられ、モックアップ用データファイル214bが生成される。
(モックアップ用アプリケーションの検証)
次に、モックアップ用ソースコードおよびモックアップ用ファイルを元にモックアップ用アプリケーションの検証を行う際の処理手順について説明する。
図11は、本発明の実施の形態に係る開発装置200で生成されたモックアップ用アプリケーションプログラムをウェブサーバ130上で検証する処理手順の一例を示すフローチャートである。
なお、本実施形態では、本番用のウェブサーバ130を用いてアプリケーションプログラムの検証を行う構成としているが、これに限定されない。テスト用のサーバコンピュータを用いて検証してもよい。
まず、端末140において、ブラウザ142を起動する(ステップS221)。ここで、ブラウザ142を起動してから、モックアップ用アプリケーションの実行ファイルを起動してもよいし、モックアップ用アプリケーションを起動することで、ブラウザ142を立ち上げてもよい。たとえば、モックアップ用アプリケーションを起動するURL(Uniform Resource Locator)を指定することで、ブラウザ142が、ウェブサーバ130にアクセスし、実行モジュール310を読み出す(ステップS223)。
なお、本実施形態では、Java言語を利用してウェブサーバ130で動的にウェブページを生成してクライアントに送信するJSP(JavaServer Pages)の技術を利用する。本発明でユーザに提供されるウェブアプリケーションは、HTMLファイルの中にJava(登録商標)プログラムを埋め込み、クライアントの要求に応じてプログラムを実行し、処理結果をクライアントに返信する。本実施形態では、値を格納したBeanをJavaプログラムとして生成してHTMLに埋め込み、クライアントの端末140のブラウザ142に格納した値を出力させることができる。このJavaプログラムが、図26または図27の実行モジュール310に相当する。
なお、本発明はJSP技術の利用に限定されるものではなく、たとえば、クライアントサイドの技術JavaScript(登録商標)や、JSF(JavaServer Faces)で利用されるFaceletsの技術を用いてもよく、様々な技術を定義利用することができる。
実行モジュール310内に記述されているアクションタグ312(図中「Action」と示す)により、本実施形態のソースコード生成部104によって生成されたモックアップコード216aを呼び出し(ステップS225)、コントロール314に実行させる(ステップS227)。
コントロール314がモックアップコード216aを実行し、Bean生成部320を呼び出す(ステップS227)。
ここで、Bean生成部320とは、Drools等のルールベースエンジンと、DBUnit等のデータベースを操作するクラスのテストプログラムを作成するためのフレームワークを利用してBeanを生成する。
Bean生成部320は、クラス名DataBeanCreatorのAPI(Application Program Interface)を提供する、以下の表1に示すように、LogicDataオブジェクトを返すパターンにより複数のメソッドが提供される。なお、ファイル名には、ディレクトリのパスを含むこともできる。
Figure 0006265030
そして、Bean生成部320が、ルールエンジンを利用して、モックアップ用データファイル214bを参照し、DataBeanに格納する値を取得し、DataBeanに格納し、LogicBeanを生成する(ステップS229)。コントロール314が、JSP316に生成されたBeanを返却する(ステップS231)。そして、JSP316からブラウザ142にBeanが返却され(ステップS223)、ブラウザ142の画面に返却されたBean(DataBeanに格納された値)が表示される(ステップS235)。
このようにして、本発明の実施の形態に係る開発装置200によって生成されたモックアップ用アプリケーションの動作確認を、モックアップコード216aを含むソースコード116およびモックアップ用データファイル214bを用いて、行うことができる。
上記のモックアップ用アプリケーションの検証を行いながら、モックアップ用データファイル214bに記載された検証用データを、開発者またはエンドユーザにより、図10のステップS213に戻り、変更することができる。また、アプリケーションの動作を確認しながら、画面のデザインの変更や操作性を改善するために、画面および画面遷移の仕様変更を、図10のステップS201に戻って行うこともできる。
このようにして、モックアップ用アプリケーションの動作確認を、検証用データを用いて行いながら、必要に応じて、画面デザインや操作性の変更を行い、変更をソースコード116、そして実行モジュール310に反映させ、再び、変更後のアプリケーションの動作確認を繰り返すことができる。
モックアップ用アプリケーションの動作確認を行いながら、ユーザの要望を確認して、画面などの外部仕様を早い段階で確定することが可能となる。本発明のモックアップ用アプリケーションは、データの参照先が実機のデータベース122ではなく、モックアップ用データファイル214bであること以外は、全て実機のアプリケーションとなる。したがって、モックアップ用アプリケーションで動作確認ができれば、データの参照先のみを実機のデータベース122に書き換えるだけで、動作確認済みの本番用のアプリケーションを生成することができる。この構成により、データベース122に合わせて最初からアプリケーションを生成し直す場合に比べ、仕様変更による影響を最小限に抑え、大幅に開発期間を短縮できる。
(本番用ソースコードの生成)
次に、モックアップ用アプリケーションの検証後に確定した仕様に基づいて、本番用ソースコードを生成する処理手順について説明する。
図12は、本発明の実施の形態に係る開発装置200の動作の一例を示すフローチャートである。
まず、図11の手順で検証が済んだモックアップコード216aに替わる、本番コード216bを含むソースコード116を、ソースコード生成部104が設計情報リポジトリ120から必要な設計情報等をインポートして、生成する(ステップS241)。
例として、モックアップ用のソースコード116から、モックアップ用データファイル214bを参照先として呼び出すモックアップコード216aを削除し、新たに、データベース122を参照先とする本番コード216bを記述し、本番用のソースコード116を生成する。あるいは、モックアップ用のソースコード116とは別に、新しく、設計情報リポジトリ120から取得した設計情報を元に、本番用のソースコード116を生成してもよい。
そして、ANT308を用いて、本番コード216bを含むソースコード116をビルドして、アプリケーションの実行モジュール310をウェブサーバ130にデプロイすることで、本番用アプリケーションを利用できる環境となる(ステップS243)。
(本番用アプリケーションの実行)
次に、検証後の本番用ソースコードから生成された本番用アプリケーションプログラムをウェブサーバ130上で実行する処理手順について説明する。
図13は、本発明の実施の形態に係る開発装置200で生成された本番用アプリケーションプログラムをウェブサーバ上で動作させる場合の処理手順の一例を示すフローチャートである。
まず、端末140において、ブラウザ142を起動する(ステップS221)。そして、たとえば、ウェブアプリケーション132を起動するURL(Uniform Resource Locator)を指定することで、ブラウザ142が、ウェブサーバ130にアクセスし、実行モジュール310を読み出す(ステップS253)。
実行モジュール310内に記述されているアクションタグ312(図中「Action」と示す)により、本実施形態のソースコード生成部104によって生成された本番コード216bを呼び出し(ステップS255)、コントロール314に実行させる(ステップS257)。
コントロール314が本番コード216bを実行し、DAO(Data Access Object)322にデータベース122を参照させる(ステップS227)。DAO322から必要なデータを取得して、コントロール314が、JSP316にデータを返却する(ステップS231)。そして、JSP316からブラウザ142にデータが返却され(ステップS223)、ブラウザ142の画面に返却されたデータが表示される(ステップS235)。
以上説明したように、本発明の実施の形態の開発装置200によれば、上記実施形態と同様な効果を奏するとともに、画面や帳票などのユーザインタフェースに関する要件を元に、業務ロジック(遷移パターン)を模擬するモックアップ用プログラムコードの元となるオブジェクトデータ(画面構成要素の入出力値)やルール(条件と遷移パターン)を、人間が直感的に理解しやすい業務内容で記述できるファイル形式を採用してモックアップ用データファイルを作成できる。また、モックアップ用ファイルに開発者やユーザにより入力された情報を元に、モックアップ用プログラムのソースコードを自動的に生成することができる。モックアップ用ファイルを用いることで、テスト用データおよび業務ロジックの定義の簡易入力を可能にするので、実際のシステム運用をイメージしながら、様々な要件で、モックアップ用ソースコードを元にアプリケーションをシミュレーションし、システム利用ユーザとモックアップの動作を検証して仕様を確定できる。
この構成により、本発明の実施の形態の開発装置200では、開発対象アプリケーションの業務ロジックが正式に決定していないシステム開発の上流工程にて、画面や帳票などの仕様確定を行うことを可能とし、仕様変更による影響を最小限に抑え、開発期間を短縮できる。
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
(特殊文字列記述による制御)
たとえば、他の実施形態では、各アクションに対応付けられた各値テーブル224において、画面構成要素毎の出力値フィールドが設定されている。出力値が所定のデータタイプの画面構成要素の出力値フィールドには、該所定のデータタイプに対応し、かつ、該所定のデータタイプの値が設定される個別値テーブルを指定する所定の制御文字列が設定される。モックアップ用ファイルは、個別値テーブルをさらに含むことができる。
この構成により、制御文字列が設定されたフィールド名を有する別テーブルを参照し、オブジェクト型が文字列以外のリストや多次元配列の出力値を取得できる。なお、値テーブル224と個別値テーブルは、同じファイルに含めてもよいし、別ファイルに含めてもよく、特に限定されない。
制御文字列を以下に例示するがこれに限定されるものではない。
Figure 0006265030
(実施例1)
本実施例では、モックアップコード216aが、モックアップ用データファイル214bからデータを読み出す手順を説明する。
本実施例では、図14に示すようなコード330「DataBeanCreator.getDetaBean(fileName, data, beanName)」により、Bean生成部320が呼び出され、Bean生成部320がルールエンジンを利用してモックアップ用データファイル214bを参照し、値を読み出し、読み出された値がDataBeanに格納されて、LogicBeanが生成されてブラウザ142に返却される。
図15は、このコード330によるBeanの生成手順の例を示すフローチャートである。
図16は、モックアップ用データファイルの例を示す図である。
まず、コントロール314により、コード330の「fileName」で指定されるファイル(図16(a)のファイル340)がオープンされる(ステップS301)。そして、図26のBean生成部320がファイル340の「Tables」シート342をアクティブにし、ルールエンジンを利用して「Tables」シート342において以下の処理を行う(ステップS303)。
そして、コード330で指定される「data」の値が、条件(CONDITION)フィールド344(この例では、「ステータス」)の値と一致するレコードを取得する(ステップS305)。ここでは、「data」が「01」であるとすると、ケース1のレコード346が取得される。そして、ステップS305で取得したレコード346の遷移パターン項目(ACTION)フィールド348の値「1」を業務ケースとして取得する(ステップS307)。
さらに、コントロール314により、コード330の「beanName」で指定されるファイル(図16(b)のファイル350)がオープンされる(ステップS309)。
そして、ステップS307で取得した業務ケースの値「1」に対応するシートNo.「♯1」をアクティブにし、シートの値を取得する(ステップS311)。そして、アクティブにされたシート♯1の1行目のレコード354の値(ここでは、複数のデータ列)をDataBeanに格納して、LogicBeanを生成して返却する(ステップS313)。
値が格納されたBeanは、JSP316に返却され、ブラウザ142に送信されて、たとえば、図7の出力画面240のリスト表示部242に値が表示される。
(実施例2)
本実施例では、上記実施例のコード330に、さらに、「listName」が追加され、DataBeanに格納される値をリスト形式で取得する構成について説明する。
図17は、コード332によるBeanの生成手順の例を示すフローチャートである。
図18は、モックアップ用データファイルの例を示す図である。
ステップS301〜ステップS311までは、上記実施例と同様な手順で処理が行われる。そして、ステップS311でアクティブにされたシート♯1の全行のレコード群356の値(図18(b)では、リスト)をDataBeanのlistNameプロパティのListに格納して、LogicBeanを生成して返却する(ステップS321)。
このようにして、値が格納されたBeanは、JSP316に返却され、ブラウザ142に送信されて、出力画面にリスト(不図示)が表示される。
(実施例3)
本実施例では、上記実施例で、一致する条件の業務ケースが取得できなかった場合のデータ取得手順について説明する。
図19は、コード330によるBeanの生成手順の例を示すフローチャートである。
図20は、モックアップ用データファイルの例を示す図である。
まず、ステップS301〜ステップS309までは、上記実施例と同様な手順で処理が行われる。そして、ステップS309でオープンされた図20(b)のファイル350において、ステップS307で条件に一致する行(レコード)がなかった場合(ステップS331のYES)、デフォルトシート358(図20(b)では「#Default」)をアクティブにする(ステップS333)。
ステップS307で条件に一致する行(レコード)があった場合(ステップS331のNO)、上記実施例と同様にステップS311の処理を行う。そして、ステップS311またはステップS333の後、上記実施例と同様なステップS313の処理を行う。
なお、このステップS331およびステップS333の処理は、図17の実施例2のコード332の手順でも同様な処理を行うことができる。
このようにして、値が格納されたBeanは、JSP316に返却され、ブラウザ142に送信されて、出力画面に値(不図示)が表示される。
(実施例4)
本実施例は、全データ項目に何も値設定されていない場合のBeanの生成について説明する。
図21は、Beanの生成手順の例を示すフローチャートである。
図22は、モックアップ用データファイルの例を示す図である。
上記実施例いずれかのBeanの生成手順を示すフローチャートにおいて、ステップS311でシートの値を取得したとき、全データ項目に値が設定されていない場合(ステップS341のYES)、DataBeanにデータを格納せずに次のコード処理に進む(ステップS343)。データ項目に値が設定されている場合(ステップS341のNO)、上記実施例と同様にステップS313に進み、取得された値をDataBeanに格納してLogicBeanを生成して返却する。
(実施例5)
本実施例は、制御文字列を指定フィールドに設定する構成について説明する。
本実施例では、制御文字列[object]の利用例を説明する。
図23は、指定フィールドに他のオブジェクト型を設定する制御文字列を設定した構成を説明するための図である。
ここでは、ZAA02APLogicDataクラス502のフィールドsubZAA02APLogicData504にAA02APSubZAA02APLogicDataSubDataオブジェクトの値を設定している。なお、ここで、クラス名に含まれる「ZAA02AP」等の文字列は、特に意味はなく一例であり、任意の文字列とすることができる。
設定するオブジェクト型をプロパティファイル510で指定する。プロパティファイル510に定義がない場合はエラーとなる。
制御文字列[object]が定義されているZAA02APLogicDataクラス502のフィールドsubZAA02APLogicData504に対応した「subZAA02APLogicData」シート506から値を取得してZAA02APSubZAA02APLogicDataSubDataオブジェクトに格納する。
subZAA02APLogicDataに格納するオブジェクトの型は、DataBeanCreator.properties(プロパティファイル510)のキーに格納するZAA02APLogicDataクラスのフィールド名を指定し、その値で指定する。
(実施例6)
本実施例では、制御文字列[list] の利用例を説明する。
図24は、指定フィールドに他のオブジェクト型のリストを設定する制御文字列を設定した構成を説明するための図である。
ここでは、ZAA02APLogicDataクラス602のフィールドlistField604にStringの値を設定している。
設定するリスト要素のオブジェクト型をプロパティファイル610で指定する。プロパティファイル610に定義がない場合はエラーとなる。
[list]が定義されているZAA02APLogicDataクラス602のフィールドlistField604に対応した「listField」シート606から「[value]」列の値をListに格納する。
Listに格納するオブジェクトの型は、DataBeanCreator.properties(プロパティファイル610)のキーにListを格納するZAA02APLogicDataクラスのフィールドlistFieldを指定し、その値でStringを指定する。
図25は、各実施例における環境設定の一例を示す図である。
DataBeanCreator.propertiesをクラスパスが通っている場所に配置し、コード710の内容を記述する。712が、ファイルの格納フォルダを指定する部分である。また、714が、「result」フィールドに、[object]キーワードが設定されている場合に生成するクラス名を指定する部分である。
なお、フィールドの定義は、キー名としてフルパッケージ名で指定することもできる。
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
なお、本発明において利用者に関する情報を取得、利用する場合は、これを適法に行うものとする。
以下、参考形態の例を付記する。
1. コンピュータに、
対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する手順、
取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する手順、をコンピュータに実行させるためのプログラム。
2. 1.に記載のプログラムにおいて、
前記モックアップ用ファイルに含まれるルールテーブルであって、遷移前の画面の画面構成要素毎に設けられる条件項目、および、各遷移パターンを特定する値を設定可能な遷移パターン項目を有するルールテーブルのテンプレートを画面に対するアクション毎に生成する手順、
前記モックアップ用ファイルに含まれる複数の値テーブルであって、前記各遷移パターンにそれぞれ対応付けられ、遷移後の画面の画面構成要素毎に出力値を定義できる複数の値テーブルのテンプレートを画面に対するアクションおよび該アクションに応じて遷移される画面毎に生成する手順、をコンピュータに実行させ、
さらに、前記モックアップ用ファイルにおいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンと、遷移後の画面に設けられる少なくとも1つの画面構成要素のための異なる出力値と、をそれぞれ対応付ける手順、をコンピュータに実行させるためのプログラム。
3. 2.に記載のプログラムにおいて、
前記値テーブルを生成する手順において、
前記各アクションに対応付けられた前記各値テーブルにおいて、前記画面構成要素毎の出力値フィールドを設定する手順、をコンピュータに実行させ、
生成された前記値テーブルにおいて、
出力値が所定のデータタイプの画面構成要素の出力値フィールドには、該所定のデータタイプに対応し、かつ、該所定のデータタイプの値が設定される個別値テーブルを指定する所定の制御文字列が設定され、
前記モックアップ用ファイルは、前記個別値テーブルをさらに含み、
前記モックアップ用ソースコードを生成する手順において、生成された前記モックアップ用ファイルの前記ルールテーブルおよび前記値テーブルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する手順、をコンピュータに実行させるためのプログラム。
4. 2.または3.に記載のプログラムにおいて、
前記画面情報を取得する手順において、
前記画面の前記画面構成要素を識別する名称を取得する手順、
前記ルールテーブルを生成する手順において、
前記画面の前記画面構成要素の前記名称を、前記ルールテーブルの対応する前記条件項目のフィールド名にする手順、をコンピュータに実行させるためのプログラム。
5. 2.乃至4.いずれか1つに記載のプログラムにおいて、
前記ルールテーブルは、業務ロジックを定義でき、
前記値テーブルは、前記業務ロジックで参照する業務データを定義でき、
ユーザにより定義された前記業務ロジックおよび業務データに対応する、前記条件項目の値、前記遷移パターン、および前記出力値が入力された前記モックアップ用ファイルを用いて、前記ソースコードを実行し、前記対象アプリケーションをシミュレーションする手順、をコンピュータに実行させるためのプログラム。
6. 開発装置が、
対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得し、
取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する、
開発装置のデータ処理方法。
7. 6.に記載の開発装置のデータ処理方法において、
前記開発装置が、
前記モックアップ用ファイルに含まれるルールテーブルであって、遷移前の画面の画面構成要素毎に設けられる条件項目、および、各遷移パターンを特定する値を設定可能な遷移パターン項目を有するルールテーブルのテンプレートを画面に対するアクション毎に生成し、
前記モックアップ用ファイルに含まれる複数の値テーブルであって、前記各遷移パターンにそれぞれ対応付けられ、遷移後の画面の画面構成要素毎に出力値を定義できる複数の値テーブルのテンプレートを画面に対するアクションおよび該アクションに応じて遷移される画面毎に生成し、
前記モックアップ用ファイルは、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンと、遷移後の画面に設けられる少なくとも1つの画面構成要素のための異なる出力値と、をそれぞれ対応付ける、
開発装置のデータ処理方法。
8. 7.に記載の開発装置のデータ処理方法において、
前記開発装置が、
前記各アクションに対応付けられた前記各値テーブルにおいて、
前記画面構成要素毎の出力値フィールドが設定されており、
出力値が所定のデータタイプの画面構成要素の出力値フィールドには、該所定のデータタイプに対応し、かつ、該所定のデータタイプの値が設定される個別値テーブルを指定する所定の制御文字列が設定され、
前記モックアップ用ファイルは、前記個別値テーブルをさらに含む、
開発装置のデータ処理方法。
9. 7.または8.に記載の開発装置のデータ処理方法において、
前記開発装置が、
前記画面の前記画面構成要素を識別する名称を取得し、
前記画面の前記画面構成要素の前記名称を、前記ルールテーブルの対応する前記条件項目のフィールド名にする、
開発装置のデータ処理方法。
10. 7.乃至9.いずれか1つに記載の開発装置のデータ処理方法において、
前記ルールテーブルは、業務ロジックを定義でき、
前記値テーブルは、前記業務ロジックで参照する業務データを定義でき、
前記開発装置が、
ユーザにより定義された前記業務ロジックおよび業務データに対応する、前記条件項目の値、前記遷移パターン、および前記出力値が入力された前記モックアップ用ファイルを用いて、前記ソースコードを実行し、前記対象アプリケーションをシミュレーションする、
開発装置のデータ処理方法。
11. 対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する画面情報取得手段と、
前記画面情報取得手段により取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成するソースコード生成手段と、
を備える開発装置。
1 アプリケーション開発システム
3 ネットワーク
60 コンピュータ
62 CPU
64 メモリ
66 ストレージ
69 バス
72 入力装置
74 表示装置
80 プログラム
100 開発装置
102 画面情報取得部
104 ソースコード生成部
114 モックアップ用ファイル
116 ソースコード
120 設計情報リポジトリ
122 データベース
130 ウェブサーバ
132 ウェブアプリケーション
140、140a、140b 端末
142 ブラウザ
200 開発装置
202 ルールテーブル生成部
204 値テーブル生成部
214 モックアップ用ファイル
214a モックアップ用テンプレートファイル
214b モックアップ用データファイル
216a モックアップコード
216b 本番コード
222 ルールテーブル
224 値テーブル
230 入力画面
232 入力欄
233 入力欄
234 OKボタン
236 キャンセルボタン
240 出力画面
242 リスト表示部
302 エディタ
304 パターン展開機能部
306 統合ビルダ
308 ANT
310 実行モジュール
312 アクションタグ
314 コントロール
316 JSP
320 Bean生成部
322 DAO
330、332 コード
340 ファイル
342 Tablesシート
344、348 フィールド
346、350 レコード
356 レコード群
358 デフォルトシート
502 ZAA02APLogicDataクラス
504 フィールドsubZAA02APLogicData
506 subZAA02APLogicDataシート
510 プロパティファイル
602 ZAA02APLogicDataクラス
604 フィールドlistField
606 listFieldシート
610 プロパティファイル
710 コード

Claims (7)

  1. 対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する画面情報取得手段と、
    前記画面情報取得手段により取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成するソースコード生成手段と、
    を備えるアプリケーション開発システム。
  2. 請求項1に記載のアプリケーション開発システムにおいて、
    前記モックアップ用ファイルに含まれるルールテーブルであって、遷移前の画面の画面構成要素毎に設けられる条件項目、および、各遷移パターンを特定する値を設定可能な遷移パターン項目を有するルールテーブルのテンプレートを画面に対するアクション毎に生成するルールテーブル生成手段と、
    前記モックアップ用ファイルに含まれる複数の値テーブルであって、前記各遷移パターンにそれぞれ対応付けられ、遷移後の画面の画面構成要素毎に出力値を定義できる複数の値テーブルのテンプレートを画面に対するアクションおよび該アクションに応じて遷移される画面毎に生成する値テーブル生成手段と、をさらに備え、
    前記モックアップ用ファイルは、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンと、遷移後の画面に設けられる少なくとも1つの画面構成要素のための異なる出力値と、をそれぞれ対応付ける、
    アプリケーション開発システム。
  3. 請求項2に記載のアプリケーション開発システムにおいて、
    前記各アクションに対応付けられた前記各値テーブルにおいて、
    前記画面構成要素毎の出力値フィールドが設定されており、
    出力値が所定のデータタイプの画面構成要素の出力値フィールドには、該所定のデータタイプに対応し、かつ、該所定のデータタイプの値が設定される個別値テーブルを指定する所定の制御文字列が設定され、
    前記前記モックアップ用ファイルは、前記個別値テーブルをさらに含む、
    アプリケーション開発システム。
  4. 請求項2または3に記載のアプリケーション開発システムにおいて、
    前記画面情報取得手段は、
    前記画面の前記画面構成要素を識別する名称を取得し、
    前記ルールテーブル生成手段は、
    前記画面の前記画面構成要素の前記名称を、前記ルールテーブルの対応する前記条件項目のフィールド名にする、
    アプリケーション開発システム。
  5. 請求項2乃至4いずれか1項に記載のアプリケーション開発システムにおいて、
    前記ルールテーブルは、業務ロジックを定義でき、
    前記値テーブルは、前記業務ロジックで参照する業務データを定義でき、
    ユーザにより定義された前記業務ロジックおよび業務データに対応する、前記条件項目の値、前記遷移パターン、および前記出力値が入力された前記モックアップ用ファイルを用いて、前記ソースコードを実行し、前記対象アプリケーションをシミュレーションするシミュレーション手段をさらに備える、
    アプリケーション開発システム。
  6. コンピュータに、
    対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得する手順、
    取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する手順、をコンピュータに実行させるためのプログラム。
  7. 開発装置が、
    対象アプリケーションの各画面に設けられる画面構成要素に関する画面情報、および前記画面間の遷移に関する画面遷移情報を取得し、
    取得される前記画面情報および前記画面遷移情報に基づいて、遷移前の画面に設けられる少なくとも1つの画面構成要素に入力され得る値を少なくとも1つの条件項目とし、該少なくとも1つの条件項目の異なる値にそれぞれ対応する複数の遷移パターンが定義されたモックアップ用ファイルを参照することにより、モックアップ用画面遷移を実現するモックアップ用ソースコードを生成する、
    開発装置のデータ処理方法。
JP2014091430A 2014-04-25 2014-04-25 アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム Active JP6265030B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014091430A JP6265030B2 (ja) 2014-04-25 2014-04-25 アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014091430A JP6265030B2 (ja) 2014-04-25 2014-04-25 アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2015210639A JP2015210639A (ja) 2015-11-24
JP6265030B2 true JP6265030B2 (ja) 2018-01-24

Family

ID=54612783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014091430A Active JP6265030B2 (ja) 2014-04-25 2014-04-25 アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP6265030B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7485894B2 (ja) 2019-12-25 2024-05-17 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法およびプログラム
JP7406110B2 (ja) 2021-01-21 2023-12-27 キヤノンマーケティングジャパン株式会社 情報処理システム、その制御方法およびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3732816B2 (ja) * 2002-09-18 2006-01-11 エヌ・ティ・ティ・コムウェア株式会社 アプリケーション開発支援システム及びアプリケーション開発支援方法ならびにコンピュータプログラム
WO2004104824A1 (ja) * 2003-05-26 2004-12-02 Fujitsu Limited ユーザインタフェースアプリケーション開発装置および開発方法
JP4864590B2 (ja) * 2006-08-04 2012-02-01 株式会社日立製作所 アプリケーションプログラムの動作属性の設定支援を行う情報処理装置、情報処理方法、プログラム

Also Published As

Publication number Publication date
JP2015210639A (ja) 2015-11-24

Similar Documents

Publication Publication Date Title
US10019239B2 (en) Systems and methods for enhancing software products through integrated development environment running on host computer
JP5651121B2 (ja) データオブジェクトの管理および自動的リンク
Mann Java Server Faces in Action
US8117591B1 (en) Graphical model for test case viewing, editing, and reporting
US20080126925A1 (en) Using a backend simulator to test and develop xforms templates before linking the xforms templates to backend data processing systems
US20100325606A1 (en) Component based software system
US11689609B2 (en) Mechanism for webpage composition
JP2012508934A5 (ja)
US20080015911A1 (en) Methods and apparatuses for developing business solutions
Kozlowski et al. Mastering Web Application Development with AngularJS.
US20230086854A1 (en) Dynamically controlling case model structure using case fragments
US20070067341A1 (en) Automated user interface functional requirements tool
KR20130040057A (ko) SaaS 환경에서의 홈페이지 제작 시스템 및 방법, 그 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체
US20230266946A1 (en) Dynamic enterprise application platform
Bernaschina et al. Online model editing, simulation and code generation for web and mobile applications
JPH10254689A (ja) クライアント・サーバシステムのアプリケーション構成設計支援方式
Lumertz et al. User interfaces metamodel based on graphs
JP6265030B2 (ja) アプリケーション開発システム、開発装置のデータ処理方法、およびプログラム
Dori et al. An OPM-based metamodel of system development process
Monks et al. Improving the usability of open health service delivery simulation models using Python and web apps
JP4629183B2 (ja) 要求仕様記述支援装置およびその方法、記録媒体
JP4886626B2 (ja) ソフトウェア成果物管理システム、方法及びそのプログラム
Vesterli Oracle ADF Survival Guide: Mastering the Application Development Framework
Robles Luna et al. Modelling the requirements of rich internet applications in webre
Pekárková Programming Homework Review Tool for Kontr 2

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171113

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171211

R150 Certificate of patent or registration of utility model

Ref document number: 6265030

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150