JP7453577B2 - 情報処理システム、その制御方法、およびコンピュータプログラム - Google Patents

情報処理システム、その制御方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP7453577B2
JP7453577B2 JP2022126475A JP2022126475A JP7453577B2 JP 7453577 B2 JP7453577 B2 JP 7453577B2 JP 2022126475 A JP2022126475 A JP 2022126475A JP 2022126475 A JP2022126475 A JP 2022126475A JP 7453577 B2 JP7453577 B2 JP 7453577B2
Authority
JP
Japan
Prior art keywords
item
data set
definition
dictionary
application
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
JP2022126475A
Other languages
English (en)
Other versions
JP2022145818A (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.)
Canon Marketing Japan Inc
Canon IT Solutions Inc
Original Assignee
Canon Marketing Japan Inc
Canon IT Solutions Inc
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 Canon Marketing Japan Inc, Canon IT Solutions Inc filed Critical Canon Marketing Japan Inc
Priority to JP2022126475A priority Critical patent/JP7453577B2/ja
Publication of JP2022145818A publication Critical patent/JP2022145818A/ja
Priority to JP2024033437A priority patent/JP2024055993A/ja
Application granted granted Critical
Publication of JP7453577B2 publication Critical patent/JP7453577B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、プログラム生成装置、制御方法、およびコンピュータプログラムに関する。
近年、Webアプリケーションの開発は、プログラミングを行わずに、プログラム生成装置により自動生成されている。プログラム生成装置上で実行される自動生成ツールは、プログラミングの代わりに、所定のルールに基づいた定義を用いて、Webアプリケーションの構築を行う。ここで、Webアプリケーションを構築するための各定義は、アプリケーション内で利用するデータベースのスキーマ情報や画面情報ごとに設定される。
特許文献1には、上流設計ツールで定義情報を用いてプログラムを生成するシステム設計支援プログラムが開示されている。
特開2007-41707号公報
ところで、Webアプリケーションの規模が大きくなるに従い、多くの定義ファイルが用いられることとなる。この場合、自動生成ツールは、同一のキーワードを複数の定義ファイルに対して設定することとなり、ユーザの操作が煩雑になり得る。そのため、定義ファイルは、一元管理されることが望ましい。しかしながら、特許文献1に記載の技術では、既存の定義ファイルを管理する場合におけるユーザの操作性について、何ら考慮されていない。
そこで本発明は、アプリケーション生成に用いる定義容易に設定する仕組みを提供することを目的とする
生成するアプリケーションで用いるデータベースに関するデータセットと、該アプリケーションの画面へ入出力される項目に関するデータセットと、のうち少なくとも1つを管理する管理手段と、
前記管理手段で管理されたデータベースに関するデータセットとアプリケーションの画面へ入出力される項目に関するデータセットのうちの少なくとも1つを選択する選択手段と、
前記選択手段で選択されたデータセットをキーおよび値として、該キーおよび該値を対応付けて項目辞書に登録する登録手段と、
前記アプリケーションの生成に用いる定義に含まれる前記キーに対応する前記項目辞書の値を取得し、該値を用いてアプリケーションを生成する生成手段とを有し、
前記登録手段は、前記選択手段で選択されているデータセットに対応する表示アイテムが複数の表示領域を有する特定の表示領域のいずれの領域に追加操作されたかに応じて、異なる方法で該データセットを登録することを特徴とする。
プリケーション生成に用いる義を容易に設定する仕組みを提供することが可能となる。
本実施形態における情報処理システムの一例を示す図である。 本実施形態における情報処理システムの各構成に適用可能なハードウェア構成の一例を示す図である。 本実施形態におけるプログラム開発装置の機能構成を示す図である。 本実施形態におけるプログラム開発装置の機能構成を示す図である。 項目辞書が新規作成される場合の処理を示すフローチャートである。 項目辞書を新規作成するための操作画面の一例を示す図である。 項目辞書ファイルを表示する画面の一例を示す図である。 項目辞書に対して項目を追加する場合の処理を示すフローチャートである。 項目辞書ファイルにエントリを追加する場合の表示画面の一例を示す図である。 エントリに1つの定義項目を追加する場合の表示画面の一例を示す図である。 エントリに複数の定義項目を追加する場合の表示画面の一例を示す図である。 項目辞書をリポジトリ定義に反映させる場合の処理を示すフローチャートである。 項目辞書をリポジトリ定義に反映させる場合の表示画面の一例を示す図である。 項目辞書をリポジトリ定義に反映させる場合の表示画面の一例を示す図である。 辞書エントリ及び辞書項目の内容を更新する場合の処理を示すフローチャートである。 Webアプリケーション生成する処理を示すフローチャートである。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図1は、本実施形態に係わるプログラム開発装置(開発者がWebアプリケーション生成のために使用する情報処理装置)、プログラム開発サーバ、データベースサーバ、アプリケーションクライアント(クライアント装置)、アプリケーションサーバの構成の一例を示すシステム(情報処理システム)構成図である。
プログラム開発装置101は、開発者の操作に従って画面レイアウト及びデータベース検索指示などを定義する。プログラム開発装置101単体では、開発者の入力受付を行い、後述するプログラム開発サーバ102に実際のプログラム生成処理、アプリケーション生成処理をさせてもよいし、プログラム開発装置101単体でプログラム生成、アプリケーション生成まで処理してもよい。
なお、この実施形態においては、プログラム開発装置101で生成するアプリケーションはWebアプリケーションとしたが、これに限定するものではなく、携帯電話・スマートフォン・タブレットなどの情報処理装置で動作するアプリケーションや組込みソフトウェアなど、Web技術による通信を利用したアプリケーションでなくてもよい。
プログラム開発サーバ102a~102b(情報処理装置)は、プログラム開発装置101により入力された開発者の指示に従って、プログラムを開発する。プログラム開発サーバ102aはLANなどのネットワーク106内に配置されてもよいし、プログラム開発サーバ102bはインターネット上やクラウド上に配置されてもよい。
データベースサーバ103a~103b(情報処理装置)は、開発されたアプリケーションが使用するデータベースであり、また本発明では開発時にも動作確認などのために利用してもよい。例えば、開発者が利用するためにデータベースサーバ103は、プログラム開発装置101と同一の装置で構成されていてもよいし、LANなどのネットワーク106内に配置されてもよい(データベースサーバ103a)。またインターネット上やクラウド上に配置されてもよい(データベースサーバ103b)。また、プログラム開発装置101が、プログラム開発サーバ102と協調する場合には、プログラム開発サーバ102とデータベースサーバ103が同一の装置内に構成されていてもよい。
アプリケーションサーバ105a~105b(情報処理装置)は、プログラム開発装置101で開発されたアプリケーションを実行する。LANなどのネットワーク106内に配置されてもよい(アプリケーションサーバ105a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションサーバ105b)。また、ネットワーク106、インターネット、クラウド上のデータベースサーバ103と接続して動作する可能である。
アプリケーションクライアント104a~104b(情報処理装置)は、アプリケーションサーバ105と協調してプログラム開発装置101で開発したアプリケーションプログラムを動作させる、ユーザの入力端末である。LANなどのネットワーク106内に配置されてもよい(アプリケーションクライアント104a)し、またインターネット上やクラウド上に配置されてもよい(アプリケーションクライアント104b)。また、情報処理装置は、携帯端末やタブレット型の端末であってもよい。
図2は、本実施形態に係わるプログラム開発装置101、プログラム開発サーバ102、データベースサーバ103、アプリケーションクライアント104、アプリケーションサーバ105として適用可能な各ハードウェア構成の一例を示すブロック図である。
図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。
また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバ、クライアント、装置など情報処理装置の後述する各種機能を実現するためのプログラムが記憶されている。
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、情報処理装置では、キーボード、マウス等のポインティングデバイスが挙げられる。
出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶ディスプレイ等が挙げられる。つまり、出力部210は、画面を表示する表示部としての機能を備える。この場合、CPU201は、出力コントローラ206を介して表示部の表示を制御することが可能である。換言すると、CPU201は、表示制御手段の一態様である。
外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザーファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。加えて、各サーバ、クライアント、装置等の各種機能を実現するための各種テーブル、パラメータが記憶されている。この外部メモリ211としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。
通信I/Fコントローラ208は、ネットワークを介して外部機器との通信制御処理を実行する。
図3および図4を用いて、プログラム開発装置101の機能構成を説明する。なお、プログラム開発装置101における各機能は、プログラム装置101のCPU201により実行されるものである。また、CPU201によって実行されるプログラム212は、外部メモリ211に記録されており、必要に応じてRAM202にロードされる。つまり、各機能は、CPU201とメモリ(RAM202)とが協業することにより実現される。
プログラム開発装置101は、リポジトリ定義部300と、項目辞書管理部320と、リポジトリ定義編集部310と、項目辞書参照命令部330と、Webアプリケーション生成部340を含む。
リポジトリ定義部300は、データベース定義406と、アプリケーション定義401と、データモデル定義403と、入出力定義402と、ビジネスプロセス定義404とを含む。
データモデル定義403および入出力定義402は、複数の項目定義が設定される。そして、各項目定義は、項目辞書参照情報405と対応づけられて記憶される。このため、データモデル定義403および入出力定義402は、後述する項目辞書管理部320により管理される情報を参照し定義として用いることが可能となる。
リポジトリ定義部300は、入出力定義402として、プログラムへ引数として入力される項目を定義する入力定義情報と、プログラムから処理結果として出力する項目を定義する出力定義情報とを入出力定義情報として管理する。ここで、入力定義情報は、生成されたWebアプリケーションの画面を介して当該Webアプリケーションのユーザが入力する入力項目を定義した情報である。また、出力定義情報は、生成されたWebアプリケーションの画面として出力する出力項目を定義した情報である。
ユーザ(例えば、Webアプリケーション開発者)は、リポジトリ定義部300が管理する各種定義に基づいて、Webアプリケーション画面の入出力項目を直感的に追加・変更・削除することが可能となる。このことにより、ユーザは、Webアプリケーションとして用いられるプログラムを容易に生成することができる。なお、上述した「追加・変更・削除」は、レイアウトエディタ等のGUIを用いて行われる。
データモデル定義403は、データベースのスキーマ情報(すなわち、項目の属性や名称、桁数)を管理する情報である。
ビジネスプロセス定義404は、業務フローを管理する情報である。
項目辞書参照情報405は、データモデル定義403および入出力定義402に対して、項目辞書管理部320が管理する項目辞書における所定の定義情報を参照するか否かを示す参照情報を管理する。
項目辞書管理部320は、定義すべき項目の項目辞書へ登録、編集および削除を行う機能および項目辞書の情報を管理する機能を備える。登録、変種および削除が行われた各項目は、項目辞書記憶部421によって管理される。
項目辞書の新規作成は、項目辞書ファイル作成表示部424で表示される画面への操作により行うことが可能である。項目辞書の新規作成の処理は、図5を用いて後述する。
項目辞書への項目の登録・編集・削除は、項目辞書編集表示部423で表示される画面への操作により行うことが可能である。項目辞書へ登録された項目は、定義種別と定義対象の組合せで一つの単位として管理される。以下、当該一つ単位のデータセットを「エントリ」と称する。登録された項目は、値データ、データモデル項目用のデータ、入出力項目用のデータとして、それぞれ管理される。登録された項目の各データは、リポジトリ定義編集部310により編集が可能である。具体的には、リポジトリ定義編集部310が、項目辞書参照命令部330を介して制御する項目辞書選択表示部422から利用可能である。なお、辞書への参照を示す情報は項目辞書参照情報405として記憶される。
Webアプリケーション生成部340は、Webアプリケーションを生成する機能を備える。リポジトリ定義解析部441は、項目辞書参照情報405に基いて項目辞書に登録されているリポジトリ情報を解析する。すなわち、リポジトリ定義解析部421は、項目辞書参照情報405に基いて、リポジトリ定義部400からデータベース定義406、データモデル定義403、入出力定義402、ビジネスプロセス定義404を読み込み解析する。Webアプリケーション生成部442は、ソースコードコンパイル部445を介し、Webアプリケーションとしてプログラムを生成することができる。
図5は、項目辞書を新規作成する場合のフローチャートの一例である。なお、当該各フローは、プログラム開発装置101の各機能により実行される。
S500において、項目辞書管理部320は、表示部に表示される操作画面(不図示)より、新規辞書ファイルの生成を示す表示アイテムが選択された場合に、新規辞書の作成イベントを受信する。
S510において、上述のイベントの受信に応じて、項目辞書管理部320の項目辞書ファイル作成表示部424は、新規辞書ファイル作成画面600を表示する。図6に新規辞書ファイル作成画面600の詳細を示す。図6は、項目辞書を新規作成するための操作画面の一例を示す図である。新規項目辞書作成画面600は、入力受付部601を備える。ユーザは、入力受付部601からコードおよび名前の入力が可能となる。つまり、新規作成される項目辞書のコードおよび名前は、新規辞書ファイル作成画面600において入力されたコードおよび名前に基づいて決定される。本実施例では、新規辞書ファイル作成画面600において、コードに「customer」が、名前に「顧客辞書」が、それぞれ入力された例を示す。
S520において、項目辞書管理部320は、Finishボタン620が押下されたことに応じて、新規に項目辞書ファイルを作成する。
次に、図7を用いて、図5のフローにより作成された項目辞書ファイルについて説明する。
図7に項目辞書ファイルを表示する画面の一例を示す図である。。図7(a)は、項目辞書ファイルを編集可能な編集画面である。編集画面700は、項目辞書編集表示部423により表示される画面である。図7(b)は、XML形式で表示したXML表示画面である。項目辞書ファイルは、XMLの言語で記述されたテキストデータ700(以下、XMLデータと称する。)により作成される。ステップ520で入力されたコードおよび名前は、XML700において、コード701と、名前702で示すようにテキストデータの一部として設定される。なお、図7(a)の編集画面700において、「ファイル情報」および「XML」のタブを選択された場合に、項目辞書編集表示部423は、対応する情報に表示を変更する。
次に、図8を用いて、生成された項目辞書に対して項目を追加する場合の制御フローを説明する。なお、当該制御は、プログラム開発装置101の各機能により実行される。
S800において、項目辞書管理部320は、項目辞書編集画面を開くイベントを取得する。例えば、項目辞書管理部320は、作成された項目辞書のファイル名を示す表示の中からユーザによる操作に応じて、イベントを取得する。
S801において、項目辞書編集表示部423は、編集画面700を表示する。
S802において、項目辞書管理部320は、項目辞書編集表示部423が表示するコンテキストメニュー画面900から追加ボタン901が選択されたことに応じて、エントリの追加イベントを受け取る。コンテキストメニュー画面900は、一例として編集画面700において、項目辞書のファイル名に対するクリック操作を受け付けることにより表示される。
S803において、項目辞書管理部320は、追加されたエントリに対して辞書キーと名称とふりがなを設定する。本実施例では、図9に示すように、エントリに対して、辞書キーに「ORDER」の文字列が、名称に「注文」の文字列が、ふりがなに「ちゅうもん」の文字列がそれぞれ設定される。当該設定により、XMLデータ710は、XMLデータ920に更新される。更新されたエントリは、図9における編集画面910で示すように表示される。言い換えると、更新されたエントリは、追加(あるいは更新)された編集画面910におけるエントリ一覧表示部911において、他のエントリと識別可能な態様で表示される。
S804において、項目辞書管理部320は、項目辞書に登録される項目が単項目か否かを判定する。ここで、項目辞書管理部320は、項目辞書編集表示部423が表示するコンテキストメニュー画面900から追加ボタン901が選択されたことに応じて追加イベントを受け取った場合は、単項目の追加であると判断する。
S805およびS806において、ユーザの操作により、編集画面940上の選択されたエントリに対して、定義情報に値データ、データモデル項目データ、入出力項目データの少なくともいずれか1つのデータが入力されるとともに保存される。当該保存処理が行われることにより、XML920は、XML950に更新される。更新された辞書は、図10で示す編集画面940における定義情報表示部941のように一覧表示される。ここで、定義情報表示部941は、編集画面940におけるエントリ一覧表示部942で選択されたエントリのエントリの定義情報を表示する機能を備える。
S804の判定処理において、項目辞書に登録される項目が単項目でないと判定される場合のフローについて説明する。一例として、S804において、図11における定義構造表示部412が表示する定義ツリー970におけるデータモデル項目定義および入力項目定義からドラッグアンドドロップ操作により登録処理がされた場合には、単項目の登録ではないと判定される。また、項目辞書編集表示部423が表示するコンテキストメニュー画面960における961または962が選択されたことに基づく追加イベントを受け取った場合には、単項目の登録ではないと判定する。
このように、すでに設定されている定義を簡易な操作により1または複数の定義を一括で項目辞書に登録できることで、ユーザは簡便な操作で設定が可能となる。
S807において、項目辞書管理部320は、辞書に登録するキーの全てを登録するか否かを判定する。項目辞書管理部320は、部分的な登録メニュー962が選択されたことに基づくイベントを受け取った場合は、全てが登録対象ではないと判定しS809に進む。
S808において、項目辞書管理部320は、トリガーとなったリポジトリ定義で定義されているキー全てを登録対象に設定する。S809において、項目辞書管理部320は、登録設定ファイル990に設定されている項目を登録対象に設定する。
S810において、項目辞書管理部320は、トリガーとなったリポジトリ定義がデータモデル項目定義かどうか判定する。項目辞書管理部320は、データモデル項目定義であると判定したに場合は、S811の処理に進む。S811において、項目辞書管理部320は、データモデル項目に定義されている値を辞書として登録する。S810の判定処理により、トリガーとなったリポジトリ定義が入出力項目定義と判定された場合は、S812の処理に進む。S812において、項目辞書管理部320は、入出力項目定義に定義されている値を項目辞書として登録する。
S813において、項目辞書管理部320は、項目が項目辞書登録された場合に、該登録された項目を項目辞書の参照を行うか否かを判定する。項目辞書管理部320は、図11に示す環境設定画面990における入力受付部991への入力がされているか否かに応じて判定を実施する。
S814において、項目辞書管理部320は、トリガーとなったリポジトリ定義を辞書参照状態にする。より具体的には、項目辞書管理部320は、定義編集画面1420において、項目辞書が参照状態であることを示す表示アイテム1421を表示させる。
図9は、項目辞書ファイルにエントリを追加する場合の表示画面の一例である。
コンテキストメニュー画面900は、辞書へエントリを追加するための画面である。901は、追加ボタンである。エントリの追加は、追加項目辞書編集表示部423により表示されるコンテキストメニュー画面900から追加ボタン901が選択されたことに応じて行われる。なお、エントリが追加された後の項目辞書のXMLは920の状態になる。編集画面910は、エントリと、エントリに対応する定義を表示するととものこれらの編集を行う操作画面である。エントリ一覧表示部911において、エントリのそれぞれは識別可能な態様で表示される。
図10は、辞書エントリへ単体で項目を追加する際の画面の一例である。辞書エントリへの単体での項目追加は、項目辞書編集表示部423が表示する編集画面940への操作により行われる。XMLデータ950は、追加した後のXMLデータである。なお、図9におけるXMLデータ920は、当該追加がされる前のXMLデータである。辞書項目は、値データ、データモデル項目データ、入出力項目データして、項目辞書記憶部421で管理され、且つ定義種別と定義対象で一意になるように管理される。
図11は、辞書エントリへ複数の項目を一括で追加する際の画面の一例である。当該追加の操作は、すでにリポジトリに定義ファイルがある場合に、該定義ファイルの定義を一括で項目辞書に登録する場合に好適に行われる。項目辞書管理部320は、コンテキストメニュー画面960における961あるいは962が選択されたことに応じて、編集画面980を表示する。なお、環境設定画面990により、登録と同時に参照状態にすることも可能である。定義構造表示部412は、定義ツリー970を表示する。
ここで、定義構造表示部412により表示される定義ツリー970の表示される領域は、第一の表示領域とする。また、編集画面980が表示される領域を第二の表示領域とする。
編集画面980は、第二の表示領域として複数の受付領域(981、982、983)を含む。受付領域981は、受付領域982で選択されたカテゴリに対応するエントリ一覧を表示する表示領域である(エントリ一覧受付部)。受付領域982は、カテゴリ一覧を表示する表示領域である(カテゴリ一覧受付部)。受付領域983は、選択されたエントリに対する定義情報を表示する表示領域である(定義情報部)。
ここで、図11を用いて、定義ファイルの定義を一括で項目辞書に登録する操作について説明する。ユーザは、定義ツリー970に表示されるデータモデル項目定義または入力項目定義を示す表示アイテムを、編集画面980のエントリ一覧表示部981に対して、ドラッグアンドドロップ操作することができる。当該ドラッグアンドドロップ操作により、定義情報ファイルを項目辞書に一括で登録することができる。言い換えると、項目辞書管理部320は、ドラッグアンドドロップ操作されることに応じて、表示アイテムに対応する定義ファイルを管理対象としているといえる。項目辞書管理部320は、複数の受付領域におけるいずれの領域にドラックアンドドロップ操作がされたか否かに応じて、定義ファイルを異なる方法で管理する。具体的には、定義ツリー970から受付領域982にドラッグアンドドロップ操作された場合には、定義ファイルは、ドロップ先のカテゴリに対してエントリを追加する。定義ツリー970から受付領域983にドラッグアンドドロップ操作された場合には、ドロップ先のエントリに対し定義情報を追加する。
このように、ドラックアンドドロップ操作に応じて、定義ファイルの内容を項目辞書に対して容易に設定することができる。また、ドラックアンドドロップ操作のドロップ先に応じて、設定内容を切り替えることができることでユーザビリティを向上させることができる。
図12は、登録されている項目辞書をリポジトリ定義に反映させる場合のフローである。
S1200において、項目辞書参照命令部330は、項目辞書編集表示部423が表示するコンテキストメニュー画面1300の項目の一つである辞書参照アイテム1301が選択されたことに応じて辞書参照イベントを受け取る。他の方法として、項目辞書参照命令部330は、項目辞書一覧画面1320から、辞書参照アイテム1321が選択されたことに応じて辞書参照イベントを受け取る。
S1210において、項目辞書参照命令部330の発信部431は編集画面1401の呼び出しを行うとともに、項目辞書選択表示部422は、編集画面1401を表示する。
S1220において、項目辞書管理部320は、編集画面1400のエントリ一覧表示部1401に表示されたエントリのうち選択されたエントリを、ボタン1402を押下された場合に反映対象とする。ユーザは、反映対象とすべきエントリをエントリ一覧表示部1401から選択することができる。
S1221において、項目辞書参照命令部330は、単体への反映か否かの判断を行う。S1230において、項目辞書参照命令部330は、辞書参照アイテム1321による辞書参照イベントである場合は単体への反映と判断し、トリガーとなった項目を辞書参照状態に設定する。この場合、辞書参照アイテム1321は、辞書参照アイテム1421で示す表示態様に変更される。本実施形態においては、辞書参照アイテムの色が変更するものとしているが、これに限られるものでなく、大きさ、形状、模様等の識別可能な表示態様を含みうる。
リポジトリ定義情報のXMLデータは、1310から1410へと変更される。また、リポジトリ定義情報は、辞書項目キーの状態で管理しており辞書項目の値では管理していない。これにより辞書の値を変更すると同じ辞書項目キーを参照している項目全てに変更が伝搬される。
以下、S1221において、単体への反映ではないと判断された場合の項目辞書参照命令部330のフローを説明する。具体的には、コンテキストメニュー1301から辞書参照イベントを受け取った場合は、S1240に進み、エントリに登録されている複数の辞書項目キーに対して一括で参照処理を行う。
図13は、登録されている項目辞書をリポジトリ定義に反映させる際の画面である。項目辞書編集表示部423が表示するコンテキストメニュー画面1300である。コンテキストメニュー画面1300は、辞書参照アイテム1301を含む。
XMLデータ1310は、リポジトリ定義を反映させる前のXMLデータである。
項目辞書一覧画面1320は、項目辞書を一覧する画面である。項目辞書一覧画面1320は、項目辞書の内容がリポジトリ定義に反映されているか否かを示す辞書参照アイテム1321を含む。辞書参照アイテム1321は、リポジトリ定義に反映されていないことを示す表示アイテムである。
図14は、登録されている項目辞書をリポジトリ定義に反映させる際の画面である。編集画面1400は、エントリ一覧表示部1401。ボタン1402を含む。エントリ一覧表示部1401に表示されたエントリを選択することができる。ボタン1402が押下された場合に選択されているエントリを反映対象とする。ユーザは、反映対象とすべきエントリをエントリ一覧表示部1401から選択することができる。
XMLデータ1410は、リポジトリ定義を反映させた後のXMLデータである。
項目辞書一覧画面1420は、項目辞書を一覧する画面である。項目辞書一覧画面1420は、項目辞書の内容がリポジトリ定義に反映されているか否かを示す辞書参照アイテム1421を含む。辞書参照アイテム1421は、リポジトリ定義に反映されていることを示す表示アイテムである。
図15は、辞書エントリ及び辞書項目の内容を更新する際の制御フローである。
S1500において、項目辞書管理部320は、ユーザの操作に応じて編集画面を開くイベントを受け取る。
S1510において、項目辞書編集表示部423は、編集画面940を表示する。S1520において、項目辞書編集表示部423は、エントリ一覧表示部911に表示されたエントリへのエントリ選択イベントを受け取る。
S1530において、項目辞書管理部320は、選択されたエントリが編集された場合には、編集イベントを受け取る。
S1540において、項目辞書管理部320は、辞書項目キーの値を編集する場合には辞書項目キーの選択イベントを受け取る。
S1550において、項目辞書管理部320は、値を編集する場合には、編集イベントを受け取る。 S1560において、項目辞書管理部320は、項目辞書記憶部421により、編集された項目辞書を保存し変更を確定させる。
図16は、Webアプリケーション生成のフローである。
S1600において、リポジトリ定義解析部441は、アプリケーション定義401を取得する。
S1610において、リポジトリ定義解析部441は、S1600において取得したアプリケーションに含まれるデータモデル定義403を取得する。
S1620において、リポジトリ定義解析部441は、データモデル定義403の項目を取得する。
S1630において、リポジトリ定義解析部441は、取得した項目定義に辞書参照があるか否かの判定を行う。リポジトリ定義解析部441は、取得した項目定義に辞書参照があると判定した場合は、S1640の処理を実行する。
S1640において、リポジトリ定義解析部441は、項目辞書参照情報405に基づいて辞書の値を取得する。リポジトリ定義解析部441は、当該処理をデータモデル定義403の項目数だけ繰り返し行った後に、S1650に進む。
S1650において、リポジトリ定義解析部441は、S1600において取得したアプリケーションに所属する入出力定義402を取得する。
S1660において、リポジトリ定義解析部441は、入出力定義402の項目を取得する。
S1670において、S1660において取得した項目定義に辞書参照があるか否かの判定を行う。リポジトリ定義解析部441は、取得した項目定義に辞書参照があると判定した場合は、S1680の処理を実行する。
S1680において、リポジトリ定義解析部441は、項目辞書参照情報405に基づいて辞書の値を取得する。この処理を入出力定義403の項目数分繰り返し行った後に、S1690に進む。次に、S1690において、リポジトリ定義解析部441は、S1600において取得したアプリケーションに所属するビジネスプロセス定義404およびデータベース定義406を取得する。
S1700において、リポジトリ定義解析部441の結果を受けてWebアプリケーションコード生成部442はプログラムコードを生成する。
S1710においてソースコードコンパイル部445はコンパイルを行い、アプリケーションを生成する。
上述の実施形態において、プログラミング開発装置(情報処理装置)は、リポジトリ定義部300により、Webアプリケーションの画面への入力される項目とWebアプリケーションの画面に出力する項目とを定義する入出力定義情報を管理している(入出力定義管理手段)。そして、プログラミング開発装置は、項目辞書管理部320により、1または複数の項目(エントリ)と、該項目に対応する所定の定義情報との対応関係を管理している(項目辞書管理手段)さらに、プログラミング開発装置は、Webアプリケーション生成部340により、入出力定義管理手段で管理する入出力定義情報と、項目辞書管理手段で管理する対応関係とを用いてプログラムを生成する(プログラム生成手段)。
このことにより、Webアプリケーションに用いられるプログラムを、複数の定義ファイル間で共通の項目を適用して生成することが可能となる。
さらに、項目辞書管理手段でエントリと所定の定義情報を管理することにより、同じキーワードの間で異なる定義をすること、あるいは、同じ意味で異なるキーワードを設定することを抑制することができる。これば、複数のユーザからなるグループにより、共通のアプリケーションを開発する場合には、より有効である。
さらに、項目辞書管理手段で管理する内容は、一覧表示され、編集、確認、削除等を容易に行うことができる。このため、定義に変更が発生した場合には、その変更箇所を容易に変更するが可能となるため、プログラムの開発工数の削減に寄与する。
以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。特に、プログラム開発装置101の各機能は、本実施の形態に限定されるものでなく、複数のプログラム開発装置で協業して処理されるものであってもよい。更に、プログラム開発装置は、オンプレミス環境で用いられるサーバであってもよいし、クラウドサービスにおける仮想的なサーバであってもよい。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。
なお、本実施形態は、コンピュータや制御コンピュータがプログラム(コンピュータプログラム)を実行することによって実現することもできる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD-ROM等のコンピュータが読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も実施例として適用することができる。また、上記のプログラムも実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
以上、実施形態に基づいて詳述してきたが、特定の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲の様々な形態も本発明の範疇に含まれる。さらに、上述した実施形態は一実施の形態を示すものにすぎず、上述した実施形態から容易に想像可能な発明も本発明の範疇に含まれる。
101 プログラム開発装置
300 リポジトリ定義部
310 リポジトリ定義編集部
320 項目辞書管理部
340 Webアプリケーション生成部

Claims (11)

  1. 生成するアプリケーションで用いるデータベースに関するデータセットと、該アプリケーションの画面へ入出力される項目に関するデータセットと、のうち少なくとも1つを管理する管理手段と、
    前記管理手段で管理されたデータベースに関するデータセットとアプリケーションの画面へ入出力される項目に関するデータセットのうちの少なくとも1つを選択する選択手段と、
    前記選択手段で選択されたデータセットをキーおよび値として、該キーおよび該値を対応付けて項目辞書に登録する登録手段と、
    前記アプリケーションの生成に用いる定義に含まれる前記キーに対応する前記項目辞書の値を取得し、該値を用いてアプリケーションを生成する生成手段とを有し、
    前記登録手段は、前記選択手段で選択されているデータセットに対応する表示アイテムが複数の表示領域を有する特定の表示領域のいずれの領域に追加操作されたかに応じて、異なる方法で該データセットを登録することを特徴とする情報処理システム。
  2. 前記データセットは、当該データセットの属性、データタイプ、名前、桁数のうち少なくとも1つを含むことを特徴とする請求項1に記載の情報処理システム。
  3. 前記追加操作とは、ドラッグアンドドロップ操作を含むことを特徴とする請求項1又は2に記載の情報処理システム。
  4. 前記データベースに関するデータセットは、データベースのスキーマ情報を含むことを特徴とする請求項1乃至のいずれか1項に記載の情報処理システム。
  5. 前記登録手段によって登録された項目辞書のデータセットを識別可能に表示する表示制御手段をさらに有することを特徴とする請求項1乃至のいずれか1項に記載の情報処理システム。
  6. 前記登録手段により登録された項目辞書のキーに対応する値を変更することを特徴とする請求項1乃至のいずれか1項に記載の情報処理システム。
  7. 前記アプリケーションはWebアプリケーションであることを特徴とする請求項1乃至のいずれか1項に記載の情報処理システム。
  8. 前記管理手段は、前記データベースに関するデータセットを、データモデル項目を定義するデータモデル定義として管理することを特徴とする請求項1乃至のいずれか1項に記載の情報処理システム。
  9. 前記管理手段は、前記入出力される項目に関するデータセットを、アプリケーションの画面に入力する項目と出力する項目とを定義する入出力定義として管理することを特徴と
    する請求項1乃至のいずれか1項に記載の情報処理システム。
  10. 生成するアプリケーションで用いるデータベースに関するデータセットと、該アプリケーションの画面へ入出力される項目に関するデータセットと、のうち少なくとも1つを管理する管理ステップと、
    前記管理ステップで管理されたデータベースに関するデータセットとアプリケーションの画面へ入出力される項目に関するデータセットのうちの少なくとも1つを選択する選択ステップと、
    前記選択ステップで選択されたデータセットをキーおよび値として、該キーおよび該値を対応付けて項目辞書に登録する登録ステップと、
    前記アプリケーションの生成に用いる定義に含まれる前記キーに対応する前記項目辞書の値を取得し、該値を用いてアプリケーションを生成する生成ステップとを有し、
    前記登録ステップは、前記選択ステップで選択されているデータセットに対応する表示アイテムが複数の表示領域を有する特定の表示領域のいずれの領域に追加操作されたかに応じて、異なる方法で該データセットを登録することを特徴とする情報処理システムの制御方法。
  11. 少なくとも1つのコンピュータを、請求項1乃至のいずれか1項に記載された情報処理システムの各手段として機能させるためのプログラム。
JP2022126475A 2017-04-17 2022-08-08 情報処理システム、その制御方法、およびコンピュータプログラム Active JP7453577B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022126475A JP7453577B2 (ja) 2017-04-17 2022-08-08 情報処理システム、その制御方法、およびコンピュータプログラム
JP2024033437A JP2024055993A (ja) 2017-04-17 2024-03-06 プログラム生成装置、制御方法、およびコンピュータプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017081688A JP6908828B2 (ja) 2017-04-17 2017-04-17 プログラム生成装置、制御方法、およびコンピュータプログラム
JP2021109993A JP2021152978A (ja) 2017-04-17 2021-07-01 プログラム生成装置、制御方法、およびコンピュータプログラム
JP2022126475A JP7453577B2 (ja) 2017-04-17 2022-08-08 情報処理システム、その制御方法、およびコンピュータプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021109993A Division JP2021152978A (ja) 2017-04-17 2021-07-01 プログラム生成装置、制御方法、およびコンピュータプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024033437A Division JP2024055993A (ja) 2017-04-17 2024-03-06 プログラム生成装置、制御方法、およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2022145818A JP2022145818A (ja) 2022-10-04
JP7453577B2 true JP7453577B2 (ja) 2024-03-21

Family

ID=64275682

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2017081688A Active JP6908828B2 (ja) 2017-04-17 2017-04-17 プログラム生成装置、制御方法、およびコンピュータプログラム
JP2021109993A Pending JP2021152978A (ja) 2017-04-17 2021-07-01 プログラム生成装置、制御方法、およびコンピュータプログラム
JP2022126475A Active JP7453577B2 (ja) 2017-04-17 2022-08-08 情報処理システム、その制御方法、およびコンピュータプログラム
JP2024033437A Pending JP2024055993A (ja) 2017-04-17 2024-03-06 プログラム生成装置、制御方法、およびコンピュータプログラム

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2017081688A Active JP6908828B2 (ja) 2017-04-17 2017-04-17 プログラム生成装置、制御方法、およびコンピュータプログラム
JP2021109993A Pending JP2021152978A (ja) 2017-04-17 2021-07-01 プログラム生成装置、制御方法、およびコンピュータプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024033437A Pending JP2024055993A (ja) 2017-04-17 2024-03-06 プログラム生成装置、制御方法、およびコンピュータプログラム

Country Status (1)

Country Link
JP (4) JP6908828B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873471A (zh) * 2023-12-25 2024-04-12 曙光云计算集团股份有限公司 页面构建方法、装置、计算机设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034690A (ja) 2005-07-27 2007-02-08 Nec System Technologies Ltd プログラム開発方法および開発プログラム
JP2016173721A (ja) 2015-03-17 2016-09-29 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134856A (ja) * 1991-11-13 1993-06-01 Hitachi Ltd プログラム自動生成方式
JP2629604B2 (ja) * 1994-06-24 1997-07-09 日本電気株式会社 管理簿作成装置
JP3373129B2 (ja) * 1997-03-07 2003-02-04 日立ソフトウエアエンジニアリング株式会社 プログラム開発支援方法
JP4529766B2 (ja) * 2005-03-31 2010-08-25 日本電気株式会社 情報提供システム、情報提供方法、サーバ及び情報提供プログラム
JP6113983B2 (ja) * 2012-09-18 2017-04-12 株式会社野村総合研究所 画面コントロール表示システムおよび画面コントロール表示プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007034690A (ja) 2005-07-27 2007-02-08 Nec System Technologies Ltd プログラム開発方法および開発プログラム
JP2016173721A (ja) 2015-03-17 2016-09-29 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム

Also Published As

Publication number Publication date
JP6908828B2 (ja) 2021-07-28
JP2024055993A (ja) 2024-04-19
JP2018181076A (ja) 2018-11-15
JP2021152978A (ja) 2021-09-30
JP2022145818A (ja) 2022-10-04

Similar Documents

Publication Publication Date Title
JP2505974B2 (ja) 複数の適用業務プログラムを統合化グラフィカル・ユ―ザ・インタフェ―ス処理環境へ統合化するための方法
CN101535934A (zh) 提供用于查看和编辑元数据的定制用户界面的方法和系统
US11321422B1 (en) User-configurable aggregate web components
JP2024055993A (ja) プログラム生成装置、制御方法、およびコンピュータプログラム
US12106077B2 (en) Process flow builder for extensible web component sequences
US11797638B2 (en) Aggregate component for parallel browser-initiated actions
JPH0683603A (ja) オブジェクト・クラスのバッチ登録の方法とシステム
JP2019008546A (ja) 情報処理装置およびドライバーカスタマイズ方法およびドライバーインストール方法
US20220245206A1 (en) Process flow builder for user-configurable web component sequences
US20230333823A1 (en) Method and system for providing static and dynamic inputs and advanced logging capabilities in application development systems
US20160313958A1 (en) Cross-platform command extensibility
JP6712059B2 (ja) 情報処理装置、情報処理装置の制御方法、およびコンピュータプログラム
JP2018181073A (ja) 情報処理装置と、その処理方法及びプログラム
JP6836077B2 (ja) 情報処理装置と、その処理方法及びプログラム
CN113179183A (zh) 服务开关状态控制装置及方法
CN112256257A (zh) 界面构造方法、可读存储介质和电子设备
JP2018205869A (ja) 情報処理装置と、その処理方法及びプログラム
JP2008191993A (ja) Gui部品表示装置及びgui部品表示方法
JP2020017299A (ja) 情報処理装置、その処理方法、及びプログラム
WO2023207232A1 (zh) 快捷启动键设置方法、电子设备及其控制方法和存储介质
JP7477773B2 (ja) 情報処理装置、制御方法、プログラム
JP7485894B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP5430550B2 (ja) 画像形成装置用表示文字列変更方法及び装置
JP5579049B2 (ja) 画像形成装置用表示属性ファイル生成装置
JP2022178985A (ja) 情報処理装置、制御方法、プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220809

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231220

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: 20240206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240219

R151 Written notification of patent or utility model registration

Ref document number: 7453577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151