JP4960188B2 - 画面遷移図の表示方法およびシステム - Google Patents

画面遷移図の表示方法およびシステム Download PDF

Info

Publication number
JP4960188B2
JP4960188B2 JP2007253608A JP2007253608A JP4960188B2 JP 4960188 B2 JP4960188 B2 JP 4960188B2 JP 2007253608 A JP2007253608 A JP 2007253608A JP 2007253608 A JP2007253608 A JP 2007253608A JP 4960188 B2 JP4960188 B2 JP 4960188B2
Authority
JP
Japan
Prior art keywords
screen
transition
screen transition
data
transition diagram
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.)
Expired - Fee Related
Application number
JP2007253608A
Other languages
English (en)
Other versions
JP2009086851A (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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2007253608A priority Critical patent/JP4960188B2/ja
Publication of JP2009086851A publication Critical patent/JP2009086851A/ja
Application granted granted Critical
Publication of JP4960188B2 publication Critical patent/JP4960188B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、例えばWebアプリケーション開発における画面遷移図の表示方法に係り、特に画面遷移図が複雑な遷移である場合に、機能的に類似している画面を類似機能の画面として折り畳んで表示することにより、画面遷移を分かり易く表示するための表示方法およびシステムに関するものである。
現在、インターネットの普及により、Webブラウザ上で利用するアプリケーションが非常に多く開発されている。このようなアプリケーションはWebアプリケーションと呼ばれる。
Webアプリケーションでは、一連の複数の画面で一つの機能を実現する事が多い。
例えば新規会員登録機能は、氏名入力画面、コース選択画面、登録内容確認画面といった複数の画面から構成される。Webアプリケーションの開発においては、これらの画面遷移を正確に把握する事が重要となるので、近年はこのような画面遷移を画面遷移図と呼ばれる図で整理して実装を行うようになってきてきる。
図14は一般的な画面遷移図を示す図であり、画面を示す画面シェイプ(1401)と、画面遷移を示す画面遷移シェイプ(1402)から構成されている。例えばこの図においては、F0005画面はF0009画面とF0010画面に遷移する事が一目で解かる。
本発明に関連する公知技術文献としては下記特許文献1があげられる。
特開平7−219754
ところで、近年のWebアプリケーションの機能は複雑化・巨大化しており、全体で数百以上の画面を持つ事が普通になってきた。そこで問題となるのが画面遷移図における画面の表示方法であり、単純に全画面を表示してしまうと実装したい画面がその中に埋もれてしまうので解かりづらくなる。
これは各画面に属性を付け、開発者の指示に従って同じ属性の画面を折り畳むように重ねて表示することで解決できる。しかし、一つ一つの画面に手動で属性を記述するのは大変な手間となり、開発コストが嵩むという問題がある。
本発明はこのような事情に鑑みなされたものであり、その目的は、機能が類似している画面をソースコードの実装から自動的に判定し、それらを折り畳む形式、または重ね合わせる形式で表示し、複雑な画面遷移を分かり易く表示することができる画面遷移図の表示方法及びシステムを提供することである。
上記目的を達成するために、本発明に係る画面遷移図の表示方法は、SQL抽出手段により画面遷移を含むアプリケーションのソースコードを読込み、当該ソースコードから各画面がデータベースの呼び出しを行うSQL文を抽出し、第1の記憶手段に記憶する第1のステップと、画面遷移図中のユーザによって指定された画面から遷移する複数の画面におけるSQL文を前記第1の記憶手段から取得し、データベースへの操作、対象テーブルの異動に応じて前記ユーザによって指定された画面との機能上の類似度を数値化する第2のステップと、各画面を前記類似度に応じて前記ユーザによって指定された画面に折り畳んで表示する第3のステップとを備えることを特徴とする。
また、本発明に係る画面遷移図表示システムは、画面遷移を含むアプリケーションのソースコードを読込み、当該ソースコードから各画面がデータベースの呼び出しを行うSQL文を抽出し、第1の記憶手段に記憶する第1の手段と、画面遷移図中のユーザによって指定された画面から遷移する複数の画面におけるSQL文を画面遷移表示手段により前記第1の記憶手段から取得し、データベースへの操作、対象テーブルの異動に応じて前記ユーザによって指定された画面との機能上の類似度を数値化する第2の手段と、各画面を前記類似度に応じて前記ユーザによって指定された画面に折り畳んで表示する第3の手段とを備えることを特徴とする。
本発明によれば、データベースに対する機能が類似した画面を重ねて表示するので、複雑な画面遷移であっても分かり易く表示することができ、注目すべき重要な画面の遷移に専念することができるなど、作業効率の向上に貢献することが可能になる。また、ソースコードの実装を元に動的に判定するので、各画面に対して属性を付けるといった手間も必要がない。
以下、本発明を適用したアプリケーション開発システムについて説明する。
図1は、本発明の実施の形態を示すシステム構成図であり、ここで示すWebアプリケーション開発システムは、入力装置としてキーボード(101)と、マウス(102)を備え、表示装置(103)を備えたコンピュータ(104)にソースコード編集環境(105)と、画面遷移図編集環境(106)が搭載されている。
開発者(107)は、キーボード(101)とマウス(102)を操作して画面遷移図編集環境(106)で画面遷移図を記述し、それに基づいてソースコード編集環境(105)でWebアプリケーションの実装を行う。
図2は、画面遷移図編集環境(106)のブロック構成図であり、本環境は画面遷移定義部(201)と、画面遷移表示部(202)と、画面データ(203)の記憶手段と、表示データ(204)の記憶手段と、設定データ(205)の記憶手段と、ソースコード(213)から抽出した抽出SQLデータ(206)の記憶手段から構成され、設定データ(205)で指定された設定に基づいて動作する。
画面遷移定義部(201)は、画面遷移の定義を行うモジュールであり、画面シェイプの生成を行う画面定義手段(207)を備える。画面定義手段(207)によって定義された、呼び出しクラスや遷移先といった画面の情報は画面データ(203)の記憶手段に格納される。
また、開発者によって指定された画面シェイプの位置は表示データ(204)に格納される。
次に画面遷移表示部(202)は、画面データ(203)に格納された画面を表示するモジュールで、画面シェイプを重ねる範囲を決定する重ね範囲決定手段(208)と、その結果に基づいて描画する遷移シェイプを決定する表示遷移決定手段(209)と、その結果に基づいて図形を描画する画面遷移描画手段(210)から構成される。
画面遷移描画手段(210)によって描画された図形は、外部の出力部(211)によってピクセルに変換されて表示装置(103)に表示される。
なお、図形を表示する方法は公知なので説明を省略する。画面を重ねる範囲は画面が呼び出すロジックを実装したソースコードの内容からSQL文を抽出した抽出SQLデータ(206)から決定する。
抽出SQLデータ(206)は、外部のSQL抽出部(212)がソースコード編集環境(105)で記述したソースコード(213)の内容から作成する。なお、ソースコードを走査してSQL文を抽出する技術は公知なので説明を省略する。
図3は、設定データ(205)のデータ構造例を示す図であり、本データは設定名(301)と設定値(302)から構成される。設定にはソースコードを保管する場所を指定するソースコード保存位置(303)や、画面の実装を保管する場所を指定する画面保存位置(304)や、どの程度似ている場合に画面を重ねているかを数値で指定した閾値(305)を備える。
図4は、画面データ(203)のデータ構造例を示す図であり、本データは一意に画面を識別する文字列である画面ID(401)と、画面を実装したファイルを示すファイル名(402)と、画面が呼び出すロジックを示すロジック実装クラス(403)と、ロジックの結果によって遷移する先を画面IDで指定した遷移先(404)から構成される。
図5は、表示データ(204)のデータ構造例を示す図であり、本データは画面の表示情報(501)と、ロジックの表示情報(502)の2種類のデータから構成される。このうち画面ごとの情報501は、画面データで定義された画面ID(401)を指定する画面ID(503)と、画面遷移図上で開発者が指定した画面の位置を格納する開発者指定位置(504)と、折り畳んだ座標を指定する折り畳み位置(505)から構成される。
なお、開発者指定位置(504)と折り畳み位置(505)は、それぞれ水平方向の位置を示すX座標と、垂直方向の位置を示すY座標の2つの数値で表現される。
次にロジックの表示情報(502)は、画面データ(203)で定義されたロジック実装クラス(403)を指定するロジック実装クラス(506)と、該当ロジック実装クラスから派生する画面遷移を表示するかどうかを示す折り畳み表示フラグ(507)から構成される。
画面遷移描画手段210は、この折り畳み表示フラグ(507)の値に従って画面を折り畳んで表示する。
図6は、抽出SQLデータ(206)のデータ構造例を示す図であり、本データは対象のクラスを示すロジック実装クラス(601)と、ロジックがデータベースに対して行う操作の種類を示す操作(602)と、ロジックが扱うテーブルを示す対象テーブル(603)と、操作するカラムを示す対象カラム(604)から構成される。なお、SQLの内容には実行時に決まるものがあるが、その場合は格納されないものとする。
図7は、本システムを用いて開発を行う際の全体チャートを示すものである。
本システムにおいて、開発者はまず画面遷移図編集環境(106)を用いて画面遷移図を記述する(ステップ701)。画面遷移の定義が完了したら、次に画面遷移図を見ながら個々の画面の実装を行っていく(ステップ702)。その際に画面遷移図が複雑で解かりづらい場合(ステップ703)は、対象となる画面をマウスなどで指定して、機能が類似した画面を重ねて表示する(ステップ704)。未実装の画面が無くなれば開発は完了となる(ステップ705)。
図8は、画面定義手段(207)を用いて画面を定義する際のインターフェイスを示す図であり、本インターフェイスは画面IDを指定する欄(801)と、画面を保存するファイル名を指定する欄(802)と、ロジック実装クラスを指定する欄(803)と、指定したロジックから発生する遷移を指定する遷移先(804)と、作成ボタン(805)から構成される。
開発者が画面遷移図上でマウスを操作して指示すると本インターフェイスが表示され、内容を入力した上で作成ボタン(805)を押すと、指示された位置に画面シェイプが表示される。また、入力した内容は画面データ(203)の記憶手段に格納され、指示された位置は表示データ(204)の記憶手段に格納される。
図9は、重ね範囲決定手段(208)を用いて画面を重ねる範囲を決定するフローである。
まず、開発者によって指定された画面シェイプを取得する(ステップ901)。
次に、表示データから開発者指定位置(502)を取得して、その値を中心座標Zに格納する(ステップ902)。また、その値を折り畳み位置(505)に格納しておく。
次に、折り畳んだ個数を記憶する変数を“0”で初期化する(ステップ903)。
次に、指定された画面の画面データ(203)を参照し、ロジック実装クラス(403)を取得する(ステップ904)。
次に、ロジック実装クラス(403)が一致する折り畳み表示フラグ(507)を真ならば偽に、偽ならば新に更新する(ステップ905)。
次に、更新した折り畳みフラグ(507)の値を変数fに退避する(ステップ906)。
次に、取得したロジック実装クラス(403)に対応する抽出SQLデータ(206)を取得して、そのリストを退避する(ステップ908)。
次に、取得したロジック実装クラス(403)の遷移先(404)を取得して、その画面に対し折り畳み処理を行っていく(ステップ909,910,911)。
全ての遷移に対して処理を行ったら、次のロジック実装クラス(403)を取得して同様の処理を行う。
開発者によって指定された画面シェイプの全てのロジック実装クラス(403)の処理が完了したら、表示遷移決定手段(209)を用いて画面遷移を表示して終了となる(ステップ912)。
図10は、ステップ911で述べた折り畳み処理の詳細フローである。
本処理は再帰的に呼び出されて、呼び出し元の画面から派生する全ての画面に対して行う。
まず、指定された画面を変数iに格納する(ステップ1001)。次に、その画面が持つロジック実装クラス(403)を取得する(ステップ1002)。
次に、取得したロジック実装クラス(403)に対応する抽出SQLデータ(206)を取得する(ステップ1003)。
次に、ステップ908で退避した内容と比較し、その差を数値で表現する(ステップ1004)。
次に、この差を設定データの閾値(305)と比較し、閾値以上ならば機能が異なると判断して、何もせず呼び出し側に制御を戻す(ステップ1005、1012)。
閾値以下ならば同様の機能を実装していると判断し、そのロジック実装クラス(403)の折り畳み表示フラグ(507)に、ステップ906で退避したfの値を格納する(ステップ1006)。
次に、ステップ903で初期化した折り畳み個数に“1”を加える(ステップ1007)。
次に、その折り畳み個数に固定値をかけた結果を、ステップ902で退避した座標に加算して折り畳み位置(505)に格納する(ステップ1008)。
以上の操作を開発者によって指定された画面から派生する全てのロジック実装クラス(403)に対して再帰的に行う(ステップ1009,1010)。
図11は、ステップ1004で述べたSQLデータの内容を比較して、その差を数値で表現する詳細フローを示す。
まず、SQLデータの点数を格納する配列の領域を確保する(ステップ1101)。
次に、ステップ908で退避したリストから、SQLデータを一つ取得する(ステップ1102)。
次に、ステップ1002で取得したロジック実装クラス(403)が持つSQLデータを一つ取得する(ステップ1103)。
両者のSQLデータを、それぞれの項目別に比較していき、対象テーブル(603)に一致するものがあれば、点数にその個数だけ“10”を加算する(ステップ1104,1105)。
対象カラム(604)が一致していれば、点数にその個数だけ“5”を加算する(ステップ1106,1107)。
操作(602)が一致していれば、点数にその個数だけ“2”を加算する(ステップ1108,1109)。
以上の操作を、全ての操作に対して行い、その平均点を評価点とする(ステップ1110、1111)。
図12は、ステップ912で述べた、表示遷移決定手段(209)の詳細フローを示すものである。
まず、画面データ(203)から一つの画面を取得する(ステップ1201,1202)。
次に、取得した画面が持つロジック実装クラス(403)を一つ取得する(ステップ1203、ステップ1204)。
次に、取得したロジック実装クラス(403)の折り畳み表示フラグ(507)を表示データから取得する(ステップ1205)。
折り畳みフラグ(507)が真であれば、そのロジック実装クラスの遷移先(404)に対応する画面シェイプを折り畳み位置(503)で指定された箇所に描画して、残りのロジック実装クラス(403)を処理する(ステップ1208)。
折り畳みフラグが偽であれば、そのロジック実装クラス(403)の遷移先(404)に対応する画面シェイプを開発者指定位置に描画して(ステップ1206)、両者の画面シェイプ間に画面遷移シェイプを描画する(ステップ1207)。以上の処理を全ての画面に対して行う。
図13は、本発明を適用した場合の画面遷移図を示す図であり、折り畳む前の状態と、折り畳んだ後の状態を上下で表現している。F0003画面(1301)のロジック実装クラスが1302,1303,1304に示す画面遷移を派生させるロジック実装クラスのものと同様の場合に、1301を指定すると、1305に示すように画面が重ねられて表示され、開発者は残りの画面の開発に専念することができる。
なお、再度1305を指定すると、ステップ906において反転させた値を格納しているので画面遷移は上の元の状態に戻る。
本発明を適用したアプリケーション開発システムの実施形態を示すシステム構成図である。 画面遷移図編集環境のブロック構成図である。 設定データのデータ構造例を示す図である。 画面データのデータ構造例を示す図である。 表示データのデータ構造例を示す図である。 抽出SQLデータのデータ構造例を示す図である。 システム開発を行う際の全体チャートである。 画面定義を行うインターフェイス画面の例を示す図ある。 画面の折り畳み表示を行う手順を示すフローチャートである。 折り畳み画面決定処理のフローチャートである。 類似性の判定処理を示すフローチャートである。 画面遷移の表示処理を示すフローチャートである。 折り畳んだ画面遷移図である。 画面遷移図の一例を示す図である。
符号の説明
106 画面遷移図編集環境
201 画面遷移定義部
202 画面遷移表示部
208 重ね範囲決定手段
209 表示遷移決定手段
210 画面遷移描画手段
212 SQL抽出部

Claims (2)

  1. SQL抽出手段により画面遷移を含むアプリケーションのソースコードを読込み、当該ソースコードから各画面がデータベースの呼び出しを行うSQL文を抽出し、第1の記憶手段に記憶する第1のステップと、画面遷移図中のユーザによって指定された画面から遷移する複数の画面におけるSQL文を画面遷移表示手段により前記第1の記憶手段から取得し、データベースへの操作、対象テーブルの異動に応じて前記ユーザによって指定された画面との機能上の類似度を数値化する第2のステップと、各画面を前記類似度に応じて前記ユーザによって指定された画面に折り畳んで表示する第3のステップとを備えることを特徴とする画面遷移図の表示方法。
  2. 画面遷移を含むアプリケーションのソースコードを読込み、当該ソースコードから各画面がデータベースの呼び出しを行うSQL文を抽出し、第1の記憶手段に記憶する第1の手段と、画面遷移図中のユーザによって指定された画面から遷移する複数の画面におけるSQL文を前記第1の記憶手段から取得し、データベースへの操作、対象テーブルの異動に応じて前記ユーザによって指定された画面との機能上の類似度を数値化する第2の手段と、各画面を前記類似度に応じて前記ユーザによって指定された画面に折り畳んで表示する第3の手段とを備えることを特徴とする画面遷移図表示システム。
JP2007253608A 2007-09-28 2007-09-28 画面遷移図の表示方法およびシステム Expired - Fee Related JP4960188B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007253608A JP4960188B2 (ja) 2007-09-28 2007-09-28 画面遷移図の表示方法およびシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007253608A JP4960188B2 (ja) 2007-09-28 2007-09-28 画面遷移図の表示方法およびシステム

Publications (2)

Publication Number Publication Date
JP2009086851A JP2009086851A (ja) 2009-04-23
JP4960188B2 true JP4960188B2 (ja) 2012-06-27

Family

ID=40660223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007253608A Expired - Fee Related JP4960188B2 (ja) 2007-09-28 2007-09-28 画面遷移図の表示方法およびシステム

Country Status (1)

Country Link
JP (1) JP4960188B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112012007005T5 (de) 2012-10-12 2015-07-23 Mitsubishi Electric Corporation Bildflächenübergangs-Diagrammerzeugungseinrichtung
WO2020240859A1 (ja) * 2019-05-31 2020-12-03 日本電信電話株式会社 画面遷移集約装置、画面遷移集約方法及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01286020A (ja) * 1988-05-13 1989-11-17 Hitachi Ltd プログラム検索方式
JPH10116188A (ja) * 1996-08-07 1998-05-06 Omron Corp 命令文の作成支援方法及び装置
JPH10207701A (ja) * 1996-11-22 1998-08-07 Toshiba Corp Gui画面作成装置及びプログラムを記録した記録媒体
JP2002182914A (ja) * 2000-12-18 2002-06-28 Canon Inc 画面遷移表示装置、画面遷移表示方法および記憶媒体

Also Published As

Publication number Publication date
JP2009086851A (ja) 2009-04-23

Similar Documents

Publication Publication Date Title
US6437799B1 (en) Method and apparatus for logical zooming of a directed graph
US20060209093A1 (en) Method and computer-readable medium for generating graphics having a finite number of dynamically sized and positioned shapes
JP4872529B2 (ja) リバースエンジニアリング支援方法
JP2000090195A (ja) 表認識方法及び装置
US20170132484A1 (en) Two Step Mathematical Expression Search
JP2001216142A (ja) プログラム作成支援装置
JP4826120B2 (ja) 業務仕様作成支援システム及び方法
JP4960188B2 (ja) 画面遷移図の表示方法およびシステム
KR20130021482A (ko) Html 테이블의 셀 단위 편집 방법
JP2004157927A (ja) 帳票入力用プログラムの生成方式、生成プログラム及び生成方法
US20070263010A1 (en) Large-scale visualization techniques
JP2011107890A (ja) 設計支援プログラム及び設計支援装置
JP3898485B2 (ja) 作図図面表示装置、作図図面表示方法及び記録媒体
JP2012064051A (ja) ヘルプ表示装置、ヘルプ表示方法及びヘルプ表示プログラム
KR101540768B1 (ko) 구조해석용 프로그램을 위한 속성정보입력시스템 및 방법
JP2007286822A (ja) Gui仕様書生成方法およびgui仕様書生成システム
JP2004038827A (ja) 情報抽出方法、情報抽出装置および情報抽出プログラム
JP2005276159A (ja) 回路図面表示データ生成装置およびそのプログラム並びに回路図面表示データ生成方法
JP3674905B2 (ja) 文書編集装置
JPH0635987A (ja) 回路図作成装置および回路図作成方法
JP3988900B2 (ja) 文書処理装置およびそのプログラム記憶媒体
KR102106098B1 (ko) 도움말 제공 장치 및 방법
JP6014794B1 (ja) Webページ比較装置、Webページ比較方法、記録媒体およびプログラム
JP6048492B2 (ja) 色彩情報記憶装置、色彩情報記憶方法およびコンピュータ・プログラム
WO2020090356A1 (ja) インクデータ生成装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120312

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120322

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150330

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees