(57)【要約】【課題】ＨＴＭＬ形式で記述され、タグで対応付けられる画面要素を複数有する画面プログラムを解析し、作成済みの画面プログラムから画面要素間の階層構造を含む画面仕様データを自動生成する。【解決手段】実施形態に係る画面仕様データを生成する装置は、画面プログラムを読み込み、タグでマークアップされる画面要素を抽出するとともに、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する画面プログラム解析部と、解析結果に基づいて、抽出された各画面要素と画面要素の上位画面要素とが関連付けられた画面仕様データを生成する画面仕様データ生成部と、所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを記憶する第１記憶部と、画面仕様データが画面仕様標準ルールにマッチしているか否かを判定する画面仕様検証部と、を有する。【選択図】図１
2015038669.tif 000002
【特許請求の範囲】
【請求項１】
ＨＴＭＬ形式で記述された画面プログラムを解析し、画面要素間の階層情報を含む画面仕様データを生成する装置であって、
前記画面プログラムを読み込み、タグでマークアップされる前記画面要素を抽出するとともに、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する画面プログラム解析部と、
前記解析結果に基づいて、前記抽出された各画面要素と前記画面要素の上位画面要素とが関連付けられた画面仕様データを生成する画面仕様データ生成部と、
所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを記憶する第１記憶部と、
前記画面仕様データが、前記画面仕様標準ルールにマッチしているか否かを判定する画面仕様検証部と、
を有することを特徴とする画面仕様データ生成装置。
【請求項２】
前記画面要素及び上位画面要素に対応する項目を含み、前記項目毎に前記抽出された画面要素及び上位画面要素を記憶するための画面仕様データひな形を記憶する第２記憶部をさらに有し、
前記画面仕様データ生成部は、前記ひな形をコピーするとともに、コピーされた前記ひな形の各項目に、前記解析結果から得られる前記画面要素及び上位画面要素を記憶させて、前記画面仕様データを生成することを特徴とする請求項１に記載の画面仕様データ生成装置。
【請求項３】
前記画面仕様データひな形に含まれる項目を定義した画面仕様データスキーマを記憶する第３記憶部をさらに有し、
前記画面仕様データスキーマは、前記画面仕様データひな形に含まれる前記項目毎のデータ列に対応した、前記解析結果より得られる前記画面要素及び上位画面要素を記憶させる位置を示す出力先情報を含んでおり、
前記画面仕様生成部は、前記出力先情報を参照して、コピーされた前記ひな形の各項目に、前記解析結果より得られた前記画面要素及び上位画面要素を記憶させることで、前記画面仕様データを生成することを特徴とする請求項２に記載の画面仕様データ生成装置。
【請求項４】
特定の画面要素に対する部品名称を対応付けて記憶した部品情報を記憶する第４記憶部を有し、
前記画面仕様生成部は、前記部品情報を参照して該当する画面要素に対して前記部品名称を関連付け、前記部品名称を含む前記画面仕様データを生成し、
前記部品名称が関連付けられた前記画面要素のみを含む画面仕様データを出力する出力部をさらに有することを特徴とする請求項１から３のいずれか１つに記載の画面仕様データ生成装置。
【請求項５】
ＨＴＭＬ形式で記述された画面プログラムを解析し、画面要素間の階層情報を含む画面仕様データを生成する装置によって実行される画面仕様データ生成プログラムであって、
予め作成された前記画面プログラムを読み込む第１機能と、
タグでマークアップされる前記画面要素を抽出するとともに、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する第２機能と、
前記解析結果に基づいて、前記抽出された各画面要素と前記画面要素の上位画面要素とが関連付けられた画面仕様データを生成する第３機能と、
所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを記憶する第４機能と、
前記画面仕様データが、前記画面仕様標準ルールにマッチしているか否かを判定する第５機能と、
を含むことを特徴とする画面仕様データ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、既作成された画面プログラムから画面仕様データを生成する装置及びプログラムに関する。
【背景技術】
【０００２】
従来から、アプリケーション画面等の画面プログラムから画面項目等の画面設計書（画面仕様書）を作成する技術が提案されており、作成済みの画面プログラムを解析し、画面項目等の画面仕様書を自動的に作成する仕様書生成システムがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８６８２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＨＴＭＬ形式で記述され、タグで対応付けられる画面要素を複数有する画面プログラムを解析し、作成済みの画面プログラムから画面要素間の階層構造を含む画面仕様データを自動生成する画面仕様データ生成装置及びプログラムを提供する。
【課題を解決するための手段】
【０００５】
実施形態の画面仕様データ生成装置は、ＨＴＭＬ形式で記述された画面プログラムを解析し、画面要素間の階層情報を含む画面仕様データを生成する装置であって、前記画面プログラムを読み込み、タグでマークアップされる前記画面要素を抽出するとともに、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する画面プログラム解析部と、前記解析結果に基づいて、前記抽出された各画面要素と前記画面要素の上位画面要素とが関連付けられた画面仕様データを生成する画面仕様データ生成部と、所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを記憶する第１記憶部と、前記画面仕様データが、前記画面仕様標準ルールにマッチしているか否かを判定する画面仕様検証部と、を有する。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態のシステム構成及び画面仕様データ生成装置の構成の一例を示す図である。
【図２】第１実施形態の各画面プログラムの画面情報の一例を示す図である。
【図３】第１実施形態の画面仕様データひな形の一例を示す図である。
【図４】第１実施形態の画面仕様データスキーマの一例を示す図である。
【図５】第１実施形態の部品情報の一例を示す図である。
【図６】第１実施形態のＨＴＭＬ形式で記述された画面プログラム例を示す図である。
【図７】図６の画面プログラムの画面仕様データの一例を示す図である。
【図８】第１実施形態のＨＴＭＬ形式で記述された画面プログラム例を示す図である。
【図９】図８の画面プログラムの画面仕様データの一例を示す図である。
【図１０】第１実施形態の画面仕様の検証ルール１の一例を示す図である。
【図１１】第１実施形態の検証ルール１の検証結果の一例を示す図である。
【図１２】第１実施形態の画面仕様の検証ルール２の一例を示す図である。
【図１３】第１実施形態の検証ルール２の検証結果の一例を示す図である。
【図１４】第１実施形態の画面仕様の検証ルール３の一例を示す図である。
【図１５】第１実施形態の検証ルール３の検証結果の一例を示す図である。
【図１６】第１実施形態の画面仕様の検証ルール４の一例を示す図である。
【図１７】第１実施形態の検証ルール４の検証結果の一例を示す図である。
【図１８】第１実施形態の画面仕様データ生成装置の制御フローの一例を示す図である。
【図１９】第１実施形態の画面プログラム解析処理の制御フローの一例を示す図である。
【図２０】第１実施形態の画面仕様データ生成処理の制御フローの一例を示す図である。
【図２１】第１実施形態の画面仕様検証処理の制御フローの一例を示す図である。
【発明を実施するための最良の形態】
【０００７】
以下、実施形態につき、図面を参照して説明する。
【０００８】
Ｗｅｂアプリケーション等の画面プログラムは、一般的にＨＴＭＬ形式の文書で作成されることが多い。ＨＴＭＬは、「＜」と「＞」で構成されるタグで文書の一部を囲う（マークアップする）ことにより、文章の構造や修飾についての情報を文書に埋め込んで記述することができる。
【０００９】
タグで囲まれる画面要素を画面項目してＷｅｂアプリケーション画面を作成する際、複数の画面要素は、階層構造で記述できる。例えば、要素tableが、要素bodyに含まれる場合、＜body＞＜table＞〜＜/table＞＜/body＞と記述し、要素tableの上位タグとして要素bodyが位置付けられる。また、要素headと要素bodyとは、同位のタグとして位置付けられる。
【００１０】
このような画面要素が階層構造で記述されるＨＴＭＬ文書の画面プログラムは、画面要素間が複雑に絡み合うので、作成済みの画面プログラムを再利用して開発コストの効率化を図ることが難しかった。これは、一度、既存の画面プログラムから画面構成を仕様化（例えば、画面要素の画面仕様書を作成）する必要があるが、階層構造で複雑に組み込まれた各画面要素の画面仕様を作成するには、手間と時間が掛かることが挙げられる。特に、作成済み画面プログラムの画面仕様が変更された場合には、再度画面仕様を作成し直さなければならない問題があった。
【００１１】
従来から既存の画面プログラムから、単に画面要素を画面項目として取り出したり、画面要素の属性（画面位置や装飾（フォントや色、大きさ等））を抽出して、画面設計書を作成する技術が提案されているものの、ＨＴＭＬ文書で作成される画面要素が階層化されたＷｅｂアプリケーション画面等の画面プログラムを対象に画面仕様書を作成するには、単に画面要素を画面項目として取り出すのみでは不十分であり、ＨＴＭＬ文書の画面プログラムから画面仕様書を作成できなかった。
【００１２】
他方、画面プログラムを再利用するにしても、元の画面プログラムが再利用に伴う所定の画面仕様標準ルールに適合しない場合、画面プログラム作成後に画面仕様を修正しなければならず、開発コストの効率化が十分に図れない。このため、予め所定の画面仕様標準ルールに適合していない画面プログラムが再利用されても、開発コストの効率化の向上を図ることができない。
【００１３】
そこで、ＨＴＭＬ形式で記述された作成済みの画面プログラムから画面仕様データを自動的に作成する機能と、作成された画面仕様データ、すなわち、再利用される画面プログラムに対する検証機能とを備える画面仕様データ生成装置を提供し、既存のＨＴＭＬ文書で作成される画面プログラムを有効に活用できる開発環境を実現し、画面プログラムの開発コストの効率化を向上させるようにする。
【００１４】
（第１実施形態）
図１から図２１は、第１実施形態を示す図である。図１は、本実施形態に係る画面仕様データ生成機能（プログラム）が適用された画面仕様データ生成装置１００を含むシステム構成図である。
【００１５】
画面仕様データ生成装置１００は、ネットワークＮを介して利用者端末装置２００に接続されている。ユーザは、利用者端末装置２００を通じて画面仕様データ生成装置１００に接続し、所望の画面プログラムに係る画面仕様データを作成することができる。
【００１６】
ユーザは、画面プログラムの画面仕様データ作成要求を送信する。このとき、画面仕様データを作成する画面プログラムを指定することができ、１つ又は複数の画面プログラムを指定することもできる。
【００１７】
なお、ユーザは、画面仕様データ生成装置１００に予め記憶されている画面プログラム以外にも、画面仕様データ生成装置１００に対し、利用者端末装置２００又は個別の記憶装置（不図示）に記憶されている画面プログラムを、ネットワークＮを通じてアップロードすることもできる。ユーザは、画面仕様データ作成装置１００に任意の画面プログラムを伝送して、生成された画面仕様データをネットワークＮを介して取得することができる。
【００１８】
また、ネットワークＮを介さずに画面仕様データ生成装置１００に直接利用者端末装置２００が接続されていてもよい。また、利用者端末装置２００を介さずに、画面仕様データ生成装置１００をユーザが利用可能な情報処理装置とすることもでき、この場合、利用者端末装置２００が画面仕様データ生成装置１００として構成される場合も含まれる。
【００１９】
画面仕様データ生成装置１００は、画面仕様データ生成処理及び画面仕様検証処理を行う制御部（ＣＰＵ）１１０、利用者端末装置２００との間のネットワークＮを介した通信制御を遂行する通信制御部１２０、及びメモリ１３０とを含んでいる。
【００２０】
制御部１１０は、画面プログラム解析部１１１、画面仕様生成部１１２、画面仕様検証部１１３及び出力部１１４を含んで構成され、これら各部全体は、制御部１１０によって制御される。
【００２１】
記憶部１４０は、解析対象のＨＴＭＬ形式で記述された画面プログラム１４１、画面プログラム１４１の画面情報１４２、画面仕様データひな形１４３、画面仕様データスキーマ１４４、部品情報１４５、画面仕様データ１４６、画面仕様検証ルール１４７及び検証結果１４８の各種情報を所定の各記憶領域に記憶する。
【００２２】
図２は、解析対象の画面プログラム１４１の画面情報１４２の一例を示す図である。ＨＴＭＬ形式で記述された作成済み画面プログラム（画面）は、各画面プログラムを識別するＩＤ（画面ＩＤ）が予め割り当てられ、画面ＩＤ毎に画面名（画面名称）、物理名（ファイル名）が関連付けられている。
【００２３】
図３は、本実施形態の画面仕様データひな形１４３の一例を示す図であり、図４は、本実施形態の画面仕様データスキーマ１４４の一例を示す図である。
【００２４】
画面仕様データひな形１４３は、解析対象の画面プログラムに含まれる複数の画面要素それぞれが画面仕様データとして記述されるテンプレートである。画面仕様データひな形１４３は、図４に示す画面仕様データスキーマ１４４で定義された複数の画面仕様データ項目を含んで構成されており、画面情報１４２に含まれる画面ＩＤ、タグでマークアップされた各画面要素を識別する画面項目ＩＤ、画面項目名、上位画面項目ＩＤ、タグ名称、属性、コンテンツ等の仕様書項目を含んで構成されている。
【００２５】
画面仕様データスキーマ１４４は、生成する画面仕様データがどのような情報（仕様書項目）で構成されるかを定義した情報である。つまり、画面仕様データスキーマ１４４は、画面仕様データひな形１４３を構成する各画面仕様データ項目の定義情報である。また画面仕様データスキーマ１４４は、定義された画面仕様データ項目毎に、画面仕様データひな形１４３の対応する画面仕様データ項目のデータ列の各番号（ひな形の画面仕様データ項目の各データ列を出力先するデータ列番号）が関連付けられている。
【００２６】
後述するように画面仕様生成部１１２は、画面仕様データスキーマ１４４を参照し、解析された画面プログラムの各画面要素に自動的に割り当てられる画面項目ＩＤを、画面仕様データひな形１４３の「画面項目ＩＤ」項目に対応するデータ列に出力し、画面仕様データひな形１４３の「上位画面項目ＩＤ」項目に対応するデータ列に、上位階層の画面要素の画面項目ＩＤを出力する形で、画面仕様データ１４６を生成することができる。また、画面要素に含まれるタグ名称、タグの属性、画面要素の内容又は状態を示すコンテンツそれぞれも、画面仕様データひな形１４３の対応するデータ列（画面仕様データ項目欄）に出力されて、画面仕様データ１４６が生成される。
【００２７】
本実施形態の画面仕様データスキーマ１４４は、画面仕様データ１４６の仕様書フォーマットを定義した情報であり、画面仕様データひな形１４３の画面仕様データ項目を定義しているので、例えば、図４に示すように、画面仕様を構成する画面（画面情報）と画面項目の２つのクラスを定義し、クラス−属性−データ列番号の関係を連結した構文形式で画面仕様データスキーマを作成することもできる。
【００２８】
図４の構文欄に示すように、Ｘ．Ｙ＝ｎといった構文で記述することができ、Ｘは、画面仕様を構成するクラス名、Ｙは、画面仕様の属性名、ｎは、画面仕様データひな形１４３におけるデータ列の番号を示す。図４の例において、クラス「画面」は、画面ＩＤ（データ列番号１）、画面名（データ列番号２）、物理名（データ列番号３）の属性を持つことを示している。クラス「画面項目」は、画面ＩＤ（データ列番号１）、画面項目ＩＤ（データ列番号２）、画面項目名（データ列番号３）、上位画面項目ＩＤ（データ列番号４）、タグ（データ列番号５）、属性（データ列番号６）、コンテンツ（データ列番号７）の属性を持つことを示している。
【００２９】
なお、本実施形態の画面仕様データスキーマ１４４は、画面仕様を構成する２つのクラスを定義しているが、これに限らず、例えば、画面仕様を構成する画面項目に対応する１つのクラスのみで定義された画面仕様データスキーマ１４４を用いることもできる。
【００３０】
図５は、部品情報１４５の一例を示す図である。部品情報１４５は、画面プログラムを構成する任意の画面要素のタグと、タグの部品名称をマッピングした情報である。図５に例を示すように、例えば、<table>タグは、「テーブル」という部品名称と対応し、<hr>タグは、「区切り」という部品名称と対応している。
【００３１】
本実施形態の部品情報１４５は、ユーザが必要な画面仕様データ１４６を得るための選択情報として利用される。つまり、ユーザが必要な画面要素に対応するタグを部品情報１４５として定義しておき、部品情報１４５と紐付く画面要素のみで構成された画面仕様データ１４６を出力することができる。ユーザは、適宜部品情報１４５を設定、変更することで、所望する画面要素、言い換えれば、部品情報１４５で設定した部品名称のみを含む画面要素で構成された画面仕様データ１４６を取得することができる。
【００３２】
図６は、画面プログラム（画面ＩＤ＝jsp_menuのＨＴＭＬ文書）の一例を示す図である。本実施形態の画面プログラムは、例えば、Ｗｅｂアプリケーション画面等のＨＴＭＬ形式で記述されたＨＴＭＬ文書であり、情報処理装置に設置されるブラウザ（表示制御部）によって読み込まれ、ブラウザがディスプレイ装置に対応する画面を表示するためのプログラムである。
【００３３】
図６の例において、開始タグ＜＞と終了タグ＜／＞で囲まれる文章が、画面要素（画面項目）であり、一対の開始タグと終了タグが画面要素を表している。各タグは、html、head、body、table等の予め定義されたＨＴＭLタグと、画面プログラム作成者によって任意に定義されるタグとを含むことができる。
【００３４】
なお、開始タグに対応する終了タグが定義されていないタグも含まれ、例えば、＜meta＞は、終了タグが定義されておらず、１つの＜＞内で画面要素及び属性等が記述される。また、図６（図８）の例に示すように、「＜％」と「％＞」で囲まれた部分は、ＪＳＰ（Java Server Pages）の特殊タグを示している。本実施形態では、ＪＳＰの特殊タグも、ＨＴＭＬ形式で記述される画面プログラムの画面要素（画面項目）として抽出される。
【００３５】
図６に示すように、＜head＞タグは、＜meta＞、＜title＞、＜link＞それぞれを下位階層に含む画面要素、言い換えれば、＜meta＞、＜title＞、＜link＞それぞれのタグは、＜head＞タグを上位階層とするタグである。
【００３６】
同位階層の＜head＞タグと＜body＞タグそれぞれは、＜html:html＞タグの下位階層の画面要素であり、＜body＞タグは、さらに、＜h1＞、＜hr＞、＜table＞、＜tr＞、＜td＞、＜html:link＞、＜td＞、＜html:link＞、<hr>、＜jsp:include＞それぞれを下位階層に含む画面要素である。
【００３７】
＜h1＞、＜hr＞、＜table＞、＜tr＞、＜td＞、＜html:link＞、＜td＞、＜html:link＞、<hr>、＜jsp:include＞それぞれのタグは、＜body＞タグを上位階層とする画面要素であるとともに、＜body＞タグの下位階層である＜table＞タグは、さらに下位階層の複数のタグ＜tr＞、＜td＞、＜html:link＞を含んでいるため、＜tr＞、＜td＞、＜html:link＞それぞれのタグは、＜table＞タグを上位階層とする画面要素となる。
【００３８】
このようにＨＴＭＬ形式で記述された画面プログラムは、開始タグ＜＞と終了タグ＜／＞で囲まれる画面要素や終了タグを含まない開始タグのみで構成された画面要素、すなわち、タグでマークアップされた画面要素を複数含んでおり、本実施形態の画面プログラム解析部１１１は、タグでマークアップされた画面要素を画面項目として全て抽出するとともに、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する。
【００３９】
画面プログラム解析部１１１は、予め定義されたＨＴＭＬタグに基づく構文解析パーサを用いて、画面プログラムから画面要素を抽出するとともに、タグ間の階層構造、すなわち、画面要素間の階層構造を抽出することができる。例えば、DOM(Document Object Model)パーサを用いて、ＨＴＭＬ形式で記述された画面プログラムの画面要素をDOMツリーで表し、ツリー構造の階層関係を画面要素間の階層構造として抽出することができる。図６の例では、画面要素間の階層構造を分かり易く説明するために、上位のタグに対する下位のタグを、右方向にズラして記載している。
【００４０】
図７は、図６に示した画面プログラム（画面ＩＤ＝jsp_menuのＨＴＭＬ文書）の画面仕様データ１４６の一例を示す図である。図７に示すように、画面プログラム解析部１１１は、抽出した全ての画面要素それぞれに対して画面項目ＩＤを割り当てる。
【００４１】
そして、画面プログラム解析部１１１は、抽出された画面要素毎に、開始タグ＜＞内のタグ名称、属性（属性値を含む）、コンテンツ（例えば、テキスト）を画面項目ＩＤに紐付けるとともに、画面要素間の階層構造を表す情報として上位画面項目ＩＤを紐付ける。上位画面項目ＩＤは、画面要素毎に割り当てられる画面項目ＩＤがそのまま用いられる。
【００４２】
図７の例において、画面項目ＩＤ「jsp_menu.004」は、上位画面項目ＩＤとして「jsp_menu.003」が紐付けられている。また、画面項目ＩＤ「jsp_menu.011」は、上位画面項目ＩＤとして「jsp_menu.008」が紐付けられているとともに、画面項目ＩＤ「jsp_menu.012」は、上位画面項目ＩＤとして「jsp_menu.011」が紐付けられている。
【００４３】
図８は、画面プログラム（画面ＩＤ＝jsp_sampleのＨＴＭＬ文書）の一例を示す図であり、図９は、図８に示した画面プログラムの画面仕様データ１４６の一例を示す図である。図９に示すように、画面プログラム解析部１１１は、図７の例と同様に、画面プログラム内の全ての画面要素それぞれに対して画面項目ＩＤを割り当てるとともに、画面項目ＩＤ毎に、各画面仕様データ項目に対応する上位画面項目ＩＤ、タグ、属性、コンテンツそれぞれを各画面要素から抽出することができる。
【００４４】
また、画面プログラム解析部１１１は、部品情報１４５を参照して、解析された各画面要素と対応するタグの部品名称があるか否かを判別し、対応するタグの部品名称がある場合は、抽出した各画面要素の画面項目ＩＤそれぞれに、部品名称を紐付ける。
【００４５】
画面仕様生成部１１２は、図７及び図９に示した画面仕様データ１４６を生成して記憶部１４０に記憶する。画面仕様生成部１１２は、画面プログラム解析部１１１による解析処理終了後に、メモリ１３０又は記憶部１４０に記憶されている解析結果を用い、画面仕様データ１４６を生成する。
【００４６】
具体的には、画面仕様生成部１１２は、画面仕様データひな形（テンプレート）１４３をコピーし、解析対象の画面プログラム毎の画面仕様データ１４６の保存場所を記憶部１４０の記憶領域に作成する。画面仕様生成部１１２は、コピーされた画面仕様データひな形１４３の画面仕様データ項目に対応する各データ列に、解析結果を画面項目ＩＤ毎に出力して画面仕様データ１４６を生成する。このとき、画面仕様データスキーマ１４４を参照することで、画面仕様データひな形１４３の画面仕様データ項目とそのデータ列番号が把握できる。
【００４７】
例えば、画面仕様生成部１１２は、解析対象の画面プログラムの画面ＩＤと共に、画面項目ＩＤと画面項目ＩＤ毎に紐付けられた画面要素それぞれの開始タグ＜＞内のタグ名称、属性、コンテンツと、画面要素間の階層構造を表す上位画面項目ＩＤとをコピーされた画面仕様データひな形１４３の各画面仕様データ項目に出力（記述して）、画面仕様データ１４６を生成することができる。生成された画面仕様データ１４６は、記憶部１４０に記憶される。
【００４８】
また、画面仕様生成部１１２は、解析結果において、画面項目ＩＤにタグの部品名称が紐付けられている場合は、画面項目名のデータ列に部品名称を出力する。画面項目ＩＤにタグの部品名称が紐付けられていない場合は、画面項目名のデータ列は空欄となる。なお、画面プログラム解析部１１１が、解析された画面要素と部品情報１４５とのマッチングを行っているが、画面仕様生成部１１２が行うようにしてもよい。この場合、画面仕様生成部１１２は、部品情報１４５を参照して、解析された各画面要素と対応するタグの部品名称をマッチングし、マッチングする画面項目ＩＤの画面項目名のデータ列に部品名称を出力する。
【００４９】
次に、画面プログラム検証処理について説明する。本実施形態では、解析された画面プログラムの画面仕様データ１４６が、所定の画面仕様検証ルールを満たしているか否かを検証する。
【００５０】
図１０は、ＳＱＬ構文で記述された画面仕様検証ルール１４７の一例を示す図である。図１１は、検証結果１４８を示す図である。図１１に示す検証結果１４８は、２つの画面プログラムそれぞれの検証結果を含んでいる。検証処理は、複数の画面プログラムに対して一括して行ったり、各画面プログラム毎に個別に行うことができる。
【００５１】
本実施形態の検証処理では、画面プログラム解析部１１１及び画面仕様生成部１１２を通じて生成された画面仕様データ１４６を、一度リレーショナルデータベースのデータ構造でテーブル化し、画面仕様データテーブルに対して図１０に示したＳＱＬ構文クエリで記述される画面仕様検証ルール１４７を実行することで、検証を行う。
【００５２】
画面仕様検証部１１４は、生成された１つ又は複数の画面仕様データ１４６を対象に、各画面仕様データ１４６をリレーショナルデータベースのデータテーブルとして記憶部１４０に記憶する。続いて、画面仕様検証部１１４は、画面仕様データ１４６のデータテーブルに対して画面仕様検証ルール１４７のＳＱＬ構文クエリを実行し、検証結果を生成（取得）する。
【００５３】
図１１は、検証ルール１の検証結果の一例を示す図であり、各画面ＩＤの画面項目ＩＤ毎に判定合否を含む検証結果１４８を出力する。
【００５４】
ここで、検証ルールについて説明する。図１０に示す検証ルール１は、特定の画面が特定の画面要素の直下において所定の画面要素で構成されているか否かを検証するためのものである。例えば、物理名が「main_contents.jsp」、「header.jsp」、「footer.jsp」以外の全ての画面は、＜body＞タグの直下の画面要素が＜jsp:include＞タグ又は＜ｈ１＞タグのみで構成されているか否かを検証する。
【００５５】
図１１に示すように、図６及び図８の例で示した各画面プログラムは、画面情報から物理名（画面名）が「main_contents.jsp」、「header.jsp」、「footer.jsp」以外の画面であることが把握できる。したがって、これら各画面プログラムは、検証ルール１の検証処理対象となる。
【００５６】
そして、図７に示した画面仕様データ１４６において、＜body＞タグを上位階層として関連付けられる画面項目ＩＤとして、jsp_menu.009、jsp_menu.010、jsp_menu.011、jsp_menu.019、jsp_menu.018の５つの画面項目ＩＤを抽出することができる。さらに、この５つの画面項目ＩＤのタグが、＜jsp:include＞タグ又は＜ｈ１＞タグであるか否かを、判別する。図７の例では、５つの画面項目ＩＤのうち、jsp_menu.009とjsp_menu.019は、「合」判定、それ以外のjsp_menu.010、jsp_menu.011、jsp_menu.018の各画面項目ＩＤは、「否」判定となる。
【００５７】
同様に、図９に示した画面仕様データ１４６において、＜body＞タグを上位階層として関連付けられる画面項目ＩＤとして、jsp_sanple.009、jsp_sample.011、jsp_sample.010の３つの画面項目ＩＤを抽出することができ、この３つの画面項目ＩＤのタグは、全て＜jsp:include＞タグであるので、「合」判定となる。
【００５８】
これらの検証結果は、図１１に示すように、検証された各画面項目ＩＤ毎に画面仕様データ１４６と同じ形式で生成することができ、各画面項目毎に判定（合，否）を含んでいる。なお、検証結果１４８は、画面仕様データ１４６と個別に作成したり、データ列に「判定」データ列を追加した画面仕様データ１４６に検証結果が含まれるようにし、検証結果を含む画面仕様データ１４６を作成することができる。
【００５９】
図１２は、検証ルール２を示す図であり、特定の画面要素が全ての画面に含まれているか否かを検証するためのものであり、例えば、全ての画面において、＜table＞タグが必ず含まれているか否かを検証する。
【００６０】
図１３に示すように、図７及び図９の例で示した各画面仕様データ１４６において、画面ＩＤが「jsp_menu」の画面プログラムには、＜table＞タグが含まれている（画面項目ID「jsp_menu.011」）ので、「合」判定となる。一方、画面ＩＤが「jsp_sample」の画面プログラムには、＜table＞タグが含まれていないので、「否」判定となる。
【００６１】
図１４は、検証ルール３を示す図であり、特定の画面項目の属性が一定であるか否かを検証するためのものであり、例えば、画面仕様データ１４６の属性項目において、「action属性」の属性値が「"/registForm"」以外の「情報登録」が存在しないか否かを検証する。
【００６２】
図１５に示すように、図７及び図９の例で示した各画面仕様データ１４６において、画面ＩＤが「jsp_sample」の画面プログラムには、「action属性」を有する画面項目が存在しないので、検証の対象とはならず、「action属性」を有する画面項目が存在する画面ＩＤが「jsp_menu」の画面プログラムに対して、検証ルール３の検証処理が行われる。
【００６３】
そして、画面ＩＤが「jsp_menu」の画面プログラムにおいて、図７に示した画面仕様データ１４６を参照すると、画面項目ＩＤ「jsp_menu.017」は、「action属性」であり、かつコンテンツが「情報登録」であるものの、「action属性」の属性値が「"/"」であるので、「否」判定となる。
【００６４】
図１６は、検証ルール４を示す図であり、特定の画面要素の下位の画面要素において一定順序の場所に決まった画面要素が存在することを検証する。例えば、画面項目の属性が「'page="/header.jsp" flush="true"'」である＜jsp:include＞タグが必ず＜body＞タグの一番上に存在するか否かを検証する。
【００６５】
図１７に示すように、図７及び図９の例で示した各画面仕様データ１４６において、画面ＩＤが「jsp_menu」の画面プログラムには、＜body＞タグを上位画面項目とする一番最初のタグが、＜ｈ1＞であるため、画面項目ID「jsp_menu.017」は、「否」判定となる。一方、画面ＩＤが「jsp_sample」の画面プログラムには、＜body＞タグを上位画面項目とする一番最初のタグが＜jsp:include＞であり、対応する画面項目ＩＤ「jsp_samlpe.009」の属性が「'page="/header.jsp" flush="true"'」であるので、「合」判定となる。
【００６６】
このように本実施形態では、所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを用い、再利用する画面プログラムの画面仕様が、再利用に際して適しているか否かを検証し、その検証結果１４８を、画面仕様データ１４６に基づいて提供する。このため、再利用した後の画面プログラムの修正等の手間が省け、開発コストの効率化を図ることができる。
【００６７】
出力部１１４は、画面仕様データ１４６及び検証結果１４８を利用者端末装置２００に提供するデータ出力処理を遂行する。出力部１１４は、画面仕様データ１４６や検証結果１４８が作成されたタイミングや利用者端末装置２００からの出力要求に基づいて、ネットワークＮを通じて利用者端末装置２００にそれぞれを伝送することができる。このとき、出力部１１４は、画面仕様データ１４６や検証結果１４８を所定の出力フォーマットに加工して利用者端末装置２００に伝送するようにしてもよい。
【００６８】
また、上述したように、本実施形態の出力部１１４は、部品情報１４５を用いて画面仕様データ１４６を加工し、加工した後の画面仕様データ１４６を利用者端末装置２００に伝送することができる。例えば、出力部１１４は、所定の画面から選択又は入力される部品情報１４５を用いた出力要求を利用者端末装置２００から受信し、部品名称を含み、かつ部品名称と関連付けられる画面項目ＩＤのみで構成された画面仕様データ１４６を作成して利用者端末装置２００に伝送することができる。また、所定の画面を介した部品情報１４５の設定、変更の各処理を出力部１１４が担うようにし、画面仕様データ１４６を出力する際に、ユーザに部品情報１４５の設定、変更が可能なように構成することもできる。
【００６９】
図１８は、本実施形態の画面仕様データ生成装置１００の制御フローの一例を示す図である。
【００７０】
図１８に示すように、画面仕様データ生成装置１００は、記憶部１４０に記憶された画面プログラムを読み込み（Ｓ１０１）、画面プログラム１４１の解析処理を行う（Ｓ１０２）。画面仕様データ生成装置１００は、画面プログラム１４１の解析処理により解析された画面要素を画面項目として画面仕様データ１４６を生成する（Ｓ１０３）。
【００７１】
画面仕様データ生成装置１００は、所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルール１４７を用い、生成された画面仕様データ１４６に対して検証処理を行う（Ｓ１０４）。
【００７２】
画面仕様データ生成装置１００は、画面仕様データ１４６及び検証結果１４８を利用者端末装置２００に提供するデータ出力処理を遂行する（Ｓ１０５）。
【００７３】
図１９は、ステップＳ１０２の画面プログラム解析処理の制御フローの一例を示す図である。
【００７４】
画面仕様データ生成装置１００は、部品情報１４５を読み込む（Ｓ３０１）。続いて、読み込んだ画面プログラム１４１のＨＴＭＬ文書を解析して全ての画面要素（タグでマップアップされる画面要素）を抽出するとともに（Ｓ３０２）、開始タグと終了タグで囲まれる第１画面要素を、開始タグと終了タグの間における下位の第２画面要素に対する上位画面要素として抽出する（Ｓ３０３）。
【００７５】
画面仕様データ生成装置１００は、部品情報１４５を参照して、解析された各画面要素と対応するタグの部品名称とのマッチング処理を行い、該当する画面要素の画面項目ＩＤに、部品名称を関連付ける（Ｓ３０４）。画面仕様データ生成装置１００は、解析結果を記憶部１４０又はメモリ１３０に記憶する。
【００７６】
図２０は、ステップＳ１０３の画面仕様データ生成処理の制御フローの一例を示す図である。
【００７７】
画面仕様データ生成装置１００は、画面仕様データスキーマ１４４を読み込み（Ｓ５０１）、画面仕様データひな形１４３をコピーする（Ｓ５０２）。画面仕様データ生成装置１００は、画面仕様データスキーマ１４４を参照し、コピーされた画面仕様データひな形１４３の画面仕様データ項目に対応する各データ列に、解析結果を画面項目ＩＤ毎に出力して画面仕様データ１４６を生成する（Ｓ５０３）。生成された画面仕様データ１４６を、記憶部１４０に記憶する（Ｓ５０４）。
【００７８】
図２１は、ステップＳ１０４の画面仕様検証処理の制御フローの一例を示す図である。
【００７９】
画面仕様データ生成装置１００は、生成された画面仕様データ１４６を読み込み（Ｓ７０１）、画面仕様データ１４６を、リレーショナルデータベースのデータ構造でテーブル化したデータテーブルで保存する（Ｓ７０２）。画面仕様データ生成装置１００は、画面仕様データのデータテーブルに対して、ＳＱＬ構文クエリで記述された画面仕様検証ルール１４７を実行し（Ｓ７０３）、取得した検証結果１４８を記憶部１４０に記憶する。
【００８０】
このように実施形態の画面仕様データ生成装置は、画面要素が階層構造で記述されるＨＴＭＬ文書の画面プログラムを対象に、画面要素間の階層構造を含む画面仕様データを生成するので、画面仕様データを作成する手間や時間を軽減できるとともに、画面仕様の変更に伴う画面仕様データの再作成の手間や時間を軽減できる。このため、既存のＨＴＭＬ文書で作成される画面プログラムを有効に活用できる開発環境を実現し、画面プログラムの開発コストの効率化を向上させることができる。
【００８１】
また、所定の画面要素間の構造又は画面要素が有する所定の属性を予め定義した画面仕様標準ルールを用い、再利用する画面プログラムの画面仕様が、再利用に際して適しているか否かを検証するので、再利用した後の画面プログラムの修正等の手間が省け、さらなる開発コストの効率化を図ることができる。
【００８２】
以上、上述した実施形態において、利用者端末装置２００は、携帯電話機やＰＤＡ(Personal Digital Assistant)等の移動通信端末装置、パーソナルコンピュータなどの通信機能及び演算機能を備えた情報処理端末装置等が含まれる。また、ネットワークＮは、無線通信網、有線通信網又は専用回線網であってもよい。
【００８３】
また、画面仕様データ生成装置１００、利用者端末装置２００は、ハードウェア構成として上述以外にも、装置全体（各部）の制御を司るＣＰＵ、メモリ（主記憶装置）、マウス、キーボード、タッチパネル、スキャナー等の操作入力手段、プリンタ、スピーカなどの出力手段、補助記憶装置（ハードディスク等）等を備えることができる。
【００８４】
また、本実施形態の画面仕様データ生成装置１００は、利用するユーザの利用者権限を管理することもできる。例えば、ユーザ名、ユーザＩＤ、パスワードが予め記憶しておき、利用者端末装置２００に表示される所定のログイン画面から入力されたユーザＩＤ及びパスワードに基づいて、画面仕様データ生成装置１００の利用者認証処理を行うことができる。
【００８５】
また、本発明の画面仕様データ生成装置１００の各機能は、画面仕様データ生成プログラムとして構成することができる。例えば、コンピュータの不図示の補助記憶装置に格納され、ＣＰＵ等の制御部が補助記憶装置に格納された画面仕様データ生成プログラムを主記憶装置に読み出し、主記憶装置に読み出された該プログラムを制御部が実行し、コンピュータに本発明の各部の機能を動作させることができる。すなわち、本発明の画面仕様データ生成プログラムがインストールされたコンピュータは、本発明の画面仕様データを生成するコンピュータ装置として動作することが可能である。
【００８６】
また、上記プログラムは、コンピュータ読取可能な記録媒体に記録された状態で、コンピュータに提供することも可能である。コンピュータ読取可能な記録媒体としては、ＣＤ−ＲＯＭ等の光ディスク、ＤＶＤ−ＲＯＭ等の相変化型光ディスク、ＭＯ（Magnet Optical）やＭＤ(Mini Disk)などの光磁気ディスク、フロッピー（登録商標）ディスクやリムーバブルハードディスクなどの磁気ディスク、コンパクトフラッシュ（登録商標）、スマートメディア、SDメモリカード、メモリスティック等のメモリカードが挙げられる。また、本発明の目的のために特別に設計されて構成された集積回路（ICチップ等）等のハードウェア装置も記録媒体として含まれる。
【００８７】
なお、本発明の実施形態を説明したが、当該実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８８】
１００    画面仕様データ生成装置
１１０    制御部（ＣＰＵ）
１１１    画面プログラム解析部
１１２    画面仕様データ生成部
１１３    画面仕様検証部
１１４    出力部
１２０    通信制御部
１３０    メモリ
１４０    記憶部
１４１    画面プログラム
１４２    画面情報
１４３    画面仕様データひな形
１４４    画面仕様データスキーマ
１４５    部品情報
１４６    画面仕様データ
１４７    画面仕様検証ルール
１４８    検証結果
２００    利用者端末装置
Ｎ        ネットワーク
【図１】
2015038669.tif 000003
【図２】
2015038669.tif 000004
【図３】
2015038669.tif 000005
【図４】
2015038669.tif 000006
【図５】
2015038669.tif 000007
【図６】
2015038669.tif 000008
【図７】
2015038669.tif 000009
【図８】
2015038669.tif 000010
【図９】
2015038669.tif 000011
【図１０】
2015038669.tif 000012
【図１１】
2015038669.tif 000013
【図１２】
2015038669.tif 000014
【図１３】
2015038669.tif 000015
【図１４】
2015038669.tif 000016
【図１５】
2015038669.tif 000017
【図１６】
2015038669.tif 000018
【図１７】
2015038669.tif 000019
【図１８】
2015038669.tif 000020
【図１９】
2015038669.tif 000021
【図２０】
2015038669.tif 000022
【図２１】
2015038669.tif 000023