JP6123344B2 - 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム - Google Patents

画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP6123344B2
JP6123344B2 JP2013031755A JP2013031755A JP6123344B2 JP 6123344 B2 JP6123344 B2 JP 6123344B2 JP 2013031755 A JP2013031755 A JP 2013031755A JP 2013031755 A JP2013031755 A JP 2013031755A JP 6123344 B2 JP6123344 B2 JP 6123344B2
Authority
JP
Japan
Prior art keywords
information
application
update
screen
component
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
JP2013031755A
Other languages
English (en)
Other versions
JP2014164309A (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 JP2013031755A priority Critical patent/JP6123344B2/ja
Publication of JP2014164309A publication Critical patent/JP2014164309A/ja
Application granted granted Critical
Publication of JP6123344B2 publication Critical patent/JP6123344B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、異なるシステム間においてプログラムを移行する情報処理の技術分野に関する。
現在、企業の基幹業務システムには、高い信頼性と堅牢性とを備えるメインフレームが採用されている。その一方で、係る基幹業務システムは、管理コストや変化する業務形態への柔軟な対応のために、メインフレームからオープン系のシステム(以降、「オープンシステム」と称する)環境に切替えられる傾向にある。
メインフレームからオープンシステムに移行する(以降、「レガシーマイグレーション」、単に「マイグレーション」とも記す)際に、例えば、企業は、メインフレームにおいて動作する業務アプリケーションを、オープンシステムにおいて動作可能なように変更する必要がある。
このような背景から、係る業務プログラムをオープンシステムにおいて動作可能なように変更する技術は、多岐にわたり存在する。
例えば、特許文献1は、情報処理装置及び情報処理プログラムに関する技術を開示する。
特許文献1に開示された情報処理装置は、業務プログラムを実行する際に表示される画面の構造(以下、「画面レイアウト」、「画面構造」とも記す)や画面の項目(フィールド)等を定義する画面の設計書(以降、「画面定義情報」と称する)に基づいて、ソフトウェア部品のソースコードを生成することができる。
特許文献2は、データ処理システムに関する技術を開示する。特許文献2には、オブジェクトの親と子の関係を管理する手法が記載されている。
特開2009−211143号公報 特開平06−161765号公報
一般的に知られた業務プログラムをオープンシステムにおいて動作可能なように変更する技術としては、例えば、業務プログラムの画面定義情報に基づいて、ウェブ(以降、「Web」と称する)アプリケーションを生成する方法がある。
係るWebアプリケーションは、メインフレームにて動作する業務プログラムでは表現できない画面や機能を、例えば、Webアプリケーションを利用するユーザに提供することができる。
しかしながら、一般的に知られたWebアプリケーションを生成する方法では、例えば、画面定義情報に変更を加えた場合に、変更を加える前に生成したWebアプリケーションと、変更を加えた後に生成したWebアプリケーションとを異なるアプリケーションとして扱う。
また、係る方法は、例えば、1つ以上の画面定義情報に同一内容の項目(以降、「フィールド」と称する)が複数ある場合であっても、異なるフィールドとして扱う。
そのため、1つ以上の画面定義情報に同一内容のフィールドが複数ある場合に、作成者は、画面定義情報毎、且つフィールド毎に変更する手間が必要である。また、作成者が行う変更作業は、煩雑となる虞がある。
上述した特許文献1及び特許文献2は、1つ以上の画面定義情報に同一内容のフィールドが複数あり、且つ画面定義情報が変更された場合に、その変更を効率よく適用することが考慮されておらず、何ら画面定義情報毎、且つフィールド毎に効率よく変更することが記載されていない。
さらに、特許文献1及び特許文献2に開示された技術は、ユーザが作業することによって、画面定義情報とテンプレートからプログラムを生成する、またはオブジェクトの関連付けをする必要がある。即ち、特許文献1及び特許文献2では、ユーザが作業する手間が発生するため、効率よくプログラムを生成することができない。
本発明の主たる目的は、1つ以上のコンポーネントを含むアプリケーションを更新する場合であっても、その更新を効率よく適用することが可能な画面プログラム生成装置等を提供することにある。
上記の課題を達成すべく、本発明に係る画面プログラム生成装置は、以下の構成を備えることを特徴とする。
即ち、本発明に係る画面プログラム生成装置は、
第1のアプリケーションを実行する際に表示される画面の表示様態を定義する画面定義情報に含まれるフィールドの情報と、該第1のアプリケーションのソースコードを含む第1のアプリケーション情報とを解析した結果に基づいて、同一内容のフィールドを抽出すると共に、抽出した前記同一内容のフィールドにグループIDを付与し、前記解析結果と前記グループIDとを関連付けるグループ化部と、
前記関連付けられた情報に基づいて、コンポーネントを含む前記第1のアプリケーションとは種類の異なる第2のアプリケーションを生成し、前記第2のアプリケーションの更新を要求された場合には、その更新を要求する情報と前記関連付けられた情報とに基づいて、前記第2のアプリケーションを生成するアプリケーション生成部と、
前記コンポーネントの更新情報を含む第1の更新情報を取得するのに応じて、前記関連付けられた情報と、生成した前記コンポーネントを含む前記第2のアプリケーショの情報とを関連付けた情報を生成し、生成した該情報から、前記コンポーネントと関連付けられたグループIDを求めると共に、そのグループIDに関連付けられたコンポーネントを抽出し、該抽出したコンポーネントのソースコードを、前記第1の更新情報に基づき更新し、前記第2のアプリケーションの更新を要求する更新情報制御部と、
を備ることを特徴とする。
或いは、上記に示す画面プログラム生成装置を含む情報処理装置によっても、同目的を達成される。
また、同目的を達成すべく、本発明に係る画面プログラム生成方法は、以下の構成を備えることを特徴とする。
即ち、本発明に係る画面プログラム生成方法は、
情報処理装置が、
第1のアプリケーションを実行する際に表示される画面の表示様態を定義する画面定義情報に含まれるフィールドの情報と、該第1のアプリケーションのソースコードを含む第1のアプリケーション情報とを解析した結果に基づいて、同一内容のフィールドを抽出すると共に、抽出した前記同一内容のフィールドにグループIDを付与し、前記解析結果と前記グループIDとを関連付けし、
前記関連付けられた情報に基づいて、コンポーネントを含む前記第1のアプリケーションとは種類の異なる第2のアプリケーションを生成し、前記第2のアプリケーションの更新を要求された場合には、その更新を要求する情報と前記関連付けられた情報とに基づいて、前記第2のアプリケーションを生成し、
前記コンポーネントの更新情報を含む第1の更新情報を取得するのに応じて、前記関連付けられた情報と、生成した前記コンポーネントを含む前記第2のアプリケーショの情報とを関連付けた情報を生成し、生成した該情報から、前記コンポーネントと関連付けられたグループIDを求めると共に、そのグループIDに関連付けられたコンポーネントを抽出し、該抽出したコンポーネントのソースコードを、前記第1の更新情報に基づき更新し、前記第2のアプリケーションの更新を要求することを特徴とする。
尚、同目的は、上記の各構成を有する画面プログラム生成装置及び画面プログラム生成方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
本発明によれば、1つ以上のコンポーネントを含むアプリケーションを更新する場合であっても、その更新を効率よく適用することが可能な画面プログラム生成装置等を提供することができる。
本発明の第1の実施形態における画面プログラム生成装置の構成を示すブロック図である。 本発明の第1の実施形態における構成情報の構成(フォーマット)を具体的に例示した図である。 本発明の第1の実施形態におけるアプリケーション生成部が生成した第2のアプリケーションを構成するコンポーネントの中から1つのコンポーネントを具体的に例示した図である。 本発明の第1の実施形態における更新情報の構成を具体的に例示した図である。 本発明の第1の実施形態における更新管理情報の構成(フォーマット)を具体的に例示した図である。 本発明の第2の実施形態における画面プログラム生成装置を含む情報処理装置の構成を示すブロック図である。 本発明の第2の実施形態における画面プログラム生成装置が行う第2のアプリケーションを生成する際の動作を示すフローチャートである。 本発明の第2の実施形態におけるグループ化部が行う画面定義情報と第1のアプリケーション情報とを解析する際の動作を示すフローチャートである。 グループ化部が画面定義情報と第1のアプリケーション情報とを解析する項目を具体的に例示する図である。 Webアプリケーションが更新された際に、本発明の第2の実施形態における画面プログラム生成装置が行う動作を示すフローチャートである。 本発明に係る各実施形態を実現可能な情報処理装置のハードウェア構成を例示的に説明するブロック図である。
以下、本発明の実施形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態における画面プログラム生成装置1の構成を示すブロック図である。図1において、画面プログラム生成装置1は、グループ化部2と、アプリケーション生成部3と、更新情報制御部4とを有する。
より具体的に、グループ化部2は、画面定義情報101と第1のアプリケーション情報102とを解析する。
ここで、画面定義情報101とは、例えば、業務プログラム(第1のアプリケーション)を実行する際に、端末装置が備えるディスプレイ等のユーザインタフェースに表示される画面の構造や画面を構成する項目(フィールド)等の情報(つまり、画面の表示様態を定義する情報)を含む。
より具体的に、画面定義情報101は、表示される画面の画面名、フィールド名、そのフィールドの属性情報(画面に表示されるフィールドのサイズや表示位置、文字種別、フィールドの入出力種別、フィールドの繰り返しの有無等)を含む。
また、第1のアプリケーション情報102とは、例えば、業務プログラム(第1のアプリケーション)を実行する際に、上述した画面定義情報101に基づいて表示された画面を、ユーザが操作するのに応じて処理を行うプログラムのソースコードを示す。
より具体的に、第1のアプリケーション情報102は、一例として、COBOLによって記述されたプログラム(以降、「COBOLプログラム」と称する)のソースコードである。
次に、グループ化部2は、解析した結果、画面定義情報101に含まれる1つ以上のフィールドの中に同一内容のフィールドが複数あるか否かを判別する。
グループ化部2は、判別の結果、1つ以上のフィールドの中に同一内容のフィールドが複数ある場合に、それら同一内容のフィールドを、内容別(毎)にグループ化すると共に、そのグループを識別可能なようにグループ識別子(Identification:以降、「ID」と称する)を付与する。
また、グループ化部2は、解析結果とグループIDとを記憶部6の構成情報7に格納する。
ここで、構成情報7とは、画面名、フィールド名、フィールドの属性情報、グループIDとが関連付けられた情報を含む。また、これら情報を識別可能なように識別IDを付与する。
尚、グループ化部2が画面定義情報101と第1のアプリケーション情報102とを解析すると共に、解析結果を記憶部6に格納する動作については、第2の実施形態における図7及び図8に示すフローチャートにおいて後述する。
図2は、本発明の第1の実施形態における構成情報7の構成(フォーマット)を具体的に例示した図である。
より具体的に、図2において1列目は、識別IDを示す。2列目は、画面名を示す。また、3列目は、フィールド名を示す。4列目は、グループIDを示す。5列目乃至9列目は、フィールドの属性情報を示す。そして、10列目は、フィールドの値を示す。
次に、アプリケーション生成部3は、記憶部6に格納された構成情報7に基づいて、第1のアプリケーションと、種類の異なる第2のアプリケーションを生成する。さらに、アプリケーション生成部3は、生成した第2のアプリケーションを記憶部6のアプリケーション情報8に格納する。
ここで、種類の異なるとは、例えば、アプリケーションを開発する際に、使用するプログラミング言語が異なることを意味する。
図3は、本発明の第1の実施形態におけるアプリケーション生成部3が生成した第2のアプリケーションを構成するコンポーネントの中から1つのコンポーネントを具体的に例示した図である。
より具体的に、図3において1行目と7行目は、コンポーネントを識別可能なタグを示す。さらに、2行目乃至6行目は、コンポーネントのソースコードを示す。
より具体的に、図3において1行目は、「画面名_フィールド名 識別ID」を示す。ここでは、一例として、画面名を「PC301」、フィールド名を「SHOP」、識別IDを「01」とする。そのため、1列目には、「PC301_SHOP ID=01」とタグを示す。
ここで、アプリケーション生成部3は、各画面定義情報101に対応する第2のアプリケーションを生成することとする。さらに、係る第2のアプリケーションは、画面定義情報101に含まれる各フィールドに対応して生成されたコンポーネントによって構成されることとする。
そのため、アプリケーション情報8は、識別IDと、その識別IDに関連付けられた画面名とフィールド名とに対応する第2のアプリケーション名とコンポーネント名と、そのソースコード(実体)とが関連付けられた情報を含む。
尚、アプリケーション生成部3が構成情報7に基づいて、第2のアプリケーションを生成する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する(以下、各実施形態においても同様)。
アプリケーション生成部3は、第2のアプリケーションを生成する際に、後述する更新情報制御部4からアプリケーション更新要求情報を取得したか否かを判別する。
アプリケーション生成部3は、更新情報制御部4からアプリケーション更新要求情報を取得したか否かを判別した結果、アプリケーション更新要求情報を取得したと判別した場合に、係る更新を要求する情報(アプリケーション更新要求情報)と構成情報7とに基づいて、第2のアプリケーションを生成する。
尚、アプリケーション更新要求情報については、本実施形態において後述する。
次に、更新情報制御部4は、更新情報5を有する。更新情報制御部4は、第1の更新情報103を取得すると共に、取得した第1の更新情報103を更新情報5に格納する。
尚、以下の説明において、説明の便宜上、「修正」や「カスタマイズ」を総称して「更新」と称する。
ここで、第1の更新情報103とは、アプリケーションにおけるコンポーネントの更新情報を含む。より具体的に、第1の更新情報103は、係るコンポーネントの識別IDと、そのコンポーネントの更新前のソースコードと更新後のソースコードを含む。
図4は、本発明の第1の実施形態における更新情報5の構成を具体的に例示した図である。
図4において1列目は、第1の更新情報103に含まれるコンポーネントの識別IDを示す。次に、2列目は、第1の更新情報103に含まれる変更前のソースコードを示す。3列目は、第1の更新情報103に含まれる更新後のソースコードを示す。
より具体的に、本発明の第1の実施形態における更新情報5について、図3及び図4を参照して説明する。
ここで、図4において2行目は、図3に示すコンポーネントの更新情報である。
図3において1行目には、識別ID「01」を含む。そのため、図4において1列目には、識別ID「01」を示す。
図4において2列目は、図3に示すコンポーネントの変更前のソースコードを示す。さらに、図4において3列目は、係るコンポーネントの変更後のソースコードを示す。即ち、図4において3列目は、図3において2行目乃至6行目に示すコンポーネントのソースコードを示す。
次に、更新情報制御部4は、記憶部6から構成情報7とアプリケーション情報8とを取得する。
更新情報制御部4は、取得した構成情報7とアプリケーション情報8とに基づいて、更新管理情報9を生成する。
より具体的に、更新情報制御部4は、構成情報7に含まれる識別IDとアプリケーション情報8に含まれる識別IDとに基づいて、構成情報7とアプリケーション情報8とを関連付けることによって、更新管理情報9を生成する。
図5は、本発明の第1の実施形態における更新管理情報9の構成(フォーマット)を具体的に例示した図である。
より具体的に、図5において11列目は、アプリケーション名を示す。また、12列目は、コンポーネント名を示す。尚、図5において1列目乃至10列目は、構成情報7において説明した図2に示す1列目乃至10列目と同様である。そのため、重複する説明は省略する。
また、更新情報制御部4は、生成した更新管理情報9を記憶部6に格納する。これにより、更新情報制御部4は、更新管理情報9によって、構成情報7とコンポーネントを含むアプリケーション情報8とを一元管理することができる。
次に、更新情報制御部4は、生成した更新管理情報9を参照すると共に、第1の更新情報103に含まれる識別IDに基づいて、更新管理情報9を検索する。
更新情報制御部4は、更新管理情報9を検索した結果、係る識別IDと関連付けられたグループIDを求める。即ち、更新情報制御部4は、コンポーネントに付与されたグループIDを求める。
さらに、更新情報制御部4は、求めたグループIDに基づいて、更新管理情報9を検索する。
更新情報制御部4は、更新管理情報9を検索した結果、同じグループIDを持つ識別IDを求める。即ち、更新情報制御部4は、同じグループIDを持つ(つまり、グループIDと関連付けられた)コンポーネントを抽出することができる。
更新情報制御部4は、求めた識別IDに基づいて、アプリケーション情報8を検索する。さらに、更新情報制御部4は、検索した結果、第1の更新情報103に含まれる更新内容に基づいて、求めた識別IDに関連付けられたコンポーネントのソースコードを更新する。
次に、更新情報制御部4は、アプリケーション生成部3にアプリケーション更新要求情報を送信する。
ここで、アプリケーション更新要求情報とは、第2のアプリケーションの更新を要求する情報である。より具体的に、アプリケーション更新要求情報は、更新したコンポーネントを含む画面名と、更新したコンポーネントの識別IDと、更新したコンポーネントの表示位置と、更新したコンポーネントのソースコードとの情報を含む。
尚、上述した本実施形態では、説明の便宜上、一例として、グループ化部2とアプリケーション生成部3と更新情報制御部4とは、画面プログラム生成装置1が有する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、グループ化部2とアプリケーション生成部3と更新情報制御部4とは、それぞれ異なる装置が有する(つまり、別体)構成を採用してもよい。
また、上述した本実施形態では、説明の便宜上、一例として、画面プログラム生成装置1は、1つの画面定義情報101と第1のアプリケーション情報102とを取得する構成を例に説明した。しかしながら、画面プログラム生成装置1は、1つ以上の画面定義情報101と第1のアプリケーション情報102とを取得する構成を採用してもよい。
その場合に、画面プログラム生成装置1は、1つ以上の画面定義情報101と第1のアプリケーション情報102とを解析すると共に、1つ以上の画面定義情報101に含まれるフィールドの中から同一内容のフィールドをグループ化する構成を採用することができる。
記憶部6は、コンピュータによる読み書きが可能な記憶デバイスである。より具体的に、一例として、記憶部6は、サーバ装置等の電子機器に搭載されたハードディスクドライブ(Hard_disk_drive:以降、「HDD」と称する)等の不揮発性記憶素子を採用することができる。
また、例えば、記憶部6は、不図示のネットワークに通信可能に接続されたストレージデバイス(不図示)を採用してもよい。但し、本実施形態を例に説明する本発明は、これらに限定されない(以下、各実施形態においても同様)。
記憶部6は、上述した構成情報7と、アプリケーション情報8及び更新管理情報9とを有する。
尚、上述した本実施形態では、説明の便宜上、一例として、構成情報7と、アプリケーション情報8及び更新管理情報9とは、記憶部6が有する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、構成情報7と、アプリケーション情報8及び更新管理情報9とは、1つ以上の異なる記憶デバイスが有する構成を採用してもよい。
また、上述した本実施形態では、説明の便宜上、一例として、第1のアプリケーション情報102は、COBOLプログラムのソースコードを示す構成を例に説明した。
しかしながら本発明に係る実施形態は、係る構成に限定されず、第1のアプリケーション情報102は、Java(登録商標)プログラムのソースコードを示す構成を採用してもよい。但し、本実施形態を例に説明する本発明は、これらに限定されない(以下、各実施形態においても同様)。
このように本実施の形態に係る画面プログラム生成装置1によれば、1つ以上のコンポーネントを含むアプリケーションを更新する場合であっても、その更新を効率よく適用することができる。その理由は、以下に述べる通りである。
即ち、画面プログラム生成装置1は、画面定義情報101と第1のアプリケーション情報102との解析結果に基づいて、画面定義情報101に含まれる1つ以上のコンポーネントの中から同一内容のコンポーネントを検出する。そのため、画面プログラム生成装置1は、何れか1つのコンポーネントが更新された場合に、検出結果に基づいて、係る更新がなされたコンポーネントと同一内容のコンポーネントに、その更新内容を適用することができるからである。
さらに、画面プログラム生成装置1は、1つ以上の画面定義情報101と第1のアプリケーション情報102とがある場合であっても、同一内容のコンポーネントを検出することができる。
つまり、作成者は、アプリケーションにおけるコンポーネントの更新作業を効率よく行うことができる。
尚、上述した本実施形態では、説明の便宜上、一例として、グループ化部2は、同一内容のフィールドが複数ある場合に、その同一内容のフィールドにグループIDを付与する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、グループ化部2は、単一のフィールド(つまり、同一内容のフィールドでないフィールド)にもグループIDを付与する構成を採用してもよい(以下、各実施形態においても同様)。
<第2の実施形態>
次に、上述した本発明の第1の実施形態に係る画面プログラム生成装置1を基本とする第2の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
本発明の第2の実施形態における画面プログラム生成装置10について、図6を参照して説明する。
図6は、本発明の第2の実施形態における画面プログラム生成装置10を含む情報処理装置20の構成を示すブロック図である。
ここで、情報処理装置20は、例えば、ホストコンピュータを採用してもよい。
図6において、画面プログラム生成装置10は、画面定義取得部11と更新情報入力部12とを有する点が第1の実施形態における画面プログラム生成装置1と異なる。
画面定義取得部11は、情報処理装置20において管理する画面定義情報101と第1のアプリケーション情報102とを情報処理装置20から取得する。
画面定義取得部11は、画面定義情報101や第1のアプリケーション情報102が更新された場合、または、所定の時間間隔において画面定義情報101と第1のアプリケーション情報102とを取得する構成を採用してもよい。
次に、アプリケーション情報8に含まれるコンポーネントを更新する際に、更新情報入力部12は、更新されたコンポーネントの更新内容を解析する。
ここで、作成者がコンポーネントのソースコードを更新する際に、作成者は、係るコンポーネントとは異なるコンポーネントとしてアプリケーション情報8に保存することとする。
これにより、更新情報入力部12は、更新後のコンポーネントのソースコードと更新前のコンポーネントのソースコードとに基づいて、更新内容を解析することができる。
更新情報入力部12は、解析した結果を第1の更新情報103として更新情報制御部4に送信する。
次に、以下の説明において、説明の便宜上、一例として、本実施形態における画面プログラム生成装置10が第2のアプリケーションを生成する際の動作について説明する。
図7は、本発明の第2の実施形態における画面プログラム生成装置10が行う第2のアプリケーションを生成する際の動作を示すフローチャートである。図7に示すフローチャートに沿って画面プログラム生成装置10の動作手順を説明する。
ここでは、画面プログラム生成装置10が生成する第2のアプリケーションは、Webアプリケーションとする。
尚、説明の便宜上、上述した構成を例に説明するが、本実施形態を例に説明する本発明は、この構成にはこれに限定されない(以下の実施形態においても同様)。
ステップS1:
画面定義取得部11は、画面定義情報101と第1のアプリケーション情報102とを取得すると共に、取得した画面定義情報101と第1のアプリケーション情報102とをグループ化部2に送信する。
ステップS2:
グループ化部2は、画面定義取得部11から画面定義情報101と第1のアプリケーション情報102とを受信すると共に、画面定義情報101と第1のアプリケーション情報102とを解析する。
図8は、本発明の第2の実施形態におけるグループ化部2が行う画面定義情報101と第1のアプリケーション情報102とを解析する際の動作を示すフローチャートである。図8に示すフローチャートに沿ってグループ化部2の動作手順を説明する。
ステップS21:
グループ化部2は、受信した画面定義情報101から各種情報を取得する。
より具体的に、グループ化部2は、受信した画面定義情報101から画面名、フィールド名、そのフィールドの属性情報(画面に表示されるフィールドのサイズや表示位置、文字種別、入出力種別、繰り返しの有無等)を取得する。
図9は、グループ化部2が画面定義情報101と第1のアプリケーション情報102とを解析する項目を具体的に例示する図である。
図9において1列目は、グループ化部2が画面定義情報101と第1のアプリケーション情報102とを解析する項目を示す。また、2列目は、グループ化部2が画面定義情報101と第1のアプリケーション情報102とを解析する単位を示す。
ステップS22:
グループ化部2は、取得したフィールド名に基づいて、第1のアプリケーション情報102を検索する。より具体的に、グループ化部2は、第1のアプリケーション情報102から取得したフィールド名と同じ名前の変数を検索する。
ステップS23:
グループ化部2は、検索した変数の値を取得する。また、検索した変数の値が条件に応じて(例えば、CASE文やIF文等)設定されている場合には、グループ化部2は、その条件に応じて設定される値を、範囲のある値として取得する。
ここでは、フィールド名と変数名とは、同一であることとする。
ステップS24:
グループ化部2は、フィールド名、そのフィールドの属性情報、変数の値に基づいて、フィールド名、そのフィールドの属性情報、変数の値が同一のフィールドがあるか否かを判別する。
ステップS25において「YES」:
グループ化部2は、変数の値が同一のフィールドがあるか否かを判別した結果、変数の値が同一のフィールドがあると判別した場合に、処理をステップS26に進める。
ステップS25において「NO」:
グループ化部2は、変数の値が同一のフィールドがあるか否かを判別した結果、変数の値が同一のフィールドが無いと判別した場合に、処理を終了する。
ステップS26:
グループ化部2は、フィールド名と、そのフィールドの属性情報とが同一内容のフィールドが複数あるか否かを判別する。
ステップS27において「YES」:
グループ化部2は、フィールド名と属性情報とが同一内容のフィールドが複数あるか否かを判別した結果、フィールド名、そのフィールドの属性情報が同一内容のフィールドが複数あると判別した場合に、処理をステップS28に進める。
ステップS27において「NO」:
グループ化部2は、フィールド名と属性情報とが同一内容のフィールドが複数あるか否かを判別した結果、フィールド名、そのフィールドの属性情報が同一内容のフィールドが複数無いと判別した場合に、処理を終了する。
ステップS28:
グループ化部2は、同一内容のフィールドをグループ化する。即ち、グループ化部2は、グループ化したフィールドにグループを識別可能なようにグループIDを付与する。
ステップS3:
グループ化部2は、取得した画面名、フィールド名、そのフィールドの属性情報、変数の値、グループIDを識別可能なように識別IDを付与すると共に、記憶部6の構成情報7に格納する。
ステップS4:
アプリケーション生成部3は、更新情報制御部4からアプリケーション更新要求情報を取得したか否かを判別する。即ち、アプリケーション生成部3は、アプリケーション更新要求情報の有無を判別する。
ステップS5において「YES」:
アプリケーション生成部3は、更新情報制御部4からアプリケーション更新要求情報を取得したか否かを判別した結果、更新情報制御部4からアプリケーション更新要求情報を取得したと判別した場合に、処理をステップS6に進める。
ステップS5において「NO」:
アプリケーション生成部3は、更新情報制御部4からアプリケーション更新要求情報を取得したか否かを判別した結果、更新情報制御部4からアプリケーション更新要求情報を取得していないと判別した場合に、処理をステップS7に進める。
ステップS6:
アプリケーション生成部3は、アプリケーション更新要求情報と記憶部6に格納された構成情報7とに基づいて、Webアプリケーションを生成する。
より具体的に、アプリケーション生成部3は、構成情報7に基づいて、Webアプリケーションを生成する際に、アプリケーション更新要求情報に含まれる情報に基づいて、更新対象のコンポーネントのソースコードを更新すると共に、Webアプリケーションを生成する。
ステップS7:
アプリケーション生成部3は、記憶部6に格納された構成情報7に基づいて、Webアプリケーションを生成する。
ステップS8:
アプリケーション生成部3は、生成したWebアプリケーションを記憶部6のアプリケーション情報8に格納する。
次に、以下の説明において、説明の便宜上、一例として、Webアプリケーションが更新された際に、本実施形態において画面プログラム生成装置10が行う動作について説明する。
図10は、Webアプリケーションが更新された際に、本発明の第2の実施形態における画面プログラム生成装置10が行う動作を示すフローチャートである。図10に示すフローチャートに沿って画面プログラム生成装置10の動作手順を説明する。
ここでは、既に生成したWebアプリケーションにおけるコンポーネントを、例えば、作成者によって更新されたこととする。
尚、説明の便宜上、上述した構成を例に説明するが、本実施形態を例に説明する本発明は、この構成にはこれに限定されない(以下の実施形態においても同様)。
ステップS31:
更新情報入力部12は、アプリケーション情報8に格納された更新前のコンポーネントのソースコードと更新後のコンポーネントのソースコードとに基づいて、係るコンポーネントの更新内容を解析する。
ステップS32:
更新情報入力部12は、解析した結果(第1の更新情報)を更新情報制御部4に送信する。
ステップS33:
更新情報制御部4は、更新情報入力部12から受信した第1の更新情報103を更新情報5に格納する。
ステップS34:
更新情報制御部4は、記憶部6から構成情報7を取得する。さらに、更新情報制御部4は、記憶部6からアプリケーション情報8を取得する。
ステップS35:
更新情報制御部4は、取得した構成情報7とアプリケーション情報8とに基づいて、更新管理情報9を生成する。
ステップS36:
更新情報制御部4は、生成した更新管理情報9を参照すると共に、第1の更新情報103に含まれる識別IDに基づいて、更新管理情報9を検索する。
さらに、更新情報制御部4は、更新管理情報9を検索した結果、係る識別IDと関連付けられたグループIDを求める。
ステップS37:
更新情報制御部4は、求めたグループIDに基づいて、更新管理情報9を検索する。
更新情報制御部4は、更新管理情報9を検索した結果、同じグループIDを持つ識別IDを求める。即ち、更新情報制御部4は、グループIDに関連付けられた識別IDを求める。
ステップS38:
更新情報制御部4は、求めした識別IDに基づいて、アプリケーション情報8を検索する。さらに、更新情報制御部4は、検索した結果、第1の更新情報103に含まれる更新内容に基づいて、求めた識別IDに関連付けられたコンポーネントのソースコードを更新する。
ステップS39:
更新情報制御部4は、アプリケーション生成部3にアプリケーション更新要求情報を送信する。
尚、上述した本実施形態では、説明の便宜上、一例として、画面プログラム生成装置10は、情報処理装置20に含まれる構成を例に説明した。
しかしながら本発明に係る実施形態は、係る構成に限定されず、画面プログラム生成装置10は、1つ以上の情報処理装置20に画面プログラム生成装置10を構成する一部が含まれる構成を採用してもよい。
即ち、画面プログラム生成装置10は、例えば、不図示のネットワークに通信可能なように接続された1つ以上の情報処理装置20に画面プログラム生成装置10を構成する各部を別体で備える構成を採用してもよい。
このように本実施の形態に係る画面プログラム生成装置10によれば、上述した第1の実施形態において説明した効果を享受できると共に、さらに、画面プログラム生成装置10は、例えば、作成者によってコンポーネントが更新されるのに応じて、同一内容のグループIDを持つ複数のコンポーネントに、その更新内容を速やかに適用することができる。
その理由は、更新情報入力部12は、作成者によってコンポーネントが更新されるのに応じて、その更新内容を取得すると共に、更新内容を含む第1の更新情報103を更新情報制御部4に送信することができるからである。
また、画面定義取得部11は、画面定義情報101や第1のアプリケーション情報102が更新された場合、または所定の時間間隔において画面定義情報101と第1のアプリケーション情報102とを取得することができるからである。即ち、画面プログラム生成装置10は、速やかに更新内容を反映することができる。
また、画面プログラム生成装置10は、例えば、一般的に知られたホストコンピュータやパーソナルコンピュータ等の情報処理装置に適用して好適である。
(ハードウェア構成例)
上述した実施形態において図1、図6に示した各部は、ソフトウェアプログラムの機能(処理)単位(ソフトウェアモジュール)と捉えることができる。但し、これらの図面に示した各部の区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。この場合のハードウェア環境の一例を、図11を参照して説明する。
図11は、本発明の模範的な実施形態に係る画面プログラム生成装置を実行可能な情報処理装置300(コンピュータ)の構成を例示的に説明する図である。即ち、図11は、図1に示した画面プログラム生成装置1、或いは、図6に示した画面プログラム生成装置10の全体または一部の画面プログラム生成装置を実現可能なサーバやホストコンピュータ等のコンピュータ(情報処理装置)の構成であって、上述した実施形態における各機能を実現可能なハードウェア環境を表す。
図11に示した情報処理装置300は、CPU(Central_Processing_Unit)301、ROM(Read_Only_Memory)302、RAM(Random_Access_Memory)303、ハードディスク304(記憶装置)、並びに外部装置との通信インタフェース(Interface:以降、「I/F」と称する)305、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体307に格納されたデータを読み書き可能なリーダライタ308を備え、これらの構成がバス306(通信線)を介して接続された一般的なコンピュータである。
そして、上述した各実施形態を例に説明した本発明は、図11に示した情報処理装置300に対して、その実施形態の説明において参照したブロック構成図(図1、図6)或いはフローチャート(図7、図8、図10)の機能を実現可能なコンピュータ・プログラムを供給した後、そのコンピュータ・プログラムを、当該ハードウェアのCPU301に読み出して解釈し実行することによって達成される。また、当該装置内に供給されたコンピュータ・プログラムは、読み書き可能な揮発性の記憶メモリ(RAM303)またはハードディスク304等の不揮発性の記憶デバイスに格納すれば良い。
また、前記の場合において、当該ハードウェア内へのコンピュータ・プログラムの供給方法は、CD−ROM等の各種記憶媒体307を介して当該装置内にインストールする方法や、インターネット等の通信回線を介して外部よりダウンロードする方法等のように、現在では一般的な手順を採用することができる。そして、このような場合において、本発明は、係るコンピュータ・プログラムを構成するコード或いは、そのコードが格納された記憶媒体307によって構成されると捉えることができる。
本発明は、上述した各実施形態には限定されない。本発明は、例えば、パーソナルコンピュータ、サーバ、携帯端末等のメインフレームと連携するアプリケーションを開発することが可能な各種の電子機器に適用可能である。
1 画面プログラム生成装置
2 グループ化部
3 アプリケーション生成部
4 更新情報制御部
5 更新情報
6 記憶部
7 構成情報
8 アプリケーション情報
9 更新管理情報
10 画面プログラム生成装置
11 画面定義取得部
12 更新情報入力部
20 情報処理装置
101 画面定義情報
102 第1のアプリケーション情報
103 第1の更新情報
300 情報処理装置
301 CPU
302 ROM
303 RAM
304 ハードディスク
305 通信インタフェース
306 バス
307 記憶媒体
308 リーダライタ

Claims (10)

  1. 第1のアプリケーションを実行する際に表示される画面の表示様態を定義する画面定義情報に含まれるフィールドの情報と、該第1のアプリケーションのソースコードを含む第1のアプリケーション情報とを解析した結果に基づいて、同一内容のフィールドを抽出すると共に、抽出した前記同一内容のフィールドにグループIDを付与し、前記解析により取得した情報と、前記グループIDとを関連付けるグループ化部と、
    前記関連付けられた情報に基づいて、コンポーネントを含前記第1のアプリケーションとは種類の異なる第2のアプリケーションを生成し、前記第2のアプリケーションの更新を要求された場合には、その更新を要求する情報と前記関連付けられた情報とに基づいて、前記第2のアプリケーションを生成するアプリケーション生成部と、
    前記コンポーネントの更新情報を含む第1の更新情報を取得するのに応じて、前記関連付けられた情報と、前記コンポーネントを含む生成した前記第2のアプリケーションの情報とを関連付けた情報を生成し、生成した該情報から、前記コンポーネントと関連付けられたグループIDを求めると共に、そのグループIDに関連付けられたコンポーネントを抽出し、該抽出したコンポーネントのソースコードを、前記第1の更新情報に基づき更新し、前記第2のアプリケーションの更新を要求する更新情報制御部と、
    を備えることを特徴とする画面プログラム生成装置。
  2. 前記グループ化部は、
    前記画面定義情報から画面名、フィールド名、そのフィールドの属性情報を取得し、前記フィールド名に基づき前記第1のアプリケーション情報を検索すると共に、前記第1のアプリケーション情報からフィールドの値を取得し、取得した前記画面名と前記フィールド名と前記属性情報と前記フィールドの値とに基づいて、前記同一内容のフィールドを抽出することを特徴とする請求項1に記載の画面プログラム生成装置。
  3. 前記コンポーネントを更新する際に、更新前の前記コンポーネントのソースコードと更新後の前記コンポーネントのソースコードとに基づいて、前記コンポーネントの更新内容を解析する更新情報入力部を、さらに、備えることを特徴とする請求項1または請求項2に記載の画面プログラム生成装置。
  4. 前記画面定義情報、または前記第1のアプリケーション情報が更新された場合、または所定の時間間隔において前記画面定義情報と前記第1のアプリケーション情報とを取得する画面定義取得部を、さらに、備えることを特徴とする請求項1乃至請求項3の何れかに記載の画面プログラム生成装置。
  5. 前記第2のアプリケーションの更新を要求する情報は、
    更新した前記コンポーネントを含む画面名と、更新した前記コンポーネントを識別可能な識別IDと表示位置とソースコードとの情報を含むことを特徴とする請求項1乃至請求項4の何れかに記載の画面プログラム生成装置。
  6. 前記第1の更新情報は、
    前記第1のアプリケーションに含まれるコンポーネントを識別可能な識別IDと、前記コンポーネントの更新前のソースコードと更新後のソースコードを含むことを特徴とする請求項1乃至請求項5の何れかに記載の画面プログラム生成装置。
  7. 請求項1乃至請求項6の何れかに記載された画面プログラム生成装置を備えることを特徴とする情報処理装置。
  8. 情報処理装置が、
    第1のアプリケーションを実行する際に表示される画面の表示様態を定義する画面定義情報に含まれるフィールドの情報と、該第1のアプリケーションのソースコードを含む第1のアプリケーション情報とを解析した結果に基づいて、同一内容のフィールドを抽出すると共に、抽出した前記同一内容のフィールドにグループIDを付与し、前記解析により取得した情報と、前記グループIDとを関連付けし、
    前記関連付けられた情報に基づいて、コンポーネントを含前記第1のアプリケーションとは種類の異なる第2のアプリケーションを生成し、前記第2のアプリケーションの更新を要求された場合には、その更新を要求する情報と前記関連付けられた情報とに基づいて、前記第2のアプリケーションを生成し、
    前記コンポーネントの更新情報を含む第1の更新情報を取得するのに応じて、前記関連付けられた情報と、前記コンポーネントを含む生成した前記第2のアプリケーションの情報とを関連付けた情報を生成し、生成した該情報から、前記コンポーネントと関連付けられたグループIDを求めると共に、そのグループIDに関連付けられたコンポーネントを抽出し、該抽出したコンポーネントのソースコードを、前記第1の更新情報に基づき更新し、前記第2のアプリケーションの更新を要求することを特徴とする画面プログラム生成方法。
  9. 前記情報処理装置が、
    前記画面定義情報から画面名、フィールド名、そのフィールドの属性情報を取得し、前記フィールド名に基づき前記第1のアプリケーション情報を検索すると共に、前記第1のアプリケーション情報からフィールドの値を取得し、取得した前記画面名と前記フィールド名と前記属性情報と前記フィールドの値とに基づいて、前記同一内容のフィールドを抽出することを特徴とする請求項8に記載の画面プログラム生成方法。
  10. 第1のアプリケーションを実行する際に表示される画面の表示様態を定義する画面定義情報に含まれるフィールドの情報と、該第1のアプリケーションのソースコードを含む第1のアプリケーション情報とを解析した結果に基づいて、同一内容のフィールドを抽出すると共に、抽出した前記同一内容のフィールドにグループIDを付与し、前記解析により取得した情報と、前記グループIDとを関連付ける機能と、
    前記関連付けられた情報に基づいて、コンポーネントを含前記第1のアプリケーションとは種類の異なる第2のアプリケーションを生成し、前記第2のアプリケーションの更新を要求された場合には、その更新を要求する情報と前記関連付けられた情報とに基づいて、前記第2のアプリケーションを生成する機能と、
    前記コンポーネントの更新情報を含む第1の更新情報を取得するのに応じて、前記関連付けられた情報と、前記コンポーネントを含む生成した前記第2のアプリケーションの情報とを関連付けた情報を生成し、生成した該情報から、前記コンポーネントと関連付けられたグループIDを求めると共に、そのグループIDに関連付けられたコンポーネントを抽出し、該抽出したコンポーネントのソースコードを、前記第1の更新情報に基づき更新し、前記第2のアプリケーションの更新を要求する機能と、
    をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
JP2013031755A 2013-02-21 2013-02-21 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム Active JP6123344B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013031755A JP6123344B2 (ja) 2013-02-21 2013-02-21 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013031755A JP6123344B2 (ja) 2013-02-21 2013-02-21 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
JP2014164309A JP2014164309A (ja) 2014-09-08
JP6123344B2 true JP6123344B2 (ja) 2017-05-10

Family

ID=51614906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013031755A Active JP6123344B2 (ja) 2013-02-21 2013-02-21 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP6123344B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7231823B2 (ja) * 2019-01-23 2023-03-02 キヤノンマーケティングジャパン株式会社 プログラム、情報処理システム及びその制御方法
JP7148804B2 (ja) * 2019-02-15 2022-10-06 富士通株式会社 ソースファイル生成プログラム、ソースファイル生成方法、および情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11191062A (ja) * 1997-12-26 1999-07-13 Hitachi Ltd アプリケーション画面開発支援システム
JP2000148457A (ja) * 1998-11-16 2000-05-30 Nec Corp 画面表示用部品の編集装置およびその編集方式
JP3555511B2 (ja) * 1999-07-08 2004-08-18 日本電気株式会社 Gui設計支援方法及びその装置並びにgui設計支援プログラムを記録した機械読み取り可能な記録媒体、gui評価方法及びその装置並びにgui評価プログラムを記録した機械読み取り可能な記録媒体
JP4686117B2 (ja) * 2003-06-05 2011-05-18 インターナショナル・ビジネス・マシーンズ・コーポレーション ソースコード変換装置、ソースコード変換方法、およびプログラム

Also Published As

Publication number Publication date
JP2014164309A (ja) 2014-09-08

Similar Documents

Publication Publication Date Title
EP3876116B1 (en) Method and apparatus for running mini program, electronic device, and storage medium
CN103176844B (zh) 一种ie6内核与新型ie内核的切换方法和系统
CN103502983A (zh) 利用基于DOM的同构来备忘缓存Web浏览计算
JP2014502384A (ja) スタイルシート用識別子
US20150363435A1 (en) Declarative Virtual Data Model Management
US10331441B2 (en) Source code mapping through context specific key word indexes and fingerprinting
CN102521338B (zh) 对于数据表示项目返回的占位符
US9898467B1 (en) System for data normalization
JP6123344B2 (ja) 画面プログラム生成装置及びその画面プログラム生成方法、情報処理装置、並びにコンピュータ・プログラム
JP5867540B2 (ja) プログラム生成装置、プログラム生成装置の制御方法、およびプログラム
US20170364496A1 (en) Visualization interface for information object system
JP7381290B2 (ja) 計算機システム及びデータの管理方法
CN115080154A (zh) 页面显示方法、装置、存储介质及电子设备
CN112181407B (zh) 业务实现处理方法及装置、系统、电子设备和存储介质
JP2018181073A (ja) 情報処理装置と、その処理方法及びプログラム
JP5903843B2 (ja) 回路部品移行装置、回路部品移行プログラムおよび回路部品移行方法
JP6705482B2 (ja) システム構築パラメータ管理装置、システム構築パラメータ管理システム、システム構築パラメータ管理方法、及び、システム構築パラメータ管理プログラム
JP6870454B2 (ja) 分析装置、分析プログラム及び分析方法
US20220092186A1 (en) Security information analysis device, system, method and program
Kim et al. A context-aware architecture pattern to enhance the flexibility of software artifacts reuse
JP6212373B2 (ja) 操作ログ管理装置及び方法
Varanasi et al. Hateoas
US11714954B1 (en) System for determining reliability of extracted data using localized graph analysis
JP2006079277A (ja) 構造化文書データ変換装置及び方法
JP2015207074A (ja) 情報資産管理システム、情報資産管理装置、情報資産管理方法、及び、そのプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170223

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170320

R150 Certificate of patent or registration of utility model

Ref document number: 6123344

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150